[WIP] uORB messages generated pretty print

This is an old branch I resurrected and didn't want to lose track of again. The idea is to create a print function for each uORB message at generation time. Currently the topic_listener does this with a separate python script (https://github.com/PX4/Firmware/blob/cc26c34691db1e622cddac6d330679fe61467d37/src/systemcmds/topic_listener/generate_listener.py), but has several small issues that are easily resolved when generating this properly at the source.
With a mechanism to print an arbitrary uORB message we can move listener over, and replace the many status and test messages throughout various drivers and modules. I'm also hopeful we can eventually fit this back into flash constrained devices. For example ekf2 status would grab and print the last copy of each published output message (estimator_status, etc). This largely eliminates the need for listener.
TODO

general review, restructuring, and cleanup

consider sharing the strings between the generated fields string and print helper
eg vehicle_attitude
constexpr char __orb_vehicle_attitude_fields[] = "uint64_t timestamp;float rollspeed;float pitchspeed;float yawspeed;float[4] q;float[4] delta_q_reset;uint8_t quat_reset_counter;uint8_t[3] _padding0;";``` void print_message(const vehicle_attitude_s& message)
{
printf("vehicle_attitude_s\n");
printf("timestamp: %llu\n", message.timestamp);
printf("rollspeed: %.3f\n", (double)message.rollspeed);
printf("pitchspeed: %.3f\n", (double)message.pitchspeed);
printf("yawspeed: %.3f\n", (double)message.yawspeed);
printf("q: [%.3f, %.3f, %.3f, %.3f]\n", (double)message.q[0], (double)message.q[1], (double)message.q[2], (double)message.q[3]);
printf("delta_q_reset: [%.3f, %.3f, %.3f, %.3f]\n", (double)message.delta_q_reset[0], (double)message.delta_q_reset[1], (double)message.delta_q_reset[2], (double)message.delta_q_reset[3]);
printf("quat_reset_counter: %u\n", message.quat_reset_counter);
}
```* ignore padding* update and simplify listener
* command line syntax is horrible for specifying the number of messages or instance
* ability to subscribe at a lower rate would be very helpful
* listener -n <number of messages> -i <instance number> -r <rate> message
* should make it clear if a message has never been published

consider adding pretty print options like...

time elapsed in seconds next to the timestamp in microseconds

eg timestamp: 12345678 (1.2 seconds ago)

euler angles next to a quaternion
decode some bitmasks?
boolean true/false

check all nested structures work

It might be worth pursuing this short term, it's already a ~ 2.5K flash savings on px4fmu-v2.

Adding timestamp context.

Updated listener to report if a topic has never been published, and it now works properly for position_setpoint_triplet (contains 3 position_setpoints).

Nice!


Request : Add Connection settings

Request : Please add annotations or appication properties for typical connection settings when connecting to a MongoDb hosted on a different system - ports, IP, user name ... thanks

That's a good issue for the community to tackle.


Rebuild with new presets for cmd-tools

It is for https://github.com/alpheios-project/components/issues/147

Coverage decreased (-11.8%) to 58.3% when pulling a5bca9463fbf7a343470558ba757b32613674d23 on for-cmdtools into a344ac8597b25a02d58c1088fcd71bc047f88b4d on master.


Fix for test case operator-install-status-no-privileges.

With this fix, the test case fails when resourceName's rules have been found in the CSV's clusterPermissions field and the operator was not cluster-wide installed.
Also, minor refactor to use a helper pointer to the env.Operators[i].

/dci-rerun


Issue with using dimension reduction of GPy

After using GPLVM to do a dimension reduction, how to reconstruct the data from low dimension to higher dimension? In the ealier version, we use gplvm.predict but now it seems it didn't work now. Can someone give me an example of how to do this?
Best,
Oscar

You can still use model.predict(model.X.mean) for the point estimate of the first moment and when you are working with the devel branch, you can also use the full latent distribution, by calling model.predict(model.X).

Am 10.06.2015 um 15:06 schrieb OscarLiXi<EMAIL_ADDRESS>After using GPLVM to do a dimension reduction, how to reconstruct the data from low dimension to higher dimension? In the ealier version, we use gplvm.predict but now it seems it didn't work now. Can someone give me an example of how to do this?
Best,
Oscar
—
Reply to this email directly or view it on GitHub.

Closing for now, please post on the user mailing list if you are having any further problems after following @mzwiessele suggestion!


Add support for sticky comments.

It is now possible for a mod to sticky his own top-level comment in a submission.
It would be great to add the functionality to PRAW.
I'm not familiar with the code yet; I might have a look at it and check whether I can implement something myself. I saw that the method to sticky a post is pretty simple.

Apparently the ability to sticky comments is still a beta feature.
Although the reddit API doesn't mention it explicitly, the source code does implement the feature.
Nevertheless, it's probably wisest to wait until feature is supported officially.

Sticky comments have actually left Beta, here's the /r/changelog post.
For comments, stickying is actually integrated into the distinguish endpoint. But, since Submission and Comment objects share the same PRAW method Moderatable.distinguish, I don't think we should add a sticky parameter to it, since it won't make sense for Submissions. Maybe we can add a more general data parameter / kwarg to Moderatable.distinguish, and then create a new method Comment.sticky that uses it to send the sticky flag.
How does this sound?

 I got misguided by the fact that the feature is not yet publicized in the API page (https://www.reddit.com/dev/api), and by the comments in the actual source code (https://github.com/reddit/reddit/blob/master/r2/r2/controllers/api.py#L3172).
I don't have much to say on the actual implementation; given the difference in the API between how to sticky Submissions and Comments, creating an ad-hoc Comment.sticky method makes sense. I'm not familiar with the praw library, but I'm going to have a quick go on implementing this. Is there any particular procedure I should follow to test the code before submitting a pull-request?

Is there any particular procedure I should follow to test the code before submitting a pull request?

I see that you've crossed this part out, but I would like to clarify that yes, there is. If you do pip install flake8 you should be able to run flake8 from the command line while inside your PRAW development directory. This will check for pep8 compliance. Try this out before making any changes, because it will print out lots of messages you don't need to worry about. After making changes, run it again to see if you've introduced any new ones or if it's just the unimportant ones.
It's also great to write unit tests for each new feature. \tests\test_comments.py could use a new OAuth-based test like the ones seen in \tests\test_submissions.py. Once you've written the test, doing py setup.py test from the main praw directory will run all the tests and give you a report.
Thanks for giving this a try! Don't hesitate to ask for help.

I've made a Comment.sticky method to sticky a comment (at the same time, distinguish it as made by a mod), while Moderatable.undistinguish should be used to unsticky while also resetting the distinction. I've tested it briefly myself and it seems to work. As far as I can tell, there is no method which allows to check whether a comment is distinguished or not, so I don't think there are any meaningful unittests to add. Am I wrong? (I'll submit a pull-request as soon as you confirm).
I wasn't able to do much about the OAuth-based tests you mentioned. I tried making oauth-based tests similar to the login-based counterparts in \tests\test_comments.py, but couldn't get much to work, mostly because I'm not familiar enough with the login system, the oauth system, or the "token scopes".

I just noticed the Submission and Comment classes have a distinguished property and a stickied attributes which are used, for example, in the test/test_submission.py. But I can't find any reference to those in the documentation nor in the actual code. Could you give me a pointer as to where I can find more about how these attributes are implemented?

The JSON returned from reddit is parsed and the key pairs (in this case
"distinguished" and "stickied") are set as attributes on the object to
their values. So in other words, if reddit.com says it's stickied /
distinguished, that means it is.
On Monday, February 15, 2016, bigblindbais<EMAIL_ADDRESS>wrote:

I just noticed the Submission and Comment classes have a distinguished
property and a stickied attributes which are used, for example, in the
test/test_submission.py. But I can't find any reference to those in the
documentation nor in the actual code. Could you give me a pointer as to
where I can find more about how these attributes are implemented?
—
Reply to this email directly or view it on GitHub
https://github.com/praw-dev/praw/issues/589#issuecomment-184425317.

I started playing with this feature today, but I realized we still had the issue open. @bigblindbias, do you want to continue working on this? I don't want to steal your thunder but I don't mind writing this either.
At the moment I'm still feeling that the kwargs style is the way to go, just so that when people do help(submission.distinguish) they don't get confused by a sticky parameter that only applies to comments. The **kwargs version is more innocuous and I don't expect people to put extra arguments in there just for fun. There are downsides to every option due to the way reddit has implemented this.

Hi, sorry I never delivered upon this. At one point I kinda got stuck writing some test code (had difficulty understanding how to use betamax) and then I just got sidetracked away.
If it were purely my decision I'd stick to having a sticky parameter just to make it more explicit, but I honestly don't care either way as long as the functionality exists.  I'll submit a pull request with what I got so far; someone should definitely double check that I haven't misused something (e.g. betamax) (which is entirely possible).
The contribution is very minor, so if it is rejected, feel free to step in and write this in a way which adheres to the library standard.

I'm very interested in this as well (working on the php raw wrapper)
Is there any information available on what fields/parameters need to be set? I have a hard time looking for it, the official documentation doesn't give anything away.

@radonthetyrant If you already have support for distinguishing comments in your wrapper, all you need to do is add a new parameter "sticky" that's true or false. Here's what I see in Chrome's network tab when stickying a comment:

In PRAW we just use /api/distinguish and pass "yes" in as the distinguish type instead of making it part of the URL.
Hope that helps!

I did that just now:

Result is a 200 OK API response and no stickied comment:

@radonthetyrant looks like sticky should be true not yes.

Yes that works now. BUT: the bot account has to opt-in to the beta program under preferences as well to make it work.

Thanks @bboe @voussoir !

Closed via #602


Wrong file opened in editor after copy/past

VS Code Version: 1.55.2
OS Version: Windows_NT x64 10.0.18363

Steps to Reproduce:

Does this issue occur when all extensions are disabled?: Yes

This is a very disappointing bug : when we copy past a file, the file selected in menu is not the one opened in the editor. Intuitively we expected have the new pasted file opened in editor, not have the "old" copied file opened in editor. Please, can you fix this?
Thx

Duplicate, fixed in insiders


Change from virtualenv to venv?

I got this:
% make test_package_python
<snip>
/Users/cdeil/anaconda3/envs/hcem/bin/python3.7 -m virtualenv temp_python3.7/venv
/Users/cdeil/anaconda3/envs/hcem/bin/python3.7: No module named virtualenv

