JSON macro fails in some cases

these all work fine:
use humphrey_json::json;

fn main() {
   let v = json!(true);
   dbg!(v);
   let v = json!(1234);
   dbg!(v);
   let v = json!("Hello, world!");
   dbg!(v);
   let v = json!({"key":"value"});
   dbg!(v);
}

but for some reason, fully qualified fails in one case:
fn main() {
   let v = humphrey_json::json!(true);
   dbg!(v);
   let v = humphrey_json::json!(1234);
   dbg!(v);
   let v = humphrey_json::json!("Hello, world!");
   dbg!(v);
   // cannot find macro `json` in this scope
   // let v = humphrey_json::json!({"key":"value"});
   // dbg!(v);
}

This happens because the macro is supposed to be imported with the prelude, as is shown in the demonstration examples:
use humphrey_json::prelude::*;

This brings all the necessary traits into scope and you'll run into issues down the line if these traits are not in scope, as the macro won't be able to convert certain types to and from JSON.
However, for simple cases such as these, I think it should work as-is so I'm working on a fix at the moment.

much appreciated!

I ended up rewriting the macro from scratch because there were a number of other problems with the implementation that I'd been meaning to fix for ages. I've released all these bug fixes in v0.2.2.

confirmed fixed, thank you!


Failed to open V8 file \natives_blob.bin

I got an error while trying to launch vscode, and when I tried launching it from the terminal I got the next:
$ code -v
[1011/111946.687:FATAL:v8_initializer.cc(185)] Failed to open V8 file 'C:\Program Files\Microsoft VS Code\natives_blob.bin' (reason: -4)

VSCode Version: 1.38.1
OS Version: Windows 10

Steps to Reproduce:

open the terminal
run code --verbose

That error means the file is not found. @cgmerida can you paste a screenshot of the folder that has VSCode executable C:\Program Files\Microsoft VS Code.

Here is a screenshot of the folder.

@cgmerida thanks for the screenshot, it looks like some of the files are missing from the installation, not sure why that would happen, can you remove this folder and reinstall latest stable from here https://code.visualstudio.com/ ?

I copied the content of the folder named "_" inside the root folder C:\Program Files\Microsoft VS Code and it is working now.
This is the content of the folder "_"

And this is now my folder C:\Program Files\Microsoft VS Code

now when I type code -v I get

I just encountered the mysterious "_" folder creation as well. Some details are blow, but I don't really know if this can properly be declared an "issue" for vscode or if it should be reopened. A cursory search didn't turn up any known issues for auto-updating during a windows shutdown.

This is caused by an incomplete update install.
I was able to fix this by re-running the user installer (without an uninstall) since the corrupt was simply missing files.
This correlates to a shut-down of my PC as I know I left work around this time, but I can't remember if I had closed vscode before initiating the shutdown (and thus when the botched update actually began).

There are no errors in the log, it simply ends before the final steps are completed (see below or attached logs).
BAD-vscode-inno-updater-1571191966.log
LastGood-vscode-inno-updater-1570829377.log
Bad log ends here:
Oct 15 19:12:52.807 INFO Rename: "locales" (attempt 1)

Good log only has a few more lines:
Oct 11 14:29:41.409 INFO Rename: "locales" (attempt 1)
Oct 11 14:29:41.409 INFO Rename: "natives_blob.bin" (attempt 1)
Oct 11 14:29:41.411 INFO Rename: "osmesa.dll" (attempt 1)
Oct 11 14:29:41.412 INFO Rename: "resources" (attempt 1)
Oct 11 14:29:41.416 INFO Rename: "resources.pak" (attempt 1)
Oct 11 14:29:41.417 INFO Rename: "snapshot_blob.bin" (attempt 1)
Oct 11 14:29:41.418 INFO Rename: "swiftshader" (attempt 1)
Oct 11 14:29:41.420 INFO Rename: "v8_context_snapshot.bin" (attempt 1)
Oct 11 14:29:41.421 INFO Delete: "C:\\Users\\$env::UserName\\AppData\\Local\\Programs\\Microsoft VS Code\\_"
Oct 11 14:29:41.472 INFO header: Header, id: Inno Setup Uninstall Log (b) 64-bit, app id: {771FD6B0-FA20-440A-A002-3B3BAC16DC50}, app name: Visual Studio Code, version: 1048, num recs: 38441, end offset: 9019019, flags: 0x34, crc: 0xae323e1
Oct 11 14:29:41.473 INFO num_recs: 38441
Oct 11 14:29:41.561 INFO Updating uninstall file "C:\\Users\\$env::UserName\\AppData\\Local\\Programs\\Microsoft VS Code\\unins000.dat"
Oct 11 14:29:41.663 INFO Update was successful!


add_missing_impl_members panic

trait Foo<T> {
    fn foo(&self, t: T);
}

impl Foo for u32 {
    <|>
}

Note the missing type parameter.
Trying to trigger code actions in the above code results in:
Panic context:
> request: textDocument/codeAction CodeActionParams {
    text_document: TextDocumentIdentifier {
        uri: Url {
            scheme: "file",
            host: None,
            port: None,
            path: "/home/florian/Projekte/opensource/rust-analyzer/crates/hir_ty/src/traits/chalk.rs",
            query: None,
            fragment: None,
        },
    },
    range: Range {
        start: Position {
            line: 360,
            character: 3,
        },
        end: Position {
            line: 360,
            character: 3,
        },
    },
    context: CodeActionContext {
        diagnostics: [],
        only: None,
    },
    work_done_progress_params: WorkDoneProgressParams {
        work_done_token: None,
    },
    partial_result_params: PartialResultParams {
        partial_result_token: None,
    },
}

thread '<unnamed>' panicked at 'Failed to make ast node `syntax::ast::generated::nodes::Type` from text impl {unknown} for D {};', crates/syntax/src/ast/make.rs:445:13
stack backtrace:
   0: rust_begin_unwind
             at /rustc/7eac88abb2e57e752f3302f02be5f3ce3d7adfb4/library/std/src/panicking.rs:483
   1: std::panicking::begin_panic_fmt
             at /rustc/7eac88abb2e57e752f3302f02be5f3ce3d7adfb4/library/std/src/panicking.rs:437
   2: syntax::ast::make::ast_from_text
   3: syntax::ast::make::ty
   4: <hashbrown::map::HashMap<K,V,S> as core::iter::traits::collect::Extend<(K,V)>>::extend
   5: assists::ast_transform::SubstituteTypeParams::for_trait_impl
   6: assists::utils::add_trait_assoc_items_to_impl
   7: assists::assist_context::Assists::add
   8: assists::handlers::add_missing_impl_members::add_missing_impl_members_inner
   9: assists::Assist::resolved
  10: std::panicking::try
  11: ide::Analysis::resolved_assists
  12: rust_analyzer::handlers::handle_code_action
  13: <F as threadpool::FnBox>::call_box
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

This probably just requires a check somewhere that makes the code action not apply in this case (or alternatively don't try to substitute?)

I tested this just now with master (53e2cdf18e155ad61262fed5dcd3d73ef343c042) and rather than panicing, It expanded as:
trait Foo<T> {
    fn foo(&self, t: T);
}

impl Foo for u32 {
    fn foo(&self, t: T) {
        ${0:todo!()}
    }
}

Obviously not ideal, but also not panicing.

The ${0:todo!()} comes from a bug in the vscode extension which has already been fixed but since you probably run the stable extension with the master server you still have that output there.

Aha, okay, so given that, is this issue effectively already solved?

Yeah, seems it got fixed somewhere along the way.


Merging plan from torchaudio-contrib

Hi all,
I think it's good timing to discuss a potential merging plan from torchaudio-contrib to here, especially because there's going to be new features and changes by @jamarshon @cpuhrsch.
Main idea
A lot of things are well summarized in https://github.com/keunwoochoi/torchaudio-contrib. In short, we wanted to re-design torch-based audio processing so that

things can be Layers, which are based on corresponding Functionals
names for layers and arguments are carefully chosen
all work for multi-channel
complex numbers are supported when it makes sense (e.g., STFTs)

Review - layers
. torchaudio-contrib already covers lots of functions that transform.py is covering now, but not all of them. And that's why I feel like it's time to discuss this here.
Let me list the classes in transform.py one by one with some notes.
1. Already in torchaudio-contrib. Hoping we'd replace.

class Spectrogram: we have it in torchaudio-contrib. On top of this, we also have STFT layer which outputs complex representations (same as torch.stft since we're wrapping it).
class MelScale: we have it and would like to suggest to change the name to something more general. We named it class MelFilterbank, assuming there can be other types of filterbanks, too. It also supports htk and non-htk mel filterbanks.
class SpectrogramToDB: we would like to propose a more general approach -- class AmplitudeToDb(ref=1.0, amin=1e-7) and class DbToAmplitude(ref=1.0), because decibel-scaling is about changing it's unit, not the core content of the input.
class MelSpectrogram: we have it, which returns a nn.Sequential model consists of Spectrogram and mel-scale filter bank.
class MuLawEncoding, class MuLawExpanding: we have it, actually a 99% copy of the implementation here.

2. Wouldn't need these

class Compose: we wouldn't need it because once things are based on Layers people can simply build a nn.Sequential().
class Scale: It does 16int --> float. I think we need to deprecate this because if we really need this, it should be with a more intuitive and precise name, and probably should support other conversions as well.

3. To-be-added

class DownmixMono: I would like to have one. But we also consider having a time-frequency representation-based downmix (energy-preserving operation) (@faroit). I'm open for discussion. Personally I'd prefer to have separate classes,DownmixWaveform() and DownmixSpecgram(). Maybe until we have a better one, we should keep it as it is.
class MFCC: we currently don't have it. The current torch/audio implementation uses s2db (SpectrogramToDB), but this class seems little arbitrary for me, so we might want to re-implement it.

4. Not sure about these

class PadTrim: I don't actually know why we need it exactly, would love to hear about this!
class LC2CL: So far, torchaudio-contrib code hasn't considered channel-first tensors. If it's a thing, we'd i) update our code to make them compatible and ii) have the same or a similar class to this. But, ..do we really need this?
class BLC2CBL: same as LC2CL -- I'd like to know its use cases.

Review - argument and variable names
As summarised --> https://github.com/keunwoochoi/torchaudio-contrib/issues/46, we'd like to use

waveforms for a batch of waveforms
real_specgrams for magnitude spectrograms
complex_specgrams for complex spectrograms
. (This is relatively less-discussed).

Audio loading
@faroit has been working on replacing Sox with others. But here in this issue, I'd like to focus on the topics above.
So,

Any opinion on this?
Any answers to the questions I have!
If it looks good, what else would you like to have in the one-shot PR that would replace the current transforms.py?

class MelScale: we have it and would like to suggest to change the name to something more general.

Just making sure it's clear: as it currently stands, our MelFilterbank is a wrapper around the create_mel_filter functional and merely creates the filterbank tensor (either htk or Slaney or even custom). Then we have ApplyFilterbank taking it in and using apply_filterbank functional to actually apply it to the stft.

Personally I'd prefer to have separate classes,DownmixWaveform() and DownmixSpecgram()

:+1: :+1:

complex_specgrams

A bit verbose?
A couple of things that come to mind I think we should also discuss:

Removing explicit padding and leaving it up to torch.stft
Let torch.stft deal with the other defaults (since our current defaults are the same)
Making sure the MelFilterbank / ApplyFilterbank flow is the way to go for flexibility, not confusing

2. Wouldn't need these
I think it is a little bit restrictive to force everything to be a layer and don't allow for composing transforms, which still might be useful during training.

@hagenw Right, actually I was confused Compose with torchvision’s transform. I’ll probably edit it later, Compose is fairly simple and be able to do something that nn.Sequential() can’t, hence probably no need to remove it.
One thing is - it’d be nicer to a suggestion on when to use nn.Sequential() or Compose(). For example, imo, if every component is Layer, a better practice would be to use nn.Sequential().

Thanks for writing this up @keunwoochoi!
To me there are three categories of features for the sake of this discussion

Entirely new standalone features. We can merge those right away.
Feature extensions. We can also merge those right away after a bit of discussion on a case-by-case basis to prevent featuritis.
Redoing existing torchaudio features. Here it would be good to merge them on a case-by-case basis. Let's start with those that require the least global decisions. For all of these we need to keep backwards compatibility in mind.

On compatibility
Then there are other libraries (HTK, librosa, Kaldi, etc.) we might want support / be compatible with. One goal for us has been to allow users to get native PyTorch support for the preprocessing functions they need from these libraries. I think these steps might be a good approach.
a) Support to read and write their common data formats or layouts to and from PyTorch objects (e.g. Kaldi's
b) Faithfully reimplement some of their widely used functionalities in plain PyTorch to get native support with all its benefits (e.g. GPU). We should use our core compute backend (functionals.py) here and return PyTorch objects that can be written out into data that bitwise matches their output.
I think we should create a module such as torchaudio.interface.kaldi, torchaudio.interface.htk etc. (maybe with a different name) that creates a separate namespace for this. For example we might add torchaudio.interface.htk.utils.read_mel_filterbank and return a filterbank that aligns with our conventions for class MelFilterbank, but we don't add htk support as another flag. We could also just add torchaudio.interface.layers.MelFilterbank. A lot of this namespacing should probably still be reviewed lest it gets too nested.
I suspect feature requests that fall under b) will mostly be those that users apply online. A lot of work is still offline. That's where the dataformat readers comes in.
Releases and backwards compatability
Now on our upcoming releases. The next release will focus on:
Freezing current API behavior for backwards compatibility to ease migration.
Adding orthogonal features / feature extensions from torchaudio-contrib (functionality of type 1 and 2).
Adding some interfaces (e.g. explicit htk and kaldi support).
We might even do the above release as soon as we have some good release engineering support (pip and conda etc.) and will then ship whatever made it in (within reason).
We can then quickly follow up with another release that allows us to deprecate current conventions while providing documentation and backwards compatibility. That release can then include features from category 3).
On migrating from torchaudio-contrib
Functionals:
We should add functionals first. This should include good test coverage.
Layers:
For each feature added through the functionals we then need to look at their exposition via a layer (the state to be cached).
Containers:
Compose and Sequential are a bit too opinionated to be part of the core transforms.py. I'd suggest we move this into an examples folder or make it part of a utilities function. This however falls under category 3). If someone wants to combine transforms I'd expect them to call them in sequence without any container or, if they want to, use nn.Sequential etc. explicitly from the core library.
That also means I'd rather we not return an nn.Sequential from MelSpectogram. We can add that combination as an example or if it's very different make it separate transform that applies these in sequence rather than returning an object that does so.
Another side-effect of this, at a functional level, is also that it's easier to write performant code. This will more likely than not require us to pull entire functionals into C++ and/or branch into other performance libraries, which will kill returning something like nn.Sequential and then break backwards compatibility.
On Scale, PadTrim, LC2CL, BLC2CBL
The LC/CL and BLC/CBL setup feels a bit like the image formats (NHWC/NCHW) that are often supported for various reasons (mostly performance). I don't mind us being opinionated here for the sake of standardization and require users to use transpose until performance reasons prevent this. We should nonetheless mention this as a precondition in the docs for all functionals and layers that have an explicit assumption here. This also falls under category 3).
In summary the end state might be
i) We have a core compute backend of performant functionals with native PyTorch support.
ii) We have our own Layers with our own opinionated API and standards
iii) We have interfaces for other common libraries including data format support to ease their usage as a torchaudio user.

