Use storefront in production

I want to use the saleor-storefront in production.
I deployed Saleor on Ubuntu VPS, use Gunicorn and Nginx suscessfully
Then I follow the instruction to install PWA Storefront on the same VPS, set BACKEND_URL variable to http://localhost:8000 as instruction but just blank page.
Thanks so much

Hi,
Could you provide the errors shown in your browser console ?

Hi.
Same thing, but I'm on Arch.
I've had to change the BACKEND_URL to external address (for ex. http://mydomain.com:8000/) for the storefront to stop throwing 404 errors.
Base is deployed through docker / docker-compose.

@pojebunny it says it's building "wait until bundle finished", have tried to wait some time for it to get the build ready in the browser?

Yes. The webpack server doesn't push ANY data until the build is finished. Meaning, the page is loading and the browser doesn't display anything before receiving a confirmation response.
You can see the build time on first screen (loooong green line at the beginning)

Shouldn't this be normal? The npm start command is starting a development server and thus watches for changes and compiles on the go.
If you want to get static files e.g. for production, try npm run build.

I want to run whole dev environment on a dev server (In virtual machine), because that's where I can run the docker image.
Should I separate them like this?:
-Virtual Machine with backend hosted from docker and ports forwarded to host.
-Host machine with webpack dev mode hosted PWA frontend.

The point of docker is to do the job of a virtual machine... well to be isolated from the host machine.
But yes, what you are suggesting should work if properly configured.

Oh. Yeah.
By Host I mean my desktop environment with dev tools.
VM is my testing Server machine and docker (with many docker services running on it)

@NyanKiyoshi
With the PWA frontend launched on localhost Windows machine, the UI loads, but seems to be unable to receive data from the backend.

Arch server: VirtualBox with port 8000 forwarded to Main machine. Saleor default/unmodified image running from docker with some products added through dashboard.
Windows host: set BACKEND_URL: http://<IP_ADDRESS>:8000/ and unmodified saleor-storefront npm install'ed and start'ed.

Aight. Everything works.
THANK YOU VERY MUCH <3

Well, I woke up and that's what I'm greeted by after booting the computer and launching everything like I did yesterday...
@NyanKiyoshi

I case of Production, you should use nginx with your PWA production build ( made with npm run build ).
Also, PWA redirect to / in case of production ( see https://github.com/mirumee/saleor-storefront/blob/2a9d4dad8f96dd5c1f2d98b72cb4a695ebed5082/src/constants.ts#L3 )
So if you need to call a different API URI, you could edit constants.ts for your use case.

On localhost it works well, however I have spent several hours trying to make this work on an external server using heroku. I have not succeeded. Can someone share a step by step procedure to make this project usable in production with heroku?

On localhost it works well, however I have spent several hours trying to make this work on an external server using heroku. I have not succeeded. Can someone share a step by step procedure to make this project usable in production with heroku?

could you leave your chatting tool number?
I want to discuss with someone on server deployment if possible.

On localhost it works well, however I have spent several hours trying to make this work on an external server using heroku. I have not succeeded. Can someone share a step by step procedure to make this project usable in production with heroku?

I am also finding issues deploying storefront to heroku, I keep getting ECONNREFUSED error when I try to push the proyect to heroku.


[SPIKE] Find and analyze alternatives for Docker

Is your spike related to a problem or idea? Please describe.
The latest release of the RHEL 8 / CentOS 8. Red Hat has built its own tools, buildah and podman, which aim to be compatible with existing Docker images and work without relying on a daemon. As well Kubernetes stopped support Docker as container runtime.
Describe the outcome you'd like
Find and analyze alternatives for Docker container engine (containerd, cri-o, any other) and Docker command compatible with k8s and supported by Ubuntu 20.04 and RHEL8
What is the reason or source for the spike
Kubernetes is deprecating native support for Docker and Red Hat is switching default containers to Podman on RHEL 8.x.
Additional context

RHEL 8.x documentation
Kubernetes Changelog 1.20 - deprecation

DoD checklist

[ ] Reader is able to understand the results of spike
[ ] The results of the spike are presented in a table (to show simply what are compared or researched parameters) / not applicable
[ ] Each value / cell in the results table is described more deeply below
[ ] Demo of the spike (automated as much as possible)
[ ] Design doc updated

Besides the comparison for the runtime and management options is there any conclusion to be drawn that can be added or is that up for discussion?
On a side note from the dev perspective, docker will remain the tool of choice, from what I know corporate license is going to be provided for everyone in the org.


Fix typo in ReactInstanceManager.java

small typo in the comment at the top of the ReactInstanceManager class

Exporting of Android changes to github was work in progress last week so had to export your change from the internal fb repo to github manually: https://github.com/facebook/react-native/commit/86ff767268c0d6046a1d4c8af43e058249f89bbf
All your future commits will keep attribution (have you as the author on github), sorry that this one didn't. Keeping your attribution for commits is important to us. This PR was sent very early after the Android release when we were still working on internal tools for syncing Android code from github to the internal fb Android repo and back.


Media picker on macOS

Just before the file importer is shown, there is a spinning wheel. And it takes time to show the importer.

no longer an issue on macOS 15.2


Updated username

Thanks! See my review. ☝
Along with that, please follow the contributing guidelines for commit messages. They are pretty strict and are used so that a beautiful changelog can be generated for a new release.

Along with that, please follow the contributing guidelines for commit messages

@kbrsh which cat i need to use?

@emoticon Actually, don't worry about it. I don't think this needs to go in the changelog. Just be sure to revert my username for Saucelabs.

@kbrsh it's ready =)

Codecov Report

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

@@           Coverage Diff           @@
##           master     #155   +/-   ##
=======================================
  Coverage   96.08%   96.08%
=======================================
  Files           1        1
  Lines         920      920
  Branches      171      171
=======================================
  Hits          884      884
  Misses         36       36

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 a19acff...232d927. Read the comment docs.

Hey! Thanks for the help, but the links were updated already :)


idraw.__getOriginContext2D is not a function

菜鸟一个，下载安装后，点界面顶端的下载图片按钮报错：
react-dom.development.js:22839 Uncaught TypeError: idraw.__getOriginContext2D is not a function
at toDataURL (file.js:38:23)
at iDraw.toDataURL (index.js:42:16)
at export-image.tsx:58:23
at export-image.tsx:63:5
at commitHookEffectListMount (react-dom.development.js:23150:26)
at commitPassiveMountOnFiber (react-dom.development.js:24926:13)
at commitPassiveMountEffects_complete (react-dom.development.js:24891:9)
at commitPassiveMountEffects_begin (react-dom.development.js:24878:7)
at commitPassiveMountEffects (react-dom.development.js:24866:3)
at flushPassiveEffectsImpl (react-dom.development.js:27039:3)

目前已升级到 v0.4.0 版本，不存在该feature及其错误


fix: dependencies 2023-06-19

Contributes to

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

GitHub release
npm package (@latest dist-tag)

Your semantic-release bot :package::rocket:


How can I measure a DOM node is a bad example

https://reactjs.org/docs/hooks-faq.html#how-can-i-measure-a-dom-node
This is a bad example for callback refs. The callback only gets called if:

The <input> element changes
The ref callback changes (never in this example)

It does NOT get called if the dom node is resized. Example:
function MeasureExample() {
  const [width, setWidth] = useState(0)
  const [divWidth, setDivWidth] = useState(200)
  const toggleWidth = () => {
    setDivWidth(w => (w === 100 ? 200 : 100))
  }

  const measuredRef = useCallback((node) => {
    if (node !== null) {
      setWidth(node.getBoundingClientRect().width)
    }
  }, [])

  return (
    <div style={{ maxWidth: `${divWidth}px` }}>

Hello, world

The above header is {Math.round(width)}px wide

      <button onClick={toggleWidth}>Change Width</button>

  )
}

Measuring in real time would need useEffect to run on every render reading the value of a traditional ref. Is there some other example that would make more sense to demonstrate callback refs?

To give a contrasting view, I always did one-offs measurements with useEffect and the example above was an epiphany for me.
But I agree the docs should state explicitly that the callback will only be called on mount/unmount.

I'll amend the example to be clear about its limitations.


EOF using exec:ffmpeg.exe on Win32/64

Hi, tried with 1.93 and 1.85, win32 and win64, input as stream, desktop, file, I always have EOF

I'm desperately try to get screen input, I would like to try the ffmpeg HW devices, is that possible? The problem is that on ADD I visualize them in short way and can't be used
ffmpeg:...#video=h264#hardware=dxva2, I have permission denied

hardware is very dependent on your hardware, os and drivers. I don't know why you may get permission denied error.


Happy path

I would like to continue in this way. Please tell me, if it is a waste of time or you'd do things differently.

Looks like very good work!
Especially the visual presentation by the .drawio helps a lot to get a clear view how things depend on each other.

...taking that as a review.


External Dev Time Directory

In my projects the user interface code is primarily Polymer-based. We have a large collection of components that we want to reuse. Our directory structure looks something like this:
/component_lib
   /bower_components
   /corp_components

/grails-project-1
/grails-project-2

Is there a way for us to configure the asset pipeline plugin in each of the grails projects to point to /component_lib.  During development it would need to resolve against the /component_lib directory, but when the grails projects are WAR'd then, it would need to pull the components that were used by each of the projects into the WARs.

After a discussion with @phidias51, we have a somewhat common use case. We are both using tools from the "wide world of javascript" such as Bower, jspm, Gulp, etc. to do dependency management with web components, him with Polymer and me with Aurelia and Zurb Foundation. We seem to be at an inflection point for the two worlds of build and dependency management and trying to figure out how best to use gradle and gulp/bower and the asset-pipeline.
My approach has been to separate my app into two directories, one managed by the asset-pipeline and one just served out of the src directory. I have my CSS placed into grails-app/assets/bower_components with a one time pull of bower. Then, I have my javascript and html partials placed into into src/main/webapp where I keep a terminal open for running gulp.
To build, I run a gulp build and then run the gradle build to package all the files from src/main/webapp. I use src/main/webapp because grails will detect file changes and reload them as  opposed to src/main/resources/public.
During development I run a gulp watch to detect changes and perform transpilation of my javascript (aurelia) in src/main/webapp.
I do not regularly update my components as I am developing each web component myself as javascript and html partials. They are all in one git repository for my project. However @phidias51 has a shared component library in separate git repositories that are shared in other projects and he has html and javascript that needs to be put into the war. He would like to be able to have dependencies update during war build time.
It seems straightforward to suggest that he would have gradle copy the directories into the war, however, during development time I am not sure how to have asset-pipeline access these files.

