A Wrong Check for the argument in IdenticalPointPosFactFxP

Describe the bug
Function IdenticalPointPosFactFxP tries to ensure the items in FixedPoint[] have the same decimal places. The corresponding lines start at https://github.com/microsoft/QuantumLibraries/blob/025a8126023602cd3c57c2d0e07d1c682954c557/Numerics/src/FixedPoint/Facts.qs#L59
However, the Most will get the array except the last item; it will go wrong when the length of FixedPoint[] is 2, that is, only check the first element to the first element. eg. AddFxP called IdenticalPointPosFactFxP with such a value, the source code is in https://github.com/microsoft/QuantumLibraries/blob/025a8126023602cd3c57c2d0e07d1c682954c557/Numerics/src/FixedPoint/Addition.qs#L41
Rest is proper to replace Most, and it is suggested to check another function IdenticalFormatFactFxP  in the same source file. Hoping my found are helpful to you guys.
To Reproduce
The following program will not get an unhandled exception.
namespace NISLNameSpace {
	open Microsoft.Quantum.Intrinsic;
	open Microsoft.Quantum.Arithmetic;

	@EntryPoint()
	operation main() : Unit {
		use q1 = Qubit[3];
		mutable a = FixedPoint(2, q1);
		use q2 = Qubit[3];
		mutable b = FixedPoint(4, q2);
                let fixedPoints = [a, b];
		IdenticalPointPosFactFxP(fixedPoints);
	}
}

But if replace Most to Rest, it will detect and interrupt.
namespace NISLNameSpace {
	open Microsoft.Quantum.Intrinsic;
	open Microsoft.Quantum.Arithmetic;
	open Microsoft.Quantum.Arrays;
	open Microsoft.Quantum.Diagnostics;

	function IdenticalPointPosFactFxP1(fixedPoints : FixedPoint[]) : Unit {
        if IsEmpty(fixedPoints) {
            return ();
        }
        let (position, register) = fixedPoints[0]!;
        Fact(position > 0, "Point position must be greater than zero.");
        let n = Length(register);
        for fp in Rest(fixedPoints) {
            EqualityFactI(Length(fp::Register) - fp::IntegerBits, n - position,
                "FixedPoint numbers must have identical point alignment.");
        }
    }

	@EntryPoint()
	operation main() : Unit {
		use q1 = Qubit[3];
		mutable a = FixedPoint(2, q1);
		use q2 = Qubit[3];
		mutable b = FixedPoint(4, q2);
                let fixedPoints = [a, b];
		IdenticalPointPosFactFxP1(fixedPoints);
	}
}

System information
operating system : Ubuntu 22.04 LTS
dotnet version : 6.0.301
QDK : 0.27.238334

Fixed in #654.


Add GRIDSS support

I'd like to add GRIDSS support and am happy to provide a PR. Actually getting GRIDSS to run looks relatively straight-forward, but there are some downstream steps that I'm not sure how to handle.
It looks like I'd need to make the following changes:

Update bioconda to latest gridss
Update Dockerfile to add gridss/samtools/bwa
Update parliament2 driver scripts
Add gridssmerge.py

Outstanding issues:

GRIDSS makes a callout to bwa to do assembly realignment. I presume I'll need to add a bwa index preprocessing step, correct?
There is any documentation on the merging script output format? There are a few issues here:

The default full GRIDSS call set is as spammy as Pindel. Should I filter just to high confidence variants as a preprocessing set?
GRIDSS reports all variants in BND notation. I'm not sure exactly what to do to translate the GRIDSS VCF into the combined format. Is there any documentation on the merged format

AFAIK, GRIDSS writes fully spec-compliant VCF. That doesn't look like it'll be much of an advantage as the Manta2merge.py replaced the spec-defined IMPRECISE field with your own PREC one, and if the header is anything to go by, the merged file isn't even a VCF. Is this file different to the survivor merged one, and it'll all be ok?

GRIDSS outputs a number of useful files of various sizes. They range from kb size metrics files, a ~5GB assembly contig BAM, and ~25% of input file size BAM containing all non-reference (SR/SC/OEA/DP) reads genome-wide. Just keep all the outputs, or filter the large files down to the regions reported in the merged output?
GRIDSS reports single breakends. These don't have a partner and can't be converted to bedpe. How do I include these in the combined output?

I'm pretty sure I've done basic misinterpretation of how parliament works. Any pointers would be much appreciated.

Hi Daniel,
I have been curious about adding GRIDSS to Parliament2 as well, but am too constrained to easily make it happen. Here are some thoughts:

You list of changes looks roughly correct.

You will need to add a BWA index for assembly realignment. Given the time that generating a BWA index requires to generate, I would probably do either: a) Initiate the index at the start of the job and then check back later to initiate GRIDSS in the per-chromosome steps when the index is complete. This approach would be good if GRIDSS efficiently multi-threads or if it otherwise can't be correctly run in a per-chromosome manner. b) Include pre-built indices for a few common 37/38 flavors and only re-index if required. c) Just take the performance hit. Note though that we have heavily optimized Parliament2 for speed as one of the major goals is scalability, so if BWA index takes a while it will hurt.

For metrics, I would tar them into a GRIDSS-metrics.tar.gz file and add that as an output to Parliament2. This gives access to the files, but doesn't further inflate the file number.

The SV event uses SURVIVOR to merge. The commands for this should be in the script itself. If you write a valid VCF, SURVIVOR should generally work with it. Let me know if you need more clarity. I would reduce to high confidence events for this.

I am not 100% sure on the best way to incorporate single breakends. I am going to think about this some more.

One important thing not present here is that Parliament2 uses caller overlap to assign confidence based on GIAB truth sets. This is very powerful for filtering events based on which callers make them. We'd need to make a new calibration table with GRIDSS. I think only I have done that so far, but it would be a good thing to democratize that process. This could be a good opportunity for that.

Thanks!


Subscription map updated checking of subscription path

I noticed that mqtt_valid_topic and mqtt_valid_subscription have prefix mqtt_. It isn't required.
Could you remove this?
It seems that those functions are not called. Of course the branch new_wc doesn't contain test_broker.hpp updates. So I've also checked #558. Who calls them?
Is function name and parameter name topic and subscription appropriate?
I use the name topic_filter for wildcard permitted place. For example, topic filter could be topic1, a/+/b, and a/#. In this case, topic_filter is appropriate name.
Note: The current master branch might violate this rule somewhere, but it should be fixed.
I'm not sure the difference between mqtt_valid_topic and mqtt_valid_subscription. The master branch only has mqtt_valid_topic_filter and it is called from compare_topic_filter(). compare_topic_filter() is called from linear search algorithm. I guess that your approach is very different from compare_topic_filter().

After you update #684, if needed, then I will merge it to new_wc. Then move on the next step. The next step means updating test_broker.hpp to replace compare_topic_filter() with trie version. I'm not sure how to gather matched subscriptions using trie.
For example, a client subscribe a/+/c, a/b/c, and a/#. When a publisher (client) publish to a/b/c, then the broker needs to deliver the publish message to a/+/c, a/b/c, and a/# subscriptions.

After you update #684, if needed, then I will merge it to new_wc. Then move on the next step. The next step means updating test_broker.hpp to replace compare_topic_filter() with trie version. I'm not sure how to gather matched subscriptions using trie.
For example, a client subscribe a/+/c, a/b/c, and a/#. When a publisher (client) publish to a/b/c, then the broker needs to deliver the publish message to a/+/c, a/b/c, and a/# subscriptions.

yes, that is possible with the trie.

compare_topic_filter

compare_topic_filter() is called from linear search algorithm. I guess that your approach is very different from compare_topic_filter().

yes, compare_topic_filter is the linear search approach, it is not needed anymore if you use the trie approach

I'm not sure the difference between mqtt_valid_topic and mqtt_valid_subscription.

mqtt_valid_topic should be used when a message is published to a topic. The published topic should be a valid topic (not empty, does not contain \0, and does not contain wildcards).
mqtt_valid_subscription checks whether a subscription is valid. A subscription is allowed to contain wildcards. You named this validate_topic_filter with argument topic_filter, subscription = topic filter

mqtt_valid_subscription = validate_topic_filter and
mqtt_valid_topic = validate_topic_name
you can replace them. mqtt_valid_topic is not used by the trie, the broker should handle this.

Hmm... maybe I understand. Let me clarify.
This is the current master's validate_topic_filter() definition.
https://github.com/redboltz/mqtt_cpp/blob/9bebfc2be1c2cc864394b61c5e2e80c5e63178df/test/test_broker.hpp#L42-L114
And this the current master's validate_topic_name() definition.
https://github.com/redboltz/mqtt_cpp/blob/9bebfc2be1c2cc864394b61c5e2e80c5e63178df/test/test_broker.hpp#L144
They are the  same as mqtt_valid_subscription and mqtt_valid_topic on #684. It that right?
If it is right, then we can remove mqtt_valid_subscription and mqtt_valid_topic  from path tokenizer.hpp.
That means we don't need #684, simply just use the current master's one.
So, I will remove the functions from new_wc branch. Is that OK?
I also want to update the name of mqtt_path_tokenizer to topic_filter_tokenizer.
Then I will let you know.
When I would update #676 and merge to the master, could you implement test_broker.hpp using trie way and create the new PR for that ?

So, I will remove the functions from new_wc branch. Is that OK?
I also want to update the name of mqtt_path_tokenizer to topic_filter_tokenizer.

I prepared #685 it is a replacement of #676 .
@kleunen ,
My plan is

merge #685
close #676

And then, I will ask you to update test_broker.hpp.
It this OK ?

It this OK ?

yes, that sounds OK. I am not sure what you did with the validate filter/topic function, you removed my functions and are using your and @jonesmz updated function ?
I think there was also a comment in the validate function of @jonesmz that UTF-8 matching was required. I am not sure if anything needs to be done to get UTF-8 matching working, the topics are validated on individual byte level. Maybe some tests with UTF-8 characters need in topics and topic_filters should be added.

yes, that sounds OK. I am not sure what you did with the validate filter/topic function, you removed my functions and are using your and @jonesmz updated function ?

Ok I go forward the process.
I've already merged @jonesmz updated function  to the master. We can continue to use them.
For UTF8 checking, we can use https://github.com/redboltz/mqtt_cpp/blob/master/include/mqtt/utf8encoded_strings.hpp#L47 .
But it is no cheap, so check is only work if MQTT_USE_STR_CHECK is defined.
See https://github.com/redboltz/mqtt_cpp/blob/master/include/mqtt/utf8encoded_strings.hpp#L50

For UTF8 checking, we can use https://github.com/redboltz/mqtt_cpp/blob/master/include/mqtt/utf8encoded_strings.hpp#L47 .
But it is no cheap, so check is only work if MQTT_USE_STR_CHECK is defined.

I do think that is required, MQTT specification states strings are UTF-8 encoded, so validation of network input should be done, offcourse ... The performance impact is minimal i would say, not memory allocation in inner loop, just blasting away these instructions is very fast on modern CPU. No locking, no memory allocation performance, these are usually performance killers.

Yes. I think that simple insert validate_contents() function.
If MQTT_USE_STR_CHECK is not defined, then it always returns valid.
User can simply define MQTT_USE_STR_CHECK to UTF8 check.
Some of user uses the broker on closed environment. It might be in the factory. So I mean ob premise case and all of clients are under control. In this case, UTF8 check is redundant. So I provide the option.