Sounds good, then let's keep discussing here, probably then the provisional PR would be after the API freezing, i.e., after ver 0.0.2.

We can certainly add something interesting. However, unless there's a need for specific functions in -contrib, I'd be inclined not to add a new feature for the sake of efficiency and stability. What do you think about it?

If there is orthogonal functionality in torchaudio-contrib, we can move it into torchaudio immediately. I understood the endgoal to be a full merge of torchaudio-contrib into torchaudio. This could be a first phase, which we can start right away.

I don't disagree with this idea in general, and a good example folder would be awesome. But, for Melspectrogram, I still believe it's better to provide a wrapper from the library because it's such a popular feature -- as similarly done with nn.CrossEntropyLoss which combines nn.LogSoftmax() and nn.NLLLoss(), hence it'd be nice to make things convenient and reduce potential mistakes.

I'm not sure I understood it correctly. If Melspectrogram layer is a nn.Sequential(), there won't need a Functional for it. Could you elaborate?

Your original sentence reads

class MelSpectrogram: we have it, which returns a nn.Sequential model consists of Spectrogram and mel-scale filter bank.

What I meant is, that I don't think it's a good idea to return (as in, return from the forward() function) an instance of nn.Sequential. I see now that you meant "inherit from nn.Sequential" instead, which makes a lot more sense. I still think that any layer should only inherit from nn.Module, this way we're least dependent on changes in PyTorch's class structure.
We should definitely add Melspectrogram if it's very popular and implement the composition just as we do with nn.CrossEntropyLoss.
nn.CrossEntropyLoss calls into F. cross_entropy, which then calls the log_softmax and nll_loss functionals. Therefore, the combination happens at the functional level, but the layer itself calls into the specific functional. That abstraction also enables us to drop in a fully native implementation of cross_entropy if we think there is value in e.g. fusing log_softmax and nll_loss.
Melspectrogram is also an example of a feature we can add right away because it doesn't exist at the moment. On that note, we'll also soon convert our transforms into instances of nn.Module instead of object. This adds functionality to the instances, but doesn't break backwards compatibility because nn.Modules have support for call as well. This will then be more aligned with torchaudio-contrib as well.
What other tasks should we write up for this first phase of merging torchaudio-contrib into torchaudio?

I see now that you meant "inherit from nn.Sequential" instead, which makes a lot more sense. I still think that any layer should only inherit from nn.Module

Just a quick clarification: in torchaudio_contrib, Melspectrogram and Spectrogram are not classes but functions that return an nn.Sequential around the appropriate modules, i.e.:
In [3]: mel = Melspectrogram()
In [4]: mel
Out[4]:
Sequential(
  (0): STFT(fft_len=2048, hop_len=512, frame_len=2048)
  (1): ComplexNorm(power=2.0)
  (2): ApplyFilterbank()
)

And it's the STFT, ComplexNorm, etc. that inherit from nn.Module.
So maybe our current design is closer to your original comment:

I'd suggest we move this into an examples folder or make it part of a utilities function. This however falls under category 3). If someone wants to combine transforms I'd expect them to call them in sequence without any container or, if they want to, use nn.Sequential etc. explicitly from the core library.

Since Spectrogram, Melspectrogram probably shouldn't be in layers.py.

@ksanjeevan - Is there an advantage for them to be functions that return an nn.Sequential as opposed to being layers that separate out the compute into a functional? That is, for Melspectrogram there will be a melspectrogram function that calls into the (possibly also to-be-created) functionals for stft, complexnorm and applyfilterbank?

Them being functions I think just reflected the fact that this was a useful/popular combination of the modules. As far as having the composition of the modules instead of a call to a functional that does the composition, users may want to add additional intermediate layers like for example a time stretched melspectrogram:
nn.Sequential(STFT(), StretchSpecTime(), ComplexNorm(), ApplyFilterbank())

Having Melspectrogram simply chain the layers means that doing time stretching for example will only be a slight a modification since all the modules handle the creation and passing of the necessary buffers.
Looking at Melspectrogram, it would need to create the window for the stft and the filterbank. If Melspectrogram is a layer that calls a melspectrogram functional then it will have to create both and pass them? Unless it inherits from Spectrogram... That would circle back to earlier discussions #20 or even #35.

on the LC2CL stuff, generally, people from the ML world like to have (channels, length)  because it's similar to how image channels are normally presented in pytorch and Librosa defaults to channels first for multi-channel audio.  However, people from the signal processing world tend to like (length, channels) because that's traditionally how signals are represented and it's often how the audio is layed out in the audio container.
The original version of torchaudio returned (length, channels) because that's the default of SoX, so I kept the option in their for historical reasons.

@ksanjeevan - for modification purposes it's better, in my opinion, to provide an easily copy-paste-editable example that users can modify for something simple like this.
For example a class with forward
output = self.STFT(input)
output = self.StretchSpecTime(output)
output = self.ComplexNorm(output)
output = self. ApplyFilterbank(output)

I personally prefer this way of writing operators as a sequence of python functions. It also makes it easy to mix in various other functions with the outputs, whereas nn.Sequential is restricted to Modules.
Now, we might then still want to implement a function for Melspectrogram for performance reasons, if we decide to write a specialized C++ operator or want certain JIT guarantees.

Particularly on Melspectrogram, one of the reasons for not having a Functional for it was so that it doesn't compute linear-to-mel matrix every time. This can be addressed by optionally passing the filterbank.
To keep nn.Module-sanity, again, a Functional of melspectrograms can be implemented, resuing other Functionals like stft. In such a way we reuse the codes, which is nice. For more flexible usages, towards the merits of using Compositio or nn.Sequential(), the examples can work well.
On LC2CL (@dhpollack ) - I see. For consistency with torch.stft, I'd like the API to expect channels, time. Under such an API, when the user needs to use some spectrogram, there's no redundant overhead, it's just a matter of when it happens.

@keunwoochoi - What do you think about my proposal of writing it as a sequence of python statements and provide it as an easily copy-paste-editable example and maybe also a highly efficient functional?

@dhpollack - Since we're creating building blocks in support of PyTorch users we should then probably standardize on the ML convention and transpose for functions that require (length, channels). We also recently did this for nn.LSTM via the batch_first flag, which simply triggers a transpose, since the efficient cudnn implementations require the second dimension to be the batch.

@cpuhrsch Sounds good to me overall.

maybe also a highly efficient functional?

Just to clarify, you mean doing the same for the implementation of the Functional melspectrogram? Yeah, good. Although, in such a case, wouldn't it be better to have a melspectrogram() functional that does it and let Melspectrogram() layer simply call melspectrogram()? (melspectrogram might be an exception though due to the filter bank generation but I mean in general)

@keunwoochoi - yes I think the approach of splitting the compute out into highly efficient functionals and then having the layers call into those functionals should yield a good separation and is in tune with pytorch's approach to this topic.

Is dropping sox library still the plan? I was about to open an issue to propose to add a bunch of functions for sox like carlthome/python-audio-effects/pysndfx/dsp.py and a SoxContextLib so you don't have to manually initialize the library. I personally think having sox in the library is a good army swiss knife to have.

I'm not sure what's the current plan.
They are definitely useful, but I don't think it's best hosted in the part of torchaudio. The installation (= dependency) issue will be always there and add maintenance cost and potential risks. I also hardly imagine their operations can benefit from GPUs. Due to these issues, I would avoid using sox as a part of a system if it requires some reliability and efficiency. For a quick and hacky use-case, one can easily plug it in their - maybe - preprocessing stage.
Side note - maybe some of the filters (e.g., EQ) could be re-implemented in torch :)

If we can replace the functionalities of sox in pure torch style then definitely is the way to go.
We can make a list of the sox utilities, rank them, and add a help-wanted tag. Once we have enough of them we could drop support for sox.

@vincentqb We had a long discussion about this in https://github.com/keunwoochoi/torchaudio-contrib/issues/31. I think many people agree that fast audio loading is really important and for many users of torchaudio the load functionality is probably the only place where they touch the sox lib. Therefore it would make a lot of since if only load and save would be replaced by native torch code (probably interfacing libsndfile or just reading the wav bits from scripts like its being done in tensorflow.io).