We currently use gradle to copy the UI into the grails project for deployment.  But that's a less than optimal solution, because we can't cherry pick the components that we want to include, and we can't make use of the bower dependency declarations.  Here's a typical use case:
Let's suppose that I have an element called my-card which exists in the shared components directory /component_lib/corp_components/my-element/my-card.html. This element depends on Polymer's paper-card found in  /component_lib/bower_components/paper-card/paper-card.html.
Let's suppose that I have a project-specific element that uses my-card. What I want to be able to do is configure the asset pipeline to read the bower files for all of the dependencies in the dependency chain, pick up the right dependencies and put them in my war file whenever I build me war.
Since I want to minimize the numbers of copies of these dependencies that are floating around my hard drive, I want asset pipeline to simply resolve the dependencies to my local /component_lib directory.
This last bit may not be possible, but in any case I want to minimize the number of copies on my drive by whatever means possible.


[Deeplink][Delegation] - Opening Group links using Tachiyomi MangaDex extension is broken in Sy

Steps to reproduce

Find a group on mangadex. Eg: Aumakua scanlating Flying Witch https://mangadex.org/group/332c5876-fc6f-4ddf-8972-7c58472f3eb0
Open the link in Tachiyomi: MangaDex and then choose SY as an option
Now, try opening the link in Tachiyomi: MangaDex but use Main tachiyomi

Expected behavior
Both behave similarly
Actual behavior
There's a difference
Main Tachiyomi uses a special search filter to global search in only MangaDex
Sy doesn't seem to have that and just global searches (pinned) extensions
Crash logs
NA
Tachiyomi version
Preview r481
Android version
Android 12
Device
SM-N770F
Other details
Note that Sy works like Main Tachiyomi when its a deep link which is from another source (Eg: MangaPlus links)
Issue also prevails for any deeplinks other than manga or chapter (i.e. problem can be seen with grp:, usr:, list:)
Issue can also be reproduced in other delegated sources: like NHentai deeplinks in Tachiyomi: NHentai extension
Acknowledgements

[X] This is a TachiyomiSY specific issue that does not happen in Tachiyomi Preview.
[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open or closed issue.
[X] I have written a short but informative title.
[X] If this is an issue with an extension, I should be opening an issue in the extensions repository.
[X] I have tried the troubleshooting guide.
[X] I have updated the app to version 1.8.5.
[X] I have updated all installed extensions.
[X] I will fill out all of the requested information in this form.

Fixed for the next build 👍


Add test class for rest api integration test

Added two Java class files (ServerChallengeTestCase.java, ServerChallengeModel.java)
Modified two pom.xml and added rest-assured maven dependency.
Modified testng.xml file

Will Add New


[v41] Too high CPU usage in some cases if vehicles used by bots.

This issue is difficult to reproduce. It happens only when bot is in State Wandering or Roaming with Enemy==None, and only in some maps...
Also, it seems, CPU usage in this case depends on something related to the size of the area around... In a large area CPU usage increase produced by a single vehicle instance may reach up to 10 times.
Way to reproduce:

Open map MH-EnterToCore-Part3.
Set CreatureFactory0 State to Finished.
Set your player location to Teleporter0.
Spawn bots there as that location.
Spawn several vehicles there at that location (better - stationary of flying vehicles, because other vehicles will fall to damage zone...)
When at least 1 bot begins to use vehicle, CPU usage gets increased at least 10 times.
Then, if to enter console command killall scriptedpawn, issue disappears and CPU usage returns to normal.

Tested v44 just now - still can reproduce this issue the way described above.
Maybe this problem is not in this mod itself?

Still not able reproduce.
Here test map.
MH-EnterToCore-Part3_bug3.zip
I start it as spectator. look into wall (for reduce rendering CPU load), add 1 bot - no Any CPU change. Even when bot jump into manta. I kill all scriptedpawn - no any CPU usage change.

Issue still in place?

In the last release i tested (v48) this issue was still in place.
Will try to test v51 today, then will reply results.
I have inspected the scripts, but can't track down an exact place where this performance loss occurs. I suppose, it calls Collision Hash slow native functions way too often.
If this and some else debugging options (functions execution time stats, etc.) were available, maybe it was not that hard to figure it out.

Here test map. MH-EnterToCore-Part3_bug3.zip

By the way, i noticed some problem (it was also related to my test server config) when the count of bots or players that are about to spawn simultaneously is more than the count of spawn points available out there:
"Critical: MonsterHunt MH-EnterToCore-Part3_bug2.MonsterHunt0 (Function Botpack.TeamGamePlus.FindPlayerStart:0000) Infinite script recursion (250 calls) detected"
Also, depending on server settings function DeathMatchPlus.SpawnBot() can produce script error in line ((bHumansOnly || Level.bHumansOnly) && !NewBot.bIsHuman) if bot is failed to spawn.

Last one not related to XV or this issue. So better report it on OU github instead. Possible as two separate issues.

Issue still in place?

Yes.
Tested v51 now - result is the same as with previous versions.

If understand UTrace logs properly, it shows Bot.AttitudeTo() -> AssessBotAttitude() is being called (for every ScriptedPawn) from WeaponAttachment.FindEnemy() very often (in every Tick event).
Test server i use has modified AssessBotAttitude() function, it calls slow native function TraceActors() to make bot ignore targets located behind the movers.
This explains why CPU load in this case is in correlation with the map size, scripted pawns and bots count.
It seems, i have to add a distance limit, so that to not call TraceActors() for every ScriptedPawn on the map which is not reachable due to distance anyway.
Normally, bots don't iterate an entire PawnList on every tick, but still are able to find the target quickly enough.
This means, issue consists of 2 parts which produce high CPU load if combined together.
I think it would be better to rely on the standard Bot behavior/logic in this case, not override it and not force custom targets. Or at least to provide an ini option that allows to select a desired behavior.
I will fix my AssessBotAttitude() function and then will reply a results...

You must always guard TraceActors and Trace with FastTrace first. It named Fast by reason. So this can cut most huge calculations.

I think it would be better to rely on the standard Bot behavior/logic in this case, not override it and not force custom targets. Or at least to provide an ini option that allows to select a desired behavior.

Not agree. This code appear by reason. This is reason - high range + high fire power of vehicles. Stock sight very limited. bots mostly blind. So they never shoot far away when player does. So this lead to simple use bots as target practice when stay far enough. I able simple win on bloodgulch stay far away and fire from red tank. This enough for suppress any defense and allow bots from my team bring flag.
In general if you alter some stuck functions you need be very careful. Code usually tested with stock implementation and can call some function thousands per seconds. If you introduce here high load calculation it is completely your responsibility ensure it kill everything. Hardly expect low usage of low costs function.

WeaponAttachment has almost equal function - TraceHit(), that is called if condition Bot.AttitudeTo(P) > ATTITUDE_Frenzy returns False. The only significant difference is that AssessBotAttitude() on my side doesn't have 'FastTrace()' guard prior to 'TraceActors()'. I will add 'FastTrace()' then.
Is there a max limit of distance to target for Bot in the vehicle, if yes then what is the value?

Yes. And I already experience issues with it, so add FastTrace here. :)
Vehicle able shoot in distance for near 80k. So this mean it can effectively fire to any place on map.
So no. There no any such limit.

I see v41 didn't have TraceHit() function at all. This explains why this issue was reproduceable with v41 when i tested it with default server installation without mods. It was half a year ago back then, i considered problem was isolated to either XV mod or to standard UC/native part, and then and so far was testing it only with my custom test server setup.
Also, v41 didn't call to Bot.AttitudeTo(P) on PawnList iteration. Then later you have added FastTrace(), and also added Bot.AttitudeTo(P) which follows to my slow version of TraceHit() that didn't use FastTrace() anyway, so test results i was getting didn't change.
PawnList iteration script used in WeaponAttachment.FindEnemy() in v41:
	For( P=Level.PawnList; P!=None; P=P.NextPawn )
	{
		if (P.Health <= 0 || (P.PlayerReplicationInfo != None &&
			(P.PlayerReplicationInfo.bIsSpectator || P.PlayerReplicationInfo.Team == OwnerVehicle.CurrentTeam)))
			continue; // check not spectator and other stuff
//		if (!Bot.LineOfSightTo(P)) continue;
		HL = P.Location;
		if (PitchPart != None)
			HN = PitchPart.Location;
		else
			HN = Location;
		Hit = ViewActor.Trace(HL, HN, HL, HN, true);
		if (Hit != P && (DriverWeapon(P.Weapon) == None || DriverWeapon(P.Weapon).VehicleOwner != Hit))
			continue;
		HL = P.Location - OwnerVehicle.Location;
		// X dot X == VSize(X)*VSize(X)
		Dist = HL dot HL;
		if (Best == None || Dist < BestDist)
		{
			Best = P;
			BestDist = Dist;
		}
	}

I will repeat the test with fixed AssessBotAttitude() today as soon as will be on the PC...

Yes. As I mention it be wrong. v41 implementation is bad. And it be fixed. AttitudeTo not count, used high-cost call and this make high CPU load and force attack allies, like Nali or Cows.
On net play splash damage penetrate movers. Most XV weapons produce it. So it little cheatish, but bot can hit you behind closed mover.

Tested... With fixed AssessBotAttitude() this issue doesn't happen.
In the test case i always used for this issue so far (T/R == 35, bots count == 3, scripted pawns count == 156) this function was called about 34700 times per second, which caused core overload to any CPU i have tested it with (even those with fastest single core performance).
Now, with TraceActors() guarded by FastTrace(), no any significant increase in CPU load takes place, even if AssessBotAttitude() is being called 100000 times per second.
With no XVehicles in this test case, 3 bots call this function only about 25-30 times per second.
Also, significant impact on the test results was produced by the map geometry and the location chosen to place bots with XVehicles in - trace function must check quite a long distance from there (over than 10k units for every scripted pawn) until hit Level.
I have added a distance check (80000 units limit) prior to FastTrace() call, but in this test case it makes no sense because the most distant scripted pawn is located at 48000 units away from the bots.
Custom AssessBotAttitude() implementation i use for tests also takes care of all non-enemy pawns, including known non-enemy Nali and Cow classes.
And this function seems to be the only place where trace checks can prevent bots from taking targets behind the movers.

On net play splash damage penetrate movers. Most XV weapons produce it. So it little cheatish, but bot can hit you behind closed mover.

