Tune cilium

Pretty much everything in https://docs.cilium.io/en/stable/operations/performance/tuning

netkit device mode: https://docs.cilium.io/en/stable/operations/performance/tuning/#netkit-device-mode
eBPF host-routing: https://docs.cilium.io/en/latest/operations/performance/tuning/#ebpf-host-routing
BIG TCP for IPv4/IPv6: https://docs.cilium.io/en/stable/operations/performance/tuning/#ipv6-big-tcp, https://docs.cilium.io/en/stable/operations/performance/tuning/#ipv4-big-tcp
Bandwidth Manager: https://docs.cilium.io/en/latest/operations/performance/tuning/#bandwidth-manager
BBR congestion control: https://docs.cilium.io/en/latest/operations/performance/tuning/#bbr-congestion-control-for-pods
XDP Acceleration: https://docs.cilium.io/en/stable/network/kubernetes/kubeproxy-free/#xdp-acceleration
terminatePodConnections: https://github.com/cilium/cilium/pull/33459, https://docs.cilium.io/en/latest/network/kubernetes/kubeproxy-free/#limitations

If you're using a simple L2 network setup (eg all networking configured on Talos config), then eBPF host routing is fine, but beware that if you do more complicated stuff on the host network layer, like receiving L3 routes via routing protocols like BGP/OSPF/OpenFabric etc, Cilium will not follow those properly with eBPF Masquerade enabled (it's flaky).
Also XDP acceleration may cause interfaces to not be detected and used properly if the XDP stuff isn't established as Cilium is starting up (eg having supported and unsupported interfaces in the mix and not specifying devices in Cilium config, or just the hardware + software stack used doesn't properly support XDP on all sides (maybe kernel config or whatnot)).

Applied most of the changes except netkit which does not seem to work. Not root caused, but ARP seems to get blocked.

Closing. Will open a separate issue for netkit once it has matured.


Updates to flunn/slugbuilder and flynn/slugrunner docker images

Hi there,
Are there any planned updates to docker images flunn/slugbuilder and flynn/slugrunner?
Looks like last push was about a year ago. Were they replaced by some other images?

Ok, thanks. Is there any way to use updated images without flynn's private registry (i assume there's one) ?

You can clone the repo and build the images yourself. We don't use a registry to distribute images, they are packaged into a TUF repo, the format will be changing soon to not be Docker-based at all.

Great, thanks for the info.


Syncing every time I start wallet

Hi
I installed Verus Desktop 0.7.0-3 on my win 10 comp and every time I restart wallet I have to sync block from block 0. What is going on?

Best to check your VRSC.conf if it has the option reindex in it.
In Verus Discord I can troubleshoot thoroughly if this doesn't solve your issue.

Closing this due to inactivity, feel free to reopen if more discussion is required.


camera view is not working in IOS 9.0 and above

Analyzer Feedback from IntelliJ

Hi - is this in Flutter?  If so, please file there:
https://github.com/flutter/flutter/issues
If you're seeing an Analyzer error, can you please file a new issue with the error?  Thanks!


Fix unecassary and broken requests to device permissions on firefox.

Update track based on local Id state
Signed-off-by<EMAIL_ADDRESS>

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

@toger5 thank you for your PR it seems like you still have to sign the CLA before we can review your PR. :)

@Ocupe thanks for pinging me on this!

@lukasIO is this fixed by #537 and therefore can be closed?


Profile Pages

Tasks

Create a profile update page
Create a profile private details page
Create a user public profile page

Should list user collaborated/created projects

Can you assign me to it?


Ci 3431 str

Just to get a CI run.

