Fody got error wit everey businessclass (XPO)

Hi,
after I updated to 19.1.301.0 I got an compilation error with ervery business class and fody (see below).
If I delete the business class, the error is in the next businessclass.
If I uninstall fody, everthing works.
What is fody for and is there a trick to get the project run?

MSBUILD : error : Fody: An unhandled exception occurred:
2>MSBUILD : error : Exception:
2>MSBUILD : error : Failed to execute weaver C:\DevProjects\NuGetPackages\PropertyChanged.Fody.2.6.1\build..\netclassicweaver\PropertyChanged.Fody.dll
2>MSBUILD : error : Type:
2>MSBUILD : error : System.Exception
2>MSBUILD : error : StackTrace:
2>MSBUILD : error :    bei InnerWeaver.ExecuteWeavers()
2>MSBUILD : error :    bei InnerWeaver.Execute()
2>MSBUILD : error : Source:
2>MSBUILD : error : FodyIsolated
2>MSBUILD : error : TargetSite:
2>MSBUILD : error : Void ExecuteWeavers()
2>MSBUILD : error : Could not inject EventInvoker method on type 'iXISXRM.Module.BusinessObjects.iXIS.DataAttribute'. It is possible you are inheriting from a base class and have not correctly set 'EventInvokerNames' or you are using a explicit PropertyChanged event and the event field is not visible to this instance. Either correct 'EventInvokerNames' or implement your own EventInvoker on this class. If you want to suppress this place a [DoNotNotifyAttribute] on iXISXRM.Module.BusinessObjects.iXIS.DataAttribute.
2>MSBUILD : error : Type:
2>MSBUILD : error : Fody.WeavingException
2>MSBUILD : error : StackTrace:
2>MSBUILD : error :    bei ModuleWeaver.InjectMethod(TypeDefinition targetType, InvokerTypes& invokerType)
2>MSBUILD : error :    bei ModuleWeaver.AddOnPropertyChangedMethod(TypeDefinition targetType)
2>MSBUILD : error :    bei ModuleWeaver.FindMethodsForNodes()
2>MSBUILD : error :    bei ModuleWeaver.Execute()
2>MSBUILD : error :    bei InnerWeaver.ExecuteWeavers()
2>MSBUILD : error : Source:
2>MSBUILD : error : PropertyChanged.Fody
2>MSBUILD : error : TargetSite:
2>MSBUILD : error : Mono.Cecil.MethodDefinition InjectMethod(Mono.Cecil.TypeDefinition, InvokerTypes ByRef)
2>MSBUILD : error :

Fody implements behaviors at build time, it is integrated in base lib for years now. Fody is weaving assemblies that need the IPropertyChanged implementation. Its configuration in base is here https://github.com/eXpandFramework/eXpand/blob/master/Xpand/Xpand.Persistent/Xpand.Persistent.Base/FodyWeavers.xml
Nothing has changed there long time there.
It is not clear how u explicitly installed that package. If you can share more details?

Hi,
the nuget packages Fody (4.2.1) and PropertyChanged.Fody (2.6.1) are automaticly installed with the nuget package eXpandlib.
If you uninstall fody the project works.

hmm the lib nuspec had these dependencies in older versions as well
https://github.com/eXpandFramework/Support/blob/18.2/Nuspec/Lib.nuspec#L17-L25
https://github.com/eXpandFramework/eXpand/blob/master/Support/Nuspec/Lib.nuspec#L17-L25

am I right that you use NuGets long time now?

Thanks I see the problem now, Fody is a design time package and shouldn't be distributed. I ll update the Nuspecs for the next minor

I have the same problem, but I don't see fody in the references list...

how to uninstall fody?

edit your csproj file and remove all related references.

mmm... I have no references to Fody in any csproj file...
In a test project I removed the eXpandLib reference and all builds without problems... but if I remove the eXpandLib reference on my existing project, I receive some errors like this "error CS1705: Assembly 'Xpand.ExpressApp.Dashboard' with identity 'Xpand.ExpressApp.Dashboard, Version=19.1.301.0, Culture=neutral, PublicKeyToken=c52ffed5d5ff0958' uses 'Xpand.Persistent.Base, Version=19.1.301.0, Culture=neutral, PublicKeyToken=c52ffed5d5ff0958' which has a higher version than referenced assembly 'Xpand.Persistent.Base' with identity 'Xpand.Persistent.Base, Version=18.2.704.0, Culture=neutral, PublicKeyToken=c52ffed5d5ff0958'"
Also after all sorts of cleaning and rebuild

post a csproj that fails

XAFGarden.Module.csproj.zip
this fails with the Fody error

nope Fody is not responsible if that project fails, unless u posted a wrong project. What is the error u get?

If I create a new project with these references all works...
If in this project I add a reference to eXpandLib, I have this error on build:
MSBUILD : error : Fody: An unhandled exception occurred:
1>MSBUILD : error : Exception:
1>MSBUILD : error : Failed to execute weaver C:\Users\nurbe.nuget\packages\propertychanged.fody\2.6.1\build..\netclassicweaver\PropertyChanged.Fody.dll
1>MSBUILD : error : Type:
1>MSBUILD : error : System.Exception
1>MSBUILD : error : StackTrace:
1>MSBUILD : error :    at InnerWeaver.ExecuteWeavers() in C:\projects\fody\FodyIsolated\InnerWeaver.cs:line 186
1>MSBUILD : error :    at InnerWeaver.Execute() in C:\projects\fody\FodyIsolated\InnerWeaver.cs:line 109
1>MSBUILD : error : Source:
1>MSBUILD : error : FodyIsolated
1>MSBUILD : error : TargetSite:
1>MSBUILD : error : Void ExecuteWeavers()
1>MSBUILD : error : Could not inject EventInvoker method on type 'XAFTest.Module.BusinessObjects.Test.Table'. It is possible you are inheriting from a base class and have not correctly set 'EventInvokerNames' or you are using a explicit PropertyChanged event and the event field is not visible to this instance. Either correct 'EventInvokerNames' or implement your own EventInvoker on this class. If you want to suppress this place a [DoNotNotifyAttribute] on XAFTest.Module.BusinessObjects.Test.Table.
1>MSBUILD : error : Type:
1>MSBUILD : error : Fody.WeavingException
1>MSBUILD : error : StackTrace:
1>MSBUILD : error :    at ModuleWeaver.InjectMethod(TypeDefinition targetType, InvokerTypes& invokerType) in C:\projects\propertychanged\PropertyChanged.Fody\MethodInjector.cs:line 84
1>MSBUILD : error :    at ModuleWeaver.AddOnPropertyChangedMethod(TypeDefinition targetType) in C:\projects\propertychanged\PropertyChanged.Fody\MethodInjector.cs:line 28
1>MSBUILD : error :    at ModuleWeaver.FindMethodsForNodes() in C:\projects\propertychanged\PropertyChanged.Fody\MethodFinder.cs:line 237
1>MSBUILD : error :    at ModuleWeaver.Execute() in C:\projects\propertychanged\PropertyChanged.Fody\ModuleWeaver.cs:line 18
1>MSBUILD : error :    at InnerWeaver.ExecuteWeavers() in C:\projects\fody\FodyIsolated\InnerWeaver.cs:line 182
1>MSBUILD : error : Source:
1>MSBUILD : error : PropertyChanged.Fody
1>MSBUILD : error : TargetSite:
1>MSBUILD : error : Mono.Cecil.MethodDefinition InjectMethod(Mono.Cecil.TypeDefinition, InvokerTypes ByRef)
1>MSBUILD : error :

but If I remove the reference to eXpandLib on my already created projects, the error is on the conflict between versions of xpand.persistent.base

C:\Users\nurbe.nuget\packages\propertychanged.fody\2.6.1\build..\netclassicweaver\PropertyChanged.Fody.dll

the XAF Test u use b4 has the above reference while your Garden project does not have it.
if u remove the above reference from the test solution it will work. My guess is that the Garden project u posted is not the right one. Look at the other projects in the solution. The package that fails is propertychanged.fody
Not in a few hours that will be low dependency nuget in our NugetServer if u afford to wait for them

XAFTest.zip
If you can, try to build the sample

I already said that the problem is with the Fody package which shouldn't distributed in the first place as it is a design time only package. I already improve the NuGet package algorithm so to minimize dependencies and handle case like this. In a few hours the bot will update this issue when the packages are in the NugetServer, use those instead and u should be able to complie with no issue.

eXpand.lab release 19.1.301.1 includes commit Minimize NuGet dependencies #405 that relate to this task. Please test if it addresses the problem. If you use nuget add our LAB NugetServer as a nuget package source in VS.
Thanks a lot for your contribution.

After the update to the 19.1.301.1 the sample project does not build due to the error:
MSBUILD : error : Fody: No weavers found for the configuration entries PropertyChanged. Add the desired weavers via their nuget package.

yes you are right something went wrong with the build, I am checking now.

when the next release try on a new sample, nuget does not remove dependencies.

I see now the problem, it looks that by mistake I actually forgot the most important code commented, apologies for this, sending new build now, it won't be long.
https://github.com/eXpandFramework/eXpand.lab/blob/4ca365ef5633a6dd6cb2f0c1e1f369e1c019053e/Support/Build/CreateNuspecs.ps1#L149-L152

eXpand.lab release 19.1.301.2 includes commit Update Local Nuspecs for Validation #405 that relate to this task. Please test if it addresses the problem. If you use nuget add our LAB NugetServer as a nuget package source in VS.
Thanks a lot for your contribution.

ok, the building is OK
now, in my project I have a reference to Xpad.ExpressApp.Security, that depend to Xpand.XAF.Modules.ModelViewInheritance
The latest version of this package depends to DevExpress.ExpressApp.v18.2 (<IP_ADDRESS>) and this break the program on startup...

I found the the Nuspec versions were outdated, and fixed it. So when next release please test this scenario and we can then work out what happens in your solution.

Create and empty XAF solution
Goto your WinModule and install only the eXpandSecurityWin NuGet from the Lab servers.
Then open your WinModule.cs and add this line in the constractor

RequiredModuleTypes.Add(typeof(XpandSecurityWinModule));

Build and you should have success no errors or warnings.

Apply these steps to your solution and let me know if the problems are vanished.

eXpand.lab release 19.1.301.3 includes commit Nuspecs version should be updated on each build #405 that relate to this task. Please test if it addresses the problem. If you use nuget add our LAB NugetServer as a nuget package source in VS.
Thanks a lot for your contribution.

I followed the steps and the test project builds without problems, but on startup I still have a error on the reference to devexpress 18.2.7 not found
DevExpress.ExpressApp.DC.ObjectCreatingException: 'Unable to create an instance of the "Xpand.ExpressApp.Security.XpandSecurityModule" type.
Reason: "Non è stato possibile caricare il file o l'assembly 'DevExpress.ExpressApp.v18.2, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=b88d1754d700e49a' o una delle relative dipendenze. Impossibile trovare il file specificato."'
It seems to be related to the Xpand.XAF.Modules.ModelViewInheritance package

can you post your sample?

XAFTest.zip

this solution does not contain any referelce to Xpand packages

Sure? I reopened the project and there are the reference to eXpandSecurityWIn on XAFTest.Module.Win.csproj and eXpandLib on XAFTest.Win.csproj

yes i am sure I d/l twice no expand refs nor packages.conf

just a clean.ps1 which btw could be already in your system if u have xpand posh
https://github.com/eXpandFramework/XpandPosh/wiki/Clear-ProjectDirectories

that can explain a lot never tested packagerefernce

YAY !!!!!
with the references in the packages.config file the test project works without problem ....
WTF :-)