Even some standard projectiles can do this...
Originally an idea to trace the line to target in AssessBotAttitude() was suggested by Sektor and Higor here.
Now, i think of improved version of it, which randomly allows bot to take the target behind the mover if that target is located close enough to the mover, but it is complicated because need to make sure whether bot uses an appropriate weapon which is able to reach that target behind the mover... Anyway, it is already unrelated to this issue.
I think everything is clear now, no questions left about this issue, so it can be closed now.
Thanks for info about UTrace, it is very powerful tool for debugging, it helped to track down this problem within a few minutes today, so this long-lasting issue is resolved finally. No idea, how more long it would have taken without UTrace, maybe never....


Added fetch_audio_file to Player

On my spotify-based application, I don't want just want to just playback the audio stream, but also to fetch it for playing back later (offline).
In order to do so, I have split the flow of load_track in half:
The part responsible for fetching and decrypting the audio file is now on get_track_file, and is shared with the implementation of fetch_audio_file
The part that skips the first few bytes of the file (Ogg headers?) and creates a decoder continues implemented within load_track.

Interestingly, the code currently works perfectly for Ogg Vorbis files, but not at all for other formats.
OTHER2 is fetched successfully, but appears to be garbage (Maybe it should do decryption differently?)
All other formats panic with AudioKeyError. Has there been any investigation on the decryption of those files?

@paulo-raca the main repo is now located at https://github.com/librespot-org/librespot, you might want to pitch in there if you want to add features.

Ok, thanks


Express v5 blockers

I started writing this as a reply to https://github.com/expressjs/express/issues/4920#issuecomment-1575599117 but the issue was locked just before I finishing typing my comment.
@dougwilson Thanks for your continued work on express. I'm sorry you've had to deal with reports of bogus security vulnerabilities as well as folks who don't know better assuming that you've abandoned the project. I hope it doesn't get you down. ❤
I do have a question re:

reach out and I would be happy to Zoom with you or similar and we can work on the remaining items together, like see what you want to help with or hear what there is and you can let me know what you can do.

Are you open to the idea of enumerating the remaining work to be done in public, rather than in private Zoom calls, e.g. on this issue or another one?
It may seem like asking folks to get on a Zoom call is not a big ask, but time zones and other factors could make that a nontrivial barrier. Moreover, documenting this in a public issue would eliminate the need for repeating yourself over N Zoom calls.
The last update said:

Express 5 is pretty much completed at this point, and we're just finishing up the last code merges in upstream modules in order to bump the dependencies finally in the 5.0 branch.

If this is still the case, perhaps you could provide more details about which modules are currently blocked and link to any relevant PRs/issues that are stalled. Even if you'd still prefer to for folks that want to help to first reach out to you, providing this additional detail could help to make those conversations more fruitful.
Anyway, just wanted to pose the question for you to consider. Once again, thanks for your continued work on express and I hope you are doing well!

Hi @rmacklin sorry about that, I didn't think there would have been any more real replies, and it was quite out of date anyway, so your new issue is probably for the best. I can certainly work on writing it down. I just suggested Zoom would be easier because it is fast and a conversation. I will need to take some time to gather everything, and will of course no longer be working on Express.js code while I do that. It seems like that is what folks want to see, however, so I think that working on documenting everything out is a higher priority than working on the code at this point. Please let me know if I'm mistaken. I have never been great about documenting these things down in writing, and it is a huge weakness of mine; I am more of a code writer, lol. So please forgive me. I would love it if someone who has that as their strong suit would join to help 'fish' it out of me, lol.

Hey I go through your message and would love to join you people in person to work with you and learn from you so I eagerly waiting to hear from you people.

HI @dougwilson - I DM'd you on LinkedIn to see if I could be of any help with this.

Hi, @dougwilson! I'm also willing to help, documenting or anything else. Is there a prefered way/channel to talk to you about this?

Serious questions, if 5.0 is basically finished, why is it still in Beta?  Maybe time to bump it to RC? I have so much on my plate, I don't have time to test a beta.  But more than willing to test an RC version.  I just want to know if the interface is set.  I know sometimes you have to slide in an interface change, but it would be nice to know that you "think" the interface is stable.

Yes, that is the next step, to make it rc. Unless there are comtribs to add anything more, I plan to just run the train to get it out. There are a lot of changes between 4 and 5 especially with route path matching I hoped bugs would get flushed out before marked rc was all.

HI @dougwilson - I DM'd you on LinkedIn to see if I could be of any help with this.

Sorry I don't really used LinkedIn, but I looked in there and don't see any mesaages on my account. Not sure if it was sent to the wrong account or I don't know where to look, feel free to email me.

Yes, that is the next step, to make it rc. Unless there are comtribs to add anything more, I plan to just run the train to get it out. There are a lot of changes between 4 and 5 especially with route path matching I hoped bugs would get flushed out before marked rc was all.

I am an old fart, but back in the day, beta was for working out all the breaking changes and making it work reasonably well with no crashes.  And there will be a 5.1, so if you like where the product is at, RC it. And thanks for all your hard work!!!

Is there an eta on when the RC will be released?

It is difficult to make promises for timelines as this is just voluntary work. I am triaging some security reports currently which take the highest priority so that's ultimately the most I can promise in time frame. If these pan in to actual security issues I would say that whatever the next 5 release is is going to be RC.

@dougwilson would like to help if needed

I tried to add error-handling middleware to a web application recently, found out that it doesn't work with async request handlers, and fell down this rabbit hole.
Express 5.0's release date has been continuously pushed back since 2015; it seems like people have been told that 5.0's release is just around the corner for the last 8-9 years.
Are there any specific tasks - code, documentation, triaging, etc. - that others can help out with in order to get 5.0 out the door? I understand that you have no specific obligations since this is volunteer work, but it seems like many others are willing to help out with this if they can get an up-to-date roadmap. I'm not sure when the 5.0 milestone or #2237 were last updated, or to what extent they accurately reflect the work left to do.
If it's lack of usage that's blocking the release, you're going to be waiting forever--very few people want to use beta software in production, and it becomes a catch-22 of not wanting to release until more people have used 5.0, but people not wanting to use 5.0 until it's a stable release.
If there's any info on what people can do to help (e.g. what documentation needs to be written, what bugs need to be fixed, what features need to be implemented), I think it'd go a long way towards helping people both understand and help out with 5.0.

Sorry about that. I am happy to use my time to write those things down instead of do them if you like. I am admittedly not the best at writing it down, and just typing this from my phone while at work right now, and planned to work on the cookie changes for a 4.x release people need for some Chrome change, so probably a little lower on my list. I figured once I publish that 4 release, I would merge it into the 5 branch and just publish that as 5.0 in the end. Not sure if that helps at all.

If the interface changes are complete and you aren't "planning" on any other breaking changes, please RC it.  More people will start using it and reporting bugs.  RC is for fixing the little stuff.  You are leaving the code in a catch-22.  Some places just don't mess with beta software but more than happy to use RC software to get the bugs worked out before they put it into production.

I don't personally see any issues with the new routing, and the changes have been in the migration guide since last February and I don't know of any way to gather any more feedback.
One issue I see with the current docs is that the guides aren't versioned, and it looks like they're still written for 4.x. I could try to either move the guides into 4x/5x sections like the rest of the docs, or just create a 5x branch which replaces the guides in-place. Assuming the 5.x migration guide is still up-to-date, I could also try porting some of the guides over.

Sure, I can make a RC instead of the final if that is what you want. I just want to do whatever people want, and if you want me to release the above as a RC first and then wait more for testing, I can definitely do that 👍

Yea, I think there is still more ways to make the website better, because you are correct, the guides are not versioned in any way, and ideally for 5 they would be using async probably a lot more and whatever else is relevant to 5.

Doug, I'd like to add to the many thanks for maintaining this project.

Sure, I can make a RC instead of the final if that is what you want. I just want to do whatever people want, and if you want me to release the above as a RC first and then wait more for testing, I can definitely do that 👍

With this many years of baking, I'd suggest releasing 5.0 final. That way people can start using this, and submitting PRs if they find anything. Thanks!

Yea, definitely, we can always accept bugs and features, just not breaking changes of course as much as possible. And of course just any change in behavior in 5 compared to 4 is not a bug :) just putting that out there as that is what went on with the 3 to 4 era, people would call changes between the two bugs and wanted to revert or change in some additional breaking way. I don't think we should have any ones like that this time; most of the routing changes are bc 5 now follows the URLPattern spec I would think.

I've been using express version 5, trying to put it through its paces. looks good so far. Ready to merge it and release it?

Maybe an Express 5 Christmas Present? 😄

I just wanted to take the current state of Express 5 for a test drive, but realized there aren't any typings on DT yet, is that correct? That's definitely (haha!) something which should be taken care of before Express 5 gets a final release. Or am I missing something?

@soulchild Express types are currently maintained in https://github.com/DefinitelyTyped/DefinitelyTyped and not part of the express repository. Once express 5 is released, we can make a PR to update @types/express. We can also add native types as 5.1 or similar, since it's not a breaking change, but IMO it's important we release express 5.0 as soon as possible so that dependent libraries and types can be updated by other maintainers.

I concur. Software is never really done. It's alive.

@dougwilson I'm looking forward to seeing Express 5 released <3

I could not agree more https://github.com/expressjs/express/issues/5205#issuecomment-1841883130
I would also vote for making it final as is. Better to start moving forward with all the improvements that are already developed and cut a release version. Any other additional requests for changes and features can then go into v6.

I could not agree more #5205 (comment)
I would also vote for making it final as is. Better to start moving forward with all the improvements that are already developed and cut a release version. Any other additional requests for changes and features can then go into v6.

the latest v5 was release from 2022, and now it's 2024.

I really really wish we will get Express v5 in 2024.

Hey @melroy89 (and others in this thread), if you are interested in participating we have been working on getting the project back on track. Check out the initial plan here and our top priorities we put on the TC agenda.

Thanks, I will join tomorrow.

Plan
Express 5.0

Release ASAP
we should release immediately
wesleytodd @ Jan 29

so, when Express 5 (not another beta) is going to be released?
I read the agenda but could not find any real blockers there. Or am I missing something critical, @wesleytodd?

It might be an unpopular statement. But I migrated to Fastify now. Which has support for async. Better error handling. Plugin system. And generally must faster throughput.

so, when Express 5 (not another beta) is going to be released?
I read the agenda but could not find any real blockers there. Or am I missing something critical, @wesleytodd?