Yes. I think that simple insert validate_contents() function.
If MQTT_USE_STR_CHECK is not defined, then it always returns valid.
User can simply define MQTT_USE_STR_CHECK to UTF8 check.
Some of user uses the broker on closed environment. It might be in the factory. So I mean ob premise case and all of clients are under control. In this case, UTF8 check is redundant. So I provide the option.

Yes, but even if all the clients are under control, if you open a TCP/SSL port, someone else beside your clients might connect. But ok, the library focuses now on MQTT client. If you have a MQTT server, i would always recommend enabling this check, and maybe some additional input validation as well ?

Length checking and invalid bit checking are already implemented and always enabled.
I agree recommending define MQTT_USE_STR_CHECK.
NOTE: mqtt_cpp uses positive meaning flags. e.g.) MQTT_USE_TLS. And mqtt_cpp is a header only library so user need to  define them. See https://github.com/redboltz/mqtt_cpp/wiki/Config

This is off topic comment.
I use mqtt_cpp for my proprietary broker. It has authorization and authentication. Client is required subscribe/publish permission for each topic.
And it supports out of UTF8 string like C++ std::string. That means binary data.
For example, user can use binary data in User Property
https://docs.oasis-open.org/mqtt/mqtt/v5.0/os/mqtt-v5.0-os.html#_Toc3901054
I personally think that UTF8 limitation is too much. If I want to use binary data as User Property, I need to do something like base64 encode. MQTT is compared with HTTP. MQTT is more binary oriented.
Anyway, it is my broker story.
mqtt_cpp should provide UTF8 validating functionality and users use it by default.


DNM

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (4a2b531) 70.76% compared to head (d37f371) 70.76%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@           Coverage Diff           @@
##             main     #208   +/-   ##
=======================================
  Coverage   70.76%   70.76%
=======================================
  Files           4        4
  Lines         195      195
=======================================
  Hits          138      138
  Misses         40       40
  Partials       17       17

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Does not display row with too large string

VSCode Version: Code 1.18.1 (929bacba01ef658b873545e26034d1a8067445e9, 2017-11-16T18:32:36.023Z)
OS Version: Windows_NT x64 10.0.14393
Extensions:

Extension
Author (truncated)
Version

jslint
ajh
1.2.1

git-easy
bib
1.9.1

githistory
don
0.2.3

phpunit
ema
2.1.1

prettier-vscode
esb
0.26.0

php-debug
fel
1.12.1

php-intellisense
fel
2.0.1

php-pack
fel
1.0.1

vue-snippets
hol
0.1.5

beautify
Hoo
1.1.1

crane
Hvy
0.3.8

phpcs
ika
0.7.0

sublime-keybindings
ms-
3.0.3

php-docblocker
nei
1.3.2

laravel5-snippets
one
1.3.4

annotator
ryu
0.10.1

JavaScriptSnippets
xab
1.5.0

(1 theme extensions excluded)

I'm editing a CSS file that has a background-image as a base64 image but the editor can not display the entire String (either on the horizontal bar or using the END or the arrows.
Steps to Reproduce:

Download the attached file (example.txt).
Rename the file example.txt to example.css
Open the file (example.txt) with the editor (visual studio code)

Open the file (example.css) with the editor (visual studio code)

Reproduces without extensions: No

Duplicate of #7772


improve documentation

We should list out all of the available methods in the readme, or other documentation. For instance, the quite crucial refreshToken method is not at all discussed here.

Do you have something to start with? I can put some time into that if you can show me some directions


Add Log function util

When we are dealing with real-time code often problems happen. We as developers have to manage such errors in the best way possible to achieve these objectives:

you know what is the problem and wherein the code originated
End-user don't have to see the error
Messages contain useful information
being in production doesn't involve any error reporting by console

I suggest making a reusable function to deal with messages in code.
Checklist

[ ] When in production no console messages are shown (maybe adding a guard over process.env.NODE_ENV == 'production')
[ ] When in production a new entry in the Error DB table should be included
[ ] console.log can be seen in testing and dev environments
[ ] Logs can be of type server or logic, and render, client (default). Uses the function sendError created in THIS PR. Logic being bad code, render being something that breaker app visually , and server something related to client/server communication.
[ ] It have parameters error, location and type.
[ ] returns true if the request succeeded, forcibly console.log if failed and returns false

@Israel-Laguan How is the state of this issue? I remember that you have created a component error boundary

I think this issue requires a rewrite


Create a Geneious plugin of SBOLDesigner

Documentation can be found here: http://www.geneious.com/plugin-development


Use mainline MapLibre GL JS

Use mainline MapLibre GL JS published on NPM instead of the custom tar ball.
The shield rotation pull request https://github.com/maplibre/maplibre-gl-js/pull/716 was merged to main before v2.1.9.
Closes https://github.com/ZeLonewolf/openstreetmap-americana/issues/230.

Here goes nothing!


Prevent sample ID mangling in WGD computation

When reading a file in R via read.table, the default is to convert all column names into syntactically valid identifiers. Identifiers can only start with a letter or a dot, but a dot cannot be followed by a number. To "fix" these column names, read.table will prepend them with an X. Because the column names in the WGD scoring matrix are sample IDs, which could begin with a non-letter character, sample IDs become mangled when scoring dosage biases. This results in fragmented rows in the final QC table generated by 02-EvidenceQC. This commit changes the way the dosage bias scoring script reads the WGD scoring matrix so that sample IDs are not changed.
One assumption of this commit is that all the sample IDs are unique.
Fixes #683

Thanks @CuriousTim, have you tested this script? I don't think you'd need to do a full docker rebuild, but at least testing in a local environment.

I tested the script on a batch with only problematic sample IDs and a batch with both problematic and non-problematic sample IDs. I can do some further testing for only non-problematic sample IDs and more exotic sample IDs. I also have not tested anything downstream.

Those extra tests would be a good idea to rule out any possible regressions. I don't think you need to test downstream in this case, as long as the output looks correct to you.

I tested a batch with all non-problematic IDs and the script works. I also tested sample IDs containing combinations of every single printable ASCII character except space (32) and DEL (127) and the only character that breaks the script is a double quote character, though that can be addressed by passing quote = "" to the read.table() call. However, given the sample ID restrictions of the pipeline, I don't think the script needs to cover those cases.


Add simple tide elevation and current scripts

First, many thanks for bringing a really amazing package to the community!
I am not an expert on tides, and I had not used TMD packages before. When starting with pyTMD, I had a bit of difficulty to do / find documentation / find examples about how to do really simple things (like, given a lon, lat, and time, get tide elevation and currents).
I have written a couple of small notebook "scripts" for getting an "as simple as possible" example of how to use the package (i.e. having just some pyTMD, without the widget etc present in the more advanced notebooks available so far). To make sure I use pyTMD correctly, I also compare with observations for both tide and current.
This results in the two notebooks committed here. I think this may be useful for other users who want a "least complexity example" of how to use pyTMD in a python script, so submitting these to the upstream.
Let me know if you are interested in including this. If yes, could you have a quick look, to triple check I am doing things correctly? :)

hi @jerabaul29,
Looks like you're getting good results in comparison with your tide data. Awesome!
I like the idea of a simple demonstration that has set inputs and outputs. The CI tests actually do something similar to verify that everything is functioning as expected.
Generalizing paths for end users is a sticking point (which is one of the main reasons the current notebooks use widgets). Happy to take suggestions on better ways to handle this. Could just have a raw text input?
I've also thought about switching the documentation include compiled Jupyter notebooks for recipes and tutorials. A bigger change would be to switch to using a Jupyter Book format, which would be similar to CryoCloud's documentation. I go back and forth on if this is a good idea.
Do you want me to work on these notebooks for generalization or do you want to keep tinkering on them?

Thanks :) .
I think (but just my 2 cents, and I may be "wrong", and that may be opinionated, so feel free to disagree with any points you think is wrong / can be improved of course :) ) that:

it could be really useful to have a version of the notebooks and / or some additional file in the package providing modules and functions that include

a high level, n00b end user friendly function take simple inputs (i.e. i) path to the model folder, ii) something like args for lat, lon, time, each of the 3 either a single value or a np array, iii) a specification of what output is needed as a list of strings that is a "sub list" of ["eta", "u", "v"] or something like this), and spits out the corresponding results as an xarray dataset following CF conventions, so it can be used out of the box by many modern tools.
a simple example of how to use this function and comparison with some in-situ measurements like what I did in the notebooks, just to illustrate
making sure that all of the above use fully spelled out / commented code (like "tide_amplitude[type], tide_phase[type], model_bathymetry[type], tide_constituents[type]" instead of one-letter short names that can be obscure to most non expert readers, so that anybody can just look quickly in the function and understand what is what in it :) ).

I think this making such a function available could reduce a lot the barrier to entry to use the package (it took me actually a couple of afternoons to get to these notebooks working well - likely because I am a n00b on these aspects, but still :) ). Having a general high level though simple / convenient API through a single function like described above, would also mean that even if heavy updates happen in the future, you could make this invisible for the user by just providing the same "high level user API". Also providing a few high level functions that provide outputs as xarray datasets is maybe a bit constraining on the user, but makes the output self documented and so much easier to use right / harder to use wrong, and this is becoming a standard in the geophysics projects I see around me :) .
As far as I am concerned these notebooks I pushed do "what I want and need for now", and I do not want to push anything on you and your package, so I think for my personal use that I am happy with the current notebooks. But if you think it can be interesting to look into the directions discussed above, I would be happy to do my best to help (with the caveat that there is no guarantee for responsivity etc, since as everybody I am a bit overbooked :) ).


Oregen Issue?

