504 Timeout

Users seem to sometimes be getting 504 errors.
From an email Sunday night (9 PM):
"I'm getting a "504 Gateway Timeout" on the Cantus website.  Any idea if this is a database-wide problem or if it's specific to me? "
Another user confirmed that it wasn't happening for them, but do we know why users would be hitting this?

I don't really know - I don't believe this error would be generated just for one particular user (unless they were perhaps using a proxy, in which case they might get a non-CantusDB-themed error page), but it could be being generated for just a few specific pages. It would be helpful if these users could list the pages they're trying to visit, ideally providing URLs.

I asked, but "It seemed to be any page and any action, just at certain times it wouldn't load.  I got some "500" Error messages briefly today but it was pretty brief." [this would seem to be a different problem from the 504?]

Hm... in the middle of the afternoon, I updated the Production server, and forgot to update one of our configuration files (the one that specifies whether the code is running on Staging or Production), which took about 5 minutes to fix; there were 500 errors on all pages for those few minutes.

But yeah, I don't know what would cause all pages on the site to 504 sporadically. Hopefully it was something transient with the Alliance servers, and hopefully it doesn't happen again!

different user, yesterday:
"Incidentally, I got a 504 tonight trying to load the home page, but I refreshed it after a minute and it loaded properly. shrug"

different user, yesterday:
"Incidentally, I got a 504 tonight trying to load the home page, but I refreshed it after a minute and it loaded properly. shrug"

Immediately following yesterday's update, I noticed the whole site was a bit sluggish. It went away after a few minutes.