Hey @RobinTail, we have a new issue here tracking the last push: https://github.com/expressjs/discussions/issues/233
We have not set a date, but we are finally organized around this so I think we should be more comfortable setting one pretty soon. I will close this issue in favor of that one.

It might be an unpopular statement. But I migrated to Fastify now.

Hey @melroy89, not an unpopular statement at all and also my current recommendation to app developers. That said, it is not magic. Migrations take work and there are tradeoffs with any decision like this, so while there are great things happening in Fastfy (especially the awesome maintainers) I don't think those tradeoffs will be a great fit for everyone. So now that we have done the work to setup a more healthy contribution story, we are really hoping to get all of those things (minus the plugins) in Express over the next year.


Handle malformed handle IDs

Description

In https://github.com/projectcalico/cni-plugin/issues/821 we introduced
a bug that caused some handles to be written to the datastore using the
wrong format. Namely, k8s-pod-network.<id>\r\neth0.
This resulted in an inability to properly release these handles, because
the IPAM handle name doesn't match the name for the handle in the IPAM
block.
This PR introduces santization logic which is intended to remove the
bugged suffix from handles before release, so that we properly match.
Todos

[ ] Tests
[ ] Documentation
[ ] Release note

Release Note

None required

@fasaxc this seems to fix the test I added here: https://github.com/projectcalico/kube-controllers/pull/557
Which is broken on without this fix.


Unable to set FYNE_SCALE during build

Hi!
Setting FYNE_SCALE is not working. The build target is Linux/ARM.
I'm building with:
fyne-cross linux -arch=arm --env FYNE_SCALE=2.0
Any ideas why this is happening?
Thanks!

FYNE_SCALE should be set on the host where the program is running not at build time.
Example: FYNE_SCALE=2.0 <your_binary>

Working perfectly fine now, thank you!


Fix rustdocs in blockdata

Following up on the comment in #2646 the rustdocs formatting was fixed in blockdata.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

0 of 0   changed or added relevant lines in 0 files are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage remained the same at 83.203%

Files with Coverage Reduction
New Missed Lines
%

bitcoin/src/blockdata/witness.rs
1
89.7%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
19645

Relevant Lines:
23611

💛  - Coveralls

The docs in this module seem to still need some more love but this is a step forward anyways, thanks man.


Get rid of thread user

Public discussion https://groups.google.com/forum/#!topic/django-cms-developers/T9OtsDl8qcQ
Related tickets:
https://github.com/divio/django-cms/issues/5328
https://github.com/divio/django-cms/issues/3532
https://github.com/divio/django-cms/issues/3863

Any update on this? Or there any quick fix so I can get on with unit testing?

No update?


Failed to forward request to p2p node

Hello, currently I'm facing this kind of error, when I want to send a request with 'ledger_index': 'current'
The error which I get while running Node.js app:
RippledError: Failed to forward request to p2p node
  ...
  data: {
    error: 'failedToForward',
    error_code: 90,
    error_message: 'Failed to forward request to p2p node',
    status: 'error',
    type: 'response',
    id: 0,
    request: {
      command: 'tx',
      transaction: '2A6FE7C3E29CBECC299C7739402376863F5A91D2691855096C2A589ED19C4BE1',
      ledger_index: 'current',
      api_version: 1,
      id: 0
    },
    warnings: [ [Object] ]
  }
}

Currently used Clio version: 1.0.4.libxrpl.upgrade and my config file looks like this:
{
    "database":
    {
        "type":"cassandra",
        "cassandra":
        {
            "contact_points":"<IP_ADDRESS>",
            "port":9042,
            "keyspace":"clio",
            "replication_factor":1,
            "table_prefix":"",
            "max_requests_outstanding":25000,
            "threads":8
        }
    },
    "etl_sources":
    [
        {
            "ip":"<IP_ADDRESS>",
            "ws_port":"6005",
            "grpc_port":"50051"
        }
    ],
    "dos_guard":
    {
        "whitelist":["<IP_ADDRESS>"]
    },
    "server":{
        "ip":"<IP_ADDRESS>",
        "port":51233,
        "max_queue_size":500
    },
    "log_channels": [
        {
            "channel": "Backend",
            "log_level": "fatal"
        },
        {
            "channel": "WebServer",
            "log_level": "info"
        },
        {
            "channel": "Subscriptions",
            "log_level": "info"
        },
        {
            "channel": "RPC",
            "log_level": "error"
        },
        {
           "channel": "ETL",
           "log_level": "debug"
        },
        {
            "channel": "Performance",
            "log_level": "trace"
        }
    ],
    "log_level":"debug",
    "log_to_console": true,
    "log_directory":"/opt/clio/etc/clio_log",
    "log_rotation_size": 2048,
    "log_directory_max_size": 10200,
    "log_rotation_hour_interval": 12,
    "extractor_threads":8,
    "read_only":false,
    "api_version": {
        "min": 1, // Minimum API version supported (could be 1 or 2)
        "max": 2, // Maximum API version supported (could be 1 or 2, but >= min)
        "default": 1 // Clio behaves the same as rippled by default
    }
}

P.s ETL source is working properly, as Clio fetches and stores new ledgers into DB. Also, when I switch to 'ledger_index': 'validated' everything works fine.
Any ideas why it is unable to forward this request ?

Hi @PaulMoney, thanks for reporting this.
I have tried your request in the Websocket Tool and it worked fine:

Probably the issue is caused by the outdated version of Clio. Please consider upgrading Clio (don't forget that moving from version 1.0.4 to 2.x.x requires database migration).

@kuznetsss Hi, the problem was not related to the version of the Clio server but to the port_ws_public protocol. In the etl source, I had specified only wss and not ws. Therefore, I added ws to that stanza, and now Clio sends requests to Rippled without any issues.

Hi @PaulMoney, thanks for sharing! It will be useful if someone else gets the same issue.
Unfortunately SSL doesn't work in ETL sources even in the latest release 2.1.0. The good news is I have already opened a PR #1171 fixing it so SSL should be working fine in the next release 2.2.0.


Test _wrapped value using rawget

The current check against _wrapped breaks if the table provided has a metatable which returns anything other than nil or false for unset keys. Using rawget mitigates against this.
Compare before and after using the following:
_.keys(setmetatable({a='test'},{
  __index=function(t,k)
    return ''
  end
}))

Thanks or that valuable input, @personalnadir. It has been merged.

Thanks, it's a great library. Happy to have been able to contribute a little

It was not that little to me.
Thanks again for the king words.


Building features should collapse amenity, shop, tourism into kind property

To be consistent with the rest of the tile queries (landuse, pois, etc), we should not export raw OSM attributes for amenity, shop, and tourism. Instead those should be coalesced into a single kind property that references the expanded list of keys from the landuse and poi queries.

As discussed in a comment in https://github.com/mapzen/vector-datasource/pull/246/files (since removed?), the building kind coalesce does occur already in the in the buildings layer config using a TileStache transform, so this issue should be closed as Behaves Correctly.
This isn't obvious in the SQL query code, but oh well. Most buildings don't have a value other than building=yes set, and don't have additional amenity, shop, or tourism tags set so we rarely see a kind=* on a building feature today in tiles (but they do show up sometimes).


Kill zombies

I defined zombies as started jobs with a last_heartbeat that is older than max_missing_heartbeats * heartbeat_time_interval_seconds
Then I added kill_zombies to the worker executor. It runs every kill_zombies_time_interval_seconds seconds and set the zombie jobs status to ERROR.
Given that heartbeats happen every 60s, I defined:

max_missing_heartbeats = 5
kill_zombies_time_interval_seconds = 10min

Implementations details
To keep full control on the time interval for every action the executor runs, I switched to asyncio
close https://github.com/huggingface/datasets-server/issues/741

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.

Codecov Report
Base: 90.34% // Head: 91.70% // Increases project coverage by +1.36% :tada:

Coverage data is based on head (c0a47b0) compared to base (3a27146).
Patch coverage: 93.82% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #826      +/-   ##
==========================================
+ Coverage   90.34%   91.70%   +1.36%
==========================================
  Files         111       40      -71
  Lines        5894     2931    -2963
==========================================
- Hits         5325     2688    -2637
+ Misses        569      243     -326

Flag
Coverage Δ

jobs_mongodb_migration
?

libs_libcommon
?

services_admin
?

services_api
?

services_worker
91.70% <93.82%> (+0.05%)
:arrow_up:

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

Impacted Files
Coverage Δ

services/worker/tests/test_executor.py
92.30% <91.66%> (+0.13%)
:arrow_up:

services/worker/src/worker/main.py
83.51% <96.42%> (+3.80%)
:arrow_up:

services/worker/src/worker/config.py
100.00% <100.00%> (ø)

services/worker/tests/conftest.py
98.73% <100.00%> (+0.01%)
:arrow_up:

services/worker/src/worker/job_runner_factory.py
89.28% <0.00%> (ø)

libs/libcommon/src/libcommon/simple_cache.py

services/api/src/api/app.py

services/api/tests/test_authentication.py

services/admin/src/admin/prometheus.py

...ngodb_migration/src/mongodb_migration/migration.py

... and 70 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.

Yeah! Dead zombies.
Some comments, that I can work on in a new PR.


Xero integration

Hi,
We have a CRM software at our organization and we intend to connect it with Xero where our invoices and payments are connected and data is transferred from Software to Xero. We seek your guidance on API and coding to get it done. We are using PHP version 5.6.40.

Hi, We have a CRM software at our organisation and we intend to connect it with Xero where our invoices and payments are connected and data is transferred from Software to Xero. We seek your guidance on API and coding to get it done. We are using PHP version 5.6.40.

Hello Arifuss, I am a developer based in India and have recently implemented this API integration for a UK based client integrating Xero with their Wordpress website and third party Software.  Kindly drop me a mail on<EMAIL_ADDRESS>in case you are interested.
Thanks


Options not being applied  (filenamePfx and root)

Hello, great work. on grape...really loving it.
I have a problem where some options in the config are not being applied...they are filenamePfx, root * ( it uses the default zip file prefix and the folder structure remains as the default).  Here is a snippet of the options I am using.
{
            filenamePfx: 'some_prefix',
            filename: null,
            root: {
               'style.css': ed => ed.getCss(),
                'index.html': ed =>
                    `<!doctype html>
            <html lang="en">
              <head>
                <meta charset="utf-8">
                <link rel="stylesheet" href="./style.css">
              </head>
              <body>${ed.getHtml()}</body>
            <html>`
            }
        }

I have played with the options a bit and can confirm that addExportBtn and btnLabel are being applied.

For anyone that faces this issue in the future (not likely)..I had v0.15 in my project and was viewing documentation for v1.0.7 face palm.  Update to the right version and you should get results you expect.

For anyone that faces this issue in the future (not likely)..I had v0.15 in my project and was viewing documentation for v1.0.7 face palm.  Update to the right version and you should get results you expect.


Missing countries on the map

Hi, I have seen some countries are missing like Spain, Portugal, Turkey, Bulgaria, Romania and cities like Bayonne and Lacq and Corsica and Sardinia.

Hi, I have seen some countries are missing like Spain, Portugal, Turkey, Bulgaria, Romania and cities like Bayonne and Lacq and Corsica and Sardinia.

This main repository has so far been abandoned by its author. I can offer to get an up-to-date version with the latest update of all DLC maps in this repository.

It is indeed safe to say that I have been doing a poor job at maintaining this project.  Given that the telemetry server itself is no longer being maintained (to my knowledge), the fact that I don't play ETS2/ATS that much anymore, and me having other priorities at the moment, the motivation for me to work on this is fairly slim.
If there's a better backend to use for this skin (such as JAGFx's solution or something like SIM Dashboard, I'd be up for porting over the skin to one of those solutions, as I know that I definitely do not have the time to maintain both this and the telemetry server itself.

It is indeed safe to say that I have been doing a poor job at maintaining this project. Given that the telemetry server itself is no longer being maintained (to my knowledge), the fact that I don't play ETS2/ATS that much anymore, and me having other priorities at the moment, the motivation for me to work on this is fairly slim.
If there's a better backend to use for this skin (such as JAGFx's solution or something like SIM Dashboard), I'd be up for porting over the skin to one of those solutions, as I know that I definitely do not have the time to maintain both this and the telemetry server itself.