I don't know if this is supposed to be the case but, if you add nether quartz to an oregen and put dimlet with quarts before the oregen feature, it's supposed to work (according to everything I've read or could actually find) but, if it doesn't why would that be the case? It will not work no matter what I do, I thought it would replace all the oregen stuff with say one type, but, not even that works.

Can you describe exactly what dimlets you used?

And also what version of rftools

I used the oregen dimlet with the material before the feature. its in the default ftb infinity pack not sure which version ill find out. I also used single biome. Material none before controller or whichever ive tried putting oregen and its material first and last in both dimlet total ordering and adjacently

Oh and with single i used magical forest. Im not sure if there are other rules.

Can you take the realized dimension tab out of the builder, hold it in your hand and then shift-right click it. Then copy/paste the information you get there to here.

Okay, I will do it shortly.

I'm experiencing the exact same problem: from my console log: [10:02:48] [Client thread/INFO]: [CHAT] #m188,#L254,T407,#m561,#m529,#m195,#m207,#m562,#m189,#m203,#m191,#m200,f422,C166,B2,s365,s366,s369,s378,s388,M340,e429,S399,t486,X338,X339,X339,X339,X339,X339
[10:02:48] [Client thread/INFO]: [CHAT] §e    World version: 1
[10:02:48] [Client thread/INFO]: [CHAT] §e    Terrain: TERRAIN_FLAT
[10:02:48] [Client thread/INFO]: [CHAT] §e        Base block: Stone
[10:02:48] [Client thread/INFO]: [CHAT] §e        Base fluid: Water
[10:02:48] [Client thread/INFO]: [CHAT] §e    Biome controller: CONTROLLER_SINGLE
[10:02:48] [Client thread/INFO]: [CHAT] §e    Biome: Plains
[10:02:48] [Client thread/INFO]: [CHAT] §e    Feature: FEATURE_OREGEN
[10:02:48] [Client thread/INFO]: [CHAT] §e    Structure: STRUCTURE_NONE
[10:02:48] [Client thread/INFO]: [CHAT] §e    Sun brightness: 1.0
[10:02:48] [Client thread/INFO]: [CHAT] §e    Star brightness: 1.0
[10:02:48] [Client thread/INFO]: [CHAT] §e    Sky color: 1.0, 1.0, 1.0
[10:02:48] [Client thread/INFO]: [CHAT] §e    Fog color: 1.0, 1.0, 1.0
[10:02:48] [Client thread/INFO]: [CHAT] §e    Peaceful mode
[10:02:48] [Client thread/INFO]: [CHAT] §e    Celestial angle: 0.0

You have an oregen feature but you didn't specify any materials for it. You need to put material dimlets right before the oregen dimlet.

I specified 9 different materials before the feature oregen

Ah I see. Ok. I will check what's the problem

http://puu.sh/gx9Zj/a072288997.jpg

Here is a screenshot of the placement of my dimlets (Basicly the Mining age w/ added feature oregen)

Ok, I found the issue. It seems I completely forgot to attach the material modifiers to the generated world after I changed it some time ago. I will fix this for 2.60 (should be out in a few days)


The requested URL returned error: 404 Not Found

trying to work on poise-monit, bundle exec kitchen converge gives me:
-----> Creating <default-centos-6>...
       Bringing machine 'default' up with 'virtualbox' provider...
       ==> default: Box 'opscode-centos-6' could not be found. Attempting to find and install...
           default: Box Provider: virtualbox
           default: Box Version: >= 0
       ==> default: Box file was not detected as metadata. Adding it directly...
       ==> default: Adding box 'opscode-centos-6' (v0) for provider: virtualbox
           default: Downloading: https://opscode-vm-bento.s3.amazonaws.com/vagrant/virtualbox/opscode_centos-6_chef-provisionerless.box
An error occurred while downloading the remote file. The error
       message, if any, is reproduced below. Please fix this error and try
       again.

       The requested URL returned error: 404 Not Found

I think your kitchen-vagrant is out of date. I don't actually use vagrant for my tests so I don't have a ton of experience with using it with my test harness but it's definitely something I want to support.

it's not.

Hmm, can you paste what the generated Vagrantfile looks like? From my reading of the code, it should just have the box set to bento/centos-6. Paging @cheeseplus too.

sure, ./poise-monit/.kitchen/kitchen-vagrant/kitchen-poise-monit-default-centos-6:
Vagrant.configure("2") do |c|
  c.berkshelf.enabled = false if Vagrant.has_plugin?("vagrant-berkshelf")
  c.vm.box = "opscode-centos-6"
  c.vm.box_url = "https://opscode-vm-bento.s3.amazonaws.com/vagrant/virtualbox/opscode_centos-6_chef-provisionerless.box"
  c.vm.hostname = "default-centos-6"
  c.vm.synced_folder ".", "/vagrant", disabled: true
  c.vm.provider :virtualbox do |p|
  end
end

I derp, I was looking at kitchen-vagrant's master branch which is very different. Can you try running it from master?

not tonight i'm afraid.. i.e. https://opscode-vm-bento.s3.amazonaws.com/vagrant/opscode_centos-6.4-i386_provisionerless.box seems to be just there. 6 is ancient, i'd say.

Seth confirmed that there aren't aliases in place for the "latest 6" or "latest 7". You can fix this locally by creating a .kitchen.local.yml file with:
platforms:
- name: ubuntu-12.04
- name: ubuntu-14.04
- name: centos-6.4
- name: centos-7.2


How annotate vertical video

Hello, how annotate vertical video? after upload video stretches to full screen.  Or maybe after annotation all coordinates will be correct.

Sorry, I am not sure I understand you.
Does the video change orientation after upload to CVAT? Or... ?

@bsekachev I have a vertical video, in videoplayers it looks like it should, but in a CVAT it expands (probably due to the fact that the height and width are mixed up)
like this

It looks strange
@azhavoro Could you please take a look?

@lolpa1n could you share a video sample ?

can't, not for public access, but I solved the problem by changing the width and height

@azhavoro
Just for experiment I took a vertical video on my smartphone and uploaded it into CVAT. In CVAT the video is rotated and became horizontal. Is it expected?

@bsekachev Yes, your video stored horizontally with rotate=90 field in the metadata (you can check this with ffprobe tool). Currently it isn't supported, but this PR https://github.com/openvinotoolkit/cvat/pull/2218 should fix this issue.

can't, not for public access, but I solved the problem by changing the width and height

Having the same issue, can you please tell me how you changed the width/height? Not seeing options in CVAT for that. thx!


Add support for .net 4.8

Expected Behavior
.net 4.8 is out, and would like to have psake support builds with the same
Current Behavior
currently there is support for upto .net 4.7.2
Possible Solution
PR attached.
added 4.8 to list of supported frameworks, with msbuild 15.0
Context
We currently use psake for build scripting, and are looking to upgrade to .net 4.8
however, we only can upgrade to .net 4.7.2
Your Environment

Module version used:
Operating System and PowerShell version:

@devblackops When we can wait a new version with this changes?

@devblackops Could you update PS Library, please

@devblackops Could you update PS Gallery, please

Sorry for the long delay!
psake v4.9.0 has been released to the PSGallery, Chocolatey, and NuGet!


Make Google URL more precise

Re-submission of original PR at https://github.com/justdeleteme/justdelete.me/pull/636.

Thanks @tchajed


separate FeatureIO into subclasses

FeatureIO seemed to be a 'swiss army knife' class, so I extracted the common behaviour into a generic class that is then specialized in subclasses. This also greatly improves type information. Sadly we currently cannot 100% guarantee type safety for JSON-like data (so timestamp and metainfo) and geodataframes (due to deprecated pickle functionality). I am considering further specializing json-like featureIO into specific ones for timestamps and metainfo, but it might cause some code duplication, since both are handled very similarly. Open to ideas.

Codecov Report

Merging #441 (2653284) into develop (fd41552) will decrease coverage by 0.04%.
The diff coverage is 89.15%.

@@             Coverage Diff             @@
##           develop     #441      +/-   ##
===========================================
- Coverage    82.74%   82.70%   -0.05%
===========================================
  Files           59       59
  Lines         5535     5561      +26
===========================================
+ Hits          4580     4599      +19
- Misses         955      962       +7

Impacted Files
Coverage Δ

core/eolearn/core/eodata_io.py
91.53% <89.15%> (+0.99%)
:arrow_up:

core/eolearn/core/constants.py
87.67% <0.00%> (-9.59%)
:arrow_down:

Continue to review full report at Codecov.

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


Getting erroneous "you already own this item" when test subscriptions

I have subscribed once with my testing account and received an error code of 110. I have been trying to subscribe again since but keep getting You already own this item error. I have tried the following:

I have waited for more than 12 hours as the testing subscription should automatically end in 30 minutes
I don't see any subscriptions in play store under subscriptions section
I have switched google play store accounts and also have deleted google play store cache
I could see this Test order under Order management and have also refunded this order 12 hours ago
I logged results from listOwnedSubscriptions and only got an empty array

What's causing this and how should I fix it?

I found out what I did wrong. I accidentally created a product rather than a subscription on play console.


Fixes the project detection logic when creating new projects over existing directories.

This all happened because I was trying to be a little too helpful...
Part of the job of the "create" command is to recreate missing pieces of existing projects, and now that the default has changed, I wanted to make it so that if someone had created a default flutter create project before, that they could run a default flutter create there again, and not have it trashed by using the new default template (application) over the old one (app).
This meant I had to detect what type of project it was. Unfortunately, in the past we didn't write anything in the .metadata file to identify the type of project, and since the goal was regenerating missing files, I can't count on anything existing, so it's just a heuristic match.
This simplifies the heuristics down to just detecting the difference between "app" and "application" projects, and only detect the other types if they're explicitly listed in the .metadata file (I changed the code in my original PR to add the project type to the .metadata file). People used to have to specify the type for those anyhow, so it shouldn't be a surprise to users.
So, the main difference in the new heuristics from my last attempt is that if you have a directory that has some other stuff it (like maybe a "plugin" project), then we'll recreate (pronounced "mess up") the project using the "application" template, but that was true before (except it would use the "app" template).
Fixes #22726

LGTM

Looks like gradle_plugin_test is failing after this.


Ad hock selection table not appearing

@QuintinAdam first wanted to say thanks for keeping the most updated version available of spree_flexi. Running into issues when attempting to add Ad Hoc Option Types.
I am able to see the Add Option Type link, however I continue to receive a 500 error on the jquery side of things. My logs themselves do not show anything, but I included a clip of the action and the error I am receiving.
Any advice at all would be appreciated.
Video:
https://monosnap.com/file/lqlwwCpOYs531a66PilfS4jSQqWpvz

I'll see if I can reproduce on my side. Thanks for the video of the issue.

Can't seem to reproduce that error. I tried with option types created and without.
When you get that error, check your rails development logs the 500 error should be coming from rails.
If you could send me that I will be able to help out more. Thanks.

@QuintinAdam probably should of mentioned as well that I am attempting to start this on spree 3.1.0, so I forked and bumped the spree version to 3.1.0.
The logs are actually empty. That's the first placed I checked, it was just the 500 on the jquery side with no response as to why the error happened.

Check out https://github.com/lemuelbarango/spree_flexi_variants/tree/spree-3-1-stable and see if he has done anything to fix this. I'll try and take a look at 3.1.0 tonight.


create an View In Kubernetes badge we can use on github.com

increasingly as folks use more GitOps style approaches; git will contain metadata about what cluster, namespace and resources are being created. So it'd be awesome to make it easy for folks to navigate from a page on github.com (e.g. the project home page) to Octant to view k8s resources inside the cluster.
e.g. if folks are using Jenkins X each cluster has a git repository with a little generated README.md detailing all the helm charts, their version, location, source and URLs to try out web services etc. We could very easily add a 'View in Kubernetes' button to each of these namespaces + deployments so you could quickly view the actual live resources inside kubernetes which would be very cool.
So rather like other badges you can add to your README.md it'd be nice if we could include an octant  view in k8s badge on README.md files that open a k8s context, namespace + resource inside the Octant UI.
This would also be a great way to spread the octant love; as folks might not have heard/know about Octant.
UX
Having a nice snazzy octant logo with a View In Kubernetes text (so folks don't have to know the name Octant but they can gradually learn it through use) with tool tip describing this button opens the octant UI to view k8s resources. Then it's easy to understand what the button does if you maybe haven't heard of octant and folks get used to seeing the octant logo.
Improving the UX if folks have not installed Octant
It would be awesome if clicking the badge to view the k8s resources could take you to a landing page that could tell if you had installed octant + it was running; if not ask the user to install it then redirect again later when it's up. The web page should know the users OS so could probably just show a command line to copy/paste into a terminal to download, install and run octant?
This could be tricky with CORS - maybe this landing page try include some image/css file from the octant URL to know if its running or something?
Then if you have octant and its all setup, clicking the Open In Kubernetes badge would fairly quickly redirect to the link inside the README - say to view the tekton deployment: http://<IP_ADDRESS>:7777/#/overview/namespace/tekton-pipelines/workloads/deployments/tekton-pipelines-controller
If octant isn't installed (or isn't running) the landing page would guide you through a little wizard to download/install/run it, then when its running the View in Octant button would enable itself and you could finally navigate to the lovely octant view.
Handling multiple clusters
To start with we could just link to the actual octant URL - e.g. to view the tekton deployment: http://<IP_ADDRESS>:7777/#/overview/namespace/tekton-pipelines/workloads/deployments/tekton-pipelines-controller
Which if a team only has 1 cluster that could work well. However increasingly teams will have multiple clusters. If you click on the View in Kubernetes button but have never used that k8s cluster before, you'll need to setup the kubectl context so that octant can talk to the cluster.
So eventually having a nice page that knows the cluster you want to view and has a little UI to be able to ensure the kubectl kube context is setup locally + connects OK, then redirects to the octant URL to view it.
So maybe octant needs a little 'context wizard landing page` we can link to which we feed in the k8s context name + details of how to setup the context if its not setup (e.g. what kind of cluster, cloud project, region and whatnot) so that the context can be setup, then redirect to the URL.
e.g. we could maybe add cluster information into the View in Octant link so that octant knows the cluster metadata and could eventually guide users through connecting the cluster.
Maybe simple initial effort could be - we provide octant with the command line you need to run first to setup the context inside kubectl / $KUBECONFIG. e.g. for Google Cloud it'd be something like this & there are equivalents for all the big clouds...
gcloud container clusters get-credentials mycluster --zone europe-west2-b --project myproject

Functionality like this is exactly why we've been investing effort in to our Electron build. Similar to getting a link to a new Slack, Discord, or VS Code extension. We will be able to have a richer integration pattern and provide way less friction for users hoping to visualize and get informed about what is happening with their resources (jobs, deployments, pods, whatever).
I would love to see this ability in Octant.

Functionality like this is exactly why we've been investing effort in to our Electron build. Similar to getting a link to a new Slack, Discord, or VS Code extension. We will be able to have a richer integration pattern and provide way less friction for users hoping to visualize and get informed about what is happening with their resources (jobs, deployments, pods, whatever).
I would love to see this ability in Octant.


Validation over multiple fields

I have a message like this :
message Request {
    repeated NewRequest add = 1;
    repeated RemoveRequest remove = 1;
}

I would like to validate if in the json there's  at least one item of the 2 repeated and if in the json the field is called really add or remove (check for example the camel cases).
{
 "add": [{
 }]
}

and not like this for example:
{
 "Add": [{
 }]
}

At some point, we should consider switching to a more expressive language like https://github.com/google/cel-spec.

Thanks for the mention @moderation. From a language standpoint, Rego is up to the task, but since we don't have a C++ implementation (today), it's probably not a great fit. Perhaps once we finish the Wasm compiler, we could revisit this... :thinking:

Hey! I'm not sure if this has been discussed on here or not, as @htuch mentioned the plan is to include a predicate language that is only evaluated by the plugin (so no issue wrt C++ there @tsandall), the emitted code would be generated from that and would be language implementation specific.
This hasn't quite been prioritized yet, and we haven't shopped around/spec'd what this would look like. Most basic requirement is that the parser has a Go implementation since the plugin is Go. I'd prefer to not roll our own if we can swing it :)