so it seems like this is just users noticing the updates happening from afar?  (I would say to maybetry to choose the timing to be minimally disruptive, but it's always going to be working hours somewhere...)

Today it's my turn, at 8:43 PM ET, trying to load a chant page I needed to consult: https://cantusdatabase.org/chant/702606. For fun I also tried https://cantusdatabase.org/source/696271 and https://cantusdatabase.org/ and they all gave me a timeout.
I had been merrily working along with no issues an hour earlier.
I tried refreshing the source page and, after a long wait, got it to load, but the homepage was still churning away a minute later, and eventually gave me another timeout (this at 8:48).
I tried the same pages in Safari instead of Firefox, just to see,  and they also churned away for several minutes before giving a 504.
In the ten+ minutes I have had this comment open I have refreshed several times, and at last got the homepage just now (at 8:52) and then got https://cantusdatabase.org/chants/?source=696271 to cooperate. https://cantusdatabase.org/chant/702606 is still not loading up in either browser, and neither is https://cantusdatabase.org/source/696271 in my Safari tab.

hm... so chant/702606 has a Cantus ID of g01258. Around 8:43, Cantus Index took more than 5s to give us concordances when we made a request to https://cantusindex.org/json-con/g01258. It's possible that we could decrease this timeout, which would potentially prevent timeouts on the chant detail page, at the cost of more often not displaying concordances. Not sure whether it would work, but might be worth a try.

I'm not sure what to say about source/696271 - trying to load it locally, there are no requests being made to any other sites, so that can't be it. But I see that someone got a 504 at 17/Aug/2023:00:48:17 +0000, but then several of the resources required to load the page (style.css, background.jpg, etc.) were returned with 200s at the same timestamp (not sure how to interpret this last bit).

I feel like this depends a bit on the nature of the problem--I feel like "all users have to reload a chant page 1 in 10 times" (just to exaggerate the problem) is a slightly different situation from "1 in 10 users cannot use Cantus at all" or "Cantus is down for 2.4 hours of every day," with different levels of acceptability for each.

Aren’t the 504 errors caused by calling out to Cantus Index at page load time? If Cantus Index doesn’t provide a timely return, does this mean the Cantus Database page load stops?

For views where we send requests to Cantus Index and, if it takes more than 5s to get a response, we give up and display an unobtrusive error message on the relevant part of the page.
Our Source Detail view should not make any such requests; nor should the homepage.
On the Source Detail page, we run a sometimes-costly function to decide which Feasts to display in the sidebar panel, which could possibly lead to timeouts.

Today it seems like all users were reaching a 504 Gateway Timeout even when trying to reach the homepage. That leads me to suspect that the Cantus Index requests aren't the sole cause of this error.
I restarted the the containers on the production server to solve the 504 timeout, but I'm still unsure what exactly caused the issue in the first place since the code wasn't changed or updated in the time between when it was working and when it wasn't. Here are a few possibilities related to the docker configuration:

Resource Exhaustion: If a container or multiple containers were consuming excessive CPU, memory, or network bandwidth, this could have led to a situation where the server was unable to respond to requests
Stale State: Containers can accumulate stale connections or cached data over time, leading to performance degradation.
Network Configuration: Misconfigurations can lead to connectivity issues.
Resource Leaks: Containers might not release resources properly when they're done with them. Over time, this can lead to resource exhaustion and performance issues.

We should continue by analyzing logs, monitoring resource usage, checking for application bugs, reviewing network configurations, etc.

A couple of thoughts:

I wonder whether we can have Nginx cache certain rarely-changing pages such as the homepage - I don't think that it will affect 504 errors across the rest of the site very much, but we should never to show a 504 on, say, the "Fields and Content Descriptions" page.
Since restarting the Docker containers seems to fix the problem at least for a little while, updating the Production VM for #1009 would be a natural time to see how resource usage changes following a restart of various containers. I'll spend a while looking at the state of resource usage in the various containers before a restart, and then look to see whether anything changes dramatically once I restart them to run our new code.

Django

both systems are using a lot of their memory, though much of this is taken up by buffers/caches. This is especially true of production.
production is using a lot more CPU than staging is. The CPU values for the six gunicorn processes add up to ~104% (I'm assuming the system can handle >100% since it has multiple VCPUs or something).

About to update the production machine after merging staging into production.  Not sure how to set this up, but could be worth looking into.

I'm going to do some looking into Nginx and caching - again, it's not likely to fully solve the problem, but reducing the number of requests that make it all the way to to gunicorn can't hurt.

I sent an email to Jan about /json-cid/cantus_id/, and his response amounted to "Yes, that's Cantus Index's IP address. The site is being rebuilt, so I hope these requests stop once the new site is up. In the meantime, I hope they're not causing problems."
I sampled a minute or two of nginx logs from earlier in August, and out of ~6800 requests, 2400 contained /cantus_id in their path, and 1800 contained /static.
Another 1000-request sample (about 1 minute) from today contained ~400 /statics and ~50 contained /cantus_id.
In summary, we're going to continue to get rogue requests from CI for the next while, and people are going to continue to request static resources. If nginx can handle these requests, we can reduce the load on gunicorn/Django by approximately half. So I'm going to spend some time over the next few days learning about Nginx, so that we can get it to serve 404s to CantusIndex and cache static files.

Jan fixed the json-cid/cantus_id/ thing! Turns out we were at least partly at fault (see #1053).
Looking at the last 20_000 requests in our nginx logs, there is not a single instance of a 502 or 504. While I still think it would be a good idea to set up caching of static files, in a spirit of optimism I'm going to tentatively close this issue.


Track Ninja's dyndeps feature

Ninja 1.7 is adding dyndeps (will be in the Ninja manual once it's done), along with examples of extracting a tarball and compiling Fortran. I should make documentation on the website of how to do that, and also support dyndeps in the Ninja build.

Ninja documentation link: https://github.com/bradking/ninja/blob/features-for-fortran/doc/manual.asciidoc#dynamic-dependencies
It's not clear if it will actually be in 1.7.

The tarball example is like the zip file in https://github.com/ndmitchell/shake/issues/421#issuecomment-184412157.
I'm not sure about the Fortran example; it seems like it would fscan all the files on every build, while in fact you only need to fscan the changed files.

Yep, if it goes in, I'd aim to support it. I find the dyndeps thing a little confusing at first glance - it seems like a weird primitive to have added (I assume its a restricted version of monadic dependencies in some way).

Dynamic implicit inputs can be replicated by a function that reads the dyndep file and calls need.
Dynamic implicit outputs are more interesting; they're a provide-like operation, with the semantics that modifying a provide-d file will re-run the provider.

https://github.com/ninja-build/ninja/pull/1521 wow it actually landed! The ranks of monadic build systems have grown.


fix(template): revert changes to templates

What?
Revert changes to templates that introduced enablePortalModal
Why?
To make the CI pass to publish the library, we need to be able to build the templates, but the templates are using the old version
The solution is to

revert the changes to the templates (this PR)
Publish the library
Add the changes back again
Publish the CLI

Hey @johannes-lindgren 👋
I think we can fix the CI so it won't happen again for future releases.
I opened this PR here with a fix. Let me know what you think.

But is this PR fine? Or what should I change?
I approved your PR

Hey @johannes-lindgren 👋
The PR is fine but not need to do it anymore.
Once a fix was applied to the CI, you could just re-open this release PR without the need to revert your changes as done here. 🤔

This fixes it: https://github.com/storyblok/field-plugin/pull/428

@Dawntraoz pointed out another failing job: https://github.com/storyblok/field-plugin/actions/runs/11385607709/job/31677571828?pr=425
So it seems that the steps outlined in PR might be the best course of action after all.
Cc: @demetriusfeijoo

Hey @johannes-lindgren 👋
I didn't get the reason to open this PR again once the changes were already merged 🤔
Now, the next step would be to also publish the CLI and then run the actions responsible for pushing a new package to NPM for both the CLI and Library.
But please, let me know if you need any help with that 🙌

The point is to always keep main in a state that is releasable

Yeah, we may think about using some publishing/versioning tool, such as Changesets to streamline the process. 🤔


remove trait_alias usage, build on stable

This removes an unstable feature usage, now allowing to build this crate on a stable toolchain.
It also runs a rustfmt pass on the whole codebase (in a separate commit), in order to ease future contributions.

/cc @timothee-haudebourg

Hi, thanks for the contribution :smile:
For the trait_alias part: I agree that it would be preferable to be able to build this crate with stable rust. In that regard your change is a good idea. But for compatibility reasons I would rather add a nightly feature gating the trait alias definition instead, while keeping your definition as default. Could you do that?
For the rustfmt part: Although it is a good idea, I would prefer to see this in a separate pull request. Also note that I strongly favor the use of tabs for indentation, so we'll need to add a rustfmt.toml with the hard_tabs option enabled.

Thanks for the feedback! I'll look into adding the conditional compilation bits, and then amend this.
I'll happily take the rustfmt commit out of this PR. But it looks like you have some opinions diverging from the standard formatting.  Or is the tabs-vs-spaces the only thing?

Amended.

Looks good to me. Thanks!


Order execution modal

This prompt should only show if my order crosses the opposite side.

I can't reproduce.


Mesos Containerizer Volumes and Port Mapping

So this is more of a question than an issue, but I hope this might help some other people.
My goal is to make a gpu-cluster using mesos/marathon for a small university lab environment, mainly for image processing deep-learning related tasks. it gets messy to have to coordinate who gets which GPU etc. I have the example of https://github.com/klueska-mesosphere/mesos-gpu-docker running, which is very nice.
Now, besides running the container we want to do something with it. Which means we need access to volumes (NFS/CIFS etc.) and need to access the container using SSH/web. From your docs I saw that the feature set of the Mesos Containerizer is limited.
How could I proceed to get port mapping like docker running and mount volumes?

Hi @tkurmann,
you can use volumes and ports with universal containerizer the same way you would use with docker containerizer. The only limitation currently is, that in universal containerizer you could only use host networking. We are currently working on enabling bridge networking as well.
Volume doc: https://mesosphere.github.io/marathon/docs/persistent-volumes.html
Port doc: https://mesosphere.github.io/marathon/docs/ports.html
Does this answer your question?
Kind regards
Johannes

Hi @unterstein
Thank you for your answer. I actually saw those docs after writing the question but decided on leaving the question up as most things are not running as I would expect.
Regarding ports:
At the moment I have it running, but it is a bit hacky. Here is the json
{   "id": "/gpu-test",   "cmd": null,   "cpus": 10,   "mem": 12800,   "gpus": 1,   "disk": 0,   "instances": 1,   "container": {     "type": "MESOS",     "volumes": [],     "docker": {       "image": "tkurmann/otl-mesos-keras",       "credential": null,       "forcePullImage": true     }   },   "portDefinitions": [     {       "port": 22,       "protocol": "tcp",       "labels": {}     }   ] }
This gives an ENV variable named PORT_22, which I map to the sshd on startup of the docker.
if [ -z ${PORT_22+x} ]; then echo "Port 22"; else sed -i -- 's/Port 22/'"Port $PORT_22"'/g' /etc/ssh/sshd_config  ; fi ; service ssh restart ;
All other attempts were not successful. Would you mind maybe making an example?
Regarding the volumes, I managed to mount local volumes. External volumes are failing due to the "name" not being able to contain any . : \. An example:
"volumes": [
      {
        "containerPath": "nfs-volume",
        "external": {
          "name": "<IP_ADDRESS>\test",
          "provider": "dvdi",
          "options": { "dvdi/driver": "nfs" }
          },
        "mode": "RW"
      }
]

Thank you very much,
Tom

@unterstein Do you mind elaborating on the plan w.r.t. bridged networking for the mesos containerizer and what the progress has been?

@Queuecumber The Mesos containerizer gained (experimental) support for port mapping (aka bridged networking) in the recently released Mesos 1.1.0. Marathon 1.4 doesn't support that yet, but it will land in 1.5, see #4548.

@nfnt Thanks a lot for pointing me to that. Do you know what the timeline is for 1.5 or if there is a development branch I can build from to have it now? This feature is critical for my organizations project

@tkurmann I haven't tried getting an nfs volume mounted via the external volume (dvdi) implementation. I'd probably try a volume name like "nfstest" and then specifying additional volume options using option names like dvdi/some-nfs-option-name.
xref https://github.com/docker/docker/issues/25202

@Queuecumber approximate timeline for 1.5 release Q2'17.
i've been hacking on an overhaul of the network API here: https://phabricator.mesosphere.com/D201. it's a bit out of sync w/ master for the moment since i've been distracted by other things. hoping to land these changes in the coming weeks.

Note: This issue has been migrated to https://jira.mesosphere.com/browse/MARATHON-1980. For more information see https://groups.google.com/forum/#!topic/marathon-framework/khtvf-ifnp8.


Russian translation

Translated AccountSwitcher to Russian

Included in the newest update (bc i want to keep my structure and your beautify plugin changed some stuff)


2.2-alpha - BUG: Deleting edge with missing vertices throws NullPointerException

Apparently I had a corrupt group of edges, that I was able to remove their in vertices.
The problem is that DELETE EDGE doesn't get rid of edges that have null start/end. For me the problem was in the destination vertices that I had removed them - I don't know what happens with missing starting vertices.
So I don't know what is more favorable - a descriptive message or removing the edge regardless when it has missing start/end

I think removing the edge it's better managing this case. Do you have a complete log of this exception?

Sorry I was on vacation.. No I don't have a log of this exception since I cleaned up the data corruption

Ok, closing for now. In case you see the same error, please reopen it. THanks.


[SSR] Add sort to query

This adds a sort component which sets a sort value in the query params and navigates to that page. The main IO page then reloads and queries with the sort value from the params

closing as dupe for https://github.com/newrelic/developer-website/pull/1948


ejabberd 17.04 Support - Hook offline_message_hook crashed when running mod_gcm:message

2017-05-08 09:50:13.938 [error] <0.484.0>@ejabberd_hooks:safe_apply:383 Hook offline_message_hook crashed when running mod_gcm:message/1:
** Reason = {error,undef,[{mod_gcm,message,[],[{bounce,{message,<<>>,normal,<<"en">>,{jid,<<"cr3397">>,<<"kripter.io">>,<<"mobile">>,<<"cr3397">>,<<"kripter.io">>,<<"mobile">>},{jid,<<"dz9199">>,<<"kripter.io">>,<<>>,<<"dz9199">>,<<"kripter.io">>,<<>>},[],[],undefined,[{xmlel,<<"paused">>,[{<<"xmlns">>,<<"http://jabber.org/protocol/chatstates">>}],[]}],#{ip => {0,0,0,0,0,65535,28806,20552}}}}]},{ejabberd_hooks,safe_apply,[{file,"src/ejabberd_hooks.erl"},{line,380}],4},{ejabberd_hooks,run_fold1,[{file,"src/ejabberd_hooks.erl"},{line,364}],4},{ejabberd_sm,route,[{file,"src/ejabberd_sm.erl"},{line,138}],1},{ejabberd_local,route,[{file,"src/ejabberd_local.erl"},{line,116}],1},{ejabberd_router,do_route,[{file,"src/ejabberd_router.erl"},{line,346}],1},{ejabberd_router,route,[{file,"src/ejabberd_router.erl"},{line,87}],1},{ejabberd_c2s,check_privacy_then_route,[{file,"src/ejabberd_c2s.erl"},{line,770}],2}]}

Module doesn't work with ejabberd versions after 16.09

Thanks for the reply, any new plugin on the way for news versions ???

Not that I'm aware of.

:) r u planning on developing a fix for this

Yeah, but I'm not a big fan of erlang and I don't have much time beside my main job.
I can't promise I'll do that soon, but one day I will push a fix just like it was when we updated from ejabberd 14 to ejabberd 15.


images:rebase: Sort tags and content sets

It's often not very obvious to see diffs on distgit. Sorting tags and content sets will create a smaller diff in distgit.

/lgtm
oh yes! Been wanting this so long! Thanks for scratching this itch :)


DEB Package does not properly respond to any value for OS/ARCH

Description
When the target OS/ARCH is having any value, the DEB packager refused to package (incompatible candidate). It's likely due to mishap in safety checking.
Expected Behavior
DEB packager allows any target OS and target ARCH value.
Current Behavior
DEB packager rejects any value for both target's OS and target's ARCH.
Steps to Reproduce [COMPULSORY]

build a polygot shell script that offers to any OS and any ARCH functionalities.
run the CI. notice that .deb is not packaged due to incompatible type.

Associated Data Files
No response

Proposed fix:
diff --git a/automataCI/_package-deb_unix-any.sh b/automataCI/_package-deb_unix-any.sh
index b42acd0..5b3d576 100644
--- a/automataCI/_package-deb_unix-any.sh
+++ b/automataCI/_package-deb_unix-any.sh
@@ -56,11 +56,11 @@ PACKAGE_Run_DEB() {
         I18N_Check_Availability "DEB"
         DEB_Is_Available "$_target_os" "$_target_arch"
         case $? in
-        2|3)
+        2)
                 I18N_Check_Incompatible_Skipped
                 return 0
                 ;;
-        0)
+        0|3)
                 # accepted
                 ;;
         *)
diff --git a/automataCI/_package-deb_windows-any.ps1 b/automataCI/_package-deb_windows-any.ps1
index 2b1be84..4ec2e8e 100644
--- a/automataCI/_package-deb_windows-any.ps1
+++ b/automataCI/_package-deb_windows-any.ps1
@@ -46,10 +46,10 @@ function PACKAGE-Run-DEB {
        $null = I18N-Check-Availability "DEB"
        $___process = DEB-Is-Available "${_target_os}" "${_target_arch}"
        switch ($___process) {
-       { $_ -in 2, 3 } {
+       2 {
                $null = I18N-Check-Incompatible-Skipped
                return 0
-       } 0 {
+       } {$_ -in 0, 3} {
                # accepted
        } Default {
                $null = I18N-Check-Failed

If can, hitch-hike the following in src/.ci/_package-deb*:
@@ -168,6 +168,15 @@ function PACKAGE-Assemble-DEB-Content {
        }

+       # NOTE: REQUIRED file
+       $null = I18N-Create "${_directory}\control\md5sum"
+       $___process = DEB-Create-Checksum "${_directory}"
+       if ($___process -ne 0) {
+               $null = I18N-Create-Failed
+               return 1
+       }
+
+
        # NOTE: OPTIONAL (Comment to turn it off)
        $null = I18N-Create "source.list"
        $___process = DEB-Create-Source-List `
@@ -183,15 +192,6 @@ function PACKAGE-Assemble-DEB-Content {
        }

-       # NOTE: REQUIRED file
-       $null = I18N-Create "${_directory}\control\md5sum"
-       $___process = DEB-Create-Checksum "${_directory}"
-       if ($___process -ne 0) {
-               $null = I18N-Create-Failed
-               return 1
-       }
-
-
        # WARNING: THIS REQUIRED FILE MUST BE THE LAST ONE
        $null = I18N-Create "${_directory}\control\control"
        $___process = DEB-Create-Control `

implemented.


How much does keepAlive affect battery life?

I haven't been able to find any info on this - is it significant?  I would think that a machine with such a large battery would be barely affected by something like this.

It's significant.

It's significant.


ng generate component [name] fails with 'undefined' in cli 1.2.1

Bug Report or Feature Request (mark with an x)
- [x] bug report -> please search issues before submitting
- [ ] feature request

Versions.

@angular/cli: 1.2.1
node: 6.10.3
os: win32 x64 (Windows 10)
@angular/animations: 4.1.3
@angular/common: 4.1.3
@angular/compiler: 4.1.3
@angular/core: 4.1.3
@angular/forms: 4.1.3
@angular/http: 4.1.3
@angular/platform-browser: 4.1.3
@angular/platform-browser-dynamic: 4.1.3
@angular/router: 4.1.3
@angular/cli: 1.2.1
@angular/compiler-cli: 4.1.3
@angular/language-service: 4.1.3
Repro steps.

open command line tool
type ng generate component quick-run

The log given by the failure.

D:\Entwicklung\anarchy-companion\src\app\sr5\sr5-home>ng generate component quick-run
installing component
create src\app\sr5\sr5-home\quick-run\quick-run.component.css
Cannot read property 'then' of undefined
TypeError: Cannot read property 'then' of undefined
at FileInfo.render (D:\Entwicklung\anarchy-companion\node_modules@angular\cli\ember-cli\lib\models\file-info.js:103:9)
at Class.Blueprint._writeFile (D:\Entwicklung\anarchy-companion\node_modules@angular\cli\ember-cli\lib\models\blueprint.js:383:44)
at Class.write (D:\Entwicklung\anarchy-companion\node_modules@angular\cli\ember-cli\lib\models\blueprint.js:395:17)
at Class.Blueprint._commit (D:\Entwicklung\anarchy-companion\node_modules@angular\cli\ember-cli\lib\models\blueprint.js:436:19)
at D:\Entwicklung\anarchy-companion\node_modules\rsvp\dist\rsvp.js:2170:20
at tryCatch (D:\Entwicklung\anarchy-companion\node_modules\rsvp\dist\rsvp.js:539:12)
at invokeCallback (D:\Entwicklung\anarchy-companion\node_modules\rsvp\dist\rsvp.js:554:13)
at D:\Entwicklung\anarchy-companion\node_modules\rsvp\dist\rsvp.js:629:16
at flush (D:\Entwicklung\anarchy-companion\node_modules\rsvp\dist\rsvp.js:2414:5)
at _combinedTickCallback (internal/process/next_tick.js:73:7)
Desired functionality.

Creates a component named QuickRun.
Mention any other details that might be useful.

After update from angular cli 1.1.0 to 1.2.1

I receive a similar error after upgrading from cli 1.1.0 to 1.2.1
Using: Angular 4.2.6
C:\...\ca-app>ng g component [any]
Cannot read property 'name' of undefined
TypeError: Cannot read property 'name' of undefined
at blueprint.blueprints.find (C:\...\ca-app\node_modules@angular\cli\commands\generate.js:60:58)
at Array.find (native)
at Class.beforeRun (C:\...\ca-app\node_modules@angular\cli\commands\generate.js:60:43)
at Promise.resolve.then (C:\...\ca-app\node_modules@angular\cli\ember-cli\lib\cli\cli.js:153:24)
at tryCatch (C:\...\ca-app\node_modules\rsvp\dist\rsvp.js:525:12)
at invokeCallback (C:\...\ca-app\node_modules\rsvp\dist\rsvp.js:538:13)
at C:\...\ca-app\node_modules\rsvp\dist\rsvp.js:606:14
at flush (C:\...\ca-app\node_modules\rsvp\dist\rsvp.js:2400:5)
at _combinedTickCallback (internal/process/next_tick.js:73:7)
at process._tickCallback (internal/process/next_tick.js:104:9)

I had the same issue in a 1.2.0 project, but it went away after I upgrade to 1.2.1. I followed the update instructions on the CLI homepage, including completely uninstalling the global CLI, cleaning the npm cache, removing the local node_modules directory, etc.:
https://github.com/angular/angular-cli#updating-angular-cli
Perhaps there's something left over from an earlier version that's still causing trouble?

I have updated nodejs from 6.x to v8.1.4, updated npm to latest version 5.3.0 and reinstalled angular-cli as described on github and now it works.

@angular/cli: 1.2.1
node: 8.1.4
os: win32 x64
@angular/animations: 4.1.3
@angular/common: 4.1.3
@angular/compiler: 4.1.3
@angular/core: 4.1.3
@angular/forms: 4.1.3
@angular/http: 4.1.3
@angular/platform-browser: 4.1.3
@angular/platform-browser-dynamic: 4.1.3
@angular/router: 4.1.3
@angular/cli: 1.2.1
@angular/compiler-cli: 4.1.3
@angular/language-service: 4.1.3

Now it works for me.
Is there a problem with nodejs v6.11.1 LTS?
@Torakage Do you still have problems or can i close the ticket?

@systemNEO I think I had error when removing old directories (or forgot to run rmdir). Walking through the upgrade process again fixed the problem.

Same problem here
Version: "@angular/cli": "1.2.3"
command: ng g module downloading
The log given by the failure:
installing module
create src\app\downloading\downloading.module.ts
Cannot read property 'then' of undefined
TypeError: Cannot read property 'then' of undefined

This sounds like an update problem like @wnodom suggested. Following the upgrade procedure should help.


Label com.joyrex2001.kubedock.runas-user not working

We want to start a testcontainer with the label com.joyrex2001.kubedock.runas-user
public class KafkaTestResource extends KafkaCompanionResource {

    @Override
    public void init(Map<String, String> initArgs) {
        if (this.kafkaCompanion == null) {
            super.init(initArgs);
            this.kafka.withLabel("com.joyrex2001.kubedock.runas-user", "0");
            this.kafka.withLabel("com.joyrex2001.kubedock.request-cpu", "400m,1");

The label does not change the runasUser Setting in the created Pod.
See the following output of the kubedock log where the labels are visible but kubedock starts the pod with the user defined in image:
I0707 08:57:12.146529       1 util.go:78] Request Body: {"Hostname":null,"Domainname":null,"User":null,"AttachStdin":null,"AttachStdout":null,"AttachStderr":null,"PortSpecs":null,"Tty":null,"OpenStdin":null,"StdinOnce":null,"Env":["LOG_DIR=/tmp"],"Cmd":["sh","-c","while [ ! -f /testcontainers_start.sh ]; do sleep 0.1; done; /testcontainers_start.sh"],"Healthcheck":null,"ArgsEscaped":null,"Entrypoint":null,"Image":"quay.io/strimzi-test-container/test-container:0.100.0-kafka-3.1.0","Volumes":{},"WorkingDir":null,"MacAddress":null,"OnBuild":null,"NetworkDisabled":null,"ExposedPorts":{"9092/tcp":{}},"StopSignal":null,"StopTimeout":null,"HostConfig":{"Binds":[],"BlkioWeight":null,"BlkioWeightDevice":null,"BlkioDeviceReadBps":null,"BlkioDeviceWriteBps":null,"BlkioDeviceReadIOps":null,"BlkioDeviceWriteIOps":null,"MemorySwappiness":null,"NanoCpus":null,"CapAdd":null,"CapDrop":null,"ContainerIDFile":null,"CpuPeriod":null,"CpuRealtimePeriod":null,"CpuRealtimeRuntime":null,"CpuShares":null,"CpuQuota":null,"CpusetCpus":null,"CpusetMems":null,"Devices":null,"DeviceCgroupRules":null,"DeviceRequests":null,"DiskQuota":null,"Dns":null,"DnsOptions":null,"DnsSearch":null,"ExtraHosts":[],"GroupAdd":null,"IpcMode":null,"Cgroup":null,"Links":[],"LogConfig":null,"LxcConf":null,"Memory":null,"MemorySwap":null,"MemoryReservation":null,"KernelMemory":null,"NetworkMode":"95cde802aa72b1b9dd5955feb45e93ad6ca3bb2ef27388caa24d85c23a6d13f7","OomKillDisable":null,"Init":null,"AutoRemove":null,"OomScoreAdj":null,"PortBindings":{"9092/tcp":[{"HostIp":"","HostPort":""}]},"Privileged":null,"PublishAllPorts":null,"ReadonlyRootfs":null,"RestartPolicy":null,"Ulimits":null,"CpuCount":null,"CpuPercent":null,"IOMaximumIOps":null,"IOMaximumBandwidth":null,"VolumesFrom":[],"Mounts":null,"PidMode":null,"Isolation":null,"SecurityOpt":null,"StorageOpt":null,"CgroupParent":null,"VolumeDriver":null,"ShmSize":null,"PidsLimit":null,"Runtime":null,"Tmpfs":null,"UTSMode":null,"UsernsMode":null,"Sysctls":null,"ConsoleSize":null,"CgroupnsMode":null},"Labels":{"com.joyrex2001.kubedock.runas-user":"0","org.testcontainers":"true","org.testcontainers.lang":"java","com.joyrex2001.kubedock.request-cpu":"400m,1","org.testcontainers.version":"1.17.6","org.testcontainers.sessionId":"4b7fc7b7-b48b-4059-866c-713f470b8861"},"Shell":null,"NetworkingConfig":{"EndpointsConfig":{"95cde802aa72b1b9dd5955feb45e93ad6ca3bb2ef27388caa24d85c23a6d13f7":{"IPAMConfig":null,"Links":null,"Aliases":["tc-qkimr7Zz"],"NetworkID":null,"EndpointID":null,"Gateway":null,"IPAddress":null,"IPPrefixLen":null,"IPv6Gateway":null,"GlobalIPv6Address":null,"GlobalIPv6PrefixLen":null,"MacAddress":null}}}}
I0707 08:57:12.146797       1 util.go:101] Response Body: {"Id":"d9b8a736e1ddb306f38e172f517b4cf0482d07709d721641d2d2bfb253a1fd29"}
[GIN] 2023/07/07 - 08:57:12 | 201 |     393.293Âµs |      <IP_ADDRESS> | POST     "/containers/create"
I0707 08:57:12.211618       1 util.go:77] Request Headers: http.Header{"Accept":[]string{"application/json"}, "Accept-Encoding":[]string{"gzip, x-gzip, deflate"}, "Connection":[]string{"keep-alive"}, "Content-Type":[]string{"application/json"}, "User-Agent":[]string{"Apache-HttpClient/5.0.3 (Java/17.0.5)"}, "X-Tc-Sid":[]string{"4b7fc7b7-b48b-4059-866c-713f470b8861"}}
I0707 08:57:12.211645       1 util.go:78] Request Body:
W0707 08:57:12.211698       1 container.go:174] user not set, will run as user defined in image

I've quickly searched through the repository and found the const for the labels here but there is no const for the label com.joyrex2001.kubedock.runas-user.
We do not want to run any Pod with the UID 0 so the flag --runas-user is no solution.
Am I doing something wrong or is the implementation of the label missing?

Good find! This was indeed not implemented in #5, added it.

Nice, thanks for the quick implementation!


Replace redirect links and fix link to use localized page of reference/index

This PR fixes the page https://kubernetes.io/ja/docs/reference/

replaces the redirect link /docs/reference/using-api/api-overview/ with  /docs/reference/using-api/
replaces /docs/reference/kubectl/overview/ with localized page /ja/docs/reference/kubectl/overview/
replaces the redirect link /docs/reference/setup-tools/kubeadm/kubeadm/ with /docs/reference/setup-tools/kubeadm/

ご対応ありがとうございます
/lgtm

Hmm, honestly I don't really understand what this PR is trying to solve.

Is any of the link that you changed currently broken? If they just redirect, I think it is fine as it is.
What change in the original doc(the English one) are you following up? If you are trying to fix around this change https://github.com/kubernetes/website/commit/3edb9705703019c7a3829f393caed7415d389b08 , we will follow up in our upcoming work branch, which should be dev-1.19-ja.2. This is also the reason why I think this does not have to be applied for now

@inductor Thank you for your comments.

Is any of the link that you changed currently broken? If they just redirect, I think it is fine as it is.

No, it's not broken. I found this redirect by using this tool  and the reason why redirect need to be remove is below:
There are cases we see chained redirects that really slow down site access. They are unnecessary and buggy.

What change in the original doc(the English one) are you following up? If you are trying to fix around this change 3edb970 , we will follow up in our upcoming work branch, which should be dev-1.19-ja.2. This is also the reason why I think this does not have to be applied for now

After this PR will have been merged, I'll submit PR for dev-1.19-ja.1 or dev-1.19-ja.2 as backport.

@inductor could you please review?

/approve

/lgtm


Getter for CardType

I need the CardType information (Amex, Visa, etc) but there is not method to get this information, it would be nice to get the card data.
Thanks for the library! so great!

I Found a way,
there is another library
https://github.com/jessepollak/payment, that already came with this one, so you just need to call the command below
Payment.fns.cardType('5555 6666 7777 8884');


getting captcha'd for every prompt

Appreciate your effort getting things to work after Dec 11 changes 🙏
I built a simple node app that can take a prompt and print the response on terminal window.
In my case it seems to always open a new Chrome window/instance (thus prompting a new captcha) each time I enter a new prompt. I haven't used puppeteer before but looks like it's opening a new window each time, but there might be a way to reuse an already open window?  🤔  Please ignore if it already does that.
Some digging led me to links below:
https://medium.com/@jaredpotter1/connecting-puppeteer-to-existing-chrome-window-8a10828149e0
https://github.com/puppeteer/puppeteer/issues/1788

@Hexona69 now that you mentioned, i went back and saw i'd commented a line earlier to make changes related to auth. my bad.
i fixed it and it seems to work till clearance token doesn't expire. will look into your idea to run the login process periodically. thanks!


anyone know how to fix this?

Bumping because i too have this error where it says it can't open my camera, even though i can use the camera with other things


create-cilium-policy

create default cilium policy

@fiunchinho that works for aws as well?

isn't it wonderful?
ignore it for now because it's taken the latest release of cluster-aws and that has the issue you mentioned about permissions


Add example of including Media Type Plug-ins?

Hi there,
I'm quite interested in moving to 1.0.0+ but I was not able to find a good example of how to include for instance the json-hal plugin in traverson-angular. Could an Angularjs example be added to the docs?
Thanks for the good work.
Best regards,
Nils

I added an example:

https://github.com/basti1302/traverson-angular/blob/master/browser/example/hal.html
https://github.com/basti1302/traverson-angular/blob/master/browser/example/hal.js

But it really works the same as for traverson core, there is no difference to integrate media type plug-ins when using traverson-angular.
TL;DR:

Add traverson-hal.min.js (script tag or whatever)
Register the media type: traverson.registerMediaType(TraversonJsonHalAdapter.mediaType, TraversonJsonHalAdapter);
If necessary force Traverson to use HAL with .jsonHal()
If necessary, add Accept headers so your server knows you want to talk HAL: .withRequestOptions({ headers: { 'accept': 'application/hal+json' } })


feat: Support lambda function vpc_config.ipv6_allowed_for_dual_stack and event source mapping tags

Description
Add support for vpc_config.ipv6_allowed_for_dual_stack for lambda functions.
Add support for tags in event source mappings.
Add lambda_event_source_mapping_arn to outputs.
Motivation and Context

https://github.com/hashicorp/terraform-provider-aws/pull/39535
https://github.com/hashicorp/terraform-provider-aws/pull/34045

Breaking Changes
No.
How Has This Been Tested?

[x] I have updated at least one of the examples/* to demonstrate and validate my change(s)
[x] I have tested and validated these changes using one or more of the provided examples/* projects

[x] I have executed pre-commit run -a on my pull request

CI failures are due to Github actions runner image using python 3.12 now. Looks like there is an issue  and fix open related to this in clowdhaus/terraform-composite-actions.

Thank you, @magreenbaum !

This PR is included in version 7.14.0 :tada:


[BUG]: In DFP, inconsistent training time on a large training job

Version
23.07
Which installation method(s) does this occur on?
Docker
Describe the bug.
Training a large data set, with ~400 users, (called "source_ip", and having a standard ip address as username), 20 millions rows.
Noticed that while, as per logs output, typical model takes 100ms - 1s to train, sometimes there is a delay of 20minutes between log entries (see the "Relevant log output section below", where some typical username models are followed at 22:04:44 by a 16 minute gap). This is not associated with a particularly big sub-set of the data being modeled (according to the logs).
I'm using an AWS g4dn.4xlarge instance, and it look like:

memory is not depleted, swap not used.
gpu memory is not depleted
gpu is working particularly hard (~20-30%)

There are two issues here, I think: First, the delay itself, and second, that the logs "pause"  for 15 minutes. If the delay is justified (say it just takes this much time to train this user) - then perhaps a more detailed log outputs, such that they capture what happens in those 15 minutes, should be considered?
Minimum reproducible example
# This is based off the examples/digital_fingerprinting/production/dfp_duo_training.ipynb
# Running with a big data set. In particular the pipeline is build and run using the following
# (unchanged example code)

# Create a linear pipeline object
pipeline = LinearPipeline(config)

# Source stage
pipeline.set_source(MultiFileSource(config, filenames=input_files))

# Batch files into buckets by time. Use the default ISO date extractor from the filename
pipeline.add_stage(
    DFPFileBatcherStage(config,
                        period="D",
                        date_conversion_func=functools.partial(date_extractor, filename_regex=iso_date_regex)))

# Output is S3 Buckets. Convert to DataFrames. This caches downloaded S3 data
pipeline.add_stage(
    DFPFileToDataFrameStage(config,
                            schema=source_schema,
                            file_type=FileTypes.JSON, # originally FileTypes.JSON
                            parser_kwargs={
                                "lines": False, "orient": "records"
                            },
                            cache_dir=cache_dir))

# This will split users or just use one single user
pipeline.add_stage(
    DFPSplitUsersStage(config,
                        include_generic=include_generic,
                        include_individual=include_individual,
                        skip_users=skip_users))

# Next, have a stage that will create rolling windows
pipeline.add_stage(
    DFPRollingWindowStage(
        config,
        min_history=300 if is_training else 1,
        min_increment=300 if is_training else 0,
        # For inference, we only ever want 1 day max
        max_history="60d" if is_training else "1d",
        cache_dir=cache_dir))

# Output is UserMessageMeta -- Cached frame set
pipeline.add_stage(DFPPreprocessingStage(config, input_schema=preprocess_schema))

# Finally, perform training which will output a model
pipeline.add_stage(DFPTraining(config, validation_size=0.10))

# Write that model to MLFlow
pipeline.add_stage(
    DFPMLFlowModelWriterStage(config,
                                model_name_formatter=model_name_formatter,
                                experiment_name_formatter=experiment_name_formatter))

# Run the pipeline
await pipeline.run_async()

Relevant log output
2023/04/28 22:04:43 INFO mlflow.tracking.fluent: Experiment with name 'dfp/tcp-open/training/source-ip-<IP_ADDRESS>' does not exist. Creating a new experiment.
Preprocessed 688 data for logs in 2022-10-26 04:08:08+00:00 to 2022-11-01 04:59:48+00:00 in 55.34172058105469 ms
Rolling window complete for <IP_ADDRESS> in 66.14 ms. Input: 2740 rows from 2022-10-26 10:09:55+00:00 to 2022-10-31 18:22:29+00:00. Output: 2740 rows from 2022-10-26 10:09:55+00:00 to 2022-10-31 18:22:29+00:00
Successfully registered model 'source-ip-<IP_ADDRESS>'.
2023/04/28 22:04:44 INFO mlflow.tracking._model_registry.client: Waiting up to 300 seconds for model version to finish creation.                     Model name: source-ip-<IP_ADDRESS>, version 1
ML Flow model upload complete: <IP_ADDRESS>:source-ip-<IP_ADDRESS>:1
Training AE model for user: '<IP_ADDRESS>'...
Training AE model for user: '<IP_ADDRESS>'... Complete.
Training AE model for user: '<IP_ADDRESS>'...
Preprocessed 641 data for logs in 2022-10-26 00:47:10+00:00 to 2022-11-01 06:46:04+00:00 in<PHONE_NUMBER>5507812 ms
2023/04/28 22:20:53 INFO mlflow.tracking.fluent: Experiment with name 'dfp/tcp-open/training/source-ip-<IP_ADDRESS>' does not exist. Creating a new experiment.
Rolling window complete for <IP_ADDRESS> in 102.77 ms. Input: 3010 rows from 2022-11-01 01:10:38+00:00 to 2022-11-01 01:20:54+00:00. Output: 3010 rows from 2022-11-01 01:10:38+00:00 to 2022-11-01 01:20:54+00:00
Successfully registered model 'source-ip-<IP_ADDRESS>'.
2023/04/28 22:20:55 INFO mlflow.tracking._model_registry.client: Waiting up to 300 seconds for model version to finish creation.                     Model name: source-ip-<IP_ADDRESS>, version 1
ML Flow model upload complete: <IP_ADDRESS>:source-ip-<IP_ADDRESS>:1
Training AE model for user: '<IP_ADDRESS>'... Complete.
Training AE model for user: '<IP_ADDRESS>'...

Full env printout
No response
Other/Misc.
Maybe related to #816? But that one was about consistently large training times, I think. Here, some models train fast, but some train slow.
Code of Conduct

[X] I agree to follow Morpheus' Code of Conduct
[X] I have searched the open bugs and have found no duplicates for this bug report

@Tzahi-cpacket a few things to try:

Re-run with debug logging enabled see if that lends some insight:

import logging
from morpheus.utils.logger import configure_logging
configure_logging(log_level=logging.DEBUG)

Double-check that the date_extractor is properly inferring the dates of your files. Specifically ensure that the iso_date_regex regex matches your filenames. Assuming your using the date_extractor from morpheus/utils/file_utils.py it will silently fall-back to using the file system's modified time as the timestamp when the regex doesn't match.

This could be the cause of your issue if the file system's modified time represents the time the files were downloaded, then the pipeline could be unintentionally grouping all or a large number of the files into a single batch.

On the other-hand if it is correctly identifying your timestamps then the period parameter to the DFPFileBatcherStage could be too large (currently one Day) and might benefit from being lowered, say to an hour period="H".

It might also be the case that the data might not be evenly distributed across days.

Ensure your using the suggestions from related issue #816

Removing the Needs Triage label from this as we're working this issue in the 23.11 release.


"Deployment stopped with unknown error".

Describe the bug
"Deployment stopped with unknown error".
Tried the usual suspects. pretty consistent ( repeatable)
Link to the Bolt URL that caused the error
https://bolt.new/~/sb1-jbaze2
Steps to reproduce
click "deployment" button
Expected behavior
deployment :-)
Screen Recording / Screenshot

Platform
Browser name = Chrome
Full version = <IP_ADDRESS>
Major version = 129
navigator.appName = Netscape
navigator.userAgent = Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36
performance.memory = {
  "totalJSHeapSize": 48636711,
  "usedJSHeapSize": 42581175,
  "jsHeapSizeLimit":<PHONE_NUMBER>
}
Username = LiebUr
Chat ID = d142297ba235

Additional context
Error:
An error occured while streaming this message.

Thanks for the report and patience during this beta period! Tracking all deployment related bug fixes in issue #499


JSHint and ESLint framework detectors

Like we decided some time ago, I finally got around to doing this.
Supports .jshintrc (ember-cli default) and .eslintrc.js (ember-cli-eslint default) but not all the other config types.

that looks awesome, thanks!


OSL Internship 2024-01 Ideas

Project Idea 1: Sugar - TUI
Abstract
[Short summary or abstract of Project Idea 1]
License
BSD 3 Clause: https://github.com/osl-incubator/sugar/blob/main/LICENSE
Code of Conduct
https://github.com/osl-incubator/sugar/blob/main/CODE_OF_CONDUCT.md
Current State
[Current status or progress of Project Idea 1]
Tasks

Expected Outcomes
[Desired results or achievements for Project Idea 1]
Details

Prerequisites:
[List prerequisites here]
Expected Time: [#] hours (note: minimum 240 hours)
Potential Mentor(s): Ivan Ogasawara

References
[Include any relevant links or resources for this project idea]

Project Idea 2: Enhancing Sugar with Deployment Capabilities
Abstract
The primary objective of this project is to augment Sugar, a container management tool, with comprehensive deployment capabilities. Sugar simplifies the usage of container orchestration tools like Docker Compose by centralizing configurations and streamlining command-line options. The proposed enhancement aims to incorporate a deployment module into Sugar's existing framework, allowing for seamless deployment processes alongside container management.
The core idea is to integrate a new configuration section within Sugar's configuration file, dedicated to deployment settings. This section would specify various deployment parameters such as server details, credentials, file paths, and environment variables. By leveraging Ansible as a backend library (not just its CLI), the deployment process can achieve greater flexibility and adaptability to different environments.
This enhancement proposes the introduction of a new class, potentially named SugarDeployment, which would integrate into Sugar’s existing plugin system. This class would handle the deployment logic, interpreting the deployment-specific configuration and executing necessary actions. Users would interact with this functionality through a simple command like sugar deploy, following Sugar's philosophy of simplicity and ease of use.
The project will involve working on aspects such as:

Designing and implementing the SugarDeployment class.
Integrating Ansible library to handle deployment tasks.
Defining and parsing new configuration schema for deployment settings.
Ensuring compatibility and integration with existing Sugar functionalities.

This enhancement not only aims to add deployment capabilities to Sugar but also to maintain its user-friendly and flexible nature. The project offers interns an opportunity to contribute to a tool that simplifies and organizes container stacks, making the life of developers and system administrators easier.
License
BSD 3 Clause: https://github.com/osl-incubator/sugar/blob/main/LICENSE
Code of Conduct
https://github.com/osl-incubator/sugar/blob/main/CODE_OF_CONDUCT.md
Current State
Sugar is already published on pypi and conda-forge, and currently works on top of docker compose v2.
Tasks

https://github.com/osl-incubator/sugar/issues/85

Expected Outcomes
Deploy to a docker stack on a remote server using sugar deploy command.
Details

Prerequisites:

Python
Object-oriented programming (OOP)
docker compose
ansible
ssh

Expected Time: 240 hours
Potential Mentor(s): Ivan Ogasawara

References

https://dev.to/rimelek/ansible-playbook-and-ssh-keys-33bo
https://docs.docker.com/compose/
https://realpython.com/python3-object-oriented-programming/
https://osl-incubator.github.io/sugar/


[DRAFT] MINOR: Bump master to 7.8.0-0

Do we need to coordinate with the version bump from the rest of CP?

Do we need to coordinate with the version bump from the rest of CP?

Yes, will check with CP team


Fix bugs in rwset and slru read.

Add XACT_EVENT_PREPARE as another event for resetting the rwset.
There exists a code path where latest in neon_slru_read_page is uninitialized so initializing it.

I found 3 different bugs.
The most serious one is in this PR: https://github.com/DSLAM-UMD/postgres/pull/72/files. There I used the LocalBufHdrGetRemoteDesc macro to get a remote buffer descriptor based on the buf_id inside buf. However, at that point, buf_id wasn't initialized yet so we would be indexing into the wrong places of the array.
The other 2 are in this PR and I'll comment directly on them in the code.


Replace FlatSpec by Suite in ServiceSuite

This PR replaces the self type annotation FlatSpec by Suite in ServiceSuite and ServiceIntegrationSuite so those can be mixed in with any scalatest specs (WordSpec, FlatSpec, etc).

[Current coverage][cc-pull] is 74.55%

Merging [#609][cc-pull] into [master][cc-base-branch] will not change coverage

Powered by Codecov. Last updated by [fcfca6e...d34f308][cc-compare]
[cc-base-branch]: https://codecov.io/gh/finagle/finch/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/finagle/finch/compare/fcfca6e902b945f321bb85ffb1d7f4d1a45ee585...d34f30886048d86ddfa38bcdb705bbca34d7773f?src=pr
[cc-pull]: https://codecov.io/gh/finagle/finch/pull/609?src=pr

Thanks @BenFradet! Merging this in - should be released as part of 0.11-M1.

As a follow-up I was thinking we should add tests using those suites to the examples so people can refer to those to test their apps, what do you think?

ping @vkostyukov , what do you think about ^?


Cannot use functions in view templates when calling sails.renderView()

When using res.view() with locals, you can pass in objects that reference functions (e.g. using moment to allow formatting of dates in the template).
If you call sails.renderView(), the line at:
https://github.com/balderdashy/sails/blob/f8870e796c22f5f9e39fb9d7c0047d73c82b157e/lib/hooks/views/render.js#L37
clones the options, but that removes any references to functions in the local vars that you may want to use in the EJS templates (so you can't use moment.format() to format your dates for example).

Is this resolved with a new release?


Async.StartWithContinuations not tail calling, possible trampoline bug?

Consider the following snippet:
let foo x = Async.FromContinuations(fun (s,e,c) -> Async.StartWithContinuations(x,s,e,c))

let rec test n = async {
    if n = 0 then return ()
    else
        return! foo <| test (n-1)
}

Async.RunSynchronously (test 1000000) // stack overflow

I would expect the above piece of code to function without incident, however the process dies with a stack overflow. It looks like Async.StartWithContinuation is not making tail calls properly, and at the same time the Trampoline mechanism seems to fail in offloading the stack.

The following works fine.
let foo x =
  Async.FromContinuations(fun (s,e,c) ->
    let x = async {
      do! Async.SwitchToThreadPool ()
      return! x
    }
    Async.StartWithContinuations (x,s,e,c))

let rec test n = async {
    if n = 0 then return ()
    else
        return! foo <| test (n-1)
}

Async.RunSynchronously (test 1000000)

The stackoverflow seems consistent with the behavior of the trampoline here

@eulerfx The problem with SwitchToThreadPool is that it always enqueues the current continuation to the threadpool, which I assume might create latency issues. Regardless of how Async.FromContinuations behaves, I think that something goes wrong with the trampoline bind count in the current thread; it should have reached that 300 bind limit way before a stack overflow happened by virtue of all the bindings that compose with foo.

IMO it should be expected:

I don't think that Async.StartWithContinuations can be protected by trampoline. The reason is that some help from its caller would be needed. But usually callers of Async.StartWithContinuations don't know anything about trampolines. IMO this holds for all public functions from Async module which don't return Async.

Async.FromContinuations cannot protect given function from stack overflow. To do so some help from the given function would be needed (eg. the given function should interrupt itself and store current continuation somewhere when running low on stack space).

I think that the problem boils down to the fact that Async.StartWithContinuations creates a fresh TrampolineHolder instance and this seems to be resetting the bind count every time it is called. In MBrace (which is a continuation library very similar to async) we solve this problem by assigning a unique bind counter to each thread. So the equivalent code does not fail:
#r "MBrace.Core.dll"
open MBrace.Core
open MBrace.Core.Internals

let foo x = Cloud.FromContinuations(fun e c -> Cloud.StartImmediateWithContinuations(x,c,e))

let rec test n = cloud {
    if n = 0 then return ()
    else
        return! foo <| test (n-1)
}

Cloud.RunSynchronously (test 1000000) // stack overflow

@eiriktsarpalis Interesting. If I understand approach of MBrace correctly it executes fun e c -> Cloud.StartImmediateWithContinuations(x,c,e) in a new thread whenever bindCount reaches 300? And since 300 (or less) calls to fun e c -> Cloud.StartImmediateWithContinuations(x,c,e) terminate quickly the number of ThreadPool threads is low.
Clever, I was not considering using more threads.
BTW why not base Async implementation on MBrace?

@radekm Correct. Async does more or less the same, but Async.StartWithContinuations seems to be somehow resetting the trampoline state. At the same time, the logic of the Async trampoline implementation seems strangely convoluted to me, I'm not sure if it serves a purpose I do not grasp or if it's simply a historical artifact.
In MBrace the trampoline is much more simplistic: https://github.com/mbraceproject/MBrace.Core/blob/master/src/MBrace.Core/Utils/Trampoline.fs#L18
As you can see the bind counter is global to current thread, so if Cloud.StartImmediateWithContinuations is being called deep in the stack, this information will be passed on to nested workflows for timely offloading.

Closing this old discussion


Icons won't re-render on route change

I included vivid-icons in a Vue.js project which uses vue-router for navigation. The problem is that although the icons are rendered upon first load, when navigating to another route, icons won’t be rendered but the original markup (<i data-vi=”...” />) stays in place.
Is there a way to force re-rendering of vivid-icons?
A workaround I found, is to export the watchInjection function of src/inject.js and then call it every time from the mount callback of the Vue components. Although this works, I would prefer to have icons somehow automatically re-rendered when it is needed.
Thank you for this library, nice work.

Currently that's the only way, but may be in future We'll look on that grounds too.


[Web-34] Fuzzy search for department dropdown

Implemented fuzzy search for department dropdown using fuse.js
minor styling adjustments:

darken borders of AppSelect and AppInput in the light theme
widen Course Bag for wider screen

 [Web] Implement fuzzy searching for Department options

 [Web] Add clear button for CourseBag


Fix exception on empty string

Currently, when an empty string is contained in the message pack the code will throw an exception. This seems like the wrong behaviour as I believe an empty string is completely valid (0xa0).
This change returns an empty string "" when a count of 0 is found.

Thanks for this! What an oversight on my part 😅


Adding sourceUrl support to specify customized yamls

This is one feature documented in https://docs.google.com/document/d/1ehd5Yx4aSottuv7FYW4JeplNULJCs7nnDfy29y3NH8k/:
Operator CRs have supported spec.version. Next, we will offer admins the flexibility to specify links of customized yamls.
spec:
  version: 0.14.0
  manifests:
  - sourceUrl: https://github.com/knative/serving/releases/{{.Version}}/serving-core.yaml
  - sourceUrl: https://github.com/knative/serving/releases/{{.Version}}/serving-cert-manager.yaml
  - sourceUrl: https://github.com/knative/net-istio/releases/{{.Version}}/net-istio.yaml

Any particular reason for sourceUrl? Can it just be url? Or even just a string unless there are other fields for each manifest, in which case, can they be listed here, too?

I just copied and pasted the contents in the design doc.
'sourceUrl' can be replaced with "URL".

For new official releases:
If there is a new knative serving release, e.g. 0.17.0, we can install this version, with the current operator without bundling. The serving CR is written like:
spec:
  version: 0.17.0
  manifests:
  - URL: https://github.com/knative/serving/releases/v${version}/serving-core.yaml
  - URL: https://github.com/knative/serving/releases/v${version}/serving-hpa.yaml
  - URL: https://github.com/knative/serving/releases/v${version}/serving-post-install-jobs.yaml

For customized releases:
Manifests can be published anywhere, e.g. https://my-knative/serving/releases/v0.17.0/serving-core.yaml.
Define serving CR as:
spec:
  version: 0.17.0
  manifests:
  - URL: https://my-knative/serving/releases/v${version}/serving-core.yaml


Tracking: Align error messages with Webpack

- [ ] https://github.com/web-infra-dev/rspack/issues/4363
- [ ] https://github.com/web-infra-dev/rspack/issues/4364
- [ ] https://github.com/web-infra-dev/rspack/issues/1823
- [ ] More error categories

Need the following improvements:

Use color to distinguish important and not important informations
Provide correct codeframe
Provide better typography

bump


onAppOpenAttribution never reported on first boot of app

Our issues looks somewhat similar to #30 however in our case onAppOpenAttribution is not called at the very first boot of the app, subsequent times the app is started the callback returns just fine.
This is an issue for us because we rely on AppsFlyer to give us this data to present user-specific data precisely at first boot. Is there any way around this?

A workaround that works for us is to call the InitSDK function twice. We would love to see a proper fix though.

I can confirm this is happening both on Android and iOS

this is still happening in android especially after app killed


Write package - include size hint for zstd?

Apparently it's possible to give zstd a hint for the "decompressed size" of the tarball and that is supposed to improve memory usage when decoding.
The conda team added this as described here: https://conda.discourse.group/t/conda-package-streaming-0-8-0-and-conda-package-handling-2-1-0-released/267

Do you know if there is an API available in rust that we can use?

We already did this :)

In #469


Update README.md

Removal of redundant links. The same link was added twice by different names.

@Shahzaib0217 could you point me to the second link?

Yes, I have highlighted both links.

Thanks 🙏🏻 . actually, it would be best to keep the link to the playlist and also it needs to be renamed as Greg apparently renamed his channel.

thanks @Shahzaib0217 I have merged your changes and renamed the playlist.

Okay, thank you.
On Mon, 3 Jul 2023, 4:58 pm Stéphane Busso, @.***>
wrote:

thanks @Shahzaib0217 https://github.com/Shahzaib0217 I have merged your
changes and renamed the playlist.
—
Reply to this email directly, view it on GitHub
https://github.com/kyrolabs/awesome-langchain/pull/40#issuecomment-1618089703,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AT2IZKAZAJBPVPMB2CYNFXLXOKXXHANCNFSM6AAAAAAZ3NFY74
.
You are receiving this because you were mentioned.Message ID:
@.***>


PIP 113: Update Pulsar Website Design & Content

Motivation and Goal
Several ML threads indicated that the Pulsar site underrepresented the technology and community. Our goal is to make the Pulsar website the premier destination for end users and current/prospective community members with a holistic update to the design and content -- get a full picture of Pulsar in one place.
Implementation
The community has voted on a new design for the Pulsar website. ML thread:  https://lists.apache.org/thread/xshx8hf5b2lhq1jlld4zjlww6nwjt61t
The chosen design is viewable here: https://www.dropbox.com/sh/rwvnb36g7zmxptz/AAAIKHqfkWD6OwdY-OSG7Ovoa?dl=0
Front-end design and content updates will be implemented in collaboration with the back-end work on PIP 87 (upgrading the website framework Docusauraus): https://github.com/apache/pulsar/wiki/PIP-87%3A-Upgrade-Pulsar-Website-Framework-(Docusaurus)

Homepage template design/dev - Estimated Completion Date 12/23/2021
Landing page template design/dev -  Estimated Completion Date 1/7/2022
General page template design/dev - Estimated Completion Date 1/7/2022
Library page template design/dev - Estimated Completion Date 1/7/2023
Events page template design/dev - Estimated Completion Date 1/14/2022
Blog landing template design/dev - Estimated Completion Date 1/14/2022
Blog detail template design/dev - Estimated Completion Date 1/21/2022
Docs skin template design/dev - Estimated Completion Date 1/21/2022
Front-end development for all templates
Ensure ASF compliance
Quality assurance
Launch

We will also be providing recommended content updates to fit the new layout here:
https://docs.google.com/document/d/1rcmTcAGrf6lrDMHf_SRwD4xQp8mZddSoFjkgwc3OO6M/edit
Reject Alternatives
Four designs were presented to the community for a vote; the one with the most votes was chosen.

The website redesign project is almost complete. We have been attending weekly calls on Tuesdays at 4pm PT for the past 3 weeks to coordinate efforts with the docs contributors. We started a #website channel on Slack for real-time collaboration.
A staging environment was created (https://github.com/apache/pulsar/pull/13855). Before we can submit the design to commit, we are waiting for a resolution on an issue we raised last week regarding duplicative design work being created on PIP 87 that broke @Paul-TT's updates; being discussed on #website.
Updates:

Design/dev: All pages are done — we’re making final refinements to copy and design/dev this week.
Content: We shared updated content for the case studies and ecosystem pages on #dev Slack last week for input. Our approach was to only include those we could source on the web to ensure we don't run afoul of logo permissions issues and to be in compliance with ASF. There are several “powered by” logos on the current site we couldn’t find case studies for — if anyone has links to those, please add to this doc.
Ecosystem: That doc also includes a tab for adapters, connectors, and third-party ecosystem items that work with Pulsar. Suggestions and amendments greatly appreciated. Once the site is up, additional items can be added via a pull request.

Once people are back from holiday next week or the week after, we anticipate being able to submit the request to go live shortly thereafter.

From our weekly website call, we are close to launch.
Next steps:

Submitting to website-next repo
Li Li to resolve changes that were conflicting w/ local build
Constantia team to do final site QA/proof in staging environment
Group to make any final modifications
Li Li to merge and update new site

Final steps toward launch summarized here under March 8 Meeting.
Next steps:

Paul’s current PR approved by Yu (w/ any changes)
Everyone will review updated staging site; Yu to send form/request to user community (survey, keep it time bound)
In tandem Paul will work on next round of updates (above)
Paul will incorporate any final updates from team + users and submit PR
Final review by team (checklist) and go live

Closed as delivered. The new website is online.


pdb_selres check_input

version 2
pdb_selres is not evaluating the input correctly when -1:2:3:4 argument is given, according to:
ERROR!! Residue range must be in 'a:z:s' where a and z are...
Some sys.exit(1) are also missing when sys.stderr.write() which hinders the correct testing.
Tests have been written and currently output errors, waiting for this correction.

Fixed both, thanks!


Is there any plan to support interactive grid for APEX 5.1?

Dear Vincent,
I am using Material Design APEX theme in our project and many of features are very powerful.
I wish to know if there is any plan to update this theme and support interactive grid for APEX 5.1?
Thanks and have a nice day!
Best Regards,
Kenny Wang

Hi Kenny,
Thank you for asking. Yes, I plan to support interactive grid in the first release after APEX 5.1.
At this time, the most important concern is that is it not possible to upgrade a theme without losing all assigned template options. The APEX team is aware, I have been talking with Marc Sewtz about it and they are looking for a solution.
Basically, even if Material APEX supports Interactive Grids in the future, you wouldn't be able to upgrade your app.
Hopefully this will be fixed soon.

Closing this one as of #101


reduce archive zng files in create archive test

This is just a workaround for @aswan who's seeing a 'too many files' open error, a real fix for the general issue will come later, filed https://github.com/brimsec/zq/issues/832 .

(fwiw a good old ulimit -n has also let me run these tests)


feat: allow to pass parameters to dialogs

🙋 Feature Request
I'm writing this feature request as a result of my discussion, which can be found here: https://github.com/microsoft/fluentui-blazor/discussions/2443
The issue here is to collect and exchange feedback regarding the DialogService within this library. In my opinion, the current way dialogs work isn't very useful in many cases because their use case only fits in very specific ways.
😯 Current Behavior
Currently, you can only bind to components that implement either IDialogContentComponent or IDialogContentComponent<T>. In addition, you cannot pass additional parameters to the dynamic component. You either need to add them to your model or create custom parameters that inherit from DialogParameters and cast them within your component every time. Both ways result in much boilerplate code, which is hard to maintain.
💁 Possible Solution
I would like to be able to use this kind of syntax:
private Modal _editModal = default;

protected override async Task ShowEditModalAsync(Customer? input = null)
{
// Provide parameters as dictionary
    var parameters = new Dictionary<string, object>
    {
        { nameof(CustomerForm.Model), input ?? new() },
        { nameof(CustomerForm.OnCancel), EventCallback.Factory.Create(this, _editModal.HideAsync) }, // Bind to modal close if you want
        { nameof(CustomerForm.OnSave), EventCallback.Factory.Create<Customer>(this, SaveAsync) } // Bind to other methods which has an input parameter
    };

    string modalTitle = input is null ? "New customer" : "Edit customer";

    await _editModal.ShowAsync<CustomerForm>(modalTitle, parameters: parameters);
}

The component itself should then create an instance of the provided component and fill all parameters. It would be even better if I could pass functions from the dialog itself as parameters.
🔦 Context
I want to pass additional parameters from outside to my dynamic component. For example, some sort of filters or rules for displaying content within the component itself.
In addition, I want to be able to use any component as a dynamic component for a dialog without having to implement the IDialogContentComponent or IDialogContentComponent interfaces every time.
💻 Examples
Let's say I have a component that displays a user list and allows me to filter them by name. So, I provide a filter class named UserFilter, which contains both age and username attributes.
Now, I have certain views. The first view should always display users above the age of 18. The other one can be changed according to the user's needs. So, I don't want the user to change the value for the age filter in view 1.
In Blazor, I would achieve this like this:
View 1:
<UserSearch Filter="MyFilter" AllowToChangeAge="false" />

View 2:
<UserSearch Filter="MyFilter" AllowToChangeAge="true" />

The alternative would be to apply this property to my filter class, but I don't want to change my filter model. In some cases, I cannot change the class at all since I cannot modify the original source files.

Hi,
Because of vacation period, this will not see much activity in the coming weeks from my side.

@vnbaaij don't worry. I just wanted to sort this one out of my large post because this is really important to me. Have a nice vacation! :)

I support this request strongly.
This would be very useful.
Nowadays I create separated class just for combining few objects from page from which I open Dialog. But I have more and more features/forms in my app so maintenance is getting harder.

Hi @vnbaaij
I've done some research on this. In my opinion the biggest downside of the FluentDialog is the direct implementation of the Content property.
This limits the use of this component by a lot. Since v5 will introduce a lot of breaking changes anyways I would like to suggest to get rid of the TData implementation all together. Instead of the content you should allow the user to pass a Dictionary<string, object?> as paramters for the specified generic component. Those parameters should then be bound to the DynamicComponent which is currently only passing a Content parameter.
See:
https://github.com/microsoft/fluentui-blazor/blob/a83077bf6434ef143e90d2661e0e4efe6a1b2a72/src/Core/Components/Dialog/FluentDialog.razor#L31 & https://github.com/microsoft/fluentui-blazor/blob/a83077bf6434ef143e90d2661e0e4efe6a1b2a72/src/Core/Components/Dialog/Services/DialogInstance.cs#L22
This will allow the user to pass as many parameters as they want to the generic component which allows for much more complex implementations.
Let me think what you think about this approach.

@dvoituron  is already working on that for v5 (code is in the dev-v5 branch)...

Any component can be displayed (no need to implement an interface)
Any type can be passed to any [Parameter] property (e.g. Name and Age)

Example call:
var parameters = new DialogParameters(factory =>
{
    factory.Title = "My title";

    factory.Content.Add(nameof(SimpleDialog.Name), "John");
    factory.Content.Add(nameof(SimpleDialog.Age), 20);

    factory.OnStateChange = (e) =>
    {

     Console.WriteLine($"Dialog state changed: {e.State}");
    };
});

var dialog = await DialogService.ShowDialogAsync<SimpleDialog>(parameters);
var result = await dialog.Result;

https://github.com/user-attachments/assets/02ad968e-6d7d-42c8-974c-58a3094b26df

@vnbaaij you guys are my heros! I can't wait to get my hands on this!

We aim to please! But getting this out will probable still take a while...

Yea sure! At least I know that the end will come! :)

Yea sure! At least I know that the end will come! :)

I've taken another look on the draft by @dvoituron . I must say, I really really like this factory approach! Good job.


Curses is missing

The /usr/local/lib/python2.7/lib-dynload/_curses.so is missing on the python:2.7-slim image which disables the usage of the builtin curses module.

Arg!  I can reproduce:
$ docker run -it --rm python:2-slim
Python 2.7.10 (default, Jun  3 2015, 00:44:20)
[GCC 4.9.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import curses
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python2.7/curses/__init__.py", line 15, in <module>
    from _curses import *
ImportError: No module named _curses


Menu bar toggling is inconsistent with the rest of Windows

I'm splitting out some previously reported issues since they weren't resolved with the fix to the original issue.
There are a couple of quirks with the keybinding for toggling the menu bar that don't match other Windows applications and cause workflow annoyances. These both occur when window.menuBarVisibility is set to toggle.

Hold Ctrl, press and release Alt, notice the menu bar is toggled.
Expected: the menu bar is not toggled.
I've tested with various other applications on Windows including Notepad, Paint, and Firefox. None of them do this.

Press and release Alt, press escape, notice the menu bar does not get hidden.
Expected: the menu bar should be hidden.
I tested with Firefox and Visual Studio 2015 (using https://marketplace.visualstudio.com/items?itemName=MatthewJohnsonMSFT.HideMainMenu) and both will hide the menu bar when escape is pressed.

Issue 1 is a daily annoyance for me, as it seems to happen very frequently when I jump between editor groups.
Also, the new custom title bar doesn't have these issues and it feels like the menu bars should be consistent with each other and with the rest of the Windows experience.

@akbyrd just to clarify, this issue is specific to the old style menu bar?

This only applies to the old menu bar.

Assuming this is the same issue: when I use Alt-\`` (toggle Japanese input method) focus moves to the menu bar (as though I'd just tapped Alt`). Extremely frustrating when trying to write text in mixed Japanese/English!

I'm having a somewhat similar issue but the relevant ones seem to have been locked.

System Information:

Environment: Linux x64 5.6.15-arch1-1
DE: GNOME 3.36.2
Display Server: X11
VS Code Version: 1.45.1
Commit: 5763d909d5f12fe19f215cbfdd29a91c0fa9208a
Date: 2020-05-14T08:27:22.494Z
Electron: 7.2.4
Chrome: 78.0.3904.130
Node.js: 12.8.1
V8: 7.8.279.23-electron.0

Extension Table:

Extension
Author (truncated)
Version

textile
idl
0.1.5

latex-workshop
Jam
8.10.0

textile-preview
mic
1.0.2

python
ms-
2020.5.80290

code-spell-checker
str
1.9.0

vscode-icons
vsc
10.1.1

vim
vsc
1.14.5

Reproducible Steps:

Split terminal using Ctrl+Shift+%
Press Alt+Right Arrow to switch to terminal on right

Expected Behaviour: Cursor switches to terminal on the right followed by user actions such as input, etc.
Observed Behaviour: Cursor switches to terminal on right followed by Menu Bar becoming visible or focused depending on prior setting of Menu Visibility.
Notes: The behaviour is also observed when using any two keystroke command involving a leading Alt, such as any GNOME based shortcuts. It can also be observed by pressing Ctrl+Alt, which ideally should not lead to a capture of Alt.

@deepak1556 this is an old issue about electron's menus

from https://github.com/microsoft/vscode/issues/58377#issue-358736702 is addressed, 1) is still present. Closing as blocked on upstream.


not able to use thrust::inner_product

Hello,
I am trying to use thrust::inner_product but I am getting the error-
error: namespace "thrust" has no member "inner_product"
I am using Cuda-8.0 and I checked that its thrust library has the file inner_product.h. I am still getting this error. Any ideas about how to fix this?
Regards,
Manasi

Please post a minimal code sample that reproduces the issue. Are you including <thrust/inner_product.h>?
Btw. CUDA 8 is a rather old release ;)

I had not included the header file.That was rather silly of me.
And yes, I am aware that Cuda-8.0 is an old release but I am using an application RapidCFD which is compatible with Cuda-8.0 only. So...
Thanks for the quick reply.
Regards,
Manasi


fix a doc issue on scheduler.md.

Just found a doc issues on scheduler.md.

Correct. 👍 I would merge this

:shipit:

Merged with b7ca78a, thanks @simpzan . I've amended commit message bit while check in changes to conform commit message guidelines (https://github.com/ReactiveX/rxjs/blob/master/CONTRIBUTING.md#commit) which is being used to automate changelog / history.


Need to add the ability to hide/show console.log prints separately from comments

Need option to show/hide console.log() prints with a separate button / keyboard shortcut.

@cfoxy17 if I understand correctly, you want to be able to hide the console.log(...) lines instead of the comments?

I think there should be pattern matching hide. ie match console.log(** and hide line or command in multi line console command.
or any predefined filter like /*HIDE:*/ after this tag line will be hide. these filters you can see in a list and you can enable and disable specific tags/filters.


fix: fix upper limit label of demand rank #trivial

The type of this PR is: Bugfix
This PR resolves CX-783
Description
Update upper limit label for demand index progress bar.
Screenshots

PR Checklist (tick all before merging)

[x] I have included screenshots or videos to illustrate my changes, or I have not changed anything that impacts the UI.
[x] I have added tests for my changes, or my changes don't require testing, or I have included a link to a separate Jira ticket covering the tests.
[x] I have documented any follow-up work that this PR will require, or it does not require any.
[x] I have added an app state migration, or my changes do not require one. (What are migrations?)
[x] I have added a CHANGELOG.yml entry or my changes do not require one.

Just wrote a comment on this ticket: I feel like the labels should actually be 0 and 10 - 0.0 and 10.0 look a bit silly to me 🤔

I also realise now that (a) it should probably say Very strong demand (>9.0), shouldn't it? (b) The text underneath that sentence contains placeholders

I also realise now that (a) it should probably say Very strong demand (>9.0), shouldn't it? (b) The text underneath that sentence contains placeholders

Good catch on the 0.9, I think at some point this value changed from a value between 0 and 1 to a value between 1 and 10. I will update. On the text underneath, that is to spec although I agree it looks a bit weird. https://www.figma.com/file/yDSHlbJVzBxvSUROD2bfRI/Sell-tab?node-id=2943%3A19660

@admbtlr good callout on the labels – lets use 0 – 10 and drop the decimal here. For the actual demand index value, I think we should just use 1 decimal place, i.e. 9.7 instead of 9.73. If anything is above 9.9, I think we should round down to 9.9 though (10/10 feels odd in concept) for this.

💯


vendor: Update virtcontainers vendoring

Because virtcontainers recently changed and those changes are needed to implement
the OCI runtime, we have to update the vendoring on this Go package.

Coverage remained the same at 31.214% when pulling 2c5ac4cb73ee18fa06851f6a5f66c6d5f006cfb4 on sboeuf/update_virtcontainers_vendoring into 8c6f0472b7ae6b9b9474a2eb45b43138a588aead on master.

Coverage remained the same at 31.214% when pulling abcf83afc43cfcc267288c17dbac2f001bab3250 on sboeuf/update_virtcontainers_vendoring into 8c6f0472b7ae6b9b9474a2eb45b43138a588aead on master.

lgtm

@dlespiau I am sorry, I should have specified that more changes are coming but we will need a new vendoring after new tiny changes get merged inside virtcontainers.


支持一下中文引号吧 这个引号打起来好难

RT 🤣

Thanks for the suggestion. I'll probably instead add buttons to the online IDE to help type the quotes. Or, have the editor automatically convert your other quotes to 「」
See also https://github.com/LingDong-/wenyan-lang/issues/19 for discussion on ways to type those symbols on different platforms.

thanks for your reply 👍

@ESWZY In VSCode, you can try Plugin for VSCode, antfu has add some snippets for trasform quotion mark from English style to traditional chinese style. just easily type " and ' and select corresponding snippet.

In VSCode, you can try Plugin for VSCode, antfu has add some snippets for trasform quotion mark from English style to traditional chinese style. just easily type " and ' and select corresponding snippet.

FYI, I just released a new version, it will now replace the punctuations automatically. 🚀

In VSCode, you can try Plugin for VSCode, antfu has add some snippets for trasform quotion mark from English style to traditional chinese style. just easily type " and ' and select corresponding snippet.

FYI, I have just released a new version, it will now replace the punctuations automatically. 🚀

Great! Thank you for your contribution.

「」就是中文引号。“”是（另外編碼的）西文引号。

原生最好用 ASCII 自由输入, 然后由 formatter 格式化为标准形式


Small typo noticed in pulumi import docs

File: docs/reference/cli/pulumi_import.md
Typo in the paragraph (highlighted in bold):

The name table maps language names to parent and provider URNs. These names are used in the genrated definitions, and should match the corresponding declarations in the source program. This table is required if any parents or providers are specified by the resources to import.

Suggested change:

The name table maps language names to parent and provider URNs. These names are used in the generated definitions, and should match the corresponding declarations in the source program. This table is required if any parents or providers are specified by the resources to import.

PR #5601 has the typo fixed, and is ready for approval


Feat: Contact Us page issue

Describe the feature
Making page responsive for all screen sizes
Adding conformation pop-up, that matches theme of website.
Improving UI of page.
Adding form validation to the page.
Add ScreenShots

Record

[X] I agree to follow this project's Code of Conduct
[X] I'm a GSSOC'24 contributor
[X] I want to work on this issue

@Its-Aman-Yadav @Kalivarapubindusree ,
Please assign this issue to me under GSSoC'24. Thank You!


CodeGen Converter

This PR aims to integrate CodeGen. Work in progress, not ready.

Please let us know when this PR is ready for review!

@michaelfeil Are you still working on the CodeGen model support? Do you need any help from our side?

I'll try to get back to you in the coming days!

Closed as this PR is too old.


Typo in Section <IP_ADDRESS> Para. 622

“...and how that how those...”  Please fix.
Also, the FMT_MTD.1/CryptoKeys Guidance requirement regurgitates TSS requirement. Please consider updating with a focus on providing guidance instructions instead of listing.

Typo fixed. Language in TSS and Guidance Documentation EAs has been updated to avoid simple repetition. All fixed in editorial-SD-110123


Self hosted

Checklist

[ ] Used a personal fork of the feedstock to propose changes
[ ] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[ ] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[ ] Ensured the license file is being packaged.

@conda-forge-admin, rerender

Hey @isuruf is there anything I can do to help you get this unblocked? If I recall correctly, I remember there were some issues with files persisting through builds. Is that still an issue? Were you able to try out any of the suggestions I emailed you a little while back?


tracking ticket - unnecessary RPC calls

Validators costs are increasing due to RPC call volume, even when there are no bots on the blockchain. We want to identify what is causing the RPC calls and determine when we want to use batching, which is currently only impelmented on the bridge and not the logic calls.
https://github.com/palomachain/paloma/issues/976
https://github.com/palomachain/paloma/issues/977

I think we may want to look at attestation functionality. It may be hitting the RPC endpoints to query validator balances ever so often as we have sped up blocks. I am guessing, but curious whether this might be possible.


JS Debug: Stop on Caught Exceptions, but Exclude Some

Context
Today I had the situation where invoking a merge editor command would throw this error:

To debug this, I wanted to figure out where and why this error was thrown.
Problem
Unfortunately, the breakpoint "Uncaught Exceptions" doesn't help here, as this error actually is caught.
The breakpoint "Caught Exceptions" also doesn't help much, as the debugger immediately stops at some random CancellationError:

Solution 1: BugIndicatingError
I suggest to use the exception BugIndicatingError for all errors that should not be ignored. The BugIndicatingError constructor has a debugger statement in it, so debugging automatically stops there, regardless of the "Caught/Uncaught Exceptions" checkbox:
export class BugIndicatingError extends Error {
	constructor(message?: string) {
		super(message || 'An unexpected bug occurred.');
		Object.setPrototypeOf(this, BugIndicatingError.prototype);

		// Because we know for sure only buggy code throws this,
		// we definitely want to break here and fix the bug.
		// eslint-disable-next-line no-debugger
		debugger;
	}
}

To make use of ths, in this particular case, illegalState should look like this:
export function illegalState(name?: string): Error {
	if (name) {
		return new BugIndicatingError(`Illegal state: ${name}`);
	} else {
		return new BugIndicatingError('Illegal state');
	}
}

Solution 2: Allow to break on caught exceptions, but have an exclude list
This would require some debug UI as well as adoption in the JS debugger.

A while ago we added conditional exception breakpoints. Does this help?

Ahh very cool! Is there a shortcut to exclude the exception that is currently being thrown?

There is not. I'm not sure how we'd identify the "current exception", maybe a hash of the stacktrace?

maybe a hash of the stacktrace?

That would be great! Though the last stack frame would be sufficient.

This issue has been closed automatically because it needs more information and has not had recent activity. See also our issue reporting guidelines.
Happy Coding!

This issue has been closed automatically because it needs more information and has not had recent activity. See also our issue reporting guidelines.
Happy Coding!

My BugIndicatingError with a debugger statement still works best ;)

Bad bot 🤖

related, V8 just introduced a "pause only on caught exceptions" https://chromium-review.googlesource.com/c/v8/v8/+/4013330

Closing in favor of https://github.com/microsoft/vscode/issues/167108


dlib install failure

face_recognition version: 1.2.3
Python version: 3.7.3
Operating System: Debian 10.1

Description
i'm trying to install face_recognition using pip3
the install fail during dlib compilation
What I Did
# apt-get update
(ok)
# apt-get install build-essential cmake
(ok)
# apt-get install libopenblas-dev liblapack-dev
(ok)
# apt-get install libx11-dev libgtk-3-dev
(ok)
# apt-get install python python-dev python-pip
(ok)
# apt-get install python3 python3-dev python3-pip
(ok)
# pip3 install numpy scipy matplotlib pandas
(ok)
then
# pip3 install face_recognition
Collecting face_recognition
Using cached https://files.pythonhosted.org/packages/3f/ed/ad9a28042f373d4633fc8b49109b623597d6f193d3bbbef7780a5ee8eef2/face_recognition-1.2.3-py2.py3-none-any.whl
Requirement already satisfied: Click>=6.0 in /usr/local/lib/python3.7/dist-packages (from face_recognition) (7.0)
Requirement already satisfied: face-recognition-models>=0.3.0 in /usr/local/lib/python3.7/dist-packages (from face_recognition) (0.3.0)
Collecting dlib>=19.7 (from face_recognition)
Using cached https://files.pythonhosted.org/packages/1e/62/aacb236d21fbd08148b1d517d58a9d80ea31bdcd386d26f21f8b23b1eb28/dlib-19.18.0.tar.gz
Requirement already satisfied: numpy in /usr/local/lib/python3.7/dist-packages (from face_recognition) (1.17.4)
Requirement already satisfied: Pillow in /usr/local/lib/python3.7/dist-packages (from face_recognition) (6.2.1)
Building wheels for collected packages: dlib
Running setup.py bdist_wheel for dlib ... error
Complete output from command /usr/bin/python3 -u -c "import setuptools, tokenize;file='/tmp/pip-install-fo_17b0k/dlib/setup.py';f=getattr(tokenize, 'open', open)(file);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, file, 'exec'))" bdist_wheel -d /tmp/pip-wheel-f7h70mu5 --python-tag cp37:
running bdist_wheel
running build
running build_py
package init file 'dlib/init.py' not found (or not a regular file)
running build_ext
Building extension for Python 3.7.3 (default, Apr  3 2019, 05:39:12)
Invoking CMake setup: 'cmake /tmp/pip-install-fo_17b0k/dlib/tools/python -DCMAKE_LIBRARY_OUTPUT_DIRECTORY=/tmp/pip-install-fo_17b0k/dlib/build/lib.linux-x86_64-3.7 -DPYTHON_EXECUTABLE=/usr/bin/python3 -DCMAKE_BUILD_TYPE=Release'
-- The C compiler identification is GNU 8.3.0
-- The CXX compiler identification is GNU 8.3.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found PythonInterp: /usr/bin/python3 (found version "3.7.3")
-- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython3.7m.so
-- Performing Test HAS_CPP14_FLAG
-- Performing Test HAS_CPP14_FLAG - Success
-- pybind11 v2.2.2
-- Using CMake version: 3.13.4
-- Compiling dlib version: 19.18.0
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Looking for XOpenDisplay in /usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so
-- Looking for XOpenDisplay in /usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so - found
-- Looking for gethostbyname
-- Looking for gethostbyname - found
-- Looking for connect
-- Looking for connect - found
-- Looking for remove
-- Looking for remove - found
-- Looking for shmat
-- Looking for shmat - found
-- Looking for IceConnectionNumber in ICE
-- Looking for IceConnectionNumber in ICE - found
-- Found X11: /usr/lib/x86_64-linux-gnu/libX11.so
-- Found system copy of libpng: /usr/lib/x86_64-linux-gnu/libpng.so;/usr/lib/x86_64-linux-gnu/libz.so
-- Searching for BLAS and LAPACK
-- Searching for BLAS and LAPACK
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.29")
-- Checking for module 'cblas'
--   No package 'cblas' found
-- Checking for module 'lapack'
--   Found lapack, version 0.3.5+ds
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Check size of void*
-- Check size of void* - done
-- Found OpenBLAS library
-- Looking for sgetrf_single
-- Looking for sgetrf_single - found
-- Using OpenBLAS's built in LAPACK
-- Looking for cblas_ddot
-- Looking for cblas_ddot - found
-- Looking for sgesv
-- Looking for sgesv - not found
-- Looking for sgesv_
-- Looking for sgesv_ - not found
CUDA_TOOLKIT_ROOT_DIR not found or specified
-- Could NOT find CUDA (missing: CUDA_TOOLKIT_ROOT_DIR CUDA_NVCC_EXECUTABLE CUDA_INCLUDE_DIRS CUDA_CUDART_LIBRARY) (Required is at least version "7.5")
-- DID NOT FIND CUDA
-- Disabling CUDA support for dlib.  DLIB WILL NOT USE CUDA
-- C++11 activated.
  Stop.
make[2]: *** Waiting for unfinished jobs....
[ 10%] Building CXX object dlib_build/CMakeFiles/dlib.dir/global_optimization/global_function_search.cpp.o
c++: error: /tmp/pip-install-fo_17b0k/dlib/dlib/global_optimization/global_function_search.cpp: No such file or directory
c++: fatal error: no input files
compilation terminated.
make[2]: *** [dlib_build/CMakeFiles/dlib.dir/build.make:232: dlib_build/CMakeFiles/dlib.dir/global_optimization/global_function_search.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:146: dlib_build/CMakeFiles/dlib.dir/all] Error 2
make: *** [Makefile:84: all] Error 2
Traceback (most recent call last):
File "", line 1, in
File "/tmp/pip-install-fo_17b0k/dlib/setup.py", line 261, in
File "/usr/lib/python3/dist-packages/setuptools/init.py", line 145, in setup
return distutils.core.setup(**attrs)
File "/usr/lib/python3.7/distutils/core.py", line 148, in setup
dist.run_commands()
File "/usr/lib/python3.7/distutils/dist.py", line 966, in run_commands
self.run_command(cmd)
File "/usr/lib/python3.7/distutils/dist.py", line 985, in run_command
cmd_obj.run()
File "/usr/lib/python3/dist-packages/wheel/bdist_wheel.py", line 188, in run
self.run_command('build')
File "/usr/lib/python3.7/distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/usr/lib/python3.7/distutils/dist.py", line 985, in run_command
cmd_obj.run()
File "/usr/lib/python3.7/distutils/command/build.py", line 135, in run
self.run_command(cmd_name)
File "/usr/lib/python3.7/distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/usr/lib/python3.7/distutils/dist.py", line 985, in run_command
cmd_obj.run()
File "/tmp/pip-install-fo_17b0k/dlib/setup.py", line 135, in run
File "/tmp/pip-install-fo_17b0k/dlib/setup.py", line 175, in build_extension
File "/usr/lib/python3.7/subprocess.py", line 347, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['cmake', '--build', '.', '--config', 'Release', '--', '-j2']' returned non-zero exit status 2.

Failed building wheel for dlib
Running setup.py clean for dlib
Complete output from command /usr/bin/python3 -u -c "import setuptools, tokenize;file='/tmp/pip-install-fo_17b0k/dlib/setup.py';f=getattr(tokenize, 'open', open)(file);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, file, 'exec'))" clean --all:
Traceback (most recent call last):
File "", line 1, in
File "/usr/lib/python3.7/tokenize.py", line 447, in open
buffer = _builtin_open(filename, 'rb')
FileNotFoundError: [Errno 2] No such file or directory: '/tmp/pip-install-fo_17b0k/dlib/setup.py'

Failed cleaning build dir for dlib
Failed to build dlib
Installing collected packages: dlib, face-recognition
Running setup.py install for dlib ... error
Complete output from command /usr/bin/python3 -u -c "import setuptools, tokenize;file='/tmp/pip-install-fo_17b0k/dlib/setup.py';f=getattr(tokenize, 'open', open)(file);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, file, 'exec'))" install --record /tmp/pip-record-_60mm9p6/install-record.txt --single-version-externally-managed --compile:
Traceback (most recent call last):
File "", line 1, in
File "/usr/lib/python3.7/tokenize.py", line 447, in open
buffer = _builtin_open(filename, 'rb')
FileNotFoundError: [Errno 2] No such file or directory: '/tmp/pip-install-fo_17b0k/dlib/setup.py'
----------------------------------------

Command "/usr/bin/python3 -u -c "import setuptools, tokenize;file='/tmp/pip-install-fo_17b0k/dlib/setup.py';f=getattr(tokenize, 'open', open)(file);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, file, 'exec'))" install --record /tmp/pip-record-_60mm9p6/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-install-fo_17b0k/dlib/

Any news from this issue? Did you finish the installation? Because I have the same problem.

nope :(

Any news from this issue? Did you finish the installation? Because I have the same problem.

nope :(

I've found the solution for the installation of face_recognition lib and dlib as well
try:
git clone https://github.com/davisking/dlib.git
Build the main dlib library (optional if you just want to use Python):
cd dlib
mkdir build; cd build; cmake ..; cmake --build .
Build and install the Python extensions:
cd ..
python3 setup.py install
Then, install face recognition using:
pip3 install face_recognition

like a charm!


Sync eng/common directory with azure-sdk-tools for PR 1393

Sync eng/common directory with azure-sdk-tools for PR https://github.com/Azure/azure-sdk-tools/pull/1393  See eng/common workflow

/check-enforcer override


Support no-responders

Support the No Responder functionality in the NATS server.
See:  https://github.com/nats-io/nats.go/pull/576
Depends on: #335.

Resolved by #362


No audio device

The Ubuntu chroot environment doesn't have any audio devices/can't see Chrome OS's audio device.
Result of "aplay -l" in Ubuntu:
aplay: device_list: 252: no soundcards found...
Result of "aplay -l" in Chrome OS:
**** List of PLAYBACK Hardware Devices ****
card 0: DAISYI2S [DAISY-I2S], device 0: Playback HiFi-0 []
Subdevices: 0/1
Subdevice #0: subdevice #0
card 0: DAISYI2S [DAISY-I2S], device 1: Capture HiFi-1 []
Subdevices: 1/1
Subdevice #0: subdevice #0
It would be great to use VLC in Crouton to watch video files that Chrome OS doesn't support.. but not without sound!

Hi,
"Me too".  /dev/snd/* were hwaudio rather than audio and both aplay -l and arecord -l were not listing devices.  Also, audacity could not open "cras".
Changing group ownership to audio fixed all of that.
I guess a better long term fix is to add users to hwaudio?
-- Peter

Yeah, if you want to use the hardware audio devices directly, add your user to hwaudio.  By default we play nice with Chromium OS, though.

Even with hwaudio, I'd not been able to get recording working except through arecord.  But I have a horrible feeling this was down to pure dumb user error :) -- I hadn't enabled the "Capture" tab in the mixer application (why you have to enable it, I've no idea).  Once done and having enabled the Acer's mic, everything seems to work (though input level controls may be being ignored - still testing that).  I've not yet reverted adding my user to the hwadmin group, either.


Docs

This includes all the inline docs and generated docs in a docs directory. @andrewxhill let me know what else we need to do to use the generated docs.
Closes #29

Javadoc sure is ugly, but I didn't see any alternatives in the bit of research I did. If anyone knows anything better, speak up.


⚠ universalis has degraded performance

In fea7c76, universalis (https://universalis.app/) experienced degraded performance:

HTTP code: 500
Response time: 17960 ms

Resolved: universalis performance has improved in 14a0497.