Add menu

Acceptance criteria

Click on the burger icon opens menu
Click on the close button closes the menu overlay
The menu has four items: Flows, Disruptions, Insights, About
Clicking on Flows, Disruptions, Insights will list all available items in this category with a link to each individual item (TBC: whether the link is the item name or a image)

Figma

@vgeorge I can work on this ticket this week.


added missing dependencies; fix #4

added the following dependencies:
trimesh==4.3.2
importlib-metadata==7.1.0

Thanks for the PR!


Adding Tiffin Girls' School

lib/domains/org/tiffingirls.txt
tiffingirls.txt
https://www.tiffingirls.org/Our-School/Academic-Departments/Academic-Departments/Computing.aspx
https://www.tiffingirls.org/Our-School/Sixth-Form.aspx

@Isha2022 tiffingirls.txt I am sorry, I have to close the request without merging, because you made a mistake in a request and did not specify any filepath. Please ensure that you are familiar with this repository rules located at the bottom of this page and make a new correct request. Thank you for your understanding!


Changed to dark mode and updated about page

addid toggle for light/dark toggle doesent work yet but will fix (Merge Dev TOOO Prod)

hiiii


Generated code calls Close() twice

In several places, googleapi.CheckMediaResponse calls Close() on the response body, then if CheckMediaResponse returns an error the error handling code calls Close() again.
Here is one example.
According to the io package documentation, the second call has undefined behavior.
In practice, there are transports that return response bodies that deadlock on the second Close() call.

CheckMediaResponse:
https://github.com/google/google-api-go-client/blob/6dcd0d8ed711248e845137a35720e88b3ed2e04a/googleapi/googleapi.go#L149-L162
/cc @bradfitz
Yeah, that's no good.

Should be harmless, but okay to fix too.


General users as a project owner cannot add catalogs or templates

Describe the bug

General users as a project owner cannot add catalogs or templates
Steps to reproduce

Log in walrus as a general user.
Create a project and add a project catalog.

Result

There is no button to create a catalog or a template.

Expected behavior

Add catalogs or templates successfully.

Environment

Walrus version: main 3a128a4de94303c68057ac66aabedc3806cc6040
UI version: dev-1534197

Additional context
Add any other context about the problem here.

Environment

Walrus version: main 3a128a4de94303c68057ac66aabedc3806cc6040
UI version: dev-0354bb7

Test Result: pass


Issue with scrolling to first element in a scrollable div