I'm working on open sourcing cel-cpp implementation that implements cel-spec in C++. cel-go has also seen some significant progress recently. There's been some prior art on proto contracts, that we could leverage if you're interested.

In case you didn’t noticed, there is a cel-cpp implementation already under
the google’d umbrella:
https://github.com/google/cel-cpp.
On Thu, 4 Apr 2019 at 21:10, Kuat<EMAIL_ADDRESS>wrote:

I'm working on open sourcing cel-cpp implementation that implements
cel-spec in C++. cel-go has also seen some significant progress recently.
There's been some prior art on proto contracts, that we could leverage if
you're interested.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/envoyproxy/protoc-gen-validate/issues/128#issuecomment-480025808,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACIPlupThN26iOuLKxxJdAgXlFqzlDSWks5vdk4cgaJpZM4ZWI3Z
.

Ignore me, you’re one of those 🤦♂
On Fri, 5 Apr 2019 at 07:13, Gorka Lertxundi<EMAIL_ADDRESS>wrote:

In case you didn’t noticed, there is a cel-cpp implementation already
under the google’d umbrella:
https://github.com/google/cel-cpp.
On Thu, 4 Apr 2019 at 21:10, Kuat<EMAIL_ADDRESS>wrote:

I'm working on open sourcing cel-cpp implementation that implements
cel-spec in C++. cel-go has also seen some significant progress recently.
There's been some prior art on proto contracts, that we could leverage if
you're interested.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/envoyproxy/protoc-gen-validate/issues/128#issuecomment-480025808,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACIPlupThN26iOuLKxxJdAgXlFqzlDSWks5vdk4cgaJpZM4ZWI3Z
.

As per this comment it seems like you more o less decided to use the go parser instead of cel, is it possible to elaborate on this and the reasoning behind that decision?
Using one or the other, and correct if i'm wrong. the idea would be to create an expression associated to the message (no matter it is go or cel), parse in protoc-gen time to obtain the AST of the expression and then generate code on each language based on this AST, right?
Thanks!
/cc @rodaine

That about sums it up, yes :)

@rodaine and what about the first question regarding to the reasoning behind deciding to use go/parser instead of CEL? I would like to start working on this and wanted to know if I should start with one or the other!
Thanks!

I recommended the go parser because it's part of the standard library and does not require any dependencies. The generated code should not have a dependency on whichever expression language is used, so there's no real benefit from my perspective to use a 3rd-party one.

I agree that the generated code should not have a dependency on the expression language, but that's not the only place there's a dependency. Users of PGV are going to have to write expressions in whatever language we choose, and they may not be familiar with Go or CEL. I think it makes sense to adopt a widely used language instead of writing our own DSL, but it would be helpful to see how some illustrative sets of constraints would be expressed in each before making a selection.

Totally agree :)

CEL was designed to evaluate over JSON, proto2, and proto3 messages. Most languages aren't. Also, CEL shares much of its syntax with Go syntax, but this is also true of CEL and any C-like language.
In my prior experience with codegen from CEL, I've found that it can be challenging to map from proto types to runtime specific equivalents, i.e. Java and unsigned ints. Also, it can be slow to add new functions and operator overloads.
There has been some talk of trying to use CEL within Envoy filters. If this were to happen, I would see that as strong motivation for using CEL in PGV. If you're collecting canonical use cases and comparing syntax, I would be happy to help. Also, if there are specific concerns about CEL tooling, I'm pretty flexible when it comes to restructuring the code for speed, ease of use, and dependency footprint.
/cc @kyessenov

Could you consider a middle way? For example, add conditionals as AND/OR. This would solve many use cases without having to implement CEL.

Good news! this is now possible in protovalidate.
syntax = "proto3";

import "google/protobuf/timestamp.proto";
import "buf/validate/validate.proto";

message Transaction {
  google.protobuf.Timestamp purchase_date = 1;
  google.protobuf.Timestamp delivery_date = 2;

  option (buf.validate.message).cel = {
    id: "transaction.delivery_date",
    message: "Delivery date must be after purchase date",
    expression: "this.delivery_date > this.purchase_date"
  };
}


Refactor/migrate to vitest

Basics

[x] I added a line to changelog.md
[x] The PR is rebased with current master.

[x] References to issues, e.g. close #X, are in the commit messages and changelog.
[ ] The buildserver is happy.

Checklist

[x] I have installed and I am using pre-commit hooks
[x] I fully described what my PR does in the documentation
[x] I fixed all affected documentation
[ ] I fixed the introduction tour
[ ] I wrote migrations in a way that they are compatible with already present data
[ ] I fixed all affected decisions
[ ] I added automated tests or a manual test protocol
[ ] I added code comments, logging, and assertions as appropriate
[ ] I translated all strings visible to the user
[ ] I mentioned every code or binary not directly written or done by me in reuse syntax
[ ] I created left-over issues for things that are still to be done
[ ] Code is conforming to our Architecture
[ ] Code is conforming to our Guidelines
[ ] Code is consistent to our Design Decisions
[ ] Exceptions to any guidelines are documented

Review

[ ] I've tested the code
[ ] I've read through the whole code
[ ] I've read through the whole documentation
[ ] I've checked conformity to guidelines

@4ydan The test currently fails because the VITE_BASE_API_URL is not set in the testing environment.
Can you please set it in the build and test stage.

Afaik (implemented in ci/build-scripts/build-frontend.sh see here) VITE_BASE_API_URL is set to / for pr/dev/www. How should it be set?

@markus2330 it was only set for the build step, not for the test step.
I changed the Jenkinsfile and hopefully it works ^^

Still does not work.
I think it has to do with how we set up the environment for vite.
Our approach is currently not the one that is outlined in the docs.
I will try to change it a little bit later today.
https://vitejs.dev/guide/env-and-mode.html#env-variables

@markus2330 @absurd-turtle
The PR should be ready now.
I updated some of the docs regarding the .env files.
Local .env files should be .env.local which are ignored by git.
I needed the .env file checked-in for the testing environment for vite to load them.

@Bushuo thank you, great work! We discussed today in the meeting that we will use this branch and not fix #1038, as there is still a lot of work and too little benefit. @absurd-turtle will start writing the test strategy.


In CSR app, navigateTo (with external:true) redirection from route middleware triggers page script setup

Environment
Nuxi 3.5.2

Operating System: Linux
Node Version:     v16.14.2
Nuxt Version:     3.5.2
Nitro Version:    2.4.1
Package Manager<EMAIL_ADDRESS>Builder:          vite
User Config:      ssr
Runtime Modules:  -
Build Modules:    -

Reproduction
From https://stackblitz.com/edit/nuxt-starter-77e2za?file=README.md, click on Go to foo link on home page.
You can see Hello, foo! blinking on the browser before it gets redirected. Also, you can see the log onMounted: hello, foo! from the console.
Describe the bug
In a CSR application, when using a route middleware to redirect externally from a Nuxt page to another location (by using navigateTo with external: true), the setup script of the page where we apply the middleware is executed whereas it should not be (I believe?). As well as the lifecycle hooks such as onMounted. It's not the case when redirecting to an internal route.
Additional context
No response
Logs
No response

Wonderful!


vCenter monitoring scalability

vCenter monitoring happens on the front-end (cf with KVM where most processing happens in the hosts)

[x] Instrumentalize vCenter monitor to identify bottlenecks
[ ] Refactor to address bottlenecks

https://github.com/OpenNebula/one-ee/tree/vcenter-im-debug


Add files via upload

dou.txt

@Mr-MasterEmmanuel file/lib/domains/ng/edu/dou.txt: this request has an incorrect file path format, please ensure that you are familiar with     this repository rules located at the bottom of this page and change     your request accordingly. If you don't know how to change request, close it and open a new one.     If you are not able to make the pull request according the instructions, please send us an email to<EMAIL_ADDRESS>Please mention this request URL in the message.

@Mr-MasterEmmanuel  I am closing this request as a duplicated to #16164, which is in the review now.


CI is failed in ubuntu14.04.

