Python, multithreading and lock free MCTS...?

I understand you intend this to be a reference implementation, but I think for AlphaGo Python is just not appropriate.
The single machine version of AlphaGo is described as running on a machine with 48 cores and 8 gpus. The computation is a collective of parallel gpu neural net operations and cpu MCTSs. 8 cores are dedicated to controlling the 8 gpus, but that is only half of the story, the other half is the remaining 40 cores that are performing asynchronous MCTS (as in https://webdocs.cs.ualberta.ca/~mmueller/ps/enzenberger-mueller-acg12.pdf).
This lock free MCTS requires full control over the shared data structure to work properly and ensures almost linear performance scaling with the number of cores.
There is a serious issue with using Python for AlphaGo: not only its slow single threaded (because of being interpreted and not native), it can't do any real multithreading either because of the GIL, let alone fine grained shared memory access to implement such a lock free algorithm, and also coordinating gpu nn results with MCTS.
It's not that a python implementation wouldn't scale on a monster 48 cpu + 8 gpu system, it wouldn't scale on a basic 8 core computer, being basically single threaded.
Great effort, neural net training is fine done in python, but for later stages I would recommend using a language with real multithreading capabilities for this. Just my two cents, you can just close this issue.

Thanks for the advice.  Cython sidesteps all of this, if/when it becomes an actual issue.

Thanks for the thorough comment! We have a few options:

Be OK with the slowness of this implementation (it is in part for reference, as you noted). We will still have all the neural nets trained in Python and loadable into other faster languages for search
Explore Python implementations without a GIL (do they work with theano and numpy?)
Make a fast C module as Thouis suggested
Make it multiprocessed

Useful: http://python-notes.curiousefficiency.org/en/latest/python3/multicore_python.html

Cool, cython shouldbe  powerful enough for an efficient implementation.


Proposal on a new package usage.

import fed.ray as ray

@ray.remote(party='ALICE')
class A:
    pass

or
import fed.ray as ray

@ray.remote(party='ALICE')
class A:
    pass

A.party('ALICE').remote()
A.options(party='ALICE').remote()

Mixing fed as ray and ray might confuse users. Explicit is better than implicit.


Failed SonarCloud, UploadPatients.tsx, HivUploadForm.tsx

Resolve failing CI checks that are reported bugs from SonarCloud.
Here is a link to the issues in sonar cloud: https://sonarcloud.io/project/issues?resolved=false&types=BUG&sinceLeakPeriod=true&severities=BLOCKER%2CCRITICAL%2CMAJOR%2CMINOR&id=CDCgov_prime-data-input-client
Here is a failed check in Github: https://github.com/CDCgov/prime-simplereport/runs/13241633985
This is causing a failure status on the main branch.

For future reference: although we have a number of SonarCloud tickets created, I don't think this is a dupe. I see UploadPatients.tsx and HivUploadForm.tsx both have the bug Promises must be awaited, end with a call to .catch, or end with a call to .then with a rejection handler.

Closed: Will revisit at a later time. (06/18/2024)


NTR N-acetylmannosamine binding

NTR N-acetylmannosamine binding
CHEBI:62164
standard def
PMID:24293368

Is this endogenous binding?  i.e was it isolated bound, or  'forced' You should not annotate this if it was  just incubated together.

From the paper I don't see that this is a physiological binding (it may be!); have you seen evidence that it is ?

They just call it a high affinity ligand, it's a crystal structure. I guess it might not be physiological (why do they bother...)


Contact form does not work

Is your feature request related to a problem? Please describe.
As of now the contact form does nothing.
Describe the solution you'd like
I am planning to use EmailJS services to implement a working contact feature.
Describe alternatives you've considered
We can use SMTP JSto implement this in case the previous does not work.
Additional context
This feature will allow users to send their queries to the admin via email.

Hello @thestarsahil I would like to work on this issue under gssoc 24.


Fix: parse -maxtxfee outside of CWallet

Fixes #3087
This preserves the effect of -maxtxfee even when -disablewallet is active.

Note: Bitcoin Core has since switched sendrawtransaction RPC to accept a maxfeerate arg instead of a maximum absolute fee, so this issue does not exist in Bitcoin Core.


Add helptexts for -whitelist and rpc prioritisetransaction and switch -

to bitcoin instead of satoshis.

Dogecoin specific disabled changes accounted for. @rnicoll turned off in #969

Putting  https://github.com/bitcoin/bitcoin/pull/5398 here for reference.


What's the syntax for adding latency in compose?

Sorry to ask this in bugs, but I can't work out if this is how it's supposed to be done:
environment:
  - PUID=1000
  - PGID=1000
  - AIRCONNECT_MODE=upnp
  - LATENCY=1000:2000

Is that correct?
I get a second of pause during streaming every so often (the setting above doesn't fix it). Wondered if it's totally the wrong place/method.

Hello, can you provide more details? For example:

which app are you using that wants to steam to a airplay device
which is the underlying UPnP device
any wifi connection is involved?

Thank you.

According to the upstream documentation, the latency parameter is useful for Sonos and Heos players, see here. If yours is another type of device, the parameter might not be helpful.
Also, can you tell me on what type of device the airconnect container is running?

Hello, can you provide more details? For example:
* which app are you using that wants to steam to a airplay device

* which is the underlying UPnP device

* which device is running the airconnect container

* any wifi connection is involved?

Thank you.

Appreciate the the help - thanks
App is Apple Music, but running from an iPhone 12 Pro
Streaming to Sonos S1 system
The container runs on OMV (it's a 2nd gen core i7, with 16gb of ram)
The OMV machine is connected via ethernet the Sonos is all wireless (apart from a bridge) - it's all S1
Thanks for the upstream doc, I'll take a look!

Hello, isn't the Sonos S1 already an AirPlay device? Maybe you want/need AirPlay1 instead of AirPlay2?
That aside, I have run two tests yesterday night, with 2 configurations:
Config 1

Chromecast Audio configured on airconnect so it appears as an AirPlay device. I had to add encryption to the device in the configuration file
AirConnect (cast) running on a wired device
old apple ipad using mConnect, playing from a local media server via wifi of course (so latency from internet based service is eliminated)

So with this configuration, a lot happens via wifi, and I see a latency >2 sec before the track starts playing. I have heard one small hiccup during playback, and some when tracks start.
Config 2)

Web Browser playing from a local media server on a Linux desktop pc. This is able to play to AirPlay endpoints via pulseaudio
AirConnect (upnp this time) running on a wired device
Wired Pi4 running shairport sync (which AirConnect 'bridge' to appear as AirPlay device)

And with this all-wired config, I see roughly the same >2 sec latency before the tracks starts playing. I have heard no hiccups during playback, but I heard some when tracks start.
Of course this is not a scientific test and I did not examine all the AirConnect logs (yet).
Also Config 1 and Config 2 use the two different flavors of AirConnect as I didn't have a device type available either as wireless and wired.
I was expecting the latency to be much lower in config 2, and that was not the case.
The device running AirConnect is not blazing fast, it's an old Celeron j1900. But it should be plenty for this task.
You might want to run the native binaries instead of my docker container so my code can be taken out of the scope. I personally don't believe that containerization has anything to do with the issue, but this would be a sensible test to execute.
And/or maybe you should open an issue on the AirConnect repository. If something emerges and some currently unsupported configuration arguments are needed on my docker image, I will try to add them to the container image.
P.S.: Maybe this page can help understanding the issue.


updated VimLab

add run line, run selection, run file, clear screen, clear all, add breakpoint

I've recently been very occupied with changes in real life. I am going to work on this soon and integrate it.


docs(anchor): Upgrade the use case of anchor component to Composi…

…tion API

commit message写错了，不好意思


Require authentication for all money-costing API endpoints

Require authentication for all money-costing API endpoints
Support JWT and API key auth in the API
Fixes https://github.com/JSv4/Delphic/issues/37#issuecomment-1537071426

Thanks for the contribution! I will review. Hadn't thought anyone was going to chip in here :-). I have a number of fixes on my end as well, but not sure whether they'll be able to be contributed back or not. Appreciate the assist in the meantime.


[bug]: Snake does not collide with borders

Game over message should be shown if snake collides with borders

@devsargam assign this issue to me I can fix it

@Ananmayd it's not a bug. It is how this game is designed


[feature request] blacklist

would it be possible to have a blacklist key to disable certain sources for specific filetypes instead of specifying every ft to which a source should apply? or is there currently any convenient method to achieve that?
i.e. ncm2#override_source('tmux-complete', { 'blacklist' : [ 'latex' ] })
thanks

Kind of duplicated  #3
I'll increase the priority of this feature.


Fix the type annotation of GroupedMetadata.__iter__

Our README says that GroupedMetadata  should be handled by iterating over the object and treating the results as if they had been "unpacked" in the Annotated type.  However, the docstring is specific to BaseMetadata, as is the type annotation:
https://github.com/annotated-types/annotated-types/blob/99dbac8103ec938ffc1abd779f2f4316bf5e73e7/annotated_types/__init__.py#L154-L158
https://github.com/annotated-types/annotated-types/blob/99dbac8103ec938ffc1abd779f2f4316bf5e73e7/annotated_types/__init__.py#L188-L189
The README is correct here, since we want to match typing.Unpack, so we should update the docstring to describe it as 'a grouping of multiple objects, like typing.Unpack', and annotate the iterable as containing object.
(originally identified in this downstream issue: https://github.com/HypothesisWorks/hypothesis/pull/3986#issuecomment-2108238957)

I'm gonna work with this issue.

I'm going to be working on this issue.


Consider sampling without replacement

That way we wouldn't have to recompute the change in loss for all reference points for compute_exactly

Bumping this ^^ as per discussion on another project, this is a good idea


"Fullscreen" button does not work on Safari for Mac

When clicking the fullscreen button, the editor completely disappears if you are using Safari on MacOS.
Some things to note:

The newsletter demo does not have this issue.
This issue only appears to occur in Safari.
The source of this issue appears to be initialization of the Panels in src/panels/index.js

pn.getPanels().reset(

The call above forces an additional render pass, which causes duplicate event handlers to get assigned to all of the buttons (not just the fullscreen button).  The other major browsers don't seem to have an issue with requestFullScreen getting called on an element that is not in the DOM, however Safari blows up when this happens.

If you "skip" the first execution of the "run" function in Fullscreen.js, you will notice that Safari behaves fine, leading me to assume that the issue is with attempting to put an element that is no longer in the DOM as a fullscreen element.

Closing as seems to be already fixed


missmatch to dockerhub

Most probably you are already working on it and I am just too early/impatient... :smile: But the image on dockerhub does not seem to correspond to the current state of this repo. On the dockerhub image the entrypoint file is called docker-entrypoint.sh and is different to the entrypoint.sh in this rep.

Yeah we did not get to update the image yet. I'll work on it right now though ^^

There you go - image updated :D


Refactor utils.py

This is a multi-layer issue that can be broken up into sub-tasks:
First, we can check for utilities that are no longer used.
Then, we can add comments about the functionality and use cases of remaining utilities.
It may make more sense to move some utilities out to new files
(Like creating a new "scoring_utils.py", or a "csv_utils.py")

A few new utility files have been created:
role_utils, graph_utils, and csv_utils
Feel free to suggest other categories or organization, an example change has also been made to views.py to include an improved permission checking function "return_roles" in commit 6093e33


We need Version 2.0.0 aar

Can you provide Version 2.0.0 Android Archive ? Thanks

Should be on jitpack, or you can build it yourself using a git tag


Multi camera not working and not showing

Hello, what device are you using ? Android / iOS ?
Thanks !

@istornz Android

@user97116 Thanks for your answer 👍
What is your phone model & Android version ?
Thanks in advance,

@istornz Check this in this showing and working multi camera fine here https://github.com/Kurun-pan/android-multi-camera

Hello @kyrill-bo Multi camera are not supported on all device... Can you can check what isMultiCamSupported() method return ?
Thanks 👍
Hello @user97116, this repository use Camera2 instead of CameraX which is used on Camerawesome.

@kyrill-bo Yeah, BeReal do not display both camera previews... Camerawesome need to display 2 previews at once so we need to use multi cam feature.


Add flags to control options in create-svelte

Describe the problem
I would like to add a reproduction generator in storybook for sveltekit + storybook projects, which requires me to provide a command to run that will bootstrap a sveltekit project.  Currently, it seems there's no way to run create svelte without following all of the prompts interactively.
Describe the proposed solution
I'd like to add command-line flags like --template, --types=none, and --eslint=false which, if provided, skip the prompts for those questions and allow an "unattended" bootstrap of a sveltekit project.
This could be done with commander, or optionator, or whatever other tool y'all prefer.
Alternatives considered
No response
Importance
i cannot use SvelteKit without it
Additional Information
No response

This has come up a number of times and isn't something we're interested in adding for the reasons outlined in https://github.com/sveltejs/kit/pull/6117#issuecomment-1221323822

OK, thanks for the quick response, even though it's disappointing.


How do I SKIP the "Learn Mixed Reality" tutorial?

Every time I update my nVidia Drivers, I must first uninstall WMR so that nVidia Control Panel won't act crazy and crash.  Once WMR is removed, nVidia Surround will work correctly and I can setup my 3 monitors.  Then I can reinstall WMR and everything works.
How do I SKIP the "Learn Mixed Reality" tutorial??????  It is a pain to have to do that every time I update my graphics drivers.  And I am keeping them up to date.. hoping there will be a fix for this problem someday..

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

ID: 49b81a24-ba56-d13e-f31f-b5df1b065112
Version Independent ID: 6a64872c-32a5-1a72-914c-cc63dce662bd
Content: Learn Mixed Reality - Enthusiast Guide
Content Source: enthusiast-guide/learn-mixed-reality.md
Product: mixed-reality
Technology: enthusiast-guide
GitHub Login: @hferrone
Microsoft Alias: v-hferrone

@tesych @tmlyon Any ideas?

Hi @Snacko, this isn't functionality that we currently support.


Use Rmd files as module executables

This might be an appealing feature to have for those who work with Rmd files a lot: we should allow module executable scripts to be loaded from Rmd files. I do not use Rmd files so I'd need experts eyes on this one, but I suppose something like this (also discussed here but I cannot seem to find it easily in rmarkdown 1.7) can be used?

@gaow Does knitr::purl do what you need?
https://www.rdocumentation.org/packages/knitr/versions/1.19/topics/knit

@jdblischak You beat me to it:knitr::purl("myanalysis.Rmd").

Great that should do it. Thanks @jdblischak and @pcarbo


Docs are in dire need of update

The documentation, in particular the one in Turing.jl itself, is in dire need of update given the amount of features and improvements we've made over the past year. In particular, the tutorials have lots and lots room for improvement.
A few things that come to mind immediately are the foollowing.
User-facing side:

[ ] Turing.predict for predicting based on a given chain.
[ ] DynamicPPL.generated_quantities, similar to Stan's generated-block, which allows you to, effectively, capture the return-values of the model (i.e. the stuff in return ...) conditioned on a chain.
[ ] condition and decondition. There are now two ways to indicate whether a variable is to be considered an observation: passing the variable as an argument (the "old" way), or using condition / | (the "new" way). The latter has is, arguably, more intuitive, in addition to being much easier to work with programmatically.
[ ] @submodel. A macro that allows you to use models within models. Makes it very easy to write modular models.
[ ] logprior, loglikelihood, and logjoint. Easy-to-use methods for evaluating the model in different ways.

Developer-side:

[ ] Implementation of the LogDensityProblems.jl interface for a @model.
[ ] DynamicPPL.TestUtils. This is a sub-module of DynamicPPL that can be quite useful if one is developing features for Turing.

We will add more to the list as we go on, but for now this is a good starting point.

Hi there. I'm really interested in helping to improve the documentation. I pretty much reach for Turing as my first (and usually only) line for Bayesian inference.  I even occasionally get some time I could imagine doing the work :sweat_smile:
In terms of topics I really like the list so far. I can't remember, are there macros that allow you to tell the model to treat something like an observation? Something like:
foo = myfunction(my_observations)
foo ~ MyDistribution(my_parameter)

that will currently (I think) replace foo with draws from MyDistribution rather than conditioning the model on the transformed observation.

I can't remember, are there macros that allow you to tell the model to treat something like an observation? Something like:

I've probably made some at some point, which is maybe where you've come across it. I'll see if I can dig it out. But that is not "officially" supported so I don't think that should go in the docs for now :confused:

Hi @torfjelde, let me try to get just the basics down first :-) which repo has the docs for the website turing.ml ? It looks like it's the Turing.jl repo, but I want to make sure.
And then, how does that get built into the website? And what's a good workflow for "testing" the docs? If I wanted to write text, or add sections, and then build and check it on my local Linux workstation (Debian) what do I need to install, and how do I make it happen?
Thanks.

The source of the docs are found here: https://github.com/TuringLang/turinglang.github.io. You can find instructions on how to get it up and running locally in the README:) Let me know if something isn't clear!
And then the library docs, i.e. everything under https://turinglang.org/library/ is found in the corresponding package.

Haven't forgotten this project! Though I'm not excited about installing Jekyll and such on my desktop machine, I'm still up for working on some of the documentation. I've been working on writing some other stuff, and just got to the point where I wanted to USE TURING again, so now it's fresh in my mind.
Some other thoughts: There's not an easy way to get from the turing documentation website to a place where you can find out all the different sampler algorithms that are available, what the constructors are for them, and a little about how they work.
I've got a problem which isn't playing nice with autodiff and I decided to try using alternative samplers to those that require derivatives, and it was frustrating to try to pick an algorithm and figure out what arguments were required. For example MH() is basically never going to work in reality because proposal from the prior is very rarely going to be a good proposal. What you want is diffusive MH which I guess at some point was called RWMH() but that no longer exists? Anyway, that whole ball of wax could use some attention.

Some other thoughts I've had:

How do you get a list of model variables? How can you determine if a variable is discrete or continuous?
How does @addlogprob! interact with models that use condition/decondition? I guess we could use priors for things that are intended to be data, but then condition on them having a particular value? This is actually a bigger ball of wax than just addlogprob!
How does someone write a new sampler?
Is there a system for Tempering? I'd like to be able to run in parallel two separate chains for two different but related models, and have them occasionally try to swap states between them.
We need more examples of how to work with MCMCChains objects, extracting certain sub-variables, extracting only certain samples, is there a way to sample randomly from a chain to get a single "row"? like sample(mychain,1)?
In the tutorials, pointers to good diagnostic plots and diagnostic stats packages etc. For example maybe ArviZ? or something else, some simple examples of how to use them.
Possibly break up the documentation into sections relevant to the 4 types of documentation as described here: https://www.writethedocs.org/videos/eu/2017/the-four-kinds-of-documentation-and-why-you-need-to-understand-what-they-are-daniele-procida/ Right now we have along the top of the website: "Get Started", "Library API", "Tutorials". Then if you click the main headings are "Using turing" "For Developers" "Tutorials" and "Contributing".

I'd like to see...
Get Started (a goal oriented how-to guide to installing turing, writing a simple model, sampling from the model, plotting results from the sample)
Learning oriented tutorials: A big list of examples, we've got this pretty much
Understanding Oriented Discussion: Discuss how Turing relates to some of its related packages, DynamicPPL, AdvancedHMC, AdvancedMH, MCMCChains, Distributions, and what functionality comes from what pieces of this puzzle. How to extend things, like writing your own sampler, writing your own specialized Distribution, writing your own specialized diagnostics for Chains, writing plot routines that take a chain... Also, what is a Turing model? What "fields" does it have and what would you legitimately do with them (for example suppose you wanted to write a "pretty printer" for a model?)
I realize this is more than just "let's shove some new material into the current documentation structure" but I do think it's what's needed to make hacking with Turing itself more accessible outside the core developer team. If I knew more about this stuff for example I probably would be experimenting with new sampling methods, such as tempering, and piecewise deterministic processes.


abnormal cell cycle phase transition annotation drop

around 2May
abnormal cell cycle phase transition dropped from 146 to 116
I suspect it was dues to the removal of some relations between cell cycle checkpoints and the regulation of phases. I need to look what is missing.

This looks like yet another knock-on effect of GO deciding that regulates is no longer transitive over part_of. I can manually assert links if you're sure that "abnormal regulation of X phase transition" is always a type of "abnormal X phase transition".

Yes it is. I suspect some of these non regulatory parents should not really exist in GO. This area still needs a clean-up.


Revised schematic figure

Following the comments I received on the paper draft, I came up with a slightly revised version of the overview figure.

It makes much more sense now. Good idea, thanks to the reviewers for susggesting a change.
This will fit better on a slide too.
Maybe the legend could be a large font though? We're also missing an arrow between horizontal regridding and Missval Masking.

Maybe the output box should mention also provenance?

@ledm & @jhardenberg thanks for your suggestions, see below the revised version:

Looks great, nice work @mattiarighi!

Note that the figure above is slighly inaccurate, because actually ESMValCore does more than the figure suggests: it also records the provenance after the diagnostic has run. Maybe it would be better to just specify the diagnostic script as an input to ESMValCore, just like the recipe, or indiate this in some other way.

I've just realized that I pushed the new figure in version2_development by mistake, so this PR is pretty useless now :sob:
@bouweandela, what about adding an arrow connecting the big core box with the output (maybe dashed or something?)

I'm not sure, it would be good to somehow show that ESMValCore is the tool that runs the diagnostics, so preprocessed data comes out of esmvalcore and goes to the diagnostic and plot data comes out of the diagnostic and goes back to esmvalcore, which then adds the provenance. Also, it would be nice if you could see from the figure that there can be more than one diagnostic script..


Add note about Option<Vec<_>> to README.md

This note sums up the result of the discussion in #2.

The README.md isn't actually included as crate documentation for this crate, but this is a great first step. Thanks!

Actually reworded a bit, to make it clearer that one should really just not use it for now.


Mono/C#: Make 'GD.Print' and its variants fallback to 'ToString()'

Up until now, 'GD.Print' would convert parameters first to
Variant and only then to String. This meant parameters that cannot be
converted to Variant would be printed as "Null".
This commit makes 'GD.Print' fallback to 'System.Object.ToString()'
if the parameter could not be converted to Variant.
The same applies to all 'GD.Print' variants:
'GD.PrintS', 'GD.PrintT', 'GD.PrintErr' and 'GD.PrintRaw'.
Closes #18969

Thanks!


Port/category theory.limits.kan extension

[x] depends on: #2545

This PR/issue depends on:

leanprover-community/mathlib4#2545
By Dependent Issues (🤖). Happy coding!

This PR/issue depends on:

leanprover-community/mathlib4#2545
By Dependent Issues (🤖). Happy coding!

Thanks :tada:
bors merge


A new note admonition in section 2.1 informs that you must enable xinclude with a command line switch

Adds a note in the reference guide for processing modular DocBook files.
I hope that there are no problems with whitespace which makes comparison difficult. Otherwise give me a hint.
Greetings, Frank

The whitespace looks fine, thanks.
I'm confused about the note though. The 10-xinclude.xsl transform preprocessing step is supposed to expand XIncludes. It does so with the sinclude extension function. Can you describe the circumstance when you needed to use the Xerces implementation (which is what the xi:on option enables).
If your XIncludes are simple, using the parser flag might be marginally more efficient, but it supports such a narrow range of fragment identifiers that I've mostly abandoned it.

That is a misunderstanding. It was never about Xerces. I was convinced that no xinclude processing takes place without the -xi switch. As described in Issue #430, i had noticed with a certain stylesheet that xinclude did not take place without this switch. I had assumed that this was always the case.
However, I have now checked this on a very simple case and found that xinclude was correct processed without the switch. I have to investigate. Either I was simply mistaken, or there was something special about the customized stylesheet.
In any case, I withdraw this pull request because I was working on the wrong assumptions.


C3 Js chart not loading when we pass bindto and div id dynamically from angular 2

Hi,
I'm trying to create c3js chart component in angular 2 but when we will pass the bindto and div id dynamically from angular 2 the chart is not loading.
this my ts file code,
import {Component, OnInit,Input} from '@angular/core';
declare var c3:any;
@Component({
selector: 'chart-component',
template: <h1>{{chartId}}</h1> 	<div [id] = {{chartId}} class="c3"> </div>
})
export class ChartComponent implements OnInit  {
constructor(){ }

@Input('chartType') chartType:string;
@Input('chartId') chartId:Object;
@Input('chartData') chartData:any[];

ngOnInit() {
	this.chartId = Object("chart1");
	let chart = c3.generate({
		 bindto: '#'+this.chartId,
	    data: {

	       /* columns: [
	            ['Online', 98],
	            ['offline', 2],
	        ],*/
	        json:this.chartData,
	        type: this.chartType,
	    },
	    legend: {
			  show: true
			}
	});

}

}
from html calling the component
<chart-component chartType="bar"  chartId="chart1" [chartData]="chartData">
please some one help me out for this issue.
Thanks,
Arun S

Plz, provide some online code bin(jsbin, jsfiddle, etc) for check.

The main problem is id="chart1" is not initialized yet.... if you put it statically it will work or use another way to try like class selector
like this way :
1- Add class and try to select it by class
{{chartId}}
2- bind to class:
bindto: '.chart',
and it will work ....
FYI: to use c3 you have to  downgrading from  D3.js v4 (4.1.1) to v3 (3.5.17).

Or Try to use it into
ngAfterViewInit(){  }

Yes I have used ngAfterviewInit(){} and now its working ..Thanks guys for your response.


let subresource and writablesubresource handle null value more gracefully

Fixes https://github.com/Azure/autorest.csharp/issues/2220
Contributing to the Azure SDK
Please see our CONTRIBUTING.md if you are not familiar with contributing to this repository or have questions.
For specific information about pull request etiquette and best practices, see this section.

API change check
API changes are not detected in this pull request.


Error information when catch

Is it possible to log the error in the catch to see where is the source of the failed internet connection?
In my case, it happens something really weird. It seems to enter both the .then and the .catch methods. But actually I'm having an internet connection (verified).
Here is the code:
var onlineCheck = function(timeout_, retires_, callback) {
    internetAvailable({
        // Provide maximum execution time for the verification
        timeout: timeout_,
        // If it tries 5 times and it fails, then it will throw no internet
        retries: retires_
    }).then(() => {
        console.log("INTERNET AVAILABLE");
        callback();
    }).catch(() => {
        console.log("NO INTERNET");
    });
}

function call from app.js:
InternetAv.onlineCheck(5000, 30, InternetAv.startTunnel());

I recieve both messages in the console: INTERNET AVAILABLE and NO INTERNET.
That's why I would like to know if there is a way to log more information when catching.
Thank you!

https://j-freeslotonline.blogspot.com/?m=1


[Event Request] codeunit 442 "Sales-Post Prepayments" - InitInvoiceRoundingLine

We need to be able to exclude certain (sales / purchase /...) lines from the payment discount calculation. E.g. freight charges, some specific items (used for packaging / returnables / ...), account lines of type 'warrant' / guarantee, ... should NOT be included. These lines will be marked with a specific VAT Identifier (E.g. G3* instead of G3) and/or specific VAT Product Posting Group.
However, in the entire BC calculation, payment discount % / VAT Base Discount % is a value on the header which is applied to all lines, making it very hard to exclude the lines from receiving the discounted / lowered VAT Base amount. Therefore, we'd like to get certain events to set the percentage fields to 0 for specific sales lines.
As-is
 procedure InitInvoiceRoundingLine(SalesHeader: Record "Sales Header"; TotalAmount: Decimal; var SalesLine: Record "Sales Line"): Boolean
    var
        Currency: Record Currency;
        InvoiceRoundingAmount: Decimal;
    begin
        Currency.Initialize(SalesHeader."Currency Code");
        Currency.TestField("Invoice Rounding Precision");
        InvoiceRoundingAmount :=
          -Round(
            TotalAmount -
            Round(
              TotalAmount,
              Currency."Invoice Rounding Precision",
              Currency.InvoiceRoundingDirection()),
            Currency."Amount Rounding Precision");

        if InvoiceRoundingAmount = 0 then
            exit(false);

        with SalesLine do begin
            SetHideValidationDialog(true);
            "Document Type" := SalesHeader."Document Type";
            "Document No." := SalesHeader."No.";
            "System-Created Entry" := true;
            Type := Type::"G/L Account";
            Validate("No.", GetInvRoundingAccNo(SalesHeader."Customer Posting Group"));
            Validate(Quantity, 1);
            if SalesHeader."Prices Including VAT" then
                Validate("Unit Price", InvoiceRoundingAmount)
            else
                Validate(
                  "Unit Price",
                  Round(
                    InvoiceRoundingAmount /
                    (1 + (1 - SalesHeader."VAT Base Discount %" / 100) * "VAT %" / 100),
                    Currency."Amount Rounding Precision")); // Move SalesHeader."VAT Base Discount %" to a separate function
            "Prepayment Amount" := "Unit Price";
            Validate("Amount Including VAT", InvoiceRoundingAmount);
        end;
        exit(true);
    end;

To-be
The code using the SalesHeader."VAT Base Discount %" should be move to a separate function ...
procedure InitInvoiceRoundingLine(SalesHeader: Record "Sales Header"; TotalAmount: Decimal; var SalesLine: Record "Sales Line"): Boolean
    var
        Currency: Record Currency;
        InvoiceRoundingAmount: Decimal;
    begin
        Currency.Initialize(SalesHeader."Currency Code");
        Currency.TestField("Invoice Rounding Precision");
        InvoiceRoundingAmount :=
          -Round(
            TotalAmount -
            Round(
              TotalAmount,
              Currency."Invoice Rounding Precision",
              Currency.InvoiceRoundingDirection()),
            Currency."Amount Rounding Precision");

        if InvoiceRoundingAmount = 0 then
            exit(false);

        with SalesLine do begin
            SetHideValidationDialog(true);
            "Document Type" := SalesHeader."Document Type";
            "Document No." := SalesHeader."No.";
            "System-Created Entry" := true;
            Type := Type::"G/L Account";
            Validate("No.", GetInvRoundingAccNo(SalesHeader."Customer Posting Group"));
            Validate(Quantity, 1);
            if SalesHeader."Prices Including VAT" then
                Validate("Unit Price", InvoiceRoundingAmount)
            else
                Validate(
                  "Unit Price",
                  Round(
                    InvoiceRoundingAmount /
                    (1 + (1 - SalesLine.GetVATBaseDiscountPercentage(SalesHeader) / 100) * "VAT %" / 100),
                    Currency."Amount Rounding Precision")); // Moved SalesHeader."VAT Base Discount %" to a separate function
            "Prepayment Amount" := "Unit Price";
            Validate("Amount Including VAT", InvoiceRoundingAmount);
        end;
        exit(true);
    end;

Moving the SalesHeader."VAT Base Discount %" to a separate function on table "Sales Line", would allow us to overrule the value based on a SalesLine / Rec condition.
local procedure GetVATBaseDiscountPercentage(SalesHeader: record "Sales Header") VATBaseDiscountPercentage: decimal
    var
        IsHandled: Boolean;
    begin
        OnBeforeGetVATBaseDiscountPercentage(Rec, SalesHeader, VATBaseDiscountPercentage, IsHandled);
        if IsHandled then
            exit;

        VATBaseDiscountPercentage := SalesHeader."VAT Base Discount %";
    end;

     [IntegrationEvent(false, false)]
    local procedure OnBeforeGetVATBaseDiscountPercentage(Rec: Record "Sales Line"; SalesHeader: record "Sales Header"; var VATBaseDiscountPercentage: decimal; var IsHandled: Boolean)
    begin
    end;

PS: Please provide a similar GetVATBaseDiscountPercentage function on Purchase Header too.
@ZepposBE

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 52774.


ImportError: MagickWand shared library not found.

Traceback (most recent call last):
  File "/Users/pidugu/Documents/OPENCV/PDFtoTXT-master/CloudOCR.py", line 4, in <module>
    from wand.image import Image
  File "/usr/local/lib/python2.7/site-packages/wand/image.py", line 20, in <module>
    from .api import MagickPixelPacket, libc, libmagick, library
  File "/usr/local/lib/python2.7/site-packages/wand/api.py", line 210, in <module>
    'Try to install:\n  ' + msg)

ImportError: MagickWand shared library not found.
You probably had not installed ImageMagick library.
Try to install:
brew install freetype imagemagick
Even tried installing imagemagick and it always promps me that its already installed and up to date
$ brew install freetype imagemagick
Updating Homebrew...
Warning: freetype 2.9.1 is already installed and up-to-date
To reinstall 2.9.1, run `brew reinstall freetype`
Warning: imagemagick 7.0.8-14 is already installed and up-to-date
To reinstall 7.0.8-14, run `brew reinstall imagemagick`

Just out of curiosity, after you installed the packages did you do a pip install -r of the requirements.txt?

Just out of curiosity, after you installed the packages did you do a pip install -r of the requirements.txt?

Yeah i did that


metrics: Sample metrics periodically and dump samples as part of sysdump

This refactors the disabling of metrics to happen at the Collect() time and keeps all registered collectors to the side.
All registered collectors are then sampled periodically which gives us a glimpse to the past two hours:
root@kind-worker:/home/cilium# cilium-dbg shell -- metrics -s statedb_table_rev
Metric                          Labels                     5min     30min   60min   120min
cilium_statedb_table_revision   table=backends             31       0       0       0
cilium_statedb_table_revision   table=ciliumenvoyconfigs   0        0       0       0
cilium_statedb_table_revision   table=devices              14       0       0       0
cilium_statedb_table_revision   table=dynamic-features     0        0       0       0
cilium_statedb_table_revision   table=frontends            90       0       0       0
cilium_statedb_table_revision   table=health               1.028k   0       0       0
cilium_statedb_table_revision   table=ipsets               0        0       0       0
cilium_statedb_table_revision   table=l2-announce          0        0       0       0
cilium_statedb_table_revision   table=mtu                  2        0       0       0
cilium_statedb_table_revision   table=node-addresses       14       0       0       0
cilium_statedb_table_revision   table=routes               49       0       0       0
cilium_statedb_table_revision   table=services             12       0       0       0
cilium_statedb_table_revision   table=sysctl               68       0       0       0

The sampling is super conservative. The interval is set to 5 minutes, the collectors are invoked sequentially rather than in parallel as is usual with prometheus, and the number of samples per metric is capped to 24 (giving us 2 hour timespan). Also the number of metrics (e.g. "name" + "labels") that we sample is capped to 2000, which limits the maximum memory usage to around 1MB (TestSamplerMaxMemoryUsage).
Since the metrics script command now implements same and more as the metrics API endpoint and "cilium-dbg metrics list", this PR removes the metrics API endpoint and reimplements "cilium-dbg metrics list" as a wrapper for the shell command (more about the cilium shell: https://github.com/cilium/cilium/pull/35154). All the same functionality is retained (though now it shows all metrics and not just enabled ones):
root@kind-worker:/home/cilium# cilium-dbg metrics list --match-pattern cilium_version
Metric           Labels                                                            Value
cilium_version   arch="linux/amd64" revision="3c6d822f9cfc" version="1.17.0-dev"   0.000000

root@kind-control-plane:/home/cilium# cilium-dbg metrics list -o json -p go_threads
[
  {
    "name": "go_threads",
    "value": 40
  }
]

Finally, the pièce de résistance, the metrics/plot command to render the sampled metrics:

And there's also metrics/html which generates a static HTML page with the samples:
$ kubectl exec  -it -n kube-system ds/cilium -- cilium-dbg shell -- metrics/html > /tmp/out.html

You can find a demo from https://joamaki.github.io/demos/metrics.html
This html file is included in the sysdump in cmd/cilium-dbg-shell----metrics-html.html

/test

/test

/test


[BUG] An exception occured while running Bloxstrap

Acknowledgement of preliminary instructions

[X] I have read the preliminary instructions, and I am certain that my problem has not already been addressed.

What problem did you encounter?
Bloxstrap_20231012T230305Z.log

A problem with the fonts/TwemojiMozilla.ttf because it is being used by another process.

Also Bloxstrap Ain't Launching

Known issue, make sure Roblox isn't running in the background first and then launch.


refactor store to extract interfaces

Closing this as I am going to provide an equivalent PR on top of the (more current) appraisal branch instead.


Back to swift 1.1

This is a minimal set of changes to get current master to compile on official XCode 6.1.1 and Swift 1.1.
Fixes #31 and as described in the issue report I suggest that Swift 1.2 support is moved to a separate branch and master branch works against official XCode version.
Not tested extensively, but logic tests pass on a simulator and a real project that was previously using 1.0.0.beta2 compiles and works against this branch both in a simulator and a device. (compiled with XCode Version 6.1.1 (6A2008a) and Swift 1.1.)

Looks good, thanks! :+1:
master is now compatible with Swift 1.1 again. I've created a swift1.2 branch that I will keep up to date with the coming beta's.


Encountered a problem while running

When I configured the environment, then an error occurred.
"File './test/scene_obs_test_ir.py', line 372, in
copyGridToArrayInt(target=sl_arf, source=sl_flags)
NameError: name 'copyGridToArrayInt' is not defined."
How can I resolve this problem?

this may be relevant: https://github.com/RachelCmy/den2vel/issues/2#issuecomment-903137006

Thank you for your reply, but after I followed the above steps again, the error also occurred.


Use Markdown for readmes

Summary

All README and README.txt renamed (git mv) to README.md.
Changed format of headers to #, ## and ###.
Code sections fenced with ```
Fragments of code in sentences marked with `
Changed format of lists.
Simplified indentation.
Replaced NOTE: with **Note**:, same with NOTES:, WARNING: and similar.
Replaced quotes with italics and * with emphasis.
Changed titles from README (most of them was like this) to something more meaningful.
Added some tables.
Removed some typos and inconsistencies.
Rewrapped at column 80.

Impact

Markdown improves readability. Compare this https://github.com/apache/incubator-nuttx-apps/blob/master/nshlib/README.txt to this https://github.com/w8jcik/incubator-nuttx-apps/blob/master/nshlib/README.md
Use standard text format for READMEs. Most of the developers are more familiar with Markdown than the previous format, so it is easier to adapt. Markdown is also simpler.
It is parsable. Previous format wasn't.
Part of a bigger effort on improving accessibility of NuttX documentation.

Testing

You can clone this fork and look at the readmes in your editor.  For example:

git clone https://github.com/w8jcik/incubator-nuttx-apps.git
Open folder in VSCode.
Open terminal and run find . -name README.md.
Ctrl+Click on list of files in the terminal to open them.
Install bierner.markdown-preview-github-styles extension to see a preview on the side.
Without extension some syntax highlighting should be already present in files.

You can see the files in GitHub

netutils/README.md
netutils/discover/README.md
netutils/ftpc/README.md
netutils/telnetd/README.md
README.md
wireless/bluetooth/btsak/README.md
wireless/ieee802154/i8sak/README.md
wireless/wapi/README.md
examples/README.md
examples/tcpblaster/README.md
examples/flash_test/README.md
examples/camera/README.md
examples/json/README.md
examples/bastest/README.md
examples/flowc/README.md
examples/pdcurses/README.md
examples/telnetd/README.md
modbus/README.md
fsutils/inifile/README.md
gpsutils/minmea/README.md
gpsutils/README.md
testing/fstest/README.md
testing/smart/README.md
testing/README.md
testing/nxffs/README.md
testing/smart_test/README.md
testing/cxxtest/README.md
system/termcurses/README.md
system/nsh/README.md
system/cfgdata/README.md
system/cdcacm/README.md
system/i2c/README.md
system/usbmsc/README.md
system/psmq/README.md
system/zmodem/README.md
system/spi/README.md
system/nxplayer/README.md
system/flash_eraseall/README.md
system/composite/README.md
tools/README.md
industry/abnt_codi/README.md
interpreters/README.md
interpreters/bas/README.md
interpreters/ficl/README.md
graphics/nxwidgets/README.md
graphics/nxwidgets/Doxygen/README.md
graphics/nxwidgets/UnitTests/README.md
graphics/tiff/README.md
graphics/twm4nx/README.md
graphics/nxwm/README.md
graphics/nxwm/Doxygen/README.md
graphics/pdcurs34/README.md
graphics/pdcurs34/pdcurses/README.md
graphics/lvgl/README.md
nshlib/README.md

Questions

Is wrap at column 80 fine?
What should be format of headers. Is it Other Network Applications or Other network applications. Previously it was not completely consistent. I found the second form more readable and I would use it, but maybe I am not good with English.
Can we split group readmes, like this one https://github.com/w8jcik/incubator-nuttx-apps/blob/master/examples/README.md into smaller readmes in each subfolder?
Do you see some other style violations?

Notes

Yes I will squash it when done.
The GitHub review seems to be a bit broken. Despite me using git mv to rename the filesfind . -name README -exec git mv "{}" "{}.md" \;
find . -name README.txt -execdir sh -c 'git mv $(printf "%s\n" "${0%.*}").txt $(printf "%s\n" "${0%.*}").md' {} ';'

and commiting afterwards, GitHub shows that some files were deleted and created. We could do separate MR just for renaming. Or maybe it is just GitHub that shows it wrongly. It need to be done correctly to preserve history.
The review includes 100 change files. Maybe we could split the change into few smaller PRs. For example we could start with examples folder and review it first.
I will do one more check if everything is consintent and nothing is lost, before merging, but for now I would like to see if you are fine with this change and is it going in the right direction. Also we still didn't have a vote on it.

great work! I will have a look at the changes

Regarding your questions:

I think 80 column is OK and is consistent with C style
I'm also not a native english speaker but I believe capitalizations in english should be in the first form
Splitting big READMEs: I think it is useful to have a listing with brief description of all apps available. However it would seem that for some apps there is indeed a more detailed description which would be better to maintain in its own directory. Anyway, if we can move forward with the new doc system, I'm imagine this list could be built by picking up individual READMEs so no need for a manual list of apps.

These failed macOS builds don't seem to be valid. I didn't change any code, so it must be a problem with the macOS runners or CI script.

This is a big PR, difficult to review. To make it easier, I created another PR here https://github.com/apache/incubator-nuttx-apps/pull/339. It is limited to one directory.

I have one more idea. If some maintainer could create a branch for me called for example md-readmes, from master, with this executed:
find . -name README -exec git mv "{}" "{}.md" \;
find . -name README.txt -execdir sh -c 'git mv $(printf "%s\n" "${0%.*}").txt $(printf "%s\n" "${0%.*}").md' {} ';'

then I could do PR to it, and maybe GitHub would show valid diff.

@w8jcik you just need reorg the change into two patch:
1.Rename all README to README.md
2.Modify README.md per Markdown style
We can select and review the second patch from 'Commits' tab.

We can select and review the second patch carefully from 'Commits' tab.

Great, this one works, thank you :)
Every time I am passing through this files, I find some small inconsistencies. I think I will need to review them once again. For now I would like to know if you guys don't have any major concerns and should I proceed, or maybe we don't need Markdown.
Also how should we tackle review. Is the idea of splitting into smaller PRs a good idea, or should I close the other PR that I created for this purpose?

I reviewed everything one more time and fixed some consistency issues.

I can only point to two cases where it would probably be nice to convert the tables to actual tables in abnt_codi and nshlib READMEs.

@v01d They are replaced with tables now.
I consider this PR done and ready to be merged.

Looks great, @w8jcik ! @v01d can you merge this change?

@xiaoxiang781216 I don't believe he can, but I will.  @w8jcik this work is really appreciated.


Xiaomi Aqara: Add new cube model (sensor_cube.aqgl01)

🎉

I think some more changes are required to get the new cube (sensor_cube.aqgl01) working. This change has made the cube discoverable by Homeassistant, but no 'events' are seen by Homeassistant (i.e. there is no data in 'last action', and I am unable to trigger automations with the cube).
There is some discussion about this issue over here: (https://community.home-assistant.io/t/aqara-cube/54010/2)
I have set the logging for the xiaomi_aqara component to 'debug' and the only cube related entries I have seen (over a period of a few days) are battery related (despite intermittently trying to trigger all of its functions; flip90 rotate etc.) - here is excerpt from my log file:

2018-05-26 02:57:44 DEBUG (MainThread) [homeassistant.components.xiaomi_aqara] PUSH >> : {'voltage': 2985}

2018-05-26 15:48:03 DEBUG (MainThread) [homeassistant.components.xiaomi_aqara] PUSH >> : {'voltage': 2975}

Note the 'voltage' value is changing with time, so I believe it is reporting correctly from the device.

An update: I have done a packet capture of the network traffic from the Xiaomi gateway; I can see all of the expected traffic for the motion sensors, door sensors, buttons etc. (plus the occasional 'gateway heartbeat') Example:
Example of a 'Heartbeat' from the Gateway:
{"cmd":"heartbeat","model":"gateway","sid":"redacted","short_id":"0","token":"redacted","data":"{\"ip\":\"<IP_ADDRESS>\"}"}

Example of when a Motion Sensor detects motion:
{"cmd":"report","model":"sensor_motion.aq2","sid":"158d0001e54190","short_id":22614,"data":"{\"status\":\"motion\"}"}

But I do not get any traffic at all when cube events are triggered (although I do see the event in the device's log in the Mi Home App on my Phone).
I suspect that this is an issue in the Gateway firmware (I am running 1.4.1_155.0143 which is apparently the latest version), as cube events are not getting 'broadcast' as part of the 'LUMI Hub Lan Communication Protocol' and are only working 'locally' on the Hub itself.

Think indeed that it is the gateway that does not forward the information. Am now looking at the zigbee2MQTT solution so that the xiaomi gateway is no longer needed.

Will the cube work with alternatives on the gateway such as zigbee2mqtt, zigate and ZHA?

@jedmeng Could you provide some event examples?

@syssi Don't know why they just delete the English version of the protocol, but the Chinese version is still there link.
rotate action:
{
    "cmd":"report",
    "model":"sensor_cube.aqgl01",
    "sid":"158d0000123456",
    "params":[{"cube_status":"rotate"},{"rotate_degree":-90},{"detect_time ":500}]
}

other actions (flip90/flip180/move/tap_twice/shake_air/swing/alert/free_fall):
{
    "cmd":"report",
    "model":"sensor_cube.aqgl01",
    "sid":"158d0000123456",
    "params":[{"cube_status":"flip90"}]
}

Link to english version http://docs.opencloud.aqara.cn/en/development/gateway-LAN-communication/

Hello, what's the changes state? I can see the magic cube in HA, but still no action at all (using latest  xiaomi_aqara.py files)

I can do debugging or testing if that's helpful. Hassbian v71 dev 0 with the Aqara cube and lumi v3

Please keep the discussion in the forum or chat. This PR is merged, and we don't want ongoing discussion in merged PRs.
If you suspect a bug, you're welcome to open an issue in the issue tracker and link to this PR.


Added Rextester to R Interactive Playgrounds

Hacktoberfest notes:

due to volume of submissions, we may not be able to review PRs that do not pass tests and do not have informative titles.
please read our contributing guidelines
be sure to check the output of Travis-CI for linter errors
if this is your first open source contribution, make sure it's not your last!

What does this PR do?
Add Resource(s)
For resources
Description
Rextester provides playgrounds for multiple coding languages including R
Why is this valuable (or not)?

Free
Interactive

How do we know it's really free?
You can freely access the website.
For book lists, is it a book? For course lists, is it a course? etc.
Playground
Checklist:

[X] Not a duplicate
[X] Included author(s) if appropriate
[X] Lists are in alphabetical order
[X] Needed indications added (PDF, access notes, under construction)

@eshellman I have tried putting my edit before and after R-Fiddle, but neither work.

@eshellman I have tried putting my edit before and after R-Fiddle, but neither work.

Heads up, you can check Travis CI manually if you want to see exactly what's wrong! There's no need to go trial-and-error contributions!
- https://travis-ci.com/github/EbookFoundation/free-programming-books/builds/191563619
Currently, it displays:
home/travis/build/EbookFoundation/free-programming-books/free-programming-playgrounds.md
  178:1-179:38  warning  Alphabetical ordering: swap l.179 and l.178  alphabetize-lists  remark-lint

So, this is the correct order:
* [R-Fiddle](http://www.r-fiddle.org)
* [Rextester](https://rextester.com/l/r_online_compiler)

Can you please fix the order of your list!
Meanwhile, don't worry about the build failures, it's not your fault. It seems some commits that had failures were merged is all!


Compose button goes away when navigating away from Home

Describe the bug
On phanpy.social, the "Compose" button on the bottom right corner disappears if you browse away from the Home view.
To Reproduce
Steps to reproduce the behavior:

Log in to phanpy.social
Click on a different view (e.g. Notifications, Search, Mentions...)
The Compose button disappears.

Expected behavior
The Compose button should be visible on all main views. Alternatively, it could be added to the "Shortcuts options".
Desktop (please complete the following information):

OS: Linux Mint 20.3
Browser: Firefox 113.0b9

Should be available on production now.


VS Code window does not (re)initialize on load; dead - regression?

Issue Type: Bug
Sometimes Visual Studio hangs effectively dead in an unitialized zombie state when

switching an existing instance (window) to a different "scope" (folder, workspace)
creating a new empty window
opening a scope in a new window

I am unable to reliably reproduce the problem; the problem occurs very frequently for me when simply doing

load vscode (previous workspace restores fine)
Ctrl+Click on existing folder / workspace entry in File -> Open Recent ...

Very frequently this results in a new window of vscode opening, but this window has been not initialized correctly.
The menu bar in the new window does show up typically, but the menu items do not seem to be wired up (this makes it impossible to click Help -> Report Issue from that instance...)
The new window is also bare, i.e. none of the UI elements initializes - no icon bar on the left, no explorer, no code editor, no terminal - nothing.
In the past, I used to be able to run quite a few windows of vscode in parallel (e.g. "the products", global CI definition, infra-as-code, etc), but this usage pattern is seriously impacted now.
Once the zombie mode is there, it is not possible to launch usable new windows; the existing window continues to work fine, as long as the window does not need to reinitialize with, say, a different workspace.
VS Code version: Code 1.58.2 (c3f126316369cd610563c75b1b1725e0679adfb3, 2021-07-14T22:30:16.440Z)
OS version: Linux x64 5.13.5-200.fc34.x86_64
Restricted Mode: No

System Info

Item
Value

CPUs
Intel(R) Core(TM) i7-7820HQ CPU @ 2.90GHz (8 x 2904)

GPU Status
2d_canvas: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onoop_rasterization: disabled_offopengl: enabled_onrasterization: disabled_softwareskia_renderer: enabled_onvideo_decode: disabled_softwarevulkan: disabled_offwebgl: enabledwebgl2: enabled

Load (avg)
0, 1, 1

Memory (System)
31.31GB (23.86GB free)

Process Argv
--unity-launch --crash-reporter-id 80e0ae97-0bc4-4a76-8337-f435f2ec1554

Screen Reader
no

VM
100%

DESKTOP_SESSION
/usr/share/xsessions/plasmax11

XDG_CURRENT_DESKTOP
KDE

XDG_SESSION_DESKTOP
KDE

XDG_SESSION_TYPE
x11

Extensions (21)

Extension
Author (truncated)
Version

xml
Dot
2.5.1

gitlens
eam
11.6.0

rust-analyzer
mat
0.2.686

vscode-apache
mrm
1.2.0

vscode-docker
ms-
1.15.0

python
ms-
2021.7.1060902895

vscode-pylance
ms-
2021.7.7

jupyter
ms-
2021.8.1054968649

remote-containers
ms-
0.187.1

remote-ssh
ms-
0.65.7

remote-ssh-edit
ms-
0.65.7

remote-wsl
ms-
0.58.2

vscode-remote-extensionpack
ms-
0.21.0

cpptools
ms-
1.5.1

powershell
ms-
2021.6.2

fabric8-analytics
red
0.3.3

vscode-commons
red
0.0.6

vscode-xml
red
0.17.0

vscode-yaml
red
0.22.0

vscode-lldb
vad
1.6.5

debug
web
0.25.1

A/B Experiments
vsliv368:30146709
vsreu685:30147344
python383:30185418
pythonvspyt700cf:30270857
pythonvspyt602:30300191
vspor879:30202332
vspor708:30202333
vspor363:30204092
vswsl492cf:30256860
pythonvspyt639:30300192
pythontb:30283811
vspre833:30321513
pythonptprofiler:30281270
vshan820:30294714
vstes263:30335439
pythondataviewer:30285071
vscus158:30321503
pythonvsuse255:30340121
vscod805:30301674
pythonvspyt200:30340761
vscextlang:30333561
binariesv615:30325510
pythonvssor306:30344512
bridge0708:30335490

I'll try to trim the extensions a bit, in the hope that some largely unused ones cause the problem.

Maybe #129920 is related.

Can you try to reproduce with our nightly insider builds ? You can give our preview releases a try from: https://code.visualstudio.com/insiders/


fix validation error when saving campaigns: IsUndefined validator correctly throwed an error when sending null

the error probably occurred when we changed the IsNullable to IsUndefinable in the api: https://github.com/vivid-planet/comet-brevo-module/pull/32#discussion_r1476001379

You could also consider adding @IsNullable() to the mutation, depending on the use case... Is it possible to set the field to null?

You could also consider adding @IsNullable() to the mutation, depending on the use case... Is it possible to set the field to null?

I hope I have understood you correctly. I have now done it like this: if you send undefined, the previously set value remains. if you send null, the previously set value is removed (for scheduledAt)
couldn't I just use @IsOptional if I support undefined and null?

I hope I have understood you correctly. I have now done it like this: if you send undefined, the previously set value remains. if you send null, the previously set value is removed (for scheduledAt)

Yes, you understood that correctly.

couldn't I just use @IsOptional if I support undefined and null?

Yes. IMO the other two decorators are more descriptive, but that's personal preference.


new tasks

[ ] Node-to-node distance and how to define closest n nodes

[x] Each edge will have two weights for both directions

[ ] Defining weight (weighted average of following two variables)

Fuel consumption variable -> speed -> wind current and wave current and ship draft

[ ] calculating most optimal speed based on current-speed curve (we need formula for curve)

Time variable -> speed and distance

[ ] Depends on speed.

We need a flowchart for this

final function "find resistance(ship specifics, current specifics)"
draft function "find_edge(node1, node2)" -> a function of resistance and distance


Run tests on Demo App

Code CoverageCoverage after merging demo-app-test-coverage into develop will be29.24%
Coverage Report for Changed FilesFileStmtsBranchesFuncsLinesUncovered Lines

Code CoverageCoverage after merging demo-app-test-coverage into develop will be29.24%
Coverage Report for Changed FilesFileStmtsBranchesFuncsLinesUncovered Lines

Code CoverageCoverage after merging demo-app-test-coverage into develop will be29.24%
Coverage Report for Changed FilesFileStmtsBranchesFuncsLinesUncovered Lines

Code CoverageCoverage after merging demo-app-test-coverage into develop will be29.24%
Coverage Report for Changed FilesFileStmtsBranchesFuncsLinesUncovered Lines


feat: add a reader for JSON data

I've been working with a lot of JSON data recently, and since a JSON reader already exists in python, I figured it would be a good addition.
Summary
This PR introduces a JSON reader capable of parsing JSON data and creating documents from top-level arrays or performing a recursive depth-first traversal of the JSON structure.
Features
Default Parsing:

Parses the entire JSON string.
Removes purely structural characters.
Creates a document for each top-level array element.

Recursive Depth-First Traversal:

Provides an alternative parsing method.
Performs a depth-first traversal of the JSON structure.
Yields paths during traversal for more granular control and analysis.

Implementation Details

Added custom error classes for better debugging. Could be expanded on.
Handles both JSON and JSON Lines format
Create documents with traversal_data as metadata

Testing

I did run test with a bunch of different files and inputs to test for edge cases
Added a comprehensive test suite

TO-DO:

Implement JSON streaming to handle large JSON data

Looking forward to any feedback or suggestions! Also happy about anyone testing for more edge cases.

@himself65 Yeah, added one


Add MockableProperty & VerifiableProperty

[x] I have read the CONTRIBUTING.

🔗 Closing issues
This closes #59 , closes #60
📖 Summary
🛠 About Implementation
✅ About Testing
ℹ Other information

Codecov Report

Merging #70 into master will increase coverage by 0.4%.
The diff coverage is 100%.

@@            Coverage Diff            @@
##           master      #70     +/-   ##
=========================================
+ Coverage   97.17%   97.57%   +0.4%
=========================================
  Files          19       21      +2
  Lines         248      289     +41
=========================================
+ Hits          241      282     +41
  Misses          7        7

Impacted Files
Coverage Δ

...urces/MockSwift/Mocks/Verifiables/Verifiable.swift
100% <ø> (ø)

Sources/MockSwift/Mocks/Mockables/Mockable.swift
100% <ø> (ø)

Sources/MockSwift/Mocks/MockGiven.swift
100% <100%> (ø)
:arrow_up:

...ckSwift/Mocks/Verifiables/VerifiableProperty.swift
100% <100%> (ø)

...s/MockSwift/Mocks/Mockables/MockableProperty.swift
100% <100%> (ø)

Sources/MockSwift/Mocks/MockThen.swift
100% <100%> (ø)
:arrow_up:

...urces/MockSwift/Functions/FunctionIdentifier.swift
100% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Dart Sass Deprecation warnings 1.15.2 project with fast-serve

Good afternoon, I've upgraded a large project to 1.15.2 and I am being flooded with Deprecation warnings from Dart Sass due to importing bootstrap v4 scss files.

This is well documented by the BS team in addition to the sass team, but with the SPFx build chain, I cannot find where I can supress these notices. I am in the process of testing bootstrap v5, but with the size of this project, it is taking a while. Is there a way through the webpack.extend.js file to do so? In my gulpfile, I've tried the following, but it has not helped:

According to this thread, the quietDeps flag should supress these notices, but it may not get injected at the correct point in the process. Any guidance is appreciated, and thanks again for a great tool!

Hi,
for fast-serve you can use the below trick inside webpack.extend.js:
const transformConfig = function (initialWebpackConfig) {
  // transform the initial webpack config here, i.e.
  // initialWebpackConfig.plugins.push(new webpack.Plugin()); etc.

  for (const ruleConfig of initialWebpackConfig.module.rules) {
    const sassloader = findSassLoader(ruleConfig);
    if (sassloader) {
      sassloader.options.sassOptions = sassloader.options.sassOptions || {};
      sassloader.options.sassOptions.quietDeps = true;
    }
  }

  return initialWebpackConfig;
}

function findSassLoader(rule) {
  for (const loaderConfig of rule.use) {
    if (typeof loaderConfig === 'object'
      && typeof loaderConfig.loader === 'string'
      && /sass-loader/gi.test(loaderConfig.loader)) {
      return loaderConfig;
    }
  }

  return null;
}

It searches for all sass-loaders in the config (there are two of them) and applies quietDeps.
For SPFx build I haven't found any solution, because sass build step inside SPFx doesn't use webpack and seems you cannot control it through configuration.
But at least you have cleaner output for fast-serve.

@s-KaiNet thanks for the quick response. I've implemented your suggestions above, but I am still getting the deprecation warning on the fast-serve task:

Do I need to make any changes in the config.json?

quiteDeps removes warnings from dependencies only, maybe the error comes from your own source files?

Thanks, I'm importing some of the bootstrap scss files via my webpart's scss file, so perhaps that is why it is not removing the warnings? If so, you can close the issue, I'm working toward getting off bsv4 anyways.

I've created a repro I used here. If you run npm run serve, fast-serve will report only one warning at this line. It reports because quiteDeps doesn't work on your own source files, only on dependencies. If you change quietDeps to false, then there will be a lot of errors from bs4 internal files as well.
You can try this repro and see if you have the same setup. However, I think it's the best what we can do here.

Thanks @s-KaiNet I will compare this project with mine and test it out.


Fix missing NumModelSkins serverside

-- test:
print(WireLib.NumModelSkins'models/props_junk/plasticCrate01a.mdl')

I tried to find steps, but I don't know what triggers it.
I just know the code that is in there would never work (since the function does not exist on server) whereas the one added should.

merged this now because I got a report that someone got an error about this function being missing


DefaultErrorHandler doesn't work with suspend methods

In what version(s) of Spring for Apache Kafka are you seeing this issue?
3.2.4
Describe the bug
Suspend methods don't trigger the default error handler on exception
To Reproduce
I have a bean defined like so
    @Bean
    fun defaultErrorHandler(): DefaultErrorHandler {
        val defaultErrorHandler = DefaultErrorHandler()
        defaultErrorHandler.setBackOffFunction { _, exception ->
            if (exception is HttpRequestTimeoutException) {
                FixedBackOff(2000, FixedBackOff.UNLIMITED_ATTEMPTS)
            } else {
                FixedBackOff(2000, 10)
            }
        }
        return defaultErrorHandler
    }

If I listen like
    @KafkaListener(
        id = "item_updates",
        groupId = "groupid",
        topics = [TOPIC_ITEM_UPDATED],
    )
   suspend fun syncItemListener(message: String) {
                   throw HttpRequestTimeoutException("google.com", 100)
    }

The defaultErrorHandler is not triggered. If I remove the suspend it is triggered
    @KafkaListener(
        id = "item_updates",
        groupId = "groupid",
        topics = [TOPIC_ITEM_UPDATED],
    )
   fun syncItemListener(message: String) {
                   throw HttpRequestTimeoutException("google.com", 100)
    }

Expected behavior
The documentation seems to imply this should work

@igloo12 We will take a look at this issue soon. In the meantime, could you put your code in a runnable sample app and share it with us?

@sobychacko I have push the sample code here. I created two listeners one working one not
https://github.com/igloo12/kafka-suspend/blob/main/src/main/kotlin/com/chasecorp/kafkasuspend/KafkaSuspendApplication.kt

When using suspend functions, the exceptions thrown from those might be wrapped inside a different exception type by the Kotlin coroutine machinery. You don't have that problem in the non-suspend function since it goes through the standard Java exception propagation mechanism, which Spring Kafka detects correctly. Before we dig into this issue, can you try to change your DefaultErorrHandler bean so that it checks for the exception cause? Here is the rough idea.
@Bean
fun defaultErrorHandler(): DefaultErrorHandler {
    val defaultErrorHandler = DefaultErrorHandler()
    defaultErrorHandler.setBackOffFunction { _, exception ->
        val isTimeout = when {
            exception is HttpRequestTimeoutException -> true
            exception.cause is HttpRequestTimeoutException -> true
            else -> false
        }

        if (isTimeout) {
            FixedBackOff(2000, FixedBackOff.UNLIMITED_ATTEMPTS)
        } else {
            FixedBackOff(2000, 10)
        }
    }
    return defaultErrorHandler
}

As you can see, we first try to see if the exception is of type HttpRequestTimeoutException; if not, check the cause of the thrown exception. See if that has any effect on the situation, and let us know. Thanks!

Hi Soby, can you please look at the full example I shared I have a log
message in the default handler and it doesn't trigger so the block is not
running at all.
On Fri, Nov 8, 2024, 6:41 PM Soby Chacko @.***> wrote:

When using suspend functions, the exceptions thrown from those might be
wrapped inside a different exception type by the Kotlin coroutine
machinery. You don't have that problem in the non-suspend function since it
goes through the standard Java exception propagation mechanism, which
Spring Kafka detects correctly. Before we dig into this issue, can you try
to change your DefaultErorrHandler bean so that it checks for the
exception cause? Here is the rough idea.
@Bean
fun defaultErrorHandler(): DefaultErrorHandler {
val defaultErrorHandler = DefaultErrorHandler()
defaultErrorHandler.setBackOffFunction { _, exception ->
val isTimeout = when {
exception is HttpRequestTimeoutException -> true
exception.cause is HttpRequestTimeoutException -> true
else -> false
}
    if (isTimeout) {
        FixedBackOff(2000, FixedBackOff.UNLIMITED_ATTEMPTS)
    } else {
        FixedBackOff(2000, 10)
    }
}
return defaultErrorHandler

}
As you can see, we first try to see if the exception is of type
HttpRequestTimeoutException; if not, check the cause of the thrown
exception. See if that has any effect on the situation, and let us know.
Thanks!
—
Reply to this email directly, view it on GitHub
https://github.com/spring-projects/spring-kafka/issues/3618#issuecomment-2466002165,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAVZZXZJ24LHIQT2H34HMJLZ7VY3ZAVCNFSM6AAAAABRM3MVCGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDINRWGAYDEMJWGU
.
You are receiving this because you were mentioned.Message ID:
@.***>

@sobychacko I did some poking. I think the error is getting caught here.

	protected void asyncFailure(Object request, @Nullable Acknowledgment acknowledgment, Consumer<?, ?> consumer,
			Throwable t, Message<?> source) {

		try {
			handleException(request, acknowledgment, consumer, source,
					new ListenerExecutionFailedException(createMessagingErrorMessage(
							"Async Fail", source.getPayload()), t));
		}
		catch (Throwable ex) {
			this.logger.error(t, () -> "Future, Mono, or suspend function was completed with an exception for " + source);
			acknowledge(acknowledgment);
		}
	}

And the DefaultErrorHandler is expecting this method to throw the exception
	protected void invoke(Object records, @Nullable Acknowledgment acknowledgment, Consumer<?, ?> consumer,
			final Message<?> message) {

@igloo12 Thats a good catch. We will take a look at that today.

@igloo12 Unfortunately, this is not supported at the moment. The problem is that, for async return types, we cannot propagate the exception back to the container since the async processing happens in a separate thread. We have to address this as a new feature in the next version of Spring for Apache Kafka. For now, you have two options: use the error handler on the listener itself. See note at the end here: https://docs.spring.io/spring-kafka/reference/3.3-SNAPSHOT/kafka/receiving-messages/async-returns.html. You can add an errorHandler property to your KafkaListener. The downside to this approach is that you don't have things like retries etc. Or you can also try a new feature that was recently added for async retries. Docs are missing for this feature, but you can find more details here: https://github.com/spring-projects/spring-kafka/issues/3276
Please let us know how those options work for you.

@sobychacko  Thanks for the reply. I need a stable release and retries for production so I will remove suspend from the functions and wait for the upcoming fix. Is there a ticket to track the new feature?


Double check that quad lensing systems are present in instance catalogs

Basically, verification of issue #192 in new instance catalogs.

We do indeed have the sprinkler creating quads in the instance catalogs. The notebook seen here: https://gist.github.com/jbkalmbach/37f1b42afc3764ba2b4ad696ce2c546f shows that from the agn from an instance catalog (attached file) we do indeed see twinkles systems with 4 images appearing in the phosim instance catalogs.
agn_input_220.txt

Great! Looking fwd to seeing these systems in action :-)
On Thu, Sep 22, 2016 at 11:45 AM, Bryce Kalmbach<EMAIL_ADDRESS>wrote:

Closed #311
https://github.com/DarkEnergyScienceCollaboration/Twinkles/issues/311.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/DarkEnergyScienceCollaboration/Twinkles/issues/311#event-799321297,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AArY94k5jJwuYyZ-HNBj-FX6zJvQy68mks5qsszRgaJpZM4J4Xcg
.


Add cross compiling script

Adds a cross-compiling script rather than having it in the Makefile.
To test:
github.com/openshift/odo  fix-cross ✔                                                                                0m
▶ make cross
./scripts/cross-compile.sh '-X github.com/openshift/odo/pkg/odo/cli/version.GITCOMMIT=91599ec5'
Cross compiling linux-amd64 and placing binary at dist/bin/linux-amd64/
Cross compiling darwin-amd64 and placing binary at dist/bin/darwin-amd64/
Cross compiling windows-amd64 and placing binary at dist/bin/windows-amd64/

/approve

/lgtm


Local cache for command/module lookup

Summary of the new feature / enhancement
As per the RFC  there is mention of a local cache.
I could not find this already listed in issues so raising so that this is tracked
Proposed technical implementation details (optional)
No response

Hi @kilasuit the local cache feature is listed in the Alternative Proposals and Considerations and are items outside of the scope of the 3.0 initial release. It is something we are still very interested in including in PowerShellGet but it will likely have to be once 3.0 is released.


[WIP] Metric Learning Tutorial Notebook

@perimosocordiae , thought this might be handy in visualising what the algorithms are doing. It's very useful for me, so I thought I'd clean up the code I have and make a notebook.
Let me know if this is ok, and whether you might want more things added to this.
Once #26 is completed, we can change this later to reflect fit_transform as well.
Edit: also wanted to know where the right place for this would be, whether in the examples folder or in  the docs folder.

Very cool! I think this would fit nicely in examples/.
Some of the code in the notebook can be cleaned up, and it might be better to use an alternate dataset to really show how the methods differ. Some of the papers have illustrative examples that we might be able to use.
The one big omission from the notebook is how you might specify constraints manually for each method. (Rather than just using the _Supervised variants.) This might be a bit harder to show clearly, but I think it's worthwhile.

Could you mention which part exactly could be cleaned up?
I would ideally want to use a different data set too, but thought of using just one for all the examples would be easier in making a comparison - do you have any ideas of other data sets to use, in particular?
I like the idea of specifying constraints manually, I'll add what I can regarding that to the notebook.

Regarding code cleanup, you keep reassigning the X variable, which makes things confusing to read. Maybe have each method assign to a separate variable (i.e., x_lmnn or x_itml) when calling .transform()?
The docs aren't very clear about manual constraint specification yet, but the docstrings for each method should give you a starting point.  For example, ITML's constraints are a "4-tuple of arrays (a,b,c,d)" which are "indices into X, such that d(X[a],X[b]) < d(X[c],X[d])". You can also look at the constraints class to find examples of making each kind of constraint.

TODO:

clean up notebook with regard to old comments
add example of fit_transform as well
briefly describe each algorithm as well as link to paper
give example of manual constraints
maybe add nice motivating example to use any one also (e.g clustering)

Just some notes for myself. I'll get to this soon :)

This is looking good! A few lines of description about each method will be nice, as well as a mention that (for the most part) we follow scikit-learn conventions.
It might also be good to explain why running the same learner multiple times might not always give the same results. The current API for the supervised methods hides all of the randomness, which might be confusing to a new user.

Added descriptions and links for all the algorithms, and mentioned about scikit-learn and using random seeds.
Only have to do the manual constraints bit, just going to spend some time coming up with a good example for it.

@perimosocordiae, apart from ITML and LSML all the methods use labels as a way to supervise the learning, right?
So the example of manual constraints, it's only for them, right?

@perimosocordiae I'm done with the tutorial!
If you think it needs any other additions let me know; but from my side, right now, you can merge.

Great, thanks! This will be a useful resource for people new to the project.

Awesome! It would be better if we include the associated .py file as part of the test suite.

We could have an automated test run jupyter nbconvert --to script on it, then make sure it runs without errors. I think that could be added to the TravisCI tests without too much difficulty.

I haven't made an associated .py file, but could if needed; but I think adding it to the TravisCI tests would be better, right?

CJ's idea sounds good without the need to maintain a separate py file. Yeah it would be better to continuously test it, which is critical for future users.


[SPARK-15449][MLlib][Example]:Wrong Data Format - Documentation Issue

What changes were proposed in this pull request?
(Please fill in changes proposed in this fix)
In the MLLib naivebayes example, scala and python example doesn't use libsvm data, but Java does.
I make changes in scala and python example to use the libsvm data as the same as Java example.
How was this patch tested?
Manual tests

Test build #59291 has started for PR 13301 at commit fa3656e.

Test build #59291 has finished for PR 13301 at commit fa3656e.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/59291/
Test PASSed.

Test build #59292 has started for PR 13301 at commit 5bf30dd.

Test build #59292 has finished for PR 13301 at commit 5bf30dd.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/59292/
Test PASSed.

Hm, I guess I don't see why this should use the libsvm sample? 2 of the 3 examples used the naive bayes sample, and it's a naive bayes example. Shouldn't Java be fixed?

@srowen ML uses the sample_libsvm_data.txt in all three examples.
sample_naive_bayes_data.txt  is not in libsvm format. The format is shown below:
0,1 0 0
0,2 0 0
0,3 0 0
0,4 0 0
1,0 1 0
1,0 2 0
1,0 3 0
1,0 4 0
2,0 0 1
2,0 0 2
2,0 0 3
2,0 0 4

Test build #59297 has started for PR 13301 at commit 16c6f6c.

Test build #59297 has finished for PR 13301 at commit 16c6f6c.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/59297/
Test PASSed.

OK got it. Now sample_naive_bayes_data.txt is no longer used, I think. I think it can be deleted?

@srowen I think we can delete it. Let me double check it and update this PR. Thanks!

I grep all scala/java/py files and there is no reference to the data file.

Test build #59300 has started for PR 13301 at commit 2e15ec9.

Test build #59300 has finished for PR 13301 at commit 2e15ec9.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/59300/
Test PASSed.

Minor comment otherwise LGTM

@MLnick I am on travel now. I will update it on Saturday. Thanks!

@MLnick Done. removed seed in python and java

Test build #59507 has started for PR 13301 at commit 7d3b5b0.

LGTM pending tests

Test build #59507 has finished for PR 13301 at commit 7d3b5b0.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/59507/
Test PASSed.

Merged to master/2.0


[BUG] Installation problems on Ubuntu 22.04

Describe the bug
I'm trying to install wash on Ubuntu 22.04.01 and having some problems.
To Reproduce
First I installed with brew
brew install wasmcloud/wasmcloud/wash

The binary installs properly but throws an error when running wash up
=ERROR REPORT==== 14-Nov-2022::21:29:47.828717 ===
Unable to load crypto library. Failed with error:
"load_failed, Failed to load NIF library /home/rothgar/.wash/downloads/lib/crypto-5.1.1/priv/lib/crypto: 'libcrypto.so.1.1: cannot open shared object file: No such file or directory'"
OpenSSL might not be installed on this system.

I installed libssl-dev package via apt to get libcrypto.so but wash still fails
I then tried installing via apt and I'm getting an error resolving packagecloud (not sure why). dig and opening the browser works fine, but apt update throws an error.
Err:8 https://packagecloud.io/wasmCloud/core/ubuntu jammy Release
  404  Not Found [IP: <IP_ADDRESS> 443]

I tried via cargo
cargo install wash-cli

And I had problems building because I was missing the libz-dev and libgit2-dev packages. I installed both via apt
After install finished I get an error
wash: error while loading shared libraries: libgit2.so.1.5: cannot open shared object file: No such file or directory

Expected behavior
I expected brew to work or at minimum apt (apt might be my computer/network problems).
Screenshots
If applicable, add screenshots to help explain your problem.
**Environment (please complete the following information) **

OS: Linux
Shell: zsh
wash Version (I'm not sure I can't run it)

@rothgar thank you for filing this bug, I've got good news and bad news.
The good news is we just removed the dependency on libgit and libssl for wash, so you should be able to install it with
cargo install wash-cli --version 0.14.0-alpha.1

This is an alpha version as we're still testing some of the new changes, but you should be just fine using it.
Bad news is that the wasmCloud OTP host does depend on libcrypto to do some random number generation, and this can affect newer systems like Ubuntu 22.04 that upgraded to OpenSSL 3.0.
This might take more of an expert, but if you are able to install an OpenSSL compatibility layer for 1.1 you should be able to run wasmCloud on it.

Thanks for the info. I got wash installed with the alpha version and I was able to download an old version of openssl and install it. It looks like wash up is working properly (no errors and I can hit the localhost endpoint) Is there anything else I should test?
I installed openssl 1.1 with
wget http://nz2.archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2.16_amd64.deb
sudo dpkg -i libssl1.1_1.1.1f-1ubuntu2.16_amd64.deb

@rothgar that's fantastic! Thank you for sharing that command, I've had to search through forums a few times before to get that to work. If you can run the following and get a response, you're good to go
wash ctl start actor wasmcloud.azurecr.io/echo:0.3.4
wash call MBCFOPM6JW2APJLXJD3Z5O4CN7CPYJ2B4FTKLJUR5YR5MITIU7HD3WD5 HttpServer.HandleRequest '{"method": "GET", "path": "/echo", "body": "", "queryString":"","header":{}}'

This starts our example echo actor and calls its HTTP Handle Request method. Otherwise, you're good to go explore the documentation and examples!

Looks like that still fails
wash ctl start actor wasmcloud.azurecr.io/echo:0.3.4
failed to read root certificates: MissingOrMalformedExtensions

@rothgar Do you have the ca-certificates package installed on Ubuntu? The root certificates phrase makes me think of that package. A quick google pulls up the async-nats client so I'll take a look there

Yes, it's installed
sudo apt info ca-certificates
Package: ca-certificates
Version: 20211016
Priority: important
Section: misc
Origin: Ubuntu
Maintainer: Ubuntu Developers<EMAIL_ADDRESS>Original-Maintainer: Julien Cristau<EMAIL_ADDRESS>Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Installed-Size: 384 kB
Depends: openssl (>= 1.1.1), debconf (>= 0.5) | debconf-2.0
Breaks: ca-certificates-java (<< 20121112+nmu1)
Enhances: openssl
Task: minimal, server-minimal
Download-Size: 148 kB
APT-Manual-Installed: yes

@rothgar I'll try this out with an ubuntu 22 container real quick later today and see if I can find a workaround

So I was able to get this working, albeit with a manual build of openssl 1.1.1s. here are my full steps...
apt update
apt upgrade
apt install curl build-essential pkg-config libz-dev -y
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
source "$HOME/.cargo/env"
cargo install wash-cli --version 0.14.0-alpha.1
wget http://nz2.archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2.16_amd64.deb
curl -fLO https://www.openssl.org/source/openssl-1.1.1s.tar.gz
tar -xvf openssl-1.1.1s.tar.gz
cd openssl-1.1.1s
./config --prefix=/usr/local/ssl --openssldir=/usr/local/ssl shared zlib
make
make test
make install
wash up -d
wash ctl start actor wasmcloud.azurecr.io/echo:0.3.4
wash call MBCFOPM6JW2APJLXJD3Z5O4CN7CPYJ2B4FTKLJUR5YR5MITIU7HD3WD5 HttpServer.HandleRequest '{"method": "GET", "path": "/echo", "body": "", "queryString":"","header":{}}'

I did the manual build of openssl only because there wasn't an arm64 available package similar to what you sent above

All those steps worked except the last two :cry:
I get the same error I had before. I also saw a similar reported issue from 3 months ago of someone on Windows connecting to NATS from rust https://stackoverflow.com/questions/73342204/rust-missingormalformedextensions-while-connecting-to-nats

Looks like we're a few minor versions behind latest on async-nats (0.18.0 -> 0.23.0) so it might have been fixed by then. Not entirely sure what would cause the issue, especially the same one between Ubuntu and Windows, but let me see if I can upgrade that and get a PR for you to try. We also may want to try a few substitutions for variables, like switching out the NATS host from <IP_ADDRESS> to localhost

Happy to keep testing to get this working for myself and others. I didn't see any options to enable debug logging in wash and unfortunately I don't know enough about how wash works yet to dive in.
I tried restarting the nats server to listen on <IP_ADDRESS> (I get the same error) but I'm not exactly sure where else to look.

Justin, I really appreciate all of the engagement on this - we work very closely with the NATS team so you are helping all of us out.  Thank you!

enable debug logging in wash

@rothgar you should be able to get debug logs from wash by setting the environment variable RUST_LOG=debug. On unix-like systems you can add it as a prefix to the cli:
RUST_LOG=debug wash ...

I'm just catching up on this thread .. is the error you're getting the one with MissingOrMalformedExtensions ?
I'm also surprised you still have an openssl dependency with the alpha version of wash - we tried to remove that dependency so it looks like that didn't work on some platforms. Could you please run cargo tree from the wash source folder and attaching the output to this issue?  --Thanks!

I'm also surprised you still have an openssl dependency with the alpha version of wash

@stevelr just one note, I think @rothgar is still depending on openssl because of the wasmCloud host dependency on libcrypto

@stevelr Yes, the error I'm getting is failed to read root certificates: MissingOrMalformedExtensions when I try to start the actor.
I'm not trying to develop wash (just use it) so cargo tree didn't return anything.

Reopening this issue as the issue with libcrypto.so is still present, but with a passable workaround. In order to get past this you can install the libssl1.1 compatibility layer on Ubuntu 22.04 and wash up will work just fine.
For arm64 machines, you can run the following to install wash (you may need to pipe into sudo bash for packagecloud):
apt update; apt install curl -y
curl -s https://packagecloud.io/install/repositories/wasmcloud/core/script.deb.sh | bash
apt install wash
curl -fLO http://ftp.us.debian.org/debian/pool/main/o/openssl/libssl1.1_1.1.1n-0+deb11u3_arm64.deb
dpkg -i libssl1.1_1.1.1n-0+deb11u3_arm64.deb
wash --help

And for amd64 machines:
apt update; apt install wget -y
wget http://nz2.archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2.16_amd64.deb
sudo dpkg -i libssl1.1_1.1.1f-1ubuntu2.16_amd64.deb
curl -s https://packagecloud.io/install/repositories/wasmcloud/core/script.deb.sh | bash
apt install wash

Actually, closing in favor of #366 so it can better describe the issue. @rothgar, you should be able to get past the vast majority of your issues above involving libgit, installing on Ubuntu 22, etc

Thanks! It looks like it's working on my system now.


Corrupted terminal when running a command which goes in loop

Are you able to reproduce the following? I forgot to write in the screencast the following:

the bash: i: command not found error is because I just pressed iEnter;
when you see the prompt copied horizontally, that happens when I hit Enter.

hm I bet I need to trap SIGINT (and probably PIPE) and tell readline to reset some terminal state.


validate & compare, run 003

Run another validation comparison after the synonyms fix (#26).

Finished the comparison! it has yield 3 main results for the discrepancies:
Problematic JSON Schema conversion

Enum values in fields such as geographic location (country and/or sea) MAY have synonyms. This is the case of "Czechia", which also has an accepted synonym in "Czech Republic")
For some fields, units is an enum value that only accepts certain types of units. In the JSON schema, units is just defined as "string", with no restriction

Problematic ENA data retrieval
I need to consult this one on monday with @Jeena-Rajan or @snathanvj . Some of the samples seem to have fields without any value; that is, "tag" is there but "value" does not exist. I wonder if this has been redacted, as the value that is missing is a patient sample tumor site... (This is the String.split(String)" because "tagValue" is null error)
Mystery box

Rows 410 to 413 present a mysterious issue. ENA validation has worked as intended here; first of all, the value is required in the ENA checklist, and it is not in the JSON schema converted one, which is weird. But the weirdest thing of all is that, even if not required, it should pick it up and the value should fail against the regex. I have not been able to figure out exactly what is happening here

Have also commented the below on the ENA vs schema validation comparison spreadsheet
Problematic ENA data retrieval
This is a strange one. It's also missing the mandatory attribute 'patient tumor site of collection'. The related examples are all from the same submitter so I wonder if the validator was not working at the point when the samples were submitted.
Mystery box
Rows 410-413 'depth' is only recommended here  (not mandatory) so behaviour is as expected for JSON schema

Comment on the mystery box - Even if not required, JSON validation is not correct. The value "Not appliccable" should not be accepted by the regex validation of the field https://github.com/ebi-ait/checklist-converter/blob/main/schema/ERC000043-ENA.json#L508


update job status in case of actinia error

If the status of an actinia resource is 400, the job status must be updated accordingly.

Note that the case if actinia does not respond at all is not yet handled.


Remove gRPC related to env from auth

What this PR does / why we need it:
Which issue(s) this PR fixes:
Fixes #
Does this PR introduce a user-facing change?:

NONE

nice catch
/lgtm

Thanks a lot!
/approve


Bump Connect to version 2024.08.0

This PR was created automatically by the Posit Connect release scripts.

I'll take this opportunity to merge dev to main.