Hi,
I have something to report. I have a parent scrollable div called 'highlight-replies' (set to position of 'relative'). There are many child elements, when i set to scroll to the first child, the 'end' scroll event passes null values for 'to' and 'element'. However, if i scroll to any other child the values of 'to' and 'element' are populated and correct.
Code for event registration:
Events.scrollEvent.register('end', (to, element) => {             // Callback for logic to be performed after a scrollTo has finished             console.log('scroll end')             console.log({to, element})             postScrollToProcessing(to, element);         });
Code for scrolling:
scroller.scrollTo(highlight-reply-${params.highlightCommentId}, {                     duration: 1000,                     smooth: 'easeInOutQuint',                     containerId: 'highlight-replies',                     // offset: 0, // Scrolls to element + x pixels down the page                     // isDynamic: true                 });
Any ideas why this is happening?
Kind regards,
Rob

Update:
Now I can get it to work for the first element if I set an offset of 1 within the scroller.scrollTo options. So I'm guessing the original issue is happening because for the first element, no scroll needs to take place, resulting in the scroll end event to not acquire the 'to' and 'element' parameters?
Is there any chance to auto set offset to 1 behind the scenes if no scroll actually takes place? Or would that not be a good idea?


MGMT-12728: Add ConfidentialCompute to GCPMachineProviderSpec

Add ConfidentialCompute support on GCP
Feature link: https://issues.redhat.com/browse/OCPBU-142

upstream issue: https://github.com/kubernetes-sigs/cluster-api-provider-gcp/issues/804
I'll create the PR as well.

/lgtm

cc @jeana-redhat, @sunzhaohua2 and @sferich888
Please add the qe-approved, docs-approved px-approved labels
This is part of https://issues.redhat.com/browse/OCPCLOUD-1889

I'll need examples of what the YAML edits the user would make look like (this is usually available in QE test docs) and SME review availability - @eranco74 would that be you or someone on the cluster infra dev team?

Thanks @eranco74!
/label docs-approved

/label px-approved


Update to 1.3.4 -> error

Hello,
I would like to update this plugin to the 1.3.4 version but I have an error notarget.

npm ERR! notarget No matching version found for<EMAIL_ADDRESS>
How can I update it ?
Thanks

Version 1.3.4 has not been released and is in a vote for approval. Once the vote has passed, it would then be made public. Please monitor npmjs for the release of the new version.
https://www.npmjs.com/package/cordova-plugin-whitelist


exploitdb: 2022-03-15 -> 2022-03-17

Description of changes
update to 2022-03-17
https://github.com/offensive-security/exploitdb/commit/12a90d7198757470bd090f75591e33569872e6e0

Things done

Built on platform(s)

[X] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
22.05 Release Notes (or backporting 21.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[X] Fits CONTRIBUTING.md.

@ofborg eval

@ofborg eval

I don't know why it still puts internal-error label, but since it hasn't been marged yet and there's a new version of exploitdb released, I'll bump up version and push it to this PR.

Result of nixpkgs-review pr 164606 run on x86_64-linux 1

1 package built:

exploitdb

Looks like, due to the recent API issues, this this PR had too many statuses added to it. If you git commit --amend --no-edit and git push [your remote] --force-with-lease, ofborg should be happy again.

Happy now??

@ofborg eval


DateTime fields stored as text are not read from database

I had an existing SQLite database and my new code was not reading the date/time fields. I looked at the code and found the following in /src/SQLite.cs (lines 2874 - 2886):
else if (clrType == typeof (DateTime)) {
    if (_conn.StoreDateTimeAsTicks) {
        return new DateTime (SQLite3.ColumnInt64 (stmt, index));
    }
    else {
        var text = SQLite3.ColumnString (stmt, index);
        DateTime resultDate;
        if (!DateTime.TryParseExact (text, DateTimeExactStoreFormat, System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None, out resultDate)) {
            resultDate = DateTime.Parse (text);
        }
        return resultDate;
    }
}

The line that is causing the problem I think is line 2881:
        if (!DateTime.TryParseExact (text, DateTimeExactStoreFormat, System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None, out resultDate)) {

The NOT operator (!) should be left out. If TryParseExact succeeds, the Parse should be called. This bug was added in commit e0ba8bc3daec3ff2f430760e0d96f66cb3e4a067.

That line looks correct to me. If TryParseExact succeeds, resultDate will be set.

Ah yes, TryParseExact also has resultDate as an out parameter. OK, then I will have to download the source code and use that directly in my project and debug why I don't get the date/time fields from my SQLite database. I will open a new issue if necessary.


cells/xschem/test: fix path

Fixes #90
/cc @mithro @atorkmabrains

Merge if CI says yes?

I'd like @atorkmabrains to ACK too.

LGTM @proppy


Cut release for Deposit Service  v0.0.10

This release should include additional logging of env vars, support for model v3.1

Is this still needed with the 0.1.0 release complete?  Everything that was scheduled for 0.0.10 is in 0.1.0.

(i.e. I propose closing this)

This was done with the release of v 0.1.0


Basic CMake + TLS Handling Support

I see some issues in the TLS fix implementation
First is that you add a dependency called MSPDBX which I don't like at all since I want to keep this project simple as possible
The second is that the structure "LDR_DATA_TABLE_ENTRY" that you are using is quite old and current structure is bigger which will cause ntdll crash pretty fast trying to access invalid memory outside the buffer (a more complex implementation supporting different OS maybe needed)

and finally speaking about the invalid memory, did you test it?, you are doing a malloc in the injector process for the ldr buffer

while you will use this buffer in a different process and will not exist

Review it in any case I'm glad to see that someone want to bring the TLS support and I will accept it when it looks better

Thanks again for the feedback. I’ve taken the time to address all the points raised, and the following improvements have been made:
MSPDBX Dependency
As requested, I’ve removed the MSPDBX module. The offsets are now hardcoded, which simplifies the project and aligns with your preference for minimal dependencies. This will, of course, require manual updates when new versions are released, but the implementation is now leaner as per your feedback.
LDR_DATA_TABLE_ENTRY Structure
To ensure compatibility across various Windows versions, I’ve significantly increased the memory allocation for LDR_DATA_TABLE_ENTRY. This guarantees no struct overrun will occur, regardless of OS version.
Memory Allocation (Global VirtualAllocEx):
I’ve corrected the memory allocation oversight by switching from malloc to a more global solution using VirtualAllocEx. This ensures that memory is properly allocated within the target process, eliminating the cross-process memory issue.
Summary of Updates:

Removed MSPDBX and hardcoded the necessary offsets.
Replaced malloc with VirtualAllocEx for safe cross-process memory allocation.
Allocated extra memory for LDR_DATA_TABLE_ENTRY to prevent overruns across different OS versions.

All these changes have been implemented, and the issues have been resolved. I look forward to hearing your thoughts after you review the updated version!


Picom transparency isnt applied to inactive windows

Please describe the bug
Picoms transparency is only applied to the active window.
Steps to reproduce:

Set inactive-opacity to 0.7 and active-opacity to 0.9.
Open two windows.
Notice how the inactive window isn't transparent at all.

Expected behavior
Picoms opacity should be applied.
Screenshots

i3:

that i don't know, I'm not that knowledgeable in picom but i dont see a transparency option to affect all windows, just active and inactive.

that I do not know either, it was a question after all. I don't think hypr is missing any EWMH stuff for inactive windows

can't you like... set opacity for all to X and opacity for active to Y? Because the WM does everything it should EWMH-wise to signify which window is active.

You can do this in picom by setting active-opacity = 1.0; and wintypes as follows:
wintypes: {
    normal = { opacity = 0.5 };
};

However, doing this now has the opposite problem, where the active window isn't detected:

Found it. Use
use-ewmh-active-win=true

in picom.conf.
I've also pushed a small update to support one more active atom.

Also make sure to set mark-ovredir-focused = false; if it's set to true, I had this accidentally enabled.


Allow specific method access for endpoints

Implementation for Issue-183:
Overview
Add handlerFunc to block methods with chi router with methodNotAllowed

@squat I don't have merge access. Do we have a mailing list where I can subscribe?
Would love involve in weekly/monthly meetings.

@nitinpatil1992 you can check out: https://observatorium.io/docs/community/get_involved.md! 🙂


Messing of sidebar with posts

Description
The new sidebar implemented is creating problem with the 3 column layout. I want to fix this and make the UI look clean.
Please assign this issue to me under GSSOC'23
Steps to reproduce
Go to https://narayan954.github.io/dummygram
Click on the layout switching button
The sidebar will look messing up
Screenshots

Desktop (please complete the following information)

OS : Window
Browser : Chrome
Version : 114.0.5735.110 (Official Build) (64-bit)

Smartphone (please complete the following information)
No response
Additional information
No response

Yeah sure, go ahead!


I have some problems preparing the dataset.

Hi Dear Author, I have some problems preparing the dataset:

I am preparing the COCO dataset according to your project directory, but there is no "instances_valminusminival2014.json" file in the origin COCO2014 or COCO2017 dataset. Is this file generated by yourself, and what should I do to generate it?
About the LVIS data set, I wonder if your project has preprocessed it when using the LVIS dataset, can I directly go to the lvis official website to download the v1.0 version (because it does not currently provide the v0.5 version) modify the train script and use it directly ?
Thanks in advance！

Hi Dear Author, I have some problems preparing the dataset:

I am preparing the COCO dataset according to your project directory, but there is no "instances_valminusminival2014.json" file in the origin COCO2014 or COCO2017 dataset. Is this file generated by yourself, and what should I do to generate it?
About the LVIS data set, I wonder if your project has preprocessed it when using the LVIS dataset, can I directly go to the lvis official website to download the v1.0 version (because it does not currently provide the v0.5 version) modify the train script and use it directly ?
Thanks in advance！
去这里下一个annotations_trainval2017.zip，解压过去就有了
https://aistudio.baidu.com/aistudio/datasetdetail/7122

instances_valminusminival2014.json

没有这个文件—— instances_valminusminival2014.json

instances_valminusminival2014 is actually images that belong to train2017 but are not in train2014. You can create it in this way if you cannot find the annotation file. You can also randomly extract about 35k images from train2017 directly, and the performance will not vary too much.

I just search instances_valminusminival2014.json on Internet and got it in here


Leave may contain parent tree path twice

I came across some weird path issues of tree and their leave objects today.  I'm not sure exactly what I need to do to reproduce the issue right now. I write everything I do down and describe the filesystem state as best as I can.
Filesystem:
I have a folder called data containing several analysis runs. This is a deep folder structure containing data for several simulations and analysis types usually with data/protein/analysis. Each analysis folder contains a treant object.
datreant Code:

Get a bundle with b = dtr.discover('data')
get a treant with t = b[0]
get a leaf with l = t.tree['data/protein/analysis']
print l.abspath will now return /top/path/data/protein/analysis/data/protein/analysis

As you can see the last leaf object points to a non existing path. I'm actually wondering why point 3 works. But the tree anyway doesn't show me the data folder in the treants (which i think it does in other treants)

You said each analysis folder is a Treant, correct? In this case, the members of the Bundle, b, are each analysis folders, so doing
t = b[0]
t.tree

would give you a Tree object pointing to the first analysis directory in your Bundle, so doing:
t.tree['data/protein/analysis']

gets you back a Leaf object to a leaf that probably doesn't exist with the path you describe. This behavior is what I'd expect, so I think the best question I can ask is: what are you trying to achieve?

what are you trying to achieve?

I don't remember anymore.

probably doesn't exist with the path you describe

I think I forgot that a tree can point to a non existing object just fine.


Add Storage folks to OWNERS file

This patch adds Alan, Eric, and Gorka to the OWNERS files.

/verify-owners


Refactored unit tests to all use TestNG, removed no longer applicable…

… tests, refactored KenLM in order to make handling upstream errors easier

Does this pass your tests? When I run it, I get errors related to maven-surefire-plugin. I thought I'd check if you know what this is about before I dig into it.
Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test (default-test) on project joshua: Execution default-test of goal org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test failed: The forked VM terminated without properly saying goodbye. VM crash or System.exit called?
[ERROR] Command was /bin/sh -c cd /Users/post/code/joshua && /Library/Java/JavaVirtualMachines/jdk1.8.0_60.jdk/Contents/Home/jre/bin/java -Djava.library.path=/Users/post/code/joshua/lib -jar /Users/post/code/joshua/target/surefire/surefirebooter3138892612018380852.jar /Users/post/code/joshua/target/surefire/surefire2495440792813112582tmp /Users/post/code/joshua/target/surefire/surefire_03287663746024243525tmp

Hey Matt, thanks for letting me know.  I missed adding a resource directory (I always forget to git add dirs for some reason).  Things are working for me locally now.
I had one small question: where should we point the test runner to look for libkenlm.so?  At the moment I chose the rootdir/lib as it seems to be auto-created when the ./downloaddeps script is run, but maybe there's a better location?
Here's what I've run to verify the build locally:
#no KenLM
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_101.jdk/Contents/Home/
export JOSHUA=pwd
git clean -xdf
mvn test
Tests run: 120, Failures: 0, Errors: 0, Skipped: 10
[INFO] BUILD SUCCESS
#no KenLM/ext
git clean -xdf
rm -rf ext
mvn test
Tests run: 122, Failures: 0, Errors: 0, Skipped: 12, Time elapsed: 1.961 sec - in TestSuite
[INFO] BUILD SUCCESS
#Fresh KenLM
git clean -xdf
rm -rf ext
./download-deps.sh
mvn test
Tests run: 116, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 5.689 sec - in TestSuite
[INFO] BUILD SUCCESS
-Kellen

Hey Matt, $JOSHUA/lib is fine with me.  Just thought I'd double check that I shouldn't be giving it another path.


[Backport 1.x] Bump BenchMarkDotNet from 0.13.12 to 0.14.0 (#808)

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

What's up with integration tests?


Change numprocs at runtime

I'd like to be able to dynamically change worker process counts based on system load.  Using the supervisor_twiddler approach seems like a good place to start.
I'd like to get feedback from the maintainers - is this a feasible feature request?  Or perhaps work has already been started on it?  If it's feasible and no one is working on it yet, I'd be happy to take a look at tackling it myself.

Sure, I think it's feasible and probably a good fit for twiddler.  I'm not currently working on it so feel free.

After digging into this a bit and trying some various approaches, one big issue I've run into here is that supervisor doesn't expose any runtime intermediate representation of the homogeneous (program) groups before they are expanded into processes.
It would be ideal if I could create an RPC method here called getConfigSection updateConfigSection that export the config parser section attributes and apply a set of attribute changes to a config parser section respectively.  I was planning to fetch the original config section for the program group I wanted to modify, apply a change to the numprocs attribute, recreate the internal expanded representation of the individual process configs, then see which process configs were changed or added or removed from the original set of process configs, applying the change similar to how addProgramToGroup and removeProcessFromGroup already work.
However, as far as I can tell, supervisor does not permanently store the config parser instance from the last config file read.  Instead, it opens the file, reads it into the config parser, expands includes, applies environment expansions, and expands sections into their internal representation of individual process properites per group, which have no memory of the original group definition from the config file (pre-expansion).
Because all of this process happens in one cascade of functions, it's not possible to hook into this process in any meaningful way without an invasive monkey patch (as far as I can tell).  I think this probably requires some changes to supervisor itself to work in the general case as I described.
I think I can make addProgramToGroup and removeProcessFromGroup work for me in my specific case if I forget about using config files and configure supervisor exclusively via XMLRPC.  Hopefully this comment will help someone else if they care to take the extra time with this.

However, as far as I can tell, supervisor does not permanently store the config parser instance from the last config file read.

It does not store the ConfigParser instance, instead its contents are converted into ProcessConfig objects that are stored.


Advent of code 4

--- Day 4: Ceres Search ---
"Looks like the Chief's not here. Next!" One of The Historians pulls out a device and pushes the only button on it. After a brief flash, you recognize the interior of the Ceres monitoring station!
As the search for the Chief continues, a small Elf who lives on the station tugs on your shirt; she'd like to know if you could help her with her word search (your puzzle input). She only has to find one word: XMAS.
This word search allows words to be horizontal, vertical, diagonal, written backwards, or even overlapping other words. It's a little unusual, though, as you don't merely need to find one instance of XMAS - you need to find all of them. Here are a few ways XMAS might appear, where irrelevant characters have been replaced with .:
..X...
.SAMX.
.A..A.
XMAS.S
.X....
The actual word search will be full of letters instead. For example:
MMMSXXMASM
MSAMXMSMSA
AMXSXMAAMM
MSAMASMSMX
XMASAMXAMM
XXAMMXXAMA
SMSMSASXSS
SAXAMASAAA
MAMMMXMMMM
MXMXAXMASX
In this word search, XMAS occurs a total of 18 times; here's the same word search again, but where letters not involved in any XMAS have been replaced with .:
....XXMAS.
.SAMXMS...
...S..A...
..A.A.MS.X
XMASAMX.MM
X.....XA.A
S.S.S.S.SS
.A.A.A.A.A
..M.M.M.MM
.X.X.XMASX
Take a look at the little Elf's word search. How many times does XMAS appear?
The data is located in aoc4.txt
git-bob try to implement this.

--- Part Two ---
The Elf looks quizzically at you. Did you misunderstand the assignment?
Looking for the instructions, you flip over the word search to find that this isn't actually an XMAS puzzle; it's an X-MAS puzzle in which you're supposed to find two MAS in the shape of an X. One way to achieve that is like this:
M.S
.A.
M.S
Irrelevant characters have again been replaced with . in the above diagram. Within the X, each MAS can be written forwards or backwards.
Here's the same example from before, but this time all of the X-MASes have been kept instead:
.M.S......
..A..MSMS.
.M.S.MAA..
..A.ASMSM.
.M.S.M....
..........
S.S.S.S.S.
.A.A.A.A..
M.M.M.M.M.
..........
In this example, an X-MAS appears 9 times.
Flip the word search from the instructions back over to the word search side and try again. How many times does an X-MAS appear?
git-bob try to implement this.


feat(i18n): i18n support

feat(i18n): i18n support for MEAN.js
Using angular-translate: https://github.com/angular-translate/angular-translate
Using angular-dynamic-locale: https://github.com/lgalfaso/angular-dynamic-locale
Using i18n-node for backend: https://github.com/mashpie/i18n-node
Features: #27

So far I experience some karma:unit tests failing due to additional GET request. Can somebody advise an easy way to fix this?

So I guess the question is, should strings be translated from English, or from keys. With keys there's much less work maintaining multiple language files when something changes.

Yes, I see both approaches are good enough to work together:
English strings in templates are easier to locate and maintain
Translation IDs are good when it comes to translate the whole paragraphs with hyperlinks and other markup

Guys, what about this?
So far I experience some karma:unit tests failing due to additional GET request. Can somebody advise an easy way to fix this?

We can add a new request handler i.e
$httpBackend.whenGET(/i18n/.*/).respond(200, '');
into each controller test file.
Would it be an appropriate solution?

@pun4drunk Yes, adding the request handler to the client-side test files is OK. We're already doing that in some of the Karma tests.

Overall, I welcome the addition of localization & cultures into this framework. In addition, the use of angular-translate seems like the correct choice. With that said, I think this PR can be slimmed down to merely add support for i18n. At most, I think we can show how to implement this using just the Chat example. I don't see a need to implement this into every aspect of our front-end. Most users of this framework won't need this feature out-of-the-box.
I don't want to end up maintaining this implementation throughout our client-side controllers, views, directives, etc. This will end up being a maintenance nightmare, as our framework changes & expands. Whoever needs this feature will be able to easily add it since the framework already will have standards, and support in place.
@meanjs/contributors @simison Any thoughts?

@mleanos I find your opinion very reasonable. Although perhaps chat module is not so suitable to demonstrate i18n support - there is not so much to translate there and there is at least header that will stay in english anyway. Maybe we could have a new module instead with just a single page (and language dropdown) to show i18n support in few markup examples

@pun4drunk The precise reason I think that we should implement i18n in just the Chat module, is because there wouldn't be much to translate. Once a user of this framework decides that they want to take full advantage of this localization implementation, they can use our minimal example shown in the Chat module to implement it elsewhere in their application. This approach would help us keep i18n lightweight & have a very low impact on our framework.

Issues I've faced implementing i18n were as follows:
Main Menu
To translate main menu, you should append translate filter to the labels. You should also use translate service in each module's menu config to ensure translations where generated.
Using chat module as an example can not demonstrate how to implement core translations.
Dynamic Locale
With articles module translations (or any other future CRUD that handles any kind of dates with it), comes the necessity to auto-translate dates/currencies etc. This is where angular-dynamic-locale comes in handy.
Using chat module as an example can not demonstrate how to do this since it has no dates.
Server translations
To translate messages coming from server (i.e. restricted access message in CRUD module) i18n object is being registered as a global variable and used for each message.
This is an only place that more or less related to chat module, because it's "Is now connected" message is coming from server.
Pagination (and probably more bootstrap widgets)
To translate pagination I needed to overwrite default template, since it used one time bindings. This issue is reported but authors don't think it should be resolved anyway.
Using chat module as an example can not show this since it has no pagination.
Now you can imagine how much work you still need to do to implement i18n into your project using obviously poor example from chat module.
Finally, if we implement i18n globally but will only use it in one module, this will not save us from an additional GET request so it still should be handled in tests.
Good thing is that I don't see so much trouble supporting i18n (all you need to do is to call translate filter/service/method in the right place and if you don't need translations you just don't use it) and tests do not depend on this.
I've even added e2e test for language dropdown.
Maybe you could think about it like a side branch I can provide support to, so it can be used with MeanJS Generator? I've almost finished crud-module translations so that in sum this could seriously increase your (our) community.

@meanjs/contributors Would you like to review this as well? IMO, this introduces too many changes for the value it adds to the framework. It seems that most users wouldn't need this functionality right out of the box. I don't feel comfortable with the complexity this implementation is adding. Also, see my comments above.
I'm still open to adding this, but I'd like to see it done in a more configurable manner, and seamlessly fit into the framework.

My personal take is that this looks quite a piece of code to keep maintaining.
Who knows, we might be moving out to ng2/react in the near future :)
My other take on this is that if this PR adds a complete, solid i18n capability, with tests, and @pun4drunk can hang out with us on MEAN.JS to further maintain it then I'm ok with merging this in.

Is it possible to have all the config, but just have this set up for one module just to show how it works?

I think this will end up being too much of a maintenance nightmare. And the implementation seems to be one that you would see in an instance of this framework where i18n integration is a requirement.
I like the idea of this being a part of the generator project. @ilanbiala Would that be doable? Also, I did suggest implementing this for just the Chat module. Since the Chat module has very little content. Even though, I'm not a fan of the inline hooks to i18n & front-end views.
Overall, this implementation seems unnatural to a framework like ours. I like what this is attempting to solve though. Can we find a better library/implementation?

@pun4drunk what do you think about doing this as part of the generator maybe?

Some food for thought — Angular 2 will have i18n support:

Internationalization (i18n) support. Add an i18n attribute, then use the ng-xi18n tool to extract strings to a standard XLIFF file. See this example to try it out.

via https://angularjs.blogspot.lt/2016/09/angular-2-rc6_1.html

Even stronger point not to merge in yet.
Thanks Mikael

@lirantal, I'm ok about making this a part of a generator. Please contact me to discuss this. My skype is vladwaxme. Thank you

Vlad, @codydaig and @ilanbiala are maintaining the generator, let's steer this discussion over in the generator repo and see if it makes any sense.

Fine! I just should note that in the generator they have a list of versions to pick from:
var versions = {

  'master': 'master',

  '0.4.0': 'v0.4.0',

  '0.4.1': 'v0.4.1',

  '0.4.2': 'v0.4.2'

};

which is basically a git entities taken from this repo. So anyway if we make i18n-supported version a part of a generator, it should somehow get into this repo as a branch

I don't think there is any path ready to migrate to angular2. This could be very useful for me too.

Friends, please keep in mind that migration to angular2 itself is not enough to provide i18n support since MEAN.js also uses messages coming from server side (mentioned above in details)


chore(litmus-portal): Updated the Linear ProgressBar component and some minor bug fixes

Proposed changes
This PR adds:

Updated LinearProgressBar Component
Fixed Argo graph not rendering issue
Changed the RR score for workflow in running phase
Updated permissions to re-run and delete workflow

Types of changes
What types of changes does your code introduce to Litmus? Put an x in the boxes that apply

[ ] New feature (non-breaking change which adds functionality)
[x] Bugfix (non-breaking change which fixes an issue)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation Update (if none of the other choices applies)

Checklist
Put an x in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before merging your code.

[ ] I have read the CONTRIBUTING doc
[ ] I have signed the commit for DCO to be passed.
[ ] Lint and unit tests pass locally with my changes
[ ] I have added tests that prove my fix is effective or that my feature works (if appropriate)
[ ] I have added necessary documentation (if appropriate)

Dependency

Please add the links to the dependent PR need to be merged before this (if any).

Special notes for your reviewer:

Approving the PR considering API for weights will be added with v2 implementation and this static value will be changed to actual score calculation. @amityt


Self signed TLS fails to generate after v2.4.2 upgrade, UI won't load

[ERROR] MultiClusterAppRevisionController cattle-global-data/mcapprevision-t7zmd [management-multiclusterapp-revisions-rbac] failed with : multiClusterApp.management.cattle.io "cattle-global-data/cert-manager" not found
[INFO] failed to create TLS cert for: <IP_ADDRESS>
run command:
docker run -d -v /home/rancher/data:/var/lib/rancher --restart=unless-stopped -p 8080:80 -p 8443:443  --name rancher-server rancher/rancher
os Ubuntu 18.04.4
Docker version 19.03.8, build afacb8b7f0

I had the same issue. I switched to providing my own self-signed cert to get going
If I restart rancher server without the provided self-signed cert, the problem returns. Logs look like this:
rancher_1  | 2020/04/03 00:01:46 [INFO] Creating new TLS secret for serving-cert (count: 16): map[listener.cattle.io/redacted listener.cattle.io/cn-<IP_ADDRESS>:<IP_ADDRESS> listener.cattle.io/redacted listener.cattle.io/redacted:8443 listener.cattle.io/cn-<IP_ADDRESS>:<IP_ADDRESS> listener.cattle.io/cn-redacted listener.cattle.io/cn-hidden listener.cattle.io/redacted listener.cattle.io/redacted listener.cattle.io/cn-localhost:localhost listener.cattle.io/cn-redacted listener.cattle.io/redacted listener.cattle.io/redacted listener.cattle.io/redacted listener.cattle.io/cn-redacted listener.cattle.io/redacted listener.cattle.io/hash:0cd54ff8cbe4580f42c47283d84c3803465313dee49c616668ff4cd1c0aca82f]
rancher_1  | 2020/04/03 00:01:46 [INFO] failed to create TLS cert for: <IP_ADDRESS>

How is it auto-detecting these hostnames? Some of the redacted names are unknown to me...

If anyone hits this issue you can run the below in the kubernetes cluster run Rancher.  If this is a single node setup just docker exec -it CONTAINER bash first and then run the below.
kubectl -n cattle-system delete secret serving-cert
kubectl delete listenconfigs cli-config

Then restart Rancher

@ibuildthecloud  thanks work

@andruwa13 I'd like to keep this open until we have a proper fix in the product.

I had the same issue after upgrade rancher from 2.3.5 to 2.4.0.
2020/04/01 15:48:40 [INFO] failed to create TLS cert for: <IP_ADDRESS>
2020/04/01 15:48:40 [INFO] Creating new TLS secret for serving-cert (count: 7): map[...]

and
kubectl -n cattle-system delete secret serving-cert
kubectl delete listenconfigs cli-config

met another problem: This cluster is currently Unavailable; areas that interact directly with it will not be available until the API is ready, it does not work for me.

Hit this issue on an upgrade from 2.3.5 to 2.4-head - commit : 04159d027
Steps:
Deploy 2 DO clusters (1.15 k8s)
upgrade rancher to 2.4-head
rancher fails to launch
Logs:
2020/04/06 17:57:09 [INFO] failed to create TLS cert for: <IP_ADDRESS>
2020/04/06 17:57:09 [INFO] Creating new TLS secret for serving-cert (count: 5): map[listener.cattle.io/cn-<IP_ADDRESS>:<IP_ADDRESS> listener.cattle.io/cn-<IP_ADDRESS>:<IP_ADDRESS> listener.cattle.io/cn-<rancher-server-ip>:<rancher-server-ip> listener.cattle.io/cn-<rancher-server-ip>:443:<rancher-server-ip>:443 listener.cattle.io/cn-localhost:localhost listener.cattle.io/hash:3d9724530379cd5f60f01e5670b9fc533e116a7a8d7f5fbfd5a066d345edbc43]
2020/04/06 17:57:09 [INFO] failed to create TLS cert for: <IP_ADDRESS>
2020/04/06 17:57:10 [INFO] Creating new TLS secret for serving-cert (count: 5): map[listener.cattle.io/cn-<IP_ADDRESS>:<IP_ADDRESS> listener.cattle.io/cn-<IP_ADDRESS>:<IP_ADDRESS> listener.cattle.io/cn-<rancher-server-ip>:<rancher-server-ip> listener.cattle.io/cn-<rancher-server-ip>:443:<rancher-server-ip>:443 listener.cattle.io/cn-localhost:localhost listener.cattle.io/hash:3d9724530379cd5f60f01e5670b9fc533e116a7a8d7f5fbfd5a066d345edbc43]
2020/04/06 17:57:10 [INFO] failed to create TLS cert for: <IP_ADDRESS>

Verified a couple of times upgrade from 2.3.5 to 2.4-head - latest - commit id: 3f7fe7098
and upgrade from 2.3.5 to master-head - commit id: 64e257376

Deploy 2 do clusters - 1 node all roles - 1.15 k8s version
Upgrade to 2.4-head  and master-head
User is able to access the Rancher UI post upgrade.

Verified upgrade from v2.3.6 to 2.4-head version cf5ab1dcb

Deploy 2 do clusters - 1 node all roles - 1.15 k8s version
Upgrade to 2.4-head
User is able to access the Rancher UI post upgrade.

Tested with upgrade from v2.0.10 -> v2.2.9->v2.2.11->v2.4-head
Created Rancher server v2.0.10 using Rancher generated certs
Steps:

Deploy a cluster in v2.0.10 with k8s 1.11.6-rancher1-1
Cluster config used: 1 control node, 3 etcd nodes and 3 worker nodes
Upgrade from rancher v2.0.10 to rancher v2.2.9
Upgrade from v2.2.11 to v2.4-head
Upgrade was successful and UI loaded fine. We can access the UI after upgrade to v2.4-head

I tried to overcome this issue by providing the --acme-domain [DOMAIN] flag.
It DOES NOT help to overcome the issue.

Tested with upgrade from v2.3.3 -> v2.3.7-rc2->v2.4 (:latest): FAILED
Tested with upgrade from v2.3.3 -> >v2.4-2809-head : SUCCESS

I had this issue during the migration from v2.3.8 to v2.4.0. I tried the workaround suggested by @mshade, the UI worked but I got cluster Unavailable. I figured out a way to fix that and it's all good now. I even updated to v2.4.3.
My concern now is that I am running with my own self signed certificates and I would like to come back on Default Rancher-generated Self-signed Certificate. When I try to switch back to this mode, I still get the following error
2020/06/22 09:16:06 [INFO] Creating new TLS secret for serving-cert (count: 7): map[listener.cattle.io/cn-<IP_ADDRESS>:<IP_ADDRESS> listener.cattle.io/cn-<IP_ADDRESS>:<IP_ADDRESS> listener.cattle.io/cn-<IP_ADDRESS>:<IP_ADDRESS> listener.cattle.io/cn-localhost:localhost listener.cattle.io/cn-localhost.localdomain:localhost.localdomain listener.cattle.io/cn-localhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainloca:localhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainloca listener.cattle.io/cn-myserver.rancher.env1.test.io :myserver.rancher.env1.test.io listener.cattle.io/hash:943998f2c07a2305e507623d494221d94ce1746115ad30040dfa3ecc8790d0dc]
2020/06/22 09:16:06 [INFO] failed to create TLS cert for: <IP_ADDRESS>, Secret "serving-cert" is invalid: metadata.annotations: Invalid value: "listener.cattle.io/cn-localhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainloca": name part must be no more than 63 characters

I had this issue during the migration from v2.3.8 to v2.4.0. I tried the workaround suggested by @mshade, the UI worked but I got cluster Unavailable. I figured out a way to fix that and it's all good now. I even updated to v2.4.3.
My concern now is that I am running with my own self signed certificates and I would like to come back on Default Rancher-generated Self-signed Certificate. When I try to switch back to this mode, I still get the following error
2020/06/22 09:16:06 [INFO] Creating new TLS secret for serving-cert (count: 7): map[listener.cattle.io/cn-<IP_ADDRESS>:<IP_ADDRESS> listener.cattle.io/cn-<IP_ADDRESS>:<IP_ADDRESS> listener.cattle.io/cn-<IP_ADDRESS>:<IP_ADDRESS> listener.cattle.io/cn-localhost:localhost listener.cattle.io/cn-localhost.localdomain:localhost.localdomain listener.cattle.io/cn-localhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainloca:localhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainloca listener.cattle.io/cn-myserver.rancher.env1.test.io :myserver.rancher.env1.test.io listener.cattle.io/hash:943998f2c07a2305e507623d494221d94ce1746115ad30040dfa3ecc8790d0dc]
2020/06/22 09:16:06 [INFO] failed to create TLS cert for: <IP_ADDRESS>, Secret "serving-cert" is invalid: metadata.annotations: Invalid value: "listener.cattle.io/cn-localhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainlocalhost.localdomainloca": name part must be no more than 63 characters

Hi @dutangp,
We faced the same problem and thanks to our teammate @suvl for figured that out.
rancher have a k3s inside its container with a CRD called listenconfigs where is stored all the self-signed certificates generated by rancher.
All you have to do is delete that old certificate with more than 63 characters to overcome that error.

enter rancher container ( in our case we have a single node instance)
docker exec -ti <rancher-container-id> /bin/bash

edit the listenconfigs
kubectl edit listenconfigs

search for the line on the error and certificate and delete that line and you're ready to go with rancher upgrade with their self-signed etc :)

hey @diogoserrano thanks a lot, I will try that on the next release as we had to use a homemade cert. This is awesome, thanks a lot.
I ll keep you updated

We see this issue on an upgrade of the single container install 2.3.3 to 2.4.5 with default self-signed cert.
Using "kubectl edit listenconfigs" and pruning out the problematic lines did not help, Rancher still not listening on 443.

The only thing that worked for us was to first upgrade to 2.4.8 then use etcdctl inside the Rancher container to get the /registry/management.cattle.io/listenconfigs/cli-config key, edit out the bad certificate entry, and etcdctl put it back.  At that point we restarted the container and the UI came back up.


[FEATURE] Add replica to RAID1 bdev

SPDK Raid1 bdev addition
We are waiting that this feature will be added in SPDK upstream. Developers are currently working on rebuild feature that should contain the capability to add a new bdev to an existing raid1 bdev.

This is for tracking some upstream work, but it's part of #5420

Let's track replica management at https://github.com/longhorn/longhorn/issues/5420 instead.


When (autoloading) from :mks Session.vim it wants to save it in the session directory

When you load a session from the vim standard Session.vim in the directory (e.g. via autoload) and then do a :SSave it will want to save it in ~/.vim/sessions/ instead of the file it was loaded from.
Either it should then detect where it was loaded from, or maybe a command would be convenient that would always save in the session that was loaded, not asking for anything (when not using autosave it gets a bit annoying anyways to save and confirm the name). What might also work is a way to autoload a session from ~/.vim/session by some special file/Session.vim in the current directory?

I see the dilemma. Looking into it!


Add theme parameter

First of all, thanks for this useful library!
This adds Tippy's theme parameter, so you can specify your own themes. See the Tippy documentation on themes.

I've never felt this is needed because styling the svelte compoents itsself felt superior.. anyway this doesnt hurt anyone - so merged. thanks for contributing

Released in 1.1.3

Thanks! I needed a way to style the Tippy box itself in some cases, but not always - give it a different background colour and round the corners a bit more. Afaik this isn't possible when styling the Svelte component that goes inside the popup.
Just out of curiosity, how would you have solved that by styling the Svelte component?

This lib i created for my mobile game (currently in development). I decided to remove the complete Tippy Styling thing and made it myself. Resulting in this:

Looks good! 👍


Add undefined to default-initialised parameters

Fixes #11900
Fixes #11424
Fixes #12726

As @blakeembrey points out in #12726, default parameters should only add undefined to the type for the signature. In the body of the function, the parameters should not add undefined.

This is not the right fix. The behaviour is correct today -- you can pass undefined to a default-initialised parameter that's not last, and the compiler accepts it. And inside the body undefined is not part of the parameter. The correct fix is either to write ? in the signature, or not to change anything.

Actually, this is the right fix. It just needs to improve control flow to remove the added | undefined  in the body of the function. I'll add the commits for that as soon as I get the .d.ts output corrected.

@mhegazy I think this is ready to go now if you want to take one more look.

I don't think this PR is the right fix. The type of a parameter that has an initializer should only include undefined when viewed as part of a parameter list. Within the actual function we don't want undefined in the type--as demonstrated by the PR it is a lot of work to then get rid of the undefined. We're already adding undefined to the type in getTypeOfParameter, why not just do the same when we display the function signature? Everything else already works correctly best I can tell.

@ahejlsberg The simpler fix doesn't take care of the narrowing an explicit undefined in an initialised parameter. Compare foo2 to foo1 and foo3 in the tests. All 3 have the correct signatures, but foo2 has x: string | undefined in its body even though it's guaranteed to be string.
    function foo1(x: string = "string", b: number) {
        x.length;
    }

    function foo2(x: string | undefined = "string", b: number) {
        x.length; // ok, should be narrowed to string
        ~
!!! error TS2532: Object is possibly 'undefined'.
    }

    function foo3(x = "string", b: number) {
        x.length; // ok, should be narrowed to string
    }

However, the code is so much simpler that I don't mind missing this case. I'll commit the simplification so you can see what it looks like.

OK, the simplified version is up now.

Regarding this error case
    function foo2(x: string | undefined = "string", b: number) {
        x.length; // ok, should be narrowed to string
        ~
!!! error TS2532: Object is possibly 'undefined'.
    }

Similarly to how we add undefined to an explicit type annotation when a parameter has a ? modifier, we should remove undefined from the type when the parameter has an initializer with a type that doesn't include undefined. The undefined would later be added back by getTypeOfParameter as appropriate. It looks to be a fairly simple change in getTypeForVariableLikeDeclaration.

OK, undefined is now removed when a parameter has a non-undefined-containing initializer.


storage: refactor full key from a concatenated &[u8] to a struct

Is your feature request related to a problem? Please describe.
Currently, for all the read and write on hummock, the keys passed in are all user_key, which is a concatenation of table_id and table_key (a temporary naming from myself). Before we process the logic, we will first concatenate the user_key and epoch into full_key, and we do the rest of processing. However, in many of our processing, we will split the full_key again to extract the epoch, user_key, and sometimes the table_id, which is unnecessary.
Besides, currently the keys stored in SharedBufferBatch are all full_key, but all keys in a single SharedBufferBatch shares the same table_id and epoch, which wastes unnecessary spaces.
Describe the solution you'd like
Currently we have a seldom used FullKey struct
pub struct FullKey<T: AsRef<[u8]>>(T);

We can refactor it as
pub struct FullKey<T: AsRef<[u8]>> {
    table_id: TableId,
    table_key: T,
    epoch: Epoch,
}

The following modification will be done accordingly

For get, iter and ingest_batch in hummock, the key passed in will be table_key instead of user_key. epoch and table_id are already provided in the method input. Keyspace can be removed.
Trait HummockIterator and StateStoreIter will return FullKey as the key, and Sstable builder will take FullKey struct as input.
In SharedBufferBatch, we only store the individual table_keys. The epoch and table_id are shared.
The t in the prefix of key encoding can be removed.

Describe alternatives you've considered
No response
Additional context
No response

Just a very rough estimation of memory improvement: running nexmark q5, the key + value size is roughly 80B. So by removing duplicated epoch and table_id, we should expect 16/80 = 20% of memory improvement in shared buffer data.

We will need to remove KeySpace in the next PR.


How can I get these data?

Thanks for your contribution.
I'm interested in Knowledge Graph, and can you offer these data for me? I will only use that for academic exchanges and research learning.

数据不在了。不过你可以自己随机生成一下，另外，网上应该不少复杂网络的数据，格式就是我在README里写的。


Ministry User Group - ReDash

Title of ticket: Ministry User Group - ReDash
Description
User Groups for ReDash needed for Ministry users
For the purpose of the pilot launch, the two groups should be "Economy Sector" and "Ministry of Education"
DOD

[ ] ReDash Security Group Created for Economy Sector
[ ] ReDash Security Group Created for Ministry of Education
[ ] Dashboard Access granted to both for - Performance Dashboard
[ ] Dashboard Access granted to both for - Received Dashboard
[ ] Dashboard Access granted to both for - Analyst Workload Dashboard
[ ] Dashboard Access granted to both for - Active OIPC Reviews Report

@m-prodan Economy Sector is the group for below ministries right?
JERI, LBR, MUNI and TACS

That is correct @divyav-aot

@nkan-aot - testing this with foiedu@idir
I can see the required dashboards, but it is also showing all of the other dashboards that are more IAO specific. They really should only see the noted reports above, analyst workload, received, performance, and active OIPC reviews. I can also see a dashboard specific to ECON sector which seems out of place - here's a screenshot:

Following that - how can I do the test for economy sectors? We have a test user called foiecosect@idir - can we set that one up with redash? I don't see any dashboards if I login with that one, or the foilbr user id

Thanks for clarifying logins at standup @nkan-aot - security groups appear to be set up and distinct. Before I close this ticket though, I noticed one issue with the economy sector login for "Tom Smith" per the screenshot below on the received dashboard... some widgets are giving me permission issues

I figure it might be a quick permissions issue fix - I did not have the same issue with the education login.

issue should be fixed now, may have just been my mistake when setting it up. let me know if it shows up again

Confirmed it is working - thank you @nkan-aot


Status Code - 404 Template

Version
v2.8.1
Reproduction link
localhost:3000/does-not-exists
Steps to reproduce
Run your nuxt application in spa-mode and navigate to a route that does not exist in your routing.
The nuxt-error template is rendered but the status code for the document is not correct. It returns a 200 as status code.
I tried to add the following code in my nuxt.config.js:
generate: {
fallback: true, // if you want to use '404.html' instead of the default '200.html'
},
but the status code does not change.

What is expected ?
The document should return a 404 as a status code.
What is actually happening?
It returns a 200 as status code.

This bug report is available on Nuxt community (#c10020)

You can't avoid that when using SPA mode as there is no way to detect if a route was "found" or not. Everything is served via the index.html with a 200 status code.
It is possible with pre-rendering or SSR though.

That makes sense for me now... but is there even no way to configure the right status code with nginx?

As you can't distinguish between an "error page" and a "valid page" without SSR/static generation, no.


added template files and view logic for breadcrumbs, which can be use…

…ful for wikis with a hierarchical structure
feature can be activated  by setting WALIKI_BREADCRUMBS to True in waliki/settings.py

wonderful contribution, thank you!
My first daughter was born few weeks ago and that, obviously, take me away of github and my open source project, but let me few days to get back and I'll merge it.
PS: if you can catch what's breaking travis in all the PR, I would be very pleased to know it.

Glad you appreciate it. Unfortunately, I have no idea what's breaking travis or even how to start figuring out. Have fun with your daughter ;)

I looks like you're including a wrong version of Hovercraft: it says "Hovercraft requires Python 3.2 or higher."
Since the pull request doesn't change requirements.txt it's innocent, it's likely that something changed in Hovercraft's pypi version.
I seem to remember having similar problems with Hovercraft when I installed my test setup a while ago, unfortunately I didn't have any time to better study Waliki for the past few weeks  :-/

More on the topic of @aszepieniec's pull request, shouldn't waliki/settings.py change be like this?
-WALIKI_BREADCRUMBS = False
+WALIKI_BREADCRUMBS = getattr(settings, 'WALIKI_BREADCRUMBS', False)

If I don't do this, WALIKI_BREADCRUMBS = True in my settings.py gets overridden to False.

RobertoMaurizzi: Yeah, that makes a lot more sense. There's no reason this configuration variable should be defined differently from all the other ones.
Forgive me, I'm still learning.

Thanks @aszepieniec , I've just merged


Support for Redis Cluster via Carmine Library

Context

In past, we've struggled with closing connection pool during graceful shutdown, lack of Redis v6.2.0 support.
Despite these struggles, after spiking various libraries (link to Redis ADR), we decided to stick with Carmine.

Problem

Carmine lacks support for Redis Cluster

Solution

Goose can have a small set of macros for the small subset of operations to map keys to the right cluster node. This macro will rewrite Redis calls to follow the Redis cluster protocol of identifying the node and then query it
If these macros can be generalised, we can raise a PR to Carmine itself

Thanks for bringing this to our notice @jaju @kapilreddy
If you have code/better solution for this, do suggest here

@olttwa You may want to look into RedClaw (Clojure wrapper over Redisson) or  Celtuce (Clojure wrapper over Lettuce)
Both support Redis cluster natively and asynchronous event driven mode of execution unlike Jedis.

A less drastic solution to replacing the Redis library (as noted in the ADR, most of the other libraries are sorely lacking some commands and features that would also need to be implemented) is to write our own version of the wcar macro that returns a handle to the connection. The functions needed to create our own wcar+ are exposed to the user.
Moreover, Carmine will support Redis Cluster in the next release—it would be a good time to address the issues with closing connections after we upgrade. So currently, I am of the opinion that we should wait on this issue a bit until Carmine 4.0 is out, and then make a decision.


Use majority write/read concerns in DocumentationSamples to have RYW guarantees

JAVA-4075

I described the problem in detail in JAVA-4075, and I also pointed out there that I fail to explain the test failure. I do not want to fallback to "maybe there is a problem on the server-side" explanation, so most likely my understanding of what is happening is not correct. I would be glad if I could discuss the problem with someone and understand the situation better.


Need not compare headers for track 1 session files

To reuse track 1 session files, we should not compare headers because their headers must not be same.
This code is only meaningful during migrating track 1 to track 2, we should clean up this logic after migration is done.

Can you please file an issue to clean this code up?

Also tests are failing.

Can you please file an issue to clean this code up?

@pakrym , #12041 was created to track the clean up


New apps invalid

I have noticed the occasional new app (just installed, first launch) not tiling and chunkc tiling::query --desktop windows lists it with (invalid) next to the description. A restart of chunkwm seems to clear it up permanently for that app, but it's probably worth noting.

Probably same as #329

Yes, that's it.


Add pry-byebug in test

Allow developers to debug with pry without having to install the gem and require it. It is not in the gemspec because it's not a development dependency.

Thanks!


Can't resize window from top

OS:
Windows 10 1607 64bit
Issue Descriptions:
You can resize the main window from the left, right and bottom but not from the top.  This doesn't make sense to me and in order to resize I keep struggling resizing the window, mainly because the bottom often falls easily outside the visible screen.
Steps to Reproduce:
Dragging from the top window pixels drags the whole window instead of resizing the window vertically.

This is a limitation of the frameless window API in Electron.  You can however resize diagonally from the top right and top left window corners.

Jokes, we can hack around this :+1:


Story/csi 1135 vol cap validation fix

Fix volume block/fs validation in con troller

@igorgonibm can we delete this branch?


Mentorship button at footer

Description
BUG
In footer at home page we have mentorship button which takes user to discord community.
Screenshots

Expected behavior
Either button text to be changed to community or if keeping mentorship it should redirect to batch page.
Like syncing with the two button we have at our home page. Look at the below image.

I would like to contribute to it. Please assign. Thanks.
@ManishBisht777

Make sense @utkarsh0903 , sure assigned to you

So what should I do, redirect it to batch or change it's text to Join Community.

@utkarsh0903 Join Community, Cause other options already points to batch


Fixed version presence check in CamelService.scanForCamelProject

fixes #294
Considers also startIdx when checking for version presence

@fharms thanks for merging


Issue converting different objects to a closed dxf

Hi Maker.js developers!
I try to convert an SVG with lines, circles, arcs & ellipses to a DXF.
This approach is working as long as the objects are of the same type (only lines or only arcs...).  Thus, it's not a chain any more.
    //case line
    let lines = svg.getElementsByClassName("line")
    for (let j = 0; j < lines.length; j++) {
      let child = lines[j]
      let childPath = "M" + child.getAttribute("x1") + " " + child.getAttribute("y1") + ", L" + child.getAttribute("x2") + " " + child.getAttribute("y1")
      let svgPathData = makerjs.importer.fromSVGPathData(childPath, { bezierAccuracy: 0.0 })
      let line = svgPathData.paths?.p_1
      makerjs.model.addPath(model, line, "line")
    }

    //case semi-circle (radius x == radius y)
    let semiCircles = svg.getElementsByClassName("arc")
    for (let j = 0; j < semiCircles.length; j++) {
      let childPath = semiCircles[j].getAttribute("d")
      let svgPathData = makerjs.importer.fromSVGPathData(childPath, { bezierAccuracy: 0.0 })
      let arc = svgPathData.paths?.p_1
      makerjs.model.addPath(model, arc, "arc")
    }

    //..same for circles and ellipses

    //export to dxf
    let chains = makerjs.model.findChains(model)
    let dxf = makerjs.exporter.toDXF(model, { usePOLYLINE: true })

If I zoom in very close it looks like this:

Does anyone have an idea how to fix this issue so that all objects are merged properly?

Hello, this looks like it might be a problem with "accuracy" settings. These can be fiddly. Accuracy settings depend on your application and units. For example, if you are outputting to a computer screen, the units would be pixels, and you can probably use accuracy of 0.5 (half a pixel) for good results.
In your example, you are importing SVG. Can you add your example SVG? Also, you should not use bezierAccuracy of 0.0, since this may cause endless calculation. It may be that your Bezier curves are being broken up into arcs that are too tiny and then being dismissed but the chain finding function.

Hello, this looks like it might be a problem with "accuracy" settings. These can be fiddly. Accuracy settings depend on your application and units. For example, if you are outputting to a computer screen, the units would be pixels, and you can probably use accuracy of 0.5 (half a pixel) for good results.
In your example, you are importing SVG. Can you add your example SVG? Also, you should not use bezierAccuracy of 0.0, since this may cause endless calculation. It may be that your Bezier curves are being broken up into arcs that are too tiny and then being dismissed but the chain finding function.

Thanks for your fast reply! An accuracy of 0.5 doesn't work either. It looks like the lines are a little bit shifted in direction of the y-axis.
Here is a sample svg containg two lines, a semi-circle (arc) and a semi-ellipse (bezier-seed):
<svg xmlns="http://www.w3.org/2000/svg" class="svg" width="880" height="772" preserveAspectRatio="none"><g/><g/><g/><g/><g/><g/><g><line class="line" id="2" x1="159.671875" y1="550.25" x2="149.671875" y2="294.25" fill="none" strokeWidth="5" stroke="black" strokeLinecap="round"/><text text-anchor="middle" x="179.671875" y="550.25">0</text></g><g><line class="line" id="7" x1="407.671875" y1="284.25" x2="420.671875" y2="544.25" fill="none" strokeWidth="5" stroke="black" strokeLinecap="round"/><text text-anchor="middle" x="427.671875" y="284.25">0</text></g><g><path d="M420.671875 544.25 A<PHONE_NUMBER>040362 71.23982803281127<PHONE_NUMBER>9420674 0 1 159.671875 550.25" class="semi-circle bezier-seed" id="9" fill="none" strokeWidth="5" stroke="black" strokeLinecap="round"/></g><g><path d="M149.671875 294.25 A<PHONE_NUMBER>1966612<PHONE_NUMBER>1966612 0 0 1 407.671875 284.25" class="semi-circle arc" id="5" fill="none" strokeWidth="5" stroke="black" strokeLinecap="round"/></g></svg>

Thanks for your fast reply! An accuracy of 0.5 doesn't work either. It looks like the lines are a little bit shifted in direction of the y-axis.
Here is a sample svg containg two lines, a semi-circle (arc) and a semi-ellipse (bezier-seed):
<svg xmlns="http://www.w3.org/2000/svg" class="svg" width="880" height="772" preserveAspectRatio="none"><g/><g/><g/><g/><g/><g/><g><line class="line" id="2" x1="159.671875" y1="550.25" x2="149.671875" y2="294.25" fill="none" strokeWidth="5" stroke="black" strokeLinecap="round"/><text text-anchor="middle" x="179.671875" y="550.25">0</text></g><g><line class="line" id="7" x1="407.671875" y1="284.25" x2="420.671875" y2="544.25" fill="none" strokeWidth="5" stroke="black" strokeLinecap="round"/><text text-anchor="middle" x="427.671875" y="284.25">0</text></g><g><path d="M420.671875 544.25 A<PHONE_NUMBER>040362 71.23982803281127<PHONE_NUMBER>9420674 0 1 159.671875 550.25" class="semi-circle bezier-seed" id="9" fill="none" strokeWidth="5" stroke="black" strokeLinecap="round"/></g><g><path d="M149.671875 294.25 A<PHONE_NUMBER>1966612<PHONE_NUMBER>1966612 0 0 1 407.671875 284.25" class="semi-circle arc" id="5" fill="none" strokeWidth="5" stroke="black" strokeLinecap="round"/></g></svg>

Here you can find the code for the semi-ellipse if needed:
    //case semi-ellipse (radius x != radius y)

    let semiEllipses = svg.getElementsByClassName("bezier-seed")
    for (let j = 0; j < semiEllipses.length; j++) {
      let childPath = semiEllipses[j].getAttribute("d")
      let svgPathData = makerjs.importer.fromSVGPathData(childPath, { bezierAccuracy: 0.5 })
      model.models["bezier_seed_" + j + "_1"] = makerjs.travel(svgPathData, [
        "models",
        "p_1",
        "models",
        "Curve_1",
      ]).result
      model.models["bezier_seed_" + j + "_2"] = makerjs.travel(svgPathData, [
        "models",
        "p_1",
        "models",
        "Curve_2",
      ]).result
      model.models["bezier_seed_" + j + "_3"] = makerjs.travel(svgPathData, [
        "models",
        "p_1",
        "models",
        "Curve_3",
      ]).result
      model.models["bezier_seed_" + j + "_4"] = makerjs.travel(svgPathData, [
        "models",
        "p_1",
        "models",
        "Curve_4",
      ]).result
    }

Here you can find the code for the semi-ellipse if needed:
    //case semi-ellipse (radius x != radius y)

    let semiEllipses = svg.getElementsByClassName("bezier-seed")
    for (let j = 0; j < semiEllipses.length; j++) {
      let childPath = semiEllipses[j].getAttribute("d")
      let svgPathData = makerjs.importer.fromSVGPathData(childPath, { bezierAccuracy: 0.5 })
      model.models["bezier_seed_" + j + "_1"] = makerjs.travel(svgPathData, [
        "models",
        "p_1",
        "models",
        "Curve_1",
      ]).result
      model.models["bezier_seed_" + j + "_2"] = makerjs.travel(svgPathData, [
        "models",
        "p_1",
        "models",
        "Curve_2",
      ]).result
      model.models["bezier_seed_" + j + "_3"] = makerjs.travel(svgPathData, [
        "models",
        "p_1",
        "models",
        "Curve_3",
      ]).result
      model.models["bezier_seed_" + j + "_4"] = makerjs.travel(svgPathData, [
        "models",
        "p_1",
        "models",
        "Curve_4",
      ]).result
    }

Here's a demo converted for use in the Playground:
var makerjs = require('makerjs');

function demo(font, text, fontSize, baseline, reversed, contain, rotate, svgPathData, showPath) {

    var svgPath1 = makerjs.importer.fromSVGPathData("M420.671875 544.25 A<PHONE_NUMBER>040362 71.23982803281127<PHONE_NUMBER>9420674 0 1 159.671875 550.25");
    var svgPath2 = makerjs.importer.fromSVGPathData("M149.671875 294.25 A<PHONE_NUMBER>1966612<PHONE_NUMBER>1966612 0 0 1 407.671875 284.25");

  	var line1 = new makerjs.paths.Line([159.671875, -550.25], [149.671875, -294.25]);
  	var line2 = new makerjs.paths.Line([407.671875, -284.25], [420.671875, -544.25]);

    this.paths = {
    	line1, line2
    };

    this.models = {
        svgPath1, svgPath2
    };

  var chains = makerjs.model.findChains(this);

  console.log(chains.length)
  console.log(chains[0].endless)
}

module.exports = demo;

It finds one endless chain. Does it export to DXF correctly?

Here's a demo converted for use in the Playground:
var makerjs = require('makerjs');

function demo(font, text, fontSize, baseline, reversed, contain, rotate, svgPathData, showPath) {

    var svgPath1 = makerjs.importer.fromSVGPathData("M420.671875 544.25 A<PHONE_NUMBER>040362 71.23982803281127<PHONE_NUMBER>9420674 0 1 159.671875 550.25");
    var svgPath2 = makerjs.importer.fromSVGPathData("M149.671875 294.25 A<PHONE_NUMBER>1966612<PHONE_NUMBER>1966612 0 0 1 407.671875 284.25");

  	var line1 = new makerjs.paths.Line([159.671875, -550.25], [149.671875, -294.25]);
  	var line2 = new makerjs.paths.Line([407.671875, -284.25], [420.671875, -544.25]);

    this.paths = {
    	line1, line2
    };

    this.models = {
        svgPath1, svgPath2
    };

  var chains = makerjs.model.findChains(this);

  console.log(chains.length)
  console.log(chains[0].endless)
}

module.exports = demo;

It finds one endless chain. Does it export to DXF correctly?

Thanks. Yes, your code exports a correct and closed DXF. This is my working code (based on your demo):
    //case line
    let lines = svg.getElementsByClassName("line")
    for (let j = 0; j < lines.length; j++) {
      let child = lines[j]
      let x1: number = parseFloat(child.getAttribute("x1")!)
      let y1: number = parseFloat(child.getAttribute("y1")!)
      let x2: number = parseFloat(child.getAttribute("x2")!)
      let y2: number = parseFloat(child.getAttribute("y2")!)
      let point1: IPoint = [x1, -y1]
      let point2: IPoint = [x2, -y2]
      let line = new makerjs.paths.Line(point1, point2)
      makerjs.model.addPath(model, line, "line")
    }

    //case semi-circle (radius x == radius y)
    let semiCircles = svg.getElementsByClassName("arc")
    for (let j = 0; j < semiCircles.length; j++) {
      let childPath = semiCircles[j].getAttribute("d")
      let svgPathData = makerjs.importer.fromSVGPathData(childPath)
      makerjs.model.addModel(model, svgPathData, "arc")
    }

    //case semi-ellipse (radius x != radius y)
    let semiEllipses = svg.getElementsByClassName("bezier-seed")
    for (let j = 0; j < semiEllipses.length; j++) {
      let childPath = semiEllipses[j].getAttribute("d")
      let svgPathData = makerjs.importer.fromSVGPathData(childPath)
      makerjs.model.addModel(model, svgPathData, "ellipticarc")
    }

    //var chains = makerjs.model.findChains(model)
    return makerjs.exporter.toDXF(model)

Thanks. Yes, your code exports a correct and closed DXF. This is my working code (based on your demo):
    //case line
    let lines = svg.getElementsByClassName("line")
    for (let j = 0; j < lines.length; j++) {
      let child = lines[j]
      let x1: number = parseFloat(child.getAttribute("x1")!)
      let y1: number = parseFloat(child.getAttribute("y1")!)
      let x2: number = parseFloat(child.getAttribute("x2")!)
      let y2: number = parseFloat(child.getAttribute("y2")!)
      let point1: IPoint = [x1, -y1]
      let point2: IPoint = [x2, -y2]
      let line = new makerjs.paths.Line(point1, point2)
      makerjs.model.addPath(model, line, "line")
    }

    //case semi-circle (radius x == radius y)
    let semiCircles = svg.getElementsByClassName("arc")
    for (let j = 0; j < semiCircles.length; j++) {
      let childPath = semiCircles[j].getAttribute("d")
      let svgPathData = makerjs.importer.fromSVGPathData(childPath)
      makerjs.model.addModel(model, svgPathData, "arc")
    }

    //case semi-ellipse (radius x != radius y)
    let semiEllipses = svg.getElementsByClassName("bezier-seed")
    for (let j = 0; j < semiEllipses.length; j++) {
      let childPath = semiEllipses[j].getAttribute("d")
      let svgPathData = makerjs.importer.fromSVGPathData(childPath)
      makerjs.model.addModel(model, svgPathData, "ellipticarc")
    }

    //var chains = makerjs.model.findChains(model)
    return makerjs.exporter.toDXF(model)


deletableDefinitions -> nonClassConstants

Motivation

This name doesn't make much sense anymore--it doesn't have methods nor
fields, which are also deletable definitions. Maybe its usefulness will
one day go away if we make edits to classes take the fast path too. But
for the time being, it's here to stay so we may as well make the name
change.
Test plan

Existing tests

Current dependencies on/for this PR:

master

PR #6603   👈

This comment was auto-generated by Graphite.


[BACKLOG-26272] fix for pause icon not working correctly

@bmorrise

Build Completed
:x: This pull request has errors. They will need to be addressed before it can be accepted. See below for more details. Some links are also available below for further assistance in addressing those issues.
Build Commands
mvn -B -f 'pom.xml' -pl 'engine' -P '!assemblies' -Dsurefire.runOrder=alphabetical -Daudit -amd clean install

Cleanup Commands
mvn -B -f 'pom.xml' -pl 'engine' -P '!assemblies' -amd build-helper:remove-project-artifact

Changed files
  engine/src/main/java/org/pentaho/di/www/GetStatusServlet.java
  engine/src/main/resources/org/pentaho/di/www/messages/messages_en_US.properties

Newly Broken Tests:
org.pentaho.di.trans.step.mqtt.MQTTStreamSourceTest.testMqttStreamSingleTopic:
:red_circle: junit.framework.AssertionFailedError
junit.framework.AssertionFailedError
	at org.pentaho.di.trans.step.mqtt.MQTTStreamSourceTest.getQuickly(MQTTStreamSourceTest.java:253)
	at org.pentaho.di.trans.step.mqtt.MQTTStreamSourceTest.testMqttStreamSingleTopic(MQTTStreamSourceTest.java:122)

Still Broken Tests:
org.pentaho.di.trans.steps.jsoninput.analyzer.JsonInputAnalyzerTest.testJsonInputExternalResourceConsumer:
:red_circle: java.lang.AssertionError
java.lang.AssertionError
	at org.pentaho.di.trans.steps.jsoninput.analyzer.JsonInputAnalyzerTest.testJsonInputExternalResourceConsumer(JsonInputAnalyzerTest.java:184)

Unit Test Coverage
These statistics help you identify how your changes have affected the coverage of the following files. If a file is not in this list, then its coverage was not affected by your changes. To get some help interpreting these metrics, please refer to Jacoco's documentation.

:warning: Coverage Changes (click to expand)
org.pentaho.di.core.injection.bean.BeanInjector

Branch Change: -0.8% :small_red_triangle_down:
Complexity Change: -1.1% :small_red_triangle_down:

org.pentaho.di.job.entries.evalfilesmetrics.JobEntryEvalFilesMetrics

Branch Change: -0.4% :small_red_triangle_down:
Complexity Change: -0.5% :small_red_triangle_down:
Instruction Change: -0.1% :small_red_triangle_down:

org.pentaho.di.job.entries.getpop.MailConnectionMeta

Branch Change: -1% :small_red_triangle_down:
Complexity Change: -1.5% :small_red_triangle_down:
Instruction Change: -0.3% :small_red_triangle_down:

org.pentaho.di.trans.step.StepMeta

Branch Change: -0.6% :small_red_triangle_down:
Complexity Change: -0.5% :small_red_triangle_down:
Instruction Change: -0.2% :small_red_triangle_down:
Line Change: -0.3% :small_red_triangle_down:

org.pentaho.di.trans.steps.dimensionlookup.DimensionLookupMeta

Method Change: -1% :small_red_triangle_down:

org.pentaho.di.trans.steps.ifnull.IfNullMeta

Branch Change: -2% :small_red_triangle_down:
Complexity Change: -1.9% :small_red_triangle_down:
Instruction Change: -0.2% :small_red_triangle_down:

org.pentaho.di.trans.steps.sortedmerge.SortedMergeMeta

Instruction Change: -0.2% :small_red_triangle_down:

org.pentaho.di.trans.steps.textfileinput.TextFileInputMeta

Branch Change: -0.5% :small_red_triangle_down:

org.pentaho.di.trans.steps.gpload.GPLoadMeta

Branch Change: -0.9% :small_red_triangle_down:
Complexity Change: -0.8% :small_red_triangle_down:
Instruction Change: -0.2% :small_red_triangle_down:

org.pentaho.di.trans.steps.salesforceinsert.SalesforceInsertMeta

Instruction Change: -0.1% :small_red_triangle_down:


REST API for remote console

This may be out of scope for this project but I'm looking for a solution to query my servers for the number of logged on players and I think that the solution I am using to do that (macchie/minecraft-bedrock-server-bridge) is conflicting with the backup since I guess they both 'attach' to the server?
So it'd be nice to have that bridge functionality built into Bedrockifier so that I can eliminate the additional containers.
I guess I can also parse the bedrock backup logs but I think that wouldn't be very robust. I already noticed that the active players counter was off by one for a while which I think is probably due to the multiple concurrent clients trying to attach.
The use case for getting the number of players is that I want to be able to send a text message when someone connects or switch on a light via home assistant when the server is not empty.

I found an alternative solution to my specific problem using a combination of parsing logs and querying the minecraft servers using mcstatus


Provide a way to adjust the request/response log level in Logging{Client,Service}

In a certain case, a request or a response with a cause may not be a failure. It would be nice if a user can specify a Function<? super RequestLog, LogLevel>, e.g.
LoggingClient.builder()
             .requestLogLevel(log -> ...)
             .responseLogLevel(log -> {
                 if (log.responseCause() == null ||
                     log.responseCause() instanceof HarmlessException) {
                     return LogLevel.INFO;
                 } else {
                     return LogLevel.WARN;
                 }
             })

Fixed via #2258. Thanks @snaiper80!


Update eslz-network-topology-and-connectivity.md

Added info under the Design considerations for RISE implementations section.
Before selecting the "Create pull request" button:

Enter a meaningful title above^, using a prefix if necessary and keywords "New" or "Update" indicating the nature of changes.

Describe the summary, scope, and intent of this PR:
[REPLACE-THIS-TEXT]

Insert links(s) to any related work item(s) or supporting detail:
[DELETE-OR-REPLACE-THIS-TEXT]

AFTER YOUR PR HAS BEEN CREATED, expand this section for tips and additional instructions.
These are common guidelines for contributions across the repos managed by the Cloud Architecture Content Team (CACT). Some repositories may have additional specific requirements that are not listed here.
Guidance for all contributors

Topic
Guidance

Draft PR
If your PR will be a work-in-progress for more than a day or two, select the Convert to draft link in the upper right of the page (under Reviewers) to change it to a draft. For future reference, you can also do this using the Create pull request button drop-down during PR creation.

ms.date metadata
Don't update an article's "ms.date" metadata property unless you've done a full freshness review of the content. A full freshness review includes changes required to correct or improve the full technical accuracy of the article.Don't update "ms.date" if you're doing targeted changes to improve non-technical aspects of the article, such as editorial quality, art improvements, article template alignment, etc.If you've changed any "ms.date" properties for work that wasn't part of full review for freshness, please reset them to their previous value.

Placement and linking
If you're creating a new article or articles, include updates to the related TOC.yml file to propose where the article(s) should be placed. Also consider other places within the document set where it would be beneficial to cross-reference and link to your new article(s).

PR build
After you open your PR, and for each successive commit that you push to your branch, the publishing platform will run validation on the files in your pull request. A summary of the build results for each file will be inserted inline into your pull request, which includes any build suggestions/warnings/errors. PRs cannot be merged until all build errors and most warnings are resolved.

Publishing
Following a successful merge, most repos publish to the live site at least once per (business) day, usually around 10am Pacific.

Additional resources
Learn.Microsoft.Com contributor guide

Additional guidance for private repos and internal contributors

Topic
Guidance

PR size
If your PR is more than ~5 lines of changes, or you'd like for the changes to go through editorial or larger review, open a contribution request at https://aka.ms/Contribution and include a link to the PR in response #8. Once it's processed, you'll be notified of the next steps.

PR title prefix
Select the Edit button to the right of the PR title if you need to revise it. The following prefixes are reserved for specific contribution types:[Quality Check] - maintenance work related to content quality (edit passes, art improvements, template alignment)[LinkFix] - recurring/adhoc PRs to correct link URLs[Pipeline] - new/updated contributor success pipeline content[WIP] - a work-in-progress draft requiring several days/weeks

PR preview
Following successful build of your PR, publishable files will also include Preview URL links to staged previews of your new/updated articles. Be sure to review these for verification of your intended contributions, or to send to other internal contributors for review.

PR sign-off (public repo)
If an article you own is updated in a public repo PR, you are responsible for sign-off. You will be automatically notified via email. The PR will not be merged until you've had a chance to review and sign-off.

PR sign-off (private repo)
After you've completed your proposed changes, addressed build warnings, and completed all review work, you can begin the sign-off process for review and merge:If your PR is in draft mode, remove "[WIP]" from the title and select Ready for review button at the bottom of the PR.Enter "#sign-off" in a new comment. This comment indicates that you're confident the work meets or exceeds Microsoft's standards for publication, and will trigger the review process.Your PR may be selected for initial review by the CACT. Following CACT review, you may receive questions or requests for additional changes. You should have initial feedback from CACT review within a few business days. If you have an urgent request or need to contact the team, please mention @MicrosoftDocs/cloud-architecture-content-team-pr-reviewers in your PR and someone will get back to you. After CACT review is complete, a CACT #sign-off will be added.Final review/merge is done by the PR review team. The PR team may also respond with feedback, categorized as "Blocking" (requires action from you), or "Non-blocking" (to be addressed in a future PR).

Additional resources
Learn.Microsoft.Com internal contributor guideAuthoring templates: architecture-center-pr, well-architected-prTo contact the CACT use e-mail, or @mention our GitHub team in your PR comments using: @MicrosoftDocs/cloud-architecture-content-team-pr-reviewers

@Jak-MS I have asked @PankajMeshramCSA to review and he is checking with PG.

@trstroem can you please address the feedback provided by @msftrobiro

Hi Chad,
I commented on Rob’s feedback.
When I tried to edit, I receive this message:
@.***
Should I create a new branch? If not, how do I edit the existing one and make a new pull request?
Sorry, I’m not a Github expert…
Regards,
Trond
From: Chad Kittel @.>
Sent: Thursday, 20 April 2023 17:24
To: MicrosoftDocs/cloud-adoption-framework @.>
Cc: Trond Stroemme @.>; Mention @.>
Subject: Re: [MicrosoftDocs/cloud-adoption-framework] Update eslz-network-topology-and-connectivity.md (PR #1119)
@trstroemhttps://github.com/trstroem can you please address the feedback provided by @msftrobirohttps://github.com/msftrobiro
—
Reply to this email directly, view it on GitHubhttps://github.com/MicrosoftDocs/cloud-adoption-framework/pull/1119#issuecomment-1516527944, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AMQXAHIMU2GAA43AUICOO5LXCFIIDANCNFSM6AAAAAAWVN53QA.
You are receiving this because you were mentioned.Message ID<EMAIL_ADDRESS>

#please-close
This has been replaced with #1130


[AIRFLOW-505] Support unicode characters in authors' names

Dear Airflow Maintainers,
Please accept this PR that addresses the following issues:

https://issues.apache.org/jira/browse/AIRFLOW-505

@zodiac please have a look -- I believe it will fix the issue you encountered, tested locally with a couple cases.

Current coverage is 65.53% (diff: 100%)

Merging #1792 into master will increase coverage by 0.14%

@@             master      #1792   diff @@
==========================================
  Files           143        143
  Lines          9883       9883
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
+ Hits           6463       6477    +14
+ Misses         3420       3406    -14
  Partials          0          0

Powered by Codecov. Last update afed622...77d172f

👍

hmm not sure why the jira issue did not get closed, closing it manually


Awake is always on

Microsoft PowerToys version
0.76.0
Installation method
Microsoft Store
Running as admin
No
Area(s) with issue?
Awake
Steps to reproduce
my pc screen keeps being on even if awake has been disabled closing powertoys resolves the issue
✔ Expected Behavior
disabling awake to allow my pc screens to turn off
❌ Actual Behavior
with awake being enabled or disable my screens wont turn of
Other Software
No response

/bugreport

I'm having the same issue.

For some reason that bug report is just a link to this issue and does not download the .zip. @thoughtfuldata could you please upload again?

The issue is fixed for me. After the update, I had to set again for my windows power plan. This fixed the issue for me

@TheHatter47 are you still having this issue? /needinfo


Avoid redirect by appending "/" for docs link

This eliminate the un-necessary redirect.
However, it seems maintainer that have access to CloudFlare for dubckdb.org account should configure http -> https redirect to avoid folks accessing straight http protocol for the domain.

Thanks! Will look into the Cloudflare configuration.


fix np.positive & np.negative

Hi, I found a bug in np.positive and np.negative. The diff calculate in the source is incorrect:
register_diff(np.positive, lambda x: +x[1])
register_diff(np.negative, lambda x: -x[1])

If we suppose that x = [1, -1], then the y = np.positive(x)=[1, 1]. We can see that y = x if x > 0 and y=-x if x < 0. So the diff of y should be y=sign(x)=[1, -1]

Hello. I think you’re confusing what np.positive and np.negative do. They correspond to +x and -x, regardless of the value of x. So np.positive(-5) = -5 and np.negative(-5) = +5. Your derivative for np.sign is also slightly incorrect, unfortunately, as it’s undefined at x == 0. So it should be np.where(x[0] == 0, float('nan'), x[1]).
The second part is due to the product rule where the input is a function of the input. So you apply the chain rule f’(x) * d/dx g(f(x)) where f(x) is x[0], g(x) is np.sign(x) in this case, and f’(x) is x[1] here.

What you’re suggesting is true for np.abs, however.

Sorry for that. I can't guess the usage of the two functions and I should open an issue for this before the pr. I will try to complete the np.abs. But I think there is another problem. np.exp2 calculates 2**p for all p in the input array. But the code to calculate the derivative for it is :
register_diff(np.exp2, lambda x: x[1] * np.log(2) * np.exp(x[0]))

It should be:
register_diff(np.exp2, lambda x: x[1] * np.log(2) * np.power(x[0]))

Ah, yes. That’s a mistake on my part, same for exp10. You can go ahead and fix that. I’d replace np.power(2, x) with np.exp2(x), but the rest seems good.

Hi, when I complete the np.abs as:
register_diff(np.sign, lambda x: np.broadcast_to(np.where(x[0] == 0, float('nan'), 0), x[1].shape))
register_diff(np.absolute, lambda x: x[1] * np.where(np.sign(x[0]) == 0, float('nan'), np.sign(x[0])))

The diff of np.abs is fine. But the diff of np.sign encounter a problem:
PS F:\OneDrive - sjtu.edu.cn\Project\GSOC\udiff\src> python .\test.py
<DiffArray, name=unbound, arr=
[2. 3. 0.]
>
<DiffArray, name=unbound, arr=
[ 1. -1. nan]
>
Traceback (most recent call last):
  File ".\test.py", line 12, in <module>
    y = np.sign(x)
  File "F:\OneDrive - sjtu.edu.cn\Project\GSOC\udiff\src\udiff\_uarray_plug.py", line 65, in __ua_function__
    diff_arr = global_registry[a[0]](*a[1:], **kw)
  File "F:\OneDrive - sjtu.edu.cn\Project\GSOC\udiff\src\udiff\_builtin_diffs.py", line 32, in <lambda>
    register_diff(np.sign, lambda x: np.broadcast_to(np.where(x[0] == 0, float('nan'), 0), x[1].shape))
  File "D:\Python\lib\site-packages\unumpy\_multimethods.py", line 105, in f
    return globals()[name](self, other)
  File "F:\OneDrive - sjtu.edu.cn\Project\GSOC\udiff\src\udiff\_uarray_plug.py", line 65, in __ua_function__
    diff_arr = global_registry[a[0]](*a[1:], **kw)
KeyError: <ufunc 'equal'>

But I don't know how to complete the diff of np.equal.

Hmm. Try x[0].arr.

Thx, the pr have committed.

Thanks @sangyx. This is in!


Repository Token is invalid (Deployment with Azure Static Web Apps)

When I do the deployment via Azure Static Web Apps, everything works fine until 4.iv. But when I send I get the following error message:

RepositoryToken is invalid. Provided token has invalid permissions and cannot be used to setup Github Action CI/CD. Admin rights are required for the repository.

What are some possible steps to fix this problem, or where can I find more resources to help me fix this issue?

I have the same problem, any updates on the solution?

Hey @v3gaaa,
I have found a way to complete the technical onboarding


updates to manual pages

During this waiting time the PCM plugin behaves as if the device "clock" is stopped, it does not generate any poll() events, and the application will be blocked when writing or reading to/from the PCM.

Apart from this PR, I've got one idea. Maybe, we should generate silence in case when BT transport is not acquired yet (for source PCMs)? This of course can be an option for PCM with some sane default (I'm not such whether by default PCM should generate silence or not). I'm not sure, but maybe there is a similar case with some hardware ALSA PCM... so BlueALSA should behave in similar way (or at least ALSA PCM plug-in).

Maybe, we should generate silence

Actually, I am already doing that in my own fork. There is a branch https://github.com/borine/bluez-alsa/tree/alsa-capture which has just that one change. As you can see, my solution turns out to be quite "ugly" in many ways, but at least the code is doing what I need it to do. I can raise a PR from it if you think it may be workable as a general solution.

As you can see, my solution turns out to be quite "ugly" in many ways, but at least the code is doing what I need it to do

OK, I see. I will think about it. Maybe the solution could be simplified if implemented in the server.... or maybe server can support it somehow, so the client code can be simpler. However, one think I'd like to avoid, if I'm not mistaken. I haven't read your code very carefully, but it looks to me that you are outputting silence not only during the initial not-acquired state, but also later. I think that the PLC code in the server should be responsible for inserting e.g. silence in places of missing packets. The case is that Bluetooth connection might be unstable, the delay might accumulate, but eventually all packets will be delivered. So, received audio will be complete (if written to file). Using precise timing in the ALSA plugin layer might insert silence in places where it should not be inserted...


[Offline support] Allow user to join/leave multiple projects

Project definitions would need to be explicitly stored locally so user can switch projects when offline.
Blocked by #19.

Hi @shobhitagarwal1612 ok to assign to you for now, as you already started this feature? Let's discuss details before starting work on it.

@gino-m Can we close this one?

Yep, thanks!


Add pybind support

Pybind11 support is required for velox python bindings. This initial PR adds support for getting pybind. Subsequent PRs will use pybind11 and setup the bindings.
Note: The expectation is that most of the times the python package will not be built and hence its not required to add pybind as a submodule.

cc: @raulcd @assignUser


Add validation for SPV_EXT_demote_to_helper_invocation

This depends on https://github.com/KhronosGroup/SPIRV-Headers/pull/121 and won't pass CI until that gets merged and I can update DEPS.

I've updated DEPS to pick up the new spirv-headers. The glslang change got merged already, and picking up spirv-headers makes it not fail validation in one of its self-tests, which causes CI to fail. How am I supposed to resolve this? I don't think I can change either repo without breaking the other one. Do I need to disable the test in glslang?

Oh wait, glslang has its own version of spirv-headers, I think I can just fix it in glslang first.

Removed WIP, I think this is ready.

Added the check for bool.

Please rebase and fix the formatting.


Player doesn't take damage if in another instance than the first

Player doesn't take damage if in another instance than the first. I've added it to globalEventHandler and everything works until transferred

I suspect this was caused by my bad code but who knows. I'm going to close this as this is no longer necessary