Issue Description
CI is failed in ubuntu14.04.
Describe what happened:
root@p1:~/pouch/test# go test
_/root/pouch/test
./pouch_cli_create_test.go:25:47: cannot use "github.com/gotestyourself/gotestyourself/icmd".Success (type "github.com/gotestyourself/gotestyourself/icmd".Expected) as type "github.com/alibaba/pouch/vendor/github.com/gotestyourself/gotestyourself/icmd".Expected in argument to command.PouchRun("pull", busyboxImage).Assert
./pouch_cli_create_test.go:38:12: cannot use "github.com/gotestyourself/gotestyourself/icmd".Success (type "github.com/gotestyourself/gotestyourself/icmd".Expected) as type "github.com/alibaba/pouch/vendor/github.com/gotestyourself/gotestyourself/icmd".Expected in argument to res.Assert
./pouch_cli_create_test.go:49:12: cannot use "github.com/gotestyourself/gotestyourself/icmd".Success (type "github.com/gotestyourself/gotestyourself/icmd".Expected) as type "github.com/alibaba/pouch/vendor/github.com/gotestyourself/gotestyourself/icmd".Expected in argument to res.Assert
./pouch_cli_create_test.go:64:12: cannot use "github.com/gotestyourself/gotestyourself/icmd".Success (type "github.com/gotestyourself/gotestyourself/icmd".Expected) as type "github.com/alibaba/pouch/vendor/github.com/gotestyourself/gotestyourself/icmd".Expected in argument to res.Assert
./pouch_cli_create_test.go:72:12: cannot use "github.com/gotestyourself/gotestyourself/icmd".Success (type "github.com/gotestyourself/gotestyourself/icmd".Expected) as type "github.com/alibaba/pouch/vendor/github.com/gotestyourself/gotestyourself/icmd".Expected in argument to res.Assert
./pouch_cli_create_test.go:80:12: cannot use "github.com/gotestyourself/gotestyourself/icmd".Success (type "github.com/gotestyourself/gotestyourself/icmd".Expected) as type "github.com/alibaba/pouch/vendor/github.com/gotestyourself/gotestyourself/icmd".Expected in argument to res.Assert
./pouch_cli_images_test.go:26:47: cannot use "github.com/gotestyourself/gotestyourself/icmd".Success (type "github.com/gotestyourself/gotestyourself/icmd".Expected) as type "github.com/alibaba/pouch/vendor/github.com/gotestyourself/gotestyourself/icmd".Expected in argument to command.PouchRun("pull", busyboxImage).Assert
./pouch_cli_images_test.go:36:43: cannot use "github.com/gotestyourself/gotestyourself/icmd".Success (type "github.com/gotestyourself/gotestyourself/icmd".Expected) as type "github.com/alibaba/pouch/vendor/github.com/gotestyourself/gotestyourself/icmd".Expected in argument to command.PouchRun("images").Assert
./pouch_cli_images_test.go:44:50: cannot use "github.com/gotestyourself/gotestyourself/icmd".Success (type "github.com/gotestyourself/gotestyourself/icmd".Expected) as type "github.com/alibaba/pouch/vendor/github.com/gotestyourself/gotestyourself/icmd".Expected in argument to command.PouchRun("images", "-q").Assert
./pouch_cli_images_test.go:45:59: cannot use "github.com/gotestyourself/gotestyourself/icmd".Success (type "github.com/gotestyourself/gotestyourself/icmd".Expected) as type "github.com/alibaba/pouch/vendor/github.com/gotestyourself/gotestyourself/icmd".Expected in argument to command.PouchRun("images", "--quiet").Assert
./pouch_cli_images_test.go:45:59: too many errors
FAIL	_/root/pouch/test [build failed]
Describe what you expected to happen:
No error
How to reproduce it (as minimally and precisely as possible):
1.git clone https://github.com/alibaba/pouch.git
2.cd pouch/test
3.go test
Anything else we need to know?:
0x04C2
Environment:

pouch version (use pouch version):
APIVersion:      1.24
Arch:            amd64
BuildTime:       2017-12-21T12:04:25.700250747+08:00
GitCommit:
GoVersion:       go1.9.1
KernelVersion:
Os:              linux
Version:         0.1.0-dev

OS (e.g. from /etc/os-release):
NAME="Ubuntu"
VERSION="14.04.5 LTS, Trusty Tahr"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 14.04.5 LTS"
VERSION_ID="14.04"
HOME_URL="http://www.ubuntu.com/"
SUPPORT_URL="http://help.ubuntu.com/"
BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/"

Kernel (e.g. uname -a):
Linux p1 4.4.0-31-generic #50~14.04.1-Ubuntu SMP Wed Jul 13 01:07:32 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

Install tools:
root@p1:~/pouch# go version
go version go1.9.1 linux/amd64

Others:

ping @0x04C2

CheckIng

@sunyuan3 ， would you provide the go env information? It seems the gopath and the vendor is not correct.

My gopath environment is not right. I have corrected this issue. Thank you, @0x04C2 .


gzip websocket message

This should improve the performances especially for the flow requests
This extension could help
https://github.com/gorilla/websocket/commit/a87eae1d6ff562bf944755f4a6f527b6ef6fb888

Performance issues will be addressed in another issues


Anon Threads

As requested by Crow. This is a fairly easy implementation

In order to not distract development, this feature is currently being shelved. This feature may be reconsidered but there is no demand for a feature such as this


APT whitelist request for libvirt-bin

Please add libvirt-bin to the list of installable packages.

Duplicate of #723.


ie11 support

Working with ie11, issue #7 ie11 support

Coverage remained the same at 100.0% when pulling 110118c4d725cbf1cfe8599ce9f3a2b5126abbd4 on felipefreitasffs:master into a1916f640bb115f562150abf89516ab6a8345afa on MMF-FE:master.

I think we should not add a 'dev' tag, which will make the existing code wrong.


Add support for Angular 5.

I'm submitting a ...
[ ] bug report
[ ] feature request
[ ] question about the decisions made in the repository

Do you want to request a feature or report a bug?

What is the current behavior?

If the current behavior is a bug, please provide the steps to reproduce and if possible a minimal demo of the problem via https://plnkr.co or similar.

What is the expected behavior?

What is the motivation / use case for changing the behavior?

Please tell us about your environment:

Angular version: 2.0.0-rc.X
Browser: [all | Chrome XX | Firefox XX | IE XX | Safari XX | Mobile Chrome XX | Android X.X Web Browser | iOS XX Safari | iOS XX UIWebView | iOS XX WKWebView ]

Other information (e.g. detailed explanation, stacktraces, related issues, suggestions how to fix, links for us to have context, eg. stackoverflow, gitter, etc)

This is very vague. I am looking into this plugin to use but am on angular 5. What is the issue it is saying it is having?

I got no errors, when I call toastyService.error it doesn't show notification

I think you must be doing something wrong, as ngx-toastr does work in Angular 5.
You can see it working here - just select Tools menu, Toaster and you can test it out. That framework is using Angular 5.

No, they use different library, it's not ng2-toasty, it's ngx-toastr. I have angular 4 project and it works ok there, but doesn't work in angular 5 project with same setup. It seems this project is dead, so I found alternative

Oh sorry you are right - they used to use this library, but I guessed they switched to ngx-toaste. Apologies.

This project works fine in angular 5.

works fine but complains about dependency on Angular <4
On 9 December 2017 at 11:10, Rickey Ward<EMAIL_ADDRESS>wrote:

This project works fine in angular 5.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/akserg/ng2-toasty/issues/93#issuecomment-350411325,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABN6zhLvjWYKBk1Bg5JR4GCz3lTKipV4ks5s-d4HgaJpZM4QVrmJ
.

--
Damian Dennis
Web Developer and Designer
http://www.damiandennis.com

It works for Angular 5. All you need is to add this html to your app.component.html
<ng2-toasty></ng2-toasty>
This template will not show any Toasty message on app component loaded untill you call this._toastyService.default('Hi there'); from any of your components

Yes it works but its annoying that it complain about the dependency.....
On 17 February 2018 at 20:47, Victor Sanzharevskiy<EMAIL_ADDRESS>
wrote:

It works for Angular 5. All you need is to add this html to your
app.component.html

This template will not show any Toasty message on app component loaded
untill you call this._toastyService.default('Hi there'); from any of your
components
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/akserg/ng2-toasty/issues/93#issuecomment-366432967,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABN6zifCtjO35WRWaEiK5ws4Dz6a-raCks5tVq5NgaJpZM4QVrmJ
.

--
Damian Dennis
Web Developer and Designer
http://www.damiandennis.com


Fix inconsistencies and typos in argument names

This PR should fix issue #15668 .
Note: I mostly changed argument names in header files to match those found in their definition (.cpp), but in some cases I changed them in their definition as well to keep naming consistent across respective files.
I am however not sure how to approach the changes in gdnative_library_editor_plugin.h . I changed *item to *p_item to mirror the naming found in the definition file but this breaks consistency because argument names in the header file (in other functions) do not follow the p_[argument_name] naming convention. I could change the argument name to item in definition but there is a local scope variable with the same name in the function.

I am however not sure how to approach the changes in gdnative_library_editor_plugin.h . I changed *item to *p_item to mirror the naming found in the definition file but this breaks consistency because argument names in the header file (in other functions) do not follow the p_[argument_name] naming convention. I could change the argument name to item in definition but there is a local scope variable with the same name in the function.

CC @Geequlim @karroffel

If this changes GDNative bindings in any way, or will require recompilation of existing GDNative modules built against 3.0.0 I'd much rather not pull this into 3.0.
I'm totally in favor of this for master/3.1 though.

It doesn't modify any bindings, so that should be fine to cherry-pick.

@bcr3ative Could you rebase and amend the comment to do the suggested changes? See PR workflow for rebasing howto.

Rebase and amend done.


[FALSE-POSITIVE]

Domains or links
Please list any domains and links listed here which you believe are a false positive.
https://manaplas.com
More Information
How did you discover your web site or domain was listed here?

Incorrectly marked as Phishing on Phishtank or OpenPhish?

Have you requested removal from other sources?
Please include all relevant links to your existing removals / whitelistings.
No i Don't
Additional context
Add any other context about the problem here.
:exclamation:
We understand being listed on a Phishing Database like this can be frustrating and embarrassing for many web site owners. The first step is to remain calm. The second step is to rest assured one of our maintainers will address your issue as soon as possible. Please make sure you have provided as much information as possible to help speed up the process.
Send a Pull Request for faster removal
Users who understand github and creating Pull Requests can assist us with faster removals by sending a PR to mitchellkrogza/phishing repository, on the falsepositive.list file

https://github.com/mitchellkrogza/phishing/blob/main/falsepositive.list
Please include the same above information to help speed up the whitelisting process.

Any advance?


kind: Schedules does not have same spec as kind: Backup, no Volume to map CaCert

Description
Hi,
I'm trying to apply this manifest:

apiVersion: k8up.io/v1
kind: Schedule
metadata:
name: k8up-mysql-db-2-am
spec:
volumes:
- name: ca-tls
secret:
secretName: REDACTED
defaultMode: 420
backend:
tlsOptions:
caCert: /mnt/ca/REDACTED.crt
volumeMounts:
- name: ca-tls
mountPath: /mnt/ca/
repoPasswordSecretRef:
name: k8up-mysql-restic-repo
key: password
s3:
endpoint: https:/REDACTED
bucket: test
accessKeyIDSecretRef:
name: k8up-mysql-s3-secret
key: ACCESS_KEY_ID
secretAccessKeySecretRef:
name: k8up-mysql-s3-secret
key: SECRET_KEY
backup:
schedule: '*/2 * * * *'
failedJobsHistoryLimit: 5
successfulJobsHistoryLimit: 5
check:
schedule: '0 3 * * 1'
prune:
schedule: '0 3 * * 0'
retention:
keepLast: 7