Got a green CI, but a better fix worked in the meantime (see #5556) so no reason to keep this open.


add a detection of bagged source timestamps to fix latency calculation

modify nodes to change the source stamp if it is coming from a bag

Abandoning this method and switching to another method instead


IdentityServer3 Client not having all the values set

Hi ,
i am trying to add client to Mongo Db ,but facing weired issue ,some values are missing while inserting to mongo Db and same are not being read as well if i manually update the Mongo DB Doc.the fields are
LogoutUri
RequiredSignoutPrompt
LogoutSessionRequired
i did not find a way to check the logs to understand why only these values are missing .
i am using IdentityServer3.MongoDb 2.0.1 and dentityServer3.MongoDb.Admin 3.0.0
i am not able to use the latest version, i have another issue for same https://github.com/jageall/IdentityServer.v3.MongoDb/issues/43

closing this as it relates to the admin module not having been updated which is in #43


🐞 Missed some CSS prop values for code-complete like mx:auto mt:auto

What happened?

Version
No response
Relevant log output
No response
What browsers are you seeing the problem on?
No response

🎉 The bug has been fixed in v2.1.31


Openvpn client cant connect if server's cert revocation list is enabled

Can't connect to openvpn server as soon I enable openvpn server "Peer Certificate Revocation List".
Without  revocation list enabled, client can connect (P2P ssl/tls server).
Opnsense server side complains:

CRL: cannot read CRL from file /var/etc/openvpn/server8.crl-verify
OpenSSL: error:14089086:SSL routines:ssl3_get_client_certificate:certificate verify failed

This server8.crl-verify file is on the server, but it's 0 bytes, along whti other serverX.crl-verify files.

ls -al /var/etc/openvpn/ | grep verify
-rw-r--r--  1 root  wheel     0 Feb  3 16:49 server1.crl-verify
-rw-r--r--  1 root  wheel     0 Feb  3 16:49 server2.crl-verify
-rw-r--r--  1 root  wheel     0 Feb  3 16:49 server3.crl-verify
-rw-------  1 root  wheel     0 Feb  3 17:00 server4.crl-verify
-rw-r--r--  1 root  wheel     0 Feb  3 16:49 server5.crl-verify
-rw-r--r--  1 root  wheel     0 Feb  3 16:49 server6.crl-verify
-rw-------  1 root  wheel     0 Feb  3 16:59 server7.crl-verify
-rw-r--r--  1 root  wheel     0 Feb  3 17:03 server8.crl-verify

server4.crl-verify and server7.crl-verify files with different permissions are P2P ssl/tls servers's files.
Checked on my old pfsense box, those verify files contain cert:
-----BEGIN X509 CRL-----
cert data
-----END X509 CRL-----
Shouldn't those certs have to be present on Opnsense too?
Running Opnsense 17.1

Seeing this behavior here too after the upgrade to 17.1. Was running fine on 16.7.14.
OpenVPN Server Log from the OPNsense instance:
CRL: cannot read CRL from file /var/etc/openvpn/server1.crl-verify
OpenSSL: error:14089086:SSL routines:ssl3_get_client_certificate:certificate verify failed
TLS_ERROR: BIO read tls_read_plaintext error
TLS Error: TLS object -> incoming plaintext read error
TLS Error: TLS handshake failed

And a file listing of the CRL:
~ # ll /var/etc/openvpn/ | grep verify
-rw-------  1 root  wheel     0 Feb  8 22:19 server1.crl-verify

Clients can connect, when I disable the "Peer Certificate Revocation List" in the OpenVPN Server settings.

There was this issue in the unmaintained 10 year old CRL additions of the PHP OpenSSL module that stopped working (as it should have been a long time ago) in PHP 7.0:
https://github.com/opnsense/ports/commit/0eb5e27467
17.1.1 should be good. Released later today.
Cheers,
Franco

I was have the same issue today on:
OPNsense 18.1.6-amd64
FreeBSD 11.1-RELEASE-p9
OpenSSL 1.0.2o 27 Mar 2018

@dzikus ... how did you solve it?

@byazit by disabling cert revocation.
It was my fault because of "Next Update" in crl was expired.


Incredible Memory comsumption for long simulation + ultra slow down

The more photons there are to simulate, the slower the simulation gets.
Also, RAM usage can exceed 4GB on my end.
from pytissueoptics import *

materialLayer1 = ScatteringMaterial(mu_s=1.0, mu_a=0.5, g=0.7, n=1.3)
materialLayer2 = ScatteringMaterial(mu_s=5.0, mu_a=0.8, g=0.8, n=1.4)
materialLayer3 = ScatteringMaterial(mu_s=50.0, mu_a=2.5, g=0.9, n=1.5)

layer1 = Cuboid(a=50, b=50, c=1, position=Vector(0, 0, 0), material=materialLayer1, label="Layer 1")
layer2 = Cuboid(a=50, b=50, c=1, position=Vector(0, 0, 0), material=materialLayer2, label="Layer 2")
layer3 = Cuboid(a=50, b=50, c=1, position=Vector(0, 0, 0), material=materialLayer3, label="Layer 3")
stack1 = layer1.stack(layer2, "back")
stackedTissue = stack1.stack(layer3, "back")

layerTissueScene = RayScatteringScene([stackedTissue])

logger = Logger()
source = PencilSource(position=Vector(0, 0, -5), direction=Vector(0, 0, 1), N=1000)
source.propagate(layerTissueScene, logger)

stats = Stats(logger, source, layerTissueScene)
stats.report("Layer 1")
stats.report("Layer 2")
stats.report("Layer 3")

This particular simulation starts very fast, but slows down to almost a halt at the end ( 3-4 photons/s)

This is due to the np.concatenate which is O(N) time complexity. So the more data the slower it gets. However, we still need numpy array for GPU logging since converting large numpy array to list makes memory errors.
We are working on a solution

closed with #69


UNDERTOW-884 non servlet form auth does not compute correct location

Backport of https://issues.jboss.org/browse/UNDERTOW-884 for 1.3.x branch
JIRA: https://issues.jboss.org/browse/JBEAP-9874

Can one of the admins verify this patch?


Adding tqdm

Coverage decreased (-0.2%) to 99.822% when pulling b39a948c904de1c5459daa89f28e7330b1c31ef8 on drvinceknight:progress_bar into 6ac35e8240bb533d7c4cb9fa36f5d3366143816a on geraintpalmer:master.

@drvinceknight I want to merge this in, but how do I ass tests for it?

I have no idea... Might not be testable... If you figure it out let me know
(working on something similar for axelrod).
On Thu, 21 Apr 2016, 12:14 Geraint Palmer<EMAIL_ADDRESS>wrote:

@drvinceknight https://github.com/drvinceknight I want to merge this
in, but how do I ass tests for it?
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
https://github.com/geraintpalmer/Ciw/pull/44#issuecomment-212863107

I don't have any docs. Let me know if you want me to throw that in somewhere.

Coverage decreased (-0.6%) to 99.44% when pulling 33987d34e4bd2490918f6824cf0f826c1e4ab855 on drvinceknight:progress_bar into ec7203e99f28e3f0659ff4b7cff2138c0149a9a8 on CiwPython:master.

I don't have any docs. Let me know if you want me to throw that in somewhere.

Don't worry about docs I'll sort that

I think I've sorted it. My linter picked up a handful of redundant imports at the top of simulation. I've removed those too.

Coverage remained the same at 100.0% when pulling 4e0e4fcccb4658b90b5cbb7afc78c8c27ddc53fc on drvinceknight:progress_bar into ec7203e99f28e3f0659ff4b7cff2138c0149a9a8 on CiwPython:master.


[Suggestion] Avoid Critical/EOL Wormholes In Route Finder

As the title says, it would be ideal if the route finder avoided critical/EOL wormholes. Perhaps this could be a setting, although I feel it should be the default setting if it is. Sometimes you find a route in one static, and the route finder will keep giving you that one because it's shorter, even though one of the holes may now be EOL or critical. When there might be another route that's longer, but has no EOL or critical holes in the path.
The two options I can think of off the top of my head are for the route finder to completely ignore a route if it has EOL or critical holes in the path, or for it to prefer routes that don't have any EOL or critical holes in their path.

This isalready implemented:

Frigat hole filter was added in v1.2.2 (#460)
EOL hole filter was added in v1.1.5 (#315)

Ahh I see. This is a bit different than what I was referring to.
I tend to use the route finder mostly for find a route to trade hubs and don't use the search button much. I'm fairly certain that the route finder will still exhibit the behavior described in my op in this use case. The route finder's route will always use the shortest route, and doesn't seem to ignore eol wormholes or prefer more stable wormholes. I think adding this setting to the route finder's settings as well, instead of just the search function, would resolve the issue I describe.

For clarity, this is the route I'm referring to. Routes displayed here don't ignore eol/crit/frig wormholes afaik.

Ah OK I get your point, sorry! So we are talking about making the "default" routes more configurable.
In the past I thought about adding all the filter options to the "settings" dialog for custom pre-defined target systems. Then I came to the conclusion that it is very untransparent for the users, which filter settings  were taken into account.
I think some kind of "edit" icon in each row could help, where you can check and modify your settings.
Btw. your screenshot looks outdated, the current version of the route finder has a "shield" icon where you can toggle between "saver" and "shorter" routes. This excludes 0.0, LS and WH connections (trueSec < 0.5). This is a good start but does not give you the "full power" of all filter options.
Screenshot

I reopen this Issue and adjust the topic

No problem. It's pretty easy to misunderstand it, especially when you've already implemented such a similar feature.
I'm a programmer as well. Although I'm extremely unfamiliar with PHP (in fact, I can't stand working with it tbh, I'm a C# fanboy and focus more on backend software than frontend web dev), otherwise I'd be working on a pull request myself. For the most part, PathFinder is pretty self-explanatory. But I do notice a few things that could be made a lot more clear for the less-savvy users.
For simplicity, I think default routes should be taken out of settings, and given their own dedicated button to make it a little bit more obvious. I think taking the filter settings, at least for crit/eol and frigate holes, out of the search dialog and moving them to the now empty settings dialog would also help make things more clear. I think these settings would be clearest and easiest for users to figure out if they acted as default settings for both default routes and the search dialog, and were accessed through the settings button.  This would need to be coupled with a quick way to override the settings when needed, though. I think adding buttons to override these settings like what you've done with the shield button would serve this purpose very well. This would keep the settings to strictly one set, preventing confusion. And it would make things a bit more clear in terms of separating things out to their specific task. I'd also say that moving default routes and the default filter settings buttons to one of the side bars would be a solid idea. This would reduce clutter, and these dialogs don't need to be accessed often enough to warrant such easy access to them. It might even be better to make these dialogs tabs in the configuration dialog instead, to concentrate overall settings in one place. I think this would have a great effect on usability.
The advantage of moving all of this stuff to its own button, is you can label each button individually, and make things a lot more clear in terms of how to access things, and what's available under buttons.
It wouldn't be a bad idea to color code crit/eol and frig holes in the route list (the boxes that show each system in the route is what I'm referring to) to make it more obvious that your route will take you through one of these systems. If I remember correctly, what originally prompted me to create this issue was the fact I had gone down the shown routes a couple times and been blocked by frigate holes or eol/crit holes without realizing it until I got to the hole. So that's definitely a feature that would be great to have as well.
And yeah, my version is definitely outdated. I've been on a 6 month hiatus from EVE and literally just started playing again a couple days ago. So I haven't bothered updating it because I haven't been using it. I'm on 1.1.7 currently. I actually checked this when you mentioned the change, because I didn't see it in the settings box and thought, "maybe my version is outdated." But then I realized what I posted above.
Unrelated side note: Renaming a system works very intuitively. But it's not obvious. I searched quite a bit online for how to do this, and couldn't find anything. It wasn't until I accidentally double clicked a system that I realized how to change the system name. I think the way it works is perfect. But I honestly doubt many people even know this feature exists. Something like writing documentation that targets the keywords "pathfinder change system name" so people who are looking for this feature can easily find it, and/or perhaps a popup dialog the first time you add a system that tells you how to change system names would be good. The first system a user adds will probably be their home system as well, and if they're going to rename a system, that's the most likely one they'll be renaming. So a popup dialog the first time you add a system would likely be very well placed. Perhaps even keeping the double click functionality, but also adding rename to the right click context menu would be a good idea as well. I know the context menu is where I expected to find it.
But I don't want to sound like I'm just criticizing what you've created here. It's by far the best mapping tool that I know of, and the fact it's open source and can be used on your own private server unlike the others I know of, is a great feature. The UI design overall is very intuitive and looks nice, and there are a lot of great features such as recent kills in a very intuitive and easy to see place, etc These are just some tweaks I think would make it even better.

I realize that's a lot to put into a single issue. If you like, I can separate it all out into multiple issues aside from the original topic of this issue. Though the largest paragraph is basically a suggestion on how to go about implementing this feature request, though it includes a lot of other changes on top that I think kind of tie into implementing it in a user friendly way.


cmake: Remove install of configurations/ dir

When generating the Debian package, the build fails:
$ dpkg-buildpackage -b
. . .
CMake Error at cmake_install.cmake:102 (file):
  file INSTALL cannot find
  "/bla/bla/TSN-Testbench/configurations": No such
  file or directory.

Former configurations directory has been distributed into the tests directory.
This patch removes the references to configurations/ in the build system.

@shifty91 thanks, sure!


Node not found in onreadystatechange

Using the minified version of 1.0.3, I get this error "Node was not found" on FF, and "Uncaught Error: NOT_FOUND_ERR: DOM Exception 8" on Chrome, appearently about: window.PrefixFree.process.link.e.onreadystatechange

Does it also happen with the unminified version? If so, what's the line the error occurs in?

Yes, line 91
parent.insertBefore(style, link);
I'll put it online in some minute so you can check.

Ok, that's where you can check it:
Not minified
http://www.andreaverlicchi.eu/?prefixfree=enable
Minified
http://www.andreaverlicchi.eu/?prefixfree=enable,minify
I hope this helps!

Yup, after the 3rd attempt, it looks fixed now. Closing issue :)


Update renovatebot/github-action action to 34.39.0

This PR contains the following updates:

Package
Type
Update
Change

renovatebot/github-action
action
minor
v34.37.0 -> v34.39.0

Release Notes

renovatebot/github-action
v34.39.0
Compare Source
See the the changelog for changes in all releases.
34.39.0 (2022-11-26)
Bug Fixes

deps: update renovate/renovate docker tag to v34.39.0 (8b08603)

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.

[ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

@balena-ci I self-certify!


Unit | Component | sl pagination: onLastPage property returns the expected values

not ok 548 PhantomJS 1.9 - Unit | Component | sl pagination: onLastPage property returns the expected values
    ---
        actual: >
            null
        message: >
            Died on test #2     at test (http://localhost:7357/assets/test-support.js:3025)
                at testWrapper (http://localhost:7357/assets/test-support.js:6192)
                at test (http://localhost:7357/assets/test-support.js:6205)
                at http://localhost:7357/assets/tests.js:25628
                at http://localhost:7357/assets/vendor.js:152
                at tryFinally (http://localhost:7357/assets/vendor.js:33)
                at http://localhost:7357/assets/vendor.js:158
                at http://localhost:7357/assets/test-loader.js:60
                at http://localhost:7357/assets/test-loader.js:51
                at http://localhost:7357/assets/test-loader.js:82
                at http://localhost:7357/assets/test-support.js:6024: 'undefined' is not a function (evaluating 'pages.find(function (page) {
                            return page.active;
                        })')
        Log: |
    ...

Will likely be resolved by https://github.com/softlayer/sl-ember-components/issues/1503

Resolved by https://github.com/softlayer/sl-ember-components/issues/1503


Update dashboard to use new log analytics

Description

[x] Update dashboard to use new log analytics

References #355

Dashboard queries are updated and the aka.ms link is now to the new dashboard: aka.ms/ngsadashboard-preview

Dashboard queries are updated and the aka.ms link is now to the new dashboard: aka.ms/ngsadashboard-preview


Fix incorrect step number in resolution-getting-started

Changes
Fix incorrect step numbering in resolution-getting-started
Submitter Checklist
As the author of this PR, please check off the items in this checklist:

[x] Has Docs if any changes are user facing, including updates to minimum requirements e.g. Kubernetes version bumps
[ ] Has Tests included if any functionality added or changed
[ ] pre-commit Passed
[ ] Follows the commit message standard
[x] Meets the Tekton contributor standards (including functionality, content, code)
[x] Has a kind label. You can add one by adding a comment on this PR that contains /kind <type>. Valid types are bug, cleanup, design, documentation, feature, flake, misc, question, tep
[x] Release notes block below has been updated with any user facing changes (API changes, bug fixes, changes requiring upgrade notices or deprecation warnings). See some examples of good release notes.
[ ] Release notes contains the string "action required" if the change requires additional action from users switching to the new release

Release Notes
NONE

/kind documentation

/ok-to-test

@vdemeester @chitrangpatel need a second review 🙏


Suggestions for updating the WorldAnchorManager

I am sure the coder had a reason for doing it this way, but if it is just to keep performance good when adjusting a lot of anchors at once, then IMO it is not enough to offset the major problems using a queue causes:

It is impossible to know the success or failure of an operation as it does not execute when the Attach/Remove call happens.
It is impossible to know if AttachAnchor was able to load any existing anchor data. This is important if you want to take actions based on whether or not the anchor data exists. For example you may want to hide a GameObject if there is no anchor data, then only create the anchor data if the user issues a command to show the object.
Code like this doesn't work since the anchor is not removed in a timely manner to allow the rotation to happen:

WorldAnchorManager.Instance.RemoveAnchor(this.gameObject);
this.transform.Rotate(blah blah blah);
WorldAnchorManager.Instance.AttachAnchor(this.gameObject, this.gameObject.name)

Stack traces are useless since they go back to WorldAnchorManager.Update and then to Unity internals, instead of to the function in my code that called RemoveAnchor or AttachAnchor.

The queue should be removed, or at least have a switch to turn it off. As an application developer I should have the control to balance performance with the convenience with writing straightforward code like I have above.
In addition there are other problems with WorldAnchorManager which compound this issue:

If you call AttachAnchor without calling RemoveAnchor the queue processing code throws a duplicate key exception.
When using SharingWorldAnchorManager, the base functionality is suppressed when not connected to a server. Why can't it work like WorldAnchorManager when offline? Why can't it at least give me an error message?
It is impossible to test WorldAnchorManager withni the Unity Editor (perhaps with the holographic emulator but you need the Hololens on the network for that to work; the Hololens is not yet working on our company network), requiring me to delete the UWP directory (APPX build is broken in HTK v2017.1.1, that is the only workaround I can find), rebuild from scratch, manually use the dev portal to deploy the build (automatic app install has been broken in EVERY HTK version I've used), and then test on Hololens. And because of the abysmal Debug performance I have to test with Release which gives me useless stack traces (not that it is any more useless than WorldAnchorManager's stack traces anyway). WorldAnchorManager should be emulated using PlayerPrefs or something when not on a HoloLens so the developer can better test the functionality.

Honestly if it were up to me I'd deprecate WorldAnchorManager and start from scratch. I think Unity itself is partly to blame though since some of the annoyances come from WorldAnchor (such as being unable to move the GameObjects they are attached to. Why?!?)

@The-MAZZTer, you hit on some really good points!
Let's see what we can do it improve this class.

Yeah sorry if I come across as a little angry, been trying to get WorldAnchors working with some code that was not built with them in mind for the past couple of days.
Also one thing I forgot to mention is that having so much code disabled in the editor makes it more difficult to edit that code in Visual Studio to modify the class. It would be nice if the amount of code removed by #if directives was minimized. For example, anchors should still be queued up (if the queue is being used) but the actual AnchorStore calls should be stubbed out in the editor, or simulated with PlayerPrefs like I suggested.

lol, no worries. I know the frustration.

I should mention I have worked around my issues by making the following modifications to the class (I don't have the code in front of me right now, sorry):

Adding a call to .Update after every .Enqueue on the queue.
Changing .Update's if check on the queue size to a while loop to ensure the entire queue is emptied in one go.

This ensures any call to .AttachAnchor or .RemoveAnchor is immediately executed before the function returns with minimal code modifications, except in the case where AnchorStore is null, in which case the queue will function as normal until AnchorStore is ready and then it will immediately empty.
This is working fine for my purposes. I am not sure about the performance impact of anchor operations so I can't say if I will need the queue further along in development but for now my approach is working. It resolves the following issues from my first list, assuming the AnchorStore is ready when you call Attach/RemoveAnchor:

Stack traces are now useful.
You can write code like the sample I provided above and it works.

Additional changes would be needed to SharingWorldAnchorManager if you're using that class as it overrides .Update. I haven't analyzed it yet, though I will need to use this class eventually.

These would be welcome changes to the WorldAnchorManager. Is it possible to have a callback for when the AnchorStore loads? This way, I could prevent having to do that isLoaded check every time the Update method gets called and maybe I can just load the game objects in the Start method once, for example. Or is there a reason I have to poll that in the Update method? There is already a callback that is used inside the WorldAnchorManager, but isn't exposed from there.

Closing issues older than 180 days. If this is still an issue, please reactivate with recent information.


bug(tests): wait for router to reload before testing config change

Test: "can set and list environment variables"
Jenkins job: https://ci.deis.io/job/workflow-beta1-test-e2e/17/
It looks like we are hitting the app before the router has had a chance to reload, causing a 404:
00:15:33.957   can set and list environment variables
00:15:33.958   /go/src/github.com/deis/workflow-e2e/tests/config_test.go:55
00:15:35.220 $ deis login http://deis.<IP_ADDRESS>.xip.io --username=test-81 --password=asdf1234
00:15:35.273 Logged in as test-81
00:15:35.278 $ deis apps:create test-23966460
00:15:35.464 Creating Application... ...done, created test-23966460
00:15:35.468 Git remote deis added
00:15:35.468 remote available at ssh://git@deis.<IP_ADDRESS>.xip.io:2222/test-23966460.git
00:15:35.478 $ GIT_SSH=/tmp/deis-workflow-home943620212/.ssh/git-ssh git push deis master

[REMOVED]

00:15:46.424 remote: running [git gc] in directory /home/git/test-23966460.git
00:15:46.430 To ssh://git@deis.<IP_ADDRESS>.xip.io:2222/test-23966460.git
00:15:46.430  * [new branch]      master -> master
00:15:46.430 $ deis config:set POWERED_BY=midi-chlorians
00:15:49.709 Creating config... ...o...o...o...o...o...o...done
00:15:49.709
00:15:49.745 === test-23966460 Config
00:15:49.745 POWERED_BY      midi-chlorians
00:15:49.761 $ deis config:list -a test-23966460
00:15:49.793 === test-23966460 Config
00:15:49.793 POWERED_BY      midi-chlorians
00:15:49.803 $ curl -sL "http://test-239664<IP_ADDRESS>.89.xip.io"; echo
00:15:49.874
00:15:49.874 <title>404 Not Found</title>
00:15:49.875
00:15:49.875
404 Not Found

00:15:49.875
nginx/1.9.6
00:15:49.875
00:15:49.875
00:15:49.875

Looking at the router logs, there is a reload, but we immediately see the 404 later in the logs:
[22/Mar/2016:04:35:09 +0000] - <IP_ADDRESS> - - - 201 - "POST /v2/apps/ HTTP/1.1" - 522 - "-" - "Deis Client v2.0.0-dev" - "~^deis\x5C.(?<domain>.+)$" - <IP_ADDRESS>:80 - deis.<IP_ADDRESS>.xip.io - 0.175 - 0.175
2016/03/22 04:35:16 WARNING: Field "router.deis.io/certificates" value "" does not satisfy constraint /(?i)^((([a-z0-9]+(-[a-z0-9]+)*)|((\*\.)?[a-z0-9]+(-[a-z0-9]+)*\.)+[a-z]{2,}):([a-z0-9]+(-[a-z0-9]+)*)(\s*,\s*)?)+$/ -- skipping this field and using default value "map[]".
2016/03/22 04:35:16 INFO: Router configuration has changed in k8s.
2016/03/22 04:35:16 INFO: Reloading nginx...
2016/03/22 04:35:16 INFO: nginx reloaded.
[22/Mar/2016:04:35:23 +0000] - <IP_ADDRESS> - - - 201 - "POST /v2/apps/test-23966460/config/ HTTP/1.1" - 597 - "-" - "Deis Client v2.0.0-dev" - "~^deis\x5C.(?<domain>.+)$" - <IP_ADDRESS>:80 - deis.<IP_ADDRESS>.xip.io - 3.261 - 3.261
[22/Mar/2016:04:35:23 +0000] - <IP_ADDRESS> - - - 200 - "GET /v2/apps/test-23966460/config/ HTTP/1.1" - 585 - "-" - "Deis Client v2.0.0-dev" - "~^deis\x5C.(?<domain>.+)$" - <IP_ADDRESS>:80 - deis.<IP_ADDRESS>.xip.io - 0.033 - 0.034
[22/Mar/2016:04:35:23 +0000] - <IP_ADDRESS> - - - 200 - "GET /v2/apps/test-23966460/config/ HTTP/1.1" - 595 - "-" - "Deis Client v2.0.0-dev" - "~^deis\x5C.(?<domain>.+)$" - <IP_ADDRESS>:80 - deis.<IP_ADDRESS>.xip.io - 0.022 - 0.023
[22/Mar/2016:04:35:23 +0000] - <IP_ADDRESS> - - - 404 - "GET / HTTP/1.1" - 322 - "-" - "curl/7.35.0" - "_" - - - test-239664<IP_ADDRESS>.89.xip.io - - - 0.000

There are further router reloads at (but it is difficult to tell what the router knows about at any given moment):
2016/03/22 04:37:06 INFO: Router configuration has changed in k8s.
2016/03/22 04:39:46 INFO: Router configuration has changed in k8s.
2016/03/22 04:39:56 INFO: Router configuration has changed in k8s.
2016/03/22 04:40:26 INFO: Router configuration has changed in k8s.

I am conflicted b/c I want the tests to be reliable/dependable but I also am hesitant to add too many test 'workarounds' in instances like these because here, for example, the cli has returned and a user would reasonably assume they can begin interacting with it immediately (w/o any wait).  Maybe a compromise would be add this as well as a //TODO to revisit/look into a potential router or other issue? (Specifically around Looking at the router logs, there is a reload, but we immediately see the 404 later in the logs)

I think if we set an application HEALTHCHECK_URL for the app, controller won't return to the calling component until that check passes. Can you verify @helgi
Without a healthcheck we would either need to have controller validate that the app and router are up by guessing.

Setting HEALTHCHECK_URL means we are injecting our own instead of using k8s default ones that "do stuff" (not much really) and longer timeouts and other things are put in place.
Controller will always verify that k8s has green lit all the probes, the default ones or ours.
Right now the controller has no insight into when the router is ready and if that hostname is routable. The router is on a 10 second loop I believe to wait for new namespaces and routable information to come up

Understand the router issue. The only way to fix that is to also have controller hit the app through the router as the final check (most likely to the HEALTHCHECK_URL).
We need to define the no-check behavior for k8s. I'm betting it just leans on Pod state.
I still think HEALTHCHECK_URL in test is a "good idea" (and will push the total loop > 10s so router will have a chance to reload).

Given we ditch the concept of a platform domain as a known entity by Controller then this is not the quickest of fixes. If we can figure out how we want to derive that or if we want to hit the router IP (using xip.io) by querying k8s about it via the controller then that's a doable check and something we used to do in v1.
I'm looking at the no-check behaviour now

Hitting the router svc address with the appropriate Host header would be sufficient.

Yeah, that's fair. Please open up a ticket for it since I do agree it's a good idea, if nothing else than a last check after all of k8s has gone green based on our own checks.

For the no-check version see http://kubernetes.io/docs/user-guide/pod-states/

LivenessProbe: indicates whether the container is live, i.e. still running. The LivenessProbe hints to the kubelet when a container is unhealthy. If the LivenessProbe fails, the kubelet will kill the container and the container will be subjected to it’s RestartPolicy. The default state of Liveness before the initial delay is Success. The state of Liveness for a container when no probe is provided is assumed to be Success.

ReadinessProbe: indicates whether the container is ready to service requests. If the ReadinessProbe fails, the endpoints controller will remove the pod’s IP address from the endpoints of all services that match the pod. Thus, the ReadinessProbe is sometimes useful to signal to the endpoints controller that even though a pod may be running, it should not receive traffic from the proxy (e.g. the container has a long startup time before it starts listening or the container is down for maintenance). The default state of Readiness before the initial delay is Failure. The state of Readiness for a container when no probe is provided is assumed to be Success.

So no probes = assumed state for both is Success

This shouldn't be required anymore if the controller changes are doing their thing

Is this time.Sleep call still needed as a workaround for test stability?

Closing this, probably not needed anymore.


[Feature Request]: Adding "ABOUT US" button in the navbar and creating separate about us page.

Is there an existing issue for this?

[X] I have searched the existing issues

Feature Description
I want to add "about us" button on navbar which is currently not present, that will help user to directly reach the about us page , I also want to create attractive about us page and link it to the navbar button.
please assign this task to me @va
Use Case
this feature will help user to jump directly to the "about " page if they want to read about from the navbar only, now user have to scroll down to reach there.
Benefits
easy navigation to about page for users
Add ScreenShots

Priority
Medium
Record

[X] I have read the Contributing Guidelines
[X] I'm a GSSOC'24 contributor
[X] I have starred the repository

A separate about us page already exists and is linked in the footer. Also, an about section also exists in the homepage so I don't think it is needed to an about us link in navbar.


Overlay breaks the UI on npmjs.com

Edge on Windows Version 120.0.2210.91 (Official build) (64-bit)

I can take this issue :)


User Status invalid after Impersonate

I, as a site admin, am using impersonation (masquerade) in order to quickly log in as another user, without having to know their password.
https://dweldon.silvrback.com/impersonating-a-user
This is very handy, and the status shows that the person I log in as is now online.
But when I restore myself to my admin account (by doing a shift-reset), the status of the person I logged in as remains online, until they later log in and out. How would I make its status refresh automatically and return to offline?

Hello @dpatte ,
Thank you for report, this lib was far away from up-to-date.
I've updated library. Please, update it on your end, described issue should be solved, let me know after testing on your end, thank you.

Hi @dpatte
Let me know if latest update solved this issue, and we can close this ticket

Unfortunately I am on M <IP_ADDRESS> and cannot seem to update to your latest version

@dpatte well,
Clone this repository into meteorProj/packages directory, and change this line to meet your Meteor version

Busy week, but I'll definitely try that soon and get back to you.

Hello @dpatte ,
Any news on your end?

Tried it last night, but no difference. I suspect it is because cancelling an impersonate is done by Shift-refresh which doesn't trigger the offline functionality.

This lib has two levels to turn user from online to offline status:

On Client if page closed, when user logged out or when connection to server via WebSockets is broken
On server when user logged out or when WebSockets connection is closed

Closed due to silence at issue owner end.
Feel free to reopen it in case if the issue still persists on your end.


Make Participation API Consistent and Use Fewer Calls

Is your feature request related to a problem? Please describe.
We're building a third-party service (https://github.com/benbals/pretix-fsr-validation) that want's to verify if a user (identified by email) has at least one shift in a specified  "event" (though our event consists of multiple ephios events). This has to happen on page load in our application and thus must be fast not to negatively impact user experience.
Currently that takes at least but potentially arbitrarily many requests against your API (one to swap an email address to a ephios id which is used nowhere else and potentially arbitrarily many to find a relevant participation in the non-filterable list).
Also, the current API is inconsistent. As a developer, if the routes
/users/me/
/users/{id}/
/users/by_email/{email}
/users/{id}/participations

exist, I would expect the routes
/users/me/participations
/users/by_email/{email}/participations

to exist as well. As it is right now, the routes are confusing because they have intransparent "holes" in them.
Describe the solution you'd like
Provide the routes
/users/me/participations
/users/by_email/{email}/participations

Describe alternatives you've considered

If ephios doesn't have these routes and I'd be forced to slow down user facing page loads by realistically 200ms-600ms without need, I'd likely rather just expose the database to my application and perform SQL requests instead of using the API.
I could maintain a fork that includes the APIs we need to make our infrastructure work together well. We've done this with the Engelsystem (https://github.com/fsr-de/engelsystem) for a while and would like to move away from that, but imo not at the price of UX.

Additional context

E-Mail addresses are unique by your database schema so forcing external users to use and keep track of your internal primary keys seems unnatural and is cumbersome for developers who most likely identify users they are interested in by the only other format you accept: email addresses.

This is a follow-up to #1222 as in my view as the developer of indented first consumer of the API @jeriox proposed, the implementation does not solve our use case without degrading user experience in a way I'd rather hack around then accept.

Hey Ben,
we know our API is not fully fledged and all, but we are transparent about available endpoints with the (auto-generated) documentation.
I do consider an id the better identifier, as email addresses in ephios can change. IDs are also what you get for every other data type in our API. It's just common practice.
I understand you don't want any extra steps or asynchronous calls in your pretix plugin. I timed requests to the users/id/participations endpoint on our production infra and it takes well under 100ms for a user with 5 participations (so that's the added delay with having to make a second call), and that's via the internet, not to a local server!
I do agree filters could make the new endpoints more useful, although it would not speed up your upcoming deployment situation as there are not many "old" participations that would mean you'd need to paginate.
If, having said all that, you're still unhappy with the endpoints currently offered, you always have the option to provide your own custom endpoint using an ephios plugin, no need to run your own fork!

I do consider an id the better identifier, as email addresses in ephios can change.

This argument only holds if the external user is using your internal pk as their user identifier, which, at least for our use case that's non-sensical. I also find that the "I have a user on my end and I want to find them in ephios" use case is likely generally relevant, but you know your user base better.

IDs are also what you get for every other data type in our API. It's just common practice.

By common practise you mean inside your API? Because generally my understanding is that having inconsistent sub-routes  is a REST anti-pattern. (i.e., if /a returns the same object as /b, then /a/c should return the same object as /b/c).

I do agree filters could make the new endpoints more useful, although it would not speed up your upcoming deployment situation as there are not many "old" participations that would mean you'd need to paginate.

Right now, that's true. But one of our (if not the main) motivation to switch away from the Engelsystem is not to have to do one-shot deployments, that can only handle a single event. So while this might be true right now, this is not necessarily true indefinitely. Also the added code complexity would need to be implemented now to avoid running into weird bugs where the check fails for users with many participations in the future. This is especially the case since to optimise network latency, my ideal scenario would include setting limit to one on the request.

If, having said all that, you're still unhappy with the endpoints currently offered, you always have the option to provide your own custom endpoint using an ephios plugin, no need to run your own fork!

Yeah, if this doesn't land in core, then I'll guess we do that though I don't like it from a maintenance overhead perspective (especially after @jeriox and me leave).

I understand you don't want any extra steps or asynchronous calls in your pretix plugin. I timed requests to the users/id/participations endpoint on our production infra and it takes well under 100ms for a user with 5 participations (so that's the added delay with having to make a second call), and that's via the internet, not to a local server!

I've tested this both against other endpoints on our production deployment and against these endpoints locally and cannot replicate this low latency. Over the network, it's around 200ms per request.
Also I disagree with assessment that they are 'asynchronous'. They might be technically be true from a whole-server perspective, but from the perspective of a single handled request they are both sequential and blocking.

Tbh the only arguments you mentioned against implementing this are

it might encourage "down data-stream" API consumers to rely on the wrong user identifier
it's only a medium amount of annoyance to work around this

Or am I missing something?

we decided on keeping the endpoints as they are and implemented filters in #1249


removed IndexedShop

as said in #50

Could you please add a test so that we can make sure cloneIndexedLens does the right thing when applied to a value with over, for example?

Thanks!

I've modified the test a bit since I couldn't quite follow what it was doing before.


Revert "Delete flaky flutter_gallery XCUITest"

Reverts flutter/flutter#103666
Missed a file https://logs.chromium.org/logs/flutter/buildbucket/cr-buildbucket/8814261726166927201/+/u/run_native_ui_tests_ios/test_stderr

Landing this TBR @jmagman or @justinmc as this is at the tip of the tree and to green the tree

Oh, I guess I can't land it TBR

Would prefer to fix forward https://github.com/flutter/flutter/pull/103727


Freeze isn't working in version 1.0.12.

Bug Description
When activating the freeze, components that were supposed to be stopped are still running.
In this case, the file loader and the text split run every time I hit play on the Chroma DB.
Reproduction
Use the freeze feature in a component
The component still run
Expected behavior
The component that is selected to be frozen, should not be running.
Who can help?
@ano
Operating System
Ubuntu Linux 22.04
Langflow Version
1.0.12
Python Version
3.10

just tried on latest main version and it seems to work properly


Stretched Tiles on Leaflet & MapLibre for non-square tiles

The Tile Cutter for "image pyramids" from Zoomable.ca has zoomify tile support.  When cutting tiles for JPEG, the Zoomable tool creates non-square tiles.  This typically happens around the edges of the input image.  As well, JPEG images do not have a transparency layer.
Using the Zoomify Tile Service
This properly displays the San Diego map that was tile cut by the Zoomable.ca plugin for Photoshop.

https://roblabs.com/maps-for-non-profits/Sierra-Club-San-Diego/zoomable/zoomable

Zoomable also has a service that allows you to upload a file

https://srv2.zoomable.ca/viewer.php?i=img73ef7e990ae87e9f_Sierra_Club_San_Diego_192

Same Tiles Rendered with Leaflet & MapLibre
These map rendering SDKs expect square tiles usually 256x256 or 512x512 for rendering raster images.

https://roblabs.com/maps-for-non-profits/Sierra-Club-San-Diego/zoomable/leaflet#2/40.3/-20.4
https://roblabs.com/maps-for-non-profits/Sierra-Club-San-Diego/zoomable/maplibre#1.19/-24.2/-140

Wish List for Zoomable output

PNG with transparency
512x512 output to support

Wish List for Leaflet & MapLibre

a way to suppress the tile stretching for non-square tiles

Screenshot of rendering in Leaflet

The original map for the Sierra Club of San Diego

Leaflet method to display image files without Geographic coordinates
Set bounds based on an image dimensions, and use L.CRS.Simple.

Leaflet L.CRS.Simple

[✅] Uses Simple CRS

[✅] No need to tile cut.  Simply URL link image resource & compute Bounds

[✅] Supports JPEG, PNG

Example from JakeCoolidgeCartography.com

[ ] Requires code to compute Width × Height, e.g, 3300 × 2550 for an 8½ × 11 map.

[ ] Alternatively use a JSON data file similar to ImageProperties.xml

[ ] Each map will need need a proper zoom set (e.g., set to a known first feature that you would want the customer to see)

Map demo: Use Leaflet L.imageOverlay
Map demo: Zoom to Pacific Beach 92109

[❌] Entire image is downloaded to browser memory; a slight disadvantage compared tile cutting.  Compare for your customer experience if Leaflet imageLayer adds value over tile cutting.


Fix css issues

Remove unnecessary code and fix some css issue.

So, this issue should close.

@mahedee bhai, You can review the PR by clicking the  Files changed tab and clicking the Review changes button.

Modification done


Flag dangerouslyIgnoreUnhandledErrors is ignored in workspaces

Describe the bug
The flag dangerouslyIgnoreUnhandledErrors seems to be totally ignored when running tests using the workspace setup, while it gets taken into account for the out-of-workspace setup.
Reproduction
The reproduction is available at repository with minimal reproduction.
It comes with two distinct directories:

local - comes with a classical setup without any workspace
workspace - comes with the same configuration but via a workspace setup

Each setup is defined for dangerouslyIgnoreUnhandledErrors: true but the workspace one ignores it totally.
You can compare the two by running:
npm ci
npm run repro
# prints success in local but not in workspace

System Info
System:
    OS: Linux 6.5 Ubuntu 20.04.6 LTS (Focal Fossa)
    CPU: (2) x64 Intel(R) Xeon(R) Platinum 8370C CPU @ 2.80GHz
    Memory: 5.55 GB / 7.74 GB
    Container: Yes
    Shell: 5.0.17 - /bin/bash
  Binaries:
    Node: 20.17.0 - ~/nvm/current/bin/node
    Yarn: 1.22.22 - /usr/bin/yarn
    npm: 10.8.2 - ~/nvm/current/bin/npm
    pnpm: 9.11.0 - ~/nvm/current/bin/pnpm
  npmPackages:
    vitest: ^2.1.8 => 2.1.8

Used Package Manager
npm
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

This option has a "star" in the documentation (https://vitest.dev/config/#dangerouslyignoreunhandlederrors) meaning you cannot use it in your project config, it needs to be defined in the root config

All configuration options that are not supported inside a workspace project config have * sign next to them.

Sorry for the ping then.


cmd/link: cgo_import_dynamic with internal linking provides wrong symbol

What version of Go are you using (go version)?

$ go version
go version go1.21rc2 darwin/arm64

Does this issue reproduce with the latest release?
Yes
What operating system and processor architecture are you using (go env)?
go env Output
$ go env
GO111MODULE='on'
GOARCH='arm64'
GOBIN=''
GOCACHE='/Users/jarrettkuklis/Library/Caches/go-build'
GOENV='/Users/jarrettkuklis/Library/Application Support/go/env'
GOEXE=''
GOEXPERIMENT=''
GOFLAGS=''
GOHOSTARCH='arm64'
GOHOSTOS='darwin'
GOINSECURE=''
GOMODCACHE='/Users/jarrettkuklis/go/pkg/mod'
GONOPROXY=''
GONOSUMDB=''
GOOS='darwin'
GOPATH='/Users/jarrettkuklis/go'
GOPRIVATE=''
GOPROXY='https://proxy.golang.org,direct'
GOROOT='/Users/jarrettkuklis/go/go1.21rc2'
GOSUMDB='sum.golang.org'
GOTMPDIR=''
GOTOOLCHAIN='auto'
GOTOOLDIR='/Users/jarrettkuklis/go/go1.21rc2/pkg/tool/darwin_arm64'
GOVCS=''
GOVERSION='go1.21rc2'
GCCGO='gccgo'
AR='ar'
CC='clang'
CXX='clang++'
CGO_ENABLED='1'
GOMOD='/Users/jarrettkuklis/Documents/GolandProjects/purego/go.mod'
GOWORK=''
CGO_CFLAGS='-O2 -g'
CGO_CPPFLAGS=''
CGO_CXXFLAGS='-O2 -g'
CGO_FFLAGS='-O2 -g'
CGO_LDFLAGS='-O2 -g'
PKG_CONFIG='pkg-config'
GOGCCFLAGS='-fPIC -arch arm64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -ffile-prefix-map=/var/folders/kw/8msl9lzx7wbdbq4xxtz3rhvr0000gn/T/go-build3905000783=/tmp/go-build -gno-record-gcc-switches -fno-common'
GOROOT/bin/go version: go version go1.21rc2 darwin/arm64
GOROOT/bin/go tool compile -V: compile version go1.21rc2
uname -v: Darwin Kernel Version 22.5.0: Thu Jun  8 22:22:20 PDT 2023; root:xnu-8796.121.3~7/RELEASE_ARM64_T6000
ProductName:		macOS
ProductVersion:		13.4.1
BuildVersion:		22F82
lldb --version: lldb version 16.0.1

What did you do?

Run the following code with command:
go run -trimpath -gcflags="-std" -ldflags="-linkmode internal" main.go
package main

import (
	"fmt"
	"unsafe"
)

//go:linkname __NSDefaultRunLoopMode NSDefaultRunLoopMode
//go:cgo_import_dynamic NSDefaultRunLoopMode NSDefaultRunLoopMode "Cocoa.framework/Cocoa"
//go:cgo_import_static NSDefaultRunLoopMode
var __NSDefaultRunLoopMode byte
var NSDefaultRunLoopMode = (*struct{ _ uintptr })(unsafe.Pointer(&__NSDefaultRunLoopMode))

func main() {
	fmt.Printf("%#x\n", unsafe.Pointer(NSDefaultRunLoopMode)) // Show pointer address
	fmt.Printf("%x\n", NSDefaultRunLoopMode)                  // Dereference struct
}

What did you expect to see?
Program run without issue with output similar to what you get from external linking.
$ go run -trimpath -gcflags="-std" -ldflags="-linkmode external" main.go
0x1eb3299f8
&{1ed12dc58}

What did you see instead?
Program crashed when dereferencing the pointer.
$ go run -trimpath -gcflags="-std" -ldflags="-linkmode internal" main.go
0x2d2c000
unexpected fault address 0x2d2c000
fatal error: fault
[signal SIGSEGV: segmentation violation code=0x2 addr=0x2d2c000 pc=0x102d8a0e8]

goroutine 1 [running]:
runtime.throw({0x102db47b0?, 0x0?})
        runtime/panic.go:1077 +0x40 fp=0x14000094710 sp=0x140000946e0 pc=0x102d5bd20
runtime.sigpanic()
        runtime/signal_unix.go:875 +0x22c fp=0x14000094770 sp=0x14000094710 pc=0x102d7152c
runtime.memmove()
        runtime/memmove_arm64.s:57 +0x48 fp=0x14000094780 sp=0x14000094780 pc=0x102d8a0e8
runtime.typedmemmove(0x8?, 0x102de4560?, 0x1?)
        runtime/mbarrier.go:166 +0x64 fp=0x140000947b0 sp=0x14000094780 pc=0x102d3c144
reflect.typedmemmove(0x14000094818?, 0x102d36b24?, 0x0?)
        runtime/mbarrier.go:206 +0x1c fp=0x140000947e0 sp=0x140000947b0 pc=0x102d84b7c
reflect.packEface({0x102de4560?, 0x2d2c000?, 0x0?})
        reflect/value.go:135 +0x58 fp=0x14000094830 sp=0x140000947e0 pc=0x102d98198
reflect.valueInterface({0x102de4560?, 0x2d2c000?, 0x140000948e8?}, 0x90?)
        reflect/value.go:1520 +0xa8 fp=0x14000094870 sp=0x14000094830 pc=0x102d99cc8
reflect.Value.Interface(...)
        reflect/value.go:1490
fmt.(*pp).printValue(0x140000a6410, {0x102de4560?, 0x2d2c000?, 0x102dde680?}, 0x78, 0x1)
        fmt/print.go:769 +0x68 fp=0x14000094a90 sp=0x14000094870 pc=0x102db0d18
fmt.(*pp).printValue(0x140000a6410, {0x102dde680?, 0x2d2c000?, 0x102d9eb30?}, 0x78, 0x0)
        fmt/print.go:923 +0x9f8 fp=0x14000094cb0 sp=0x14000094a90 pc=0x102db16a8
fmt.(*pp).printArg(0x140000a6410, {0x102dde680?, 0x2d2c000}, 0x78)
        fmt/print.go:759 +0x664 fp=0x14000094d50 sp=0x14000094cb0 pc=0x102db0c34
fmt.(*pp).doPrintf(0x140000a6410, {0x102db45c7, 0x3}, {0x14000094f08?, 0x1, 0x1})
        fmt/print.go:1077 +0x2dc fp=0x14000094e60 sp=0x14000094d50 pc=0x102db33cc
fmt.Fprintf({0x102df2d68, 0x140000a2000}, {0x102db45c7, 0x3}, {0x14000094f08, 0x1, 0x1})
        fmt/print.go:224 +0x54 fp=0x14000094ec0 sp=0x14000094e60 pc=0x102dade54
fmt.Printf(...)
        fmt/print.go:233
main.main()
        ./main.go:16 +0xa8 fp=0x14000094f30 sp=0x14000094ec0 pc=0x102db42b8
runtime.main()
        runtime/proc.go:267 +0x2bc fp=0x14000094fd0 sp=0x14000094f30 pc=0x102d5e58c
runtime.goexit()
        runtime/asm_arm64.s:1197 +0x4 fp=0x14000094fd0 sp=0x14000094fd0 pc=0x102d89834

goroutine 2 [force gc (idle)]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
        runtime/proc.go:398 +0xc8 fp=0x14000042f90 sp=0x14000042f70 pc=0x102d5e9b8
runtime.goparkunlock(...)
        runtime/proc.go:404
runtime.forcegchelper()
        runtime/proc.go:322 +0xb8 fp=0x14000042fd0 sp=0x14000042f90 pc=0x102d5e848
runtime.goexit()
        runtime/asm_arm64.s:1197 +0x4 fp=0x14000042fd0 sp=0x14000042fd0 pc=0x102d89834
created by runtime.init.6 in goroutine 1
        runtime/proc.go:310 +0x24

goroutine 3 [GC sweep wait]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
        runtime/proc.go:398 +0xc8 fp=0x14000043760 sp=0x14000043740 pc=0x102d5e9b8
runtime.goparkunlock(...)
        runtime/proc.go:404
runtime.bgsweep(0x0?)
        runtime/mgcsweep.go:280 +0xa0 fp=0x140000437b0 sp=0x14000043760 pc=0x102d4bdc0
runtime.gcenable.func1()
        runtime/mgc.go:200 +0x28 fp=0x140000437d0 sp=0x140000437b0 pc=0x102d40b18
runtime.goexit()
        runtime/asm_arm64.s:1197 +0x4 fp=0x140000437d0 sp=0x140000437d0 pc=0x102d89834
created by runtime.gcenable in goroutine 1
        runtime/mgc.go:200 +0x6c

goroutine 4 [GC scavenge wait]:
runtime.gopark(0x1400005a000?, 0x102dd3690?, 0x1?, 0x0?, 0x14000003040?)
        runtime/proc.go:398 +0xc8 fp=0x14000043f50 sp=0x14000043f30 pc=0x102d5e9b8
runtime.goparkunlock(...)
        runtime/proc.go:404
runtime.(*scavengerState).park(0x102e61a60)
        runtime/mgcscavenge.go:425 +0x5c fp=0x14000043f80 sp=0x14000043f50 pc=0x102d4962c
runtime.bgscavenge(0x0?)
        runtime/mgcscavenge.go:653 +0x44 fp=0x14000043fb0 sp=0x14000043f80 pc=0x102d49b84
runtime.gcenable.func2()
        runtime/mgc.go:201 +0x28 fp=0x14000043fd0 sp=0x14000043fb0 pc=0x102d40ab8
runtime.goexit()
        runtime/asm_arm64.s:1197 +0x4 fp=0x14000043fd0 sp=0x14000043fd0 pc=0x102d89834
created by runtime.gcenable in goroutine 1
        runtime/mgc.go:201 +0xac

goroutine 17 [finalizer wait]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
        runtime/proc.go:398 +0xc8 fp=0x1400003e580 sp=0x1400003e560 pc=0x102d5e9b8
runtime.runfinq()
        runtime/mfinal.go:193 +0x108 fp=0x1400003e7d0 sp=0x1400003e580 pc=0x102d3fc08
runtime.goexit()
        runtime/asm_arm64.s:1197 +0x4 fp=0x1400003e7d0 sp=0x1400003e7d0 pc=0x102d89834
created by runtime.createfing in goroutine 1
        runtime/mfinal.go:163 +0x80
exit status 2

additional information
If cgo_import_dynamic uses the one argument version the linker produces an undefined symbol.
# command-line-arguments
main.NSDefaultRunLoopMode: relocation target NSDefaultRunLoopMode not defined

Of course, the std flag is only kept in both to limit the number of differences and doesn't affect the output. This issue affects purego#114.

To be clear, the //go:cgo_import_dynamic and //go:cgo_import_static directives are not documented and are not supported in user code.  We do not support code that uses them.

To be clear, the //go:cgo_import_dynamic and //go:cgo_import_static directives are not documented

I thought their documentation was found at cmd/cgo/doc.go?

and are not supported in user code. We do not support code that uses them.

I understand they are not supported in user code. However, they are used in the runtime and packages like golang.org/x/sys/unix which may be affected by this issue.

Currently, on macOS we only support cgo_import_dynamic for functions that are directly called. We don't yet support variables or taking address of a function. CL https://golang.org/cl/501855 may help. (Even with that, it probably only works if the code is written in a specific way.)
As @ianlancetaylor said, generally we don't support it in user code. We do handle the use cases that the runtime and syscall packages need. If you believe that is handled incorrectly, please file a specific issue for that. Thanks.

To be clear, the //go:cgo_import_dynamic and //go:cgo_import_static directives are not documented

I thought their documentation was found at cmd/cgo/doc.go?

True.  I meant that they aren't publicly documented.  The documentation in cmd/cgo/doc.go is in a comment that describes the implementation but is not part of the user visible docs (https://pkg.go.dev/cmd/cgo).


Reconsider defensive-style implementation

E.g. when every function checks the input parameters.

One thing that comes to my mind about defensive programming, especially argument checking, is this: Is the error checking code checking for a bug in the programmer's code? (Either SAIL's code or the code that's using SAIL.) If so, then the error check should most likely be an assertion that immediately terminates the program if it fails. Otherwise it'll make bugs harder to fix, rather than easier.
My reasoning behind that is this: If a programmer doesn't expect a particular function to fail with the input they give to it, they won't do error checking. Suppose now that the programmer wrote a bug and passed incorrect arguments - a "defensive style" function will realize that and abort the operation, possibly returning an error code. That means an immediate crash has been avoided - but the code that called the function will be thoroughly confused because one of its vital operations just didn't take place. That, in turn, is going to corrupt the program's state and possibly make it crash later (or worse, silently corrupt some data).
In my opinion, if a function has the opportunity to (easily) validate some input data or check the integrity of a data structure, it should do so. However, if the validation fails, it shouldn't return an error code but instead crash as early as possible. No error handling, no cleanup, nothing - just a plain "if this assertion doesn't hold, the program is already broken and going to crash anyway. Crash it now to make finding the bug easier (= call abort())." The programmer can then easily place a breakpoint on the abort function and see the exact point in time where the program messed up instead of having to trace backwards through the code.
If the programmer realizes that an invalid argument / invalid state like this can occur naturally in their program and isn't a bug, they can still validate the arguments manually before they call the function. That way, it's made explicit in their code.
Assertions also have the advantage that they can be disabled if maximum performance is desired. This could either be a compile-time configuration or a runtime setting. Given that SAIL is a library that's intended to be shipped in binary form with headers, a runtime setting probably makes the most sense. That could be as simple as a sail_disable_expensive_assertions() function that the user can call if they want more performance. Cheap checks like bounds/null checks probably shouldn't be disabled either way: CPUs are so good at speculative execution that such checks are literally free. The check is just going to be done on an otherwise-idle resource (i.e. ALU) and the branch will always be predicted correctly (because it always goes the same way).
Of course, if a particular error condition can be caused by user input (i.e. a malformed image), that should still be detected and reported via error codes since it doesn't imply that there's a bug in the program. The program is expected to handle this kind of error.
TL;DR: Try to detect bugs, but don't try to "correct" them silently. Instead, crash the program immediately with a descriptive message so that the programmer can fix them.

Thanks 👍 Absolutely great investigation. My 2 cents. We can avoid using abort and naturally crash. Segfaults are easily detectible. Even more, nowadays it's easy to detect any memory-related issue with ASAN if the user wants to. So we don't pollute the code with abort.

I recently committed a couple of changes to defensive functions. See https://github.com/search?q=defensive+user%3AHappySeaFox&type=Commits .
If you have more functions in mind that can be made non-defensive, please let me know.


Update open zeppelin account contracts

The contract code for account contracts is 2 month old :) Couple of things have changed since then, can we please make sure to pull in the latest version of https://github.com/OpenZeppelin/cairo-contracts/blob/main/src/openzeppelin/account/Account.cairo ?
Blocking starknet.js tests

I thought we are using the latest released version (v0.1.0): https://github.com/OpenZeppelin/cairo-contracts/releases
And I saw a recommendation on Discord not to use the latest version from the main branch, if that's what you mean.

Latest version from main is fine, and it's de facto what's deployed everywhere else :)
I think you should update to it, or provide a possibility for the devnet user to provide his own account contract Cairo file which then gets used as the redeployed accounts


E: Unable to locate package js-of-ocaml

Hi, I'm a beginner so I apologize in advance if this question doesn't make sense.
When I try to execute sudo apt-get install ocaml ocaml-findlib camlp4 js-of-ocaml I get E: Unable to locate package js-of-ocamlon my Ubuntu 18.04.
I tried:
sudo apt-get install opam
opam init
opam switch 4.02.3
opam install js_of_ocaml

But when I execute make I get:
ocamlbuild -no-links -use-ocamlfind -tag annot factoriojs.byte
make: ocamlbuild: Command not found
Makefile:36: recipe for target '_build/factoriojs.byte' failed
make: *** [_build/factoriojs.byte] Error 127
EDIT: Fixed above by sudo apt install ocamlbuild
ocamlbuild -no-links -use-ocamlfind -tag annot factoriojs.byte
+ ocamlfind ocamldep -package js_of_ocaml.syntax -syntax camlp4o -package js_of_ocaml -modules factoriojs.ml > factoriojs.ml.depends
ocamlfind: Package `js_of_ocaml.syntax' not found
Command exited with code 2.
Compilation unsuccessful after building 1 target (0 cached) in 00:00:00.
Makefile:36: recipe for target '_build/factoriojs.byte' failed
make: *** [_build/factoriojs.byte] Error 10
When I rerun opam install js_of_ocaml I get [NOTE] Package js_of_ocaml is already installed (current version is 3.2.0).
EDIT: Fixed above using opam install js_of_ocaml-camlp4
When I run make I get:
ocamlbuild -no-links -use-ocamlfind -tag annot factoriojs.byte
+ ocamlfind ocamlc -c -g -annot -package js_of_ocaml.syntax -syntax camlp4o -package js_of_ocaml -o factoriojs.cmo factoriojs.ml
File "factoriojs.ml", line 115, characters 33-53:
Error: Unbound value Char.lowercase_ascii
Command exited with code 2.
Compilation unsuccessful after building 8 targets (0 cached) in 00:00:01.
Makefile:36: recipe for target '_build/factoriojs.byte' failed
make: *** [_build/factoriojs.byte] Error 10

Any help would be appreciated. Thanks!

Hello! Sorry for the late answer, for some reason I missed the notification.
I'm not sure why js-of-ocaml is not available on Ubuntu, but you figured that using opam solved the problem, so that's good.
Regarding the Char.lowercase_ascii issue, see: https://github.com/doomeer/factorio/issues/60
Basically, please upgrade to OCaml 4.03 at least (but the latest 4.07 should be fine as well I think).


Text appearing twice after using render::draw_text_string and render::draw_text_wchar

If you place the text as an example to a players head's location the text is visible on the players head where it is supposed be but when you rotate 180 degrees you can see the text just levitating.

Thats not issue, most likely ur missing dormant checks

There are dormant checks and it is literally drawing it exactly 180 degrees from the position where it is supposed to be.

that's problem related to your code, most likely dormant fade or something, it's working completely fine for me.
also, I can't help u without any code provided


Add python client libraries upgrade

Add python client libraries upgrade required for chapter 4

I meant to add --upgrade to the pip install. I'll close this and do it directly.


BF: optionally install ioctl dependency

ioctl install fails on CentOS7 aborting the whole npm install
process. Adding it as an optional depedency allow npm to continue
if the dependency install fails.
Fix #61

👍

👍

Doesn't this impact data durability guarantees? Why not install gcc-c++ in the build environment to get the ioctl package to build?

This change is to make sure npm install does not fail for open source users or other environments that are outside our control.

Hmm... I'm honestly quite worried about this. I assume the use of dirsync is there to ensure storage reliability. Given this change, data durability is de facto depending on the availability of a C++ compiler at package build time. As such, one can 'silently' end up with an S3Server that can lose data (in some crash scenarios).
Honestly, I don't think depending on a C++ compiler being available in a NodeJS build environment is such a stretch (any other native/Gyp module would need it), and it's a fairly standard system dependency.
Finally, there may be another solution for this problem which could even be preferable: not use dirsync at all, and get the same reliability guarantees by only using only plain POSIX calls, basically fsyncing parent directories after entry creations. This would also increase portability to file systems that don't support dirsync (which is only ext4, on Linux, if I'm not mistaken, though I can't validate that claim right now).
Nicolas
On Jun 18, 2016 01:39, Rahul Padigela<EMAIL_ADDRESS>wrote:This change is to make sure npm install does not fail for open source users or other environments that are outside our control.
—You are receiving this because you commented.Reply to this email directly, view it on GitHub, or mute the thread.
!DSPAM:1,57648bbf197659373338385!

Sure, we could explore alternative solutions without having to rely on this module.
For now npm install does throw a good stack trace mentioning the lack c++ compiler in the environment. If the user choses not to install c++ and run npm install again, we show a warning mentioning the corner case whenever the server is started up.

@NicolasT doesn't fsync'ing parent directories mean actually using the actual fd-to-be-synced for all the relevant operations? This would require reimplementing a lot of node's fs module in a native module.

@RachedBenMustapha I'm not sure I understand the question :smiley:
> fs.mkdirSync('demo', 0755);
undefined
> var fd = fs.openSync('demo', 'r');
undefined
> fd
14
> fs.fsyncSync(fd);
undefined
> fs.clo
fs.close      fs.closeSync

> fs.closeSync(fd);
undefined

Also, there's no need to fsync


Inflexible Layout in Stepper Widget: Unable to Set Margin and Padding

The current implementation of the Stepper widget in Flutter lacks flexibility when it comes to setting margin and padding. The layout structure of Stepper is rigid, making it challenging for developers to customize the widget's appearance according to their design needs. Specifically, developers are unable to pass arguments for horizontal margin and padding, restricting the widget's versatility.

  children: <Widget>[
    Material(
      elevation: widget.elevation ?? 2,
      // TODO: Allow Users to pass an argument of the horizontal margin
      child: Container(
        margin: const EdgeInsets.symmetric(horizontal: 24.0),
        child: Row(
          children: children,
        ),
      ),
    ),
    Expanded(
      child: ListView(
        physics: widget.physics,
        // TODO: Allow Users to pass an argument of padding
        padding: const EdgeInsets.all(24.0),
        children: <Widget>[
          AnimatedSize(
            curve: Curves.fastOutSlowIn,
            duration: kThemeAnimationDuration,
            child: Column(
                crossAxisAlignment: CrossAxisAlignment.stretch,
                children: stepPanels),
          ),
          _buildVerticalControls(widget.currentStep),
        ],
      ),
    ),
  ],
);

Hi @qinyanjuidavid. Thanks for proposing this. I see there is an open proposal describing this https://github.com/flutter/flutter/issues/135146. Kindly follow up on this for updates. Closing this in favor of the already open one, if you disagree please comment and I’ll reopen this.
Thank you!


Debug log share improvements

The Plex app for iOS allows the user to select the verbosity of the log files and share them through the native share extension (airdrop log sharing is very nice). The logs are also automatically sanitized and partially anonymized for immediate public sharing. Perhaps that can be another option the user can choose before sharing the log file.
The shared log files come in a zip file. This could be very useful in addition to the normal bug report or rage shake methods as it opens up the opportunity for the community developers to be more active when reporting issues or submitting bug fixes.
Potentially similar to #1836.

Yeah I would say this is basically a duplicate of #1836, would you add this as a comment there?

Sure thing.


Unable to load DLL 'libwkhtmltox' or one of its dependencies

Request ID: System.AggregateException: One or more errors occurred. (Unable to load DLL 'libwkhtmltox' or one of its dependencies: The specified module could not be found. (Exception from HRESULT: 0x8007007E)) ---> System.DllNotFoundException: Unable to load DLL 'libwkhtmltox' or one of its dependencies: The specified module could not be found. (Exception from HRESULT: 0x8007007E)
at DinkToPdf.WkHtmlToXBindings.wkhtmltopdf_init(Int32 useGraphics)
at DinkToPdf.PdfTools.Load()
at DinkToPdf.BasicConverter.Convert(IDocument document)
at DinkToPdf.SynchronizedConverter.<>n__0(IDocument document)
at DinkToPdf.SynchronizedConverter.<>c__DisplayClass5_0.b__0()
at System.Threading.Tasks.Task1.InnerInvoke()  at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)  --- End of stack trace from previous location where exception was thrown ---  at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot)  --- End of inner exception stack trace ---  at DinkToPdf.SynchronizedConverter.Invoke[TResult](Func1 delegate)
at DinkToPdf.SynchronizedConverter.Convert(IDocument document)
at GymCore.Controllers.RegistrationController.CreatePDF(Int32 regno) in C:\Users\UDN002\Desktop\GymCore\GymCore\Controllers\RegistrationController.cs:line 489
at Microsoft.AspNetCore.Mvc.Internal.ActionMethodExecutor.TaskOfIActionResultExecutor.Execute(IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)
at System.Threading.Tasks.ValueTask1.get_Result()  at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.InvokeActionMethodAsync()  at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.InvokeNextActionFilterAsync()  at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Rethrow(ActionExecutedContext context)  at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)  at Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker.InvokeInnerFilterAsync()  at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeNextResourceFilter()  at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.Rethrow(ResourceExecutedContext context)  at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)  at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeFilterPipelineAsync()  at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeAsync()  at Microsoft.AspNetCore.Builder.RouterMiddleware.Invoke(HttpContext httpContext)  at Microsoft.AspNetCore.Session.SessionMiddleware.Invoke(HttpContext context)  at Microsoft.AspNetCore.Session.SessionMiddleware.Invoke(HttpContext context)  at Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware.Invoke(HttpContext context)  at Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddleware.Invoke(HttpContext context)  ---> (Inner Exception #0) System.DllNotFoundException: Unable to load DLL 'libwkhtmltox' or one of its dependencies: The specified module could not be found. (Exception from HRESULT: 0x8007007E)  at DinkToPdf.WkHtmlToXBindings.wkhtmltopdf_init(Int32 useGraphics)  at DinkToPdf.PdfTools.Load()  at DinkToPdf.BasicConverter.Convert(IDocument document)  at DinkToPdf.SynchronizedConverter.<>n__0(IDocument document)  at DinkToPdf.SynchronizedConverter.<>c__DisplayClass5_0.<Convert>b__0()  at System.Threading.Tasks.Task1.InnerInvoke()
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location where exception was thrown ---
at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot)<---
Still facing the issue can you please help :
I have set the properties of libwkhtmltox.dll

I tried the both the both debug & release.
I'm stuck please help

What you might be experiencing could be a misleading error message, if you don't have the VSRedist 2015 package installed on the machine/server.
You could try using my powershell module to detect/silently install the redistributable package: PowershellVsRedistInstaller
You can also just check the powershell code to find where to check in the registry or check where to download the files.

Hello, Check the answer from here.
https://stackoverflow.com/questions/55430532/dinktopdf-net-core-not-able-to-load-dll-files.
I used that and it worked very well.

In my case it is working in local but when I'm trying to publish in azure its throwing the following error and failing the whole application
An error occurred while starting the application.
DllNotFoundException: Unable to load DLL 'D:\home\site\wwwroot\bin\Debug\netcoreapp2.0\libwkhtmltox': The specified module could not be found. (Exception from HRESULT: 0x8007007E)
System.Runtime.Loader.AssemblyLoadContext.InternalLoadUnmanagedDllFromPath(string unmanagedDllPath)
DllNotFoundException: Unable to load DLL 'D:\home\site\wwwroot\bin\Debug\netcoreapp2.0\libwkhtmltox': The specified module could not be found. (Exception from HRESULT: 0x8007007E)
System.Runtime.Loader.AssemblyLoadContext.InternalLoadUnmanagedDllFromPath(string unmanagedDllPath)
System.Runtime.Loader.AssemblyLoadContext.LoadUnmanagedDllFromPath(string unmanagedDllPath)
Socrates.ApiServices.Startup+CustomAssemblyLoadContext.LoadUnmanagedDll(string unmanagedDllName) in Startup.cs
Socrates.ApiServices.Startup.ConfigureServices(IServiceCollection services) in Startup.cs
System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
Microsoft.AspNetCore.Hosting.ConventionBasedStartup.ConfigureServices(IServiceCollection services)
Microsoft.AspNetCore.Hosting.Internal.WebHost.EnsureApplicationServices()
Microsoft.AspNetCore.Hosting.Internal.WebHost.BuildApplication()

It's nice work for me:
using System;
using System.Reflection;
using System.Runtime.Loader;
namespace AlomaWebApi.Core
{
public class CustomAssemblyLoadContext : AssemblyLoadContext
{
public IntPtr LoadUnmanagedLibrary(string absolutePath)
{
return LoadUnmanagedDll(absolutePath);
}
protected override IntPtr LoadUnmanagedDll(string unmanagedDllName)
{
return LoadUnmanagedDllFromPath(unmanagedDllName);
}
protected override Assembly Load(AssemblyName assemblyName)
{
throw new NotImplementedException();
}
}
}
And before initialize Converter call this one:
new CustomAssemblyLoadContext().LoadUnmanagedLibrary($"{pathToYour-libwkhtmltox.dll}/libwkhtmltox.dll");
===>AssemblyLoadContext you can install from nuget System.Runtime.Loader
===>libwkhtmltox.dll you can download here: https://github.com/rdvojmoc/DinkToPdf/tree/master/v0.12.4

download this on server, where you try to use libwkhtmltox.dll
https://support.microsoft.com/ru-ru/help/2977003/the-latest-supported-visual-c-downloads

Having this issue on an azure function

We're running this in a function app, to me it looks like you're pointing to the wrong path.
In our case (where the packages are deployed from nuget and part of the build deployed as a package in the function app) it would be something like: D:\home\site\wwwroot\bin the files would be located in.

It's also worth mentioning that the service plan the app service or function is using cannot be the free tier, runs just fine on S1 (provided all the paths to the executables are correct)

I think that was my issue. Ended up going another route. Still using an azure function but went with a node package instead. The critical thing to point out is that in the consumption plan you dont have access to GDI support in the sandbox. https://stackoverflow.com/questions/61473525/node-return-byte-array-after-turning-html-to-pdf

download this on server, where you try to use libwkhtmltox.dll
https://support.microsoft.com/ru-ru/help/2977003/the-latest-supported-visual-c-downloads

It's worked. Thanks bro

I solved this problem more quickly.
Solution:
Add these codes inside the Project.Service.csproj
<ItemGroup>
  <None Remove="libwkhtmltox.dll" />
</ItemGroup>

<ItemGroup>
  <EmbeddedResource Include="libwkhtmltox.dll">
    <CopyToOutputDirectory>Always</CopyToOutputDirectory>
  </EmbeddedResource>
</ItemGroup>

I solved this problem more quickly.
Solution:
Add these codes inside the Project.Service.csproj
<ItemGroup>
  <None Remove="libwkhtmltox.dll" />
</ItemGroup>

<ItemGroup>
  <EmbeddedResource Include="libwkhtmltox.dll">
    <CopyToOutputDirectory>Always</CopyToOutputDirectory>
  </EmbeddedResource>
</ItemGroup>

Thanks @dgokhan. Adding the given code to the project's .csproj file worked for me.

I needed to solve this without installing any packages. I managed to solve it by downloading all 3 files (dll, dylib and so) and putting them into the project directory. Then I added this into the .csproj file:
    <ItemGroup>         <None Update="libwkhtmltox.dll">             <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>             <CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>         </None>         <None Update="libwkhtmltox.dylib">             <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>             <CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>         </None>         <None Update="libwkhtmltox.so">             <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>             <CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>         </None>     </ItemGroup>

@dgokhan  method worked for me. All I had to in addition for it work remotely was placing the  libwkhtmltox.dll in the remote server.

Download package from https://github.com/rdvojmoc/DinkToPdf/tree/master/v0.12.4
Add it to your project reference by custom Assembly reference & register in your startup project.
This is custom assembly load context which can load library from absolute path.

internal class CustomAssemblyLoadContext : AssemblyLoadContext
{
	public IntPtr LoadUnmanagedLibrary(string absolutePath)
	{
		return LoadUnmanagedDll(absolutePath);
	}
	protected override IntPtr LoadUnmanagedDll(String unmanagedDllName)
	{
		return LoadUnmanagedDllFromPath(unmanagedDllName);
	}

	protected override Assembly Load(AssemblyName assemblyName)
	{
		throw new NotImplementedException();
	}
}

In Statup.cs add below code.
Call CustomAssemblyLoadContext before you create your converter:

CustomAssemblyLoadContext context = new CustomAssemblyLoadContext();
context.LoadUnmanagedLibrary(path);
var converter = new SynchronizedConverter(new PdfTools());
services.AddSingleton(converter);
services.AddSingleton(typeof(IConverter), new SynchronizedConverter(new PdfTools()));

Hi Team,
I am also facing the same issue with .Net.Core 5.I resolved the issue while doing the below  steps.
1.Docker file need to add the below things.
RUN apt-get update
RUN apt-get install -y wget
RUN apt-get install -y curl
RUN cd /app
RUN apt-get update
&& apt-get install -y --no-install-recommends
zlib1g
fontconfig
libfreetype6
libx11-6
libxext6
libxrender1
&& curl -o /usr/lib/libwkhtmltox.so
--location
https://github.com/rdvojmoc/DinkToPdf/raw/v1.0.8/v0.12.4/64 bit/libwkhtmltox.so
RUN wget https://github.com/rdvojmoc/DinkToPdf/blob/master/v0.12.4/64 bit/libwkhtmltox.dll
RUN wget https://github.com/rdvojmoc/DinkToPdf/blob/master/v0.12.4/64 bit/libwkhtmltox.dylib
RUN wget https://github.com/rdvojmoc/DinkToPdf/blob/master/v0.12.4/64 bit/libwkhtmltox.so
WORKDIR /app
COPY --from=publish /app .

Don't add any assembly in solution level.
if you need to local debug # if DEBUG then add dll in project.

Thanks,
Manish

If this is important for someone, I add the code like in the previous answers, additionally when I tried to publish my app there was the error 500.30 because the architecture in the azure portarl, so change the platform for 64bits or 32bits and thats all.


Add license

Please add a license so others can fork this while knowing what they are dealing with.
@bigbrainiac10

@bigbrainiac10
I would prefer if you licensed your portions under this:
https://github.com/DevotedMC/CivModCore/blob/master/License.txt
adapt to your liking of course.
If you do I'm happy to leave my fixes in.

Added.


Adding dependsOn field via auto-suggest rewrites existing dependent line with ID unnecessarily

Please check that this issue hasn't been reported before.

[X] I searched previous Bug Reports didn't find any similar reports.

Expected Behavior
Given this starting state...
- [ ] #task Step 1 📅 2024-05-15 🆔 step-1
- [ ] #task Step 2

... when I use auto-suggest to make Step 2 depend on Step 1, I expect the Step 1 line not to be modified.
So after adding the dependency, I expect this output:
- [ ] #task Step 1 📅 2024-05-15 🆔 step-1
- [ ] #task Step 2 ⛔ step-1

Current behaviour
Line 1 is rewritten, with a different field order:
- [ ] #task Step 1 🆔 step-1 📅 2024-05-15
- [ ] #task Step 2 ⛔ step-1

Steps to reproduce
With a build of Tasks that has the un-released addition of dependencies to auto-select present:

Create a new note - with any name
Paste in this text

- [ ] #task Step 1 📅 2024-05-15 🆔 step-1
- [ ] #task Step 2

Put the cursor at the end of line 2
Type `[space]dep
Select the depends on option:

Select Step 1

See above for Expected and Actual...
Which Operating Systems are you using?

[ ] Android
[ ] iPhone/iPad
[ ] Linux
[X] macOS
[ ] Windows

Obsidian Version
1.6.0
Tasks Plugin Version
pre-7.2.0 development release
Checks

[X] I have tried it with all other plugins disabled and the error still occurs

Possible solution
Change the auto-suggest code so that it does not rewrite any task lines being depended on, when they already have an ID.

This is likely the underlying cause of #2823.


"adamw" optimizer + weight decay = poor generations

https://github.com/lucidrains/DALLE-pytorch/discussions/139#discussioncomment-560790
It appears as though adamw does work better but the weight decay is creating strange generations.
Getting the same strange "brown" generations even though the loss continues to go down. It does so at a pretty slow rate - and if you're working with --fp16 it's tough to know the generations are poor until after training due to the inability to submit images through wandb.

Is a good temporary solution to this to just set the weight_decay parameter to zero? @kobiso said as much but I assumed that effectively just turns it into a plain ole adam optimizer? Out of my depth.

@afiaka87 i removed it, i'm not too much a believer of weight decay

@lucidrains Noticed the adamw removal. Should I keep this open since it's from the paper?

yeap, let's keep it open since it's from the paper :)