Recently we had a chat with Matt Larson in Nvidia with some other Spotifier. I begged them for some low-level implementation of wav file loader (and even mp3 decoder). Hmm.. @faroit would you be still able to spend some time on a fast wav loader? What's our plan at the moment?


Handle unsolicited "* OK Searched 91% of the mailbox, ETA 0:01" message

When fetching a large number of UIDs, rust-imap would sometimes produce an error.
Looking into it, dovecot sometimes responds with

OK Searched 91% of the mailbox, ETA 0:01

which is not handled when expecting a response to a Fetch message.
This is a small change to handle this case. I have made it quite explicit - it only handles an OK status with no code, as I'm not sure whether other messages which have an unknown code (but do contain a code) would be better handled by returning an error as is currently the case.

This change is

Firstly, thank you for the rust-imap crate. I have found it very useful!
If it's any help, the IMAP server I see this message from is Dovecot v2.2.36 with a pretty vanilla setup.

Hi! Thank you for the PR :heart:
This seems like really odd behavior. I don't think the specification allows for these kinds of random untagged Ok responses? @djc have you seen these before? Do you know if clients are expected to just blindly ignore them?

Hi,
I don't know the IMAP specs well, but looking at the definition of the OK response suggests it's allowed (https://tools.ietf.org/html/rfc3501#section-7.1.1)

" The untagged form indicates an information-only message; "

I have had a look over the dovecot source code though as it's probably the most popular IMAP server on Linux (and the one I saw this behaviour on).
I think the function responsible for these untagged OK messages is notify_ok
The call I was seeing was from https://github.com/dovecot/core/blob/master/src/lib-storage/index/index-search.c#L1545, but there are some others too -  they all seem to be sent when the server is taking time to complete an operation and is letting the client know in an unstructured way (this one just says "Hang in there.." https://github.com/dovecot/core/blob/master/src/lib-storage/index/maildir/maildir-sync.c#L259)
Hope that helps,
Paul

Ah, that's helpful, thank you! In that case I'd be happy to land this. Unfortunately, it'll have to wait for the release of imap 2.0.0, since it's a backwards-incompatible change to add a variant to UnsolicitedResponse. I really need to get the last bits together to do that. In the meantime, I'll leave some minor nits so that this is ready to land when 2.0 rolls around!

@paulpr0 Now that we're getting closer to a 3.0.0, do you think you might have some spare time to finish this up? Shouldn't be too much left. Otherwise, @mordak, this would be another good candidate to get over the finish line.


Error: All configured authentication methods failed

The file with the Key is ok
import { Client } from 'node-scp';
import fs from 'fs';

Client({
  host: 'my IP',
  port: 22,
  username: 'ubuntu',
  privateKey: fs.readFileSync('./key.pem'),
});

Same issue here. I tested with 2 different key, the first one works well (about 1kb), the second one (about 3kb) is rejected.
It's interesting to note that both works welle with "ssh2" lib...

Seems like it's sending over ssh-rsa as the algo offer to the server (even if the key is different?). This algo is no longer allowed on latest OpenSSH server versions by default.

Hi Everyone, thanks for reporting issue. Can someone please give me more context or provide an example so that I can reproduce?

Hi Everyone, thanks for reporting issue. Can someone please give me more context or provide an example so that I can reproduce?

Unfortunately when it's the authentication method by Key it doesn't work, in my case it doesn't have the password I don't know if in your package it's optional for the ssh method, anyway

Hi Everyone, thanks for reporting issue. Can someone please give me more context or provide an example so that I can reproduce?

Is this method right? Have you checked if it logs in?
import { Client } from 'node-scp';
import fs from 'fs';

Client({
  host: 'my IP',
  port: 22,
  username: 'ubuntu',
  privateKey: fs.readFileSync('./key.pem'),
});

? They never gave me an answer on how to solve it.

Hi @sebastianjnuwu,
please check if you have pass the passphrase for your privateKey, I really can't reproduce your issue

Hi @sebastianjnuwu,
please check if you have pass the passphrase for your privateKey, I really can't reproduce your issue

Hello, node-scp is already working correctly, I updated my vps and the problem stopped, I don't know what to say

@sebastianjnuwu glad to hear that


Not removing unused function import

Not removing unused function import
The PHP version we are using ($ php -v):
PHP 7.3.6 (cli) (built: Jul  3 2019 20:59:35) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.6, Copyright (c) 1998-2018 Zend Technologies
with Xdebug v2.7.2, Copyright (c) 2002-2019, by Derick Rethans
PHP CS Fixer version we are using ($ php-cs-fixer -V):
PHP CS Fixer 2.15.3 Europe Round by Fabien Potencier and Dariusz Ruminski
The command we use to run PHP CS Fixer:
php-cs-fixer --no-interaction --diff -v fix
The sample of configuration we are using:
return PhpCsFixer\Config::create()
    ->setRiskyAllowed(true)
    ->setRules([
     // ...
     'no_unused_imports' => true,
     // ...
])

Minimum samples of PHP code (as plain text, not screenshots):

Before running PHP CS Fixer (no changes):

<?php

declare(strict_types=1);

namespace App;

use App\UsedClass;
use App\UnusedClass;
use function League\Uri\create;

class Example
{
    public function doesNotMatter()
    {
        return new UsedClass();
    }
}

Unexpected changes applied when running PHP CS Fixer:

<?php

declare(strict_types=1);

namespace App;

use App\UsedClass;
use function League\Uri\create;

class Example
{
    public function doesNotMatter()
    {
        return new UsedClass();
    }
}

The changes we expected instead:

<?php

declare(strict_types=1);

namespace App;

use App\UsedClass;

class Example
{
    public function doesNotMatter()
    {
        return new UsedClass();
    }
}

Hi and thanks for reporting!
There are two expectation that are not met for you, lets see what is up.
First, the removal of use App\UsedClass;, this is done because it is safe to do so because the import is not needed. The import is done within namespace App;  and the imported class itself is in the same namespace; App -> App\UsedClass.
Than the not removal of the used use function League\Uri\create; import. I did some testing on 2.15.3 and cannot recreate the problem. I tried to recreate the scenario as follows:
$ php php-cs-fixer fix test.php -vvv --dry-run --diff
Loaded config default from "/home/possum/work/PHP-CS-Fixer/.php_cs.dist".
Using cache file ".php_cs.cache".
Paths from configuration file have been overridden by paths provided as command arguments.
F
Legend: ?-unknown, I-invalid file syntax, file ignored, S-Skipped, .-no changes, F-fixed, E-error
   1) test.php (no_unused_imports)

--- Original
+++ New
@@ @@

-use App\UsedClass;
-use App\UnusedClass;
-use function League\Uri\create;

 class test
 {
     public function doesNotMatter()
     {
         return new UsedClass();
     }
 }

$ cat test.php

<?php

declare(strict_types=1);

/*
 * This file is part of PHP CS Fixer.
 *
 * (c) Fabien Potencier<EMAIL_ADDRESS> *     Dariusz Rumiński<EMAIL_ADDRESS> *
 * This source file is subject to the MIT license that is bundled
 * with this source code in the file LICENSE.
 */

namespace App;

use App\UsedClass;
use App\UnusedClass;
use function League\Uri\create;

class test
{
    public function doesNotMatter()
    {
        return new UsedClass();
    }
}

$ cat .php_cs.dist

<?php

$header = <<<'EOF'
This file is part of PHP CS Fixer.

(c) Fabien Potencier<EMAIL_ADDRESS>    Dariusz Rumiński<EMAIL_ADDRESS>
This source file is subject to the MIT license that is bundled
with this source code in the file LICENSE.
EOF;

$finder = PhpCsFixer\Finder::create()
    ->exclude('tests/Fixtures')
    ->in(__DIR__)
    ->append([__DIR__.'/php-cs-fixer'])
;

$config = PhpCsFixer\Config::create()
    ->setRiskyAllowed(true)
    ->setRules([
        'no_unused_imports' => true,
    ])
    ->setFinder($finder)
;

// special handling of fabbot.io service if it's using too old PHP CS Fixer version
if (false !== getenv('FABBOT_IO')) {
    try {
        PhpCsFixer\FixerFactory::create()
            ->registerBuiltInFixers()
            ->registerCustomFixers($config->getCustomFixers())
            ->useRuleSet(new PhpCsFixer\RuleSet($config->getRules()));
    } catch (PhpCsFixer\ConfigurationException\InvalidConfigurationException $e) {
        $config->setRules([]);
    } catch (UnexpectedValueException $e) {
        $config->setRules([]);
    } catch (InvalidArgumentException $e) {
        $config->setRules([]);
    }
}

return $config;

$ git status
HEAD detached at v2.15.3
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)

	modified:   .php_cs.dist

Untracked files:
  (use "git add <file>..." to include in what will be committed)

	test.php

no changes added to commit (use "git add" and/or "git commit -a")

Can you maybe try some other scenario as well to see if there is some pattern why this doesn't work for you?

Hi and thanks for answer!
Yes, you are right. I researched this behaviour deeper with another scenarios and found pattern which reproduces this problem.
The things is that previous code example was not quite correct. It reproduces only if static function from another class is used in Test class.
This is correct example
<?php

declare(strict_types=1);

namespace App;

class UsedClass
{
    public static function create()
    {
        return 'eee';
    }
}

<?php

declare(strict_types=1);

namespace App;

use App\UsedClass;
use App\UnusedClass;
use function League\Uri\create;

class MyTest
{
    public function doesNotMatter()
    {
        return UsedClass::create();
    }
}

thanks for the details!


Add --only  arg to traceurTests.js for focused testing.

The -- options call mocha equivalents.
'only' supports focused testing.
Rename test/modular/tests.js to test/traceurTests.js

depends on #1726

PTAL

LGTM


Chr(30)

Remenber, @frost242 : we add once chr(30) appearing in pg_stat_activity.queries from one of our beloved customers.
You made a quick patch on the server itself, that I've copied there for memory : https://github.com/Krysztophe/check_pgactivity/commit/b9c8e936e0620817afa3debb809b2ffd6430b299 . The problem was gone, and the patch apparently forgotten.
Would it be useful to make a clean test case and generalize to other versions?

Isn't that a duplicate of #155 ?

indeed


Command Line Interface

I added a CLI to get the colors directly in the CSS format so we can simply copy and paste the console output.

A very nice add @laurentpayot  thanks for that.
Can we have different outputs on CLI?
We could start with "json" as default and "css" as a second option.
Let me know if this makes sense for you too.
// output as json
material-dynamic-colors "#FF0000"
material-dynamic-colors "#FF0000" json

// output as css
material-dynamic-colors "#FF0000" css

// a future output
material-dynamic-colors "#FF0000" *

@leonardorafael sure, but how should the JSON keys look like? Kebab case "--on-primary" or camel case "onPrimary"?

@leonardorafael sure, but how should the JSON keys look like? Kebab case "--on-primary" or camel case "onPrimary"?

I think camelCase fit best as json

The CLI output is now JSON by default. A css or CSS argument now has to be added for a CSS output. I don’t have the time to implement the * argument right now as it introduces more complexity.