thats why i never tested packagereferenc, in my opinion and many other opinion it is problematic. it does not support init, scripts and there are endless packages out there that needs those events and with package reference simply not work. But I will research to see why it fails

BINGO!
I converted back my main project to the "package.config" manager and all works!
Many thanks

u welcome i will update my finding about the package reference here but I will lock the post now. Feel free to open another if you have issues.

Please subscribe to #414 get notified when packagereference format bug is fixed

Closing issue for age. Feel free to reopen it at any time.
.Thank you for your contribution.


feat: update verison

Codecov Report

Merging #871 (ece6d25) into develop (a0db0df) will increase coverage by 3.82%.
The diff coverage is 68.75%.

@@             Coverage Diff             @@
##           develop     #871      +/-   ##
===========================================
+ Coverage    57.56%   61.38%   +3.82%
===========================================
  Files          346      355       +9
  Lines        12828    13471     +643
  Branches      2405     2557     +152
===========================================
+ Hits          7384     8269     +885
+ Misses        5200     4942     -258
- Partials       244      260      +16

Impacted Files
Coverage Δ

src/avatar/group.tsx
97.14% <ø> (ø)

src/breadcrumb/breadcrumb-item-props.ts
100.00% <ø> (ø)

src/calendar/props.ts
70.00% <0.00%> (-30.00%)
:arrow_down:

src/cascader/props.ts
91.66% <ø> (ø)

src/cascader/utils/inputContent.ts
59.45% <0.00%> (+6.68%)
:arrow_up:

src/date-picker/date-picker.tsx
46.57% <0.00%> (+0.72%)
:arrow_up:

src/date-picker/panel/date-range.tsx
7.48% <0.00%> (+0.29%)
:arrow_up:

src/dialog/props.ts
70.00% <0.00%> (-30.00%)
:arrow_down:

src/dropdown/dropdown-menu.tsx
18.42% <ø> (ø)

src/dropdown/dropdown.tsx
70.00% <0.00%> (+5.00%)
:arrow_up:

... and 129 more

Continue to review full report at Codecov.

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


sourceNamespace and template parameters can be placed togather in httpprot

As descirbe in the #903 , the commit let sourceNamespace and template parameters can be placed togather. Template option in requestBuilder takes higher priority than sourceNamespace. As member in template is non-default value, it will overlap the same member in sourceNamespace.

Codecov Report
Base: 73.12% // Head: 72.94% // Decreases project coverage by -0.18% :warning:

Coverage data is based on head (1e14428) compared to base (65f7024).
Patch coverage: 28.57% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #905      +/-   ##
==========================================
- Coverage   73.12%   72.94%   -0.19%
==========================================
  Files         130      130
  Lines       14969    14989      +20
==========================================
- Hits        10946    10933      -13
- Misses       3405     3431      +26
- Partials      618      625       +7

Impacted Files
Coverage Δ

pkg/protocols/grpcprot/grpc.go
0.00% <0.00%> (ø)

pkg/protocols/httpprot/request.go
76.26% <7.14%> (-4.07%)
:arrow_down:

pkg/protocols/httpprot/http.go
83.82% <50.00%> (-2.12%)
:arrow_down:

pkg/filters/builder/requestbuilder.go
71.42% <83.33%> (+3.00%)
:arrow_up:

pkg/object/grpcserver/runtime.go
67.91% <0.00%> (-6.42%)
:arrow_down:

pkg/cluster/cluster.go
59.57% <0.00%> (-1.59%)
:arrow_down:

pkg/filters/validator/basicauth.go
75.38% <0.00%> (-1.16%)
:arrow_down:

pkg/object/mqttproxy/broker.go
73.71% <0.00%> (-0.16%)
:arrow_down:

... and 1 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

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

@hhhcj , Thanks for the PR.
The code it changes is one of our most complex parts, so we will need time to check it carefully.

@hhhcj, thanks great for your contribution, I hava some doubts about this PR

it seems that the logic in BuildRequestWithRef is modifying the current active request but not to build a new request from it, so it may in conflict with the design intent of RequestBuilder
I remember what you need is to copy some headers from other responses, but you are copying from a request, am I missing something?
we are considering to enhance the RequestAdaptor to modify the original request from other responses, what do you think of it?

we are considering to enhance the RequestAdaptor to modify the original request from other responses, what do you think of it?

I agree with it. I prefer this firstly, and I think we can place template option to all of the filters. When localvar said

For RequestAdaptor, we currently just want to keep it simple and don't tend to add template support to it.

at #903, I turn to modify the RequestBuilder.
I will make a pr with template support for RequestAdaptor later. @samanhappy

hi @hhhcj , I'm closing the PR as it cannot be accepted:

RequestBuilder is used to build a new request, not modify an existing one.
the body (payload) of a request could be a stream, in this case, it is cannot be copied from one request to another.
a request instance could be referenced in more than one namespace, that's, even sourceNamespace and target namespace is identical, copy the existing body to another request may break other references in other namespaces.


http request node resolving https addresses to <IP_ADDRESS>

Current Behavior
When using an HTTPS URL, https://www.google.com/, in an HTTP request node it throws a connection refused error with the resolved address being <IP_ADDRESS>. If you use the same domain but as non-secure, http://www.google.com/, it fetches from the correct address. This was previously reported and resolved here: https://github.com/node-red/node-red/issues/3072 and it's related with the community node: dialogflow-full-nodered.
It's falling again since node-red 3.1.3 but it was working on node-red 3.0.2.
Expected Behavior
The call to the https server using an http request node should return a response or an econnrefused error message
Steps To Reproduce

Install dialogflow-full-nodered: https://flows.nodered.org/node/dialogflow-full-nodered
Start node-red 3.1.3 environment
Create one flow as you can see in the example flow
Perform the inject and observe the debug window which will display the error