The default weight_decay is .0 anyway, isn't it?

@robvanvolt the default weight_decay is 0, but DALLE paper used 4.5*10-2.

@kobiso @lucidrains @robvanvolt
So - I'm not having this problem anymore. I'm not sure exactly when we fixed it, but I can no longer reproduce this issue.

I tried to follow the paper (with regard to the optimizer).
opt = AdamW(dalle.parameters(), lr=LEARNING_RATE, betas=(0.9,0.96), weight_decay=4.5e-2, amsgrad=True)

I also have found a decent learning rate to be 3.7e-4. That's what I used here.
Due to experimentation and sunk cost fallacy, this network has the attention types:
attn_types=('full', 'axial_row', 'axial_col', 'full')

https://github.com/lucidrains/DALLE-pytorch/pull/220
@lucidrains this has been steadily improving my results. I say we put it back in.

Hm - so I realize now that the problem is actually that the state of the optimizer and scheduler is not stored on the model for resuming. @janEbert is that in your deepspeed fix branch?

Yeah, DeepSpeed by default loads (and saves) the optimizer and LR scheduler states. So the DeepSpeed checkpoints do not have this problem with the default settings.
The default non-DeepSpeed checkpoints are not suited for resuming, only for inference!

Okay! I have no clue what's causing this actually because it didn't happen with a resume involved.
This is such a subtle thing to catch because requires you to run a few epochs to see it happening. Here's a full run where I did not use resume and the problem still occurs.
https://wandb.ai/afiaka87/starting_over/reports/Weight-Decay-Bug--Vmlldzo2NTgxMjA?accessToken=rigmz991xq7blj8fuesbwtrnmyi86nsjranwmphzj79unjx8ilu4akjow2pqd86i