Anyway, despite the fact that I have not played ets2/ets for quite a long time, I will still try to support this project for some time. I think it can be very useful for fans of these games. Thank you for your contribution and that of other contributors.


Adds app only token check to planner commands. Closes #3265

Adds app only token check to planner commands. Closes #3265

This issue is not ready yet. Just wanted to check if this is the right approach. Can someone check this?

Just had a look: very nice. Nothing to add 🚀

Thank you for the quick turnaround. Merged it manually.


use raw pointer to uint8_t memory instead of custom "portable" string…

Related to https://github.com/flutter-webrtc/flutter-webrtc/issues/908 the current implementation does not handle binary data correctly if it contains zero or "null" bytes as the string class that is used in the interface doesn't care for this type of data and shouldn't care for that.
I replaced the interface with a raw pointer instead of e.g. a std::vector<uint8_t> to avoid dll boundary issues.

LGTM


Add support for Flatpak

Issue: #699

Requirements

Filling out the template is required. Any pull request that does not include enough information to be reviewed in a timely manner may be closed at the maintainers' discretion.

[X]  issue was opened to discuss proposed changes before starting implementation. It is important do discuss changes before implementing them (Why should we add it? How should it work? How should it look? Where will it be? ...).
[X]  during development, node version specified in package.json was used (ie using nvm).
[X]  package versions and package-lock.json were not changed (npm install --no-save).
[X]  app version number was not changed.
[X]  all new code has tests to ensure against regressions.
[X] npm run lint reports no offenses.
[X] npm run test is error-free.
[X]  README and CHANGELOG were updated accordingly.
[X]  after PR is approved, all commits in it are squashed

Description of the Change

This PR adds the necessary changes to support distribution as a Flatpak on Flathub and it provides a development Flatpak manifest in this repository for building from the latest commit on trunk.
Flatpak's require a desktop file, so one has been added to repository named net.hovancik.Stretchly.desktop.
The development version of the Flatpak manifest, which is required to build the Flatpak, includes a .Devel suffix after the app-id and is named net.hovancik.Stretchly.Devel.yaml.
For the application to be distributed on Flathub, an AppStream metadata file has been created, named net.hovancik.Stretchly.metainfo.xml.
It's important that with each new release, the releases section in the AppStream metadata file is updated with at least a version and date of the release.
A description of the release is also helpful since users will be able to see this information when installing, browsing, or updating the app.
In order to be published on Flathub, a PR should be made by @hovancik to flathub/flathub containing a release version of the Flatpak manifest.
I have a branch here with the release manifest which you can use for this to make it as simple as possible.
Verification Process