Example flow
[{"id":"8307b12e3691c945","type":"tab","label":"AVS-305","disabled":false,"info":"","env":[]},{"id":"e43a6a107b2cfb3b","type":"step","z":"8307b12e3691c945","name":"TestStepStudio310","token":"e88a649ab2f7fcf98a55d6ec28f5366a","bearer":"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6Im9TbC1DYkRMamRFWWV0WVU1VTlhaCJ9.eyJodHRwczovL2hhc3VyYS5pby9qd3QvY2xhaW1zIjp7IngtaGFzdXJhLWRlZmF1bHQtcm9sZSI6InVzZXIiLCJ4LWhhc3VyYS1hbGxvd2VkLXJvbGVzIjpbInVzZXIiXSwieC1oYXN1cmEtdXNlci1pZCI6ImF1dGgwfDYwMmZkMjA2YWMwZGNhMDA3MDdkMjEwYiJ9LCJuaWNrbmFtZSI6Im1tdWNoaWNvIiwibmFtZSI6Ik1hdXJpY2lvIiwicGljdHVyZSI6Imh0dHBzOi8vcy5ncmF2YXRhci5jb20vYXZhdGFyLzRiYjQ3MzVhMDk5MjIxZDMyODc3OGQ1YmM3NTU5MjMxP3M9NDgwJnI9cGcmZD1odHRwcyUzQSUyRiUyRmNkbi5hdXRoMC5jb20lMkZhdmF0YXJzJTJGbWEucG5nIiwidXBkYXRlZF9hdCI6IjIwMjMtMTEtMzBUMTE6MTc6NDEuNTc1WiIsImVtYWlsIjoibW11Y2hpY29AYWl2by5jbyIsImVtYWlsX3ZlcmlmaWVkIjp0cnVlLCJpc3MiOiJodHRwczovL2Fpdm90ZXN0LmF1dGgwLmNvbS8iLCJhdWQiOiJNdElpcGxFS2pOMVVDcVdpeUY4RWxtaXNYSmdDTllNbSIsImlhdCI6MTcwMTM0MzA2MywiZXhwIjoxNzAxMzc5MDYzLCJzdWIiOiJhdXRoMHw2MDJmZDIwNmFjMGRjYTAwNzA3ZDIxMGIifQ.xKWIpQpFwaIEITOVW29Vu6hZd-LqL6opxNdt-zsa7CNhNLXMCo54NkYhOPrX5YjybG6yc6Gw15LOJja9upsoCRDbJeQqET70Lc8avBZrYvMUTxnL768VGc1xixLzq1kmrp123SgDuTkyRa44pGFW03CIFyV03dWHn4ALMLs3yFqX6N0mpTTqx0yCRFQums6gsSnwGlRUJh7b9KL0xzpaEKDr0W43ritSkVKm5sgP9EQkg0NmdbEZ2Bm_X8p1iKBV8G1yZoAqkT7Cc2MhVLO4TJjlqPIoTu1-kpq1qXcIQjhZU1Wp2hTywKD-xIwquLDqpwGttyOQtH7UfQQ7X6vcPg","x":320,"y":120,"wires":[["7183e43dc17b9d63","d01b6fba9be3c998"]]},{"id":"391dcd67dddf7d0d","type":"step close","z":"8307b12e3691c945","x":4570,"y":120,"wires":[]},{"id":"ebab9e91e79340b7","type":"answer","z":"8307b12e3691c945","answer":"Hello from Studio 3.1.0","answerValidationPass":"true","x":1470,"y":120,"wires":[["347ac2939f7a75ca","c0f2014b291aca0f"]]},{"id":"7183e43dc17b9d63","type":"channel","z":"8307b12e3691c945","x":500,"y":120,"wires":[["75dc6ccc8825bdd7","6ccee6246ade7b30"]]},{"id":"75dc6ccc8825bdd7","type":"debug","z":"8307b12e3691c945","name":"Channel Data","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":700,"y":180,"wires":[]},{"id":"d01b6fba9be3c998","type":"debug","z":"8307b12e3691c945","name":"Step Data","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":480,"y":180,"wires":[]},{"id":"6ccee6246ade7b30","type":"session-storage","z":"8307b12e3691c945","mode":"PUT","tosend":"{\"ticket\":\"Avs-305\"}","response":"","ready":"true","sessionId":"{{payload.agentbot_user.id}}","inputMethod":"object","inputTypeSelector":"json","x":700,"y":120,"wires":[["60dc2a607d580e5c"]]},{"id":"60dc2a607d580e5c","type":"session-storage","z":"8307b12e3691c945","mode":"GET","tosend":"{\"ticket\":\"Avs-305\"}","response":"","ready":"false","sessionId":"{{payload.agentbot_user.id}}","inputMethod":"object","inputTypeSelector":"json","x":900,"y":120,"wires":[["e569599b07a006e0","13b9ca3e5837af95"]]},{"id":"e569599b07a006e0","type":"debug","z":"8307b12e3691c945","name":"Session Storage Data","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":1220,"y":180,"wires":[]},{"id":"13b9ca3e5837af95","type":"condition","z":"8307b12e3691c945","bot":"e88a649ab2f7fcf98a55d6ec28f5366a","condition":"{\"id\":\"6367\",\"type\":\"Site\",\"value\":\"Público\"}","sessionId":"payload.agentbot_user.id","sessionIdInputType":"msg","x":1180,"y":120,"wires":[["ebab9e91e79340b7","efbe6cfd69f70f15"]]},{"id":"efbe6cfd69f70f15","type":"debug","z":"8307b12e3691c945","name":"Condition Data","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":1480,"y":180,"wires":[]},{"id":"347ac2939f7a75ca","type":"update-live-agent-status","z":"8307b12e3691c945","name":"Set Coffee","user_bot":"da6e7d0ee660dea3","email":"mmuchico@aivo.co","reasonName":"Coffee break","statusLive":"0","x":1750,"y":120,"wires":[["d74f902e28aeae0f","047abcb002d419b8"]]},{"id":"d74f902e28aeae0f","type":"debug","z":"8307b12e3691c945","name":"Live Agent Status Set","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":2060,"y":180,"wires":[]},{"id":"047abcb002d419b8","type":"derivation","z":"8307b12e3691c945","derivationId":"1000","x":2050,"y":120,"wires":[["d802d929f73496a6","800e23e4d7207ac2"]]},{"id":"d802d929f73496a6","type":"debug","z":"8307b12e3691c945","name":"Derivation Complement","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":2350,"y":180,"wires":[]},{"id":"c0f2014b291aca0f","type":"debug","z":"8307b12e3691c945","name":"Answer Complement","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":1780,"y":180,"wires":[]},{"id":"800e23e4d7207ac2","type":"image","z":"8307b12e3691c945","url":"https://filesamples.com/samples/image/jpeg/sample_640%C3%97426.jpeg","validationPass":"true","x":2310,"y":120,"wires":[["1826eed3b0c9efb4","3f203247db125070"]]},{"id":"1826eed3b0c9efb4","type":"debug","z":"8307b12e3691c945","name":"Image Complement","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":2630,"y":180,"wires":[]},{"id":"3f203247db125070","type":"pdf","z":"8307b12e3691c945","url":"https://filesamples.com/samples/document/pdf/sample3.pdf","base64String":"","urlValidationPass":"true","isValidBase64PdfString":"false","base64":"false","x":2610,"y":120,"wires":[["4f51ed66917f8d34","38ee609122243164"]]},{"id":"4f51ed66917f8d34","type":"debug","z":"8307b12e3691c945","name":"PDF Complement","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":2890,"y":180,"wires":[]},{"id":"38ee609122243164","type":"video","z":"8307b12e3691c945","hash":"LH6VWqnzK0s","hashValidationPass":"true","x":2880,"y":120,"wires":[["83d90a32db14915b","ae41c2428f17b3dd"]]},{"id":"83d90a32db14915b","type":"debug","z":"8307b12e3691c945","name":"Video Complement","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":3150,"y":180,"wires":[]},{"id":"ae41c2428f17b3dd","type":"webview","z":"8307b12e3691c945","title":"Engageware","url":"https://engageware.com/","messengerExtensions":"false","urlValidationPass":"true","titleValidationPass":"true","x":3130,"y":120,"wires":[["c18d9bbb99656198","7de737ccbe4356f8"]]},{"id":"c18d9bbb99656198","type":"debug","z":"8307b12e3691c945","name":"Webview Complement","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":3400,"y":180,"wires":[]},{"id":"377076817d4fecfe","type":"debug","z":"8307b12e3691c945","name":"Buttons Complement","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":3680,"y":180,"wires":[]},{"id":"7de737ccbe4356f8","type":"buttons","z":"8307b12e3691c945","blockInput":"false","oneChoice":"false","quickReplies":"false","token":"e88a649ab2f7fcf98a55d6ec28f5366a","buttons":[{"label":"Button Message 1","type":"message","value":"Value Message 1"},{"label":"Button Link 2","type":"link","value":"https://www.aivo.co"}],"isNextStep":false,"integrationsData":[{"id":"aivo-studio|||PruebaES Testing|||ApiClientCall1644503740","name":"PruebaES Testing"},{"id":"aivo-studio|||PruebaES Testing|||ApiClientCall1644505882","name":"PruebaES Testing"},{"id":"aivo-studio|||Prueba LocalHost 1|||ApiClientCall1644506004","name":"Prueba LocalHost 1"},{"id":"aivo-studio|||Creacion Step LocalHost|||ApiClientCall1644516962","name":"Creacion Step LocalHost"},{"id":"aivo-studio|||Step Testing Prueba ES 007|||ApiClientCall1644585396","name":"Step Testing Prueba ES 007"},{"id":"aivo-studio|||Prueba ZD GetForm|||ApiClientCall1645643047","name":"Prueba ZD GetForm"},{"id":"aivo-studio|||Prueba ZD Create TK|||ApiClientCall1645643047","name":"Prueba ZD Create TK"},{"id":"aivo-studio|||PruebaES Test List WA|||ApiClientCall1646862799","name":"PruebaES Test List WA"},{"id":"aivo-studio|||PruebaES Generic Next Step|||ApiClientCall1646862800","name":"PruebaES Generic Next Step"},{"id":"aivo-studio|||Prueba ES FormButton|||ApiClientCall1649182039","name":"Prueba ES FormButton"},{"id":"aivo-studio|||Prueba ES FormButton Call|||ApiClientCall1649182042","name":"Prueba ES FormButton Call"},{"id":"aivo-studio|||Prueba ES Form Three|||ApiClientCall1649256561","name":"Prueba ES Form Three"},{"id":"aivo-studio|||Prueba ES Form Two|||ApiClientCall1649256561","name":"Prueba ES Form Two"},{"id":"aivo-studio|||Prueba ES Form One|||ApiClientCall1649256561","name":"Prueba ES Form One"},{"id":"aivo-studio|||EWInitStep|||ApiClientCall1695067053","name":"EWInitStep"},{"id":"aivo-studio|||TestStepStudio310|||ApiClientCall1701350649","name":"TestStepStudio310"}],"validationPass":"true","x":3360,"y":120,"wires":[["377076817d4fecfe","52ab7319d7070ce4"]]},{"id":"52ab7319d7070ce4","type":"carousel","z":"8307b12e3691c945","slidesCount":"0","slides":[{"title":"Carousel","image":"https://filesamples.com/samples/image/jpeg/sample_1280%C3%97853.jpeg","buttons":[{"label":"View Product Label","type":"message","value":"View Product Value"}]}],"buttonsCount":"1","x":3640,"y":120,"wires":[["2d4e8531712a4da0","5eb5ee28e24ac0bb"]]},{"id":"2d4e8531712a4da0","type":"debug","z":"8307b12e3691c945","name":"Carousel Complement","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":4000,"y":180,"wires":[]},{"id":"5eb5ee28e24ac0bb","type":"form","z":"8307b12e3691c945","blockInput":"false","nextStep":"aivo-studio|||EWInitStep|||ApiClientCall1695067053","inputsCount":"0","inputsArray":[{"type":"text","ref":"refLabel","label":"textLabel","required":"false","regex":"textRegex","callback_label":"textCallBackLabel","options":[]}],"optionsCount":"0","integrationsData":[{"id":"aivo-studio|||PruebaES Testing|||ApiClientCall1644503740","name":"PruebaES Testing"},{"id":"aivo-studio|||PruebaES Testing|||ApiClientCall1644505882","name":"PruebaES Testing"},{"id":"aivo-studio|||Prueba LocalHost 1|||ApiClientCall1644506004","name":"Prueba LocalHost 1"},{"id":"aivo-studio|||Creacion Step LocalHost|||ApiClientCall1644516962","name":"Creacion Step LocalHost"},{"id":"aivo-studio|||Step Testing Prueba ES 007|||ApiClientCall1644585396","name":"Step Testing Prueba ES 007"},{"id":"aivo-studio|||Prueba ZD GetForm|||ApiClientCall1645643047","name":"Prueba ZD GetForm"},{"id":"aivo-studio|||Prueba ZD Create TK|||ApiClientCall1645643047","name":"Prueba ZD Create TK"},{"id":"aivo-studio|||PruebaES Test List WA|||ApiClientCall1646862799","name":"PruebaES Test List WA"},{"id":"aivo-studio|||PruebaES Generic Next Step|||ApiClientCall1646862800","name":"PruebaES Generic Next Step"},{"id":"aivo-studio|||Prueba ES FormButton|||ApiClientCall1649182039","name":"Prueba ES FormButton"},{"id":"aivo-studio|||Prueba ES FormButton Call|||ApiClientCall1649182042","name":"Prueba ES FormButton Call"},{"id":"aivo-studio|||Prueba ES Form Three|||ApiClientCall1649256561","name":"Prueba ES Form Three"},{"id":"aivo-studio|||Prueba ES Form Two|||ApiClientCall1649256561","name":"Prueba ES Form Two"},{"id":"aivo-studio|||Prueba ES Form One|||ApiClientCall1649256561","name":"Prueba ES Form One"},{"id":"aivo-studio|||EWInitStep|||ApiClientCall1695067053","name":"EWInitStep"},{"id":"aivo-studio|||TestStepStudio310|||ApiClientCall1701350649","name":"TestStepStudio310"}],"integration":"aivo-studio|||EWInitStep|||ApiClientCall1695067053","token":"e88a649ab2f7fcf98a55d6ec28f5366a","x":3950,"y":120,"wires":[["24a4b5cd949c1036","2864227f7f5bfead"]]},{"id":"24a4b5cd949c1036","type":"debug","z":"8307b12e3691c945","name":"Form Complement","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":4270,"y":180,"wires":[]},{"id":"8433c89e7258ab17","type":"debug","z":"8307b12e3691c945","name":"Integration Complement","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":4630,"y":180,"wires":[]},{"id":"2864227f7f5bfead","type":"integration","z":"8307b12e3691c945","nextStep":"","token":"","integration":"","x":4250,"y":120,"wires":[["391dcd67dddf7d0d","8433c89e7258ab17"]]},{"id":"a7f6156bd7e36139","type":"http request","z":"8307b12e3691c945","name":"","method":"GET","ret":"txt","paytoqs":"ignore","url":"https://www.google.com","tls":"","persist":false,"proxy":"","insecureHTTPParser":false,"authType":"","senderr":false,"headers":[],"x":590,"y":320,"wires":[["fb299ce4ce497355"]]},{"id":"ed36b06a6b4e6ef9","type":"inject","z":"8307b12e3691c945","name":"","props":[],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","x":390,"y":320,"wires":[["a7f6156bd7e36139"]]},{"id":"fb299ce4ce497355","type":"debug","z":"8307b12e3691c945","name":"debug","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":810,"y":320,"wires":[]},{"id":"da6e7d0ee660dea3","type":"aivo-bot-config","name_config":"TOTVS HOSPITALITY STAGE","bot":"7699f37ab6659f955716802ceaec66e8"}]

Environment

Node-RED version: 3.1.3
Node.js version: 18.19.0
npm version: 8.19.4
Platform/OS: Docker desktop 4.25.2 on Windows 11 (Linux <IP_ADDRESS>-microsoft-standard-WSL2 #1 x86_64 Linux)
Browser: Microsoft Edge 120.0.2210.91

Duplicate of https://github.com/node-red/node-red/issues/4324
This is down to a broken node you have installed, read the linked issue for hints on how to find the broken node

$ npm list agent-base
broken@ /home/hardillb/temp/broken
└─┬<EMAIL_ADDRESS>  └─┬<EMAIL_ADDRESS>    └─┬<EMAIL_ADDRESS>      ├─┬<EMAIL_ADDRESS>      │ └─┬<EMAIL_ADDRESS>      │   └──<EMAIL_ADDRESS>      └─┬<EMAIL_ADDRESS>        └─┬<EMAIL_ADDRESS>          └─┬<EMAIL_ADDRESS>            └──<EMAIL_ADDRESS>


Horizontal Bars bug

ct:value is the expected value followed by  ',undefined'.. this becomes kinda buggy for tooltip purposes

I also want to how how to fix it

Thanks for the bug report. I've fixed that and it will be pushed into 0.9.2


Testing AuthorizeView

I'm having some issues with testing components that are wrapped within an AuthorizeView.
I'm using your TestRenderer to create instances of components in my tests:
https://github.com/aspnet/AspNetCore/blob/2e4274cb67c049055e321c18cc9e64562da52dcf/src/Components/Shared/test/TestRenderer.cs
I have extended the TestRender as follow:
        public async Task<TComponent> CreateRenderedComponentAsync<TComponent>(bool requiresAuthorization) where TComponent : IComponent
        {
            var component = this.InstantiateComponent<TComponent>();

            if (requiresAuthorization)
            {
                var authComponent = WrapInAuthorizeView(context => builder => builder.AddContent(0, component));
                var authComponentId = this.AssignRootComponentId(authComponent);

                await this.RenderRootComponentAsync(authComponentId);
            }
            else
            {
                var componentId = this.AssignRootComponentId(component);

                await this.RenderRootComponentAsync(componentId);
            }

            return component;
        }

        public new int AssignRootComponentId(IComponent component)
        {
            return base.AssignRootComponentId(component);
        }

        public new Task RenderRootComponentAsync(int componentId)
        {
            return InvokeAsync(() => base.RenderRootComponentAsync(componentId));
        }

        private static TestAuthorizationComponent WrapInAuthorizeView(
            RenderFragment<AuthenticationState> childContent = null,
            RenderFragment<AuthenticationState> authorized = null,
            RenderFragment<AuthenticationState> notAuthorized = null,
            RenderFragment authorizing = null,
            string policy = null,
            string roles = null,
            object resource = null)
        {
            return new TestAuthorizationComponent(builder =>
            {
                builder.OpenComponent<AuthorizeView>(0);

                builder.AddAttribute(1, nameof(AuthorizeView.ChildContent), childContent);
                builder.AddAttribute(2, nameof(AuthorizeView.Authorized), authorized);
                builder.AddAttribute(3, nameof(AuthorizeView.NotAuthorized), notAuthorized);
                builder.AddAttribute(4, nameof(AuthorizeView.Authorizing), authorizing);
                builder.AddAttribute(5, nameof(AuthorizeView.Policy), policy);
                builder.AddAttribute(6, nameof(AuthorizeView.Roles), roles);
                builder.AddAttribute(7, nameof(AuthorizeView.Resource), resource);

                builder.CloseComponent();
            });
        }

This allows me to create an instance of a component really easy:
            Record.ExceptionAsync(async () => component = await this.renderer.CreateRenderedComponentAsync<SecuredComponentView>(true)).Result.Should().BeNull();

My component markup is similar to:
<AuthorizeView<EMAIL_ADDRESS>Context="Auth">
    <Authorized>

    </Authorized>
    <NotAuthorized>

    </NotAuthorized>
</AuthorizeView>

The first real drawback i've noticed is, that i have to wrap the component into the AuthorizeView by my own, else i'm receiving a CascadingAuthenticationState error.  For the same reason i'm not able to receive the applied policies (IsUser in this case), i have to manually set them up, which is not the case for testing the api controllers.
The next issue i've noticed is, that it is really hard to test the current authorization state of my components. From your test cases i saw that you are analyzing the changes made by the rendering process:
            var rootComponent = WrapInAuthorizeView(
                notAuthorizedContent:
                    context => builder => builder.AddContent(0, $"You are not authorized, even though we know you are {context.User.Identity.Name}"));
            rootComponent.AuthenticationState = CreateAuthenticationState("Nellie");

            // Act
            renderer.AssignRootComponentId(rootComponent);
            rootComponent.TriggerRender();

            // Assert
            var diff = renderer.Batches.Single().GetComponentDiffs<AuthorizeView>().Single();
            Assert.Collection(diff.Edits, edit =>
            {
                Assert.Equal(RenderTreeEditType.PrependFrame, edit.Type);
                AssertFrame.Text(
                    renderer.Batches.Single().ReferenceFrames[edit.ReferenceFrameIndex],
                    "You are not authorized, even though we know you are Nellie");
            });

Maybe i missed something here, but from my point of view, it would probably be easier to have something like a BaseAuthComponent, similar to the AuthorizeViewCore class, i can inherit from instead of using the ComponentBase class.
https://github.com/aspnet/AspNetCore/blob/2e4274cb67c049055e321c18cc9e64562da52dcf/src/Components/Components/src/Auth/AuthorizeViewCore.cs

Thanks for contacting us, @endeffects.
This is a known gap at the moment and we plan to cover this in the future. We track this work as part of  #5458.


Bump Dependencies #1516600951

Bumps dependencies for product-is. Link : https://github.com/wso2/product-is/actions/runs/1516600951

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.jenkins-is-staging seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


[Relay][WIP] JSON round trip tests for Relay nodes

Serializing Relay nodes no longer segfaults, but numerous issues came up when trying to write even these simple tests. I am curious for input about the best ways to address some of them, as some are not obvious.
In particular, it would be nice if round-trip serialization preserved alpha-equality, as one would expect it to. However, that is not the case, as there are numerous places where we check structural equality by pointer equality, as with vars and attrs. How should that be addressed?
Perhaps serialization tests should be separate from the IR node tests, so we could try many different cases instead.

I realize that while I would like to check that the round-trip worked by checking alpha-equality, perhaps there is a different rule we want to use instead, but I do think it is reasonable to expect structural equality to be preserved.

@slyubomirsky @tqchen alpha equals means that the programs are equivalent up to variable renaming. If alpha-equals doesn't hold after serialization it means we have changed the meaning of the program.

I think what's clear is that these tests should not piggy-back off the ir nodes tests but rather should be separate and have function definitions, let bindings, etc., appropriately so as to ensure alpha-equality is preserved (i.e., I should not expect free vars to somehow still be alpha-equal).
I am not sure how to do that for the global var case, however! Would appreciate a pointer on that.

The graph_equal introduced in #1958 should be able to handle most cases(including free variables)

Excellent, I will rebase later today and make use of those changes too

Will leave test_ir_nodes alone and take another shot in another PR


cloudwatch_logger: 3.0.1-1 in 'dashing/distribution.yaml' [bloom]

Increasing version of package(s) in repository cloudwatch_logger to 3.0.1-1:

upstream repository: https://github.com/aws-robotics/cloudwatchlogs-ros2.git
release repository: https://github.com/aws-gbp/cloudwatch_logger-release.git
distro file: dashing/distribution.yaml
bloom version: 0.9.0
previous version for package: 3.0.0-2

cloudwatch_logger
* Bump package version to 3.0.1 (#14 <https://github.com/aws-robotics/cloudwatchlogs-ros2/issues/14>)
* Fix linting issues found by clang-tidy 6.0 (#12 <https://github.com/aws-robotics/cloudwatchlogs-ros2/issues/12>)
  * clang-tidy fixes
  * clang-tidy linting issues fixed manually
* Contributors: Miaofei Mei, Ryan Newell

Close and reopen to try to trigger travis

CI passed: https://travis-ci.org/github/ros/rosdistro/builds/669453918?utm_medium=notification&utm_source=github_status


Fix tests

Tests currently fail / hang on Travis, probably due to file descriptors higher than FD_SETSIZE.
Reference: http://chat.stackoverflow.com/transcript/message/36774232#36774232

With https://github.com/amphp/phpunit-util/commit/fdb9010ab98855e0dbce2ecf5c4125e069fed4c6 tests run fine locally, but still hang on Travis, but at a different test.

UV has a separate test group now and everything runs fine on Travis.


Update WindowsBuild.md

Remove prelude as the documentation now covers the use of cl to build as it is stable and does a better job overall compared to clang-cl (better generated binaries, faster builds, better (working) debug information).

Replace this paragraph with a description of your changes and rationale. Provide links to external references/discussions if appropriate.

Resolves SR-NNNN.

@swift-ci please smoke test and merge


Choosing dialogue options with number keys doesn't work with the plugin enabled

Pressing the number keys (eg. 1-5) to choose options while having that key rebound to shift (mine is 3) does not work.
Example:

This issue also exists with runelite's own key remapping plugin, I found a relevant issue https://github.com/runelite/runelite/issues/16274

I've known about this issue but was too lazy to fix so thanks for giving me the push. Once my updates are reviewed and accepted, there will be a config option to disable shift remapping when the dialog option menu is open or when the bank pin interface is open. By default, it will be enabled.
Also that relevant issue you linked is the opposite of the problem you are experiencing. They want remapping to work when dialog option menus are open while you do not want it to work. Due to that, I decided to make it a config option so everyone is happy!

Oh, I must have misread. Thanks though! Is there a chance to get this fix to work with the other plugin? Runelite's own plugin still has this issue too

It can easily be done but the Runelite devs will have to change it and who knows if they care enough to. From what I can tell, they only check to make sure a dialog box isn't open for remapping f keys and escape. They didn't do it for control remapping. They also only do space remapping when a dialog box (press space to continue) is open and unfortunately their method also encompasses the bank pin interface so if you have a number key as space then you can't use it to enter bank pin.

 Is there any way to include the rebinding of control in this plugin?


Avoids repetition by testing CentOS after Ubuntu

This is less copy/pasta

hmm 45s I could go either way on this. The pro is less config replicated, the con is the long pole is longer (3m until PR feedback completes)

38s longer.. 15s is downloading the centos image. not sure we can make this much better.
@mathetake WDYT? should we do this and be 38s longer or leave it and be 35 lines longer?

actually total duration isn't longer as windows is slower than the now slower ubuntu :D

thanks for thinking about it @mathetake

master now does the same in travis, running e2e back to back ubuntu then centos, using arm64graviton and done in <2.5minutes
--- a/.travis.yml
+++ b/.travis.yml
@@ -13,7 +13,6 @@ cache:
   directories: # ~/.func-e/versions is cached so that we only re-download once: for TestFuncEInstall
     - $HOME/.func-e/versions
     - $HOME/go/pkg/mod
-    - $HOME/go/bin/*-v*

 git:
   depth: false  # TRAVIS_COMMIT_RANGE requires full commit history.
@@ -28,4 +27,13 @@ before_install: |  # Prevent test build of a documentation or GitHub Actions onl
   fi
   make check || travis_terminate 1

-script: make e2e
+env:  # CENTOS_IMAGE was built by internal-images.yaml; E2E_FUNC_E_PATH was built via `make e2e`
+  global:
+    - CENTOS_IMAGE=ghcr.io/tetratelabs/func-e-internal:centos8
+    - E2E_FUNC_E_PATH=build/func-e_linux_arm64/func-e
+
+script:
+  # Run e2e tests using the `func-e` binary (Ubuntu)
+  - make e2e
+  # Run e2e tests using the `func-e` binary (CentOS)
+  - docker run -v $HOME/.func-e:/root/.func-e -v $PWD:/func-e --rm ${CENTOS_IMAGE} -c "cd /func-e; make -o ${E2E_FUNC_E_PATH} e2e"


Italy North as Session Host and management VM region

What happened? Provide a clear and concise description of the bug, including deployment details.
I choose to deploy a new Session Host in west europe but since compute capacity is not availabile in west europe I must deploy virtual network and compute session hosts and management VMs in Italy North
Please provide the correlation id associated with your error or bug.
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
What was the expected outcome?
No response
Relevant log output
{"code":"InvalidTemplate","message":"Deployment template validation failed: 'The template variable 'varSessionHostLocationAcronym' is not valid: The language expression property 'italynorth' doesn't exist, available properties are 'australiacentral, australiacentral2, australiaeast, australiasoutheast, brazilsouth, brazilsoutheast, canadacentral, canadaeast, centralindia, centralus, chinaeast, chinaeast2, chinanorth, chinanorth2, chinanorth3, eastasia, eastus, eastus2, francecentral, francesouth, germanynorth, germanywestcentral, japaneast, japanwest, jioindiacentral, jioindiawest, koreacentral, koreasouth, northcentralus, northeurope, norwayeast, norwaywest, southafricanorth, southafricawest, southcentralus, southeastasia, southindia, swedencentral, switzerlandnorth, switzerlandwest, uaecentral, uaenorth, uksouth, ukwest, usdodcentral, usdodeast, usgovarizona, usgovtexas, usgovvirginia, westcentralus, westeurope, westindia, westus, westus2, westus3'.. Please see https://aka.ms/arm-functions for usage details.'."}

@gclementimicrosoft thanks for submitting the issue.
We pushed a fix in a feature branch (issue-604), please test the deployment again using this link:
https://portal.azure.com/#blade/Microsoft_Azure_CreateUIDef/CustomDeploymentBlade/uri/https%3A%2F%2Fraw.githubusercontent.com%2FAzure%2Favdaccelerator%2Fissue-604%2Fworkload%2Farm%2Fdeploy-baseline.json/uiFormDefinitionUri/https%3A%2F%2Fraw.githubusercontent.com%2FAzure%2Favdaccelerator%2Fissue-604%2Fworkload%2Fportal-ui%2Fportal-ui-baseline.json
Please keep us updated on the test outcome.

@gclementimicrosoft  please let us know if you have any updates on testing.

Branch merged.


Update dev and user guides

Added more content for guides in terms of summary command.
Fixed some minor English and augmented some details in the guides.
Partially Fix #117 as all index were changed to LOAN_ID

Pull Request Test Coverage Report for Build 412

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 92.572%

Totals

Change from base Build 403:
0.0%

Covered Lines:
1832

Relevant Lines:
1979

💛  - Coveralls


chore: lint repo

Just a question: do we have some guidelines for when we should add changesets and when we should not? In the pr from earlier it seemed like you didn't add a changeset. Trying to understand the system here

Regarding adding changesets, I think we should be free to add a changeset whenever we want. A bare minimum is to add changesets on new features, but any user-facing changes should be changeset imo. I snuck in a vertical padding adjustment to this PR, so that is the reason it was added in this PR at least


Vortex Web Client definitions

This is my first try on writing a definition file.
I'm open for any suggestions on how to do it better!
See also my question here: http://stackoverflow.com/questions/30326352/typescript-definition-file-with-submodules

vortex-web-client/vortex-web-client.d.ts
check list

[ ] is collect naming convention?

https://www.npmjs.com/package/vortex-web-client
http://bower.io/search/?q=vortex-web-client
others?

[X] has a test file? (vortex-web-client/vortex-web-client-tests.ts or others)
[ ] pass the Travic-CI test?

@Pro http://goo.gl/cmgHSg

@vvakame I tried your suggested style but then IntelliJ still complaints that runtime and other members can't be found in the namespace.
I now fully defined the interface so the code would be ready to merge. I also rewrote the parts so it's better style now.

@Pro thanks mate!
IntelliJ(and WebStorm) are not using LanguageService of TypeScript compiler yet.
Please trust tsc messages.


New to tinacms and your 'Getting started with a starter' is throwing me a EEXIST error.

Discussed in https://github.com/tinacms/tinacms/discussions/3100

Originally posted by 96312 August 16, 2022
I'm completely new to tinacms and am following your page : https://tina.io/docs/introduction/using-starter/ by using npx create-tina-app@latest. I can not progress since the system is throwing me an error on the installation step itself. Is this a known bug?

Compilation failed with errors. Server has not been restarted. see error below
EEXIST: file already exists, mkdir '..\.tina\__generated__'
[Error: EEXIST: file already exists, mkdir '..\.tina\__generated__'] {
  errno: -4075,
  code: 'EEXIST',
  syscall: 'mkdir',
  path: ..\\.tina\\__generated__'
}
```</div>

I am not able to replicate this error on macOS with default options selected. Is @96312 running the npx command in a directory that already has the command ran before?

Fixed in https://github.com/tinacms/tinacms/pull/3145


[WIP] Fix build failure

Just putting this up to share progress fixing build the failure. Do not merge!

Should be resolved by adding a typescript build to @rangle/foundations - see ticket here: https://rangle.atlassian.net/browse/R20-231


TBDGen: Skip visiting nominal types with non-public linkage

As a performance optimization, SILSymbolVisitor can skip doing any work for nominal types that have non-public linkage when the PublicSymbolsOnly option is enabled. This makes .tbd emission trigger fewer unnecessary type checking requests when -experimenal-lazy-typecheck is specified.
Resolves rdar://114704791

@swift-ci please smoke test

@swift-ci please smoke test linux

@swift-ci please smoke test linux


Can Azure Dev Ops Server 2019 Organizations be leveraged through Azure Services (Functions) Deployment Center?

I'm attempting to use this guide to auto-configure a Pipeline for Azure Functions, however this documentation suggests:|
We recommend this simple approach if:
You're not connecting from Azure DevOps Server 2019 or earlier versions of TFS
Is there any guidance for consumers that are connecting from Azure DevOps Server 2019 or earlier versions of TFS?

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 26477658-d1ad-a4c9-0d9e-59aeead8a71e
Version Independent ID: 45dfbd24-b9f4-fdf2-48a2-5648220204fe
Content: Connect to Microsoft Azure - Azure Pipelines
Content Source: docs/pipelines/library/connect-to-azure.md
Product: devops
Technology: devops-cicd
GitHub Login: @RoopeshNair
Microsoft Alias: ronai

Any update here?


Imprve Reference Field View Widget

Reference field should use ma-column instead of ma-string-column so the
formatting requested by the programmer is honored.

@fzaninotto ok will do

Superseded by #688


Can't install from pypi

Numerous-files seem to not exist on pypi.

Hi @mrdobalina2k
Thank you for reporting. We will fix this asap.

Hi @mrdobalina2k
The package is now available via pypi as version 0.1.0.
Thank you for your patience.


:bug: Fix verify ci step missing.

Summary
verify steps are missing since this PR: https://github.com/open-cluster-management-io/api/pull/227/files#diff-76ed074a9305c04054cdebb9e9aad2d818052b07091de1f20cad0bbac34ffb52
Add these steps back to the CI process.
Related issue(s)
Fixes #

/assign @qiujian16

/approve
/lgtm


Keyboard key to open a file from the file navigator to the editor ?

Actually when i'm in the navigator and hit enter, it proposes to change the name of the file, it seems there is no way to open file in editor instead of the current file (not as a second panel).
How could I do this ?

Try Cmd+Down


Patch for alt links in Atom feed entry entities

This is a small fix for alt links in Atom feed entries. Previously, the collection name bag was hardcoded. This change makes assumptions about collection names, assumptions which hold, in practice. Unless something else comes up, I think this would be rolled into a patch release (1.0.2) in the near-term.

@ldko @somexpert This is a small one!

:thumbsup:

:+1:


Bug: yarn install causing node-sass errors on lint

When doing a node_modules install with yarn, something seems to be missing. Looks like there is a known issue about having to do npm rebuild node-sass, however, this is not required when installing using npm install.
Steps for Reproducing

install node modules with yarn install
run npm run lint
see error:

fs.js:951
  return binding.readdir(pathModule._makeLong(path), options.encoding);
                 ^

Error: ENOENT: no such file or directory, scandir '/Users/scottnath/development/gitrepos/punchcard-cms/punchcard/node_modules/node-sass/vendor'
    at Error (native)
    at Object.fs.readdirSync (fs.js:951:18)
    at Object.getInstalledBinaries (/Users/scottnath/development/gitrepos/punchcard-cms/punchcard/node_modules/node-sass/lib/extensions.js:120:13)
    at foundBinariesList (/Users/scottnath/development/gitrepos/punchcard-cms/punchcard/node_modules/node-sass/lib/errors.js:20:15)
    at foundBinaries (/Users/scottnath/development/gitrepos/punchcard-cms/punchcard/node_modules/node-sass/lib/errors.js:15:5)
    at Object.module.exports.missingBinary (/Users/scottnath/development/gitrepos/punchcard-cms/punchcard/node_modules/node-sass/lib/errors.js:45:5)
    at module.exports (/Users/scottnath/development/gitrepos/punchcard-cms/punchcard/node_modules/node-sass/lib/binding.js:15:30)
    at Object.<anonymous> (/Users/scottnath/development/gitrepos/punchcard-cms/punchcard/node_modules/node-sass/lib/index.js:14:35)
    at Module._compile (module.js:570:32)
    at Object.Module._extensions..js (module.js:579:10)

Learnings from the yarn community as it's being consumed suggest it's really good for production projects, but not so great for node modules themselves. I'm OK removing it

Will bring up in sprint planning. Do we need a story or is the bug report
good enough?
On Wed, Dec 7, 2016 at 10:13 AM, Sam Richard<EMAIL_ADDRESS>wrote:

Learnings from the yarn community as it's being consumed suggest it's
really good for production projects, but not so great for node modules
themselves. I'm OK removing it
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/punchcard-cms/punchcard/issues/562#issuecomment-265472908,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AANPY6BtnMMsHgzhgQ8MV1qW3ywcb8_jks5rFs0lgaJpZM4K0lvg
.

This bug report's fine

not to pass the buck...but I'm not sure of the extrication involved. Story
por vous?
On Wed, Dec 7, 2016 at 10:37 AM, Sam Richard<EMAIL_ADDRESS>wrote:

This bug report's fine
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/punchcard-cms/punchcard/issues/562#issuecomment-265479923,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AANPY9jYppMccLmWxRPNky84zaguqpF7ks5rFtLOgaJpZM4K0lvg
.


Error in gradient calculation in qGAN using Gradient()

Information

Qiskit Machine Learning version: 0.1.0
Python version: 3.8.8
Operating system: Windows 10

What is the current behavior?
I was trying to apply "Phase shift rule" for gradient calculation in quantum GAN using the tutorial :
https://qiskit.org/documentation/tutorials/machine_learning/04_qgans_for_loading_random_distributions.html.
To do so, I replaced the line :
qgan.set_generator(generator_circuit=g_circuit, generator_init_params=init_params)

by
qgan.set_generator(generator_circuit=g_circuit, generator_init_params=init_params, generator_gradient = Gradient())

with qiskit.aqua.operators.gradients.Gradient.
However, while running
result = qgan.run(quantum_instance)

with  reps = 2 (2 blocks in the quantum generator), the code shows me an error message below :
ValueError                                Traceback (most recent call last)
~\Anaconda3\lib\site-packages\qiskit\aqua\components\neural_networks\quantum_generator.py in loss(self, x, weights)
    382             # pylint: disable=no-member
--> 383             loss = (-1) * np.dot(np.log(x).transpose(), weights)
    384         except Exception:  # pylint: disable=broad-except
<__array_function__ internals> in dot(*args, **kwargs)
ValueError: shapes (4,1) and (6,4) not aligned: 1 (dim 1) != 6 (dim 0)

Please also find the full error message below
.
Steps to reproduce the problem
Please also find the code here.
In the tutorial 04_qgans_for_loading_random_distributions.ipynb,

Import gradient object :

from qiskit.opflow import Gradient

Replace the line  :

qgan.set_generator(generator_circuit=g_circuit, generator_init_params=init_params)

by
qgan.set_generator(generator_circuit=g_circuit, generator_init_params=init_params, generator_gradient = Gradient())`

Replace the line :

var_form = TwoLocal(int(np.sum(num_qubits)), 'ry', 'cz', entanglement=entangler_map, reps=1)

by
var_form = TwoLocal(int(np.sum(num_qubits)), 'ry', 'cz', entanglement=entangler_map, reps=2)

Add two more values for init_params (array of size 6)

Run the quantum GAN.

What is the expected behavior?
By the chain rule, the gradient of the generator is calculated as :
.
(c.f. Appendix B in Supplementary Information: Quantum Generative Adversarial Networks
for Learning and Loading Random Distributions)
As we are summing over , the matrix multiplication performed in
loss_gradients = self.loss(prediction_generated, analytical_gradients).real

(line 411 in quantum_machine_learning.algorithms.distribution_learners.qgan.quantum_generator)
should take the form :

where
,
However,
analytical_gradients = np.array(grad_object.assign_parameters(value_dict).eval())

in
def _convert_to_gradient_function(self, gradient_object, quantum_instance, discriminator)

currently returns:
(line 410 in quantum_machine_learning.algorithms.distribution_learners.qgan.quantum_generator)
,
so the code returns an error for matrix multiplication.
Suggested solutions
I think the analytical gradients should be transposed :
analytical_gradients = np.array(grad_object.assign_parameters(value_dict).eval())

to
analytical_gradients = np.transpose(np.array(grad_object.assign_parameters(value_dict).eval()))

Closed in #77


Composite key and navigation property

Hi, please check this:
  public class ContactType
  {
       public ContactType(String Culture)
       {
            this.Id = Guid.NewGuid();
            this.Culture = Culture;
        }

    public virtual ICollection<Contact> Contact { get; set; }
    public Guid Id { get; set; }

    public string Culture { get; set; }

    public string Name { get; set; }
}

 public class Contact
 {
    public Guid ContactTypeId { get; set; }
    public string ContactTypeCulture { get; set; }
    public virtual ContactType ContactType { get; set; }

    public string Value { get; set; }
}

Data Annotation:
  builder.Entity<ContactType>()
       .Key(l => new { l.Id, l.Culture }); //ContactTypeId and Culture is composite key in ContactType Entity

  builder.Entity<Contact>()
       .Key(l => new { l.ContactTypeId, l.ContactTypeCulture, l.DirectoryId });
  DirectoryId = next entity - here is simplified model...

Mapping is:
One Directory can have many contact
One ContactType can have many contact
Contact is exactly customized join table with composite key in ContactType
Add data to ContactType
        ContactType t1 = new ContactType("en");
        t1.Name = "Phone";
        db.ContactType.Add(t1);
        db.SaveChanges();

        ContactType t2 = new ContactType("cz");
        t2.Name = "Telefon";
        t2.Id = t1.Id
        db.ContactType.Add(t2);
        db.SaveChanges();

Add data to Contact:
        Contact c1 = new Contact();
        c1.Value = "123456789";
        c1.ContactType = t1;
        c1.ContactTypeCulture = "en";
        c1.ContactTypeId = t1.Id;
         db.Contact.Add(c1);
        db.SaveChanges();

Until HERE completed succesfully
But following part of code not working:
        Contact cccc = new Contact();
        cccc.Value = "987 654 321";
        cccc.ContactType = t2;
        cccc.ContactTypeCulture = "cz";
        cccc.ContactTypeId = t2.Id;

        db.Contact.Add(cccc);
        db.SaveChanges();

my cccc show me in debugger cccc.ContactTypeCulture = "EN";  but value was set to "CZ". I cant save cccc to database. Is this bug?
I will store the same ContactTypeId for both Contacts. Different will be only Culture. I will realize translatable selectList, that can be enhanced...
sorry for my poor english...

Sorry, solved by my self


Pause button icon does not display until button is clicked

I'm guessing this has something to do with the fix for #18 @funnymanpatrick

Maybe Rob fixed this, Maybe it's Maybelline.


-bash: nvm: command not found

i use iojs v1.4.3 and want to install nvm. As you can see (below) the installation was successful. But if i execute on terminal nvm i get an error -bash: nvm: command not found. Please tell me what im doing wrong? I also have reopen my terminal.
It create in .bashrc:
export NVM_DIR="/Users/foo/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"  # This loads nvm

=> Downloading nvm from git to '/Users/foo/.nvm'
=> Cloning into '/Users/foo/.nvm'...
remote: Counting objects: 3420, done.
remote: Compressing objects: 100% (3/3), done.
remote: Total 3420 (delta 0), reused 0 (delta 0), pack-reused 3417
Receiving objects: 100% (3420/3420), 681.81 KiB | 456.00 KiB/s, done.
Resolving deltas: 100% (1953/1953), done.
Checking connectivity... done.

=> Source string already in /Users/foo/.bashrc
=> Close and reopen your terminal to start using nvm

I figured out
With curl https://raw.githubusercontent.com/creationix/nvm/v0.23.3/install.sh | bash it doesnt works but with git clone https://github.com/creationix/nvm.git ~/.nvm && cd ~/.nvm && git checkout git describe --abbrev=0 --tags and then source ~/.nvm/nvm.sh it works well :)

I believe this is a duplicate of #559


Error: unexpected "indent" inside normalize base file

This is the error I'm getting:
Potentially unhandled rejection [2] ParseError: /node_modules/nib/lib/nib/normalize/base.styl:5:5
1| // Based in Nicolas Gallagher's git.io/normalize
2| normalize-base()
3|   html // Prevent iOS text size adjust after orientation change.
4|     font-family sans-serif
5|     -ms-text-size-adjust 100%
10:11:28.437 ----------^
6|     -webkit-text-size-adjust 100%
7|   body
8|     margin 0
unexpected "indent"

I just started getting this too moments ago. Hrm...

I get the same error.
I'm on version 1.1.0

Looks to be an issue since Stylus was bumped to 0.52.1. Installing 0.52.0 fixed the issue for me. Going to investigate what has changed...

Looks like this is the commit that breaks nib. I need to investigate further to see if this is something nib should respond to or if it's a bug with Stylus.

Sorry for the comment vomit, but it seems that Stylus commit breaks comments at the end of a line. So it's obviously a Stylus issue and not nib. I've opened an issue.

I was on version 1.1.0 then downgrade it to version 1.0.4, but I've been using version 1.1.0 since june and no problem until today.

@jsainthilaire That's because they just pushed 0.52.1 of Stylus about 3 hours ago. There is a fix coming and you can track progress here.

Thanks a lot @drewloomer!

By the way, that's fixed now in 0.52.2

I've added the following to composer.php (before gulp build task) as a workaround until a patch is available:
npm install<EMAIL_ADDRESS>

They release version 0.52.2, is working now. Thank you all.


How did you prepare the ground true depth  in  dataset?

Thank you very much for sharing your excellent work！
My question is how did you get depth files （*.exr） from point clouds in the Shapenet dataset, can I prepare them when I face other point cloud datasets? Could you please share the method or code? Thank you ！

https://github.com/panmari/stanford-shapenet-renderer


How to modify the definition of executionCtx in Context interface?

I'm using the js module syntax, but the tsc tell me that executionCtx maybe undefined. so how can I resolve this problem?
I know I can use c.executionCtx!.waitUntil, is there has another solutions ?

Is it about this?
https://github.com/honojs/hono/blob/94d94198bcceb300d8b2588cd63a99eadda14807/src/context.ts#L15
I don't have just idea but probably I think it will be resolved to use type instead of interface.
like type Context = EventContext | ModuleContext.
EventContext has event property. ModuleContext has a executionCtx.

Oh, this looks difficult, indeed.
Define as getter method
How about defining it as a getter method and checking it like a type guard?
https://github.com/honojs/hono/compare/master...usualoma:hono:feat-runtime-check-context
Since c.event and c.executionCtx are usually used when the user "knows exactly what he wants to do", "I wrote it, but I can't refer to it at runtime" will not happen, so the DX will hardly be compromised.
To distinguish between different types
This is an incomplete implementation, but if we were to add a type variable to Hono, this would be the direction to go.
https://github.com/honojs/hono/compare/master...usualoma:hono:with-context-types
The type definitions are going to be quite complex and difficult to maintain.
However, for users, there may not be much confusion if ModuleContext is the primary way to write them.

Hi @Code-Hex,  @usualoma
Thank you both! You guys are idea men!
It's going to be hard to use two types such EventContext | ModuleContext 😕
"Define as getter method" pattern that @usualoma said seems to be good 👍
Let's go with "Define as getter method" pattern.
@usualoma  Could you create the PR?


MeasurementDescriptorToViewMap synchronization

Two main commits:
Refactor MeasurementDescriptorToViewMap.putView(...).
Previously, ViewManager.registerView() called
MeasurementDescriptorToViewMap.getView(...) followed by
MeasurementDescriptorToViewMap.putView(...) to insert a view only if it was not
present.  There was no locking, so the view could be created multiple times.
This commit refactors putView so that it covers the full transaction on the
underlying multimap.  It creates an empty MutableView if the view is not present
and inserts it into the multimap.
Use intrinsic locking in MeasurementDescriptorToViewMap.
MeasurementDescriptorToViewMap previously used a SynchronizedMultimap for
synchronization of its Multimap.  However, every method ended up needing to
access the Multimap within a synchronized block anyway, because the Multimap's
values were not synchronized.  It is simpler to just use a HashMultimap and
synchronize on the whole MeasurementDescriptorToViewMap object.

Codecov Report

Merging #278 into master will increase coverage by 0.07%.
The diff coverage is 89.65%.

@@             Coverage Diff              @@
##             master     #278      +/-   ##
============================================
+ Coverage     93.39%   93.47%   +0.07%
  Complexity      431      431
============================================
  Files            76       76
  Lines          1665     1654      -11
  Branches         94       93       -1
============================================
- Hits           1555     1546       -9
+ Misses           84       82       -2
  Partials         26       26

Impacted Files
Coverage Δ
Complexity Δ

.../com/google/instrumentation/stats/MutableView.java
84.61% <ø> (+3.13%)
2 <0> (ø)
:arrow_down:

.../com/google/instrumentation/stats/ViewManager.java
100% <100%> (+2.7%)
6 <0> (-1)
:arrow_down:

...entation/stats/MeasurementDescriptorToViewMap.java
88.09% <88.46%> (-1.38%)
12 <6> (+1)

Continue to review full report at Codecov.

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


Endpoint

GlyphHub/packages/FontReviewTool.package/FRTApplication.class/class/production.st
https://connect.glyphhub.org/

GlyphHub/packages/FontReviewTool.package/FRTHttpBackend.class/class/defaultApiRoolUrl.st


Migration to JavaScript because Luvit is garbage

Lua is awesome but the Luvit framework is not.
Using NodeJS and discord.js now.
Progress:

[x] Base bot
[x] Remove relay
[x] Remove rules command
[x] Commands:

[x] Ping
[x] Info
[x] Minetest
[x] ContendDB
[x] Modbook
[x] Lua API
[x] LMGTFY

[x] Pingsock

Extras:

[x] Auto-fill latest Minetest API versions
[x] Ping MS
[x] minetest.conf.example search

Closed by e58391e.


Question: Sapper Environment Variables for SSR in CloudBuild/CloudRun

Mike, your blog article was really helpful! My sapper app connects to a database and uses some other secrets. I understand that I should use Google Cloud Secrets Manager for most of the secrets, however, for some things I still want environment variables. (I figure, for now using envs is simpler since I'd need to set up IAM and all that for my app to use secrets manager).
My rollup.config.js does something like this:
const processEnv = {
  "process.browser": true,
  "process.env.NODE_ENV": JSON.stringify(mode),
  "process.env.APP_SECRET": JSON.stringify(process.env.APP_SECRET),
  // ... more
};

export default {
  client: {
    input: config.client.input().replace(/\.js$/, ".ts"),
    output: { ...config.client.output(), sourcemap },
    plugins: [
      replace(processEnv), // <---- this

So, these variables would need to exist during the Cloud Build phase, then they get hardcoded into the code which is sent over to Cloud Run. So, using the environment vars in Cloud Run wouldn't work, unless I didn't use the replace() plugin for production builds.. so I suppose that's an option.
Either way, I'm curious how you handle these cases or if you already have some code you could add into this boilerplate? Just like in your guide, my project simply uses a Dockerfile, not a cloudbuild yaml.
Another question too, do you normally run DB migrations from your Dockerfile during Cloud Build as well?

Ok, I did get a simple solution for this - and if you want it might be a good thing to factor into your boilerplate or blog article. Let me know if you think a PR would be good - it doesn't really touch the committed code though.
Here is the Gcloud Doc where I learned this approach.
The solution gives your Codebuild docker file access to a .env file just like you might have locally.
Plus it keeps the app secrets like db password, or other api keys in the Secrets manager.
I simply made a secret in the secret store of my entire .env file. Then, in cloud build, I added this step in my trigger which uses an "inline" configuration. (this was the configuration which was autogenerated for my when I made the trigger).
you add a new step like this:
  - name: gcr.io/cloud-builders/gcloud
    args:
      - '-c'
      - >-
        gcloud secrets versions access latest
        --secret=production-config-secret-dotenv
        --format='get(payload.data)' | tr '_-' '/+' | base64 -d > app/.env
    entrypoint: bash

this code is mostly from "Using Secrets Manager > Item 4"
This basically says, take the secret called production-config-secret-dotenv and paste it into my app/.env file. For most people this would just be .env but for me, it's in an app directory.
Then, when the Dockerfile copies the code into the image, it includes the dotenv file.
Here is an image of the new step in the inline configuration:

Hey Daniel, I'm catching up here 😄.
Your approach with Secrets Manager looks reasonable and definitely better than storing environment variables in Cloud Build as they show up in the UI for anyone to see who has access.
From a security perspective, be careful with the client-side config. For example, APP_SECRET sounds like something you wouldn't want to end up in your client bundle. You may need processClientEnv and processServerEnv objects and use them accordingly in your rollup.config.js file where you have the client and server config for Sapper.

I'm curious how you handle these cases or if you already have some code you could add into this boilerplate?

I don't handle this well at the moment. I turn Cloud Build substitutions into environment variables as seen here: https://github.com/mikenikles/your-analytics/blob/master/services/admin-api/cloudbuild.yaml#L40.
However, your approach is more secure. In my case, the unencrypted values of these env variables show up in the Cloud Build UI.

Do you normally run DB migrations from your Dockerfile during Cloud Build as well?

I don't have an example of that because I run migrations manually at the moment. Automating it also means I need a way to deal with rollbacks, something I consider more effort to automate than dealing with it manually for the time being. I wouldn't run migrations in the Dockerfile though. That to me is a separate task I would add in my continuous delivery pipeline. To me, the Dockerfile's single purpose is to build the Docker image, nothing else.
I'll merge a PR with your code examples, I think that's a great addition.


go get deprecated on versions 1.18.x

Describe the bug
Looks like go get is deprecated in versions 1.18.x which breaks the default packages feature of this plugin.
To Reproduce
Steps to reproduce the behavior:

echo 'golang.org/x/tools/gopls' >>  $HOME/.default-golang-pkgs
asdf install golang 1.18beta2
See error below

Installing golang.org/x/tools/gopls go pkg... go: go.mod file not found in current directory or any parent directory.
	'go get' is no longer supported outside a module.
	To build and install a command, use 'go install' with a version,
	like 'go install example.com/cmd@latest'
	For more information, see https://golang.org/doc/go-get-install-deprecation
	or run 'go help get' or 'go help install'.
FAIL

Expected behavior
gopls to be installed.
Desktop (please complete the following information):

OS: OSX
Browser N/A
Version 12.1

Additional context
asdf v0.7.8-4a3e3d6
Thank you for writing this plugin ❤

Hey @ashleyconnor there's already a PR in to fix this #67, but I was just waiting on the author to validate my change to their original PR before merging. I'll go ahead and merge it and you can let me know if you have any more issues.

Tested and working. Thanks @kennyp and @jm96441n!


Add option focus_to_no

I'm submitting a ...
[ ] bug report
[X] feature request
[ ] question about the decisions made in the repository

What is the current behavior?
The w2confirm give focus to Yes button

What is the expected behavior?
Have an option to give focus to No button

What is the motivation / use case for changing the behavior?
User have the habit to discard message as quick as possible without reading them. For some dangerous action, I whish to have focus to "No" button to make sure that someone that did not read the warning and press enter don't perform the action.
The default behaviour should remain the focus on "Yes"

Other information
I made a pull request for the modification :
https://github.com/vitmalina/w2ui/pull/1654

Since the PR has been merged, this issue can probably be closed.


Information missing from anaconda web UI

Link to package: https://anaconda.org/conda-forge/cudatoolkit
It's missing License, Development, Documentation, and Description that should look like this: https://anaconda.org/nvidia/cudatoolkit
This will cause issues with NVIDIA legal if it's not resolved.

I think that's because @jakirkham  moved the package to test label

It didn't have those fields before.

We can change the license URL, but we should also add that to the recipe as it doesn't appear to be there.
I don't see a way on the Anaconda.org web interface to edit the other fields. A little surprised it doesn't pick these up from the package since it already includes them.

We can change the license URL, but we should also add that to the recipe as it doesn't appear to be there.

Have added PR ( https://github.com/conda-forge/cudatoolkit-feedstock/pull/3 ) on this point. Appears the linter raised a few issues ( https://github.com/conda-forge/cudatoolkit-feedstock/pull/3#issuecomment-708589954 ). Not sure how we want to address these.

Looking at the cudatoolkit package in cf-staging, it appears to actually show all of this metadata. I wonder if by copying the package over, Anaconda.org doesn't fill out these fields?

license_url doesn't appear to be a valid field but maybe I am missing something / it is undocumented?

It is noted in the docs here and also Conda-Build notes it. IIUC this is what Anaconda.org uses to link out from the license field. That said, the documentation is pretty sparse here.

So one idea to get this to populate correctly would be to delete this package from Anaconda.org and manually upload the cudatoolkit file. This should hopefully trigger Anaconda.org to pull in this information from the package. My guess is the copying API we are using with Anaconda.org doesn't do that for some reason. Thoughts on this approach?

Sounds good. Same happened for a recent package https://anaconda.org/conda-forge/redis

I manually edited the description and license URL in the short-term to make sure that matches. The other fields don't appear to be editable from the web UI.
If we are ok with deleting and reuploading the package, I can give that a try after the current meeting I'm in (~45mins).

I am OK with that.  No one should have used it at this point

Ok so I downloaded the package locally. Deleted the package from conda-forge and then reuploaded the same package. As the license_url wasn't in the recent package, I went in and edited this manually. Have also added the broken label to the package per this suggestion ( https://github.com/conda-forge/cudatoolkit-feedstock/pull/3#issuecomment-708596954 ). Here's a screenshot of how things look below (though one can also visit Anaconda.org to see this as well). By eye this seems to look right, but would be helpful if people double check 🙂

Things LGTM now, thanks @jakirkham 😄

Have also added the broken label to the package per this suggestion ( #3 (comment) ).

Seems labeling it broken wasn't quite sufficient for marking it as broken as it still comes up in CI ( https://github.com/conda-forge/ucx-split-feedstock/pull/80#issuecomment-708864031 ). Proposing we go through the admin-requests process ( https://github.com/conda-forge/admin-requests/pull/143 ). That should fix this until we have some time to build this out more fully.

Yes @jakirkham. You have to go through admin-requests because we changed the process a while back. Broken packages are left on main but removed from the repodata. This removal process requires rebuilding the repodata patches. The admin-requests repo does this automatically.

Thanks Matt! That seems to have fixed things 😄

Thanks John for doing this! My impression is that manually uploading is the only way to update/fix the displayed information/metadata on Anaconda.org. Making changes in the recipe does not work unfortunately.

Ofc!
Yeah I suspect because we are using a particular API to copy packages between channels the metadata gets lost. Not sure if this is something we can fix in how we use anaconda-client (or perhaps within anaconda-client) or if it's something about Anaconda.org itself.

We use the client. Anaconda will have to fix it on their end.

I did a bit of digging into the source code yesterday. There may be a way to affect this through the Python API. That seems to be how they extract package metadata and push it to Anaconda.org when just uploading a packaging.

Great! If you have a pr, the code for copies is in the webservices repo.

Didn't get that far. Was just getting a rough idea of what was happening. Likely requires more work.
My guess is it would be a PR to anaconda-client. We can of course dance around how they are doing things, but it seems better to just make sure that things are handled in the tool itself.

Ahhh ok. So it is a fix on anacondas end.

Yeah sorry for being unclear. I don't think we are doing anything wrong.
More noting I don't think it is secret sauce in Anaconda.org. It's something we could make a PR to fix. anaconda-client seems like the right place to do that.

Ok so I downloaded the package locally. Deleted the package from conda-forge and then reuploaded the same package. As the license_url wasn't in the recent package, I went in and edited this manually. Have also added the broken label to the package per this suggestion ( #3 (comment) ). Here's a screenshot of how things look below (though one can also visit Anaconda.org to see this as well). By eye this seems to look right, but would be helpful if people double check 🙂

Had to do this again recently since we needed to delete old packages not complying with the EULA after PR ( https://github.com/conda-forge/cudatoolkit-feedstock/pull/34 ) landed. Looks like the UI is back to rendering correctly. More details in comment ( https://github.com/conda-forge/cudatoolkit-feedstock/pull/34#issuecomment-734049098 ). Also additional context is available in that thread. Here's a screenshot to show this is back to what we expect (though please let me know if anything is missing):

Well it looks like the package copied from cf-staging broke this unfortunately 😞 Unfortunately I don't have more time to look into this this week. We should revisit this next week. Going to reopen to track

Trying one last idea. Deleting all of the cudatoolkit packages (including the ones under test) and reuploading the 9.2 package to start the cudatoolkit package fresh.

Ok that seems to work. Going to wait and see what happens once cf-staging packages get copied over.

I suspect that will wreck it again.

I'm not sure. That is how we had things working initially. However if it doesn't work, I'll probably throw in towel (for today anyway).

Yep you're right. It's back to not rendering correctly 😞

Manually added the bits that I can through the Web UI.
Unfortunately am unable to add the development URL and doc URL. At least the license URL and description are correct.

As long as this feedstock only has maintainers on core, we could allow direct uploads.

We’d have to ask Mike and Leo to remove themselves. This is not a great option.
We could change the webservices to do an upload job which downloads the artifact and pushes directly to the main channel instead of the copy

Yeah I'd prefer not to do that.
We at least have the right bits that pertain to the license (URL and description). The doc and dev URL are not easily fixable through the UI, but these seem less urgent.
The fact that copying does seem to override the metadata even after it is set correctly indicates we may be able to change anaconda-client to do this correctly when copying.
Anyways let's push pause here for now and we can revisit next week. Sound good? 🙂

If it helps I am happy to be removed. Haven't contributed much so far anyway, and I can still contribute even as a non-maintainer.

I don’t think that’s necessary Leo. In fact would prefer to keep you so I can get your feedback on things periodically 😉
Anyways let’s all spend some time with family and relax. I’m confident we will be able to find a good solution once we are fresh next week 🙂

So I have been checking into this. The only thing the anaconda client does when copying a package is call the copy endpoint here: https://api.anaconda.org/docs#!/package/post_copy_package_owner_login_package_name_version_basename
As we tested above, this nukes the information in the web UI even if it is already set.
Thus whatever is happening is happening on the anaconda backend and not in the client code we are calling.
Our options are to

Ask anaconda to fix this
Download the artifact from cf-staging and push it back up to conda-forge
Do a direct upload somehow.

If anaconda does fix this so that a copy doesn't nuke the package info, this PR should make sure to copy the package info before uploading: https://github.com/conda-forge/conda-forge-webservices/pull/413
I'll leave it open for now in draft status.

Closing this issue as it's resolved.

Closing this issue as it's resolved.

Well the dev and doc URLs are still missing. Not sure how important that is to us. Haven't found a good way of fixing them unfortunately 😞

Well the dev and doc URLs are still missing. Not sure how important that is to us. Haven't found a good way of fixing them unfortunately 😞

I think it might be fixed soon! See https://gitter.im/conda-forge/conda-forge.github.io?at=600af4fdcf8b827734494533

I think it might be fixed soon! See https://gitter.im/conda-forge/conda-forge.github.io?at=600af4fdcf8b827734494533

Will reopen, but the main thing I was worried about was losing the license info 😄

Will reopen, but the main thing I was worried about was losing the license info 😄

For sure, the license info is working correctly and can be changed more easily if needed. Just trying to be transparent about the outstanding issues 🙂

For sure, the license info is working correctly and can be changed more easily if needed. Just trying to be transparent about the outstanding issues 🙂

Looks like these were fixed recently! 😄 🎉


Implement SIMD-specific functions

An incomplete list (motivated by a reddit comment)

[x] scatter/gather
[ ] nontemporal load/store (not really SIMD, but maybe. see nontemporal_store)
[ ] lookup tables (possibly related to #11)
[ ] masked load/stores
[x] reductions/horizontal fns, such as horizontal add

i saw the non-temporal stuff in std::arch when i wrote safe_arch but couldn't understand what was going on enough to confidently make a safety claim, so i skipped it.

Temporal hinting lets you indicate loads and stores that should not be cached, because you are only reading once and storing once to that location, so you have no need in the rest of the algorithm to frequently read and update it. Basically, it's a way to indicate "please do not shatter my cache with these particular read/writes, I am using that for the ENTIRE REST of my algorithm."

I do not see nontemporal loads and stores as "SIMD-specific" but I will acknowledge their heightened usage in SIMD. Obviously scatter/gather is!

other load/stores that should be implemented are masked load/stores, strided load/stores (often faster than gather/scatter), and combinations thereof.
There's also vector reductions, e.g. reduce-add for things like dot-product.

Emits a !nontemporal store according to LLVM (see their docs). Probably will never become stable.

I am feeling pretty doubtful about exposing an interface to this in std::simd.

In #45 we found out that nontemporal stores are not really supported in the codegen backends, not LLVM and as far as I'm aware not in cranelift either, and also that there's no plans to expose this as a scalar API yet, so I took it off the list. That still leaves all the other stuff, of course.

How difficult would it be to expose masked loads & stores? Gather/scatter are already supported, while being more complex. Both are backed by LLVM intrinsics.
I tried working around it by using those gather operations, but the only optimization LLVM does on them it seems, is recognizing a broadcast/splat operation:
u8x8::gather_select_unchecked(
    bytestring,
    Mask::splat(true),
    usizex8::from_array([
        0, 0, 0, 0, 0, 0, 0, 0
    ]),
    u8x8::splat(0),
);

This translates to a single broadcast instruction on AVX, but any divergence in the indices causes inefficient emulation, like when the indices are 0 through 7. Even when specifically compiling for a target-cpu that supports AVX-512 masked loads.

I believe it's straightforward, like you said LLVM supports it.  We only need to add an intrinsic to rustc that emits it.

alternatively we could add an optimization to rustc and/or llvm that detects a vector of successive indices/pointers and converts to a masked load/store.

I've submitted the rustc changes here: https://github.com/rust-lang/rust/pull/117953 (so far only masked loads, no stores yet)


Closes #74016

Thanks!

Cherry-picked for 4.0.1.


Modify dockerfile

Use COPY rather than ADD for better caching

ADD works better when fetching a file from URL

Use [] for CMD as it's recommended

I'm also planning to make a PR for updating node to 10.16.2 but it's still on the way

Thank you for your contribution ;)


OLS-680: Moved secrets into separate directories

Description
With OLS-680 we are going to specify just path to secrets, excluding filenames. This PR make sure that tests
are prepared for this change - we no longer should have all secrets stored in one "common" directory as it is
setup different from real scenario.
Please note: the logic to read secrets "intelligently" from directories is not part of this PR (it would be huge)
Actually it is just configuration change.
Type of change

[ ] Refactor
[ ] New feature
[ ] Bug fix
[ ] CVE fix
[ ] Optimization
[ ] Documentation Update
[x] Configuration Update
[ ] Bump-up dependent library
[ ] Bump-up library or tool used for development (does not change the final image)

Related Tickets & Documents

Related Issue #OLS-680
Closes #

/retest

/assign @xrajesh

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

Project coverage is 95.26%. Comparing base (de85e97) to head (9ee4a64).
Report is 58 commits behind head on main.

Additional details and impacted files

@@            Coverage Diff             @@
##             main    #1042      +/-   ##
==========================================
- Coverage   95.34%   95.26%   -0.08%
==========================================
  Files          54       54
  Lines        2211     2262      +51
==========================================
+ Hits         2108     2155      +47
- Misses        103      107       +4

/lgtm

/lgtm

/approve


[Auth] Add message for sign up email confirmation

Feature request
Currently the auth component does not give a message when signing up when confirmation email is enabled.
We should add "Check your email for the confirmation link." as a message

Hello. Is this still required. I can take a look into this. Thanks.
What do you guys say about adding the option on what message to be displayed. In that way the user can pass the text as a translation. <Component signUpMessage="t('success.signup')' /> something like this. If that property doesn't exist, the current it uses the current behavior.

:tada: This issue has been resolved in version 0.28.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

Could make this message show up in a popup modal or even just show up in red? Right now it's really subtle and easy to miss.

that email sent message is not a good UX. I shipped this and a lot of users just didn't see it. ideally expose a callback so we can show a toast or something


Wire diameter unit

What unit does the diameter argument (in initializing Phase2D) assume?
https://github.com/mpewsey/emf/blob/cbbda17c9c365f09e4470ea8836c22cd1b0b7dcf/emf/analysis2d/phase2d.py#L19-L20

What unit does the diameter argument (in initializing Phase2D) assume?
https://github.com/mpewsey/emf/blob/cbbda17c9c365f09e4470ea8836c22cd1b0b7dcf/emf/analysis2d/phase2d.py#L19-L20

The inputs are all in standard SI units (kg, m, s, V, A) since those units all work together without the need for intermediate conversions. So the input diameter should be in meters.

The inputs are all in standard SI units (kg, m, s, V, A) since those units all work together without the need for intermediate conversions. So the input diameter should be in meters.

Thanks! I'm closing this issue now. Great work by the way.


Number in percentage

India is huge and numbers could look big and small from the point where we stand, for example 1 million people for India could be small but for many European countries it's big.
Whether we talk about the testing/tested/vaccinated, everyone is discussing as a cumulative number, instead of let's talk in percentage as well.
Describe the solution you'd like
For Vaccination, let's show much a city/state/town has been vaccinated, fetching number for vaccine given in a state/city could be troublesome but the population can be easily referred using govt sites.
Describe alternatives you've considered
We can begin small..

Show percentage for overall country
Then start to show for States/Big cities.
All cities in each state.

We can do it for tests, cases and vaccination, not necessarily in one go but gradually it will be good.

We are working on this and will soon add it in the same way described by you. Due to some personal issues it has been postponed for a while for implementation.


Take out chain from core.py and _bashcomplete.py

https://github.com/pallets/click/issues/1323

Based on some discussions after this was submitted, we concluded that removing chain is probably not necessary to address the issues with it, so going to close this.


Ideas

Throwing around some ideas in a longer form than in the polars issue.
Premise
Geopandas has been a huge success for making vector geospatial data easy to use. It's the gold standard, but still has some limitations:

Tied to Pandas. Pandas is not the most performant dataframe library; polars can be significanty faster.
Tied to Python: Geopandas can't run where Python can't run. So for example a WASM build of geopandas would need the entire Python interpreter
Tied to Numpy memory: This could change in the future, but for the time being, pandas is tied to numpy, which means that it requires a copy to/from Arrow memory, and historically hasn't had support for null values.
Tied to GEOS. Data needs to be serialized to/from GEOS memory, which involves a copy and serialization to/from.

The ideal future:

Store data in geoparquet with arrow-native geometry encoding, then load data into geoarrow in memory
or memory map arrow data on disk directly
With no copy, run geospatial operations

Overall Architecture
How to extend Polars
Inheritance doesn't exist in Rust, at least not in the way it does in other languages like Python/JS, so we need to consider another way.
External Traits
Probably the best approach here. It looks like it's possible to define traits for external structs, and this is indeed how Serde works. This is probably the first place for exploration.
Pseudocode:
use polars::prelude::{DataFrame};

trait GeoDataFrame {
    fn area(&self) -> Series<f64>;
}

impl GeoDataFrame for DataFrame {
    fn area(&self) -> Series<f64> {
        // Connect to geo's area function
    }
}

Wrapping polars::DataFrame
This doesn't seem very promising as a GeoDataFrame would be different from a DataFrame. Having to pipe polars methods through to a GeoDataFrame feels very against idiomatic Rust.
Storing associated metadata
If we go with the external traits approach, then we need some way to store extra metadata about the dataframe. At least:

CRS of the data
Name of primary geometry column
Geometry type
How the column was stored

So... pretty much exactly what the geoarrow metadata defines. It would be great to align exactly with the geoarrow metadata. But there's still a question of how to actually store this. There is a schema method on the DataFrame struct, but it doesn't look like it allows storing metadata.
This might be a good issue to raise in Polars.
Geometry format
GeoArrow is the obvious contender for an in-memory format here. It would support zero-copy operations, which would allow parallelizing of row-wise geometry operations. I was able to see that a WKB-encoded column loads fine in the polars Python bindings, being exposed as a List[u8]. I haven't checked yet if a List[List[FixedSizeList(2)]] is already supported in Polars.
Geospatial algorithms
The geo crate already has a bunch of great algorithms implemented in pure Rust.
The awesome part here is geozero:

GeoZero defines an API for reading geospatial data formats without an intermediate representation. It defines traits which can be implemented to read and convert to an arbitrary format or render geometries directly.

For WKB storage of geometries, it's already implemented. Meanwhile, we could add support for GeoArrow into geozero in the future, which would presumably be faster than WKB, especially if there's no intermediate representation.
I definitely still have questions about how geozero actually works though. Does it really mean that geo's algorithms can run on geozero input with no transformation? So the input data doesn't get copied into geo's structs?

The idea of using GeoArrow as a standard format seems good to me, as you yourself implement in the exploration branch, you have a native reader in rust/polars, but there is something that raises my doubts, there is a high availability of datasets in other popular formats as geojson, kml, shp that opens the door to perhaps find a solution as Geopandas does, implement a generic read_file() method, which returns a geodataframe df and from this apply the algorithms present in Geo crate.
Or something like that; I would open up the possibilities of use, I know it sounds a bit like geopandas, but it's just one possibility to explore.

You're referring to file formats, not memory formats. File formats can be parsed into a memory format on load.


Move init scripts run to beginning

Why move them up?  If it is run by HeLx then the user's directory should exist, but not when run any other way.

Why move them up? If it is run by HeLx then the user's directory should exist, but not when run any other way.

Because I need the /home/jovyan directory to still exist when my init script is run. My script will copy over the .ssh directory from /home/jovyan to /home/${USER} if the /home/${USER} directory is present, and I can't do that from where the init scripts are currently being run because it's after where you delete /home/jovyan.

This has been changed to use an 'init' script to modify the user's passwd entry.  Can we close this out @Hoid ?


Update / refresh dependencies

This updates dependencies so that we can get of a vulnerability with jackson-databind.
Also had to tweak a test to have it pass.
All tests are passing, and features / navigation through the app is functional for me.

Have you tested the shift left security module after that change?

Have you tested the shift left security module after that change?

Yes. I tested "Continuous Integration" and "Shift Left".