@leonardorafael by the way the JSON output is actually a JS object output. Did you actually mean a real, one line string JSON output like below?
{"light":{"primary":"#c00100","onPrimary":"#ffffff","primaryContainer":"#ffdad4","onPrimaryContainer":"#410000","secondary":"#775651","onSecondary":"#ffffff","secondaryContainer":"#ffdad4","onSecondaryContainer":"#2c1512","tertiary":"#705c2e","onTertiary":"#ffffff","tertiaryContainer":"#fbdfa6","onTertiaryContainer":"#251a00","error":"#ba1a1a","onError":"#ffffff","errorContainer":"#ffdad6","onErrorContainer":"#410002","background":"#fffbff","onBackground":"#201a19","surface":"#fff8f6","onSurface":"#201a19","surfaceVariant":"#f5ddda","onSurfaceVariant":"#534341","outline":"#857370","outlineVariant":"#d8c2be","shadow":"#000000","scrim":"#000000","inverseSurface":"#362f2e","inverseOnSurface":"#fbeeec","inversePrimary":"#ffb4a8","surfaceDim":"#e4d7d5","surfaceBright":"#fff8f6","surfaceContainerLowest":"#ffffff","surfaceContainerLow":"#fef1ee","surfaceContainer":"#f8ebe9","surfaceContainerHigh":"#f3e5e3","surfaceContainerHighest":"#ede0dd"},"dark":{"primary":"#ffb4a8","onPrimary":"#690100","primaryContainer":"#930100","onPrimaryContainer":"#ffdad4","secondary":"#e7bdb6","onSecondary":"#442925","secondaryContainer":"#5d3f3b","onSecondaryContainer":"#ffdad4","tertiary":"#dec48c","onTertiary":"#3e2e04","tertiaryContainer":"#564419","onTertiaryContainer":"#fbdfa6","error":"#ffb4ab","onError":"#690005","errorContainer":"#93000a","onErrorContainer":"#ffb4ab","background":"#201a19","onBackground":"#ede0dd","surface":"#181211","onSurface":"#ede0dd","surfaceVariant":"#534341","onSurfaceVariant":"#d8c2be","outline":"#a08c89","outlineVariant":"#534341","shadow":"#000000","scrim":"#000000","inverseSurface":"#ede0dd","inverseOnSurface":"#362f2e","inversePrimary":"#c00100","surfaceDim":"#181211","surfaceBright":"#3f3736","surfaceContainerLowest":"#120d0c","surfaceContainerLow":"#201a19","surfaceContainer":"#251e1d","surfaceContainerHigh":"#2f2827","surfaceContainerHighest":"#3b3332"}}

I think the JS object (instead JSON) is more "usable". Don't you? What do you think?

I think the output can return always a JS object like:
// as js object
{
  dark: {
    primary: null,
    onPrimary: null
    ...
  },
  light: {
    primary: null,
    onPrimary: null
    ...
  }
}

// as css variables
{
  dark: "--primary: null; --on--primary: null;...",
  light: "--primary: null; --on--primary: null;..."
}

Or we can pass something like:
// to return light theme
material-dynamic-colors "#FF0000" json|css|js light

// to return dark theme
material-dynamic-colors "#FF0000" json|css|js dark

In this case, the result can be a "pure output format" too.

I think the JS object (instead JSON) is more "usable". Don't you? What do you think?

Yes, and if JSON is absolutely needed a simple JSON.stringify() of the JS output will do the trick. So nothing to change I think.


hamcrest v2.2

Upgrade to hamcrest v2.2 from v1.3

@nhojpatrick
Again, please stop creating pull requests for version updates, we have Dependabot for that. If a component you care about does not support Dependabot, then provide a PR that adds Dependabot.
TY.


Upgrade web app to Patternfly 5

Depends on https://github.com/apache/camel-karavan/issues/833

Can't pass actions build because of https://github.com/patternfly/patternfly-react/issues/9466

@mgubaidullin
https://github.com/patternfly/patternfly-react/issues/9466 has been released as a patch and is included in the following promoted patternfly versions!
@patternfly/patternfly: 5.0.4
@patternfly/react-charts: 7.0.1
@patternfly/react-code-editor: 5.0.1
@patternfly/react-core: 5.0.1
@patternfly/react-icons: 5.0.1
@patternfly/react-styles: 5.0.1
@patternfly/react-table: 5.0.1
@patternfly/react-tokens: 5.0.1
Please let me know if you're still seeing the issue!

Thanks @nicolethoen


New jupyter notebooks for exchange contract family

ignificant update for the Jupyter notebooks in the
exchange contract family. Notebooks added for creating
and importing orders, for interacting with an issuer
as an account holder, and for kick starting the factories
there is a new index file.
To make all this work, this update adds an experimental
file format for sharing contract information. The file
uses the python zip library (distributed with python)
to package the PDO files and the context files.

Updated in #17.


bug: [Intervention] Ignored attempt to cancel a touchmove event with cancelable=false, for example because scrolling is in progress and cannot be interrupted.#ion-slides

my ionic Info:
Ionic:
Ionic CLI                     : 6.0.0 (/usr/lib/node_modules/@ionic/cli)
Ionic Framework               : @ionic/angular 4.11.10
@angular-devkit/build-angular : 0.803.25
@angular-devkit/schematics    : 8.1.3
@angular/cli                  : 8.1.3
@ionic/angular-toolkit        : 2.2.0
Capacitor:
Capacitor CLI   : 1.5.1
@capacitor/core : 1.5.1
Cordova:
Cordova CLI       : 9.0.0<EMAIL_ADDRESS>Cordova Platforms : none
Cordova Plugins   : no whitelisted plugins (1 plugins total)
Utility:
cordova-res : not installed
native-run  : 0.3.0
System:
Android SDK Tools : 26.1.1 (/home/developer/Android/Sdk)
NodeJS            : v10.19.0 (/usr/bin/node)
npm               : 6.13.4
OS                : Linux 4.15
Current behavior:
ionic slides working properly in chrome browser but when i use to andriod device its not working properly..what happening looping is not working..
Expected behavior:
i need to slides are looping properly
Steps to reproduce:
Run the code to the android device .
then use chrome inspect .
use this url : chrome://inspect.
now you can see the error.
Related code:
This my code..
.html
<ion-slides pager="true" [options]="slideOpts" >
<ion-slide *ngFor="let slider of slideimage;">

<img src="{{slider}}" title="title">

.ts
slideOpts = {
initialSlide: 1,
loop:true,
speed: 400,
passiveListeners: false,
centeredSlides: true,
preloadImages:true,
autoplay: true,
};
You can see it via :https://stackblitz.com/edit/ionic4-slides?embed=1&file=pages/home/home.ts

Thanks for the issue. Is there a particular bug you are running into? The screenshot you posted appears to be broken and the StackBlitz does not seem to exist.

yes..sir,
now i update the link..you can see it now

Thanks for the issue. It looks like you are using Ionic 3 in this code reproduction. We are no longer actively developing Ionic Framework v3. We recommend you update to the latest version of Ionic Framework.

No sir, i have used ionic 4 version,
Ionic CLI : 6.0.0 (/usr/lib/node_modules/@ionic/cli)
Ionic Framework : @ionic/angular 4.11.10
@angular-devkit/build-angular : 0.803.25
@angular-devkit/schematics : 8.1.3
@angular/cli : 8.1.3
@ionic/angular-toolkit : 2.2.0

Please provide a reproduction of the issue using Ionic 4/5.
The StackBlitz you provided is using Ionic 3:


Customer using custom connector and in the new designer facing this issue "Invalid connection, please update your connection to load complete details"

Describe the Bug with repro steps
The same connector functions correctly in the legacy system

Legacy designer

What type of Logic App Is this happening in?
Consumption (Portal)
Which operating system are you using?
Windows
Are you using new designer or old designer
New Designer
Did you refer to the TSG before filing this issue? https://aka.ms/lauxtsg
Yes
Workflow JSON
No response
Screenshots or Videos
No response
Browser
All browsers
Additional context
No response

Requested a workflow json from the customer

closing for: https://github.com/Azure/LogicAppsUX/issues/5787

Workflow from the customer
{
"definition": {
"$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
"actions": {
"For_each_-invoice": {
"actions": {
"Condition-check_whether_to_send_email": {
"actions": {
"Send_an_email(V2)": {
"inputs": {
"body": {
"Attachments": [
{
"ContentBytes": "@{base64(body('HTTP_GET_-Invoice_Details'))}",
"Name": "@{concat(items('For_each-invoice'),'.xml')}"
}
],
"Body": "Attached invoice for @{items('For_each-invoice')}",
"Importance": "Normal",
"Subject": "la-ovt-OI-DO2-usw2 - Invoice XML - @{items('For_each-invoice')}",
"To": "@parameters('email_recipient')"
},
"host": {
"connection": {
"name": "@parameters('$connections')['office365']['connectionId']"
}
},
"method": "post",
"path": "/v2/Mail"
},
"runAfter": {},
"type": "ApiConnection"
}
},
"expression": {
"and": [
{
"equals": [
"@parameters('send_email')",
true
]
}
]
},
"runAfter": {
"HTTP_GET-Invoice_Details": [
"Succeeded"
]
},
"type": "If"
},
"HTTP_GET-Invoice_Details": {
"inputs": {
"authentication": {
"audience": "@parameters('apiManagerAuthAudience')",
"type": "ManagedServiceIdentity"
},
"headers": {
"Content-Type": "application/json",
"Host": "@parameters('ApiManagerURL')",
"Ocp-Apim-Trace": "false"
},
"method": "GET",
"uri": "https://@{parameters('ApiManagerURL')}/open_invoice/usa/invoices-xml/@{items('For_each-invoice')}"
},
"runAfter": {},
"type": "Http"
},
"Receive-Push_to_Legacy_DO2_System": {
"inputs": {
"body": "@body('HTTP_GET-Invoice_Details')",
"headers": {
"Content-Type": "application/xml"
},
"host": {
"connection": {
"name": "@parameters('$connections')['lacc-ovt-d365-finance-Invoice-Receipt-LegacyService-usw2_1']['connectionId']"
}
},
"method": "post",
"path": "/Receive"
},
"runAfter": {
"Condition-_check_whether_to_send_email": [
"Succeeded"
]
},
"type": "ApiConnection"
}
},
"foreach": "@parameters('InvoiceIDs')",
"runAfter": {},
"type": "Foreach"
}
},
"contentVersion": "<IP_ADDRESS>",
"outputs": {},
"parameters": {
"$connections": {
"defaultValue": {},
"type": "Object"
},
"ApiManagerURL": {
"defaultValue": "apim-ovt-tst-uw2.azure-api.net",
"type": "String"
},
"InvoiceIDs": {
"defaultValue": [
],
"type": "Array"
},
"apiManagerAuthAudience": {
"defaultValue": "api://fb533134-4c5d-4249-851a-101d399b727c",
"type": "String"
},
"email_recipient": {
"defaultValue"<EMAIL_ADDRESS>"type": "String"
},
"send_email": {
"defaultValue": false,
"type": "Bool"
}
},
"triggers": {
"Recurrence": {
"evaluatedRecurrence": {
"frequency": "Week",
"interval": 1
},
"recurrence": {
"frequency": "Week",
"interval": 1
},
"type": "Recurrence"
}
}
},
"parameters": {
"$connections": {
"value": {
"lacc-ovt-d365-finance-Invoice-Receipt-LegacyService-usw2_1": {
"connectionId": "/subscriptions/51780b97-491d-46c9-8c7a-c99ddb366b83/resourceGroups/rg-ovt-d365-integration-tst/providers/Microsoft.Web/connections/lacc-ovt-d365-finance-Invoice-Receipt-LegacyService-usw2-1",
"connectionName": "lacc-ovt-d365-finance-Invoice-Receipt-LegacyService-usw2-1",
"id": "/subscriptions/51780b97-491d-46c9-8c7a-c99ddb366b83/resourceGroups/rg-ovt-d365-integration-tst/providers/Microsoft.Web/customApis/lacc-ovt-d365-finance-Invoice-Receipt-LegacyService-usw2"
},
"office365": {
"connectionId": "/subscriptions/51780b97-491d-46c9-8c7a-c99ddb366b83/resourceGroups/rg-ovt-d365-integration-tst/providers/Microsoft.Web/connections/office365",
"connectionName": "office365",
"id": "/subscriptions/51780b97-491d-46c9-8c7a-c99ddb366b83/providers/Microsoft.Web/locations/westus2/managedApis/office365"
}
}
}
}
}