Any updates on this?
Could I use Adamw with weight decay?
I got a similar result in brown


MAISTRA-1097 Only support AllNamespaces installation in OLM

I guess whether this PR is enough to resolve the JIRA issue depends on how we manage the olm-metadata going forward


Dynamic Product Dashboard POC

This PR adds a dynamic product dashboard pipeline service that can be enabled with the feature.dynamicPipeline=enabled feature switch. This requires PR #815. More details in comment https://github.com/capitalone/Hygieia/issues/804#issuecomment-247391585.
Basically data for commits, builds, deployments, and artifacts are associated dynamically using constructed composite keys. That correlated data is calculated on-demand. Doing so solves a number of synchronization issues that are pointed out below.
Data is correlated in the following ways:

Build -> Commit: Builds keep track of the SCM revision numbers as well as the repository and branch information (though builds with multiple repositories are not 100% accurate). Given a list of commits for the dashboard we can correlate builds to them using the scm revision number.
EnvironmentComponent -> BinaryArtifact: Given a list of Environments we can gather DeploymentUnits and associate them to BinaryArtifacts by the component name and version number. In the future this information may be stored in metadata that is retrieved by the deployment collector.
BinaryArtifact -> Commit: An artifact will contain information about the HEAD svn revision number that was used to produce it. Given the scm revision number we can find it in our list of commits that are tracked for the dashboard and determine it along with all previous commits. For GIT this is done using a graph built from Commit.getScmParentRevisionNumbers(). For SVN we simply grab all revisions with a number less than ours.