but it seems that the spec "volume" is missing in the CR.
Error from server (BadRequest): error when creating "schedule-backup.yaml": Schedule in version "v1" cannot be handled as a Schedule: strict decoding error: unknown field "spec.volumes"
im not sure on how to proceed, the almost same CR kind: backup works without issue, if I remove Volumes it does not find the certificate and spawn an error on the operator pod.

apiVersion: k8up.io/v1
kind: Backup
metadata:
name: k8up-mysql-db-first-backup
spec:
volumes:
- name: ca-tls
secret:
secretName: REDACTED
defaultMode: 420
failedJobsHistoryLimit: 2
successfulJobsHistoryLimit: 2
backend:
tlsOptions:
caCert: /mnt/ca/REDACTED.crt
volumeMounts:
- name: ca-tls
mountPath: /mnt/ca/
repoPasswordSecretRef:
name: k8up-mysql-restic-repo
key: password
s3:
endpoint: https://REDACTED
bucket: test
accessKeyIDSecretRef:
name: k8up-mysql-s3-secret
key: ACCESS_KEY_ID
secretAccessKeySecretRef:
name: k8up-mysql-s3-secret
key: SECRET_KEY

thanks
Additional Context
No response
Logs
No response
Expected Behavior
Volumes key inside the CR
Steps To Reproduce
No response
Version of K8up
2.10
Version of Kubernetes
1.28
Distribution of Kubernetes
kind

after digging a lot, I understood that "volumes:" field is a child of "backup:" into the "schedule" resource.
Kind: schedule > backup > volumes:


Problem with Composer

Hello,
i am facing a problem using php client with composer. The Autoloader is unable to load the files.
In composer.json, i have:
"require": {
    "php": "^7.0",
    "guzzlehttp/guzzle": "~6.0",
    "php-http/curl-client": "^2.2",
    "typesense/typesense-php": "^2.0"
},