(see full log)
Since Python 3.3 the venv package is in the Python standard library:
https://docs.python.org/3/library/venv.html
Change python -m virtualenv to python -m venv to get rid of this external dependency to the third-party virtualenv package?
Alternatively, if you want to keep virtualenv for some reason, the dependency should be mentioned here:
https://developers.google.com/optimization/install/python/source_mac#python
I could send a PR with the change. Let me know.

need to check if it fulfill our simple use case.
Should be done for the cmake build also (try to keep them in sync)
For the record:
https://github.com/google/or-tools/blob/5ff76b487a6c2006326765d6417964599eedc8c9/makefiles/Makefile.python.mk#L1114-L1116
and here:
https://github.com/google/or-tools/blob/5ff76b487a6c2006326765d6417964599eedc8c9/cmake/python.cmake#L232-L252

maybe related to #1960 which need to be done in google internal code base to limit the divergence...


Use more descriptive name for blocked CIDR ranges

Rename blocked CIDR ranges with more accurate descriptor.
Required for all non-trivial PRs

[x] Rebased/mergable
[x] Tests pass

@pierwill This has already been released.  We shouldn't break backwards compatibility.

We shouldn't break backwards compatibility.

Agreed! Can we look into Tim's suggestion above? I'd be happy to help implement it with a little guidance from the team. 😇

@pierwill Is this something you still plan on doing, or should I close the PR?

I'd still like to get around to this at some point. But we can close this PR.


deploy develop to heroku

needs to be tested to make sure we are not breaking anything. I took a look, but definitely want other eyes on it before making it live. current deployment on heroku is develop, but merging this commit into main will cause heroku to follow main and auto-deploy main from here on out.

I suppose this could also wait until the project is graded for everyone, then we can merge it. develop is the main branch, so everything should be graded out of that branch. we don't need code clean-up on heroku, and since before now, i've been using develop to heroku, it should be perfect for grading. I set up auto-deploy out of main for anything we decide to add after grading.

github-heroku pipeline is suspended due to github oauth tokens being revoked.


Option to not remove default attribute values

At the moment default attribute values are always removed. I'm interested in whether an attribute has been set or not even if it's to the default so a flag to disable this behaviour would be useful.

Sounds fine to me.
You want to create a pull request for https://github.com/callanmcnamara/scour/commit/2d427cf4b3f02911c7450aa1cf980d0cc78d3eb5?
I'd prefer the option to be renamed as --keep-default-attributes, though.
Also a unittest  in testscour.py to check if this setting works for some typical attributes would be much appreciated.


Allow adjustment of character select screen music

With /porch, I tried to replace 4 - Prelude - Discoveries with another track, since I was a bit tired of that music from a month of long login queues, but I found it didn't work.
Would it be in scope to add support for letting track 4 on the character menu, be replaced successfully? Or would you say no and that it be more in scope for another plugin like TitleEdit as that one manages the screen just before.

Please note that this repository for the plugin is not being maintained, and this issues page is not monitored. Issues should be brought up here: https://github.com/lmcintyre/OrchestrionPlugin
I do think something like this is more intended for Title Edit. The BGM system that handles the title screen theme is not the same BGM system that plays music when in-game, so Orchestrion cannot control it and it would require more research to implement, for something that another plugin already handles.

thanks, I was looking for upstream and thought this was it.
I'll hit up titleedit instead.


fixed unittest SkipNonSerializedAttributeIfNoSerilizedAttribute becau…

…se it seems to be working

This test means, that Serializer should ignore NonSerializedAttribute if the class is not marked by SerializableAttribute

ah, ok. Didn't see that


Sniffing with MissingPackageTag even if excluded