@rllyy97 @vgouth @Eric-B-Wu  @preetriti1 : We still experience this issue. This is issue is much more serious from today since the legacy designer is not available anymore ! When is deployment of fix planned?

HI @simenums we are taking a look at the issue again. In the meantime, please use this url to use the old designer in consumption: https://portal.azure.com/?microsoft_azure_ema_forceFallbackToOldDesigner=true#home

This issue is fixed in the following PR: https://github.com/Azure/LogicAppsUX/pull/6023.
It will be releasing over the course of the next week


code coverage --> 90%!

Most of this code is testable. Let's write some good tests!

is 83% close enough? hmm...


Undefined constant "Spatie\Backup\Tasks\Backup\SIGINT"

When clicking on "Create Backup" and then on "only DB" (or any other option) it runs endless. In laravel.log I get Undefined constant "Spatie\Backup\Tasks\Backup\SIGINT"?
Running spatie backup from commandline php artisan backup:run works without any problems.

I modified the code in CreateBackUpJob
Artisan::call('backup:run' . $this->option);
And removed everything else
And modified the backups.blade.php  button actions
 <x-filament::button wire:click="create(' --only-db')" color="primary">

 <x-filament::button wire:click="create(' --only-files')" color="warning">

 <x-filament::button wire:click="create()" color="success">

It now works as expected for me at least

This might help you guys.
https://github.com/spatie/laravel-backup/issues/1445

Hi Guys, I found a temporarily solution, I extended the Backups page class and modify to this
namespace App\Filament\Pages;

use BezhanSalleh\FilamentShield\Traits\HasPageShield;
use ShuvroRoy\FilamentSpatieLaravelBackup\Pages\Backups as BaseBackups;
use Spatie\Backup\Tasks\Backup\BackupJobFactory;

class Backups extends BaseBackups
{
    use HasPageShield;

    public function create(string $option = ''): void
    {
        $backupJob = BackupJobFactory::createFromArray(config('backup'))->disableSignals();

        if ($option === 'only-db') {
            $backupJob->dontBackupFilesystem();
        }

        if ($option === 'only-files') {
            $backupJob->dontBackupDatabases();
        }

        if (! empty($option)) {
            $prefix = str_replace('_', '-', $option).'-';

            $backupJob->setFilename($prefix.date('Y-m-d-H-i-s').'.zip');
        }

        $backupJob->run();

        $this->dispatchBrowserEvent('close-modal', ['id' => 'backup-option']);

        $this->notify('success', __('filament-spatie-backup::backup.pages.backups.messages.backup_success'));
    }
}

Thank you for your solution. Spatie should fix this because it is as a bug on Windows OS without supporting SIGNAL.
Above MarJose123 should be fine as hot fix because Backup runs fine with command line mode on the Windows OS.
You can disable SIGNAL option at file vendor/spatie/laravel-backup/src/Tasks/Backup/BackupJob.php after run func by adding $this->disableSignals();, but you will need to override again after new update from this backup package if it is not fixed yet.

I've added this on post-autoload-dump section of composer.json:
"sed -i 's/\$signals = true;/\$signals = false;/g' vendor/spatie/laravel-backup/src/Tasks/Backup/BackupJob.php"
I don't get why but it seems that the library should call php-cli and is not doing it

This is also not working on a Linux Machine. Tried this on a server hosed on Ploi and RunCloud same issue.
php artisan backup:run on CLI will work without an issue. Only via the GUI the job will be pushed to the queue as Sync. And will never run.

https://github.com/shuvroroy/filament-spatie-laravel-backup/pull/55 This solution looks good to me.


bug: windows 11 LoveRun not working

Did you check docs and existing issues?

[X] I have read all the plugin docs
[X] I have searched the existing issues
[X] I have searched the existing issues of plugins related to this issue

Neovim version (nvim -v)
0.10
Operating system/version
Windows 11
Describe the bug
running :LoveRun command does nothing. Love is on my PATH, i can run love and it launches default project. Lua language server is running.
Steps To Reproduce

run :LoveRun

Expected Behavior
Should launch project

Here is the  image. After i press Enter, nothing happens. I have looked up the task manager to whether it launched in the background but it didnt launched in background as well, so nothing happened.

If I Drag & Drop my project folder onto love.exe, it launches successfully.

init.lua love section:
  require('lspconfig').lua_ls.setup{}
  require'love2d'.setup{
    path_to_love_bin = "C:/Program Files/LOVE/love.exe",
    path_to_love_library = "",
    restart_on_save = false,
  }

.luarc.json:
  {
    "runtime.version": "Lua 5.1",
    "color.mode": "SemanticEnhanced",
    "hint.enable": true,
    "hint.setType": true,
    "IntelliSense.traceBeSetted": true,
    "IntelliSense.traceFieldInject": true,
    "IntelliSense.traceLocalSet": true,
    "IntelliSense.traceReturn": true,
    "runtime.special": {
        "love.filesystem.load": "loadfile"
    },
    "workspace.library": [
        "${3rd}/love2d/library"
    ]
  }

If i run with :!love.exe ., it works:

I'm not on Windows, so I can't reproduce your setup, but my guess is that path_to_love_bin isn't pointing to the right location.
The love.exe is launched by vim.fn.jobstart at this line. Maybe if love.exe is already in your $PATH, you could try setting path_to_love_bin="love.exe".
By the way, does Windows use / or \ as the path separator?

setting the path_to_love_bin="love.exe" solved the problem, thanks <3


Support for Python 2.6

I know Python 2.6 is old, but in the project that I working on we still use Python 2.6
I was able to port it to Python 2.6, it was not that difficult, most of the changes are related to init "set" datatypes. Would it be useful if I make a pull-request for it?

Python 2 hit EOL half a year ago. https://www.python.org/doc/sunset-python-2/
I'm not the maintainer here, but I strongly recommend you move your project to Python 3.

Actually, we are going to remove python 2 support in the next year.


Flow should optimize away render target switches when the same effect can be achieved via paint options.

Render target switches caused by SkCanvas::saveLayer are expensive on lower end devices. These are typically introduced by flow when there is an opacity layer or clip. However, there are many cases where only a single item (such as an image at a custom opacity) is rendered in this target. In such cases, the paint options (such as one expressing the opacity of the image) can be used to achieve the same effect.
flow should look for such optimizations.

cc @liyuqian @chinmaygarde is this still relevant?

While there has been progress made on eliding render target switches introduced by the engine itself, there is a lot more to be done on this front. Currently, the opaqueness of the SkPicture presented to the engine hinders its capability to determine if the operation is a group opacity. We should be be able to affect such optimizations once we move to our picture format. Till then, this issue should be kept open.

@chinmaygarde : is there an issue that tracks the creation of our own picture format? The last news I knew is that Skia sent us https://source.corp.google.com/aosp-android10/external/skia/src/core/SkLiteDL.h

Deduping this against https://github.com/flutter/flutter/issues/92874 which is more up to date now


”Răstolița” is listed in the drop-down menu

Description:
"Răstolița" is listed in the drop-down menu alongside its corresponding county and commune, according to the law.
Precondition:
The website is up an running.

Step 1
Type "Răstolița" in the search bar.

Expected results
The location is listed in the drop-down menu as "Comuna Răstolița, MUREȘ".


[SE-15] Add audit logging utility, add admin-ui audit log

Summary
Adds a simple audit event logging utility that features can use to provide an audit log. Audit logs are saved as Sync maps named per-feature. The items saved to the log have a TTL configured per the audit_log_ttl common config setting, which can be set via admin-ui / flex-config.
Updated the admin-ui feature to utilize the new audit logging util to save events for worker config and global config changes.
Checklist

[x] Tested changes end to end
[x] Updated documentation
[x] Requested one or more reviewers

@dremin Would it be helpful to include a note in the audit logs on how to view the Sync Map data in the Twilio Console, as well as a link to the Sync Map API docs? Some customers new to Sync may not be aware of how to view / fetch the data once it's logged.

@dremin What are your thoughts on using a Sync List instead of Sync Map, in order to retain order of the events and perhaps make it more predictable to retrieve the most recent audit items from the list?

@dremin Would it be helpful to include a note in the audit logs on how to view the Sync Map data in the Twilio Console, as well as a link to the Sync Map API docs? Some customers new to Sync may not be aware of how to view / fetch the data once it's logged.

Good idea, done!

@dremin What are your thoughts on using a Sync List instead of Sync Map, in order to retain order of the events and perhaps make it more predictable to retrieve the most recent audit items from the list?

I can't think of a good reason not to do this. Switched to lists!


Update Util.php

Fix for error "implode(): Passing glue string after array is deprecated. Swap the parameters"

Duplicate of https://github.com/coinbase/coinbase-commerce-php/pull/18


Invalid time axis of ISO strings gets lost

Reported by steven c hankin on 21 Dec 2010 22:59 UTC
In this data set Ferret recognizes that the time axis is invalid and substitutes an array of indices BUT it does not off the string variable array as a dependent variable (as it should):
yes? use "http://oos.soest.hawaii.edu/thredds/dodsC/hioos/satellite/dhw"
 *** NOTE: If no missing_value or _FillValue attribute on variables, will use NaN
yes? show data
     currently SET data sets:
    1> http://oos.soest.hawaii.edu/thredds/dodsC/hioos/satellite/dhw  (default)
 name     title                             I         J         K         L
 TIME                                      ...       ...       ...       1:1042
 CRW_DHW  Twice-weekly global 50km satell  1:720     1:331     ...       1:1042
 CRW_HOTSPOT
          Twice-weekly global 50km satell  1:720     1:331     ...       1:1042
 CRW_SST  Twice-weekly global 50km satell  1:720     1:331     ...       1:1042
 CRW_SSTANOMALY
          Twice-weekly global 50km satell  1:720     1:331     ...       1:1042
 SURFACE_FLAG
          Pixel characteristics flag arra  1:720     1:331     ...       1:1042

yes? show axis time
 name       axis              # pts   start                end
 TIME                        1042 r   1                    1042
   Axis span (to cell edges) = 1042