This addresses the following issues

#816 - Deploying old applications does not properly reflect in the product dashboard: only commits that come prior to the head commit for the version that was deployed are used
#828 - Bug: Commits in the pipeline only show up in the last configured environment: since the EnvironmentComponent event listener doesn't play in to this this bug doesn't get hit
#804 - Pipeline document not preemptively filled when created: pipeline is generated with each call
#810 - NPE in CommitEventListener (bitbucket collector): partially fixed while I was in the code (no NPE)
#869 - Bug: pipeline dashboard build commit time statistics off: fixed this while I was in the code
#806 - Publishing artifacts requires build information to have already been collected: Fixed by PR #815

Sample artifact document:
{
    "_id" : ObjectId("57f2680746e0fb000e3026fc"),
    "_class" : "com.capitalone.dashboard.model.BinaryArtifact",
    "timestamp" : NumberLong(1475504135011),
    "artifactName" : "Helloworld",
    "canonicalName" : "Helloworld",
    "artifactGroupId" : "com.paychex.helloworld",
    "artifactVersion" : "<IP_ADDRESS>61003-101416I",
    "metadata" : {
        "jobName" : "mrichar2_helloworld",
        "scmUrl" : "https://repo.com/scm/~username/helloworld.git",
        "scmBranch" : "master",
        "buildUrl" : "http://jenkins.instance.com/job/helloworld/235/",
        "jobUrl" : "http://jenkins.instance.com/job/helloworld/",
        "buildNumber" : "235",
        "scmRevisionNumber" : "bea69104639e87faff235827e036e5021d1f93cf",
        "instanceUrl" : "http://jenkins.instance.com/"
    }
}