after first composer install or update, it loads the typesense folder in vendor, till here everything is right.
in PHP :
require_once '../vendor/autoload.php'; // Autoload for composer-packages
use Typesense\Client;
$client = new Client(........................
this will through an error:
Fatal error: Uncaught Error: Class 'Typesense\Client' not found in .........................
i did not find any helpfull information on the internet.
when i looked at the files in typesense\typesense-php\src, e.g. Client.php
in the header it uses the name space  "Devloops\Typesence"
namespace Devloops\Typesence;
use Devloops\Typesence\Lib\Configuration;
Where this Devloops come from ?!
it tried also to execute:
composer dump-autoload -o
then i get an error that typesence Classes does not comply with psr-4 a utoloading standard. Skipping.
any idea how to make it work with php ?
Regards
Wael

i noticed already typing error in the name of  Namespaces in the classes:
in the all files inside the src folders, the namespace include "Typesence" not "Typesense"
i hope it got fixed soon.
but for now i got make it work using the declaration:
use Devloops\Typesence\Client;
Regards
Wael

Hi @waelsy it looks like you're using an old version of the php package, when it was still maintained by @AbdullahFaqeir as part of his company Devloops. We've since adopted his work as an official Typesense library, as of v4. Could you update to the latest version of the php package?

@jasonbosco  you are write .. i did not notice the version number.
Thank you.


1522/post getter

Ticket: #1522
This adds some additional tests and fixes upon #1522

Coverage increased (+0.05%) to 93.724% when pulling ea042a34d27c14c149e5aad2c0272370d37e4318 on 1522/PostGetter into 8865c4228d28a58b1ba512e8fdd42b5741001534 on master.

Coverage increased (+0.05%) to 93.724% when pulling ea042a34d27c14c149e5aad2c0272370d37e4318 on 1522/PostGetter into 8865c4228d28a58b1ba512e8fdd42b5741001534 on master.

Coverage increased (+0.05%) to 93.724% when pulling ea042a34d27c14c149e5aad2c0272370d37e4318 on 1522/PostGetter into 8865c4228d28a58b1ba512e8fdd42b5741001534 on master.

Coverage increased (+0.05%) to 93.724% when pulling ea042a34d27c14c149e5aad2c0272370d37e4318 on 1522/PostGetter into 8865c4228d28a58b1ba512e8fdd42b5741001534 on master.


schnorr signature verification is too slow

nostr_dart uses the bip340 package (v0.0.4) for Schnorr signature verification but I'm finding the performance to be problematic. The UI on an app I'm building with nostr_dart lags pretty bad when the signatures of incoming events are verified.

Added an option in v0.6.4 to bypass signature verification for now.


Vuerouter will cause cross domain problems in individual browsers, but it will no longer affect the operation after packaging

Version
4.0.5
Steps to reproduce
At present, in the mobile terminal, baidu browser app will change

Create a vue3 project arbitrarily, after NPM run serve

In the mobile phone Baidu browser app access, page blank

Add capture error code

Get row and column 0, error null, script error
What is expected?
normal operation
What is actually happening?
Page blank, nothing to access

Please read and follow https://new-issue.vuejs.org/?repo=vuejs/vue-router-next#why-repro


Add confused deputy checks for AWS services

See https://summitroute.com/blog/2019/04/03/advanced_aws_policy_auditing_confused_deputies_with_aws_services/
Add checks for minimally lambda being called by apigateway

In order to do this, I need to compile a list of the confused deputy issues that can exist, and then check for them individually.


What is the correct ALSA setting?

In the Wiki:

You SHOULD be able to execute below commands on terminal.
arecord -d 10 test.wav && aplay test.wav

That fails with:
$ arecord -d 10 test6.wav && aplay test6.wav

Recording WAVE 'test6.wav' : Unsigned 8 bit, Rate 8000 Hz, Mono
arecord: set_params:1299: Sample format non available
Available formats:
- S16_LE

So then I tried with:
$ arecord -d 10 -fS16_LE test6.wav && aplay test6.wav

Recording WAVE 'test6.wav' : Signed 16 bit Little Endian, Rate 8000 Hz, Mono
Warning: rate is not accurate (requested = 8000Hz, got = 44100Hz)
         please, try the plug plugin (-Dplug:default)
Playing WAVE 'test6.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Mono
aplay: set_params:1305: Channels count non available

# but this works:
arecord --device=hw:1,0 --format S16_LE --rate 44100 -c1 -V mono test5.wav

Since I only have an ALSA in ~/.asoundrc, I guess MM never see my settings or they are not right.
What are the settings you have?

As I wrote in Wiki,

If fails, You should find the way to use mic and speaker on your MagicMirror. But I cannot give you a help about that kind of problem.

Because there could be many reasons for not working sound system. I cannot guess which is the real problem. Well, sometimes I failed even in my own systems... :(   I'm not an expert of that kind.
I have no idea how to set properly in your ALSA config. I don't know your types of devices and your current settings. but your problem looks like device number assign problem.
Maybe https://www.raspberrypi.org/forums/viewtopic.php?t=124016 could be a help or at least beginning of solution.

Problem is that I'm able to play but I have no idea how the MMM-Assistant is using the sound devices.

arecord --device=hw:1,0 ....

It means this device is not configured as DEFAULT device, so
$ arecord -d 10 test6.wav && aplay test6.wav

doesn't work.
MM-Assistant use arecord as default recorder  and using it's default setting. so you should find way to set your target device as default device for your RPI.
And you have another options to use rec or sox. (See the record section in full version of configuration)

@eouia  Hi, yeah, I'm working on this now.
Seem different sound related modules, use different ALSA settings. rec works on cli, for me, but I still need to try with Assistant.

Hey @eouia
It's alive!! And its Awesome!
Ok here is the lowdown.

If you are using an external USB soundcard for both your MIC input and SPEAKER output, then the ALSA config has to be like this:

# cat ~/.asoundrc

# To ensure you don't have to specify the default *devices* (like `--device="hw:1,0"`).
pcm.!default {
  type asym
   playback.pcm {
     type plug
     slave.pcm "hw:1,0"
   }
   capture.pcm {
     type plug
     slave.pcm "hw:1,0"
   }
}

# This set the default control options to use *hw* card #1
ctl.!default {
        type hw
        card 1
}

NOTE:  This is surely not the only config that will work for you. As noted above, this config still default to a crappy bit-rate, but since it works, let's keep it simple like this for now.

The other settings are:

# aplay -l && arecord -l

**** List of PLAYBACK Hardware Devices ****
card 1: Set [C-Media USB Headphone Set], device 0: USB Audio [USB Audio]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
**** List of CAPTURE Hardware Devices ****
card 1: Set [C-Media USB Headphone Set], device 0: USB Audio [USB Audio]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

# cat /proc/asound/modules
 1 snd_usb_audio

# cat /proc/asound/cards
 1 [Set            ]: USB-Audio - C-Media USB Headphone Set
                      C-Media USB Headphone Set at usb-3f980000.usb-1.5, full speed

Next, as I said above, rec seem to work better out-of-the-box. But it is a wrapper for sox so you need to ensure you have sox + dependencies installed. Then edit your full MMM-Assistant configuration config.js. To this:
{
  module: 'MMM-Assistant',
  position: 'bottom_left',
  config: {
    assistant: {
      auth: {
        keyFilePath: "secret.json",             // REQUIRED (Google Assistant API) -- OAuth2 x509 cert
        savedTokensPath: "resources/tokens.js"  // REQUIRED (Google Assitant API) -- accesss_token & refresh_token
      },
      audio: {
        encodingIn: "LINEAR16",     // Default. No need to change.
        sampleRateOut: 16000        // Default. No need to change.
      }
    },
    snowboy: {
      models: [
        {
          file: "resources/smart_mirror.umdl",  // This file define your MM wake word. (See doc notes.)
          sensitivity: 0.5,
          hotwords : "MIRROR"                   // Default model: "MIRROR". (This is not the wake word!)
        },
        {
          file: "resources/snowboy.umdl",       // This file define your GA wake word. (See doc notes.)
          sensitivity: 0.5,
          hotwords : "ASSISTANT"                // Default model: "ASSISTANT". (This is not the wake word!)
        }
      ]
    },
    record: {
      threshold: 0,                 // Default. No need to change.
      verbose:false,                // Deafult: true  -- for checking recording status.
      recordProgram: 'rec',         // You can use 'rec', 'sox', but we recommend 'arecord'
      silence: 2.0                  // Default. No need to change.
    },
    stt: {
      auth: [{                       // You can use multiple accounts to save money
        projectId:'mmm-xx',                         // REQUIRED (Google Voice API) -- project_id
        keyFilename: 'MMM-XX-aaaabbbbcccc.json'     // REQUIRED (Google Voice API) -- service_account / private_key
      }],
      request: {
        encoding: 'LINEAR16',       // Default. No need to change.
        sampleRateHertz: 16000,     // Default. No need to change.
        languageCode: 'en-US'       // [en-US]  To set the default GA speech request language.
                                    // (See: https://cloud.google.com/speech/docs/languages)
      },
    },
    speak: {
      useAlert: true,               // [true]  Enable this to show the understood text of your speech
      language: 'en-US',            // [en-US] To set the default GA speech reply language.
    },
    alias: [                        // You can use aliases for difficult pronunciation or easy using.
      {
        "help :command" : ["teach me :command", "what is :command"]
      }
    ]
  }
},

Then run MM with PM2 normally. To see the result of your voice input, follow the pm2 log files in a terminal with this:
# put this in your .bashrc for easy use
alias tailo='tail -f ~/.pm2/logs/mm-out-0.log'
tailo
...

Note, the wake words are smart mirror (for MM control) and snowboy (for GA).
Probably it would help to tune those files to your own voice, but I have no idea how to do that.
Next, I discovered a bug that freezes the Assistant module. See issue XXX.


Provide a message when a message list is empty

Expected behavior

There should be an indication if zero results are found
There should be an indication if a folder is actually empty

Actual behavior
There is no indication when zero results are found - users are left to guess if the search is still going on or if it hasn't found anything
Steps to reproduce

Do a search that finds nothing

Environment
K-9 Mail version: 5.201
Android version: N/A
Account type (IMAP, POP3, WebDAV/Exchange): N/A

This is basically the same issue as #1693 tries to solve and so is basically blocked by that. Empty folder, empty search - they're both message lists under the hood.

In order to fix this we need to define properly how the message list should behave.

I want to work on this.
Can you assign this issue to be fixed by me?

GitHub doesn't allow for assigning to non-project members. To work-around this we use the 'being worked on label' for new contributors.
However, this issue is fairly complex, so before we do that, to avoid unnecessarily developing a bad solution I'd like to see your idea for how to re-work the MessageList to resolve this case. Bearing in mind @cketti's comments:

Also, I'm not sure we want to display a message if the local folder is empty. Because that doesn't mean the remote folder is empty, too. I feel like this is the sort of thing that requires an overall strategy that takes all edge cases into account. I'd like to defer this to the UI overhaul.

We should really only be displaying a message if the remote folder is empty. There's a fair bit of indirection between the MessageList class and the remote folder on the server.

It would still be useful to have this - without a "No messages" or similar placeholder, I have thought from time to time that K-9 was crashing.


Ask crash when user user just launch the skill and be quiet

When user say: Alexa, open XYZ.
Then Alexa open that skill and playing the welcome text and welcome re-prompt. After that Alexa will send the end session if user doesn't say anything.
The @ask.session_ended decorator never get triggered for me but throwing the following stack
$ python app.py
 * Running on http://<IP_ADDRESS>:5000/ (Press CTRL+C to quit)
<IP_ADDRESS> - - [19/Jan/2017 22:56:20] "POST / HTTP/1.1" 200 -
[2017-01-19 22:56:40,640] ERROR in app: Exception on / [POST]
Traceback (most recent call last):
  File "/env27/lib/python2.7/site-packages/flask/app.py", line 1982, in wsgi_app
    response = self.full_dispatch_request()
  File "/env27/lib/python2.7/site-packages/flask/app.py", line 1614, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/env27/lib/python2.7/site-packages/flask/app.py", line 1517, in handle_user_exception
    reraise(exc_type, exc_value, tb)
  File "/env27/lib/python2.7/site-packages/flask/app.py", line 1612, in full_dispatch_request
    rv = self.dispatch_request()
  File "/env27/lib/python2.7/site-packages/flask/app.py", line 1598, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/env27/src/flask-ask/flask_ask/core.py", line 540, in _flask_view_func
    self._update_stream()
  File "/env27/src/flask-ask/flask_ask/core.py", line 509, in _update_stream
    fresh_stream.__dict__.update(self._from_context())
TypeError: 'NoneType' object is not iterable

I'm experiencing the exact same issue. Has there been any update here?

Hi all,
Until this is fixed in the latest version you can do the following. (if you are using pip)
pip uninstall flask-ask (answer yes)
pip install flask-ask==0.8.2
This problem isnt in the 0.8.2 release.

@treethought - Based on @strunker's comment, I'm wondering if the removal of this line
https://github.com/johnwheeler/flask-ask/commit/00d88cf367752c8e50ff304fc3830f53db439eeb#diff-9198bf93e3b6758ba586f756ebd51f0fL470
might have something to do with session_ended request no longer working?

I think @kiempam2000's PR should fix it. It seems like the context is lost with the session ended request.

yea this lib needs a lot of help. Trying to submit my first skill to prod and Alexa team failed me like 5 times already due to various bugs.

@treethought does the removal of the prior line of code seem like it would've been causing this? if that's the case, kien's PR looks like a stopgap measure, and I'm hesitant to merge it. are you able to provide more context around what's going on? if not, i can investigate when i have time.

@johnwheeler the problem is here: https://github.com/johnwheeler/flask-ask/blob/master/flask_ask/core.py#L532 .
self.context get set to None under some weird condition.

i'm aware of that. we removed a similar line of code which is in my prior comment.

@johnwheeler I don't think it was the removal of the code causing the
error. It seems that the session ended request with a 'too many rerompts'
error message is causing the context or some other value to be assigned as
None but I'm not positive. I should be able to look into it in about an
hour or so and get back to you.
On Sun, Jan 22, 2017 at 5:00 PM John Wheeler<EMAIL_ADDRESS>wrote:

@treethought https://github.com/treethought does the removal of the
prior line of code seem like it would've been causing this? if that's the
case, kien's PR looks like a stopgap measure, and I'm hesitant to merge it.
are you able to provide more context around what's going on? if not, i can
investigate when i have time.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/johnwheeler/flask-ask/issues/88#issuecomment-274375187,
or mute the thread
https://github.com/notifications/unsubscribe-auth/APKJIoUFL2vfzAMjFBb4A8sEdA6LNG-xks5rU_vAgaJpZM4LpAYx
.

treethought - no don't worry about it. i just wanted to check with you and get your thoughts. i'll take a look at the pr better and why this might be happening when i can. until then, i'd advise people to downgrade to 0.8.2 which reportedly works

Sounds good. I'll still take a look. It's interesting that this appears to
only happen when the reprompt is not answered, but not for other on session
ended situations.
On Sun, Jan 22, 2017 at 5:14 PM John Wheeler<EMAIL_ADDRESS>wrote:

treethought - no don't worry about it. i just wanted to check with you and
get your thoughts. i'll take a look at the pr better and why this might be
happening when i can. until then, i'd advise people to downgrade to 0.8.2
which reportedly works
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/johnwheeler/flask-ask/issues/88#issuecomment-274376164,
or mute the thread
https://github.com/notifications/unsubscribe-auth/APKJIgtbJzpoi_zXu2MxCoqOzgbmyEqJks5rU_7ygaJpZM4LpAYx
.

Hi all,
I just wanted to clarify a bit the behavior I am seeing in my case with this.
It never looks like the code enters the session_ended function. You can allow the reprompt timer to expire, but you can also say "exit" to the skill and force a "user initiated" close. In my case I saw the same behavior when allowing the timer to expire, and when trying to manually exit the skill.
I know this because I inserted a log into the session_ended function and it is never printed to screen.
@ask.session_ended
def session_ended():
log.debug("\n\nHit closing event handler\n\n")
return statement("")
So what I tried to do then was kind of over ride the Exit keyword with my own exit function. I then setup an utterance to call this new ExitIntent when I say the word 'cancel'.
@ask.intent("ExitIntent")
def exit_code():
log.debug("\n\nHit Exit Intent!!!!\n\n")
session_ended()
This way I could see how it behaves. And that had a similar effect. The strange part was when calling the session_ended function through my own exit intent function, I actually saw both debug statements print (the one in my exitintent, and the one in the sessionended intent) but I received the same NoneType object is not iterable message.
Below is a sample error when forcing a user initiated exit, not allowing the reprompt timer to expire.
<IP_ADDRESS> - - [22/Jan/2017 10:32:09] "POST / HTTP/1.1" 200 -
{
"context": {
"System": {
"application": {
"applicationId": "amzn1.ask.skill.d452c174-9c70-4f58-951f-422f09bbac58"
},
"device": {
"supportedInterfaces": {
"AudioPlayer": {}
}
},
"user": {
"userId": "amzn1.ask.account.AGMOPOZPG2BAPZGJFAR3KTEI6F245ESAPISDS76CSFFLBI76KZPWMCQNS6Q3VXZXSD6JGUU7736MQYH4XFMHRL2B2YKDOBZRWFU4TRBFY5OZOZHORNUVZH4SP3MBVMLE3SD34NRTJA4T7RSEZPMP5EJLRZEEQK4SIVKN6UUW5TDOYP7B3I7WH7EGJ54QKOVTT4APZO5YKYYHYVI"
}
}
},
"request": {
"locale": "en-US",
"reason": "USER_INITIATED",
"requestId": "amzn1.echo-api.request.7d673e5d-8f8c-48ec-a07e-1a64adad67aa",
"timestamp": "2017-01-22T15:32:12Z",
"type": "SessionEndedRequest"
},
"session": {
"application": {
"applicationId": "amzn1.ask.skill.d452c174-9c70-4f58-951f-422f09bbac58"
},
"new": false,
"sessionId": "amzn1.echo-api.session.ddcb8efd-378d-43f2-bc91-c51724aa78e1",
"user": {
"userId": "amzn1.ask.account.AGMOPOZPG2BAPZGJFAR3KTEI6F245ESAPISDS76CSFFLBI76KZPWMCQNS6Q3VXZXSD6JGUU7736MQYH4XFMHRL2B2YKDOBZRWFU4TRBFY5OZOZHORNUVZH4SP3MBVMLE3SD34NRTJA4T7RSEZPMP5EJLRZEEQK4SIVKN6UUW5TDOYP7B3I7WH7EGJ54QKOVTT4APZO5YKYYHYVI"
}
},
"version": "1.0"
}
{
"context": {
"System": {
"application": {
"applicationId": "amzn1.ask.skill.d452c174-9c70-4f58-951f-422f09bbac58"
},
"device": {
"supportedInterfaces": {
"AudioPlayer": {}
}
},
"user": {
"userId": "amzn1.ask.account.AGMOPOZPG2BAPZGJFAR3KTEI6F245ESAPISDS76CSFFLBI76KZPWMCQNS6Q3VXZXSD6JGUU7736MQYH4XFMHRL2B2YKDOBZRWFU4TRBFY5OZOZHORNUVZH4SP3MBVMLE3SD34NRTJA4T7RSEZPMP5EJLRZEEQK4SIVKN6UUW5TDOYP7B3I7WH7EGJ54QKOVTT4APZO5YKYYHYVI"
}
}
},
"request": {
"locale": "en-US",
"reason": "USER_INITIATED",
"requestId": "amzn1.echo-api.request.7d673e5d-8f8c-48ec-a07e-1a64adad67aa",
"timestamp": "2017-01-22T15:32:12Z",
"type": "SessionEndedRequest"
},
"session": {
"application": {
"applicationId": "amzn1.ask.skill.d452c174-9c70-4f58-951f-422f09bbac58"
},
"new": false,
"sessionId": "amzn1.echo-api.session.ddcb8efd-378d-43f2-bc91-c51724aa78e1",
"user": {
"userId": "amzn1.ask.account.AGMOPOZPG2BAPZGJFAR3KTEI6F245ESAPISDS76CSFFLBI76KZPWMCQNS6Q3VXZXSD6JGUU7736MQYH4XFMHRL2B2YKDOBZRWFU4TRBFY5OZOZHORNUVZH4SP3MBVMLE3SD34NRTJA4T7RSEZPMP5EJLRZEEQK4SIVKN6UUW5TDOYP7B3I7WH7EGJ54QKOVTT4APZO5YKYYHYVI"
}
},
"version": "1.0"
}
<IP_ADDRESS> - - [22/Jan/2017 10:32:14] "POST / HTTP/1.1" 500 -
Traceback (most recent call last):
File "C:\Python27\lib\site-packages\flask\app.py", line 1994, in call
return self.wsgi_app(environ, start_response)
File "C:\Python27\lib\site-packages\flask\app.py", line 1985, in wsgi_app
response = self.handle_exception(e)
File "C:\Python27\lib\site-packages\flask\app.py", line 1540, in handle_exception
reraise(exc_type, exc_value, tb)
File "C:\Python27\lib\site-packages\flask\app.py", line 1982, in wsgi_app
response = self.full_dispatch_request()
File "C:\Python27\lib\site-packages\flask\app.py", line 1614, in full_dispatch_request
rv = self.handle_user_exception(e)
File "C:\Python27\lib\site-packages\flask\app.py", line 1517, in handle_user_exception
reraise(exc_type, exc_value, tb)
File "C:\Python27\lib\site-packages\flask\app.py", line 1612, in full_dispatch_request
rv = self.dispatch_request()
File "C:\Python27\lib\site-packages\flask\app.py", line 1598, in dispatch_request
return self.view_functionsrule.endpoint
File "C:\Python27\lib\site-packages\flask_ask\core.py", line 544, in _flask_view_func
self._update_stream()
File "C:\Python27\lib\site-packages\flask_ask\core.py", line 513, in _update_stream
fresh_stream.dict.update(self._from_context())
TypeError: 'NoneType' object is not iterable

very much appreciate this thorough diagnosis @strunker. I skimmed it, and I don't have time to go over this in detail tonight, but we'll get to the bottom of it and get solid fixes out soon. good teamwork

Awesome, thanks for the info @strunker
On Sun, Jan 22, 2017 at 5:50 PM John Wheeler<EMAIL_ADDRESS>wrote:

very much appreciate this thorough diagnosis @strunker
https://github.com/strunker. I skimmed it, and I don't have time to go
over this in detail tonight, but we'll get to the bottom of it and get
solid fixes out soon. good teamwork
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/johnwheeler/flask-ask/issues/88#issuecomment-274379361,
or mute the thread
https://github.com/notifications/unsubscribe-auth/APKJIt7W2BeEuXHaUfiUfkX4RLdJUtLrks5rVAdlgaJpZM4LpAYx
.


SNOW-919476: Do not ignore stage location for using imports when is_permanent is False

Please answer these questions before submitting your pull requests. Thanks!

What GitHub issue is this PR addressing? Make sure that there is an accompanying issue to your PR.
Fixes #SNOW-919476

Fill out the following pre-review checklist:

[x] I am adding a new automated test(s) to verify correctness of my new code
[ ] I am adding new logging messages
[ ] I am adding a new telemetry message
[ ] I am adding new credentials
[ ] I am adding a new dependency

Please describe how your code solves the related issue.
Please write a short description of how your code change solves the related issue.

PR for fixing the merge-gate failures is here: https://github.com/snowflakedb/snowpark-python/pull/1054

I'm not sure if this is the desired behavior (e.g. upload the udf zip file into a permanent stage location for a temp UDF). Can we instead separate the concern of upload and imports? For example, we could have an upload stage and an import stage.

This is a really good suggestion. I have updated the code to use this logic because I got confused about the context and started looking at stage location only as an upload location.
This is the desired behavior from temp sprocs:

temp sprocs should not upload packages to permanent stages
temp sprocs should be able to import pacakges from permanent stages
temp sprocs should be able to use custom packages

This is the desired behavior from temp sprocs:

temp sprocs should not upload packages to permanent stages
temp sprocs should be able to import pacakges from permanent stages
temp sprocs should be able to use custom packages using imports
temp sprocs should be able to import files from permanent stage and also use custom packages from imports

Let's make sure this is documented and tested :)

This is the desired behavior from temp sprocs:

temp sprocs should not upload packages to permanent stages
temp sprocs should be able to import pacakges from permanent stages
temp sprocs should be able to use custom packages using imports
temp sprocs should be able to import files from permanent stage and also use custom packages from imports

Let's make sure this is documented and tested :)

Yep. I'm working on the tests now.


Email URL not complete

Please verify that this bug has NOT been raised before.

[X] I checked and didn't find a similar issue

Describe the bug*
The URL for linking to purchase orders (or other sections when the relevent email is sent) is not complete.

Steps to Reproduce
Late purchase order example:

Receive a late purchase order notification, try to click the Click on the following link to view this order: link. The host information is not part of the URL.

(you can see this in the mouse over of the link).
Expected behaviour
Expected to link to the full URL.
Deployment Method

[X] Docker
[ ] Bare metal

Version Information
Version Information:
InvenTree-Version: 0.9.2
Django Version: 3.2.16
Commit Hash: 236ca36
Commit Date: 2023-01-04
Database: postgresql
Debug-Mode: False
Deployed using Docker: True
Active plugins: []
Relevant log output
No response

@method1020 have you checked if INVENTREE_BASE_URL is set in the global settings? Will not work without it.

@method1020 have you had a chance to look into this?

Closing due to lack of response. Please feel free to reopen if the problem reappears.

That fixes it. Thank you


Feature missing!

Hello!
as I noticed, I can't see the real-time syncing of changes when an email got moved from one mailbox to another or a new email is received or deleted
there should be handling for the update in real-time/near real-time with expecting that the system will have thousands of accounts

Current Implementation:
The current implementation is designed to fetch and store email data upon initial synchronization. However, it appears that real-time updates (such as when an email is moved, received, or deleted) are not being reflected immediately in the user interface.
Proposed Enhancements:
To address this, I propose the following enhancements to ensure real-time or near real-time updates are handled efficiently:
Webhooks Integration:
Outlook Webhooks: Utilize Outlook's webhooks to receive notifications about changes in the mailbox (e.g., new email, moved email, deleted email).
Implementation: Set up webhook endpoints to listen for these notifications and update the local database (Elasticsearch) accordingly.
Kafka for Real-Time Processing:
Asynchronous Processing: Use Kafka to handle real-time updates by publishing change events to Kafka topics. A consumer service can then process these events and update the local database.
Scalability: Kafka’s distributed nature ensures that the system can handle a high volume of events, making it suitable for thousands of accounts.

yes there is one thing, that even the notification could be missed from outlook side,
means only subscribing to the webhooks will not make a full working solution
please research and check if you can find a combined solution to do the fetching near real time and insure the data is 100% as on the email server

Hello,
Thank you for bringing this critical point to my attention. You are correct that relying solely on webhooks for real-time updates might not ensure complete data accuracy, as notifications can sometimes be missed. To address this, I propose a combined solution that leverages both webhooks for real-time updates and a periodic polling mechanism to ensure data consistency.
Periodic Polling for Data Consistency:

Scheduled Polling: Implement a periodic polling mechanism that runs at scheduled intervals to fetch and synchronize data from the email server.
Full Sync: This polling will ensure that any missed updates from the webhooks are captured and synchronized, thereby ensuring data consistency.


Error

Hello, thank for for sharing your work. It seems that at the end of your test.py, forecasted returns and forecasted covariances are set equal to the same variable.
extract aggregated simple return and covariance forecasts
forecast_rets = dcc.fc_cov_agg_simp
forecast_covs = dcc.fc_cov_agg_simp

Thanks for raising this! I've fixed the issue


What is the status of this project?

Hi guys, first of all I think this project is amazing and that's why I would like to know what the status of this project is and if you intend to keep it in the long term.

ping

I would join the question. Is there any road map available? I'm using Kubernetes at low cost, non-profit scale, hope to move some workloads to Krustlet in the future, contribute to few projects to port to WebAssembly 😄

EDIT: Found the Roadmap on the blog https://deislabs.io/posts/towards-krustlet-v1-cncf/ sounds cool!

The Post was in July of last year and since then nothing else has happened, no one responds to issues or questions, an excellent project but without feedback it is difficult to use

Hi @sleipnir. What brought your interest in Krustlet? Is there a particular scenario that you wanted to use the project?
Some members of the Azure team are working on krustlet-adjacent projects like runwasi - a project very similar to an older experiment of Krustlet called wok. If you wanted krustlet for integration into k8s of wasm, there are other supported solutions available (like runwasi) with an active group of maintainers. Please take a look at that, because it might be better suited for your use case. On the other hand, if you wanted to use krustlet for its kubelet crate and state engine crate in Rust, it's still there and is maintained in the sense that there are contributors around to help, but might be delayed on tagging, so definitely reach out on the slack channel for help.
On a more personal note, some of the original team working on the Krustlet project (including myself) have changed employers and moved onto other projects. Some joined Fermyon Technologies. Others joined wasmcloud. Most of us are actively contributing the oci-distribution crate for wasm-related work, but we haven't contributed code to krustlet/krustlet in a while as noted above.
If you have any further questions about the status of this project, please feel free to reach out to @squillace.

Hi @bacongobbler, thanks for replying.
My main interest is to add support for Lunatics to be able to use it in workloads managed by Kubernetes.

Meanwhile, Microsoft has made this Preview available:
https://docs.microsoft.com/en-au/azure/aks/use-wasi-node-pools

Meanwhile, Microsoft has made this Preview available:
https://docs.microsoft.com/en-au/azure/aks/use-wasi-node-pools

This is a specific solution for AKS correct? I needed more general use.
But thanks for the link

Hi @sleipnir I'm fairly sure that Bernard and we have sketched out or are sketching out a lunatics containerd shim implementation.
You CAN use wasi nodepools for this, but let's ping Bernard, because I think there's something there or ongoing. I'll reach out.... and report back here.

@sleipnir On Microsoft docs they say they user Krustlet :) NIce! I really believe in this technology 😄

OK. I had spoken with Bernard a while ago about an implementation via Krustlet, but if they are going in another direction then I wait for the team to define.

Hi @sleipnir, I think for lunatic the best way forward would be a containerd shim (https://github.com/deislabs/runwasi). As Ralph mentioned, I already started experimenting a bit with it, but don't have anything out yet.

Hi @sleipnir, here is a lunatic containerd shim implementation that is based on runwasi. It is actually a collection of containerd shims for Wasm application frameworks and runtimes designed for running Wasm workloads in Kubernetes, including Spin, Wasm Worker Server and Lunatic.
Disclaimer: I work at Azure and I am a core maintainer of containerd/runwasi project.

Thank you @Mossaka


Undefined variables are typed as null

Describe the Bug

When I am not adding external variable sources to the Process and creating IO-mappings with this external data, the result is typed as Null.
Steps to Reproduce

Create an IO mapping, e.g. foo = response.content, when no such variable is defined
use the variable in another FEEL expression
the type is displayed as Null

Expected Behavior
No type info is shown. We should not force the User to add external data sources, we only add the type when we are certain of it.
Environment

Host (Browser/Node version), if applicable: [e.g. MS Edge 18, Chrome 69, Node 10 LTS]
OS: [e.g. Windows 7]
Library version: [e.g. 2.0.0]

Yes, let's do it. It should be done before the 8.2 release