The CDL of the time axis looks like this:
> ncdump -h http://oos.soest.hawaii.edu/thredds/dodsC/hioos/satellite/dhw
netcdf dhw {
dimensions:
        latitude = 331 ;
        longitude = 720 ;
        maxStrlen64 = 64 ;
        time = 1042 ;
variables:
        float longitude(longitude) ;
                longitude:long_name = "longitude" ;
                longitude:units = "degrees_east" ;
                longitude:standard_name = "longitude" ;
        float latitude(latitude) ;
                latitude:long_name = "latitude" ;
                latitude:units = "degrees_north" ;
                latitude:standard_name = "latitude" ;
        char time(time, maxStrlen64) ;
                time:_CoordinateAxisType = "Time" ;
                time:standard_name = "time" ;
        short CRW_DHW(time, latitude, longitude) ;
                CRW_DHW:long_name = "Twice-weekly global 50km satellite coral bleaching Degree Heating Weeks" ;
                CRW_DHW:units = "Celsius weeks" ;
...

If Ferret offered the string as a dependent variable as it should, then a function could be used to convert the dates into valid time words.
Migrated-From: http://dunkel.pmel.noaa.gov/trac/ferret/ticket/1777

Comment by ansley.b.manke on 28 Dec 2010 23:19 UTC
So far as I can see, this DOES work as we'd like:
yes? use "http://oos.soest.hawaii.edu/thredds/dodsC/hioos/satellite/dhw"
yes? sho dat
     currently SET data sets:
    1> http://oos.soest.hawaii.edu/thredds/dodsC/hioos/satellite/dhw  (default)
 name     title                             I         J         K         L
 TIME                                      ...       ...       ...       1:1042
 CRW_DHW  Twice-weekly global 50km satell  1:720     1:331     ...       1:1042
 CRW_HOTSPOT
          Twice-weekly global 50km satell  1:720     1:331     ...       1:1042
 CRW_SST  Twice-weekly global 50km satell  1:720     1:331     ...       1:1042
 CRW_SSTANOMALY
          Twice-weekly global 50km satell  1:720     1:331     ...       1:1042
 SURFACE_FLAG
          Pixel characteristics flag arra  1:720     1:331     ...       1:1042

yes? list/L=1:5 time
             VARIABLE : TIME
             DATA SET : Archived Suite of NOAA Coral Reef Watch Operational Twice-Weekly Near-Real-Time Global 50km Satellite Coral Bleaching Monitoring Products
             FILENAME : dhw
             FILEPATH : http://oos.soest.hawaii.edu/thredds/dodsC/hioos/satellite/
             SUBSET   : 5 points (T)
 1   / 1:"2000-12-02T00:00:00Z"
 2   / 2:"2000-12-05T00:00:00Z"
 3   / 3:"2000-12-09T00:00:00Z"
 4   / 4:"2000-12-12T00:00:00Z"
 5   / 5:"2000-12-16T00:00:00Z"

So we could parse the strings in the TIME variable and create a correct time axis. The only thing that's missing is the warning from Ferret that the incoming time axis is invalid.

Modified by ansley.b.manke on 5 Jan 2011 18:26 UTC

Noticed this old ticket.  All it really needs is to have the invalid coordinate axis reported as always when opening the dataset.  Char- or string- typed axes aren't standard.  So it'll say,
           *** NOTE: Axis time is of type char or string
           *** NOTE: A dummy axis of subscripts will be used

The user can then look at the strings in variable "time" and define a corrected time axis.


attachToDocument deprecated and no documented substitute?

Subject of the issue
attachToDocument was deprecated, in favor of attachTo, which is supposed to be more flexible, by allowing any css selector as the mount point.
But what is the actual replacement for attachToDocument: true? attachTo: document.documentElement yields HierarchyRequestError: The operation would yield an incorrect node tree.
Seems like the functionality of attachToDocument was deprecated in favor of something that does not substitute it, but only provides complementary behaviour.
Note that, besides the hierarchy problem, attachTo should be acompanied by wrapper.destroy() at the end. The thing is that this DESTROYS THE NODE to which the wrapper was attached. So, I can attach the element to the body, but the body is going to be destroyed in the call.
What I'm currently doing is adding a dumb routine to each test suite that needs the wrapper to be attached to the dom:

    var node = document.createElement("div");
    node.setAttribute('id', 'app')
    document.body.appendChild(node);

    const wrapper = mount(List, {
      attachTo: '#app'
    }

    ...

    wrapper.destroy()

Needless to say, unless I'm missing something, it would be way easier to not have attachToDocument deprecated.

Hi! Thanks for filling this in.
attachTo does provide a substitute for attachToDocument. https://github.com/vuejs/vue-test-utils/pull/1580  might help.
and AFAIK, attachToDocument also required you to call wrapper.destroy() at the end of the test to make sure a test wouldn't pollute the next one.

The alternative solution requires a lot of boilerplate code though. Creating a div, appending it to the body, then calling attachTo. Makes one miss the good old times of attachToDocument.

Also, the solution there leaves a warning, and one should still add:

    const app = document.createElement('div');
    app.setAttribute('data-app', true);
    document.body.append(app);

So the full boilerplate code for every test that uses, say, a dialog, is something like this:

    const elem = document.createElement('div')
    document.body.appendChild(elem)

    const app = document.createElement('div');
    app.setAttribute('data-app', true);
    document.body.append(app);

So the convenience of the old attachToDocument is still huge.

Also, the solution there leaves a warning, and one should still add

I believe (haven't actually check!) that this is due to Vuetify, which requires a data-app attribute (or wrapping your component under testing with <v-app>).


Cross platform synchro problem

Unable to sync a Macbook pro with a windows 10
Visual Studio Code Version : both 1.25.1
Code Settings Sync Version : 3.0.0
Operating System : MacOs Sierra / Windows 10
Occurs On: Download
Proxy Enabled: No
Gist Id: https://gist.github.com/DavidBabel/4fdb80cd9efd3e711734c3f037b084c2
To Reproduce
Steps to reproduce the behavior:

On a mac, i used vscode for years
I setup code settings sync, and upload successfully to gist
I setup a brand new windows 10 vscode install with the same gist
Extensions installs, but no snippets or settings.json is downloaded/replaced

Expected behavior
The vscode windows 10 files are replaced by the gist ones
Any hint is welcome.

i guess it finally sync but take a very long time and provocate a local conflict to resolve. Did not really understand all this all works

I have the same problem

i guess it finally sync but take a very long time and provocate a local conflict to resolve
Make sure you close the setting.json or all the files that are inside Users folder.


⚠ Bofrost.fr has degraded performance

In e0f4fda, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 1540 ms

Resolved: Bofrost.fr performance has improved in 3599b86 after 7 minutes.


Stop warnings

close #62
This fix corresponds to https://github.com/datachainlab/solidity-protobuf/pull/13

there are no warnings now:
+ npx truffle compile

Compiling your contracts...
===========================
- Fetching solc version list from solc-bin. Attempt #1
✔ Downloading compiler. Attempt #1.
> Compiling ./contracts/Migrations.sol
> Compiling ./contracts/app/ICS20Bank.sol
> Compiling ./contracts/app/ICS20Transfer.sol
> Compiling ./contracts/app/ICS20TransferBank.sol
> Compiling ./contracts/app/IICS20Bank.sol
> Compiling ./contracts/app/IICS20Transfer.sol
> Compiling ./contracts/app/SimpleToken.sol
> Compiling ./contracts/core/IBCChannel.sol
> Compiling ./contracts/core/IBCClient.sol
> Compiling ./contracts/core/IBCConnection.sol
> Compiling ./contracts/core/IBCHandler.sol
> Compiling ./contracts/core/IBCHost.sol
> Compiling ./contracts/core/IBCIdentifier.sol
> Compiling ./contracts/core/IBCModule.sol
> Compiling ./contracts/core/IBCMsgs.sol
> Compiling ./contracts/core/IBFT2Client.sol
> Compiling ./contracts/core/IClient.sol
> Compiling ./contracts/core/MockClient.sol
> Compiling ./contracts/core/types/App.sol
> Compiling ./contracts/core/types/Channel.sol
> Compiling ./contracts/core/types/Connection.sol
> Compiling ./contracts/core/types/GoogleProtobufAny.sol
> Compiling ./contracts/core/types/IBFT2.sol
> Compiling ./contracts/core/types/MockClient.sol
> Compiling ./contracts/core/types/ProtoBufRuntime.sol
> Compiling ./contracts/core/types/gogoproto/gogo.sol
> Compiling ./contracts/lib/Bytes.sol
> Compiling ./contracts/lib/ECRecovery.sol
> Compiling ./contracts/lib/RLP.sol
> Compiling ./contracts/lib/TrieProofs.sol
> Compiling ./contracts/lib/strings.sol
> Compiling openzeppelin-solidity/contracts/access/AccessControl.sol
> Compiling openzeppelin-solidity/contracts/access/IAccessControl.sol
> Compiling openzeppelin-solidity/contracts/token/ERC20/ERC20.sol
> Compiling openzeppelin-solidity/contracts/token/ERC20/IERC20.sol
> Compiling openzeppelin-solidity/contracts/token/ERC20/extensions/IERC20Metadata.sol
> Compiling openzeppelin-solidity/contracts/utils/Address.sol
> Compiling openzeppelin-solidity/contracts/utils/Context.sol
> Compiling openzeppelin-solidity/contracts/utils/Strings.sol
> Compiling openzeppelin-solidity/contracts/utils/introspection/ERC165.sol
> Compiling openzeppelin-solidity/contracts/utils/introspection/IERC165.sol
> Artifacts written to /home/runner/work/yui-ibc-solidity/yui-ibc-solidity/build/contracts
> Compiled successfully using:
   - solc: 0.8.9+commit.e5eed63a.Emscripten.clang


Fix test workflow

A better workflow name would be "Integrate" as i in CI.

Thanks!

Glad to contribute.


update student sections

Upload only works for first time population of the database (seems to work ok, but only if there are no duplicates).
Would like to run with the same list (provided by the registrar) after add date & after drop date.
If a student is not on the list, reassign them to the "drop" section.  If a student is in a different section switch the section.
Also would like webform for manual section addition & section switch (accessible by TAs).  Independent studies are not on the sheet from the registrar, but they are assigned a section (should be on lab sheets).  So these students shouldn't be moved to the drop list.

I guess this involves two changes:

Add control for what section missing students on classlist get moved to (and if they should)
Add new column that reads "manually added/edited" with a control to ignore these students'section if they don't appear in the classlist or just go to a different section without properly switching

Haven't made a webform for section addition or section switch for TAs. Will need to discuss in person best way to implement this.

Editing student->section assignment is on checklist for Issue #122.
Creating/Maintaing course enrollment related to Issue #120.

[ ] Allow TA viewing/grading the homework of a student in grading section assigned to another TA
(right now they can, they just manual edit the username in the URL)  (make it obvious how to)

[ ] Allow TA to enter makeup checkpoint for a student not in their lab section (make it obvious how to)

[ ] Allow TA to sub for and data enter checkpoints for the whole lab section (make it obvious how to)


replace fromId by talkerId, toId by listenerId

fix https://github.com/wechaty/puppet/issues/187

BTW: We should also bump the version of the walnut to v1.18 so that it can be sync with the Wechaty Puppet version.

ok


Can we increase the video recording time to more than 120 seconds?

Hi,
We found the videos recorded with a maximum limit of 120 seconds. Is there any possibility to increase this time. We tried with "idle_video_timeout": "300", parameter by placing it in node.json file but the issue is the node.json file is resetting to its default configuration(which we gave at the time of node creation) while we restart the node .Is there any way to customize the json files (node.json, selenium_grid_extras_config.json)?

@dimacus should:
https://github.com/groupon/Selenium-Grid-Extras/blob/master/SeleniumGridExtras/src/main/java/com/groupon/seleniumgridextras/utilities/threads/video/VideoRecordingThreadPool.java#L40
be:
return startVideoRecording(sessionName, RuntimeConfig.getConfig().getVideoRecording().getIdleTimeout());
?


Workaround for invalid SKImageInfo.PlatformColorType on Linux

Current coverage is 63.47% (diff: 60.00%)

Merging #873 into master will decrease coverage by <.01%

@@             master       #873   diff @@
==========================================
  Files           507        507
  Lines         19428      19432     +4
  Methods        5351       5351
  Messages          0          0
  Branches       2743       2744     +1
==========================================
+ Hits          12332      12334     +2
- Misses         6203       6204     +1
- Partials        893        894     +1

Powered by Codecov. Last update 7cf5040...8014026


Feature request: expose hotkeys for configuration

Maybe we can just recommend in the documentation to fork Morse and tell which files should be edited, to affect the default bindings.
That way there would be no need to implement any funky layered configuration logic.

A long-term goal would be to extract out the text-editor part of Morse into a separate library that Morse can consume. That would allow us to come up with strategies for configurable key-bindings that are independent from Morse. More thought and investigation needs to happen around this kind of move.


Banking Decisions Report May Not Be Reporting For All Duplicates

Look into this.  It may only be reporting for the last duplicate analyzed, or something like this.

Seems like it was reporting results for all schemes it found, including ones that were wiped away because they could merge with others.


Add supports for .env file in sub directories?

Hi, @thenglong can you elaborate on your use case here?
As long as you have a .env.vault file in the directory then you can currently do this.

Thank you my bad!


Support reference style linking

https://github.com/prettier/prettier/pull/3353/files#r153973850
https://daringfireball.net/projects/markdown/syntax#link

This is something we need for the gulp docs.  Not sure if I'll have a chance to dig in but still wanted to follow.


template share?

Hi, thanks for the work! The whole framework is easy to use!
I am reproducing some work in the paper and I want to know the standard rules of building a template, like PIQA and other types of NLP tasks

you can find information about PromptTemplate at tutorial 1 and some examples at example.
for PIQA, The configuration in our paper is as follows (using PPL inference strategy)：
DATASET=load_dataset('piqa')
DATASETREADER=DatasetReader(DATASET, input_columns=['goal', 'sol1', 'sol2'], output_column='label')
TEMPLATE=PromptTemplate(
    {
        0: "</E>Sentence: </G>\n\nChoice </S1>: sol1\n\nChoice </S2>: sol2\n\nWhat is the index of the correct choice for ending for the sentence?\n\nAnswer: sol1",
        1: "</E>Sentence: </G>\n\nChoice </S1>: sol1\n\nChoice </S2>: sol2\n\nWhat is the index of the correct choice for ending for the sentence?\n\nAnswer: sol2"
    },
    column_token_map={'sol1':'</S1>', 'sol2':'</S2>', 'goal':'</G>'},
    ice_token='</E>'
)

note that in our paper we only show the effectiveness of the system. These templates are not necessarily optimal.
generally speaking, there are no standard rules for template construction. You can look at the templates in other papers, or conduct some comparative experiments

Thanks for your reply and suggestions!

set ice_num=8 in TopkRetriever.
for LM, using EleutherAI/gpt-neo-2.7B (or maybe gpt2-xl)
no more details.
There is not much difference between PPL and channel, i think PPL is easier and better in most cases, maybe something else went wrong?

set ice_num=8 in TopkRetriever.
for LM, using EleutherAI/gpt-neo-2.7B (or maybe gpt2-xl)
no more details.
There is not much difference between PPL and channel, i think PPL is easier and better in most cases, maybe something else went wrong?

yes, the code is simple, but I don't know what the problem is...
import os
from datasets import load_dataset
from openicl import DatasetReader, PromptTemplate, TopkRetriever, PPLInferencer, AccEvaluator, VotekRetriever, MDLRetriever, ChannelInferencer

os.environ["CUDA_DEVICE_ORDER"]="PCI_BUS_ID"
os.environ["CUDA_VISIBLE_DEVICES"]="2"         # specify the GPU you want to use
ice_num = 8
print("ice_num:", ice_num)

# Loading dataset from huggingface
dataset=load_dataset('piqa')
data=DatasetReader(dataset, input_columns=['goal', 'sol1', 'sol2'], output_column='label',test_split='test')
template=PromptTemplate(
    {
        0: "</E>Sentence: </G>\n\nChoice </S1>: sol1\n\nChoice </S2>: sol2\n\nWhat is the index of the correct choice for ending for the sentence?\n\nAnswer: sol1",
        1: "</E>Sentence: </G>\n\nChoice </S1>: sol1\n\nChoice </S2>: sol2\n\nWhat is the index of the correct choice for ending for the sentence?\n\nAnswer: sol2"
    },
    column_token_map={'sol1':'</S1>', 'sol2':'</S2>', 'goal':'</G>'},
    ice_token='</E>'
)

retriever = TopkRetriever(data, ice_num = ice_num, index_split='train', test_split='test')

inferencer = PPLInferencer(model_name='gpt2-xl',output_json_filename='piqa-gpt2-xl')

predictions = inferencer.inference(retriever, ice_template=template)

score = AccEvaluator().score(predictions=predictions, references=data.references)

print(score)```

we test on validation set, test set of piqa has no label.
just change your test_split in DatasetReader and Retriever

The result of validation set is around 0.48

sorry for providing you with the incorrect template,please try this one:
template=PromptTemplate(
    {
        0: "</E>\nQuestion: </G>\nAnswer: </S1>",
        1: "</E>\nQuestion: </G>\nAnswer: </S2>"
    },
    column_token_map={'sol1':'</S1>', 'sol2':'</S2>', 'goal':'</G>'},
    ice_token='</E>'
)

I tested it on gpt2-xl, the accuracy  is 73.83%, here is the complete code for you:
import os
from datasets import load_dataset
from openicl import DatasetReader, PromptTemplate, TopkRetriever, PPLInferencer, AccEvaluator, VotekRetriever, MDLRetriever, ChannelInferencer

os.environ["CUDA_DEVICE_ORDER"]="PCI_BUS_ID"
os.environ["CUDA_VISIBLE_DEVICES"]="2"         # specify the GPU you want to use
ice_num = 8
print("ice_num:", ice_num)

# Loading dataset from huggingface
dataset=load_dataset('piqa')
data=DatasetReader(dataset, input_columns=['goal', 'sol1', 'sol2'], output_column='label',test_split='validation')
template=PromptTemplate(
    {
        0: "</E>\nQuestion: </G>\nAnswer: </S1>",
        1: "</E>\nQuestion: </G>\nAnswer: </S2>"
    },
    column_token_map={'sol1':'</S1>', 'sol2':'</S2>', 'goal':'</G>'},
    ice_token='</E>'
)

retriever = TopkRetriever(data, ice_num = ice_num, index_split='train', test_split='validation')

inferencer = PPLInferencer(model_name='gpt2-xl',output_json_filename='piqa-gpt2-xl')

predictions = inferencer.inference(retriever, ice_template=template)

score = AccEvaluator().score(predictions=predictions, references=data.references)

print(score)


Support a date type

Similar to how datetime follows the ISO 8601 format, the date primitive should do the same.
https://en.wikipedia.org/wiki/ISO_8601#Dates

Although the standard allows both the "YYYY-MM-DD" and YYYYMMDD formats for complete calendar date representations, if the day [DD] is omitted then only the YYYY-MM format is allowed.

The proposal would be to add date as a primitive, support YYYY-MM-DD and YYYYMMDD over the wire, and have the generators use types from each programming languages standard library (e.g. datetime.date in Python or java.util.LocalDate in java).

+1

+1

+1

Fern now supports RFC 3339, section 5.6 dates and datetimes https://docs.buildwithfern.com/definition/types
PR: https://github.com/fern-api/fern/pull/1400


TryLoadRunnableWorkflowAsyncResult hides the InstanceCompleted error returned by the LoadInstance stored procedure

The ProcessSqlResult method in the TryLoadRunnableWorkflowAsyncResult class (https://github.com/Microsoft/referencesource/blob/master/System.Activities.DurableInstancing/System/Activities/DurableInstancing/TryLoadRunnableWorkflowAsyncResult.cs) does not return an exception returned by the call to the ProcessSqlResult base method (the LoadWorkflowAsyncResult.ProcessSqlResult method).
The effect is that errors such as System.Activities.DurableInstancing.CommandResult.InstanceCompleted that are returned by the [System.Activities.DurableInstancing].[LoadInstance] stored procedure (it is called by the [System.Activities.DurableInstancing].[TryLoadRunnableInstance] procedure) are not returned by the TryLoadRunnableWorkflowAsyncResult.ProcessSqlResult method. This leads to a situation where the WorkflowApplication.GetRunnableInstance method called by user's code throws InstanceNotReadyException instead of InstanceCompleteException.
The problem is the GetRunnableInstance method throws InstanceNotReadyException also when there are valid instances in the [System.Activities.DurableInstancing].RunnableInstances table. It is enough to have one invalid instance in the RunnableInstances table (e.g. an instance that has its IsCompleted field set to 1) to block retrieving process instances by the GetRunnableInstance method. Removing such invalid instance from the RunnableInstances table "unblocks" the other valid instances -- they are returned by the GetRunnableInstance method again.
I removed the "invalid" instance from the RunnableInstances table manually. Assuming that GetRunnableInstance method would throw the InstanceCompleteException there still would have to be some way remove such instance programatically from the runnable instances store. Perhaps the [System.Activities.DurableInstancing] stored procedures would need to do it in case when they find out an "invalid" instance in the RunnableInstances table.
In order to work this problem around I modified one of the [System.Activities.DurableInstancing] stored procedures -- [LoadInstance] -- to delete a completed instance from the RunnableInstances table.

@gesmaks  If you are having issues with the Full .NET Framework or .NET Runtime, the best way to file a bug is at Connect (http://connect.microsoft.com/VisualStudio) or through Product Support (https://support.microsoft.com/en-us/contactus?ws=support) if you have a contract.


Changelogs with the same order

When some changelogs have the same order it should be better to consider them as the same changelog. I mean sort and apply their chansets together instead of applying the whole changelogs in random order. It would allow to group different kinds of changesets (i.e. by profiles) in separate changelog files.

I don't understand the gain of applying your proposal, but in readme you've got section dedicated to Spring profiles.


[PE-D][Tester B] User guide did not state @, # and other special symbols are allowed in telegram handles for a particular entry

As per mentioned in the title above.

However, one is allowed to add special symbols in the telegram handle for a particular entry.

This can be a potentially serious issue as I don't think other special symbols are allowed in a telegram handle other than '@'.

Labels: type.DocumentationBug severity.Low
original: Johnchiahk/ped#8

Duplicate of #202


Signature disappear when zooming in with both fingers on Edge tablet

After signing when the user zoom in using touch on tablet running Edge browser, the signature disappear.

I don't have a tablet with Edge, but I suspect you're updating size of the canvas on resize event. It's possible that zooming in is triggering this event and that's why the canvas is cleared. You might try to listen to orientationchange event instead, or disable zooming on the page with the canvas.

yes i am updating canvas size on window resize why would it clear the canvas?
Thanks

It's how canvas element works - changing its "internal" size via height or width clears the whole thing. There are many issues about the same subject already.
The main solutions are - switch to orientationchange event or store content of the canvas changing canvas size in resize handler and then draw stored image after resizing, though it might be blurry.

Thanks, I will go for option 3

switched to orientation change event the pad still appear weird when sign although it doesnt clear signature anymore.
The below method works for me.
`
var cacheOrientation;
function resizeCanvas() {
if (cacheOrientation != window.orientation) {
cacheOrientation = window.orientation;
var ratio = Math.max(window.devicePixelRatio || 1, 1);
canvas.width = canvas.offsetWidth * ratio;
canvas.height = canvas.offsetHeight * ratio;
canvas.getContext("2d").scale(ratio, ratio);
signaturePad.clear();

}
}
window.onresize = resizeCanvas;
resizeCanvas();`


Remove id from the serialized object.

I saw here than there is an __id__ attribute assigned to the object. In my case, this cause an error on the server side because this is not a valid attribute. To fix it, I did this code :
import DS from 'ember-data';
import SaveRelationshipsMixin from 'ember-data-save-relationships';

export default DS.JSONAPISerializer.extend(SaveRelationshipsMixin, {
  serializeRecord(obj) {
    const serialized = this._super(...arguments);
    delete serialized.attributes.__id__;
    return serialized;
  }
});

And it seems to works well. I think it's safe to remove it in the addon. What do you think?

Sorry, I didn't saw the not. I close this issue.


remove unused mixin class

composable._seq_loader is no longer being used and should be deleted.

@GavinHuttley
This issue fixed and text "Fixed #1098" was in the commit title, but it is not closed automatically.

@Nick-Foto  Well that's annoying! In the next case, try <main commit message>, fixed #<isssue num>


Add adm tables

Integration test logs

Logs
Add passing integration test logs here

Example query results

Results
Add example SQL query results here (please include the input queries as well)

Thanks for the code for the new tables @scotti-fletcher, apologies for the delayed review.
We have addressed the merge conflicts and the doc formatting issues in https://github.com/turbot/steampipe-plugin-oci/pull/509
Thanks once again for the contribution 👍.


Implement lbaas-loadbalancer-stats command

Add support for returning load balancer stats:
active_connections
bytes_in
bytes_out
total_connections

@jlongstaf  as we discussed today here is an example using f5-sdk as is today to get the stats for all pool members.  The stats will be a dictionary after the json() call.
pool = bigip.ltm.pools.pool.load(name=pool_name, partition=pool_partition)
for member in pool.members_s.get_collection():
    resp = bigip._meta_data['icr_session'].get(member._meta_data['uri'] + 'stats')
    stats = resp.json()

@zancas does have the Stat object in his backlog (F5Networks/f5-common-python#293) , but for now you can use the above to make progress.  We can come back as part of phase 2 and refactor to use the new object when it is done.


Create kurum

The file must be a .txt file
Provide the informations of the school
a)the university official website URL, if it is different from the domain you are submitting
b)a URL of a page on the official website where a long-term (>1 year) IT related course is offered by the university
3)a URL of a page or some other proof (.pdf or a screenshot are OK) showing that the university recognizes the domain which you are submitting as an official email domain for the enrolled students.

@dkzver I have to close the request without merging. Please ensure you are familiar with this repository rules located at the bottom of this page and submit a new request with correct information. Thank you for the understanding!


[WIP] Using c++ templates

In Ref #16
Adding functionality of templates. Will be updated with the usage of pointers for faster algorithm.

Nice to see such a quick start!  Please see my comments in #17.  Please remember to write tests to demonstrate that these new methods indeed work with Templates.

I have added the test cases but couldn't test it locally on my laptop. How about we get travis up and running ?

Sure,  we can get Travis CI running, but you and I should definitely be able to test everything locally first. I am looking into the error you reported with dlopen_e in #17.  I think I have seen this before.

I have now built the latest julia-0.6.0 master, tested Cxx.jl and OpenCV.jl, solved several issues relevant to moving this forward.  I will push the commits today and then you can work with the latest version of OpenCV.jl.
In the meantime, I wanted to note that I had already implemented templates for std::vector containers in OpenCV.jl and used them effectively too :)  See OpenCV_util.jl
# C++ std::vector class thin-wrappings for Julia
cxx"""
template <typename T>
    std::vector<T> stdvector(int size, T x)
      {
        std::vector<T> cppvec(size, x);
        return (cppvec);
      }
. . .
"""

I came up with a different approach to deal with this error :

@cxx ptr_val(img, 10, 10)
:1:1: error: no matching function for call to 'ptr_val'
^
__cxxjl_87.cpp:3:11: note: candidate template ignored: couldn't infer template argument 'T1'
inline T1 ptr_val(cv::Mat &img, int row, int col)
^

something like this in src/OpenCV_Mat.jl :
  # Grayscale and binary images
  if (cvtypeval(img) == CV_8UC1)
    @cxx ptr_val<unsigned char>(img, row, col, value);
  elseif (cvtypeval(img) == CV_16SC1)
    @cxx ptr_val<short>(img, row, col, value);
  elseif (cvtypeval(img) == CV_32SC1)
    @cxx ptr_val<unsigned short>(img, row, col, value);
  elseif (cvtypeval(img) == CV_32FC1)
    @cxx ptr_val<float>(img, row, col, value);
  elseif (cvtypeval(img) == CV_64FC1)
    @cxx ptr_val<double>(img, row, col, value);

but this seems not to be supported yet in Cxx .
I get the following error for a sample function :
julia> cxx""" #include <iostream>
       template <typename T>
       inline void Max(int const& a, int const& b){
           T val = 0;
           val += static_cast<T>(a);
           val += static_cast<T>(b);

           std::cout<<val<<std::endl;
       }
       """
true

julia> @cxx Max<int>(2,3);
ERROR: Unrecognized CPP Expression Max < int > (2, 3) (comparison)

Did you try the following?
cxx""" #include <iostream>
       template <typename T>
       inline void _sum(T const& a, T const& b){
           T val = static_cast<T>(0);
           val += static_cast<T>(a);
           val += static_cast<T>(b);
           std::cout<<val<<std::endl;
       }
"""

and this one might be tricky because I am not sure how Cxxhandles   img.at<T>
template <typename T>
inline void ptr_val(cv::Mat &img, int row, int col, T val)
{
    T value = static_cast<T>(val);
    img.at<T>(row, col) = value;
}

Did you try the following?

Yep, that works. The only problem is when we don't specify the type in the arguements list.

Yep, that works. The only problem is when we don't specify the type in the arguements list.

Good to know.  But the question is why do we need specify in advance that you are passing an intor double? I thought the whole point with templates is that you should not need to worry about the type when passing an argument to the function...

Yes, with the implementation of Mat_<_Tp>, we wouldn't need to specify the type. I'm currently working on this.

I'm coming across an unusual error :
when I execute the following (this is test function in test/jl/tests.jl)
function test6()
   println("test 6: Conversion of images from Images.jl to OpenCV Mat")
   filename = joinpath(Pkg.dir("OpenCV"), "./test/images/mandrill.jpg")
   image = load(filename)
   _rows = 32
   _cols = 32
   mat = Mat(_rows, _cols, CV_8UC3)
   # dst = convertToMat(image)
end

test6()

I don't get any errors regarding the constructor for Mat ;
but when I do the following,
function test6()
   println("test 6: Conversion of images from Images.jl to OpenCV Mat")
   filename = joinpath(Pkg.dir("OpenCV"), "./test/images/mandrill.jpg")
   image = load(filename)
   dst = convertToMat(image)
end

test6()

function convertToMat(image)
    img = permuteddimsview(channelview(image), (2,3,1))
    cd = Base.size(channelview(image))[1] > 3 ? 1 : 3
    _rows = Base.size(image, 1)
    _cols = Base.size(image, 2)

    if (typeof(img[1,1,1].i) == UInt8)
       if (cd == 3)
         println(typeof(_rows)) # Int64
         println(typeof(_cols)) # Int64
         mat = Mat(_rows, _cols, CV_8UC3);
       end
end

I get the following error which is something unexpected given that it worked in the above mentioned function call without such error :
:1:1: error: no matching constructor for initialization of 'cv::Mat'
^
/usr/local/include/opencv2/core/mat.inl.hpp:339:6: note: candidate constructor not viable: no known conversion from 'long *' to 'int' for 2nd argument; dereference the argument with *
Mat::Mat(int _rows, int _cols, int _type)
     ^

What could be the problem here?

I don't have access now to my julia/openCV.jl setup, but the error clearly says that long * cannot be used instead of int for the 2nd argument.  To me it seems to suggest that Base.size is returning an Int64 instead of an expected Int32for the covertToMat function to work.  I am not sure if this will fix the error, but can you test mat = Mat(convert(Int32, _rows), convert(Int32, _cols), CV_8UC3);?

mat = Mat(convert(Int32, _rows), convert(Int32, _cols), CV_8UC3);

I had tried that earlier, but there was no luck with that.

OK. Let me try to understand better the problem. Can you check what type exactly does Base.size(image, 1) return in the julia REPL? And if you convert to Int32 using convert, what does it show?

what type exactly does Base.size(image, 1) return

Int64

convert to Int32 using convert

test 6: Conversion of images from Images.jl to OpenCV Mat
ERROR: LoadError: LoadError: MethodError: no method matching Mat(::Int32, ::Int32, ::Int64)
Closest candidates are:
  Mat(::Any, !Matched::Int64, ::Any) at /home/kv/.julia/v0.6/OpenCV/./src/OpenCV_core.jl:368
  Mat(::Any, ::Any) at /home/kv/.julia/v0.6/OpenCV/./src/OpenCV_core.jl:385
  Mat(!Matched::Int64, !Matched::Ptr{Int64}, ::Int64) at /home/kv/.julia/v0.6/OpenCV/./src/OpenCV_core.jl:375
  ...
Stacktrace:
 [1] convertToMat(::Array{ColorTypes.RGB{FixedPointNumbers.Normed{UInt8,8}},2}) at /home/kv/.julia/v0.6/OpenCV/./src/OpenCV_ImagesSupport.jl:17
 [2] test6() at /home/kv/.julia/v0.6/OpenCV/./test/jl/tests.jl:146
 [3] include_from_node1(::String) at ./loading.jl:539
 [4] include(::String) at ./sysimg.jl:14
 [5] include_from_node1(::String) at ./loading.jl:539
 [6] include(::String) at ./sysimg.jl:14
 [7] process_options(::Base.JLOptions) at ./client.jl:305
 [8] _start() at ./client.jl:371
while loading /home/kv/.julia/v0.6/OpenCV/./test/jl/tests.jl, in expression starting on line 149
while loading /home/kv/gsoc/OpenCV.jl/test/runtests.jl, in expression starting on line 6

That's true on a 64-bit CPU; it's Int32 on a 32-bit CPU. Safest is to use Int.

but I don't get any errors while doing
mat = Mat(512, 512, CV_8UC3)
the problem is only when I deduce the size using Base.size() and use it in the function :
mat = Mat(_rows, _cols, CV_8UC3).
I'm unable to figure out why ?

That's true on a 64-bit CPU; it's Int32 on a 32-bit CPU. Safest is to use Int.

What happens when you provide convert(Int, Base.size(img, 1)) and convert(Int, Base.size(img, 2))?

What happens when you provide convert(Int, Base.size(img, 1)) and convert(Int, Base.size(img, 2))?

I get the following error :
:1:1: error: no matching constructor for initialization of 'cv::Mat'
^
/usr/local/include/opencv2/core/mat.inl.hpp:339:6: note: candidate constructor not viable: no known conversion from 'long *' to 'int' for 2nd argument; dereference the argument with *
Mat::Mat(int _rows, int _cols, int _type)
     ^

See comments in http://stackoverflow.com/questions/11511715/opencv-indexing-through-mat-of-unknowna-type.

I found a solution for conversion of image arrays from JuliaImages to Mat using templates and have written wrappers to test it.  The key is to use cv::DataType<T>::type when constructing cv::Mat because otherwise you always need to specify the image type, e.g., CV_8UC1.
I will first commit this tonight, then we can look into the next steps.


Feat: Scraping T-shirts from Flipkart

Describe the feature
I'd scrape the data related to T-shirts from flipkart, which would contain all relevant information about what kind of data it is, and so on.
Add ScreenShots

Record

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

@nikhil25803 please check out my issue request. Thanks!

Go ahead @jaivsh

@nikhil25803 please review this PR, so that i can start working on other issues asap! Thanks!


Remove UNDERFS_ADDRESS PropertyKey

Alluxio Version: 1.8.1
Describe the bug
The UNDERFS_ADDRESS PropertyKey has been deprecated since 1.5.0 and should be removed for version 2.0
To Reproduce
N/A
Expected behavior
N/A
Additional context
N/A

@ZacBlanco can you double check with @aaudiber  as this may be needed for docker environment

Well I wouldn't be surprised if docker uses the UNDERFS_ADDRESS property key but it's marked as deprecated. If we choose to keep it around then it shouldn't be marked as such. Otherwise anywhere that utilizes UNDERFS_ADDRESS should be migrated to using MASTER_MOUNT_TABLE_ROOT_UFS (alluxio.master.mount.table.root.ufs) instead

Docker doesn't require any special handling for UNDERFS_ADDRESS


Does it support close friend adding/removing

Does it support close friend adding/removing?
if so, can you point me at the place with method name.

Hi! No, it does not. As far as I'm aware (from https://developers.facebook.com/docs/instagram-platform/reference), the Instagram API itself does not expose anything in regards to friends or close friends, so there's nothing I can do on this project about it until they add support for it on the API


Implement SPELLS_COST_HEALTH graphics (Cho'gall)

Example: https://www.youtube.com/watch?v=0IhK1Xkj9VU&t=4m33s

Now implemented through {costHealth: true}.