Note the following limitations / items not implemented at this time:

Dynamic pipeline does not currently support SVN
Date bounding is ignored as there is a current defect in the UI that shows itself here
Only handles 1 component (though this is the same with the existing pipeline implementation)
Jenkins branches are not 100% reliable - #857 - code currently does not filter on branch. We can get away with it for now due to commits already being filtered by branch. See comment in DynamicPipelineServiceImpl.filterBuilds for more info.
Data doesn't display right away. This is an existing issue - #864. To work around open and close the options panel
Jenkins commits sometimes get missed by builds. This is existing and occours with the event listener implementation as well. To work around it older commits that get skipped are added back using our best guess for a timestamp. This is a similar approach to what the BuildEventListener does
Performance for very large datasets is not known. I don't think it will be a problem since it should be about on par with the amount of time to load team dashboards since it uses the same service calls

rebased

Fixed exception when git scm is specified with ssh://.

LGTM

LGTM


Best practices for using private git-repositories?

Type of question

Best practices
Open question

Question
What did you do?
We have written a kubernetes operator which imports a library from a private git repository.
If we try to create the operator image with docker build or make docker-build, it fails because the Dockerfile has no credentials to access the private repository:
> make docker-build
[...]
Step 5/14 : RUN go mod download
 ---> Running in 35ce193ea8be
