Add merge to all _templates in cf-jobs.yml so they can be overridden

I have been working on a cf release that uses a much reduced number of VMs (I'm attempting to get down to 4 + runners). My first approach was to not use cf-jobs.yml at all, just recreating the jobs myself. After being smacked down for that approach by @rkoster, I'm now attempting to use cf-jobs.yml, but "zero out" a bunch of the jobs, while redefining other templates (say, api_templates) to have more things it in (like gorouter and haproxy). However, unless the templates use '- <<: (( merge ))', they do not "pick up" my changes. As this will only affect those - like me - who are trying to override the existing configs, this should be a safe change to merge.
Thank you for your time and consideration.

Ah, I see that it adds an extra '{}' which is throwing off the tests. Let me see if I can figure out how to fix that.

@teancom
Could you help to get the new CLA signed by starkandwayne (assuming you are submitting this PR as part of starkandwayne) with a list of github usernames or github org specified that we can add to our CLA checking tool?  We recommend specifying a github org so that membership of the org can be managed by your team.  Team members would need to make membership of the org public.

@teancom I see that you just submitted on your CLA.  Thanks!

I fixed the fixtures to add an empty list in all of the merged templates, which worked for almost all of the tests. There are two outstanding, one in warden, one in vsphere, that still fail - at least on my machine. But... I have no idea why. To my admittedly untrained eye, they look identical to the other jobs. I deleted and re-did the added line multiple times to rule out any sort of weird typo. If someone else could take a look at the failing tests (assuming they fail in the CI environment too), that'd be awesome.

Hi @teancom,
We were curious about why you decided to go with this strategy, we generally override the entire template section when we need to modify which templates are going to run in a given job.
An example of us doing that can be found here.
We would prefer not adding an empty hash to every job if possible.
Thanks,
@luan & @DanLavine, CF Runtime Team

@dieucao i can confirm that @teancom has sent in a signed Cloud Foundry Foundation CLA

Originally we wrote all new jobs; @rkoster posited that this wasn't the right approach. Any guidance you have on how we should construct massively adjusted/composed jobs would be appreciated.
Nic
On Fri, Jan 9, 2015 at 2:51 PM, Luan Santos<EMAIL_ADDRESS>wrote:

Hi @teancom,
We were curious about why you decided to go with this strategy, we generally override the entire template section when we need to modify which templates are going to run in a given job.
An example of us doing that can be found here.
We would prefer not adding an empty hash to every job if possible.
Thanks,
@luan & @DanLavine, CF Runtime Team
Reply to this email directly or view it on GitHub:
https://github.com/cloudfoundry/cf-release/pull/593#issuecomment-69413917

I forgot the odd spiff behavior of merging an empty hash when there is nothing to merge. It could be that this will not work with bosh (should be tested) a usecase for this PR is for example wanting to collocate some sort of agent on different jobs. If you would use the approach of @luan this would result in a lot of maintenance since you would have to track all upstream job changes with regard to templates. With this PR you could just specify the collocated job in the meta section of your stub and be done with it.

So, using this approach allows us to do this, in our own template:
api_templates:
 - name: gorouter
   release: (( meta.release.name ))
 - name: cloud_controller_ng
   release: (( meta.release.name ))
 - name: metron_agent
   release: (( meta.release.name ))
 - name: haproxy
   release: (( meta.release.name ))
 - name: nfs_mounter
   release: (( meta.release.name ))

if we want to consolidate a lot of templates onto one job, and reuse the existing api_z1/api_z2 jobs without any further configuration change (well, we'd also have to set the other, now redundant, instance counts to 0, which is trivial).
If I'm reading what you're saying right, you think the better approach would be to leave the template definition alone, and modify the job, like so?
jobs:
  - name: api_z1
    templates:
     - name: gorouter
     - name: cloud_controller_ng
     - name: metron_agent
     - name: haproxy
     - name: nfs_mounter

Unless I'm doing something wrong, that does not merge with the definition of the api_z1 job in cf-jobs.yml, it overwrites it completely. So we would end up having to do something like:
jobs:
  - name: api_z1
    templates:
     - name: gorouter
     - name: cloud_controller_ng
     - name: metron_agent
     - name: haproxy
     - name: nfs_mounter
    instances: 1
    resource_pool: large_z1
    persistent_disk: 0
    networks:
      - name: cf1
    properties:
      networks: (( meta.networks.z1 ))
      metron_agent:
        zone: z1
      nfs_server: (( meta.nfs_server ))

Which 1) leads to more duplication and 2) requires us to pull in definitions for meta.networks.z1 and meta.nfs_server into the current template, which is a pain and 3) requires us to keep our job definition "in sync" with upstream, tracking those changes (this is what @rkoster was referring to).
As I feel I'm still fairly n00b-ish when it comes to this, if I'm misunderstanding or misrepresenting how things work please feel free to smack me down, laugh at me, and kick sand in my face. Heaven knows @rkoster has done that before.

Hi @teancom,
Yes we are saying that we would prefer that you defined templates in your stub for each job individually such as:
jobs:
  - name: api_z1
    templates:
     - name: gorouter
     - name: cloud_controller_ng
     - name: metron_agent
     - name: haproxy
     - name: nfs_mounter

When you use the ./generate_deployment_manifest tool specifying job templates in this manner should not override the other values defined under the job. Please feel free to edit the file in ./spec/fixtures/aws/cf-stub.yml with the above changes and you should see how spiff will merge these changes into the final manifest. Please let us know if this works for you.
Thanks,
@jfmyers9 && @kdeshpan, CF Runtime Team

Hi @teancom,
With regards to staying in sync with upstream changes, how will adding these merge values to the template properties help you solve this problem? For example, if I want to collocate the gorouter on the cloud_controller, I may do something like:
meta:
  api_templates:
    - name: gorouter
      release: cf

This will add the gorouter template to the api_templates. However the gorouter job's templates are defined by the meta.router_templates. Thus you would need to add all components from meta.router_templates to meta.api_templates programmatically in order to ensure that you will stay in sync with future changes to meta.router_templates. I'm not sure of any way to achieve this through spiff currently, and it appears to me that you will still need to have some sort of manual check to ensure that you stay in sync with upstream changes in cf-release.
Thanks,
@jfmyers9 && @kdeshpan, CF Runtime Team

To answer your second question first, we were thinking it would allow us to re-use most of the upstream job definition, by modifying the template definitions. We were actually hashing this out again this morning after our standup, and we think we might have an alternative solution that won't involve adding the empty arrays to each template (or any upstream cf change at all). Give me a bit to look into that to see if it works and I'll get back to you. Thank you very much for your quick and helpful responses!
Thanks,
David Bishop

Closing this per #598.


Very low contrast when editing a code block on dark mode

The default font color has a really bad contrast of just 2:1 - https://webaim.org/resources/contrastchecker/?fcolor=4C566A&bcolor=25282C