When testing with phpcs -s --standard=phpcs.xml test.php
I get Missing @package tag in file comment (Squiz.Commenting.FileComment.MissingPackageTag)
But phpcs -s --standard=phpcs.xml test.php -e | grep -i MissingPackageTag doesn't output matches.
Where on earth does it get it? In WordPress-Docs ruleset it's excluded.
PHP_CodeSniffer version 3.0.2
WPCS at master in ~/github/wpcs
My phpcs.xml
<?xml version="1.0"?>
<ruleset name="WordPress Project">
	<description>A custom set of rules to check for a WPized WordPress project</description>

        <config name="installed_paths" value="~/github/wpcs"/>

	<!-- Exclude WP Core folders and files from being checked. -->
	<exclude-pattern>/docroot/wp-admin/*</exclude-pattern>
	<exclude-pattern>/docroot/wp-includes/*</exclude-pattern>
	<exclude-pattern>/docroot/wp-*.php</exclude-pattern>
	<exclude-pattern>/docroot/index.php</exclude-pattern>
	<exclude-pattern>/docroot/xmlrpc.php</exclude-pattern>
	<exclude-pattern>/docroot/wp-content/plugins/*</exclude-pattern>

	<!-- Exclude the Composer Vendor directory. -->
	<exclude-pattern>/vendor/*</exclude-pattern>

	<!-- Exclude the Node Modules directory. -->
	<exclude-pattern>/node_modules/*</exclude-pattern>

	<!-- Exclude minified Javascript files. -->
	<exclude-pattern>*.min.js</exclude-pattern>

	<!-- Include the WordPress-Extra standard. -->
	<rule ref="WordPress-Extra">
		<exclude name="WordPress.XSS.EscapeOutput"/>
	</rule>

	<!-- Let's also check that everything is properly documented. -->
	<rule ref="WordPress-Docs"/>

	<!-- Add in some extra rules from other standards. -->
	<rule ref="Generic.CodeAnalysis.UnusedFunctionParameter"/>
	<rule ref="Generic.Commenting.Todo"/>

	<rule ref="WordPress.WP.DeprecatedClasses">
		<properties>
			<property name="minimum_supported_version" value="4.5"/>
		</properties>
	</rule>

	<rule ref="WordPress.WP.DeprecatedFunctions">
		<properties>
			<property name="minimum_supported_version" value="4.5"/>
		</properties>
	</rule>

	<rule ref="WordPress.WP.DeprecatedParameters">
		<properties>
			<property name="minimum_supported_version" value="4.5"/>
		</properties>
	</rule>
</ruleset>

Oh my bad, can't read. Grepped for different sniff.
@package is required https://github.com/WordPress-Coding-Standards/WordPress-Coding-Standards/blob/51884433afd5039e0839ba5559ac2f0d26301076/WordPress-Docs/ruleset.xml#L24-L25


Correct pace of ebikes and scooter

Atm, ebikes, scooters and bikes all have the same duration. Scooters usually don't go above 20 km/h, so setting calculating duration based on an average pace of e.g. 16 kmh may suffice, even inside cities.
Likewise for ebikes, we could set the average pace to 23 and compute duration from that. The exact numbers should be tested but I think it's better than making it generally X% faster since electric vehicles are rather independent from elevation profile (in contrast to bikes).

One function for each transportation - call functions for each step in compute_scores.py (e.g. compute_scores_ebike(dur, dist))


Fixed colors to follow the ayu-colors standard and tab color fixes

The ayu vim theme didn't respect the colors in https://github.com/ayu-theme/ayu-colors so I fixed them
The tab colors also didn't look very good so I changed that too

If you are interested, I have a fork with updated colors too.
Here's how it looks like with the same text as in your screenshot:

Sorry for the TabLine (which seemed to be one of the most important part of your PR) but I use a plugin that does things differently. I tried to set some highlights but have no idea about how it looks.
I am actively working on the fork and will happily take feedback there.


Maximum count of 4_294_967_295 on CountMinSketch

Hello all.
https://github.com/RaRe-Technologies/bounter/blob/21aeda1b88402bacb44ce92d05c08b632a1edb21/cbounter/cms_conservative.c#L10
Is it possible to increase this type of make it configurable through Python? Otherwise, the following snippet won't work:
from bounter import CountMinSketch
cms = CountMinSketch(depth=19, width=2 ** 30)
cms.increment("some_value", 4_294_967_295)
cms.increment("some_value", 1_000)

cms["google.com"] # should be 4_294_967_295 + 1_000 but instead returns 4_294_967_295

@jonsnowseven since my PR has been merged I believe this issue is now resolved.
Please confirm :)

from bounter import CountMinSketch  # version 1.2.0
from bounter.count_min_sketch import CellSize
cms = CountMinSketch(depth=19, width=2 ** 30, cell_size = CellSize.BITS_64)
cms.increment("some_value", 4_294_967_295)
cms.increment("some_value", 1_000)

print("{:,}".format(cms["some_value"])) # prints 4,294,968,295

It worked!
Thanks @jponf 🤜🤛


Do you have to call model speedup every time before inference to see performance gains?

Describe the issue:
I am running a training and pruning process where I train one model for 100 epochs and then prune at various percentages with NNI to create different sparsity models. Each time I create a new pruned model, I use NNI's model speedup before retraining/fine-tuning, and then save the model. However, when I want to time inference for the model's to compare their different inference times, I am seeing very similar times between the unpruned model and the pruned model. However, when I call prune and compress and then call the model speedup again before timing inference, I see better times. I couldn't find this in the documentation, but really my question is, do you have to call model speedup every time you load the model and before inference? Or if you call it, and save the model, and then later load it, should the model already be sped up? Any insight would be great, thanks!
Environment:

NNI version: 2.7
Python version: Python 3.8.10
PyTorch/TensorFlow version: 1.10.2+cu113
Is conda/virtualenv/venv used?: Yes

How to reproduce it?:
Train a model, prune it, call model speedup, then save the model. Then, load the model and perform inference and compare the time to the unpruned model, after warming up the gpu and averaging inference times over multiple runs.
Then, call the pruner and model speedup again on the already pruned and saved model, and perform inference again to compare.

hello @pmmitche , model speedup will replace the masked modules in your model with compact smaller modules (i.e., using Linear(50, 50) replace Linear(100, 100)). So you are right, save the compact model after call model speedup, and then later load it, the model should already be sped up.

That makes sense, thank you!


[📚] PerfMon still doesn't support Dart only initialization is not mentioned in getting started section

Problem
Performance Monitoring still doesn't support Dart only initialization. This is not mentioned in the newly updated (#8448) getting started section giving an illusion everything supports Dart only Initialization.
It is when we go into performance monitoring docs that the fact is mentioned.

Where previously it was mentioned in the getting started section like this:

Consequences
While migrating my code to dart only initialization executing flutter run ALWAYS throws
Error connecting to the service protocol: failed to connect to http://<IP_ADDRESS>:50769/a3uk2dDx_Hw=/.
Running flutter run -v made me think the culprit was Crashlytics due to the line:
Crashlytics could not find Google Services plugin task: processReleaseGoogleServices. Make sure com.google.gms.google-services is applied BEFORE com.google.firebase.crashlytics. If you are not using the Google Services plugin, you must explicitly declare googleServicesResourceRoot inputs for Crashlytics upload tasks.
It is only after doing a binary search on all the dependencies in a fresh project that I was able to pinpoint it's a perf-mon issue only to go into perf-mon docs to find the warning

@DebkanchanSamadder
Per the linked PR, the usage section / table that previously showed which plugins supported dart initialization, seemed to have been removed altogether and hence you are seeing the same for respective plugin in its usage section as you highlighted.
And if you are not seeing such section for other plugins, I think it indicates, the dart intialization is supported. Hope this answers your query.

Firebase analytics supports full dart only initialization now. Crashlytics also supports dart only initialization now but to catch native crashes you need to add the crashlytics Gradle plugin which does not depend on google-services. These are properly documented and even if they weren't they would work as they aren't strictly dependant on google-services.
However, the problem is perfmon will not work without google-services and will cause the app to not even start-up.
And although that is documented in perfmon docs I feel it's important to clearly mention it in the getting started guide as an absence of any such warning is misleading and makes it seem like everything supports dart only initialization now which can cause anyone new or migrating serious headaches and potentially days worth of time loss as it happened to me.

If devs would search for flutterfire performance monitoring and click this link https://firebase.flutter.dev/docs/performance/overview/, it shows the note as warning properly:

But I think OP wants this section to be here https://firebase.flutter.dev/docs/overview
/cc @russellwheatley

commenting to avoid being stale

In the new docs this section doesn’t exist

In the new docs this section doesn’t exist

In the new docs this section doesn’t exist

Yes and it makes it even more confusing

Hey @DebkanchanSamadder, please follow the instructions for setting up a Firebase app in the official documentation. We've released FlutterFire CLI which now writes your google service files for android and iOS into the relevant directory. Be sure to update to the latest FlutterFire CLI (dart pub global activate flutterfire_cli), and run flutterfire configure. You now don't have to worry about manually setting up config files. Hope this helps.


Follow Symbolic Links in Job Directory

Coverage decreased (-0.02%) to 91.576% when pulling 19b7dbf48f87be63e9cc85a20c78737acf2d9b48 on tgianos:followSymLinks into da88627a30d837adf902274b4ce303bcba3735ee on Netflix:master.


Fix extract function with partial block selection

Reproduction:
fn foo() {
    let n = 1;
    let mut v = $0n * n;$0
    v += 1;
}

Select the snippet ($0) and use the "Extract into function" assist.
Extracted function is incorrect and does not compile:

fn foo() {
    let n = 1;
    let mut v = fun_name(n);
    v += 1;
}

fn fun_name(n: i32) {}

Omitting the ending semicolon from the selection fixes the extracted function:

fn fun_name(n: i32) -> i32 {
    n * n
}

Cause:

When extraction_target uses a block extraction (semicolon case) instead of an expression extraction (no semicolon case), the user selection is directly used as the TextRange.
However, the existing function extraction logic for blocks requires that the TextRange spans from start to end of complete statements to work correctly.
For example:

fn foo() {
    let m = 2;
    let n = 1;
    let mut v = m $0* n;
    let mut w = 3;$0
    v += 1;
    w += 1;
}

produces
fn foo() {
    let m = 2;
    let n = 1;
    let mut v = m let mut w = fun_name(n);
    v += 1;
    w += 1;
}

fn fun_name(n: i32) -> i32 {
    let mut w = 3;
    w
}

The user selected TextRange is directly replaced by the function call which is now in the middle of another statement. The extracted function body only contains statements that were fully covered by the TextRange and so the * n code is deleted. The logic for calculating variable usage and outlived variables for the function parameters and return type respectively search within the TextRange and so do not include m or v.

Fix:

Only extract full statements when using block extraction. If a user selected part of a statement, extract that full statement.

bors r+


[fix] fix renderer for screen-less, window-less canvas (e.g. node).

test with:
npx ts-node examples/node/visualize_on_image.ts examples/example.jpg

Tested on my machine and looks good to go. Good catch.


Laravel 5.7 Shift

This pull request includes the changes for upgrading to Laravel 5.7. Feel free to commit any additional changes to the shift-71816 branch.
Before merging, you need to:

Checkout the shift-71816 branch
Review all pull request comments for additional changes
Update your dependencies for Laravel 5.7
Run composer update (if the scripts fail, add --no-scripts)
Clear any config, route, or view cache
Thoroughly test your application (no tests?, no CI?)

If you need help with your upgrade, check out the Human Shifts. You may also join the Shifty Coders Slack workspace to level-up your Laravel skills.

:x: Shift could not upgrade the following files since they differed from the default Laravel version. You will need to compare these files against the default Laravel 5.7 versions and merge any changes:

[ ] app/Http/Controllers/Auth/RegisterController.php

:information_source: Laravel 5.7 removed the Blade "or" operator in favor of PHP's built-in ?? "null coalesce" operator.
Shift automated this change. However, your application may still contain instances of or if you are using Blade syntax outside of the resources folder.

:warning: Laravel 5.7 changed the environment variable QUEUE_DRIVER to QUEUE_CONNECTION. Shift automated this change. However, you should review this server configuration or .env files outside your project to see if they need to be changed.

:information_source: Laravel 5.7 removed the resources/assets folder in favor of placing its contents directly under resources. Shift moved these files and attempted to update references in your webpack.mix.js file. However, you may need to update additional references within your application code.
While Shift encourages a fully upgraded application, this new structure is not required. If this change significantly impacts your frontend, you may revert this commit with git revert bc6148ae.

:information_source: Laravel 5.7 now supports email verification when users register for your application. If you have implemented this feature yourself you may now be able to take advantage of this native functionality. For more details, review the documentation on Email Verification.

:warning: Laravel 5.7 has reached end of life. It no longer receives bug fixes or security updates. Shift recommends continuing to upgrade to the latest version (Laravel 9.x).
For tips on running multiple Shifts effectively, watch upgrading old Laravel applications.


blender 2.8 cant turn on pugin version 1.12.2

Same error here, i tried to change directory to the addons folder of the app, i renamed the folder without "-" and none spaces but the error persists.

Only the dev version of cats works in Blender 2.80 currently. Install this: https://github.com/michaeldegroot/cats-blender-plugin/archive/development.zip


Add Darwin Analytics

Thank you!
General

✏ Mark the necessary items without changing the structure of the PR template.

[x ] Pull request template structure not broken

Type

ℹ  What types of changes does your code introduce?

👉 Put an x in the boxes that apply

[ ] Fix
[x ] Feature

Checklist

ℹ  Check all checkboxes - this will indicate that you have done everything in accordance with the rules in CONTRIBUTING.

👉  Put an x in the boxes that apply.

[x ] Title as described
[ x] Make sure you put things in the right category!
[ x] Always add your items to the end of a list

Open Source

[ ] Link description does not contain a link to an author / third-party resource
[ ] The documentation (README) contains a description of the project, illustration of the project with a demo or screenshots and a CONTRIBUTING section
[ ] The documentation is in English.
[ ] The project is active and maintained.
[ ] The project accepts contributions.
[ ] Not a commercial product

Apps/Websites

[x ] The website is available without errors or ssl certificate problems, and load in a reasonable amount of time.
[x ] The website is using vuejs intensively. It should detect vue with vue-devtools.

If you cannot detect vue with vue-devtools due to work at non public pages (e.g. for enterprise website), you can send Pull Request with screenshot that detected it.

[ x] The website is original and not too simple. For that reason, blogs and simple landing pages are rejected.
[x ] A commercial product using Vue, provided that guests could reasonably check out how Vue was used (i.e. A headless CMS which uses Vue for the Admin/editor Area and offers a free tier).

@Scrum i can assure you it's built w Vue3. The pages are prerendered using Vite. How to prove that?

@antfu @Akryum Are there tools that can inspect the presence of a framework on a this site?


Say Hay Issue

Please say hay to the other's 💃

hay!

hay!

hay

hay!

hay hey hey!

hay

Hay!

hi!

hay

Hay?

hey

Hi

Hay!!

hay

hay!

Hay!

Hay!

hay

Hay

Hay

Hay!

Hay!

Hello everyone!!

I feel like this repo is dead.

Hello!

Hay

hay

Hayn't

Hay!

Hay

hay!

hay!

hay!

Hay!

Hay!

Hay..

Hello everyone :)

hay

hi all!

Hay!

Hay !

Hay!

hay

hay

Hay!

Hay

Hay

hay


No audio with stock docker-compose.yaml | Host audio works fine

Hello Community, hello @mikebrady!
First off: Thank you for the great work being done!
Now to my issue:
I got a somewhat rare problem. I think.
After experimenting with my SBC (Rock 5B) for the past month I finally settled for a kernel (6.1.43-rockchip).
Sometime early on I already had shairport-sync running perfectly fine with the stock shairport-sync docker-compose.yaml.
However now I do not get any AirPlayed audio anymore. Searching for a solution I realised that with my current kernel defaults to HDMI-audio. I fixed this with an /etc/asound.conf file configuring the headphone jack as the default output device. This apparently works fine as I can just play something on the (headless) host using aplay ./test.wav.
However I still do not get any output via AirPlay. I already checked the docker containers shairport-sync.conf, but it looks good to me, not specifying anything, and thus defaulting to alsa, and whatever the host does (at least this is how I think it works).
Now I hit a dead end as to what else to try.
Any help is appreciated.
Best Rastafabisch

EDIT: I also tried restarting the SBC and the docker container - no dice.

I fixed it, even though I do not like the fix…
What makes it work is passing through said /etc/asound.conf file as a volume in the docker-compose.yaml file.
This means however, that the container does not respect the hosts set audio device. I would prefer that the audio outputs wherever I tell the host to route it to. This however appears to be a docker issue, rather than a shairport-sync one.
Nonetheless, if anyone has any suggestions as to how achieve my desired behaviour I'd be glad to hear about it.
That said I think it might be good idea to incorporate my findings into the official yaml file.
    #volumes:
    #  - /etc/asound.conf:/etc/asound.conf # Respect the hosts configured default audio device


PIP-118: Do not restart brokers when ZooKeeper session expires

Motivation
After all the work done for PIP-45 that was already included in 2.8 and 2.9
releases, it enabled the concept of re-acquirable resource locks and leader
election.
Another important change was to avoid doing any deferrable metadata operation
when we know that we are not currently connected to the metadata service.
Finally, that enabled to stabilize in 2.9 the configuration setting that allows
brokers to continue operating in a safe mode when the session with ZooKeeper
is expired.
The way it works is that, when we lose a ZooKeeper session, the data plane will
continue to work undisturbed, relying the BookKeeper fencing to avoid any
inconsistencies.
New topics are not be able to get started, but existing topics will see no
impact.
The original intention for shutting down the brokers was to ensure that we
would automatically go back to a consistent state, with respect to which
resources are "owned" in ZooKeeper by a given broker.
With the re-acquirable resource locks, that problem was solved and thoroughly
tested to be robust.
Proposed changes
In 2.10 release, for the setting:
# There are two policies to apply when broker metadata session expires: session expired happens, "shutdown" or "reconnect".
# With "shutdown", the broker will be restarted.
# With "reconnect", the broker will keep serving the topics, while attempting to recreate a new session.
zookeeperSessionExpiredPolicy=shutdown

Change its default value to reconnect.

I want to try to implement this feature, could you assign it to me. Thanks.


What about some Linux prefs? huh! :)

https://cat-in-136.github.io/
https://www.wilderssecurity.com/threads/firefox-lockdown.368003/page-10#post-2633173
@Roman-Nopantski: just check this, then you can remove this post.

We need to bulk up (from nothing) prefs for Linux. That's could be a bit of a starter of a list. I'll just change the topic and tag it as need help.

I propose that we create a preferences folder and put a linux.js file in there for all the linux-specific prefs.

Just like Android specific prefs, as we come across Linux only ones, simply open a new issue, discuss it, and if we add it, denote it as such.

https://github.com/ghacksuserjs/ghacks-user.js/issues/12#issuecomment-285674797


Nothing would boot for me until I set EFI/SMC vars

From https://www.maketecheasier.com/install-macos-virtualbox/:
VBoxManage setextradata "[name of vm]" "VBoxInternal/Devices/efi/0/Config/DmiSystemProduct" "iMac11,3"
VBoxManage setextradata "[name of vm]" "VBoxInternal/Devices/efi/0/Config/DmiSystemVersion" "1.0"
VBoxManage setextradata "[name of vm]" "VBoxInternal/Devices/efi/0/Config/DmiBoardProduct" "Iloveapple"
VBoxManage setextradata "[name of vm]" "VBoxInternal/Devices/smc/0/Config/DeviceKey" "ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc"
VBoxManage setextradata "[name of vm]" "VBoxInternal/Devices/smc/0/Config/GetKeyFromRealSMC" 1

Neither Mojave nor High Sierra would boot until I set those values.

Saved my day!


Selecting same file again, not working

I am using version 2.3.10, but the issue of trying to upload same file multiple times is still not working for me.
The text: Successfully uploaded keeps showing for me, while it should be reset to default.
I have included the fileOrFiles param as it is mentioned in the doc.

It should be working fine, please check the demo example.


Isolate tenant namespace istio resources

Istio violates the cluster-scoped vs namespace-scoped separation with
resources such as ServiceEntry that could allow a resource created in
one namespace to affect the state of the whole cluster. This uses
gatekeeper to enforce namespace isolation for these offending istio
resource types.
Some namespaces (kube-system, gsp-system, istio-system) are excluded as
some entries need to be global (such as the egress safelist configured
in *-cluster-config).

Before rolling this out we need to fix all the existing items outside system namespaces that don't set exportTo: ["."]


responsive issue on table action bar

Detailed description

Describe in detail the issue you're having.

Is this a feature request (new component, new icon), a bug, or a general issue?

Is this issue related to a specific component?

What did you expect to happen? What happened instead? What would you like to see changed?

What browser are you working in?

What version of the Carbon Design System are you using?

What offering/product do you work on? Any pressing ship or release dates we should be aware of?

Steps to reproduce the issue

Step one
when there are a few actions after selecting elements in the table, the list of actions will overflow to the second line and become hidden
Step two
Step three
etc.

Additional information

Screenshots or code

Notes

Like this?

It looks like an issue on the carbon-components side, so definitely open an issue here: https://github.com/carbon-design-system/carbon

just created an issue in carbon to track: https://github.com/carbon-design-system/carbon/issues/5253

Thanks!


Possible to prevent following links away from current domain?

Hi, thanks a lot for this! Would it be tricky to have an option to prevent the user from navigating away from the current website? I'm trying to lock things down for my kid. Thanks!

You need to make changes to this block of code:
https://github.com/Jipok/website-to-apk/blob/b45e85551e2271e405a998d6c9c7ba6146f9298c/app/src/main/java/com/myexample/webtoapk/MainActivity.java#L84C1-L87C29
For example just remove:
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
view.getContext().startActivity(intent);

And then nothing will happen when opening a non-main site.


login bug fix

Bug fix for the following issues
#365
#368

I believe this also fixes issue #373

@developedsoftware thank you for contribution

Still having the same issue in login.

Is this permanent solution?

It should be yes, what error are you still getting?

Hi @developedsoftware
Now it's worked actually my instagram account giving suspicious login attempt. I solved this issue then it's worked.
Thank you,

@developedsoftware  Is this Permanent solution?

@developedsoftware  it's giving error on login... what i will do?


chore: release 0.11.1

:robot: I have created a release *beep* *boop*
0.11.1 (2022-06-20)
Bug Fixes

set productName to Swarm (3013b29)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/ethersphere/bee-desktop/releases/tag/v0.11.1 :sunflower:


snake case field name

Good day,
Is it possible to have a field name with an under score? Currently have to integrate with a application which has a few fields with under scores in their field names.

Sure, it is possible. The Micro Orm relies on the DTO class in order to get/put data on database. You can create a map with underscore like this:
class MyTable
{
    public $field_id;
    public $field_value;
}

or you can create a FieldMap like this:
// The class does not have the snake case
class MyTable
{
    protected $fieldid;
    protected $fieldvalue;

    public function getFieldId() {...}
    public function setFieldId($field_id) {...}
    public function getFieldValue() {...}
    public function setFieldValue($field_value) {...}
}

// Creating the mapping
$mapper = new \ByJG\MicroOrm\Mapper(
    \ByJG\Sample\MicroOrm\SnakeCase\MyTable::class,
    'my_table',
    'field_id'
);

// Here we are mapping the DTO property to a database field property
$mapper->addFieldMap("fieldid", "field_id");
$mapper->addFieldMap("fieldvalue", "field_value");

A created a Gist with a full functional example. I hope it help you.

Here the gist: https://gist.github.com/byjg/ba6dbfbe3424ad5da1471bd545e82598

thanks for the update, I was using the add field alias instead. But I think that is for select joins

Yes, you're correct - Field Alias is for select joins :)


Random exception in python when using multiprocessing due to rdseed failure

When I am running a large number of samples simulations simultaneously using stim in a massively multi-process environment (python not supporting multi-threading, I use multi-process computation using python multithreading starmap), this happens semi-randomly when I run a multi-threaded simulation, see the stack trace below:

This seems to be related to a multi-threading bug  in libstdc++, so perhaps using the approach used by the google cloud c++ api would be a good approach. See:
https://github.com/googleapis/google-cloud-cpp-common/pull/208
https://github.com/googleapis/google-cloud-cpp-common/pull/272
seeing as the call to random_device is only done once per process in PYBIND_SHARED_RNG(), it is probably safe performance-wise to use the second fix, as the performance regression should be very minor.
This seems to be related to the shared rdseed buffer in certain Intel cpus.

The fix you're suggesting is
#if defined(__linux) && defined(__GLIBCXX__) && __GLIBCXX__ >= 20200128
    std::random_device rd("/dev/urandom");
#else
  std::random_device rd;
#endif

instead of just std::random_device rd;?

Urgh, looking over some of the threads on this around the internet. what a gigantic mess. There's something deeply wrong when you have to workaround standard library functionality not doing what it's supposed to do.

Yeah, basically, for the immediate fix.
And don't I know it. This really should be handled by the standard library, why it isn't is super annoying.

I mean technically it is allowed to except in the standard, but the failure mode really should be more graceful here.

stim-1.3.dev0.tar.gz
Could you check that this package no longer triggers the bug? Download it, pip install DOWNLOADED_FILE into your virtual env, and see if still throws.

Could you try pip installing this file into the relevant environment, and confirming that it makes the problem go away?
stim-1.3.dev0.tar.gz

I'm going to move forward with publishing a release with this fix to avoid holding up other bug fixes.


Exporting in adobe rgb 1998 and resulting in srgb

I have exported in several different color profile (ICC) but the result is always the same sRGB this only happen when I export the webp animated when still the color profile is the corrrect one ( rgbo adobe 1998)
Mac user

Could you provide the file used and describe the exact steps to reproduce the issue? The versions of your OS, Photoshop and WebPShop would be helpful too.

I can't not exactly shared the file due confidentiality policies of the company, but the OS is catalina, Photoshop (23.5.1) and webshop is 0.4.3.
steps

open file with adobe rgb 1998 color profile.
set the layer names to enable animation.
save file in webshop and select keep icc to keep color profile
exported file has different as jpg or webp( not animated webp) in fact has sRGB color profile colors.

Thank you, this is clearer.

I can't not exactly shared the file due confidentiality policies

Is the ICC profile confidential or only the pixels? Maybe you could share another unrelated image that demonstrates the same issue (your image but with white pixels, some image found on the internet etc.)? What is the format of your source image?


First commit of mr.robot to github - connecting to fabianferno

This is gonna be legen... wait for it!

dary!


MM-47056: Migrate "components/setting_item_max.jsx" to Typescript

Summary
Migration of components/setting_item_max.jsx to Typescript
Ticket Link
Fixes https://github.com/mattermost/mattermost-server/issues/21138
Fixes https://mattermost.atlassian.net/browse/MM-47056
Related Pull Requests
None
Screenshots
None
Release Note

Hello @babinderrathi,
Thanks for your pull request! A Core Committer will review your pull request soon. For code contributions, you can learn more about the review process here.

E2E tests not automatically triggered, because PR has no approval yet. Please ask a developer to review and then try again to attach the QA label.

@babinderrathi Please fix the type check

/release-note-none

/update-branch

/update-branch

This PR has been automatically labelled "stale" because it hasn't had recent activity.
A core team member will check in on the status of the PR to help with questions.
Thank you for your contribution!

@babinderrathi can you please resolve the conflicts to continue with QA review? thanks 😄

/update-branch

/e2e-test

Successfully triggered e2e testing!
https://git.internal.mattermost.com/qa/cypress-ui-automation/-/pipelines/255937

last e2e cycle failed, re-running

/e2e-test

Successfully triggered e2e testing!
https://git.internal.mattermost.com/qa/cypress-ui-automation/-/pipelines/257220


java.lang.RuntimeException: setParameters failed

E/SurfaceView: Exception configuring surface
java.lang.RuntimeException: setParameters failed
at android.hardware.Camera.native_setParameters(Native Method)
at android.hardware.Camera.setParameters(Camera.java:2102)
at com.pengke.paper.scanner.scan.ScanPresenter.initCamera(ScanPresenter.kt:124)
at com.pengke.paper.scanner.scan.ScanPresenter.surfaceCreated(ScanPresenter.kt:129)
at android.view.SurfaceView.updateSurface(SurfaceView.java:670)
at android.view.SurfaceView$2.onPreDraw(SurfaceView.java:143)
at android.view.ViewTreeObserver.dispatchOnPreDraw(ViewTreeObserver.java:977)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2474)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1460)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:7183)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:949)
at android.view.Choreographer.doCallbacks(Choreographer.java:761)
at android.view.Choreographer.doFrame(Choreographer.java:696)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:935)
at android.os.Handler.handleCallback(Handler.java:873)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:193)
at android.app.ActivityThread.main(ActivityThread.java:6669)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)

it seems I set wrong configuration for some device, I just update the preview and picture  size configuration, this maybe help. can you please pull the newest code and have a try? thank you

I did clone latest repository but error is still there.
can you help?
thanks..

so what is your device resolution? error is caused by i set wrong camera resolution configuration, or may be you can just try another device see what is happening.

i am wondering if you are using a virtual device? this project is not work on virtual device, so if you are using a virtual device, you should replace with a real one

yes i was tring it on android emulator i'll check on my phone

there are several images on detecting rectangle process including origin image, cropped image and enhanceed image, i do not save it to disks due to i donot know which one you want. i think you can change the code and save it disk on your need or it's my pleasure to help you save these picture to disks on your need. so if you need my help to do this, you can tell me which picture you want to save to disk.

sorry for my poor English~~

I don't how to code in kotlin if you could tell me how to save the enhanced image to the disk.
it would be of great help.
and also the menu option is not displaying in the app.

ok, when i finished, i will tell you.

I don't how to code in kotlin if you could tell me how to save the enhanced image to the disk.
it would be of great help.
and also the menu option is not displaying in the app.

I add a menu to save picture, so you can save the picture to your disk. path is: /storage/emulated/0/smart_scanner
you can update and have a try.

thanks for the help but the auto cropping is not working now

yes that's what I am saying that it is not detecting the paper


Add option to define a custom tagName for the element returned

By default the returned element is a <div>.
I think it would be nice if we would be able to change it to <p> for example.

👍


fix travis CI

Description
fix TravisCI after the recent docker image update.
on a side note:

when did our ctests become so slow??? I remember back when they used to take 1-2 minutes total
we should probably work on switching over to AWS codebuild, at some point

Any idea why the tests take so much longer nowadays?


feat: publish refinery instance ID during pubsub peer comms

Which problem is this PR solving?
When publishing peers via redis pubsub, we need a way to identify whether a node can receive keep and drop decision messages. This is important when performing migrations that update an older deployment that does not support keep/drop decisions to one that does.
Also, it would also be nice to not have to rely purely on a peer address as a means of testing whether the instance if the same for determining whether we need to re-send trace decisions. For example, it's possible the same IP address is used even though the refinery instance has restarted.
This PR updates refinery to generate a new instance ID on start up and then publish the refinery's instance ID as part of it's peer register/unregister commands. As the message format is changing, any messages that does not conform to the new format will not be added as valid peers.
Short description of the changes

Generate and inject an instance ID during process start up in main.go
Update redis pubsub to take the instance ID via injection
Update redis pubsub peer commands to also specify the instance ID
Update marshal and unmarshall funcs to handle and require instance ID
Update peers to be a set of peerRecord's that has both ID and address
Update pubsub tests

I apologize in advance -- I started playing with this on my own machine, and decided to try writing MapWithTTL, and I liked that better, so I ended up creating #1420 because it was going to be hard to do as a modification to this PR.
If you dislike it we can use this one instead.


Auction should support buy now which bidder can buy now with fixed price without going through Auction

Auction Pallet should support Buy Now

Added this feature in PR - https://github.com/bit-country/Bit-Country-Blockchain/pull/72

Closed by #72


When calling File.binary on a 0 bytes file will throw an error

Investigating a fix for https://github.com/thesp0nge/dawnscanner/issues/245, i have identified the error comes from an empty file.
Traceback (most recent call last):
	11: from $rbenv_dir/bin/dawn:23:in `<main>'
	10: from $rbenv_dir/bin/dawn:23:in `load'
	 9: from $rbenv_dir/lib/ruby/gems/2.5.0/gems/dawnscanner-1.6.9/bin/dawn:249:in `<top (required)>'
	 8: from $rbenv_dir/lib/ruby/gems/2.5.0/gems/dawnscanner-1.6.9/lib/dawn/engine.rb:314:in `apply_all'
	 7: from $rbenv_dir/lib/ruby/gems/2.5.0/gems/dawnscanner-1.6.9/lib/dawn/engine.rb:314:in `each'
	 6: from $rbenv_dir/lib/ruby/gems/2.5.0/gems/dawnscanner-1.6.9/lib/dawn/engine.rb:315:in `block in apply_all'
	 5: from $rbenv_dir/lib/ruby/gems/2.5.0/gems/dawnscanner-1.6.9/lib/dawn/engine.rb:392:in `_do_apply'
	 4: from $rbenv_dir/lib/ruby/gems/2.5.0/gems/dawnscanner-1.6.9/lib/dawn/kb/pattern_match_check.rb:60:in `vuln?'
	 3: from $rbenv_dir/lib/ruby/gems/2.5.0/gems/dawnscanner-1.6.9/lib/dawn/kb/pattern_match_check.rb:60:in `each'
	 2: from $rbenv_dir/lib/ruby/gems/2.5.0/gems/dawnscanner-1.6.9/lib/dawn/kb/pattern_match_check.rb:64:in `block in vuln?'
	 1: from $rbenv_dir/lib/ruby/gems/2.5.0/gems/ptools-1.3.6/lib/ptools.rb:96:in `binary?'
$rbenv_dir/lib/ruby/gems/2.5.0/gems/ptools-1.3.6/lib/ptools.rb:440:in `check_bom?': undefined method `force_encoding' for nil:NilClass (NoMethodError)

Good catch, thanks!

Thanks!


ShaderGen doesn't escape paths when passing to HLSL Compiler

When a shader path has a space in it then HLSL compilation fails:

Failed to compile HLSL: StdOut: , StdErr: Too many files specified ('Control\Veldrid-Samples\bin\obj\TexturedCube\Cube-vertex.hlsl' was the last one), use /? to get usage information.

(Full path was "D:\Source Control\..." so is splitting on space
The issue is due to line 308 of ShaderGen.App.Program's CompileHlsl method which sets the args:
                string args = $"/T {profile} /E {entryPoint} {shaderPath} /Fo {outputPath}";
Quoting the parameters fixes, so I will submit a pull-request.

I can confirm this error. We got it aswell


Notebooks connect to PAVICS

Overview
This PR fixes #163
MOHYSE Ostrich fails for some reason.

Richard, you can deploy to the server by running
bumpversion patch
git push
git push --tags

Jenkins run log: http://jenkins.ouranos.ca/job/PAVICS-e2e-workflow-tests/job/enable-raven-notebooks-in-jenkins/6/console
A few errors found:
Jenkins didn't know to wait for the background process to complete:
ProcessIsNotComplete: Please wait ...

Jupyter env missing a module, this must have been added recently to the notebooks, I'll take care of this.
ModuleNotFoundError: No module named 'rasterio'

Bugs in birdy?
18:13:32  /usr/local/envs/birdy/lib/python3.6/site-packages/birdy/client/converters.py in convert(output, path, converters, verify)
18:13:32      271             pass
18:13:32      272
18:13:32  --> 273     warnings.warn(UserWarning("No converter was found for {}".format(output.identifier)))
18:13:32      274     return output.reference
18:13:32      275
18:13:32
18:13:32  AttributeError: 'str' object has no attribute 'identifier'

18:13:32  /usr/local/envs/birdy/lib/python3.6/site-packages/birdy/client/converters.py in convert(self)
18:13:32      156         try:
18:13:32      157             # try OpenDAP url
18:13:32  --> 158             return xr.open_dataset(self.url)
18:13:32      159         except IOError:
18:13:32      160             # download the file
18:13:32
18:13:32  AttributeError: 'XarrayConverter' object has no attribute 'url'

And a bunch of textual output different we need to regex match to escape them, one example:
[2019-07-05T22:13:32.758Z]   - 19-07-05 21:03:46 by Rave
[2019-07-05T22:13:32.758Z]   ?             ^^^^
[2019-07-05T22:13:32.758Z]   + 19-07-05 22:10:16 by Rave
[2019-07-05T22:13:32.758Z]   ?           ++ + ^

So there are still some work before these notebooks can pass on Jenkins.
If these notebooks pass manually when running by hand it's good for now.  We'll fix them for Jenkins later.

You'll need the latest birdy. I updated it this week.

Latest released birdy is still birdhouse-birdy=0.6.2 on conda.

I had to do the same thing, and there is a branch on the birdy git that is 0.6.3. It worked, but not sure we want to go there for the deployed version.

Same here, I'd rather wait for an official release.  I don't think anyone is waiting after this fix.  I was just re-building the jupyter server image to include the missing rasterio package and I thought I would pickup a newer birdy.

@Zeitsperre Do you have time to check if this is working now with the new birdy version ?

@huard
Many of the calls have been updated in recent PRs and it's impossible to test against machines when their APIs have changed. As such, I've changed all the links to localhost for the time being so that Travis CI can run the tests off its local Raven service. This will ultimately be changed back to PAVICS once the notebooks have been cleaned and are passing. I need to tag and push a new version of RAVEN so that the notebooks can be properly tested on the PAVICS stack.
Also, similar to to the testing approach to notebooks present in pavics-sdi, I'm trying to run pytest --nbval with what we have available here but I'm running into an issue with the progress bar output that some notebooks are using. I'm about 90% certain that the progress bar is treated as a final output by pytest, causing it to run through tests faster than Raven can serve reponse objects. Rather than disable this feature (since it's pretty neat to show to users) I'm looking for a way to tell pytest to wait until the progress bar is done. Do you know of anything?

No. One easy way out is to skip the notebooks with a progress bar in pytest, and run them manually.

Well the whole point is we automatically test all the notebooks, otherwise, how do we know, for sure, the notebooks we give to the user are actually working?  Let's take a bit more time on this than immediately remove this notebook from the automated tests.
Is there a sort of status url we can somehow "ping" so we can loop on it before executing the next step?
Or, at the very least, if the progress bar feature is not so important to test and not so important to demo to user, we can simply not use it and we get to keep the notebook under automated tests.  We can add a comment that the progress bar option is available if user want to try it manually.

Update: Things seem to be coming along!

@huard I'm wondering if the OSTRICH model notebooks are set up to always return different values. I've tried manually running them a few times and I seem to ALWAYS return different values. I'm hoping this is the case or else I might have to consult a (medical) doctor.
For some of the notebooks, errors are thrown because of differences in the internals of the response's "help" text?

I've elected to disable evaluation of these cells since they're just statements anyway.

You're not mad. Ostrich uses random number seeds. You'll get a consistent answer only if those seeds are identical one run from the next. Ostrich should converge if the number of iterations is large enough, but this would make the tests take far too long.
In principle, setting random_seed=0 in the call to ostrich should yield the same answer from run to run. Good catch.

I've added another makefile recipe for running the notebooks (make test_nb). I might look into porting this to other birds that are running notebooks. It seems to work fine.
The majority of failures can be addressed by sanitizing a few more regex patterns (e.g. warning messages sent from libraries under my user "/home/tjs" != "/home/travis") and rerunning some Raven notebooks in a fresh local environment (ie: watershed_subset.ipynb lists versions at the start; Delineation_workflow.ipynb reports back data with different significant digits). The most recent regex changes have been ported to @tlvu 's raven branch in PAVICS-e2e-workflow-tests but there will be more to add.

Only 13 failures to go!

@tlvu @Zeitsperre
If we want to test notebooks locally (or on travis-ci), we want birdy to hit the localhost server. However, we'd like the notebooks on jupyterlab and in the documentation to hit the official pavics server.
So far, we've been changing the url back and forth directly in the notebooks. That is, setting the url to localhost when testing. When it works, we change it back to pavics and then push the change and build the docs. It works, but it's a bit of a pain.
Should we set the URL to an environment variable and not include it explicitly in the notebooks ?
Suggestions ?

Should we set the URL to an environment variable and not include it explicitly in the notebooks ?

Could use the same trick used here https://github.com/Ouranosinc/pavics-sdi/blob/d9d72e299e0f41ca21a76ceb882fbb6da16d9faa/docs/source/notebooks/esgf-dap.ipynb#L83
So something like
url = os.environ.get('PYWPS_URL', "https://pavics.ouranos.ca/twitcher/ows/proxy/raven/wps")

and when running locally or via Travis-CI, export PYWPS_URL="http://localhost:port/wps" in the shell before starting jupyter local server to run the notebook.
However, if something like this output_netcdf='https://pavics.ouranos.ca/wpsoutputs/1bb76e5e-827a-11e9-be8a-0242ac19000f/out.nc' is displayed, we won't be able to replace it for the localhost version.

Ok, will try this.

@huard A new version is being deployed now to the test server. Once we have that. we can start ensuring that notebook URLs are functioning.

@huard The newest RAVEN build is failing at the DescribeProcess() call. This is very strange given that all tests are passing when running locally. This is the trace when simply trying to instantiate a WPSClient with any URL to raven (either using localhost or https):
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-2-bb68a39db724> in <module>
      6 url = "http://localhost:9099/wps"
      7 url = "https://pavics.ouranos.ca/twitcher/ows/proxy/raven/wps"
----> 8 wps = WPSClient(url, progress=True)

/usr/local/envs/birdy/lib/python3.6/site-packages/birdy/client/base.py in __init__(self, url, processes, converters, username, password, headers, auth, verify, cert, verbose, progress, version)
    112             raise
    113
--> 114         self._processes = self._get_process_description(processes)
    115
    116         # Build the methods

/usr/local/envs/birdy/lib/python3.6/site-packages/birdy/client/base.py in _get_process_description(self, processes)
    144             if owslib.__version__ > '0.17.0':
    145                 # Get the description for all processes in one request.
--> 146                 ps = self._wps.describeprocess('all')
    147                 return OrderedDict((p.identifier, p) for p in ps)
    148             else:

/usr/local/envs/birdy/lib/python3.6/site-packages/owslib/wps.py in describeprocess(self, identifier, xml)
    298
    299         # build metadata objects
--> 300         processes = self._parseProcessMetadata(rootElement)
    301
    302         if identifier == 'all':

/usr/local/envs/birdy/lib/python3.6/site-packages/owslib/wps.py in _parseProcessMetadata(self, rootElement)
    369         processes = []
    370         for processDescriptionElement in processDescriptionElements:
--> 371             process = Process(processDescriptionElement, verbose=self.verbose)
    372
    373             # override existing processes in object metadata, if existing already

/usr/local/envs/birdy/lib/python3.6/site-packages/owslib/wps.py in __init__(self, elem, verbose)
   1562         self.dataInputs = []
   1563         for inputElement in elem.findall('DataInputs/Input'):
-> 1564             self.dataInputs.append(Input(inputElement))
   1565             if self.verbose is True:
   1566                 dump(self.dataInputs[-1], prefix='\tInput: ')

/usr/local/envs/birdy/lib/python3.6/site-packages/owslib/wps.py in __init__(self, inputElement)
   1264
   1265         # <LiteralData>
-> 1266         self._parseLiteralData(inputElement, 'LiteralData')
   1267
   1268         # <ComplexData>

/usr/local/envs/birdy/lib/python3.6/site-packages/owslib/wps.py in _parseLiteralData(self, element, literalElementName)
   1119                 if sub_element.tag.endswith('DefaultValue'):
   1120                     self.defaultValue = getTypedValue(
-> 1121                         self.dataType, sub_element.text)
   1122
   1123                 if sub_element.tag.endswith('AllowedValues'):

/usr/local/envs/birdy/lib/python3.6/site-packages/owslib/util.py in getTypedValue(data_type, value)
    578         return int(value)
    579     elif data_type == 'float':
--> 580         return float(value)
    581     elif data_type == 'string':
    582         return str(value)

TypeError: float() argument must be a string or a number, not 'NoneType'

@Zeitsperre attached are the conda env export of raven 0.7.0 docker image and the latest 0.8.1-beta that seems to have problem.  Hope it helps.
raven-0.7.0.conda-env.txt
raven-0.8.1-beta.conda-env.txt
Also raven code diff between those 2 versions: https://github.com/Ouranosinc/raven/compare/v0.7.0...v0.8.1-beta

@cehbrecht quick question, the conda birdhouse channel used to publish owslib=0.17.1b4, is whatever was in that beta release part of the upstream owslib=0.18.0?
We seems to have an issue with owslib between Raven and birdy client.

Got it (I think) . Could be a PyWPS change. The template for literal data is different between 4.2.1 and 4.2.2:
See (4.2.2)
https://github.com/geopython/pywps/blob/313a3b456b351edb3e76097c2bb0273f25ed8d46/pywps/templates/1.0.0/describe/literal.xml#L35
and (4.2.1)
https://github.com/geopython/pywps/blob/3383f65ab30f17505e632492c00780ca5ab20114/pywps/templates/1.0.0/describe/literal.xml#L33
With 4.2.2, the response includes a DefaultValue even if it should not. put.data is empty, but the if put.data is not none seems to be true. Should it be something like if not none(put.data) ?

@davidcaron This seems to be a change you introduced a while back. Are you positive that the syntax to check for none is right ?

@davidcaron This seems to be a change you introduced a while back. Are you positive that the syntax to check for none is right ?

I had to test to make sure:
from jinja2 import Template

output = Template(
    "{% if variable is not none %}if variable is not none{% endif %}"
).render(variable=None)

assert output == ""

output = Template(
    "{% if variable is not none %}if variable is not none{% endif %}"
).render(variable="something")

assert output == "if variable is not none"

error_raised = False
try:
    output = Template("{% if none(variable) %}if none(variable){% endif %}").render(
        variable=None
    )
except TypeError:
    error_raised = True

assert error_raised

Thanks for testing and the explanation. So I suppose put.data is not really None when it should be.

So what happens is that put.data is just not defined, and the is none clause evaluates to False.
I suggest replacing {% if variable is not none %} by {% if variable is defined %}.

So what happens is that put.data is just not defined, and the is none clause evaluates to False.
I suggest replacing {% if variable is not none %} by {% if variable is defined %}.

I think it should be {% if variable is defined and variable is not none %}

https://github.com/geopython/pywps/pull/499

So the test_nb make command sets environment variables RAVEN_WPS_URL and FLYINGPIGEON_WPS_URL before launching pytest --nbval
Each notebook then sets the WPS url either to the environment variable, or if not defined, the pavics url. This means that we can run the notebook test suite locally, on travis, or on jupyterlab (where these environment variables should not be defined).


branch-2.0 update some CHECK to CHECK_EQ, to print more details while CHECK failed (#33709)

Proposed changes
Issue Number: close #xxx
cherry-pick #33709

run buildall


Update tutorial to demonstrate image reading

This:

Adds a bit of sample data we can use with the tutorial (and perhaps tests later?)
Demonstrates how to read this data in the tutorial, and shows a plot
Modifies Image a bit to hide away pydantic_zarr from the public API. Instead of sub-classing this just uses GroupSpec to do validation and then store the attributes, but these are provided to the user in the form of custom properties.

I'm not 100% sure this is the best way to go in terms of what our "top level" object is and looks like, but I'm wary about sub-classing from another library as we'll lose the flexibility of doing what we want. Very open to other suggestions/ideas though, ideally with modifications to the tutorial to show how they would work as public API.

I need to fix the tutorial, but would be good to hear your thoughts on this @d-v-b, in particular:

Modifies Image a bit to hide away pydantic_zarr from the public API. Instead of sub-classing this just uses GroupSpec to do validation and then store the attributes, but these are provided to the user in the form of custom properties.

There's a better version of this at https://github.com/BioImageTools/ome-zarr-models-py/pull/64


SnippetsLab: Why use prefix instead of folders

Question on how you use SnippetsLab: How come you use a prefix like "bash:" instead of putting the snippet in a "bash" folder?
I'm just getting started with SnippetsLab so looking for the best way to organize things.

Because then I can do searches with filters (bash: ) will only search bash snippets etc


Enable images and videos to be shown as a lightbox when clicked.

Is this to magnify images/videos more big than they are now?
If yes, should the LightBox take the entire browser window? or even be fullscreen?

Is this to magnify images/videos more big than they are now?
If yes, should the LightBox take the entire browser window? or even be fullscreen?

It doesn't have to be full screen, once its big enough. I guess a little bit under full screen would be ideal

What do we show as video preview? Or LightBox (I notify you that there are many other similar plugins, not worse than LightBox) will display a preview automatically? (not sure how to configure it for this)

Just use a simple lightbox effect with the real size of the image and a default video size


Status Checker fails for all tiles after a period of time

Environment
Docker
Version
0.13.4
Describe the problem
I have created tiles for a number of the usual 'arr' apps  which are exposed via NginxProxyManager as HTTPS on 443.  I have the status check enabled and, initially they show green health icon.  However if I log back into homarr after a period of time they alway end up showing red.  If I hover over them I see on all of them the same error:

I've reset and created a new instance of homarr with fresh config and the issue persists.
I can click through to the app through the tile and the page loads fine.
Logs
https://pastebin.com/JT9AvWV3
Context
No response
Please tick the boxes

[X] I confirm that I attached the proper logs
[X] I've read the docs
[X] I've checked for duplicate issues
[X] I've tried to debug myself

After further digging (my bad) I've just seen this issue. https://github.com/ajnart/homarr/issues/1335. My environment is slightly different though; I'm not using PiHole (although I do use AdGuard for DNS) not sure that would cause this issue though. I'm also not using Cloudflare tunnelling.

After further digging (my bad) I've just seen this issue. #1335. My environment is slightly different though; I'm not using PiHole (although I do use AdGuard for DNS) not sure that would cause this issue though. I'm also not using Cloudflare tunnelling.

I think we were working on that before, could you tell me your number of apps ? We diagnosed that it might've been related to the lenght of our api calls.
Also if you can please show use your "networks" tab in developer console

@markhaines Ping in case you ddin't see my comment above

Can you try and tell us if this issue still happens as of the latest image ? v0.14.0 ?

Closing due to inactivity. Please reopen of the problem still exists.


Minimum sizing of nested flexbox in Safari

I think I've stumbled into an instance of flexbug 1 in Safari, however the current documentation for this flexbug states that is it fixed.
Specifically: in Safari, a nested flexbox (i.e. a flex container which is also a flex item of a parent flex container) does not correctly apply minimum sizing.
Reduced test case: https://jsbin.com/dizifil/1/edit?html,css,output

(Pink border shows flex item which is also a nested flexbox.)
Chrome/Firefox have the expected behaviour:

The flex item should have a minimum size of its contents (i.e. the pink border should wrap around the inner black border).
I think this issue was alluded to in https://github.com/philipwalton/flexbugs/issues/241, but it doesn't look like this exception made it into the docs.
Also there doesn't appear to be a Safari/WebKit bug filed where we can track this.
If you agree, I would be happy to:

raise a Safari/WebKit bug for this
raise a PR to better document this Safari bug

I agree, on Safari (Desktop, Mobile and especially Webview) the issue is still exactly the same as the one described in #241.

I have just came across this bug also. Adding flex-shrink: 0 has fixed it for me in the meantime

Still unfixed as of Safari 13.0.2.

I was quite amazed to find out this bug appear in Safari, but work in Chrome and Firefox.
@LiddleDev Thank you 👍

It looks like its fixed in Safari 14.1.2.

Also seems to work in Safari 15.1:


Internal email distribution

Ensure relevant information is emailed to organisers when a new member or event entry is confirmed.

Complete.


Refactoring dora-cli start and stop to uuid only

To make selection of the uuid simpler, I removed the text of the start and stop command.
This makes dora-cli closer to the docker-cli.
This change make me able to do the following:
UUID=$(dora-cli start dataflow.yml)
dora-cli stop $UUID

No, I agree the print on stop is not necessary. I made the change.


communicate best practice for third party extensions

It would be good, i guess, to have a common stucture for third party extensions, that should cover the location of the extensions in the vendor dir and also for dependency handling.
During my work with Silex i came across extensions which communicated a placement in vendor/Extension, vendor/Silex-Extensions, vendor/SilexExtensions andsomemore.
Then they where dependency handling with vendor.sh, .gitmodules or composer.
Also there are some Collections of Extensions on github, which i would say are also not optimal to include in your project.
Silex is great and i believe the number and usage of third party extensions will increase, so maybe it would be good to have some "official" words on that.

well, extensions should be in their own namespace. Telling to use SilexExtensions is wrong as it means all people would have to avoid conflict in this namespace. Each should use the appropriate vendor namespace (for instance, KnpLabs uses Knp as namespace)

I do agree with Stof,
Now maybe can be decided if
vendor/VendorNs/Provider/(Service|Controller)/YourProvider is better than vendor/VendorNs/(Service|Controller)Provider/YourProvider or vendor/VendorNs/(Service|Controller)/YourProvider or some more I forget to mention here.

What do you think of having an official SilexServiceProvider repository (like Twig extensions) to come along with that naming best practices ?

@dguyon I vote against it. First it would require having one guy maintaining all these providers (the one owning the repo), and second, it would make it a pain to get only the extension you need (Silex being a microframework, a big repo does not make sense here)

@stof I agree, thanks for highlighting possible issues. Let's forget it then.

@stof alright thats a start, i didnt know that
so you would recommend a structure f.e. like this:
vendor/vendorNS/Silex/ServiceProvider
Then one github repo per serviceProvider and avoid collections?
What about dependencies? What would be the best way to handle them?

I don't think having a gazillion package types is a good idea. If possible we should filter by tags.


update ci for rolling branch

Codecov Report

Merging #359 (ba111a2) into rolling (2648503) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff            @@
##           rolling     #359   +/-   ##
========================================
  Coverage    69.20%   69.20%
========================================
  Files           16       16
  Lines         2715     2715
  Branches       765      765
========================================
  Hits          1879     1879
  Misses         450      450
  Partials       386      386


Replicate entire sklearn module structure

For easier usage, the package should replicate all sklearn estimators in their respective modules by decorating them with a generalized EstimatorWrapper.
Users could then use all sklearn estimators just by modifying their import statements, for example:
from sklearn_xarray.decomposition import PCA
which would yield an xarray-compatible PCA estimator.

On second thought, class decorators seem like a bad idea. It makes more sense for each estimator to subclass the corresponding wrapper, like
class PCA(TransformerWrapper):
    def __init__(self, **fit_params):
        super(self, PCA).__init__(sklearn.decomposition.PCA, **kwargs)

and provide the full parameter list instead of **kwargs


Add fallback path for libc.musl

With reference to https://github.com/Toblerity/Shapely/issues/394, this was the same problem that happened to me. The root cause is because find_library("c") returns something empty for certain linux environments. Searching through some of these forums, it looks like this won't be fixed. As such, we have to accommodate this on the package side.
My environment only had the following libc libraries:
./lib/libc.musl-x86_64.so.1
./usr/glibc-compat/lib/libc.so.6
./usr/glibc-compat/lib/libc.so

The fix below adds the path for ./lib/libc.musl-x86_64.so.1. I've tested this and it solved the issue.

For more context, the problem is with ctypes.util.find_library as mentioned here.

Coverage increased (+0.006%) to 80.701% when pulling f0e739cd9229c2d35faa5aabdc481e5911696d86 on jkschin:patch-issue-394 into 5488ea5c6da911ab6f6f585cdfb1dad564850be9 on Toblerity:master.

Just looked through the PRs and I realized it's very similar to https://github.com/Toblerity/Shapely/pull/762/files. Tagging @sgillies.

For a bit more context, musl-libc is an alternative to glibc and is used by the Alpine Linux distribution commonly used in Docker images.
$ docker run -it alpine:latest
/ # apk update
fetch http://dl-cdn.alpinelinux.org/alpine/v3.10/main/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/v3.10/community/x86_64/APKINDEX.tar.gz
v3.10.2-2-g10fc00b3db [http://dl-cdn.alpinelinux.org/alpine/v3.10/main]
v3.10.2-1-g93e3be01c5 [http://dl-cdn.alpinelinux.org/alpine/v3.10/community]
OK: 10335 distinct packages available
/ # apk add python3
(1/11) Installing libbz2 (1.0.6-r7)
(2/11) Installing expat (2.2.7-r0)
(3/11) Installing libffi (3.2.1-r6)
(4/11) Installing gdbm (1.13-r1)
(5/11) Installing xz-libs (5.2.4-r0)
(6/11) Installing ncurses-terminfo-base (6.1_p20190518-r0)
(7/11) Installing ncurses-terminfo (6.1_p20190518-r0)
(8/11) Installing ncurses-libs (6.1_p20190518-r0)
(9/11) Installing readline (8.0.0-r0)
(10/11) Installing sqlite-libs (3.28.0-r0)
(11/11) Installing python3 (3.7.3-r0)
Executing busybox-1.30.1-r2.trigger
OK: 69 MiB in 25 packages
/ # python3
Python 3.7.3 (default, May  3 2019, 11:24:39)
[GCC 8.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from ctypes.util import find_library
>>> find_library("c")
>>> find_library("libc.musl-x86_64.so.1")
'libc.musl-x86_64.so.1'

The binary wheels for Shapely available on PyPI can't be used on Alpine because of their dependency on glibc and because setup.py can't find libc it can't be installed from source either:
/ # pip3 install shapely
Collecting shapely
  Downloading https://files.pythonhosted.org/packages/a2/fb/7a7af9ef7a35d16fa23b127abee272cfc483ca89029b73e92e93cdf36e6b/Shapely-1.6.4.post2.tar.gz (225kB)
    100% |████████████████████████████████| 235kB 6.0MB/s
    Complete output from command python setup.py egg_info:
    Failed `CDLL(libgeos_c.so.1)`
    Failed `CDLL(libgeos_c.so)`
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-install-yqcoc3sm/shapely/setup.py", line 80, in <module>
        from shapely._buildcfg import geos_version_string, geos_version, \
      File "/tmp/pip-install-yqcoc3sm/shapely/shapely/_buildcfg.py", line 167, in <module>
        fallbacks=['libgeos_c.so.1', 'libgeos_c.so'])
      File "/tmp/pip-install-yqcoc3sm/shapely/shapely/_buildcfg.py", line 161, in load_dll
        libname, fallbacks or []))
    OSError: Could not find library geos_c or load any of its variants ['libgeos_c.so.1', 'libgeos_c.so']

Adding this additional path seems like a reasonable workaround to me.

@snorfalorpagus, if this looks good to you, shall we merge this?

I don't have a strong opinion on this but since geos_c was hard coded, I would think that adding extra environment variables to control this would increase the complexity of the package. We might end up with many SO questions and work arounds like #394, which don't seem to address the root cause.
If a future user knew how to set environment variables for this, it would be easy for that person to also find the place to PR and fix it for the majority.

I'm content with this PR as-is. If there is appetite for an environment variable to control this it can be done in another issue/PR.

@snorfalorpagus when will a new version be released? Is there a work around for the docker containers in the mean time?


Convert excel ResourceFiles to csv - Add a method to read converted files

This PR aims at adding a method that will help reading the newly converted csv files in a similar manner as their excel equivalent were read. It also addresses situations where multiple sheets are required i.e pd.read_excel(resourcefile_path, sheet_name=[sheet1, sheet2, ...., sheetN]).

Thanks @tbhallett and @matt-graham for your helpful comments above. I have pushed a couple of commits that seeks to address them all. Let's keep the discussion going. Thanks

Thanks @matt-graham for all the helpful comments above. I will address them soon

Thanks @matt-graham. Just one more commit to address another of your comment on making tests small and simple.


Conditional writer creation does not always use client properties.

Describe the bug
When creating a conditional writer with this method accumulo client properties will not be used to create the config object.  When creating a conditional writer with this method client properties are used by config.merge(getConditionalWriterConfig()).
Expected behavior
Both methods for creating a conditional writer use an client properties set.
Could create an IT that does the following to test the fix for this.

Create AccumuloClient w/ all condition writer props set
Create conditional writers using the AccumuloClient.  Test both methods that create a conditional writer.
cast the ConditionalWriter to ConditionalWriterImpl and get its config object and verify it has the expected things set from Accumulo props.

Noticed this bug by running ComprehensiveIT and looking at ClientContext coverage data using #4704.

This fix could be done 2.1.3, but it does not need to hold up 2.1.3 which is why I placed it in 2.1.4

I can work on this


Update catalan messages.po

Back to 100% translated.
Applied pending corrections by @darcio and @jordimas https://static.softcatala.org/quality/bluesky_social_app.html
Please take a look at it @jordimas @darccio @surfdude29 @rortan134 @magarcia

@aryiu Thanks
I'll maintain Starter Pack as it is
"Informar" is the most used translation for Report in softcatalà memories https://www.softcatala.org/recursos/memories/?source=report&project=
I fixed all the other suggestions, well spotted!


How can i get the  Path  in GlobalFilter?

How can i get the Path in the configuration route in a GlobalFilter

You should be able to get the request URL like this
https://github.com/spring-cloud/spring-cloud-gateway/blob/master/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/NettyRoutingFilter.java#L81

thanks~


Missing step for "Basic SAML Configuration" identifier uri

In the Configure Azure AD SSO section, step 4, there should be an additional step or note to update the Identifier (Entity ID) to the appropriate uri. The default value "http://netdocuments.com/VAULT" does not work for all regions.

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

ID: 208c8c82-9496-4bc0-3150-8e97a152c643
Version Independent ID: 81a20f57-e6e3-3b6b-d4c2-2d7b671b3cc8
Content: Tutorial: Azure Active Directory single sign-on (SSO) integration with NetDocuments
Content Source: articles/active-directory/saas-apps/netdocuments-tutorial.md
Service: active-directory
Sub-service: saas-app-tutorial
GitHub Login: @jeevansd
Microsoft Alias: jeedes

@seanobr
Thanks for your feedback! We will investigate and update as appropriate.

 I added a pull request to add this.
Adding @jeevansd for review. https://github.com/MicrosoftDocs/azure-docs-pr/pull/89842


Update uk_UA.json

missed comma at row: 166

Hello @averissimo, i checked the file and noticed i missed a comma.

Thanks for the quick check!!


Add new sms queues to sms dashboard

Summary | Résumé
re https://app.zenhub.com/workspaces/notify-planning-core-6411dfb7c95fb80014e0cab0/issues/gh/cds-snc/notification-planning-core/185
Add the new sms queues to the SMS dashboard.
Test instructions | Instructions pour tester la modification
Old SMS dashboard

Review (SMS_V2) dashboard

🤔 This dashboard is for the new way of sending sms. We probably don't want this in prod until we change queues and celery there. So I think I'll just move this back to draft until we release the new queues / deployment to prod. For now we have the SMS_V2 dashboard on staging that is identical to the one in this PR.


Suggestion: Replace pie progress bar

Noticed that the library being used is 4 years old.
what do you think about switching to https://github.com/lopspower/CircularProgressBar

Replace is not a good suggestion, but you could create a module that use CircularProgressBar to display progress. Just as I said in README.
PR is welcome!


RetrieveResponse vs ListResponse

Could you please add a high-level explanation on the difference and uses of RetrieveResponse and ListResponse in the ...Endpoint.cs
If the answer is like "Well, if you knew  you would not have asked the question" then a reference to  would be much appreciated.
Many thanks!

Retrieve is single fetch by ID, List is multiple

When is Retrieve used in an Endpoint.cs? For the edit-popup maybe?

Yes, dialog loads entity with Retrieve, grid loads them with List. You may check browser console for XHR requests.


Matching within termination_by doesn't work

Prerequisites

[X] Put an X between the brackets on this line if you have done all of the following:

Checked that your issue isn't already filed.
Reduced the issue to a self-contained, reproducible test case.

Description
Matching inside a termination_by command gives a message auxiliary declaration cannot be created when declaration name is not available.
Steps to Reproduce
namespace Ex2
mutual
  def isEven : Nat → Bool
    | 0 => true
    | n+1 => isOdd n
  def isOdd : Nat → Bool
    | 0 => false
    | n+1 => isEven n
end
termination_by _ n =>
match n with
| _ => n
end Ex2

Versions
nightly-2022-01-16
Additional Information
This could also be a problem with other commands that involve anonymous theorems.

Closed by da06bb660569f6d6c443fc737794ddecd7fee13b


Unity will not work with Ubuntu 18.04 Bionic

Please paste the output of the following command here: sudo edit-chroot -all

name: bionic
encrypted: no
Entering /media/removable/USB Drive/chroots/bionic...
crouton: version 1-20200724165050~master:08dac970
release: bionic
architecture: amd64
xmethod: xorg
targets: unity,keyboard,chrome,audio,x11,core,gtk-extra,cli-extra,extension
host: version 13729.84.0 (Official Build) stable-channel celes
kernel: Linux localhost 4.19.166-10987-g59fad5daf7a8 #1 SMP PREEMPT Tue Apr 13 12:57:15 PDT 2021 x86_64 x86_64 x86_64 GNU/Linux
freon: yes
Unmounting /media/removable/USB Drive/chroots/bionic...
Please describe your issue:
Launching Unity using sudo startunity does not start Unity, but starts GNOME instead.
If known, describe the steps to reproduce the issue:
Make a Ubuntu 18.04 chroot with Unity and then sudo startunity

Closing. No response or follow-up (needed) at this time.
-DennisLfromGA


three dimensional cosmic text

closes #98

Bit jank at the moment, considering either adding StandardMaterial cases to the render function, or reworking how the render function draws.
Todo:

[ ] Mouse click + hover on 3D widgets
[ ] Integrate 3D rendering OR
[ ] Simplify main render function to be target agnostic (Maybe comes back to the everything as a sprite idea?)

so cool... moving cursor doesn't work... https://github.com/StaffEngineer/bevy_cosmic_edit/blob/2ea39ed6a11aac865305db3206acf0d370400808/src/input.rs#L144 considers only 2d for x, y calc.

Yeah, gonna need to reverse project the mouse position or something raycasty

@bytemunch
In 3d example text is rendered to plane, in theory we could consider any shape, like rendering text on 3d sphere but then it becomes quite challenging, so restricting 3d for only plane surfaces is good first step.
On mouse click we use this func for calculating x, y: https://github.com/StaffEngineer/bevy_cosmic_edit/blob/2ea39ed6a11aac865305db3206acf0d370400808/src/lib.rs#L502
I think it should be changed to https://docs.rs/bevy/latest/bevy/render/camera/struct.Camera.html#method.viewport_to_world in case of 3d.
Also this func may be useful https://docs.rs/bevy/latest/bevy/math/struct.Ray.html#method.intersect_plane if we consider only plane surfaces for now.

I think interacting with the plane will generalize quite nicely to all shapes, we're only interested in the click's UV coords which shouldn't be too hard to get hold of. Might look into whether bevy_mod_picking gives the coords we need? Afk today tho so might be a while before I can check it all out

https://math.stackexchange.com/questions/1167717/transform-a-plane-to-the-xy-plane

I think interacting with the plane will generalize quite nicely to all shapes, we're only interested in the click's UV coords which shouldn't be too hard to get hold of. Might look into whether bevy_mod_picking gives the coords we need? Afk today tho so might be a while before I can check it all out

Yeah, if we go with all shapes it makes sense to use existing solutions like bevy_mod_picking.

this might be useful: https://github.com/tigregalis/bevy-intersect-plane

I think interacting with the plane will generalize quite nicely to all shapes, we're only interested in the click's UV coords which shouldn't be too hard to get hold of. Might look into whether bevy_mod_picking gives the coords we need? Afk today tho so might be a while before I can check it all out

any idea how to get UV coords? :)

any idea how to get UV coords? :)

Having a mare with rebasing or something git related at the moment lol will be looking into this once I figure out how to put new changes on an old branch. Might just close this PR and make a new one save the headache

research keeps using big words like "parametric" and "orthogonal", i don't think I have the brainpower to tackle this today. bevy_mod_raycast gives easy access to world position of the click but I can't figure out all the transforms to get that coordinate in local space relative to the plane, especially when taking into account translation and rotation.. vector math crash course on the horizon for me it seems haha.
tl;dr: maths make sam brain go sad

@bytemunch have you seen https://github.com/tigregalis/bevy-intersect-plane ? there is basic math there ;-)

@bytemunch have you seen https://github.com/tigregalis/bevy-intersect-plane ? there is basic math there for "parametric" and "orthogonal" I believe ;-)

Does look very helpful, I'll see if I have time tomorrow to take a look with fresh eyes, hopefully things will make more sense then. I had a couple pieces of the puzzle but didn't get to the full solution, nice to know it's already been done and I can yoink in the name of open source!
Does seem plane specific but I think we can leave typing on spheres to a future endeavour.
Nice that it doesn't depend on any raycast plugins too, keeps footprint small :D

Let's re-open if/once active :)


Custom email design

I would like to change design of components coresponding to design of my web presentation. I mean like Buttons, Hero button, Products buttons, Default Typo for sizes, fonts, etc.
Is there a way how to override default styling with my less or css file or json properties?

I fixed it by own solution.


[Bug] Text gets hidden behind the lightning menu

Description
When you write in an input with the lightning menu, text gets hidden behind it.
[What happened]

@aakashDesign This seems to be a flaw in the design. Is there an easy solution here?

@aakashDesign This seems to be a flaw in the design. Is there an easy solution here?

Closing as this is fixed in release.