go<EMAIL_ADDRESS>reading private-git.example.com/some/project/go.mod at revision project/v2.0.41: unknown revision project/v2.0.41
The command '/bin/sh -c go mod download' returned a non-zero code: 1
make: *** [Makefile:74: docker-build] Error 1

What did you expect to see?
We wonder if there is a best practice or recommendation how to pass the private repository credentials (for example a .netrc file) to the docker image?
What did you see instead? Under which circumstances?
Since we have several operators and the deployment is completely automated at a central location, it feels inelegant to adjust the Dockerfile for each operator by hand.
Most of all because we think it is maybe possible that the Dockerfile could be completely autogenerated by the operator-sdk in future versions?
How to reproduce

Create an empty operator:

operator-sdk init --domain=example.com --repo=github.com/example/com

Insert a path from an private repository into the go.mod

module github.com/example/com

go 1.13

require (
	k8s.io/apimachinery v0.18.6
	k8s.io/client-go v0.18.6
	sigs.k8s.io/controller-runtime v0.6.3
	private-git.example.com/some/project/v2 v2.0.41
)

Run make docker-build

Environment
Operator type:
/language go
Kubernetes cluster type: OpenStack
operator-sdk version:
"v1.2.0", commit: "215fc50b2d4acc7d92b36828f42d7d1ae212015c", kubernetes version: "v1.18.8", go version: "go1.15.3", GOOS: "linux", GOARCH: "amd64"