The recommendation for small text (which I'd argue this falls under) is 7:1. Changing the code text color to #B5BCC9, done by changing the L component of the HSV color to 75% boosts the contrast to 7.75:1, and makes the text a lot easier to read

Hey @draganczukp,
Thank you for bringing this to my attention. Part of the problem here is that the fenced code block with a language is rendered as comment:

With #B5BCC9 as .dark-mode .cm-s-otterwiki span.cm-comment is the comment barely distinguishable:

I don't see a harm in colorizing the comments, what do you think about #6BBAFF? e.g.

This has a contrast ratio of 7.11:1.


url_preview: Only extract img tags with an src.

Some <img> tags do not have an SRC, if they are rewritten using JS
to have one later.  Attempting to access first_image['src'] on these
will raise an exception, as they have no such attribute.
Only look for images which have a defined src attribute on them.  We
could instead check if first_image.has_attr('src'), but this seems
only likely to produce fewer valid images.

It might help to have a short test here to prove we ignore img tags without src.

Ok, I see what you did now.  Merged, thanks!


add observability flag to launched cluster configs

#1543  👈 (View in Graphite)
main

This stack of pull requests is managed by Graphite. Learn more about stacking.


Enhance Carousel

fix #468
Redesigned inner control positioning in Carousel.
Navigation bar and previous/next buttons are now hidden when the Carousel has one or fewer items.

Originally, we had multiple layers for indicator items because we want them to have wider clickable area compared to visual dots/lines. But surprisingly Semi Design is not designed like this now. So, I think it's correct to simplify the templates.


🌱 Add e2e-integration tests to README

What this PR does / why we need it:
It's now possible to run e2e-integration tests on main branch, for both Ubuntu and CentOS. Hence, the instruction should be added to README

/test-ubuntu-integration-main


Show full description on hover

When one hovers over a point, the full description of that point should be shown. Right now, part of the description gets cut off.

Fixed in a much earlier commit.


Add functionality for mass deletion

Using hashmap_delete() with hashmap_scan() or hashmap_iter() is unsafe, as a resize of the bucket list may happen at any time, throwing off the current cursor.
However, mass deletion based on some part of the item that isn't the key may still be useful in some cases.
This introduces voluntary tombstoning of buckets, with the possibility to clean them up on demand.  Tombstoning a bucket is implemented as a simple flag, which effectively makes the bucket still "occupied", but otherwise inaccessible.  This can also be viewed as delayed deletion.
These two functions are added to make this possible:

hashmap_unset (and hashmap_unset_with_hash), which simply sets the tombstone flag on the item.
hashmap_vacuum, which goes through the whole bucket list, and deletes every bucket that has the tombstone flag.

Example code with hashmap_scan:
bool filter_unset(const void *item, void *udata)
{
    if (/* Some condition on |item| */)
        hashmap_unset(udata, item);
    return true;
}
// ...
hashmap_scan(map, filter_unset, map);
hashmap_vacuum(map);

Example code with hashmap_iter:
for (size_t i = 0, void *item; hashmap_iter(map, &i, &item);) {
    if (/* Some condition on |item| */)
        hashmap_unset(udata, item);
hashmap_vacuum(map);

Do note that this is a draft.  I haven't tested the code yet, so for now, this PR is a show of intent.  Comments and reviews are still welcome, but I would hold off on merging until I've finished up and made this PR ready (not draft).

Test coded and function verified.  This is now ready for review and possibly (hopefully?) merge.

Side note: I've signed off DCO style.  You may want to sort out how you want to handle contributions like these, @tidwall.

And now I got to your profile and read this.  Ok, it was not obvious that I should have done so before trying to contribute.  Sorry.
Dunno what to do with this PR now.  I'd say do as you will, and I can live with my fork, if that's going to be it.


Not feasible to update some CI jobs to ubuntu 22.04

The following CI jobs have dependencies that cannot be satisfied on more recent versions of ubuntu than 18.04:

MbedOS_K64F_Build_Test

Requires the gcc-arm-embedded toolchain from the ppa:team-gcc-arm-embedded/ppa ppa, which only has packages for ubuntu 14.04, 16.04, and 18.04.
Requires the mbed-cli which uses python features that were deprecated in version 3.3, and removed in 3.10 (ubuntu 22.04 ships python version 3.10)
Requires gcc arm toolchain version >= 9 and < 10 (ubuntu 22.04 ships versions 10 and 11)

RIOT_STM32F4_Build_Test

It was also previously using gcc-arm-embedded toolchain from the ppa:team-gcc-arm-embedded/ppa ppa, but it does successfully build using gcc-arm-none-eabi from the ubuntu repos on top of ubuntu-latest, however I'm unsure about this being the right compiler for this target
If it is the right one, then it can be re-enabled with minimal changes to the gh-actions.yml configuration; however if it is not then it cannot be updated to a newer ubuntu version.

A possible workaround to make them work, since Github Actions dropped support for ubuntu 18.04 runners, is to use docker to run ubuntu 18.04 inside a container on top of ubuntu-latest: for as long as the ubuntu 18.04 repos and the docker image is available, they should continue to work, with some changes to the gh-actions.yml configuration.
Should we use this workaround, or is it not worth the trouble and added dependencies on docker images, and drop these tests?

@akosthekiss what do you think about supporting these platforms?

Mbed OS will always have a special place in my heart. I'd love to see it stick around.

According to the latest release notes (https://github.com/ARMmbed/mbed-os/releases/tag/mbed-os-6.17.0), it can be built using GCC_ARM 10.3-2021.07 and the K64F target is still supported.
According to the tools doc of Mbed OS (https://os.mbed.com/docs/mbed-os/v6.16/build-tools/index.html), recent Mbed OS (>6.5) uses Mbed CLI 2 instead of the deprecated Mbed CLI 1.
According to the docs of Mbed CLI 2 (https://os.mbed.com/docs/mbed-os/v6.16/build-tools/install-or-upgrade.html), the new python package name is mbed-tools (and it requires cmake and ninja as well).
According to the tools doc, in sync with the release notes, the supported gcc version is GNU Arm Embedded version 10 (10.3-2021.07). However, the landing page of the GNU Arm Embedded Toolchain is deprecated, and there are newer releases available at https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads . It would be interesting to see whether these newer versions can also build Mbed OS.
According to discussions on askUbuntu (https://askubuntu.com/questions/1243252/how-to-install-arm-none-eabi-gdb-on-ubuntu-20-04-lts-focal-fossa), there are no more ppa releases for gcc embedded. So, the toolchain may need to be downloaded and installed manually. (Best practices and scripts are shared in the discussion linked above.) But the Ubuntu-packaged version may also be worth trying.

In summary: it may be a bit more work to revive MbedOS_K64F_Build_Test, but should be doable.
As for RIOT, I don't have strong opinions. In general, if we can keep support for a target with minimal effort, then we should not drop it. Regarding the toolchain, according to my best knowledge, gcc-arm-embedded was actually gcc-arm-none-eabi. So, Ubuntu-packaged gcc-arm-none-eabi might just be fine. (But it it always worth consulting the project's documentation: https://doc.riot-os.org/getting-started.html . There it is stated that "GCC, binutils, and newlib for arm-none-eabi" are needed. So, same conclusion.)


[Bug][config-ui] proxy in jenkins cannot be saved

Search before asking

[X] I had searched in the issues and found no similar issues.

What happened

What you expected to happen
save proxy correctly.
How to reproduce
Modify a Jenkins connection and open it again, and you'll see the proxy is empty and not saved.
Anything else
No response
Version
main
Are you willing to submit PR?

[ ] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

@likyh If this is a bug its as nothing to do with refactoring, please open a separate PR fix to main for this issue.

Resolved with PR #2903


MrChromebox ARM support

If we could get UEFI on something like the Qualcomm-based Lenovo Duet 3 which could boot to grub (maybe even install .iso) that would be the dream (could even chainload via u-boot if we wanted). Thanks so much for your efforts btw!

I saw you closed an earlier issue on this, feel free to close again I guess, https://github.com/MrChromebox/scripts/issues/159 ... sigh....

sorry, there's simply nothing I can do. There is no alternative bootloader to employ


Customize AuthorizeAttribute

I want to customize the AuthorizeAttribute a bit to add another property that is checked. I am using Identity. In MVC5 I would just inherit the AuthorizeAttribute and override AuthorizeCore returning true/false after checking the property. Example:
public class AuthorizeUserAttribute : AuthorizeAttribute
{
    public bool Foo { get; set; }

    protected override bool AuthorizeCore( HttpContextBase httpContext )
    {
        if( !base.AuthorizeCore( httpContext ) || !Foo )
        {
            return false;
        }

        return true;
    }
}

Then
[AuthorizeUser( Roles = "Admin", Foo = false )]
public ActionResult MyAction()
{
    return View( );
}

Looking here, I only see the following for AuthorizeAttribute: https://github.com/aspnet/Security/blob/dev/src/Microsoft.AspNet.Authorization/AuthorizeAttribute.cs
It appears to be doing nothing? I know I'm missing something. How do I inherit the AuthorizeAttribute and tweak the actual authorization check?

Authorization is now policy based, so you would register a policy and tweak that to do the appropriate auth checks that you want...
https://github.com/aspnet/Security/blob/dev/test/Microsoft.AspNet.Authorization.Test/DefaultAuthorizationServiceTests.cs#L63

Got it. Thanks.


get_selected not working in ASP.Net project

Hi
I am using jstree in an ASP.Net project and I am having a very wird behavior when trying to determine the selected node.
It is rare because previously I developed a prototype in "pure" html which works perfectly.
But when executing it from visual studio 2017 I get the following error in the browser's console:
"Error of type not captured: $ (...). Jstree (...). Attr is not a function"
Error comes with the next line:
var id = $ ('#Results'). jstree ('get_selected'). attr ('id');
I also tried with the following asigment:
var id = $ ('#Results'). jstree (). get_selected (true) [0]
This time the variable "id" keeps the value "undefined".
In both cases, the view (built using a static JSON array) is rendered correctly and respons to user events.
Same html code, same libraries (jstree 3.3.3 and jQuery 3.3.1), same browser, same computer. The "pure" html works, the ASP.Net does not.
I would really appreciate any help you could give me in this
Best regard.

Sorry, I am not a .net developer, so I cannot help. Since it works in pure HTML / JS, I assume this is not a jstree issue, so I am closing this.


look through the entire chain of name scopes to ensure that name is uniq...

...ue.
Effectively ScopeFrame is analogous to locals for generated names so to ensure that name is unique we need to check the entire chain of scope frames.
NOTE:
Set of names in scopes in populated incrementally as we traverse the tree in depth first manner  - this means that in cases like this when we dive into nested function scope before we process subsequent let x = 1 we'll say that let x = true in nested scope does not require renaming because x was not yet added  to the set of generated names so console.log(x) in b will print true. However for this case we should already report 'use before def' error meaning that we do not guarantee that emit will be 100% correct.
declare function use(a: any);
function a() {
    function b() {
        {
            let x = true;
        }
        console.log(x);
    }
    let x = 1;
}

Given that the only generated names that be used across multiple name scopes are renamed let\const bindings and they should always be declared before usage I have not found any other scenarios where this behavior might lead to semantically incorrect emit. If such exists we can always switch to crude yet simple and effective schema - any generated name can appear in file only once. Results of codegen with this approach will always be correct but not very user friendly i.e when original let x will become var _x_67

I think you'll need to explain more in person, but is the note that you left just indicating that the emit for let/const will be incorrect with respect to temporal dead zone semantics? I think this is fine.

I don't quite understand the example, because it looks like the inner x in let x = true will be renamed, because the name x exists in an outer scope in the source code.

Namely, this is the emit I get for the example:
function a() {
    function b() {
        {
            var _x = true;
        }
        console.log(x);
    }
    var x = 1;
}

Sorry, incorrect example, it should be smth like this:
'use strict'
declare function use(a: any);
var x;
function a() {
    function b() {
        {
            let _x = true;
        }
        console.log(x);
    }
    let x = 1;
}

Inner let _x = true; here will not be renamed

:+1:


Fix HA feature gate applied unconditionally

Follow-up to c9b50fd46f56a95fb614ccbfaeef93fa5d69f845.
Finally write some unit tests for validation (more TODO).
Signed-off-by: Dmitry Tantsur<EMAIL_ADDRESS>

/approve


Fill in multiple locations for existing providers based on available data

Once https://github.com/thegreenwebfoundation/admin-portal/issues/336 is done, we should fill in the multiple locations for existing providers based on the data that we have. List of countries is stored in the registration spreadsheet. We can programmatically read the list of countries for each provider, and create a new location in the database for each country, referring back to the provider.

 Fill in multiple locations for existing providers based on available data


Lots of broken pipe messages

Hi,
I see a lot of messages like this ones:
ERROR: logging before flag.Parse: W0121 12:33:25.582797       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:43924: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:33:28.685612       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:43950: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:33:28.926268       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44052: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:33:28.422343       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44496: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:33:29.604995       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:41466: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:33:32.603072       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44602: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:33:32.893017       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44580: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:33:32.709318       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44578: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:33:37.218254       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44642: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:33:38.867804       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44076: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:33:38.777183       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44700: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:33:43.155962       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:41060: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:33:43.890811       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44034: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:33:44.358863       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44126: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:33:45.005108       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:43906: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:33:45.534817       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44842: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:33:48.605499       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44114: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:33:48.771415       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44914: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:33:49.191500       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44124: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:33:48.478968       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:38184: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:33:51.281846       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44868: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:33:52.689080       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44938: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:33:51.161145       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:43174: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:33:53.365822       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44958: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:33:50.854020       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44890: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:33:56.178188       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44996: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:33:58.171454       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44072: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:33:57.975179       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:45094: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:00.000635       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:41904: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:01.320217       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:42840: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:02.670353       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:45112: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:03.559636       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44148: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:04.878781       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:45118: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:06.977619       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44092: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:07.475932       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44398: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:10.476942       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44140: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:10.690533       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:45184: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:11.054660       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:45272: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:14.805378       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44260: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:15.875566       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:41334: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:16.758144       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:45522: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:17.875547       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44134: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:18.084283       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44156: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:19.068577       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44504: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:20.782443       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44270: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:21.564345       1 discovery.go:112] Overriding cached data for entry /v1/registration/absolutegrounds-helper-sources.integration-cb.svc.cluster.local%7Chttp-in
ERROR: logging before flag.Parse: W0121 12:34:21.671255       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44324: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:24.753824       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:45856: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:24.869749       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:45952: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:24.871398       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:45938: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:24.961953       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:46004: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:25.772004       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:45982: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:25.965046       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44762: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:27.672164       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:45994: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:28.860328       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:46134: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:29.662173       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44392: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:30.065978       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:46158: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:32.983798       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:46126: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:33.254526       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:46308: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:33.255331       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:46316: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:33.375688       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:46226: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:33.559052       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44164: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:33.778104       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44364: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:34.478453       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44576: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:38.858929       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:46474: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:39.256161       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44574: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:40.772071       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44462: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:40.864003       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44566: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:41.495797       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44530: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:41.571344       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:42030: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:43.375720       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:46634: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:43.380749       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44390: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:43.757054       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:46620: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:44.271456       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44320: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:44.484138       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:46568: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:44.660634       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44760: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:43.185877       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:46718: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:45.272538       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:46530: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:45.760471       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44590: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:46.596645       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:45396: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:47.875895       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:46956: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:47.960908       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:46964: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:48.860727       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:46864: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:49.372279       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:44646: write: broken pipe
ERROR: logging before flag.Parse: W0121 12:34:49.876766       1 discovery.go:590] write tcp <IP_ADDRESS>:8080-><IP_ADDRESS>:46866: write: broken pipe

Why all this noise?
Istio: 0.4.0
Kubernetes: 1.8.4

@kyessenov  Is this really release blocking? Is anyone actively working on this?

Removing the blocking release label. This should not block 0.6.0 as this is a known problem and it does not fit the critical problem definition (https://github.com/istio/istio/tree/master/release#critical-bug-definition)

I managed to get pilot working across all namespaces in our environment finally after making a few tweaks to pilot.

filtered k8s watches for service, endpoint & ingress to look for a specific annotation. We're adding a specific annotation through our custom injection process.
no-op'd cache updates when a previous request has already updated the cache. Basically return here.
no-op'd cache flushes

I'll do some additional testing today with the cache flush re-enabled to see if things are still working for us. I think basically what is happening is that pilot waits on the cache mutex so long that the clients have given up before it can respond. Since we have a large number of services, ingresses and endpoints across our cluster there is a constant stream of events and each event updates cache and many cause cache flushes. There is what appears to be a race condition where if the cache record doesn't exist yet and multiple requests are asking for the same record it will get updated in cache one time for each request (which is quite a lot in a large environment).
Would it make sense for the cache flushes to be key specific?

cc @costinm @gnirodi @kyessenov ^ this is very interesting / you guys looked into that too

In order to get cache updates back for service/route changes I added a byte comparison before the cache update when it exists already. I also scaled out to 6 pods for pilot and added a healthcheck for it on /v1/registration so requests from clients go to the hung pods as often.
Interestingly even in this config it takes about 9 minutes for the pods to stabilize when they start up. I'll try to dig into this next week to see what it's doing.
Full list of changes that is currently working:

filtered k8s watches for service, endpoint & ingress to look for a specific annotation. We're adding a specific annotation through our custom injection process.
no-op'd cache updates when they exist already and are not different entry.resourceCount == resourceCount && bytes.Equal(entry.data, data)
added a readiness probe health check on pilot for /v1/registration
scaled to 6 pods - this is based on some rough experimentation just to make sure one is always online. During startup they flip between Ready and NotReady quite a bit for about 9 minutes then stabilize.
changed resync period to 1200s just to reduce effect of reading through all the k8s objects by the controllers. I've not tested enough yet to see if this made a difference.

The system became unhealthy again but from different errors so I rolled back. It seems like maybe it's not good to have multiple pilot pods. Scaling down to a single pilot pod takes the system offline too often even once it's at a steady state. I'll have to revisit this on Monday.

It seems the issues I saw were related to someone placing an invalid rule out there editing the notes above to reflect current status.

Thanks for the update! if the invalid rule error is likely to happen accidentally maybe we should learn from that and in a (future) version of istio try to alarm or validate or ... to mitigate it

It would have been caught by istioctl validation but wasn't submitted through that path. It was a route rule with a string http response code instead of int. Let me know if I should create an issue with the details.

ic thanks, yes that may be useful thank you - in theory a rule with wrong syntax should have no effect; on the other hand if it is valid and creates a blackhole; I suppose that could be the goal (but then again alerting/monitoring etc should be able to ideally correlate the rule change with the drops)

subscribe @sdake

Please re-open if you still see this, the code has changed quite a bit.


feat: update documentation to reflect current changes on repository.

Before submitting your PR for review

Run npm run lint to find errors in code syntax/format
Run npm run lint:fix to fix all auto-fixable errors in source code and auto-format with prettier
Ensure you fix any linting errors displayed after running any of the above commands

What does this PR do?
It updates and creates certain documentation files to improve readability, guidelines, and help improve contributors workflow.
description of Task to be completed?

Create a CONTRIBUTING.md file with documentation on contributing.
Create a CODE_OF_CONDUCT.md file for the contributors to following when working on this project.
Delete the Contributions.md file as it will not be required anymore with the Swagger Documentation up and running.
Update the README.md file to direct contributors to the contributing file and also steps on how to view API documentation (via Swagger).

How should this be manually tested?

Proofread the documentation.

Any background context you want to provide?
The current Contributions.md file contains old endpoints and its also not documentation on how to contribute, which causes confusion due to its file name as a list of endpoints isn't a responsibility of such a file. The CONTRIBUTING.md file should contain documentation on how to contribute so as to be much more in line with the responsibility of such a file.
What is the link to the issue on Github?
Issue #54
Questions:
None.

Thanks! The Test in CI is failing due to a regression introduced by a PR that was merged before we had our CI up and running. A bug fix is in the works. And this looks good to go

Thanks.


stability improvements - less is more

remove code paths that execute frequent concurrent s3 get-range operations to fetch reference sequences a-la-carte
-- with the new approach of reference download caching on each batch instance (thanks Andrey Kislyuk), it's more efficient to fetch the entire reference file and access it locally, particularly given the need to build separate blast DBs for each contig
-- the code paths being removed have been replicated through copy-pasting that has introduced concurrency bugs over time
-- the performance of these code paths has been unsatisfactory, and the frequency of calls a most likely cause of exceeding EC2 metadata server account rate limits for getting credentials
-- the replacement code path has already been executing in a large number of samples and is therefore well tested

improve retry logic based on experience since it was first introduced
-- properly disperse jitter across subprocesses;  previously, subprocesses would retry in lockstep due to drawing from the same random stream (which was not the design intent)
-- for longer operations, the delay between retries is now longer
-- this version has received some external testing in http://github.com/czbiohub/iggtools

restore print_lock voodoo to run_in_subprocess decorator
-- this was first introduced in release 2.7.4 pull request 61
-- should not have been deleted as it ameliorates a deadlock symptomatic of a race in CPython file handling during subprocess creation;  the deletion was accidental because the seemingly purposeless code was lacking a comment to explain its purpose
-- effectiveness of this voodoo may be reduced as the code base is doing a lot more logging and locking

switch more locks from threading to multiprocessing for extra safety

testing:   Ran benchmark sample as https://idseq.net/samples/33585 and confirmed that contig download and alignment viz still work fine, and results are unchanged compared to the same sample in IDseq Bench.

Looks like this will make most of the changes in https://github.com/chanzuckerberg/idseq-dag/pull/220/ obsolete, which is fine. Those changes were mostly to safeguard against unexpected errors from the code that is being deleted.

Tested by running a benchmark sample, looking at coverage viz, looking at read level viz, building phylo tree.    All good.   Test sample https://idseq.net/samples/33590, compare to benchmark.   The phylotree organism was Elizabethkingia.


Change guzzle client creation (linked to PR in laravel-plugin)

I noticed the laravel-http-sender package is being sunset, but I still want requests/responses to be logged in Telescope. Then I discovered this is possible with the following package: https://github.com/huzaifaarain/telescope-guzzle-watcher/tree/main
The problem is that this package only works if the guzzle client is created using the service container. That is currently not the case.
This PR and PR https://github.com/saloonphp/laravel-plugin/pull/62 make that possible with minimal changes.

What is the status on this? Will it be merged in?

The saloonphp/laravel-plugin has been sunset but it will soon be replaced with a new package that @craigpotter is working on, Barstool - which will record all Saloon requests/responses for you. You can manually change the way the sender is resolved to use the service container with this guide:
https://docs.saloon.dev/conclusion/how-to-guides/improving-speed-with-laravel

@Sammyjo20 I just wanted to check the status on this? What is the best way currently to get requests logged in Telescope?


Editing DataTrackingSystem had side effects

Hey guys,
just to let you know, I edited ScriptableSystemsContainer > DataTrackingSystem as it seems to be partly linked to game success.
It broke my ScriptableSystemsContainer > PreventionSystem, and all Fast travel points disappeared from the map...
(Can't use fast travel anymore and have to rediscover them all... Or load a backup ;) )
Cheers

Alright, I'm reworking the scriptable parts once more to bring stability and better testing.
The app always makes you a backup of the save, the file is named sav.old

Alright, I'm reworking the scriptable parts once more to bring stability and better testing.
The app always makes you a backup of the save, the file is named sav.old

A typo in v0.5.1-alpha caused corruption during the serialization of NodeRef properties. It maybe is what happened to you.
It'd be great if you can retry with the new release and report back the results here.

A typo in v0.5.1-alpha caused corruption during the serialization of NodeRef properties. It maybe is what happened to you.
It'd be great if you can retry with the new release and report back the results here.

I close this issue as it seems to have been solved.

I close this issue as it seems to have been solved.


python3  ('>' not supported between instances of 'int' and 'str')

python 3.6
flexget: latest
worked just fine with python2 , but not with 3 ..
2019-09-09 20:23 ERROR    if            Merge_Trakt_Lists Error occurred while evaluating statementtrakt_votes > '50'. ('>' not supported between instances of 'int' and 'str')
hapening for every task where there is "<" or ">" at least.

strange.. doesn't happen anymore

in fact the whole "if-plugin" is broken. "trakt_collected: accept" does not work neither.

You need to remove the quotes around 50 to make it a number. i.e. trakt_votes > 50 It wouldn't crash on python 2, but it also won't do what you expect.

oh, sorry. thank you


Replaces PI constant with Math.PI

HI @joshribakoff , thanks for checking out the library and thanks for the PR!

Let me know what else I can do to help.
I can replace lodash and jquery demo app with a react app & ESnext? Are the
goals to just replicate Winamp?
Thoughts on extending with glsl transitions or making it 3D/web VR ready?
Like
https://github.com/Algoraphics/Psycho-Bubbles/blob/master/README.md
it could be cool to have a socketIO chat "inside" the renderer in the same
vein as song titles.
Have you tried to get webpack dev server with hot reload working? Do you
know of any reasons that might not work?
Do you think this stuff is unit testable?
On Mon, Jun 25, 2018 at 4:01 PM jberg<EMAIL_ADDRESS>wrote:

Merged #3 https://github.com/jberg/butterchurn/pull/3.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/jberg/butterchurn/pull/3#event-1700114339, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AD1cOmmYkM7iO1ahYhkKZtUy--qxxgrXks5uAWvOgaJpZM4U1n0U
.

--
Sent from Gmail Mobile

We could potentially not only hot reload the app but also individual
shaders to allow live editing. We could build in an app preset editor...
On Mon, Jun 25, 2018 at 6:51 PM Josh Ribakoff<EMAIL_ADDRESS>wrote:

Let me know what else I can do to help.
I can replace lodash and jquery demo app with a react app & ESnext? Are
the goals to just replicate Winamp?
Thoughts on extending with glsl transitions or making it 3D/web VR ready?
Like
https://github.com/Algoraphics/Psycho-Bubbles/blob/master/README.md
it could be cool to have a socketIO chat "inside" the renderer in the same
vein as song titles.
Have you tried to get webpack dev server with hot reload working? Do you
know of any reasons that might not work?
Do you think this stuff is unit testable?
On Mon, Jun 25, 2018 at 4:01 PM jberg<EMAIL_ADDRESS>wrote:

Merged #3 https://github.com/jberg/butterchurn/pull/3.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/jberg/butterchurn/pull/3#event-1700114339, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AD1cOmmYkM7iO1ahYhkKZtUy--qxxgrXks5uAWvOgaJpZM4U1n0U
.

--
Sent from Gmail Mobile

--
Sent from Gmail Mobile

Hey Josh,
So in terms of winamp, you should checkout Webamp: https://github.com/captbaritone/webamp
We are currently working on integrating Butterchurn into webamp, and I think that could potentially be a cool place to add the preset editor (really have it be like the original!).  There is a discord channel for webamp that I'm in if you wanna stop by to discuss any time: https://discord.gg/fBTDMqR
In terms of the example app, would be happy to accept a better version hah!  I don't see any reason hotreloading couldn't be made to work either, just didn't end up prioritizing it :-X
Trying to get shaders VR ready would be awesome too.
It all sounds pretty great, definitely checkout webamp and lets chat more! =]

Yes I saw webamp thanks. I was thinking we could have butterchurn be
generic.
Someone building a competing music app might want to emulate VLC instead of
Winamp, and they might also want to use this visualizer (and edit presets).
Another use case would be a VJing web app.
In my opinion it makes sense for the demo app in this repository to provide
a basic preset editor (and maybe rewritten into react first). I believe
this should also not preclude web amp from creating their own preset
editor, or importing mine and overriding the styles.  If web amp doesn't
import any part of the demo app it should get tree shaken away and all that
jazz.
At minimum I think we'll have to add some hooks to the code for reloading
the preset so that could be a starting point and the UI discussion could be
deffered.
On Mon, Jun 25, 2018 at 7:10 PM jberg<EMAIL_ADDRESS>wrote:

Hey Josh,
So in terms of winamp, you should checkout Webamp:
https://github.com/captbaritone/webamp
We are currently working on integrating Butterchurn into webamp, and I
think that could potentially be a cool place to add the preset editor
(really have it be like the original!). There is a discord channel for
webamp that I'm in if you wanna stop by to discuss any time:
https://discord.gg/fBTDMqR
In terms of the example app, would be happy to accept a better version
hah! I don't see any reason hotreloading couldn't be made to work either,
just didn't end up prioritizing it :-X
Trying to get shaders VR ready would be awesome too.
It all sounds pretty great, definitely checkout webamp and lets chat more!
=]
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/jberg/butterchurn/pull/3#issuecomment-400154372, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AD1cOjQchJUkrUcCLNGTGZAvUnsHeVJwks5uAZglgaJpZM4U1n0U
.

--
Sent from Gmail Mobile

Keeping things generic/separate sounds good.
Hot reloading the butterchurn source for dev should be trivial, but reloading/editing presets is going to run into some issues.
There are a couple components to each of the presets: the NSEEL equations for frame/pixel/wave/shape codes and then the warp/comp shaders.  Editing/reloading the NSEEL equations wouldn't be hard, but the shaders are another story.  The milkdrop shaders are HLSL and need to be converted to GLSL.
Currently I convert all the presets to a JSON format "offline" where i can use C++ libs to translate the shaders.  I have not had that much luck getting a HLSL->GLSL parser working in javascript, that is the major roadblock ATM.  It only works for a small subset of the simpler presets.

Sounds good. Some options may be to precompile your tool and shell out to
it in a webpack plugin or maybe even bypass the shell and hook it in via
node gyp. I'll play around with it and let you know how it goes. Thanks
again for writing this/porting this over to webgl, very nostalgic!
On Mon, Jun 25, 2018 at 8:59 PM jberg<EMAIL_ADDRESS>wrote:

Keeping things generic/separate sounds good.
Hot reloading the butterchurn source for dev should be trivial, but
reloading/editing presets is going to run into some issues.
There are a couple components to each of the presets: the NSEEL equations
for frame/pixel/wave/shape codes and then the warp/comp shaders.
Editing/reloading the NSEEL equations wouldn't be hard, but the shaders are
another story. The milkdrop shaders are HLSL and need to be converted to
GLSL.
Currently I convert all the presets to a JSON format "offline" where i can
use C++ libs to translate the shaders. I have not had that much luck
getting a HLSL->GLSL parser working in javascript, that is the major
roadblock ATM. It only works for a small subset of the simpler presets.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/jberg/butterchurn/pull/3#issuecomment-400170597, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AD1cOtxGuiYeVM0qdSljJPUDKvBDdiK3ks5uAbG4gaJpZM4U1n0U
.

--
Sent from Gmail Mobile

Thanks! Working on updating the converter repo tomorrow, need to add some instructions at the very least =]

Was thinking about this more this morning, I hadn't really thought about the possibility of a local version/electron app/something editor, so focused on getting it to work on the web hah.  That could be really cool, and would be able to recompile the shaders too.  I'll see if I can get together a really simple example that shows editing/recompiling a preset.
Thanks!!

Hi again @joshribakoff
I've been reworking how the preset converter works, and was able to package it up as a node native addon.
It doesn't even have editing yet, but I've taken the demo app from this repository and added preset conversion when dragged onto the visualizer: https://github.com/jberg/milkdrop-editor-electron
Really just trying to connect the pieces, so that the preset converter using the C++ shader libs can be called from the electron app. No editing ... yet =]


Exclude list?

Is there a way to influence @vercel/nft from the outside by providing a list of paths or files to ignore or exclude from the function dist, even though nft itself would decide to include it?
Unfortunately we sometimes have bugs (or unintended features) in Prisma that lead to big files wrongly being considered required, and then included in the serverless functions. This can also be triggerd by accident by users doing things in their codebase. Sometimes this even leads to the function archive getting to big for Vercel to upload it to AWS Lambda.
An exclude list would be a good workaround we could give our users temporarily to manually exclude some files or folders and unblock their deployments to Vercel functions.

Vercel deployments are typically zero config so we don't want to instruct every user to add config.
I think its best to solve it once in the package (#203) than to make every user add config.

This also might be a good use case for conditions so the @primsa/engines package can declare different exports for development vs production.

I'm going to close this issue since nft already supports this use case though ignore option.
Let me know if there is anything else we need here 👍

Vercel deployments are typically zero config so we don't want to instruct every user to add config.
I think its best to solve it once in the package (#203) than to make every user add config.

I agree that we don't want users to have to add config, but it would be nice if libraries could. One option would be to have NFT pick up on any files listed in webpack's external option, as that's literally someone saying "please don't bundle this."


Example pages built with weightless

I think it would be great with some sample pages as it would be quicker to spin up a new page that looks great.
I think it will be easier to see how they play together, there is some design inconsistencies with the border-radius with different elements :)
<!DOCTYPE html>

    <meta charset="utf-8" />
    <title>Sample Page</title>

    <wl-nav shadow fixed>
      Header

<wl-button>Sign in</wl-button>

    </wl-nav>

Great idea :-) I'm thinking of using code pen to create the example pages - for instance, the code you wrote above is shown here https://codepen.io/andreasbm/pen/oRKVRo. I like that it is easy to visualize and play with. Feedback is welcome.
I'm also working on another project that can help setting up new projects quickly - If you run npm init web-config new my-project --lit you can try it out. It is still very early in its development, but you'll get an idea of how it works. My idea for this is that you should be able to spit out example apps if specified.


do allgather only in shared optimizer states groups

notice their only one way (BF16_Optimizer) for bf16+pipeline train.
pipeline parallel with bf16(use zero1 optimizer) will default call this even if dp size = 1.
some time we may only try mp/pp>1 with dp=1 , this may cost some time.

@inkcherry, thanks for this PR. Note that this is a utility function is also used by zero stage 1 & 2, so this benefits more cases than bf16_optimizer.


Typescript decorators do not work

When using TypeScript and the decorator syntax for validatejs, the validation does not occur.
I am assuming that it is something to do with the way that TypeScript generates the decorator code.
I will try and put together a small demo, but I'm really tight for time right now.  To move on, I have switched to the fluent syntax which works fine in TypeScript.

I have created a quick demo here: https://github.com/reyno-uk/aurelia-validatejs

Thanks I think this issue is related and the fix is there just not released - if that wasn't fixing it and there is something else I'll make sure we get this in the next release.  If it is a dupe let me know.  I'll run the repro this weekend to verify if I've not heard anything.

@PWKad I don't think this is fixed with issue #22.  I get the problem with that fix applied in base-decorator.js

this is fixed in the alpha release http://blog.durandal.io/2016/06/14/new-validation-alpha-is-here/


Fix prometheus non-latency timer metrics

Some metrics like history_count is emitted as the timer, using the value of nanoSecond. Because tally will try to emit the value of Second, the actual value is 10^-9.
This is too small that for some system like Datadog, the value cannot be loaded.

Related to https://github.com/uber/cadence/issues/4006


BeforeRouteEnter event not called for async loaded components

Version
4.0.3
Reproduction link
https://github.com/websmurf/vue-router-async-test
Steps to reproduce
Run the provided application in the test repository, and make sure your console is open.
If you click the "Page 1" link, the console shows "Page 1"
If you click the "Page 2" link, the console shows "Page 2"
If you click the "Async Page 1" link, the console shows nothing
If you click the "Async Page 2" link, the console shows nothing
Now, click the Async Page 1 link again, now the console shows 'Async page 2'
Also, when directly visiting the async pages, no beforeRouteEnter event is triggered.
What is expected?
I would expect the beforeRouteEnter method to be called in every of these cases.
What is actually happening?
The beforeRouteEnter method is only called for the sync loaded components. Only once the page is loaded once, the beforeRouteEnter method is called

We are in the process of migration our old Vue2 application to Vue3 and Vite, hence the usage of vue-class-component (since we use it already and it means converting lesser code).
Not sure if this is actually caused by vue-router; or by vue-class-component; will adjust the example to include a Composition API set as well.

Oki, added a composition api component and it's working instantly there as well;
That means this issue is most likely caused by vue-class-component I guess?

Oki, added a composition api component and it's working instantly there as well;
That means this issue is most likely caused by vue-class-component I guess?

@ktsn do I need to update anything at https://github.com/vuejs/vue-router-next/blob/b17be855fa6e1212583cb4844439cfc447247592/src/navigationGuards.ts#L285 ?

@ktsn do I need to update anything at https://github.com/vuejs/vue-router-next/blob/b17be855fa6e1212583cb4844439cfc447247592/src/navigationGuards.ts#L285 ?

Hi @posva , I have submitted a PR to fix this issue https://github.com/vuejs/vue-router-next/pull/743
Will you help to review it?

@posva do you have any indication about a next release of vue-router-next? This is the last issue before I can launch my updated codebase :-)

Likely next week. You can use a local package patch until then


Codelab has malformed comment in sample code

At this Codelab: Building beautiful UIs with Flutter. 4. Build the main user interface, the first section has a link to sample code:
Try the finished app on DartPad!
The first line in the sample code has a malformed comment:
/ Copyright 2017, 2020 The Flutter team. All rights reserved.
should be
//Copyright 2017, 2020 The Flutter team. All rights reserved.

Hi @d-y
Ii is fine for me as you can see in the image bellow.

Can you confirm that it is working as expected now?
Thank you

Hi @pedromassangocode
When I open a new tab in Chrome, in incognito mode it works.
When I try it again in a new tab in Chrome, but NOT in incognito mode, I get the malformed comment.
I suspect the bad code is somehow tied to my browser session, or might be related to caching. I think I accidentally modified the code myself, but I'm surprised that I still see the changes.
In any case the code on your side is working as expected. Sorry for the trouble.
Could you tell me the name of the program you used to create that gif?

Could you tell me the name of the program you used to create that gif?

I used KAP!

Yes, this is probably your browser caching the URL content.


Uncaught<PHONE_NUMBER> ___cxa_throw opencv.js:30

Hi there,
I am having an exception while using openCV with react-webcam, after few seconds opencv start throwing below error

exception error is not clear to me so unable to identify the issue :(
Please let me know if anyone else is having the same, OR how to resolve it
Thanks.

same question

Hi I'm facing the same issue.

Same question, does anyone know how to fix it?

try to use cv.exceptionFromPtr(err) to see what the exception is.


Enhancement in update_or_create method

I want to change update_or_create method just like we did in get_or_create #554.
The update_or_create method tries to fetch an object from database based on the given kwargs. If a match is found, it updates the fields passed in the _defaults dictionary. if a match is not found, it creates the object using kwargs and _defaults.
Here is the Django API for this method:
obj, created = Person.objects.update_or_create(
    first_name='John', last_name='Lennon',
    defaults={'first_name': 'Bob'},
)

The following method will do something similar to this code:
defaults = {'first_name': 'Bob'}
try:
    obj = Person.objects.get(first_name='John', last_name='Lennon')
    for key, value in defaults.items():
        setattr(obj, key, value)
    obj.save()
except Person.DoesNotExist:
    new_values = {'first_name': 'John', 'last_name': 'Lennon'}
    new_values.update(defaults)
    obj = Person(**new_values)
    obj.save()

I will change defaults to _defaults.

IMO the current docstring for update_or_create is misleading.

Updates the model, or in case there is no match in database creates a new one.

It does not do this at all, it simply checks if pk_name has been passed, and creates a new one if not. This currently seems rather useless at the moment, since it requires an autoincrement key which you already knowingly do or don't pass.

Yeah, I am finding it very strange behaviour that update_or_create would throw a NoMatch error.


No Frontend folder gets created when react-ts is selected as frontend framework/library

Required check list:

[x] I'm gonna mark the checkboxes like this.
[x] I didn't find in the Create Go App CLI repository's issues section similar bug.
[x] I understand, that the Create Go App CLI is Open Source and not-for-profit product.
[x] This is not about third-party project, framework, package or technology.

My environment:

OS : Linux windows <IP_ADDRESS>-microsoft-standard-WSL2 #1 SMP Fri Apr 2 22:23:49 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Golang (go version): go version go1.18.3 linux/amd64
Create Go App CLI (cgapp -v): cgapp version 3.6.2

Describe the bug:
If you follow the steps below, there is no frontend folder that gets generated for the react-ts framework/library
Steps to reproduce the behavior:

mkdir GO-PROJECT
cd GO-PROJECT
cgapp create
Select fiber as backend framework
Select react-ts as frontend framework/library
Select traefik-acme-dns as web/proxy server
Click enter to create project
No frontend folder is created

Expected behavior:
The project bootstraps properly including the frontend directory
Screenshots:
Image when running the commands

Image of directory structure after commands, notice frontend is missing:

Hi,
Please make sure that you have npm version 7 or higher installed to create the frontend part of the project correctly. If you run the cgapp create command using our Docker image, npm of the correct version is already included.

Ohhh right!! Awesome! It works now

I have npm version 8 and am seeing the same issue with a not so helpful error message:
Error: [ERROR]exit status 1
Usage:
  cgapp create [flags]

using npm 9.6.4 I have the same issue. front-end folder didn't create (next-ts).

using npm 9.6.4 I have the same issue. front-end folder didn't create (next-ts).

Required check list:

[x]  I'm gonna mark the checkboxes like this.
[x]  I didn't find in the Create Go App CLI repository's issues section similar bug.
[x]  I understand, that the Create Go App CLI is Open Source and not-for-profit product.
[x]  This is not about third-party project, framework, package or technology.

My environment:

OS : Linux windows <IP_ADDRESS>-microsoft-standard-WSL2 React TypeScript Template #1 SMP Fri Apr 2 22:23:49 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Golang (go version): go version go1.18.3 linux/amd64
Create Go App CLI (cgapp -v): cgapp version 3.6.2

Describe the bug:
If you follow the steps below, there is no frontend folder that gets generated for the react-ts framework/library
Steps to reproduce the behavior:

mkdir GO-PROJECT
cd GO-PROJECT
cgapp create
Select fiber as backend framework
Select react-ts as frontend framework/library
Select traefik-acme-dns as web/proxy server
Click enter to create project
No frontend folder is created

Expected behavior:
The project bootstraps properly including the frontend directory
Screenshots:
Image when running the commands
Image of directory structure after commands, notice frontend is missing:

using npm 9.6.4 I have the same issue. front-end folder didn't create (next-ts).

Hi,
Can you try a similar installation next-ts via create-next-app on your machine?


Windows flatc

If we are adding flatc.exe, should we also add flatc for 64 bit linux?

While you're on it, yes
Mac OS x64 and Mac ARM64 would be good as well

README should also point out what exact commit of the compiler we're using/shipping.
Minimum version at least. But Ill also add a CONTRIBUTING.md at some point to clarify stuff like code style and review process.


Cannot Add Multiple Tags

Expected Behavior
DockerSlim should allow you to pass multiple image tags.

Actual Behavior
You can only assign one tag. If you want to tag something with two tags then you have to run the docker-slim command twice with the two different tags.

@ProfessorManhattan It's assumed if you need additional tags you'd use docker tag on the minified image produced by the docker-slim build command. Do you mind sharing a bit more about your use case? Curious to learn why you need multiple tags.
Adding support for more than one custom tag should be available pretty soon.

Hey @kcq -- thanks, I didn't think of that. docker build supports multiple tags though. My use case is for tagging something as :slim and :0.0.0-slim

This ability is already in master and it'll be there in the next released binary too. Here's an example where the optimized nginx image ends up with 3 different tags: docker-slim build --tag nginx:slim --tag nginx-minified --tag nginx-min:slim nginx


ci from scratch

Caching is working, unfortunatey github actions is slow, takes 10m to run clippy even with a cache :(


Mac build

Wanted to see if I could compile the project. I saw the macbuild file, and tried it. But I didn't have Mono installed, so it failed.
Eventually I got Mono working, but it complains there's no mmp command. Is mmp something from Xamarin? If so, do I need it to compile this for the Mac?
Am I even going about this the right way, or should I be running make somewhere?
Here's my output for your reference:
cp: /Users/username/repos/pablodraw/Source/PabloDraw.Mac/bin/Release-MAS/PabloDraw.app/Contents/Info.plist: No such file or directory
cp: /Users/username/repos/pablodraw/Source/PabloDraw.Mac/bin/Release-MAS/PabloDraw.app/Contents/PkgInfo: No such file or directory
cp: /Users/username/repos/pablodraw/Source/PabloDraw.Mac/bin/Release-MAS/PabloDraw.app/Contents/Resources/MainMenu.nib: No such file or directory
cp: /Users/username/repos/pablodraw/Source/PabloDraw.Mac/bin/Release-MAS/PabloDraw.app/Contents/Resources/PabloDraw-Document.icns: No such file or directory
cp: /Users/username/repos/pablodraw/Source/PabloDraw.Mac/bin/Release-MAS/PabloDraw.app/Contents/Resources/PabloDraw.icns: No such file or directory
File Doesn't Exist, Will Create: /Users/username/repos/pablodraw/Source/deploy/PabloDraw.app/Contents/Info.plist
./macbuild: line 41: mmp: command not found
Signing app bundle
3rd Party Mac Developer Application: Curtis Wensley: no identity found
3rd Party Mac Developer Application: Curtis Wensley: no identity found
Creating installer

@Kirkman I think you may be missing Xcode?  You can install that from the App Store.

I thought I already had Xcode installed, but I guess I needed to re-install it after upgrading to High Sierra.
Installing Xcode and command line tools resolved those final errors.


test: remove deprecated usage of waitFor

Hey, according to puppeteer/puppeteer#6214, waitFor is being deprecated and should be replaced with waitForSelector, waitForFunction, or other waitForX.
This PR replaces all waitFor with corresponding waitForX.

Thanks for the PR - this is addressed in #4019 which also bumps puppeteer.

Thanks for the PR - this is addressed in #4019 which also bumps puppeteer.

Hey, thanks for the respond.
I am just wondering how to get the PR merged instead of being shadowed by another later PR? Do I need to directly notify someone to review? I can not find any relevant information in the contribution guide.


Fix bug in satellizer.js:278

In certain cases it throws an error evaluating the condition.

Thanks. :+1:


#A02. As Admin, I would like to create new Hackathon events.

Hackathon Name
Hackathon Start Date/Time
Hackathon End Date/Time
Hackathon Theme
Hackathon Description

@hebs87

Thanks @hebs87! I'll move this to In Progress on the Projects board!
Quick note: I'm doing the demo on the call tomorrow morning which will include the bulk of the main setup, base template, static file setup, etc. - you'll want to make sure to pull those changes after they've been merged tomorrow after the workshop demo.

Perfect, cheers @TravelTimN! I'll be in work so I may not be able to make the call tomorrow morning, but I'll make sure to pull the changes in before getting started.

@hebs87  - actually, would you be interested in #41 and #42 ? They are the additional CRUD functionality for what you're working on. (#41 - Edit an Event // #42 - Delete an Event)
Let me know, and happy to assign to you there, also.

@TravelTimN Sure, go ahead and assign those to me too please.

Thanks Sunny!


Fscache gc

support fscahe gc

Can you please this PR to latest main branch? The base code has changed. It will be easier to view those changes.


Add Bloomberg Open Source Weekend entry

Add a news entry with the content for the sprint on PyPA happening in October as suggested by @inglesp.

Thanks @mariocj89!

Thank you!
On Fri, 7 Sep 2018 at 21:50, Peter Inglesby<EMAIL_ADDRESS>wrote:

Thanks @mariocj89 https://github.com/mariocj89!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/PyconUK/uk.python.org/pull/52#issuecomment-419547739,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADia89_IDQnYovnO9FCxuaIjjhnq5pvWks5uYs31gaJpZM4WecHB
.


Cannot handle some callsigns

Hi!
I'm testing your code againt my entire log and found that some calls are shown as "Unknown" but they exists.
This is a list of some callsign:
1U4UN (russia)
2R0BJL (england)
2K0CUH (england)
2K0GMK (england)
T96Q (Bosnia herzegovina)
If I can help, please let me know. Maybe they've forced theyr callsign/country on qrz.com ? This is just an idea.

Hi.
1U4UN doesn't count for anything. See here: http://hamgallery.com/qsl/Unverified/1u4un.htm
As for the other calls, the CTY file does not contain information about those prefixes, so there is very little I can do about that.

Thank you VERY MUCH for the fast answer!!!
Really appreciated your hints!
Mike


Reporting Insight - Wireguard and ZeroTier switched interface

Important notices
Before you add a new report, we ask you kindly to acknowledge the following:

[x] I have read the contributing guide lines at https://github.com/opnsense/core/blob/master/CONTRIBUTING.md
[x] I am convinced that my issue is new after having checked both open and closed issues at https://github.com/opnsense/core/issues?q=is%3Aissue

Describe the bug
Reporting Insight - Wireguard and ZeroTier switched interface
Tip: to validate your setup was working with the previous version, use opnsense-revert (https://docs.opnsense.org/manual/opnsense_tools.html#opnsense-revert)
To Reproduce
Steps to reproduce the behavior:

Created a Wireguard VPN interface,
Created a Zerotier VPN interface,
Both work perfectly fine.
Reporting --> Insight switched the interface names (WG0 showing up as ZT0 and vice versa)
Packet capture on each interface shows up no anomaly
Realtime traffic under Reporting --> Traffic (Graph and Top Talkers) show correct traffic for each of these interfaces.

Expected behavior
Each interface should show correct metrics in Reporting --> Insight
Describe alternatives you considered
I have tried following
Stop Netflow, Delete Netflow data, Star Netflow
Reboot Firewall
Screenshots
If applicable, add screenshots to help explain your problem.
Relevant log files
If applicable, information from log files supporting your claim.
Additional context
Add any other context about the problem here.
Environment
Software version used and hardware type if relevant, e.g.:
OPNsense 19.1.1 (amd64, OpenSSL).
Intel® Xeon™ E3-1225V5 3.3Ghz Quad Core
Network Intel® I210-AT

I am experiencing a similar issue - but my WAN and Wireguard interfaces have switched.
I have checked a packet capture on both interfaces and see the expected traffic.


Merge wasi_threads to main

I think the work is mainly completed. We're still testing the work but bugs found so far were not specific to wasi threads, and they're also problems for pthreads. I think the remaining work can be continued in main.

@loganek I manually merged main into dev/wasi_threads to resolve the conflicts of several CI files, and now this PR is ready to merge. Wondering whether to Squash and merge or Create a merge commit it into main branch? The former keeps all the commits, but some may be duplicated in main branch since I used Rebase and merge to merge main into dev/wasi_threads last time. The latter will ignore the commit logs in dev/wasi, and only create a main log in main branch.

Hi @wenyongh , thanks a lot. I think the very ideal case would be to rebase the dev/wasi_threads branch onto main and forcepush it before merging, so the history is clean and straight. However, that seems to be quite a bit of work and not sure if the benefits overweight that. So my preference would be to have Create a merge commit to keep the history (even though that means we'll have some duplications).
On a side note, I wonder, if for future dev branches we could possibly avoid merging back from main and instead of that periodically rebase onto main and force push (I hope the developers working on that dev branch wouldn't mind) so then the final rebase wouldn't be that painful. What do you think?

Hi @wenyongh , thanks a lot. I think the very ideal case would be to rebase the dev/wasi_threads branch onto main and forcepush it before merging, so the history is clean and straight. However, that seems to be quite a bit of work and not sure if the benefits overweight that. So my preference would be to have Create a merge commit to keep the history (even though that means we'll have some duplications).

OK, let's merge it first.

On a side note, I wonder, if for future dev branches we could possibly avoid merging back from main and instead of that periodically rebase onto main and force push (I hope the developers working on that dev branch wouldn't mind) so then the final rebase wouldn't be that painful. What do you think?

periodically rebase onto main and force push may be an option, but I am not so familiar with the commands. I think if the commits of merging main to that branch are not large (e.g. 1-3 commits), we may Create a merge commit to main to keep all histories, and if the commits are large, I may ask colleagues to help rebase onto main and force push.

but I am not so familiar with the commands

FYI, the commands would be:
git checkout <dev branch>
git fetch origin
git rebase origin/main
git push -f origin <dev branch>

but I am not so familiar with the commands

FYI, the commands would be:
git checkout <dev branch>
git fetch origin
git rebase origin/main
git push -f origin <dev branch>

OK, many thanks!


[CLOYSTER-116] Implement Ansible + Vagrant to run Cloyster

This PR transitions Vagrant management to Ansible.

Improved Code Quality: Now we have a cleaner and more maintainable code.
Enhanced Maintainability: Reduces redundancy by eliminating repetitive tasks.
Increased Automation: More efficient provisioning with less intervention as possible.

There's a lot of 'shell' use when calling vagrant. There's a way to avoid it?

What do you mean with "when calling Vagrant" @viniciusferrao? The Vagrant commands (up, scp, ssh)?

What do you mean with "when calling Vagrant" @viniciusferrao? The Vagrant commands (up, scp, ssh)?

Yes, everything that uses shell. There's no Vagrant plugin to avoid using shell? Because shell defeats the purpose of Ansible.

I really can't see the problem @viniciusferrao, these are native commands from Vagrant. Why would I avoid them?

I really can't see the problem @viniciusferrao, these are native commands from Vagrant. Why would I avoid them?
Plus, the only areas where I'm using shell are the ones where Vagrant can't do the job alone. For example, where I add a new disk I could use a plugin called vagrant-disksize but it has many compatibility problems.

It's because shell is usually the last resort that you should use. Only if there's no native module.
Look here: https://www.reddit.com/r/ansible/comments/pyq3cb/can_you_clearly_articulate_why_using_ansible_to/
If there's no other way OK, but if there's a native module for Vagrant that should be used.

I really can't see the problem @viniciusferrao, these are native commands from Vagrant. Why would I avoid them?

Plus, the only areas where I'm using shell are the ones where Vagrant can't do the job alone. For example, where I add a new disk I could use a plugin called vagrant-disksize but it has many compatibility problems.

It's because shell is usually the last resort that you should use. Only if there's no native module.
Look here: https://www.reddit.com/r/ansible/comments/pyq3cb/can_you_clearly_articulate_why_using_ansible_to/
If there's no other way OK, but if there's a native module for Vagrant that should be used.

Yeah, as I said I found a plugin for that but it has compatibility problems and I don't think it's usable now, not quite a good idea.


[added] solution for rotated sorted array

Solution for finding minimum in Rotated Sorted Array II. LeetCode problem number 154 and type:Hard

Please star this repo ⭐


Update index.html

PR Merged🎉
Thank you for your contribution! Your efforts help make our project better for everyone!


Cannot read properties of undefined (reading '__data') when deleting an entity that uses the mappedBy option of OneToMany as 'owner'

Describe the bug
After updating to MikroORM 5.7.14, An error occurs when deleting an entity that uses the mappedBy option of OneToMany as 'owner'
Stack trace

import { Entity, ManyToOne, PrimaryKey, Property } from '@mikro-orm/core';

import { User } from './user.entity';

@Entity()
export class Team {
  @PrimaryKey({ columnType: 'uuid', defaultRaw: `gen_random_uuid()` })
  id!: string;

  @Property({ columnType: 'uuid', nullable: true })
  userId?: string;

  @ManyToOne(() => User, {
    fieldName: 'user_id',
    onUpdateIntegrity: 'set null',
    onDelete: 'cascade',
    nullable: true,
  })
  owner?: User;
}

import {
  Cascade,
  Collection,
  Entity,
  OneToMany,
  PrimaryKey,
} from '@mikro-orm/core';
import { Team } from './team.entity';

@Entity()
export class User {
  @PrimaryKey({ columnType: 'uuid', defaultRaw: `gen_random_uuid()` })
  id!: string;

  @OneToMany(() => Team, (team) => team.owner, {
    cascade: [Cascade.ALL],
  })
  teams = new Collection<Team>(this);
}

To Reproduce
Steps to reproduce the behavior:

create a OneToMany and ManyToOne relationShip with mappedBy use 'owner' string or entity.owner
Attempt to removeAndFlush entity with One relationship
Throws an error

Expected behavior
Data should be deleted normally.
Versions

Dependency
Version

node
16.18.1

typescript
5.1.3

mikro-orm
5.7.14

your-driver
"@mikro-orm/postgresql": "^5.7.14"

Can you please provide a complete repro? So in addition to the entity definition, add also few lines that create some data and some that trigger this error. Entity definition does not reproduce much on its own.

@B4nan
Thanks for the quick response!
The same error occurs after removing the userId property.
I've uploaded a reproduction repository
let me know if you have any trouble using it to reproduce the problem. Thanks again!

Ok, this is quite a funny problem - it all boils down to your owning property being called owner which is the same as Collection.owner, an internal property. Because of this match, things got broken.

@B4nan
thanks a lot for the quick fix!👍
May I know when the new version will be released?

Use the dev version, I want to ship new feature release next, and still have few things I want to implement first. I hope stable will go out in the end of this week or during next week.


Update mix.md

https://laracasts.com/discuss/channels/elixir/l54-styles-is-not-a-function

mix.styles and mix.scripts are alias for mix.combine


Install and import xgboost in Python Azure Function app doesn't work

Azure documentation issue guidance
Thanks for opening an issue in the Azure technical documentation repository.
We use GitHub issues as the primary channel for customer and community feedback about the Azure documentation.
Creating an issue
We prefer that you create documentation feedback issues using the Feedback link on the published article - the feedback control on the doc page creates an issue that contains all the article details so you can focus on the feedback part.
You can also create a feedback issue here in the repo. If you do this, please make sure your issue lists:

[ ] The relevant Azure service or technology.
[ ] A link to the published documentation article that you have feedback about.
[ ] Clear, specific feedback that the author can act on.

Pull requests and article contributions
If you know the change that is needed in an article, we encourage you to submit the changes directly using a pull request. If the change is large, or if you want to contribute an entire article, follow these guidelines:

[ ] Don't surprise us with a big pull request or a pull request with a new article! Submit an issue that describes the details of the proposed large change or new article.
[ ] Include the service or technology area.

We'll route the issue to the appropriate content team for review and discussion.
Tech support and product feedback
If you would like to contact Microsoft about other things, such as product feedback or tech support, please review these guidelines:

If you need technical support using Azure, the paid and free support options are described here: https://azure.microsoft.com/support/options/.

Each article in the Azure technical documentation contains a product feedback button - it's best to submit product feedback directly from a relevant article. Otherwise, you can submit product feedback for most Azure products in the following product feedback forum: https://feedback.azure.com/forums/34192--general-feedback.

The error is :
Exception: XGBoostError: XGBoost Library (libxgboost.so) could not be loaded.
Likely causes:
OpenMP runtime is not installed (vcomp140.dll or libgomp-1.dll for Windows, libgomp.so for UNIX-like OSes)
You are running 32-bit Python on a 64-bit OS
Error message(s): ['libgomp.so.1: cannot open shared object file: No such file or directory']
This thread adresses the issue : #493
We tried to put the .whl directly in the function folder and install the package from there, which didn't work.

@cconcordet please provide the link to the document that you are following so that we can better assist you.

The document we have been following is this one : https://github.com/Azure/azure-functions-python-worker/issues/493

Hello, have you found a solution ?

Hello @MarileeTurscak-MSFT ,
Would you be able to provide an anwser on this issue or do you anyone that can help ?
Thanks a lot in advance for your help !
Mathilde

@cconcordet @magaudef Could either one of you open a thread on MSDN forums for this question and tag me here with the URL, please? Once I get notified and see your MSDN thread, I'll make sure your question gets answered.
Since this channel is more for driving improvements towards MS Docs and the scenario doesn't really relate to specific documentation, we will now proceed to close this thread for now.

@mike-urnun-msft I tried to but I coudn't use links in my question and therefore couldn't tag you, so please find the issue there

@cconcordet Thanks! I'll take a closer look and respond with my findings on your MSDN thread.

Any update @mike-urnun-msft ?

Good morning gents,
This issue is quite interesting, I actually faced the exact same one on a project I am currently working on.
@mike-urnun-msft do you happen to have any update on that?
It seems that this problem with XGBoost exists in Azure since quite a long time...

@cconcordet @Leonard-AI-Program Sorry for the delay, folks. I've yet to look into this one fully and will update the MSDN thread with my findings when I do so. From a quick look, it looks like @anthonychu comment here that it can be solved by installing gcc. Have you guys tried it?

It seems that xgboost loads a library libgomp.so.1 in runtime, and container image mcr.microsoft.com/azure-functions/python for Python Azure Function App doesn't have it.
I have faced similar situation when opencv-python-headless tries to load libglib-2.0.so.0 and libgthread-2.0.so.0 in runtime.
A following repository may help you.
https://github.com/horihiro/azure-functions-python-opencv-example

@cconcordet can you please open this issue in the azure functions python worker repo. https://github.com/Azure/azure-functions-python-worker/issues

@anirudhgarg I did open the issue as requested, do you have any updates ?


Isar Not Generating .g file ( 0 outputs on build)!

Steps to Reproduce
-Open new vs code (flutter) project
-Create a new folder called "note.dart" in /lib directory
-paste in following code below (in code sample section)
-Add Isar dependencies:
flutter pub add isar isar_flutter_libs path_provider
flutter pub add -d isar_generator build_runner
-Run Following command to add .g file:
dart run build_runner build
Code sample

part 'lib/note.g.dart';

@Collection()
class Note {
  Id id = Isar.autoIncrement;
  late String text;
}

My pubspec.yaml:
description: "A new Flutter project."
publish_to: 'none'
version: 0.1.0

environment:
  sdk: '>=3.4.3 <4.0.0'

dependencies:
  flutter:
    sdk: flutter
  isar: ^3.1.0+1
  isar_flutter_libs: ^3.1.0+1
  path_provider: ^2.1.1
  provider: ^6.1.1

dev_dependencies:
  flutter_test:
    sdk: flutter
  isar_generator: ^3.1.0+1
  build_runner: ^2.4.7
  flutter_lints: ^2.0.0

flutter:
  uses-material-design: true```

I have tried creating this build,yaml too (recommended by chatgpt):

targets:
$default:
builders:
isar_generator:
generate_for:
- lib/*.dart```
When I run dart run build_runner doctor:
```[WARNING] Builder isar_generator:isar_generator outputs .isar_generator.g.part  from .dart which is not specified in the `build.yaml````
Details

Platform: VS Code [lastest version]
Flutter version: [lastest]
Isar version: [3.1.0+1]

I have tried everything and have found no help!
1.) I have tried flutter clean and redoing build
2.) downgrading / upgrading dependencies
3.) Manually creating build.yaml
4.) Looked at other similar issues and try those solutions
5.) Googled Same Error
6.) Asked in other communities.

The part should not have a directory in the path, it should only be the file.
Try this instead:


[toward #5102, refuse ancient servers] login: Equalize user-facing errors across both api.getUserSettings calls

And make them a bit more descriptive.

Before:

On submitting the realm input, an error alert with title "Cannot connect to server." and no body
On picking an account in the account-pick screen, an error alert with title "Failed to connect to server: {realm}" and no body.

After:
In both places, an error alert with title "Could not connect", and one of these as the body:

On ApiError: "Message from {realm}: “{message}”" (where realm is a realm URL and message is, e.g., "Subdomain required")

On NetworkError: "Could not connect to {realm}. Please check your network connection and try again." (where realm is a realm URL)

Otherwise: "Failed to connect to server: {realm}" (where realm is a realm URL)

FYI @alya for the UX change.

Seems reasonable to me... Can we give any helpful advice in the "Failed to connect to server" case? What might be wrong, and what can the user try?

Can we give any helpful advice in the "Failed to connect to server" case? What might be wrong, and what can the user try?

That one is meant as a fallback and should only show after we've checked for known common things that could go wrong, like an error with the network connection, and we've come up empty so we can't really suggest things to try.
A few things come to mind to make that check smarter, though, so we don't end up using the fallback as much:

We should probably have a case for 5xx errors, so we can say the server is busted and you should bug an admin or try again later.
Probably a somewhat common failure mode is that you put in a URL that's not a Zulip server at all, like recurse.com instead of recurse.zulipchat.com. Greg, should we try to think of some test for whether the server is a Zulip server?

Oh, while I'm here, what do we think of the following error alert for #5102, refusing to connect to ancient servers:
Title: "Could not connect" (same as the ones in this PR)
Body: "{realm} is running Zulip Server {version}, which is unsupported."
"Learn more" button: https://zulip.readthedocs.io/en/stable/overview/release-lifecycle.html#compatibility-and-upgrading

Probably a somewhat common failure mode is that you put in a URL for not a Zulip server at all, like recurse.com instead of recurse.zulipchat.com. Greg, if we're thinking of some test for whether the server is a Zulip server, does anything come to mind? Maybe if we get a 404, we just say it's not a Zulip server? (It could still be a misconfigured one, but there's no way to be foolproof with this.)

Yeah, I think if we try to fetch the server-settings route and get back a 404 — so it's not that the server is unreachable or down, but rather the server is informing us it has no such route — then it's fair to conclude that it's not a Zulip server.

Oh, while I'm here, what do we think of the following error alert for #5102, refusing to connect to ancient servers (will be a separate PR):

Seems reasonable to me!
One thought that brings to mind is that it would be good to have a Help Center page we can link to instead of that developer-facing page. The Help Center page could potentially link in turn to that page, but first it would give a focused answer to the questions a user might have, like:

why am I being shown this;
what do I need to ask my IT department (in general, my server admin) to do.

Probably we'd want users to get pointed at that Help Center page to send it to their server admins when asking them for help, too — so it should have a clear action item for them with a link to upgrade instructions.

Makes sense, thanks for the review!

Help Center page

Just filed zulip/zulip#23842 for this.

Revision pushe.d

Ah, and I've just updated the description with the current list of user-facing messages, and two screen recordings.
@alya FYI.

Thanks! Looks good to me.
I'll leave it open for @alya to comment too.

Is there a good way to avoid the line break after https://? Otherwise looks good to me!

Is there a good way to avoid the line break after https://? Otherwise looks good to me!

Hmm, yeah I agree that's a bad place for the line to break.
Unfortunately we can't easily control how these iOS alerts are styled; it's a native component rather than something managed in React. @gnprice, what do you think?

Unfortunately we can't easily control how these iOS alerts are styled; it's a native component rather than something managed in React. @gnprice, what do you think?

Yeah, it doesn't seem like we have a good way to control that. So we'll just let it be.
The same thing is true in the underlying iOS SDK, too — this isn't a case where there's functionality underneath which RN just isn't exposing to us. It's using UIAlertController, of which the message property is just a string:
https://developer.apple.com/documentation/uikit/uialertcontroller/1620106-message


Doesn't work with LDAP version >3.4.4

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

$ go version
go version go1.22.4 linux/amd64

Does this issue reproduce with the latest release?
yes
What version of Go-Guardian are you using ?

Go-Guardian Version:
github.com/shaj13/go-guardian/v2 v2.11.5

What did you do?
var strategy auth.Strategy
var cacheObj libcache.Cache

func InitLDAPConnection(cfg *config.Config) {
	ldapConfig := &ldap.Config{
		BaseDN:       cfg.LDAPBaseDN,
		BindDN:       "uid=" + cfg.LDAPBindUser + "," + cfg.LDAPBaseDN,
		Port:         cfg.LDAPPort,
		Host:         cfg.LDAPHost,
		BindPassword: cfg.LDAPBindPassord,
		Filter:       "(uid=%s)",
	}
	cacheObj = libcache.FIFO.New(0)
	cacheObj.SetTTL(time.Minute * 10)
	strategy = ldap.NewCached(ldapConfig, cacheObj)
}

What did you see instead?
# github.com/shaj13/go-guardian/v2/auth/strategies/ldap
/home/user/go/pkg/mod/github.com/shaj13/go-guardian/v2@v2.11.5/auth/strategies/ldap/ldap.go:71:9: cannot use ldap.DialURL(cfg.URL, opts...) (value of type *"github.com/go-ldap/ldap/v3".Conn) as conn value in return statement: *"github.com/go-ldap/ldap/v3".Conn does not implement conn (wrong type for method Close)
                have Close() (error)
                want Close()

Works ok with LDAP version 3.4.4:
github.com/go-ldap/ldap/v3 v3.4.4

After updating my go mod to use the latest versions (go get -u ./...), this error occurred for me, too


Add automated multi-arch container build to Drone CI  workflow

https://raw.githubusercontent.com/xavier-hernandez/goaccess-for-nginxproxymanager/main/.github/workflows/docker-build.yml
https://raw.githubusercontent.com/Just5KY/honeypots/latest/.github/workflows/docker.yml
Pretty much all is there, you just need to cofigure it for your repo.
and add the secrets

Thank you for the issue! I will try to map it to Drone CI to support the same features.

I have finally gotten ARM builds to work now - would be great if you could test it out.

its working perfectly

Very nice! Thank you.