I've documented the process for creating the development version of the Flatpak in the build-flatpak.md.
To test the current changes, you need to change the Git branch in the manifest to flatpak instead of trunk. Once this is merged, the manifest will pull from the latest commit on trunk` as it should.
I've initially verified that I can build the Flatpak and run it and that the settings menu is accessible / generally usable.
It's important to verify the desktop file and AppStream metdata file are valid.
These can be validated as follows:
desktop-file-validate net.hovancik.Stretchly.desktop
flatpak run org.freedesktop.appstream-glib validate net.hovancik.Stretchly.metainfo.xml

I've added a GitHub CI workflow that can be used to verify these files, if desired.
Testing in an Ubuntu 20.04 VM, I've been able to get the app indicator to show up as a ... but the image does not show up yet.
Other information
I've put most of the files in the top-level, but these can be moved as seen fit.

Background colors are now working correctly in the Flatpak! :smile:

@hovancik I've gone ahead and refactored this PR to add everything necessary for submitting a Flathub repository for Stretchly. The metainfo and .desktop files can be kept here or stored in the Flathub repository. Either works, so that's up to you. The metainfo will need to be updated with release notes for each release. I have an initial branch prepared that can be submitted on Flathub to add the Stretchly repository when ready. The branch is here.

Ok, so what are the steps, then?

I'd recommend merging in this branch and cutting a new release as the first step.
After that, I can update my Flathub branch to point the latest release of Stretchly instead of this branch.
Once that is done, you should fork my net.hovancik.Stretchly branch and submit it as a PR to the Flathub repository.
I'll help out with the review process.

Gotcha, I will try adding at least some bugfix or new feature and then merge this as well, so I don't have empty release.

Gotcha, I will try adding at least some bugfix or new feature and then merge this as well, so I don't have empty release.

You'll just need to remember to update the net.hovancik.Stretchly.metainfo.xml file with the release details when you cut the release.

@jwillikers I've created new release

@hovancik Awesome! I've updated my Flathub fork for your new release of Stretchly! I see you forked my fork, so just pull in my latest commit and then you should be good-to-go to submit A pull-request to flathub/flathub. 🥳🥳

I can't do that :(

@hovancik Sorry, try merging with the base branch on the left side set to new-pr.

Thanks, https://github.com/flathub/flathub/pull/3529 :)


The best way of tweaking constraints in an imported model

I would like to be able to do something like:
from aircraft.wing import Wing

wi = Wing.standalone737()
# change a constraint (e.g. remove a variable from the constraint)
wi.localsolve()

What is the best way of doing this?

depends on what exactly you're doing! For your example:
option 1: wi.subinplace(x, 0)
option 2: wi[0].left = wi[0].left - x

To complicate things a little bit, when I tried option 1, it make a signomial constraint into a posynomial constraint (not by accident), so when I solve I get the following:
/Users/philippekirschen/Documents/MIT/Research/GPkit/gpkit/gpkit/nomials/nomial_math.pyc in mono_approximation(self, x0)
    420     def mono_approximation(self, x0):
    421         raise TypeError("Monomial approximation of %s is unnecessary - "
--> 422                         "it's already a Monomial." % str(self))
    423
    424

TypeError: Monomial approximation of 39.5*AR**2*C_{L_{aw}}**-2 is unnecessary - it's already a Monomial.

And if I understand correctly, option 2 doesn't work when I only have varkeys at my disposal

hmm, the SignomialInequality should be able to handle that...
wi[0].left = wi[0].left - wi["x"] should work fine

from gpkit.models.gpkitmodels.aircraft.wing import Wing
wi = Wing.standalone737()
wi.subinplace(wimod['M'], 0)
wi.localsolve()

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-13-6eb6a7eb5069> in <module>()
----> 1 wi.localsolve()

/Users/philippekirschen/Documents/MIT/Research/GPkit/gpkit/gpkit/constraints/prog_factories.pyc in solvefn(self, solver, verbosity, skipsweepfailures, *args, **kwargs)
     78         else:
     79             self.program, solvefn = genfunction(self, verbosity-1)
---> 80             result = solvefn(solver, verbosity-1, *args, **kwargs)
     81             solution.append(result)
     82         solution.program = self.program

/Users/philippekirschen/Documents/MIT/Research/GPkit/gpkit/gpkit/constraints/signomial_program.pyc in localsolve(self, solver, verbosity, x0, rel_tol, iteration_limit, **kwargs)
    103     appear to be converging, you may wish to increase the iteration limit by
    104     calling .localsolve(..., iteration_limit=NEWLIMIT).""" % len(self.gps))
--> 105             gp = self.gp(x0, verbosity=verbosity-1)
    106             self.gps.append(gp)  # NOTE: SIDE EFFECTS
    107             try:

/Users/philippekirschen/Documents/MIT/Research/GPkit/gpkit/gpkit/constraints/signomial_program.pyc in gp(self, x0, verbosity)
    133     def gp(self, x0=None, verbosity=1):
    134         """Get a GP approximation of this SP at x0"""
--> 135         gpconstr = self.as_gpconstr(x0)
    136         return GeometricProgram(self.cost, gpconstr,
    137                                 self.substitutions, verbosity=verbosity)

/Users/philippekirschen/Documents/MIT/Research/GPkit/gpkit/gpkit/constraints/set.pyc in as_gpconstr(self, x0)
    181
    182         When x0 is none, may return a default guess."""
--> 183         gpconstrs = [constr.as_gpconstr(x0) for constr in self]
    184         return ConstraintSet(gpconstrs,
    185                              self.substitutions, recursesubs=False)

/Users/philippekirschen/Documents/MIT/Research/GPkit/gpkit/gpkit/constraints/set.pyc in as_gpconstr(self, x0)
    181
    182         When x0 is none, may return a default guess."""
--> 183         gpconstrs = [constr.as_gpconstr(x0) for constr in self]
    184         return ConstraintSet(gpconstrs,
    185                              self.substitutions, recursesubs=False)

/Users/philippekirschen/Documents/MIT/Research/GPkit/gpkit/gpkit/constraints/set.pyc in as_gpconstr(self, x0)
    181
    182         When x0 is none, may return a default guess."""
--> 183         gpconstrs = [constr.as_gpconstr(x0) for constr in self]
    184         return ConstraintSet(gpconstrs,
    185                              self.substitutions, recursesubs=False)

/Users/philippekirschen/Documents/MIT/Research/GPkit/gpkit/gpkit/constraints/set.pyc in as_gpconstr(self, x0)
    181
    182         When x0 is none, may return a default guess."""
--> 183         gpconstrs = [constr.as_gpconstr(x0) for constr in self]
    184         return ConstraintSet(gpconstrs,
    185                              self.substitutions, recursesubs=False)

/Users/philippekirschen/Documents/MIT/Research/GPkit/gpkit/gpkit/constraints/set.pyc in as_gpconstr(self, x0)
    181
    182         When x0 is none, may return a default guess."""
--> 183         gpconstrs = [constr.as_gpconstr(x0) for constr in self]
    184         return ConstraintSet(gpconstrs,
    185                              self.substitutions, recursesubs=False)

/Users/philippekirschen/Documents/MIT/Research/GPkit/gpkit/gpkit/nomials/nomial_math.pyc in as_gpconstr(self, x0)
    688         x0.update({var: 1 for var in negy.varlocs if var not in x0})
    689         x0.update(self.substitutions)
--> 690         pc = PosynomialInequality(posy, "<=", negy.mono_lower_bound(x0))
    691         pc.substitutions = self.substitutions
    692         return pc

/Users/philippekirschen/Documents/MIT/Research/GPkit/gpkit/gpkit/nomials/nomial_math.pyc in mono_lower_bound(self, x0)
    370         Monomial
    371         """
--> 372         return self.mono_approximation(x0)
    373
    374

/Users/philippekirschen/Documents/MIT/Research/GPkit/gpkit/gpkit/nomials/nomial_math.pyc in mono_approximation(self, x0)
    420     def mono_approximation(self, x0):
    421         raise TypeError("Monomial approximation of %s is unnecessary - "
--> 422                         "it's already a Monomial." % str(self))
    423
    424

TypeError: Monomial approximation of 39.5*AR**2*C_{L_{aw}}**-2 is unnecessary - it's already a Monomial.

And yes, sorry, I always forget about that trick to access a model's variables.
With option number two, I still need to reincorporate that constraint back into the model somehow (e.g. concatenation) right?

Naw, option 2 modifies the constraint in place.
(that substitution appears to be bugging out, hmm...)

Oh right sorry I wasn't reading it properly. I did that, but strangely my model is giving the same answer...hmmmmm ....

Oh, now that constraint is just super slack. Not what I expected to happen.

And also different from what happens when I manually edit the constraint.

hrrm.

could the unexpected behavior here possibly be due to #735?

Possibly, but generally I've seen hash misses cause bad results tables, not modeling errors.

@pgkirsch, do you have the code you did for option 2 above so I can try and reproduce it?

(fixed option 1, that works now)

Sorry, I don't think so. I believe I was just doing it in an interactive python session.

(with the gpkitmodels.aircraft.wing model)

ah, no worries. I'll close this issue then now that option 1 works?

Sounds good, thanks!


Levenshtein algorithm can no longer produce a higher score than 100 * factor

as mentioned in issue #2

Thanks!

And published on npm


feat: added mdxSource when the <Canvas> not wrapping any <Story>.

Issue: https://github.com/storybookjs/storybook/issues/18342
What Changed

generatemdxSource when <Canvas> has no <Story> child.
How to test

mdx1-csf works for this situation because it added mdxSource manually:
https://github.com/storybookjs/mdx1-csf/blob/4b35b053979b71fd038370566520f1726939505f/src/sb-mdx-plugin.ts#L432-L448
and mdx2-csf (the package is in progress) has no mdxSource injected.
so we just need to compare the mdxSource, if true, then it passes.
Test:

wrap the 2 stories (Note: remove all comments) in test files:

the 1st one (<Canvas> contains <Story> children and more than one)

 the 2nd one (<Canvas>  has no <Story> children but more than one other elements or React components)

log the mdxSource (console.warn(getMdxSource(...))) below this line:

mdx1-csf: https://github.com/storybookjs/mdx1-csf/blob/4b35b053979b71fd038370566520f1726939505f/src/sb-mdx-plugin.ts#L438
mdx2-csf: https://github.com/zhyd1997/mdx2-csf/blob/0b74cabbec09f87e7915c69e68514c5cf186ade8/src/mdx2.ts#L48

run yarn test and compare that if they are the same string or decodeURI(mdxSource) (expect: the are the same value).

Change Type

[ ] maintenance
[ ] documentation
[ ] patch
[x] minor
[ ] major

@zhyd1997 thank you for this PR. can you please add a test to [mdx2.test.ts](https://github.com/storybookjs/mdx2-csf/blob/main/src/mdx2.test.ts) to test the feature?

Hi @shilman
I tried for a while but can not find a way to test what mdxSource will be returned, which will be used as one of Canvas component props.

Thank you @zhyd1997 !!! Closing this in favor of #25 which builds on your changes


Dark Youtube feature like in Magic Actions

I saw Magic Actions referenced in another feature request(#1065) and thought I'd ask for something too.
I would like to see the Day/Night feature from Magic Actions added to YTC. The Day/Night feature is the only reason I still have the addon installed, YTC does everything else perfectly. I know the Lights Off feature is present in YTC but it's not really my cup of tea. It makes the video page way too dark so I can't read comments or see recommended videos, plus it doesn't work all over the YT website like Day/Night does.
And there aren't any 'themes' or 'skins' I've found that work as well as the Day/Night works in Magic Actions.
I can't stand the whiteness of normal YT and would love to see this being added.

+1 for this. Panos Dark Youtube isn't terrible, but the deep grey look from Magic Actions looks infinitely nicer in my opinion.
I much prefer YTC to MA, but that full theme is the one thing I really miss.

I use this:
https://userstyles.org/styles/92164/youtube-lights-out-a-dark-youtube-theme
It's very similar to MA and works perfectly! I install it as a userscript with TamperMonkey!
But I still hope this will get added one day!

@Eisys That's perfect! Other than mousewheel commands to change volume (which I hardly used, honestly) these two scripts fill every role that MA did now and are much cleaner.
Thanks so much!! :smile:


Targets for benchmarks

@sdarwin is this PR good enough for your CI changes?

Yes, thanks. I will copy this new jamfile into runbenchmarks.py.


Cannot use bulk search, "errorResp": "Request failed with status code 400"

As per your screenshot, you are not passing any phone number.
see this https://github.com/sumithemmadi/truecallerjs#to-make-a-bulk-number-search
As per your question there might be any unknown error from your side.
please try to reinstall truecallerjs and try again


This bot is SCAM

When item 200+ dollars, u will be scammed

This is a library for creating bots.  Nothing is being sold here.


"SSLProtocolException: SSL handshake aborted" exception on Android 5.1 after migrationg to 4.7.1

Hi guys!
After migrating from 3.12.0 to 4.7.1
On Android 5.1 I'm getting SSLProtocolException :

Caused by: javax.net.ssl.SSLProtocolException: SSL handshake aborted: ssl=0x7f2719a89e80: Failure in SSL library, usually a protocol error
error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure (external/openssl/ssl/s23_clnt.c:770 0x7f2728a53ea0:0x00000000)
at com.android.org.conscrypt.NativeCrypto.SSL_do_handshake(Native Method)
at com.android.org.conscrypt.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:318)

The host I'm trying to connect is admin-api-stg.oitchau.com.br
I have tried this:
.connectionSpecs(
                listOf(
                    ConnectionSpec.Builder(ConnectionSpec.COMPATIBLE_TLS)
                        .build()
                )
            )

But no luck

I can't reproduce on an Android 5.0 (21) device.
You can see the changes we have made to connection specs here https://github.com/square/okhttp/blob/7e4870537e33e2f0c4ea39f97b3a7d41a6ba0711/docs/tls_configuration_history.md
This is the sort of information we'd like with 3.12.0 to work out why it's failing
https://github.com/square/okhttp/issues/6138#issuecomment-647345231

Yep, and you can get that by printing the response’s handshake.
My guess is you're getting this cipher suite which is gone in even our COMPATIBLE_TLS config:
REMOVED: TLS_AES_128_CCM_SHA256¹
REMOVED: TLS_AES_128_CCM_8_SHA256¹

Nope, that's a bad guess because those cipher suites don't really exist on 3.12 either. Please print the handshake from OkHttp 3.12!

One more resource:
http://tinyurl.com/okhttp-cipher-suites
Somehow the intersection of Andoid 5, OkHttp 4.7, and your server is empty.

... and I think the reason is that Android 5 has the wrong version of a cipher suite:
https://security.stackexchange.com/questions/117078/what-does-old-mean-in-old-tls-ecdhe-rsa-with-chacha20-poly1305-sha256#117084
(I'd never heard of this before)

How can I print the handshake information?

It's a field on the Response.

Guys, thanks for help!
I have fixed this by adding
private fun updateAndroidSecurityProvider() {
        try {
            ProviderInstaller.installIfNeeded(this)
        } catch (e: GooglePlayServicesRepairableException) {
            // Thrown when Google Play Services is not installed, up-to-date, or enabled
            // Show dialog to allow users to install, update, or otherwise enable Google Play services.
            // IGNORE
        } catch (e: GooglePlayServicesNotAvailableException) {
            Timber.e("SecurityException Google Play Services not available.")
        }
    }

to my App.onCreate() Important updateAndroidSecurityProvider() invocation must be before OkHttpClient initialization
Successful Handshake on 4.7.1 return:

Handshake{tlsVersion=TLS_1_2 cipherSuite=TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 peerCertificates=[CN=sni.cloudflaressl.com, O="Cloudflare, Inc.", L=San Francisco, ST=CA, C=US, CN=CloudFlare Inc ECC CA-2, O="CloudFlare, Inc.", L=San Francisco, ST=CA, C=US, CN=Baltimore CyberTrust Root, OU=CyberTrust, O=Baltimore, C=IE] localCertificates=[]}

To reproduce this Exception I have used this method:
private fun testCall() {
        val client = OkHttpClient.Builder()
            .connectTimeout(40, TimeUnit.SECONDS)
            .writeTimeout(40, TimeUnit.SECONDS)
            .readTimeout(40, TimeUnit.SECONDS)
            .connectionSpecs(
                listOf(
                    ConnectionSpec.Builder(ConnectionSpec.COMPATIBLE_TLS)
                        .build()
                )
            )
            .addInterceptor { chain ->
                val response = chain.proceed(chain.request())
                Timber.i(response.handshake.toString())
                response
            }
            .apply {
                if (com.oitchau.tablet.BuildConfig.DEBUG)
                    addNetworkInterceptor(
                        HttpLoggingInterceptor().setLevel(HttpLoggingInterceptor.Level.BODY)
                    )
            }
            .build()

        val JSON = "application/json; charset=utf-8".toMediaTypeOrNull()
        val body = RequestBody.create(JSON, "{ }" )
        val request = Request.Builder()
            .url("https://admin-api-stg.oitchau.com.br/v1/public/structure/tablets/register")
            .post(body)
            .build()

        GlobalScope.launch {
            Timber.i(client.newCall(request).execute().toString())
        }
    }

Awesome. Since you’re using the security provider you can remove the line that configures the connectionSpecs. Both the security provider and your server are capable of our default configuration which is a bit more locked down.
Any chance you can print the old handshake from 3.12? I’m curious if my theory holds that it’s the old OLD_TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 cipher suite.

@swankjesse going to update docs to point to instructions, this is only going to get more painful over time
https://github.com/square/okhttp/pull/6149

@swankjesse
Oddly it uses the same cipher suite with User-Agent: okhttp/3.12.0
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
TLS_1_2


fix: cannot find user home folder errror

Fix #104.

@vrothberg A fix is better than refactoring at this point.


adding tokenLastFour to CreditCard model

Approved but travis build is failing

Some of the UI tests don't play well with Travis. I'll pull and verify it builds locally.

Confirmed branch builds and passes tests locally.


Bug in AdagradTrainer

Hello,
there's a minor bug in AdagradTrainer at line 81. It currently reads:
    vol.SetGradient(i, 0.0); // zero out gradient so that we can begin accumulating anew

But in that point the correct index to use is j, not i:
    vol.SetGradient(j, 0.0); // zero out gradient so that we can begin accumulating anew

Forgive me if I don't submit a pull request, my fork has some more commits on top and branching just for this little fix would be a bit of a hassle.
Thanks again for your great work!

Hi,
Thank you! I have commited the fix on the main branch.
Regards,
Cedric
On Fri, Feb 17, 2017 at 6:35 PM, Gianluca Bertani<EMAIL_ADDRESS>wrote:

Hello,
there's a minor bug in AdagradTrainer at line 81. It currently reads:
vol.SetGradient(i, 0.0); // zero out gradient so that we can begin accumulating anew

But in that point the correct index to use is j, not i:
vol.SetGradient(j, 0.0); // zero out gradient so that we can begin accumulating anew

Forgive me if I don't submit a pull request, my fork has some more commits
on top and branching just for this little fix would be a bit of a hassle.
Thanks again for your great work!
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/cbovar/ConvNetSharp/issues/29, or mute the thread
https://github.com/notifications/unsubscribe-auth/AE3LkcBS_gKE7dkOXV2CgzItHAQ8Tzt8ks5rdXf_gaJpZM4MEHPe
.


[Firestore]

[READ] Step 1: Are you in the right place?
Cloud Firestore support is provided by the @google-cloud/firestore library. Therefore the easiest and most efficient way to get Firestore issues resolved is by directly reporting them at the nodejs-firestore GitHub repo.
If you still think the problem is related to the code in this repository, then read on.

For issues or feature requests related to the code in this repository
file a Github issue.
For general technical questions, post a question on StackOverflow
with the firebase tag.
For general Firebase discussion, use the firebase-talk
google group.
For help troubleshooting your application that does not fall under one
of the above categories, reach out to the personalized
Firebase support channel.

[REQUIRED] Step 2: Describe your environment

Operating System version: _____
Firebase SDK version: _____
Firebase Product: Firestore
Node.js version: _____
NPM version: _____

[REQUIRED] Step 3: Describe the problem
Steps to reproduce:
What happened? How can we make the problem occur?
This could be a description, log/console output, etc.
You can enable logging for Firestore by including the following line in your code:
admin.firestore.setLogFunction(console.log);

This will print Firestore logs to the console.
Relevant Code:
// TODO(you): code here to reproduce the problem

          - الاسم: المصادقة على Google Cloud
            الاستخدامات<EMAIL_ADDRESS>

Hi @Fatima73222 ,
Could you please open a new ticket and describe the problem in detail?


gallery page not complete

website gallery page is not complete so please make it

@Gurpal What is the URL of the gallery webpage that you're referring to?

Could be http://v4-alpha.getbootstrap.com/examples/album/ maybe?

Closing out as stale.


Windows part1

This is the first part step of adding Windows support. See https://github.com/containerd/nerdctl/issues/28#issuecomment-817348708 for the plan to do this in stages.   This is focused on make it build and mostly move Linux specific functionality to _linux.go files and stubs in _windows.go files.  The next PR will add ability to nerdctl run containers
Having all the changes in one PR (#164) made it difficult to see where differences were introduced and felt riskier than doing it in stages and should make reviewing faster.
This only enables Nerdctl to be built on Windows.  It doesn't add full support, which will come in later PR's.


Create a check for empty objects

Please create a check for an empty object and a warning message.
At the moment the renderer will accept an empty object, however, this empty object creates an error on the juniper device resulting in uncommitted changes which in turn will block consequent changes.

Empty object? How's that possible? Objects are created based on lines of AN syntax.. Got an example what results in an empty object?


Cannot select today date when there is only min date validation

When there is only min validation for the first time I cannot select today date. If I choose another date first then I can choose today date.
<input date-range-picker id="carRecDate" class="form-control date-picker" type="text" data-ng-model="carvm.eventObj.carReceivedDt" placeholder="mm/dd/yyyy" options="{locale:{format: 'MM/DD/YYYY'}, singleDatePicker:true}" min="carvm.review.reportSentDt" max="carvm.todayDate" />
<input type="text" id="revResDate" class="form-control datepicker" min = "carvm.eventObj.carReceivedDt" placeholder="mm/dd/yyyy" date-range-picker data-ng-model="carvm.eventObj.revisedResponseDt" options="{locale:{format: 'MM/DD/YYYY'}, singleDatePicker:true, drops: 'up'}" required/>
For second datepicker i cannot choose today date for first time. Nothing happens when click on today date. Even watcher for this model in controller is not fired up. If I add for example max="carvm.todayDate()" then I can choose today date for first time.
Any ideas?

did you fix this problem? I'm having the same issue

@crysthofferattier no.. still issue for me. I see that lately many issues are raised and none are even discussed .... it is getting bad.

@BukicMicko thanks for answering me

+1


UpdateTargetPointCommandEvent not working

The UpdateTargetPointCommandEvent is not being caught, despite there being some code/attempt to do so. I have a fix I implemented on my local copy, but I wanted to make the issue known. Will likely create a pull request with the changes. They are small and shouldn't break anything existing.

Created the pull request in #28

Fixed in PR #28


In calico-k8s-cluster, sometimes policy not auto-created

When I run the start.sh script for the GCE version of calico-k8s-cluster, sometimes the nginx-service policy is auto-created and sometimes it's not.

@fasaxc - Yeah, I think this is a timing bug in the cloud-config in that repo.  I saw this too a while ago.
It's really hokey: https://github.com/projectcalico/calico-k8s-cluster/blob/master/gce/master-config-template.yaml#L313

Not an issue in this repo


Did the How to Watch thing and social media icons hover.

They need to be checked though. For the How to watch, I used React-bootstrap Accordion - https://react-bootstrap.github.io/components/accordion/ . The social media icons hover has a problem

It wasn't compiling on my system.


Add "Deactivate account" option

In the wep app we have "Deactivate account" option, it could be usefull if we have the same in the mobile app.

working on it.


No listings state

This branch gives a UX friendly no listings state when viewing another person's store:

Previously, in this case, a cryptic IPFS error was being shown:
Path Resolve error: no link named "index.json" under QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn
I think @morebrownies will quite appreciate this one :)

This looks good to me. @morebrownies should I assume the gif is a sign of acceptance?

Yeah looks good

Thank god lol


docs: change favicon to logo without text

Logo is used in a couple different places/repos, maybe we could make a repo for them and have everything else reference them through the raw github links.
i didn't pr that because im not sure links are ok with the docs in this case?

One could argue that it introduces external dependencies to the git repo, which should probably be self-contained, but I think realistically, it's fine.

hm, I like that argument, i was thinking this because we need to fix the font in the svg, heving them central would help keep everything consistent, now and in the future. that said this extremely easy to keep in check.


added support for multiple resource endpoints

This changes will add following new features to sriov-device-pLlugin
- Handles SRIOV capable/not-capable devices (NICs and Accelerators alike)
- Supports devices with both Kernel and userspace(uio and VFIO) drivers
- Supports PF bound to DPDK driver to meet certain use-cases
- Allow grouping together multiple PCI devices as one aggregated
resource pool
- Can represent each PF as a separately addressable resource pool to K8s
- User configurable resourceName
- Detects Kubelet restarts and auto-re-register
- Detects Link status (for Linux network devices) and updates associated
VFs health accordingly
- Extensible to support new device types with minimal effort if not
already supported

Change-Id: I314e1ea75e647e747bcfdb2f447e593adbcd14c5

@zshi-redhat @tomo @dougbtv @fepan Please review the multiple endpoint features. It is really good implementation by @ahalim-intel

Thanks for the review @zshi-redhat New changes on the way!
Also planning to switch the build script to 'make' file in future.

mapping each PCI device to its network sounds useful for other purposes, but I'm not sure why it is relevant here.
I'd be content if for every device attached to the Pod, I get a different envvar named
SRIOV-VF-PCI-ADDR-<deviceid> or SRIOV-VF-PCI-ADDR-<meaningless-index>
A pod application can easily iterate over all SRIOV-VF-PCI-ADDR-* and do its thing with them.

P.S the choice of envvar name should allow allocation of two devices of the same resourceName. A Pod may very well request access to vlan1 and vlan2 on sriovA.

@dankenigsberg @booxter Thanks for your comments.
There are plans to add the allocated device id in the network status as part of Result. So, this information will be available from Pod status. But for applications to get this info will need to communicate to API server. Env variable is a convenient way of getting this information.
It would be useful to explore the possibility of utilizing the same hook to have this resourceName env translated to a well-known name. Then again we run into the same problem as discussed above with multiple resources.
For now, I think we could include some common prefix such as:
PCIDEVICE_<resourceName>=<one or more PCI address with known delimiter>

I think that PCIDEVICE_<resourceName>=<one or more PCI address with known delimiter>  has the same "overwrite" problem.
I find having multiple PCIDEVICE_<resourceName>_<PCI address=more info about device vars simpler to write in the DP and to iterate in the Pod. What do you think about them, @ahalim-intel  ?

I think that PCIDEVICE_<resourceName>=<one or more PCI address with known delimiter> has the same "overwrite" problem.
I find having multiple PCIDEVICE_<resourceName>_<PCI address=more info about device vars simpler to write in the DP and to iterate in the Pod. What do you think about them, @ahalim-intel ?

Actually we don't have the overwrite problem now as it is(current implementation). That is because we have a unique variable name(resourceName). For multiple resource request with same resourceName, the PCI addresses will be appended to the same variable's value.
Only change we need to do is add a well-known prefix to the variable name(PCIDEVICE_) but this will be still unique per resource pool.
Say, we have 2 resource request from sriov_a. With this approach we are going to get one variable with 2 values:
PCIDEVICE_SRIOV_A=00:01.0;02:00.1
With the one you described we will get 2 variables:
PCIDEVICE_SRIOV_A_00:01.0=<extra info>
PCIDEVICE_SRIOV_A_02:00.0=<extra info>
Also, most likely the : and . are not allowed in var names, so those need be taken care of too.

@dankenigsberg @ahalim-intel the issue with <common_prefix>_ naming scheme is that you don't know which Multus network each PCI ID belongs to (and with heterogeneous nodes it becomes important).
Having resourceName encoded in variable names is definitely the way to go. In KubeVirt context, we still miss the link between Multus networkName and resourceName. While we can calculate and pass it into the pod in KubeVirt, I was wondering if having it implemented in more broad context for all pods would be more helpful. Sadly, CNI API doesn't seem to provide a way to communicate such mapping back to pod. I think we could have a mutating hook that would calculate the mapping and pass through a variable on a pod.
I will write a PoC showing the solution for KubeVirt, and we can discuss from there if something similar should be implemented in more general context.

I understand why matching a network device to the network it connects to is interesting. But it is interesting in non-sriov networks just as much. Hence I don't think that it should do delay this pr, or merit a complex solution such as calling kAPI from inside each Pod.
I don't understand the need in a kubevirt PoC. For kubevirt, you can match a pci device based on the mac address that sriov-cni he set on it. But I'll wait and see.

@dankenigsberg I don't think we should delay the PR (except for extending per-pool variable names to full resource Name, with intel.com/ prefix). Yes, mapping between networks and resource names is useful beyond this particular DP. Who would be the component to serve it to pods? Multus?
@dankenigsberg please explain your solution for KubeVirt particular concern. How do we know the MAC address allocated by CNI to an interface?

@all
Guys, I believe the PR by itself is bug free. PCI address introduction is important for the application like DPDK or KubeVirt. @ahalim-intel introduced a way to expose the PCI as env variable based on the resource name. Can we agree on one strategy and improve the solution in the upcoming PRs.

@rkamudhan AFAIK we still use a shortened resourceName (without intel.com prefix) as the variable name. If we'd like to have it extendable to other potential solutions, it would be nice if we could have the prefix a part of the variable name so e.g. INTEL_COM_sriov_vfio=,,... instead of current sriov_vfio=,,... Otherwise we are left to assume the intel.com/ prefix in annotations and cut it off before accessing the variable.

@rkamudhan AFAIK we still use a shortened resourceName (without intel.com prefix) as the variable name. If we'd like to have it extendable to other potential solutions, it would be nice if we could have the prefix a part of the variable name so e.g. INTEL_COM_sriov_vfio=,,... instead of current sriov_vfio=,,... Otherwise we are left to assume the intel.com/ prefix in annotations and cut it off before accessing the variable.

I agree on it, let improve the issue(small nits) in the upcoming PRs.

Sure, let's leave variable name adjustment to a follow up (I can take care of it if needed).


[BUG]  Roblox process in Google Chrome process in task manager

Acknowledgement of preliminary instructions

[X] I have read the preliminary instructions, and I am certain that my problem has not already been addressed.
[ ] My answer given in the checkbox above is a lie.

What problem did you encounter?
Roblox process in Google Chrome process in task manager is it normal having bloxstrap/roblox in chrome processes

Well, if you are launching Roblox/Bloxstrap through Chrome, it is possible since it's launching Roblox.

Yes


Add notification management

Is your feature request related to a problem? Please describe.
One crucial aspect in the development of the SDK is the integration of the notification functionality, encompassing the ability to send, receive, and monitor notifications. Prior to progressing with the porting of tools that rely on this feature, such as sshnp, it is highly recommended to prioritize the development of this functionality.
Describe the solution you'd like
Create Notification and NotificationService classes.
Original Dart/Java SDKs code references:

AtNotification - Dart
NotificationServiceImpl - Dart
Metadata - Dart
Constants - Dart
Metadata - Java
AtNotification - Java
https://github.com/atsign-foundation/at_java/pull/63
AtMonitorConnection - Java

Task list (not necessarily complete or in the correct order):
(Steps inspired by @JeremyTubongbanua 's https://github.com/atsign-foundation/at_java/pull/63 changelog)

[x] Create AtNotification class
[x] Expand Metadata class (new parameters)
[x] Create NotifyVerbBuilder
[ ] Create NotificationService class, and get_notification_service method for AtClient
[ ] NotificationEnums

Just to keep the issue updated, notification management system was implemented in https://github.com/atsign-foundation/at_python/pull/21 and @Xlin123 added diverse features such as notify verb, more metadata parameters, iv and tests in https://github.com/atsign-foundation/at_python/pull/31.


develop

Tested with https://github.com/kinode-dao/kit/pull/132 and https://github.com/kinode-dao/core_tests/pull/12; ready for merge :+1:
Note we should bump version here to 0.7.0 since we have made a breaking change: removal of testnet.

Tested with kinode-dao/kit#132 and kinode-dao/core_tests#12; ready for merge 👍
Note we should bump version here to 0.7.0 since we have made a breaking change: removal of testnet.

I thought about it, but it's not a breaking change to the protocol. Testnet nodes can still run just fine, we've just removed them as a path available to users. I would like to do 0.7.0 when we change the actual contracts to the new ones under development


Option to create folders and rename conversations

One nice feature of the chats, is the chance to organize historical chats within folders and rename folders and conversations.

Great suggestion, thanks :)
Could you give more information about how you plan to organize your folders/conversations? Do you have a specific usecase?

https://scepeda78.github.io/ChatGPTFree/
This is a fork of other project that we are using today.
Rgds
El 21-10-2023 4:58 a. m., Kevin Piacentini @.***> escribió:
Great suggestion, thanks :)
Could you give more information about how you plan to organize your folders/conversations? Do you have a specific usecase?
—
Reply to this email directly, view it on GitHubhttps://github.com/agentlabs-inc/agentlabs/issues/44#issuecomment-1773710990, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AEM47OBXISKA5W3TN3A6SR3YAN6DPAVCNFSM6AAAAAA6J2ZY76VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONZTG4YTAOJZGA.
You are receiving this because you authored the thread.Message ID: @.***>

Great!


Cannot read property of undefined in lib/client.js

We have an api which sends json embedded in soap body. We are frequently getting this error where obj is {} (empty) and obj.Body is undefined after xml conversion in lib/client.js. Seems like an issue with xml to object conversion.
Uncaught Error: Cannot read property 'ConfirmationSeatBookingSoapOut' of undefined
TypeError: Cannot read property 'ConfirmationSeatBookingSoapOut' of undefined
at releases/source/node_modules/soap/lib/client.js:245:24
at Request._callback (releases/source/node_modules/soap/lib/http.js:61:7)
at Request.self.callback (/releases/source/node_modules/request/request.js:121:22)
at Request.EventEmitter.emit (events.js:98:17)
at Request. (releases/source/node_modules/request/request.js:985:14)
at Request.EventEmitter.emit (events.js:117:20)
at IncomingMessage. (releases/source/node_modules/request/request.js:936:12)
at IncomingMessage.EventEmitter.emit (events.js:117:20

+1

+1 I also get similar error on similar api
TypeError: Cannot read property 'SearchResponse' of undefined

Would be good to know the contents of the line you guys are seeing this on and a specific version.
I just found an error that sounds similar to this and it occurs due to this line (246) in the current master. This line is 208 in my version (0.8.0)
A simple fix would be to add a try/catch or check the properties exist before calling:
result = obj.Body[output.$name];

Might investigate more myself to ensure this would be sufficient.

@evanshortiss : yes, I am referring to https://github.com/vpulim/node-soap/blob/master/lib/client.js#L246 in lib/client.js. In this case, obj.Body is coming undefined.

i'm facing the same problem, any clues?

@Himanshu4 what do you mean by "json embedded in soap body"?  Do you mean
<soapenv:Body>   {"foo":"bar"} </soapenv:Body>
If not, could you provide a simple example that can be used to reproduce this error?

I have similar issue as well. Anyone knows the fix for this?

Just happened to me, with response's body empty.

+1

Yeah, this happens if the response body is empty. The xml parser happily parses empty strings into {}, which then is assigned to obj. obj.Body will then be undefined, and trying to access any properties on it causes the aforementioned failure.
This is not fixed in master.

+1


Release v1.0.1

This is the release worklog

Created the v1.0.1 release. The v1.0.1 tag was also created at the same time.

https://github.com/sorah-rbpkg/actions/releases/tag/v1.0.1

Updated v1.0 tag
$ git tag -f -a v1.0 -m "Update v1.0 tag"
Updated tag 'v1.0' (was 2446e55)
$ git push -f origin v1.0
Enumerating objects: 1, done.
Counting objects: 100% (1/1), done.
Writing objects: 100% (1/1), 181 bytes | 181.00 KiB/s, done.
Total 1 (delta 0), reused 0 (delta 0), pack-reused 0
To ssh://github.com/sorah-rbpkg/actions.git
 + 2446e55...6995b32 v1.0 -> v1.0 (forced update)

Updated v1 tag
$ git tag -f -a v1 -m "Update v1 tag"
Updated tag 'v1' (was d92d6ff)
$ git push -f origin v1
Enumerating objects: 1, done.
Counting objects: 100% (1/1), done.
Writing objects: 100% (1/1), 179 bytes | 179.00 KiB/s, done.
Total 1 (delta 0), reused 0 (delta 0), pack-reused 0
To ssh://github.com/sorah-rbpkg/actions.git
 + d92d6ff...8d8a82c v1 -> v1 (forced update)