go version: go version go1.15.6 linux/amd64
kubernetes version:
Client Version: version.Info{Major:"1", Minor:"19", GitVersion:"v1.19.4", GitCommit:"d360454c9bcd1634cf4cc52d1867af5491dc9c5f", GitTreeState:"archive", BuildDate:"2020-11-25T13:19:56Z", GoVersion:"go1.15.5", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"18", GitVersion:"v1.18.9", GitCommit:"94f372e501c973a7fa9eb40ec9ebd2fe7ca69848", GitTreeState:"clean", BuildDate:"2020-09-16T13:47:43Z", GoVersion:"go1.13.15", Compiler:"gc", Platform:"linux/amd64"}

this may be a naive question/answer, but does ssh not work in this case? could you pass the ssh key somehow?

@jkmw The question seems to be centered around Go /  Go Modules with the use of private repositories.
The following is a medium article I found that likely can shed some light:  https://medium.com/cloud-native-the-gathering/go-modules-with-private-git-repositories-dfe795068db4
Additionally, here is a stackoverflow response:  https://stackoverflow.com/questions/53516358/go-modules-private-repos-and-gopath
Closing for now... feel free to reopen if needed.


refactor(race): Make Type paramerter more compatible with RxJS v4

Clearfy race()'s type definition.

See also RxJS v4's one

...And some micro refactoring

Change looks good to me in general (comments left are not critical to proceed)

@kwonoj updated!

Thanks! let me check this in around late today to tomorrow to see if any other suggestions around.

@saneyuki , would you able to amend commit message as previous PR (https://github.com/ReactiveX/RxJS/pull/1212#issuecomment-173322395) ? I'll check this in once updated.

@kwonoj updated!

yay! :wink:

Merged with d4813a9, thanks @saneyuki .