Support draw image

Want to record the canvas like:
    final recorder = PictureRecorder();
    final canvas = Canvas(recorder,
        Rect.fromPoints(const Offset(0.0, 0.0), const Offset(200.0, 200.0)));

This package is not designed for that purpose, @normidar.
But https://github.com/signmotion/flutter_image_converter I or You can expand with this wish.

This package is not designed for that purpose, @normidar.
But https://github.com/signmotion/flutter_image_converter I or You can expand with this wish.

@signmotion
But it seems not pure, I want to run it on command line.

Now I am using https://pub.dev/packages/image ,it is pure but image plugin is not easy to draw things.

This library is helper for substitute some useful Flutter dependencies, not CLI.

This library is helper for substitute some useful Flutter dependencies, not CLI.

Got it, thank you ❤
close this issue.


🚧 Added yml files for each language

Addresses the Following Issue(s)
Adding YML files for translation
Describe Your Changes
Adding YML files for translation
Non-Obvious Technical Information
The other files only have the template since we are missing the translations.
Checklist Before Requesting a Review

[X] The code runs successfully.

Changes are done @michplunkett


PR

Changes:
github pr

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Add a conf testcase causing a timeout (3.1/3.0)

This is a testcase from ossfuzz causing a timeout in the conf fuzzer. See openssl/openssl#20839 for the resolution.
This is a backport of #6 to the 3.1/3.0 branches. I realised this needs to go there too, because the timeout was experienced in those branches.

I currently don't see the need to have branches for the corpora

I currently don't see the need to have branches for the corpora

Yeah, we did not really decide what to do with the fuzz corpora on 3.1 and 3.0 branches in the main repo. I assume if we just remove the corpora there and use the main branch commit with the submodule and the tests pass, we should be OK.

I'd much prefer to not have branched corpora too.

Ok. Closing this. I raised a question about the 3.1/3.0 corpora in openssl/openssl#20903


bug(k8s): unintentional variable shadowing

Enforce block scope heap reference when referring to for-loop enumerated variables by address; otherwise all internal assignments inside for loop refer to the same address: the address of the enumerated variable in the final iteration.
fixes #91

Current coverage is 31.21% (diff: 100%)

Merging #92 into master will increase coverage by 0.82%

@@             master        #92   diff @@
==========================================
  Files             8          8
  Lines           362        362
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
+ Hits            110        113     +3
+ Misses          224        221     -3
  Partials         28         28

Powered by Codecov. Last update 6aa120a...d304efb


Deprecation warning for scvi.nn._utils.one_hot, in favour of PyTorch version

Closes #2430 .
Somewhat cowardly approach as it still uses an internal helper function that respects the same API – let me know if you had something else in mind!

Took a stab at refactoring to call torch one_hot directly.
I did run into errors from the torch.einsum and torch.nn.functional.linear functions on the data types, but I have solved that by doing the conversion for those function calls. I'm by no means a PyTorch data type expert, so let me know if there are better ways you had in mind!

Thanks @martinkim0! Not sure what's going on with the tests here. Do you usually handle merging the PRs, or is there anything more I should be doing?

Thanks @martinkim0! Not sure what's going on with the tests here. Do you usually handle merging the PRs, or is there anything more I should be doing?

I can take care of merging the PR. Some of our tests are broken (not because of this PR, though).


mat/qr: solve to varies on amd vs intel

What are you trying to do?
Given a first degree polynomial, calculate the next value in the curve. This has been simplified from the larger problem to allow for easier reproduction.
What did you do?

https://go.dev/play/p/eAPVES7vY-4
package main

import (
	"fmt"

	"gonum.org/v1/gonum/mat"
)

func main() {
	stats := []uint{2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20}

	// Build the list of Xs and Ys.
	xs := make([]float64, len(stats))
	ys := make([]float64, len(stats))
	for i, v := range stats {
		xs[i] = float64(i)
		ys[i] = float64(v)
	}

	// This is probably overkill, but it enables us to pick a different curve in
	// the future, if we want.
	degree := 1
	alpha := vandermonde(xs, degree)
	beta := mat.NewDense(len(ys), 1, ys)
	gamma := mat.NewDense(degree+1, 1, nil)

	fmt.Printf("alpha: %#v\n", alpha)
	fmt.Printf("beta: %#v\n", beta)
	fmt.Printf("gamma: %#v\n", gamma)

	qr := new(mat.QR)
	qr.Factorize(alpha)
	if err := qr.SolveTo(gamma, false, beta); err != nil {
		panic(fmt.Errorf("failed to solve qr: %w", err))
	}

	fmt.Printf("qr: %v\n", qr)

	// Build the curve function.
	m := gamma.RawMatrix()
	fmt.Printf("m: %v\n", m)
}

// vandermonde creates a Vandermonde projection (matrix) of the given degree.
func vandermonde(a []float64, degree int) *mat.Dense {
	x := mat.NewDense(len(a), degree+1, nil)
	for i := range a {
		for j, p := 0, 1.; j <= degree; j, p = j+1, p*a[i] {
			x.Set(i, j, p)
		}
	}
	return x
}

What did you expect to happen?
Output on a M1 ARM processor:
alpha: &mat.Dense{mat:blas64.General{Rows:19, Cols:2, Data:[]float64{1, 0, 1, 1, 1, 2, 1, 3, 1, 4, 1, 5, 1, 6, 1, 7, 1, 8, 1, 9, 1, 10, 1, 11, 1, 12, 1, 13, 1, 14, 1, 15, 1, 16, 1, 17, 1, 18}, Stride:2}, capRows:19, capCols:2}
beta: &mat.Dense{mat:blas64.General{Rows:19, Cols:1, Data:[]float64{2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20}, Stride:1}, capRows:19, capCols:1}
gamma: &mat.Dense{mat:blas64.General{Rows:2, Cols:1, Data:[]float64{0, 0}, Stride:1}, capRows:2, capCols:1}
qr: &{0x140001281c0 [1.2294157338705618 1.2647387291304137] 26.431676725154997}
m: {2 1 [2.0000000000000018 1] 1}

Output on an Intel processor (and the Go playground):
alpha: &mat.Dense{mat:blas64.General{Rows:19, Cols:2, Data:[]float64{1, 0, 1, 1, 1, 2, 1, 3, 1, 4, 1, 5, 1, 6, 1, 7, 1, 8, 1, 9, 1, 10, 1, 11, 1, 12, 1, 13, 1, 14, 1, 15, 1, 16, 1, 17, 1, 18}, Stride:2}, capRows:19, capCols:2}
beta: &mat.Dense{mat:blas64.General{Rows:19, Cols:1, Data:[]float64{2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20}, Stride:1}, capRows:19, capCols:1}
gamma: &mat.Dense{mat:blas64.General{Rows:2, Cols:1, Data:[]float64{0, 0}, Stride:1}, capRows:2, capCols:1}
qr: &{0xc0000b61c0 [1.2294157338705618 1.2647387291304135] 26.431676725154993}
m: {2 1 [2 1.0000000000000002] 1}

Diff:
4,5c4,5
< qr: &{0x140001281c0 [1.2294157338705618 1.2647387291304137] 26.431676725154997}
< m: {2 1 [2.0000000000000018 1] 1}
---
> qr: &{0xc0000b61c0 [1.2294157338705618 1.2647387291304135] 26.431676725154993}
> m: {2 1 [2 1.0000000000000002] 1}

Specifically note the tau and cond values are different.
In this case, because the matrices differ across processors, the predicted next value in the curve also differs.
curve := func(x float64) float64 {
	var result float64
	for i := len(m.Data) - 1; i >= 0; i-- {
		result += m.Data[i] * math.Pow(x, float64(i))
	}
	return result
}

nextFloat := curve(float64(len(ys)))
fmt.Printf("next: %v", nextFloat)

On Intel CPUs, this is 21, but on Arm it's 21.000000000000004.
What actually happened?
See explanation above.
What version of Go and Gonum are you using?
go version go1.18.3 darwin/arm64

gonum.org/v1/gonum v0.11.0 h1:f1IJhK4Km5tBJmaiJXtk/PkL4cdVX6J+tGiM187uT5E=
gonum.org/v1/gonum v0.11.0/go.mod h1:fSG4YDCxxUZQJ7rKsQrj0gMOg00Il0Z96/qMA4bVQhA=

Does this issue reproduce with the current master?
Yes

Hey @kortschak
Thanks for the fast reply. I don't have another Arm device to test this on unfortunately. If you create a one-time sponsorship option for $100, I can drop you some funds to purchase a Pi or other Arm chip to test it on. Unfortunately I can't send you enough to buy an M1 though 😦.

No worries, more of a time issue. I have an arm64 builder here. I will take a look when time permits (likely this weekend).

The weekend came early. I can confirm this is reproducible on other arm64 platforms (this shouldn't be surprising to me but I forgot that I did not remove all of the things that would cause this).
This is related to #1218. You can see the remaining FMA and FMS that are present in the relevant packages by running GOARCH=arm64 go build -gcflags="-S" 2>&1 | egrep 'FN?(MADD|MSUB)' in each of mat, blas/gonum and lapack/gonum (the amd64 equivalent will print zero in all cases since there are no FMA/FMS simplification rules in the compiler for that GOARCH). You will see that there are many cases.
I can't remember my reasoning for leaving them, but it was probably that they were not causing failures for reasonable test tolerances; in fact the delta between the two archs in this issue is well under the tolerances that we are OK with. Depending on the routine this will generally be in the range of 1e-10 to 1e-16, but the tests for QR have the tol set to  at 1e-14 for the factorisation and 1e-12 for the solve and these were not relaxed when we added arm64 support, so I think we are happy with them.
I think that probably this is going to stay as it is: the amount of work required to go through all the sites that are simplified to FMA/FMS for a very minor change in results is pretty high (and arguably to reduce the accuracy and performance on platforms where FMA/FMS simplification rules are applied).

Thanks for digging in! I think that's reasonable, but could we update the documentation (preferably the Godoc) to show this? I think that would have saved me (and future mes) a lot of time debugging something like this 😄 .

I think the appropriate place for that would be a note here; there are too many places where floating point behaviour would need to be called out if we put disclaimers everywhere that it arises. In general, it's worth remembering that floating point numbers are only a vague approximation of real numbers and don't satisfy a number of arithmetic invariants that you would expect of them if you treat them as real numbers. The first rule of floating point club is to not be a member.
Take a look at https://floating-point-gui.de/ and the references it links for lots of fun.


Improve Expander expand up animation

The expand up animation causes the header to go down and then the content to slide up which looks wonky. A better animation might be to make the content reveal from top down while the header slides down.

This is still an issue.  NavigationView's expanding behaviour does not have this issue.


Improve round trip test

Don't bother serializing versions we don't yet support
Serialize replay to memory instead of disk saving a lot of time
Remove redundant hash checking

The second two changes make the test suite run in ~3s instead of ~13s on my machine.

Merged via cc5ee03750519df08f1913bac8114f48cfa3aad1. Nice speedup!


How do implementers expect to sort the lists?

Automatically by Classification of the drug? Or by date? or ....
Or also manually and this is captured in a List?

Meeting 08-04:
One approach is by classification:

Based on e.g. ATC or ICD-10, each specialist may have their preferences:

Oncologist looks first at Chemotherapy, then vomiting, then pain...
Cardiologist looks first at Cardiac failure drugs, then blood pressure, then ...
Another approach is by date (of treatment line start):
Possibly these would be improved by classifications, so that narcotics or chronic medication would be first

Both of these don't seem to require additional data on the medication line, but maybe on the medication list/overview. If we need to persist the order, it will be the doctor's own view.


CDD-2195: Use plot_label when provided for headline reference field

Description
This PR includes an update to the tables endpoint for Headline data, when a label is provided for a plot this label is used to the populate the reference field in place of the x_axis value. This allows for more control over the presentation of tabular data for charts that use none date values.
Fixes #CDD-2195

Type of change
Please select the options that are relevant.

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Tech debt item (this is focused solely on addressing any relevant technical debt)

Checklist:

[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] I have added tests at the right levels to prove my change is effective
[x] I have added screenshots or screen grabs where appropriate
[x] I have added docstrings in the correct style (google)


tests: Small refactor of a test

Test was supposed to test a threshold that is higher than number of
signatures, but it actually was just using completely unsigned metadata.
This still doesn't test the case where trusted metadata defines a
threshold that new metadata does not reach: only the case where new
metadata defines threshold that it does not meet (this case is covered
in updater tests though).
Signed-off-by: Jussi Kukkonen<EMAIL_ADDRESS>
Fixes #1753

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 98.311%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
1178

Relevant Lines:
1194

💛  - Coveralls


animation loop option to pause on max frame, not reset to beginning

Per https://github.com/CartoDB/torque/issues/140#issuecomment-76687364
Modifying Animator._tick so loop=false pauses animation on final frame, not stops and resets to beginning.
57 tests still passing.

good, @fdansv I think it would be nice to have that param documented

yep! also to tag since we've merged dists :stuck_out_tongue:


Alpha Ess error

hey all,
When trying to start the AlphaEss integration I get Config flow could not be loaded: {"message":"Invalid handler specified"} anyone else get the same issue?

Hi, we also have a problem with config. We get "Unknown error occurred" when trying to setup the integration. We tried to reset the integration after we could not connect to AlphaESS for over a month.

As an initial exercise I would suggest removing the integration entirely via HACS and then trying a re-install after rebooting between removal and re-install.

Hi, I tried reinstalling it (with reboots) as suggested, but it did not help. I still get "unknown error" when trying to "add" the integration. (Ver 0.3.1)

So I think I'm going to need more lower level information to try to help with this.  The good news is that the library that communicates with Alpha cloud is able to be used on a standalone basis outside of Home Assistant.  If you are at all familiar with postman there is a Postman collection available at https://github.com/CharlesGillanders/alphaess/blob/main/AlphaESS.postman_collection.json I'd be very interested in the results of Login
as well as GetCustomUseESSSetting and GetLastPowerDataBySN assuming that Login works correctly for you.

If you can use the library fine my apologies but I’m now entirely confused.  Are you running HA on a different device to your pc?  Are you able to download and try the library on that device?
Charles Gillanders | Personal Account
<EMAIL_ADDRESS>Please consider the environment before printing this e-mail
On 5 Dec 2022, at 16:15, Dejv311 @.***> wrote:

Hi,
I unfortunately do not know Postman. I tried running your Python alphaess library on my PC and I was able to login and retreive data. I also tried to delete, restart and install again the HA integration, but no luck. The login still does not work there. I hoped it might have been caused by some forgotten dependency, but I could not test that.
—
Reply to this email directly, view it on GitHubhttps://github.com/CharlesGillanders/homeassistant-alphaESS/issues/51#issuecomment-1337646548, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AMWX2MHTHDOIW532JSRAZG3WLYIJBANCNFSM6AAAAAASFX2SUU.
You are receiving this because you commented.Message ID: @.***>

Did this ever get resolved?  I have been unable to use the Alpha-ESS for some time now.  Just tried a fresh addition via HACS and adding the integration and got the same unknown error.  I can use the Alpha ESS iPhone app and the monitoring web site with the same user name and password.

Without more low level diagnostics this issue cannot be addressed.  The library simply calls the same web APIs as the website so there's something different happening when the connection is attempted from an affected HA instance compared to using it from another PC.
I need the low level information when ran on an affected HA system.

I deleted my previous reply - I didn't get this issue fixed but looking at similar problems with several other integrations it seems that maybe there's some reference issue happening.
https://community.home-assistant.io/t/error-adding-integration/485237
https://github.com/music-assistant/hass-music-assistant/issues/1091
Can you increase your HA logging and send me any errors that are thrown when you try to add the alphaESS component?


Require CLI flags (or env vars) to initialize APIG monitor.

#39  👈 (View in Graphite)
trunk

This stack of pull requests is managed by Graphite. Learn more about stacking.


Allocations issue

PLEASE don't abuse std::string! Consider std::string_view or std::string, to see why, I recommend you try overloading the new operator and count every allocation, i personally prefer using const char* or std::string_view when I need a level of 'customizaiton' for strings, neither allocate to heap
For formatting I prefer to write a sprintf wrapper, so I avoid using libraries that create strings, the allocations cand end up being slower than C/posix functions very easily and should be avoided in our situation
I saw them used but I'm not certain whjere as it was from a superficial look where they were spammed

this also includes to_string, it creates a string, obviously

this also includes to_string, it creates a string, obviously


Render Viewport Scale Unsupported

Firstly: MiniEngineAO is awesome. Amazing quality considering how performantly it runs.
Changing VRSettings.renderViewportScale, or specifically making it less than 1, causes MiniEngineAO to render to a smaller portion of the bottom left of the screen.
Here is a quick capture of what happens when adaptively scaling render viewport scale: https://youtu.be/9w9ViiswIRA
I suspect a shader will need 1 / VRSettings.renderViewportScale passing in to scale all incoming UVs in the vertex program.

This is actually a bug in the Unity side.
https://issuetracker.unity3d.com/issues/vr-changing-renderviewportscale-results-in-reduction-of-viewing-space-for-the-right-eye-when-using-post-effects
The symptom described in the issue above is a bit different from what you told, but the root cause of the problem is the same.
I'm closing this issue. Please follow the issue tracker for further updates.


add xrefs to GO:0036307 23S rRNA (adenine(2030)-N(6))-methyltransferase activity

id: GO:0036307
name: 23S rRNA (adenine(2030)-N(6))-methyltransferase activity
namespace: molecular_function
def: "Catalysis of the reaction: S-adenosyl-L-methionine + adenine(2030) in 23S rRNA = S-adenosyl-L-homocysteine + rRNA containing N(6)-methyladenine(2030) in 23S rRNA." [GOC:imk, PMID:22847818]
is_a: GO:0008988 ! rRNA (adenine-N6-)-methyltransferase activity

[x] add xref EC:<IP_ADDRESS>6 [23S rRNA (adenine(2030)-N(6))-methyltransferase]
[x] add xref RHEA:43736

done


retain_cwd not imported in git plugin

Compare:
https://github.com/nerdvegas/rez/blob/7f760bf849ac096dc2b498705080c8b6668765d8/src/rezplugins/release_vcs/git.py#L230
This should probably come from rez.utils.filesystem
I've hit this during rez-diff on windows.

It seems there is more wrong here. git does not exist and as class method it can't access self.git. Probably a bit more work here.

Verified same problem on linux


rename to maproulette-backend and move to osmlab

let's move this repo to osmlab where maproulette3 also lives, and rename it to maproulette-backend to indicate that this is (only) the backend for the MapRoulette application.
There are some preconditions for doing this, such as but not limited to adapting the deployment scripts.

Let's do this :)

Renamed as maproulette/maproulette-backend :tada:


Added script to scrape coursera

Description
The script helps in scraping courses from coursera based on given keywords. Uses selenium webdrivers for webscraping.
Fixes #1537

Type of change

[x] New feature (non-breaking change which adds functionality)

Checklist:

[x] My code follows the style guidelines(Clean Code) of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have created a helpful and easy to understand README.md
[x] My documentation follows Template for README.md
[x] I have added the project meta data in the PR template.
[x] I have created the requirements.txt file if needed.

Project Metadata
If there is no-file/nothing to fill the below fields with, then type: none
 Selenium: 4.9.1
Category:

[ ] Calculators
[ ] AI/ML
[x] Scrappers
[ ] Social_Media
[ ] PDF
[ ] Image_Processing
[ ] Video_Processing
[ ] Games
[ ] Networking
[ ] OS_Utilities
[ ] Automation
[ ] Cryptography
[ ] Computer_Vision
[ ] Fun
[ ] Others

Title: Coursera web-scraping
Folder: Coursera Scraper
Requirements: requirements.txt
Script: courses.py
Arguments: keyword-pages
Contributor: THEGAMECHANGER416
Description: Webscrapes coursera with given keywords and for given number of pages

Please merge this PR for issue #1537


Add Debian to distribution list for certificate installation

Description
Hello,
Using nitro init on Debian (WSL2) throws an error, the distribution seemingly not recognized for the certificate installation.
  … getting Nitro’s root site certificate ✓
Installing certificate (you might be prompted for your password)
Error: unable to find the distribution from the description: Description:       Debian GNU/Linux 10 (buster)

I found out the issue is similar to #323, but "Debian" seems to be missing in this line?

Resolved this in https://github.com/craftcms/nitro/commit/0b6d2bf04e2ede714ccd00c8add78b16417a2caf for the next release.

Released in 2.0.8, let me know if you have any issues!


Asynchronous validation broken with Angular 1.2.0-rc2

For asynchronous validation, the expression bassed to ui-validate is supposed to return a promise. The ui.validate module uses scope.$eval to evaluate expressions. Unfortunately, since this commit:
https://github.com/angular/angular.js/commit/3a65822023119b71deab5e298c7ef2de204caa13
Angular no longer allows promises to be returned from $eval.
Also discussed here:
https://github.com/angular-ui/angular-ui-OLDREPO/issues/257
Also, ui-tools are missing a test case for asynchronous validation.

UI.Utils modules was split in individuals repositories. If still valid, please consider re-submitting on its dedicated repository: https://github.com/angular-ui/ui-validate
See the README for details.


Remove duplicated smart contract used to test manifest generation

Summary or solution description
Some contracts were testing different things, but the smart contract was the same.

Merged MetadataInfoNameDefault.py, MetadataInfoGroupDefault.py, MetadataInfoPermissionsDefault.py, MetadataInfoSourceDefault.py, and MetadataInfoTrustsDefault.py into one contract;
Changed Nep17Interface.py to have methods with camelCase and kept the Nep17InterfaceWithDisplayName.py file.

Platform:

OS: Windows 10 x64
Python version: Python 3.7

Task linked: CU-864evbhp0 Remove duplicated smart contract used to test manifest generation

coverage: 91.696% (-0.3%) from 91.955% when pulling 2b0299b8d08e7e5a4cce643b3efbac3feecaaf2f on CU-864evbhp0 into 7072a31438a0f38a1e940a0d21b922ef0f7394e1 on development.


bugfix:  hardcode was removed from AuthRequiredMiddleware

Codecov Report

Merging #12 into master will increase coverage by 27.69%.
The diff coverage is 100.00%.

@@             Coverage Diff             @@
##           master      #12       +/-   ##
===========================================
+ Coverage   23.80%   51.49%   +27.69%
===========================================
  Files          19       20        +1
  Lines         521      536       +15
===========================================
+ Hits          124      276      +152
+ Misses        397      260      -137

Flag
Coverage Δ

#unittests
51.49% <100.00%> (+27.69%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

expenshare/apps/main/middleware.py
100.00% <100.00%> (+100.00%)
:arrow_up:

expenshare/apps/main/tests/views/test_common.py
100.00% <100.00%> (ø)

expenshare/apps/main/views.py
44.82% <100.00%> (+44.82%)
:arrow_up:

expenshare/settings/base.py
100.00% <100.00%> (ø)

expenshare/apps/main/services.py
26.92% <0.00%> (+26.92%)
:arrow_up:

expenshare/apps/main/forms.py
56.25% <0.00%> (+56.25%)
:arrow_up:

expenshare/urls/dev.py
100.00% <0.00%> (+100.00%)
:arrow_up:

expenshare/urls/base.py
100.00% <0.00%> (+100.00%)
:arrow_up:

Continue to review full report at Codecov.

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


No icon in tile menu

Describe the bug
There's an icon missing in the tile menu of Coffee.
To Reproduce
Steps to reproduce the behavior:

Add Coffee to the tile menu
Experience the issue

Expected behavior
An icon to appear.
Screenshots
If applicable, add screenshots to help explain your problem.

Device (please complete the following information):

Device: OnePlus 8
Android version: 13

Additional context
Add any other context about the problem here.

Duplicate of #236

Duplicate of #296

I updated the icon in the tile in https://github.com/mueller-ma/Coffee/releases/tag/2.24. Can you check if that fixes this issue?

Yes, now ot works


feat: support adding global attributes

Description

support adding global attributes

General Checklist

[x] Added new tests to cover change, if needed
[ ] Security oriented best practices and standards are followed (e.g. using input sanitization, principle of least privilege, etc)
[x] Documentation update for the change if required
[x] PR title conforms to conventional commit style
[ ] If breaking change, documentation/changelog update with migration instructions

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Codecov Report
Patch coverage: 100.00% and no project coverage change.

Comparison is base (db2b7ef) 100.00% compared to head (8847675) 100.00%.

Additional details and impacted files
@@            Coverage Diff            @@
##              main       #22   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           24        24
  Lines          966       984   +18
  Branches       176       181    +5
=========================================
+ Hits           966       984   +18

Files Changed
Coverage Δ

src/ClickstreamAnalytics.ts
100.00% <100.00%> (ø)

src/provider/AnalyticsEventBuilder.ts
100.00% <100.00%> (ø)

src/provider/ClickstreamProvider.ts
100.00% <100.00%> (ø)

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


Using OpenSSL openssl genpkey -algorithm rsa 2048 to generate a "traditional" RSA key

While attempting to enable secure boot on an Nvidia Tegra device, we noticed a discrepancy between the OpenSSL 1x and 3x branches.
At least for the Nvidia software, the OpenSSL 1x branch works when using the command openssl genrsa 2048 command.
This is because OpenSSL 1 prints "BEGIN RSA PRIVATE KEY"; I assume the Nvidia tools are looking for this string?
With OpenSSL 3, this is no longer the case.
Using openssl genrsa 2048 -traditional seems to work and the key checks out.
However, I noticed in the OpenSSL man pages that genrsa is deprecated, and genpkey should be used instead.
Fumbling around with some of the switches, I wasn't able to produce the desired result, where BEGIN RSA PRIVATE KEY was printed.
Instead, trying the (seemingly) obvious -traditional switch produced the following error:
$ openssl genpkey -outform pem -algorithm rsa -text -traditional
genpkey: Unknown cipher: traditional
genpkey: Use -help for summary.
809B86A8B07F0000:error:0308010C:digital envelope routines:inner_evp_generic_fetch:unsupported:../crypto/evp/evp_fetch.c:349:Global default library context, Algorithm (traditional : 0), Properties (<null>)
FAIL: 1

Is there a way to persuade OpenSSL 3's genpkey to print
-----BEGIN RSA PRIVATE KEY-----
# KEY #
-----END RSA PRIVATE KEY-----

instead of
-----BEGIN PRIVATE KEY-----
# KEY #
-----END PRIVATE KEY-----

?
Thanks for the help!

Thanks to @madisongh from OE4T:
openssl genpkey -algorithm rsa -pkeyopt rsa_keygen_bits:2048 -outform PEM -quiet | openssl pkey -traditional does the trick

Well that's a relief!
At least it's not anything major

@petrovr The genrsa command uses the high level API so there is no reason it should be deprecated. At least until RSA keys are completely considered legacy and insecure and that is not going to happen any time soon given the slow progress of post-quantum algos.

Tomáš Mráz wrote:

@petrovr The genrsa command uses the high level API so there is no reason it should be deprecated. At least until RSA keys are completely considered legacy and insecure and that is not going to happen any time soon given the slow progress of post-quantum algos.

I expect documentation to point to new "pkey" based model as preferred.
I guess that  is clear that you cannot remove a utility in next 30-40 years unlike API. So deprecated is not best description for legacy utility.
It will be good to rephrase with reference to "new utility".
Roumen


Make changelog and sync with cli

CLI is really out of date with latest structure changes yet it also lacks few features. I'll try to close them all tomorrow morning and make the changelog in the evening.

:+1:

CLI kinda cleaned up, will need a huge rewrite to be up to date. Main focus for today/tomorrow - changelog.

I'll make another changelog this Sunday.

Awesome. Thank you.

Holidays as always delayed everything. But I am speaking with @AugustinLF today on Skype to get this things done before WebExpo and WebCampZg. Will update the issue later today.

Awesome

We are preparing trello board with roadmap with @AugustinLF, will be ready by the end of the week. The plan is to finish all the things before WebExpo!

All right! :-)

As I expected, cli is tricky for agile projects.


No response from the java side.

I am extensively using jpype in my program and this problem has occurred on multiple occasions at different code blocks. Sometimes it would run fine and give an output instantaneously. But sometimes it doesn't get a response from the java side and the python side just keeps waiting for it.

Unfortunately your issue does not contain enough information to even speculate as to the source.   If you can replicate the issue and isolate it to the critical elements then perhaps I could give a better response.   There are lots of possible ways for a dead lock to occur in Java and Python.   JPype simply uses JNI to initiate Java calls so there is no waiting beyond whatever Java is performing.   There is a global Python lock which must be reacquired upon returning, thus unless Python is stalled there is no deadlock potential there.

Is there any way to check if this lock is the reason?
I am using a multi-processor system and the code is too long to be able to reproduce with just the jpype stuff.
But I know for sure that the problem is because a java call is made and the python side keeps waiting for a response which it doesn't get so just hangs.
It would be great if you could suggest something that I can check in my python program.

About the only way to check the status at this level would be to compile JPype with logging and look a the logger output.   I used it for this purpose to debug the multi threaded examples.  But barring this I don't have much advice.

I have run the code with trace and I am getting the following traceback (These are the last few lines of the trace only).
Parsing 2 PDDL files
supervised.py(153):         self.enhsp = enhsp(pddl_files[0])
--- modulename: enhsp_interface, funcname: init
enhsp_interface.py(35):         if not jpype.isThreadAttachedToJVM():
--- modulename: _core, funcname: func2
_core.py(71):         import warnings
_core.py(72):         if not func2._warned:
_core.py(73):             warnings.warn(func2._warning % (func2._real.module, func2._real.name),
_core.py(74):                           category=DeprecationWarning, stacklevel=2)
_core.py(75):         func2._warned = True
_core.py(76):         return func2._real(*args, **kwargs)
--- modulename: _core, funcname: isThreadAttachedToJVM
_core.py(361):     return _jpype.isThreadAttachedToJVM()
enhsp_interface.py(37):         domainFile = jpype.JString(domain)
--- modulename: _jstring, funcname: new
_jstring.py(33):         if cls != JString:
_jstring.py(35):         cls = _jpype.JClass("java.lang.String")
--- modulename: _jclass, funcname: new
_jclass.py(79):         if loader and isinstance(jc, str):
_jclass.py(83):         if isinstance(jc, str) and jc.endswith(">"):
_jclass.py(99):         return _jpype._getClass(jc)
_jstring.py(36):         return cls(*args)
enhsp_interface.py(38):         print("HERE")
HERE
enhsp_interface.py(39):         self.domain = PddlDomain(domainFile);
As you can see after the last line which is a call to the java class PddlDomain, nothing happens. No error or anything.

This is a Python trace.  If you want the JNI trace, you must recompile JPype with --enable-tracing as specified in the devel guide.

Okay so I have just tried it with this. The traceback is the following:

PyJPObject_new
JPMethodDispatch::invokeConstructor
JPMethodDispatch::findOverload
JPMethodDispatch::findOverload: Checking overload
JPMethodDispatch::findOverload: Got overloads to check 2
JPMethodDispatch::findOverload: Trying to match public com.hstairs.ppmajal.domain.PddlDomain(java.util.Collection,com.hstairs.ppmajal.problem.PDDLObjects,java.util.Set,java.util.Collection)
JPTypeManager::populateMethod
JPTypeManager::populateMethod: Method 0x55bd39829a10
JPTypeFactory_populateMethod
< JPTypeFactory_populateMethod
< JPTypeManager::populateMethod
JPMethod::matches
JPMethod::matches: Flags 0 0 0
JPMethod::matches: arguments length 1
JPMethod::matches: types length 4
JPMethod::matches: Argument length mismatch 1 4
< JPMethod::matches
JPMethodDispatch::findOverload:   match ended 0
JPMethodDispatch::findOverload: Trying to match public com.hstairs.ppmajal.domain.PddlDomain(java.lang.String)
JPTypeManager::populateMethod
JPTypeManager::populateMethod: Method 0x55bd398cab60
JPTypeFactory_populateMethod
< JPTypeFactory_populateMethod
< JPTypeManager::populateMethod
JPMethod::matches
JPMethod::matches: Flags 0 0 0
JPMethod::matches: arguments length 1
JPMethod::matches: types length 1
JPMethod::matches: Match args
JPStringType::findJavaConversion
JPConversionNull::matches
< JPConversionNull::matches
JPConversionObject::matches
< JPConversionObject::matches
< JPStringType::findJavaConversion
JPMethod::matches: Result 3
< JPMethod::matches
JPMethodDispatch::findOverload:   match ended 3
< JPMethodDispatch::findOverload
JPMethod::invokeConstructor
JPMethod::packArgs
JPMethod::packArgs: skip 0
JPMethod::packArgs: offset 0
JPMethod::packArgs: arguments length 1
JPMethod::packArgs: types length 1
JPMethod::packArgs: Pack fixed total= 1
< JPMethod::packArgs

And then nothing else is displayed.

Hi, just wondering if you looked into this

Not much to look at.  Everything in the log is normal operations.  If you add a flush command to the logger you would see that the next command would be to release the lock and call java.   I would recommend checking to see if the global lock has a log statement and enable that to see if it gives additional clues.
Only by comparing the logs where something works and where it fails is it likely to point to a problem.   If this was an error that could be replicated using some trivial code I could see if I can identify it, but unfortunately there is little I can do at present.

Okay. Just one more thing. If I have an error trace that stops at JPClass:: invoke and doesn't do the next step which should be JPMethodDispatch:: invoke, then what could be the problem?
Here is the trace for that:

PyJPMethod_call
PyJPMethod_call: hasNext
JPMethodDispatch::invoke
JPMethodDispatch::findOverload
JPMethodDispatch::findOverload: Checking overload hasNext
JPMethodDispatch::findOverload: Got overloads to check 1
JPMethodDispatch::findOverload: Trying to match public abstract boolean java.util.Iterator.hasNext()
JPMethod::matches
JPMethod::matches: Flags 0 1 1
JPMethod::matches: arguments length 1
JPMethod::matches: types length 1
JPMethod::matches: Take this
JPMethod::matches: Match args
JPClass::findJavaConversion
JPConversionNull::matches
< JPConversionNull::matches
JPConversionObject::matches
JPConversionObject::matches: assignable 1 java.util.LinkedHashMap.LinkedKeyIterator java.util.Iterator
< JPConversionObject::matches
< JPClass::findJavaConversion
JPMethod::matches: Result 2
< JPMethod::matches
JPMethodDispatch::findOverload:   match ended 2
JPMethodDispatch::findOverload: Best match public abstract boolean java.util.Iterator.hasNext()
< JPMethodDispatch::findOverload
JPMethod::invoke
JPMethod::packArgs
JPMethod::packArgs: skip 1
JPMethod::packArgs: offset 0
JPMethod::packArgs: arguments length 1
JPMethod::packArgs: types length 1
JPMethod::packArgs: Pack fixed total= 1
< JPMethod::packArgs
JPMethod::invoke: invoke virtual public abstract boolean java.util.Iterator.hasNext()
< JPMethod::invoke
< JPMethodDispatch::invoke
< PyJPMethod_call
PyJPMethod_dealloc
< PyJPMethod_dealloc
PyJPObject_getattro
PyJPMethod_get
PyJPMethod_create
< PyJPMethod_create
< PyJPMethod_get
< PyJPObject_getattro
PyJPMethod_call
PyJPMethod_call: next
JPMethodDispatch::invoke
JPMethodDispatch::findOverload
JPMethodDispatch::findOverload: Checking overload next
JPMethodDispatch::findOverload: Got overloads to check 1
JPMethod::matches
JPMethod::matches: Flags 0 1 1
JPMethod::matches: arguments length 1
JPMethod::matches: types length 1
JPMethod::matches: Take this
JPMethod::matches: Match args
JPClass::findJavaConversion
JPConversionNull::matches
< JPConversionNull::matches
JPConversionObject::matches
< JPConversionObject::matches
< JPClass::findJavaConversion
JPMethod::matches: Result 3
< JPMethod::matches
< JPMethodDispatch::findOverload
JPMethod::invoke
JPMethod::packArgs
JPMethod::packArgs: skip 1
JPMethod::packArgs: offset 0
JPMethod::packArgs: arguments length 1
JPMethod::packArgs: types length 1
JPMethod::packArgs: Pack fixed total= 1
< JPMethod::packArgs
JPMethod::invoke: invoke virtual public final java.lang.Object java.util.LinkedHashMap$LinkedKeyIterator.next()
JPClass::invoke
JPTypeManager::findClassForObject
JPTypeManager::findClassForObject: ClassName com.hstairs.ppmajal.conditions.Predicate
< JPTypeManager::findClassForObject
JPClass::convertToPythonObject
JPTypeManager::findClassForObject
JPTypeManager::findClassForObject: ClassName com.hstairs.ppmajal.conditions.Predicate
< JPTypeManager::findClassForObject
PyJPClass_create id="0x558c1a562930"
< PyJPClass_create
PyJPValue_alloc
PyJPValue_alloc: alloc com.hstairs.ppmajal.conditions.Predicate 0x7efcceddf870
< PyJPValue_alloc
< JPClass::convertToPythonObject
< JPClass::invoke
< JPMethod::invoke

I would recommend adding more instrumentation to that spot to see if you can see what JNI call is being made.


Replace the image and document admin pages with generic views

Is your proposal related to a problem?
For Wagtail 2.8 I added the possibility to filter images on the admin page by their tags. However I'm not satisfied with how it's implemented and it seems to me, that other problems will arise, especially in edge cases. (For example when searching an filtering by tag at the same time, when filtering by tag on the Nth page, etc...)
Describe the solution you'd like

I'd like to create a pull request implementing the image admin page derived from ModelAdmin.
Describe alternatives you've considered

I looked into implementing faceted search for the image admin pages, but I think that using what is already there is the way to go.
Additional context

Here is some code how I'd implement it:
from wagtail.images import get_image_model

class ImageAdmin(ModelAdmin):
    """ Put image admin page in sidebar """
    model = get_image_model()
    menu_icon = 'image'
    menu_order = 300
    add_to_settings_menu = False
    exclude_from_explorer = True
    list_filter = ('tags', 'collection', 'created_at', )
    search_fields = ('title', )
    ordering = ('-created_at', )
    list_per_page = 25

modeladmin_register(ImageAdmin)

It would also need some adjustments of the template.
Have a look at the screenshot how it might look.

See #8851 and https://github.com/wagtail/wagtail/discussions/8609, as part of which we’re introducing generic filtering functionality to generic views that aren’t ModelAdmin. I believe this is generally the direction we want to take to other parts of the admin, so will rename this accordingly.

Need to check. This may have recently been done through the Universal Listings work.

Yep. Documents and Image index views now use class based views, I'll close this as complete. It looks like the original conversion was done a while ago but recent Universal Listings work will make this much easier to customise.
https://github.com/wagtail/wagtail/pull/11709
https://github.com/wagtail/wagtail/pull/11698
Also related - https://github.com/wagtail/wagtail/issues/8365


Question - any simple way of creating a custom mask type?

I'd like to use my own gradients/colors for the mask type. Any simple way of doing so without forking SVProgressHUD?

No there is not at the moment, however a PR is very welcome.


test(ci): Test branch to test new i18n CI

DO NOT MERGE
This branch is purely a test to test the new i18n CI.

@inc-man you can use this branch to test it

this test branch is not needed anymore because the workflow that was being tested here worked


Perform distributed and GPU experiments

I'm going to put together some experiments exhibiting the distributed and GPU abilities of GPflow.

@alexggmatthews would this cover performance? I am a bit concerned that we may be regressing performance (see recent issue you found with batch_mul) - is there a way to have an ongoing performance check similar to the code coverage check?

Hi @alexisboukouvalas yes I would like this too. See #170 . The problem with doing it as part of continuous integration is that a top end GPU can cost £900 so we don't have many lying around. The plan at the moment is to monitor it on a regular (say daily) test and that there is a script we can run when do anything that is likely to change speed. We would then submit the results with the relevant PR .


Auto-update diagrams on push.

We want diagrams to be refreshed after every push, by running command sh tool/diagrams.sh.
The instruction does not work because of branch protection rules. See details. After we succeed, we need to update the instruction.
Options:

github-push-action: https://github.com/ad-m/github-push-action/issues/170#issuecomment-1579584643
https://github.com/marketplace/actions/git-auto-commit
peter-evans/create-pull-request: https://aiven.io/blog/how-to-automagically-open-pull-requests-with-github-actions

Pull request should not happen if there is no changes.

We can experiment with creating a file with timestamp. As soon as it works, we can switch to update for diagrams.


web.config is modified by the application

Azure\ConnectTheDotsWebSite\web.config is modified by ConnectTheDotsCloudDeploy.exe Since this is a source file it should not be modified by the application itself.
We should move to having a template in source and saving the modified version in our local config for the application.

this is by design

My issue is not with the design, it is with a file that gets modified by the code being in version control. This is bad practice because it means the file (at best) gets considerable churn and (at worst) produces unexpected side effects when someone does a git pull after such a change.
Local configurations should be kept local.


Windows / Linux support ?

Thanks a lot for your work, I can't wait to to use it in my own app (a front-end for https://github.com/pomdtr/sunbeam).
I plan to release my accross all systems, I feel like it could be interesting to add all os to this example.

Unfortunately, I am not familiar with the use of the win32 API or the windowing API for Linux desktops. I apologize for not being able to assist in this matter.


[Authorization] Support GET_BACKLOG_SIZE topic op after enable auth

Motivation
Currently, we can get the backlog size of a topic through bin/pulsar-admin topics get-backlog-size tn1/ns1/tp1, however I found that PulsarAuthorizationProvider lacks support for topic operation GET_BACKLOG_SIZE when verifying the role's authorization, code as below:
https://github.com/apache/pulsar/blob/b99f75e8874532f5a1867741cbb85ca6a2187132/pulsar-broker/src/main/java/org/apache/pulsar/broker/admin/impl/PersistentTopicsBase.java#L2767
https://github.com/apache/pulsar/blob/b99f75e8874532f5a1867741cbb85ca6a2187132/pulsar-broker-common/src/main/java/org/apache/pulsar/broker/authorization/PulsarAuthorizationProvider.java#L569-L599
The purpose of this PR is to support role with consume topic authorization to GET_BACKLOG_SIZE of topic.
Documentation

[x] no-need-doc

@merlimat @freeznet PTAL, THX!

@eolivelli @codelipenghui @315157973 @freeznet PTAL, THX!

@eolivelli @codelipenghui @315157973 @freeznet PTAL


Enhance README just a bit?

You might consider spending a few minutes enhancing the README to make it easier to find and quickly understand your amazing work!

Thanks very much for the feedback Sean - I'll iterate on it.


Flaky tests

Here's a set of tests that sometimes pass and sometimes fail (mostly on CI systems):

https://github.com/sormuras/silk/runs/733638112?check_suite_focus=true#step:5:590
MethodSource [className = 'se.jbee.inject.event.TestTTLExceptionHandingComputeEvents', methodName = 'thatTimeoutExceptionIsThrownIfHandlerMethodThrowsSuperclassException', methodParameterTypes = '']   => java.lang.AssertionError: should throw TimeoutException

I am aware. We might just @Ignore them for the moment and put a comment to write a test that cannot time out instead. I did not want to put in too much time for the events as I have plans to rework its core at some point.


Come up with new subs to approach

/r/Tinder

https://docs.google.com/spreadsheets/d/12Hwzj8u71N1xDJehInlC3R7AIWj6mv3CSm2Z-oSNHSM/edit?usp=sharing
Spreadsheet of all ideas with progress details on each. Please read/update as necessary

Seems like this discussion now lives in the above linked spreadsheet. Closing...


Added fully differential amplifiers

SUMMARY

Added symbols and components for fully differential amplifiers
DATASHEETS / REFERENCES

OPEN QUESTIONS / UNRESOLVED ISSUES

CHECKLIST

[x ] I have read and followed the library conventions¹.
[ ] For packages, I followed IPC7351C (see details in library conventions).
[ ] For modified elements, I bumped their version number².
[x] I already used the new library elements in a design and verified their correctness (optional).
[x] I'm the copyright owner of the added content (i.e. the changes are made by myself, not copied/imported from somewhere else).
[x] I agree to publish all my changes under the CC0 Public Domain License³, allowing everyone to use and modify the content without any restrictions.

¹ Library Conventions: https://docs.librepcb.org/#libraryconventions
² Minor version bump if only metadata was modified (e.g. "0.1" -> "0.1.1"), major version bump if functional changes were made (e.g. "0.1" -> "0.2")
³ CC0 Public Domain License: https://en.wikipedia.org/wiki/CC0

I left a bug, both pins of the std fdamp are !o.
Beside why for all symbols the library uses smaller o and for the components the capital O is used? It breaks the automatic assignment of designator.

Thanks! I added a commit to slightly rework some things, for example hiding the output signal name in schematics (as we already do for the other OpAmps) and moving some text labels in the symbols. I hope you're fine with it. If you experience any issues, please let me know.

Beside why for all symbols the library uses smaller o and for the components the capital O is used? It breaks the automatic assignment of designator.

Yeah good point, I renamed pins and signals to OUT/!OUT now (they are hidden in schematics anyway) and will also apply the change to the existing OpAmp symbols.


Explore partially decoding blocks (within-block skipping)

Description
Idea from @mikemccand 's comment in https://github.com/apache/lucene/issues/12696#issuecomment-1770461719
Another exciting optimization such a "patch-less" encoding could implement is within-block skipping (I believe Tantivy does this).

Today, our skipper is forced to align to block boundaries, so when we skip to a given docid, we go to the block that may contain this docid, decode all 128 int[], then linearly scan within those 128 ints. This is quite a bit of overhead for each skip request!

If we could lower that linear scan cost to maybe 16 or 8 or something, the conjunctive queries should get even faster. But perhaps it becomes trickier to take advantage of SIMD optimizations if we are decoding a subset of ints, not sure.

After the change in https://github.com/apache/lucene/pull/12741 , we will no longer use patching when encoding doc blocks.
This may allow us to partially decode blocks? This would mean skipping could jump to the middle of a block, instead of having to be at block boundaries as they are today.

How would it work? Since blocks are delta-coded, you can't know the value at a given index without decoding all previous values and computing their sum? Or you need to store some checkpoints separately, but then it may be easier/better to simply go with smaller blocks (e.g. 64 doc IDs instead of 128)?

How would it work? Since blocks are delta-coded, you can't know the value at a given index without decoding all previous values and computing their sum? Or you need to store some checkpoints separately, but then it may be easier/better to simply go with smaller blocks (e.g. 64 doc IDs instead of 128)?

+1. Delta-encoding here is the blocker, unless we change the encoding scheme.


cmd_vel topic doesn't exist

Issue: Follow the guide(http://emanual.robotis.com/docs/en/platform/turtlebot3/ros2/#ros2) to use turtlebot3 on ROS2, execute bringup steps, and check the ros2 topic list,  the result is that no cmd_vel topic exist. Not known something if I have missed. Does anyone met the same issue before, would you please share some experience about how to fix or debug? many thanks.
ISSUE TEMPLATE ver. 0.2.0

Which TurtleBot3 you have?

Waffle

Which SBC(Single Board Computer) is working on TurtleBot3?

Intel NUC6i

Which OS you installed in SBC?

Ubuntu 18.04

Which OS you installed in Remote PC?

 OK
Enter 'q' for exit
rapdev1@rapdev1:~/turtlebot3$ MicroXRCEAgent udp 2018
UDP agent initialization... OK
Enter 'q' for exit
RTPS Participant matched 1.f.59.e.c<IP_ADDRESS>.<IP_ADDRESS>|0.0.1.c1
RTPS Participant matched 1.f.59.d.aa.7f.<IP_ADDRESS>.0.0|0.0.1.c1
rapdev1@rapdev1:/data/proj/sdk/tb3_ws$ ~/turtlebot3/turtlebot3_lidar
turtlebot3 lidar client setup complete!
1 - Sent topic: 0.870000, range_max: 361
2 - Sent topic: 0.871000, range_max: 361
3 - Sent topic: 0.866000, range_max: 361
rapdev1@rapdev1:/data/proj/sdk/tb3_ws$ ros2 launch turtlebot3_bringup robot.launch.py
urdf_file_name : turtlebot3_waffle.urdf
[INFO] [launch]: process[robot_state_publisher-1]: started with pid [27970]
[INFO] [launch]: process[turtlebot3_ros-2]: started with pid [27971]
Initialize urdf model from file: /data/proj/sdk/tb3_ws/install/turtlebot3_description/share/turtlebot3_description/urdf/turtlebot3_waffle.urdf
Parsing robot urdf xml string.
Link base_link had 7 children
Link camera_link had 2 children
Link camera_depth_frame had 1 children
Link camera_depth_optical_frame had 0 children
Link camera_rgb_frame had 1 children
Link camera_rgb_optical_frame had 0 children
Link caster_back_left_link had 0 children
Link caster_back_right_link had 0 children
Link imu_link had 0 children
Link base_scan had 0 children
Link wheel_left_link had 0 children
Link wheel_right_link had 0 children
got segment base_footprint
got segment base_link
got segment base_scan
got segment camera_depth_frame
got segment camera_depth_optical_frame
got segment camera_link
got segment camera_rgb_frame
got segment camera_rgb_optical_frame
got segment caster_back_left_link
got segment caster_back_right_link
got segment imu_link
got segment wheel_left_link
got segment wheel_right_link
[INFO] [turtlebot3_node]: Init TurtleBot3 Node Main
Adding fixed segment from base_footprint to base_link
Adding fixed segment from base_link to camera_link
Adding fixed segment from camera_link to camera_depth_frame
Adding fixed segment from camera_depth_frame to camera_depth_optical_frame
Adding fixed segment from camera_link to camera_rgb_frame
Adding fixed segment from camera_rgb_frame to camera_rgb_optical_frame
Adding fixed segment from base_link to caster_back_left_link
Adding fixed segment from base_link to caster_back_right_link
Adding fixed segment from base_link to imu_link
Adding fixed segment from base_link to base_scan
Adding moving segment from base_link to wheel_left_link
Adding moving segment from base_link to wheel_right_link
rapdev1@rapdev1:/data/proj/sdk/tb3_ws$ ros2 topic list
/imu
/joint_states
/odom
/parameter_events
/robot_description
/rosout
/scan
/scan_half
/sensor_state
/tf
/tf_static
/time_sync

Just fixed the issue when change TB3 connection with SBC from USB3.0 port to USB2.0 port.

@yechun1 - I have seen this too, and the only way I have to fix it is to either reboot the OpenCR board (works sometimes) or push the reset button on the OpenCR board.
See this section here:
http://emanual.robotis.com/docs/en/platform/turtlebot3/ros2/#opencr-setup
I'm assuming you followed these directions already. In which case that's when I find that pushing reset again can fix this issue. Maybe @routiful has a better understanding of what is happening and why?

Also, have you made sure that /dev/ttyACM0 is showing up when you do an 'ls'?
If so, do you see the microcontroller when you do an 'lsusb'?

thanks @mkhansen-intel. Reset OpenCR board really help us. And we found the root cause that the MicroXRCEAgent serial /dev/ttyACM0 does  publish topic when set ros domain id, for example
export ROS_DOMAIN_ID=120
when we disable ROS_DOMAIN_ID in bashrc, the MicroXRCEAgent could work normally and publisher the cmd_vel topic.
This may have another issue when multi-users run tb3 in the same local network.

@yechun1 - you will need to make the change I mentioned in #393 in order to get correct odometry, so navigation can work.

Reported the issue on https://github.com/eProsima/Micro-XRCE-DDS-Agent/issues/66

We opened new issue page to summary every issues related turtlebot3 ROS2 #460
I will comment about it later to check it.

For now on, we have been released TB3 ROS 2 Dashing!
Please refer to emanual
This issue was solved to apply new firmware


Add remark rehype options to markdown content docs

What kind of changes does this PR include?

New or updated content

Description

What does this PR change? Give us a brief description.

It looks like https://github.com/withastro/astro/pull/4138 is going to make it in the next minor release, so i'm reopening this PR in order to document the new options!
That Astro PR adds the possibility to use remark rehype options in the Astro config, for instance if a user wants to translate automatically generated elements related to the footnotes. This Astro docs PR adds the relevant docs.

Thanks for taking the initiative on this @gtnbssn! I think @bholmesdev has added documentation for this (so many Ben PRs, I can't keep track!) so I'm going to ask him to look at this to see if there's any key information here that didn't get captured in his other documentation.
As a more general comment, I think this might a bit large of an example for docs the way they are right now, but it would make a great personal blog post! We have been discussing internally how best to include content like these examples which are explaining how to implement a specific feature. If you have a blog, and can write a post about this yourself there, then you don't have to worry about conforming to our current docs format and structure. And then, as we make space in the docs for this kind of community how-to-guide content, we could look at including it at that time!

Thanks @sarah11918! It looks like this is documenting our new remarkRehype config option, which my docs PRs do not address. I agree this content is a bit more detail that our general "Markdown" page should cover though. I definitely learned something from that .sr-only callout though 🙃
I'll leave the call to you, but the content is well written as it stands!

Hi @sarah11918 ! reading through this again, i admit the CSS part might not be at its place here. It's related to this feature, but it doesn't document how to use it. I'll remove it!
Unfortunately i do not have a blog yet. I definitely learned something about the sr-only class while doing this. It seems it is such standard practice that it is a utility class in tailwind.

Here's a trimmed down version!

Thanks @gtnbssn! Admittedly, this looks a lot more manageable now!  😅
I'm thinking maybe it even goes higher, up as the last example in the Markdown Plugins section? Would you agree? That would mean making it the third #### heading in that section. Any objection to that?

@sarah11918 That makes sense to me!

No objection!


First implementation of plugin architecture

This is the first working implementation of the new plugin architecture.
Features:

A plugin is in form of an invokable "Strategy" class.
Route processing is in four stages: metadata, bodyParameters, queryParameters and responses
You specify the strategies you want the Generator to use for each stage. The existing methods have been converted into strategies, and you can add or remove as you like.
Each strategy has access to the config, route information, route rules, and the results obtained thus far.
Combines results from all specified strategies (so you can, for instance, do @responseFile 200 and @response 401 on a single method)

See the plugins documentation file
TODO:

Improve documentation
Decide on what exactly constitutes the plugin API and document clearly (see ParamHelpers, RouteDocBlocker, etc)
Add more tests to be sure this behaves as expected.

Notes:

This API is for version 3. This is likely to be one of the last releases for version 3. We'll be moving to version 4 soon and dropping support for 3, and I would like those who are unable to upgrade to have this so they don't come around rasing unnecessary issues. This means that the API will probably change in version 4.

Questions🤔

Should headers get their own stage?

Codecov Report

Merging #570 into master will increase coverage by 0.4%.
The diff coverage is 96.51%.

@@            Coverage Diff             @@
##             master    #570     +/-   ##
==========================================
+ Coverage     90.39%   90.8%   +0.4%
- Complexity      298     314     +16
==========================================
  Files            14      18      +4
  Lines           708     761     +53
==========================================
+ Hits            640     691     +51
- Misses           68      70      +2

Impacted Files
Coverage Δ
Complexity Δ

src/Tools/Utils.php
72.22% <100%> (+0.79%)
14 <7> (+1)
:arrow_up:

src/Strategies/Responses/UseResponseTag.php
100% <100%> (ø)
11 <11> (?)

src/Commands/GenerateDocumentation.php
94.16% <100%> (ø)
44 <0> (ø)
:arrow_down:

src/Strategies/Responses/UseResponseFileTag.php
100% <100%> (ø)
13 <5> (?)

src/Tools/Generator.php
100% <100%> (+4.06%)
19 <14> (-74)
:arrow_down:

src/Strategies/Strategy.php
100% <100%> (ø)
1 <1> (?)

src/Strategies/Metadata/GetFromDocBlocks.php
100% <100%> (ø)
13 <13> (?)

src/Strategies/BodyParameters/GetFromDocBlocks.php
100% <100%> (ø)
27 <27> (?)

src/Strategies/Responses/UseTransformerTags.php
82.69% <100%> (ø)
26 <1> (?)

...rc/Strategies/QueryParameters/GetFromDocBlocks.php
86.66% <86.66%> (ø)
29 <29> (?)

... and 9 more

Continue to review full report at Codecov.

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

Codecov Report

Merging #570 into master will increase coverage by 0.4%.
The diff coverage is 96.51%.

@@            Coverage Diff             @@
##             master    #570     +/-   ##
==========================================
+ Coverage     90.39%   90.8%   +0.4%
- Complexity      298     314     +16
==========================================
  Files            14      18      +4
  Lines           708     761     +53
==========================================
+ Hits            640     691     +51
- Misses           68      70      +2

Impacted Files
Coverage Δ
Complexity Δ

src/Tools/Utils.php
72.22% <100%> (+0.79%)
14 <7> (+1)
:arrow_up:

src/Strategies/Responses/UseResponseTag.php
100% <100%> (ø)
11 <11> (?)

src/Commands/GenerateDocumentation.php
94.16% <100%> (ø)
44 <0> (ø)
:arrow_down:

src/Strategies/Responses/UseResponseFileTag.php
100% <100%> (ø)
13 <5> (?)

src/Tools/Generator.php
100% <100%> (+4.06%)
19 <14> (-74)
:arrow_down:

src/Strategies/Strategy.php
100% <100%> (ø)
1 <1> (?)

src/Strategies/Metadata/GetFromDocBlocks.php
100% <100%> (ø)
13 <13> (?)

src/Strategies/BodyParameters/GetFromDocBlocks.php
100% <100%> (ø)
27 <27> (?)

src/Strategies/Responses/UseTransformerTags.php
82.69% <100%> (ø)
26 <1> (?)

...rc/Strategies/QueryParameters/GetFromDocBlocks.php
86.66% <86.66%> (ø)
29 <29> (?)

... and 9 more

Continue to review full report at Codecov.

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


 As far as I can tell, there's no call to any function called listen in this code base.

sorry, wrong repo :(


Static adapter compression issue: .br and .gz files incorrectly reference uncompressed files

Describe the bug
When using @sveltejs/adapter-static with precompress: true, the .br and .gz files generated during the build process still reference the uncompressed versions of imported files. This breaks expected functionality because compressed files are served instead of their uncompressed counterparts, causing errors.
For instance, if foo.js imports bar.js, the generated foo.js.br and foo.js.gz still reference foo.js instead of foo.js.br or foo.js.gz. This makes the compressed files unusable without manual intervention.
Reproduction

Ensure your svelte.config.js includes:

import adapter from '@sveltejs/adapter-static';

export default {
  kit: {
    adapter: adapter({ precompress: true }),
  },
};

Create a basic Svelte app where foo.js imports bar.js.

src/lib/foo.js
import './bar.js';
console.log('This is foo.js');

src/lib/bar.js
console.log('This is bar.js');

Build the app using npm run build

Inspect the generated output by
either:
Uncompressing one of the .gz or .br files to examine the import statements directly.
or:
Opening DevTools, navigating to the Network tab, enabling the "Content-Encoding" column, and verifying that files are incorrectly served with the wrong encoding references.

Logs
gzip -d start.TFu5MEUB.js.gz
import{c as a}from"../chunks/entry.BAIdZgoF.js";export{a as start};
System Info
System:
    OS: macOS 15.0.1
    CPU: (8) arm64 Apple M1
    Memory: 63.95 MB / 8.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 23.0.0 - /Volumes/SSD-T7/home-SSD/.nvm/versions/node/v23.0.0/bin/node
    npm: 10.9.0 - /Volumes/SSD-T7/home-SSD/.nvm/versions/node/v23.0.0/bin/npm
    bun: 1.0.21 - ~/.bun/bin/bun
  Browsers:
    Chrome: 131.0.6778.70
    Safari: 18.0.1

Severity
blocking all usage of SvelteKit
Additional Information
Expected Behavior:
The .br and .gz files should reference the corresponding compressed versions of imported files (bar.js.br or bar.js.gz), ensuring correct behavior when serving compressed files directly.

The intention is that the browser would request the .js files for everything, and the server would automatically select the appropriate one, based on the encodings the browser says it can accept. The file would then reference other files with the .js extension. The browser would never be requesting a filename with the .gz or .br extensions.


Block Req network calls in tests

Context: I use Mimic to stub my HTTP clients, so, I'm not (yet) using Req's testing capabilities.
Is there a simple way to block all Req network calls at once, during tests?

Req supports custom adapters and so I believe the easiest way is to have an adapter that fails when it is about to make the network call.
The two most common solutions are:

Use env-specific Req configuration:
# lib/foo.ex
defmodule Foo do
  def request(options) do
    Req.new(Application.fetch_env!(:myapp, :foo_req_options))
    |> Req.request(options)
  end
end

And then in your config/test.exs you can:
adapter = fn _req -> raise "no network calls in tests!" end
config :myapp, foo_req_options: [adapter: adapter]

In config/test.exs or test/test_helper.exs do:
adapter = fn _req -> raise "no network calls in tests!" end
Req.default_options(adapter: adapter)

The latter uses the global Req configuration so as a side benefit it will work for all Req clients you might be using.
Btw in the future please ask questions on elixirforum and similar and feel free to cc me. I believe this way the answers will be more discoverable to more people.

cc @dbernheisel, I believe you asked me once something along these lines. If we can improve things, lmk!


stable/kube-scheduler: Helm chart for custom kube-scheduler

Attached is a helm chart for deploying custom kubernetes schedulers. I personally got the need to do so, and found the docs overly complicated and not comfortable to use. So I created this helm chart and hope that it will be included in the official helm repository.
If you have any questions, do not hesitate to contact me!
Kind regards,
Stefan Jacobs

Is this a new chart

NOTE: We're experiencing a high volume of PRs to this repo and reviews will be delayed. Please host your own chart repository and submit your repository to the Helm Hub instead of this repo to make them discoverable to the community. Here is how to submit new chart repositories to the Helm Hub.

Yes, this is a new chart. This is a chart for a custom kubernetes scheduler configurable by helm values. I found the official scheduler complicated to use and created this chart to ease the use.
What this PR does / why we need it:
This is just an implementation of a custom scheduler as a helm chart. I think it is much smarter to use this than to crunch the official docs and try&error to a working (non default) scheduler.
Which issue this PR fixes
(optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged)

fixes #

Special notes for your reviewer:
I think a custom scheduler is an edge case regarding helm testing. Because of that I attached a Makefile (start make test to test two cases regarding custom scheduling) - if you have any idea how to do that better with helm test I am open for suggestions.
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[x] DCO signed
[x] Chart Version bumped (I put that to 1.0.0)
[x] Variables are documented in the README.md
[x] Title of the PR starts with chart name (e.g. [stable/mychartname])

Hi, as the bot advised, I assign this pull request to you. If you have any questions or suggestions, please feel free to comment. Thanks!
/assign @viglesiasce

Hi 👋 new charts are no longer accepted to stable or incubator. See Status of the Project and Deprecation Timeline for more info about that.
Good news is you can host a Helm chart yourself on GitHub, use the same tools as this repo does for automatic Chart testing and releasing, and list your Helm repo on https://helm.hub.sh. Follow this issue for info about existing guidelines and upcoming improvements: https://github.com/helm/charts/issues/7800


Std pipeline view time left to complete build gets overridden and so Jenkins puts 0ms

@karianna Looks like this has been reported upstream. See:

https://issues.jenkins-ci.org/browse/JENKINS-61218
https://issues.jenkins-ci.org/browse/JENKINS-58604
https://issues.jenkins-ci.org/browse/JENKINS-51351
The general cause is because we're executing the downstream jobs in parallel


Branch Develop is Broken

Setup

Browsers and versions: Chrome Version 64.0.3282.140 (Official Build) (64-bit) and others
MediaWiki version: 1.30 / 1.27
Database version:
PHP version:
Pivot version: 2.0.0-dev
Extension version (if connected to the issue):

Issue
@Tealk
develop branch is now completely broken with commit #52

Haven't looked to it in depth yet, but there is a thrown js error early on. Need to back up and look at
skin.json calls "assets/stylesheets/font-awesome.min.css", missing min.css file in assets. Should just be font-awesome.css.
You have...
$out->addHeadItem('font', '<link rel="preload" href="/skins/pivot/assets/fonts/fontawesome-
webfont.woff2?v=4.7.0" as="font" type="font/woff2" crossorigin="anonymous" />');

You are calling an href with a hard set link. What about those who use w/ or whatever/ directory to install MediaWiki.
Viewport was eliminated. Breaking mobile view now.

develop branch is now completely broken with commit #52

I don't know why there's a problem I use this branch atm without a problem.

skin.json calls "assets/stylesheets/font-awesome.min.css", missing min.css file in assets. Should just be font-awesome.css.

I forgot to upload font-awesome.min.css

You have...
$out->addHeadItem('font', '');
You are calling an href with a hard set link. What about those who use w/ or whatever/ directory to install MediaWiki.

the path is relative to the directory. It can't cause any problems
https://github.com/Tealk/pivot/tree/font-awesome_css
this version is currently running error-free for me

I don't know why there's a problem I use this branch atm without a problem.

skin.json calls "assets/stylesheets/font-awesome.min.css", missing min.css file in assets. Should just be font-awesome.css.

skin.json missing resource, breaks everything, so yes the file you forgot to upload is necessary to keep things from breaking. It looks like your version is just a minified version of font-awesome.css. I just pushed back a few things to fix. You can PR the ...min.css back and remove the old font-awesome.css file, but will have to tweak the skin.json file again. Missing the left-canvas in fontawesome.css too.

the path is relative to the directory. It can't cause any problems

It can and it did. href="/skins... would look for domainname.com/skins/.... href="/w/skins... looks in the domainname.com/w/skins/... Yes, your call is relative, but relative to the domain. Not the true path of the domain if MW is installed in a directory not the root.
href="'.$wgLocalStylePath.'/pivot

$wgLocalStylePath will automatically set the first of the relative path /w/skins or /skins or /wiki/skins or even /wiki/w/skins if someone placed a MediaWiki instance in a directory called wiki and still added a w directory in that. Could also use $wgStylePath which is the same as $wgLocalStylePath, "{$wgScriptPath}/skins" See, https://www.mediawiki.org/wiki/Manual:$wgLocalStylePath
My only goal was to get develop working quickly if anyone wants to use or test it.

Missing the left-canvas in fontawesome.css too.

which left-canvas?
have add {$wgScriptPath} to Pivot.skin.php

Pull down the branch changes. Some I already made.

This branch is now fixed and I am going to release it after I finish here and as soon as I update the CHANGELOG.md file and set a version. I made some changes and pushed a new README.md.
Changes in README.md was updating all the Features List and settings, adding and removing some. Need to document this on the live site too. Next couple of big changes on the PR #52 were updating all of Foundation's js to v5.5.3 and pulling in all their changes to their branch of Foundation 5. There were some improvements to address warnings of deprecation of in code. My developer console thanked me :wink: I called the version v5.5.3master just to denote the change.
Also, I added preload of Font Awesome as a feature. Another warning in develop console, preloading the font but not using it early. I also took these other things into consideration when adding it as a feature:

MIME type server errors, fix your server if you can
Fonts should load what the browser wants and specific browsers load the font based on what is best for them.
woff2 is a standard most modern browsers are moving towards if they aren't there already. However, the browser should be able to load the font which it chooses to load, woff2, woff, ttf, etc.... see first point, fix MIME type output on your server.


OmniSharp server doesn´t launch in VS Code insider

Originally reported in https://github.com/Microsoft/vscode/issues/43800
Environment data
.NET Command Line Tools (2.1.4)
Product Information:
Version:            2.1.4
Commit SHA-1 hash:  5e8add2190
Runtime Environment:
OS Name:     Windows
OS Version:  10.0.16299
OS Platform: Windows
RID:         win10-x64
Base Path:   C:\Program Files\dotnet\sdk\2.1.4\
Microsoft .NET Core Shared Framework Host
Version  : 2.0.5
Build    : 17373eb129b3b05aa18ece963f8795d65ef8ea54
VS Code version: 1.21-insider
C# Extension version: 1.14.0
Steps to reproduce

open a .net folder

Expected  behavior
The OmniSharp server starts and its status is shown in the status bar
Actual behavior
OmniSharp isn´t activated. I couldn´t find any logging from the c#extension.

I just found out that it does work in Insiders on Linux, but not Windows, but that not might be surprising as it is a different platform. However, at work, I am on Windows constantly and that is when I noticed it with the latest update.

I couldn't reproduce this issue. I did the following:

Installed the latest VS Code Insiders (x64) on Windows
Installed C# for VS Code using the Extensions pane.
Created a new .NET Core project with dotnet new console
Open the folder containing the new .NET Core project in VS Code.

At this point, the C# for VS Code extension activated and launched OmniSharp, which successfully loaded the project. Do steps above work for you? If so, is there more detail you could provide to help us reproduce the issue?

These are the steps I´ve used.
This is the VS Code insiders version

I get not Intellisense.

Is there some logging/tracing I can enable?

Looks like I have the same Insiders build.
Is the C# extension actually activating? If it does, there should at least be an OmniSharp Log in the Output pane. If there isn't, it's possible that it didn't activate for some reason. Maybe there's something in the Developer Tools?

The extension isn´t activating

Could not find anything in the Developer Tools Console.

That's very weird, but I'm not sure it's a bug in C# for VS Code. We have changed anything in our package.json related to extension activation in a long time.

The extension is activating

There is no output channel from C#

Nothing in the devtools console.

Since it only happens in insiders I also suspect an issue in VS Code, but was hoping you can help us to track it down.

OK. That's a little better. :smile:

Without debugging, it's hard to know. We don't do much custom logging. I think I've replicated your repro:

Out of curiosity, is your project located in a OneDrive folder with Files On Demand?

Looks like a false alarm, sorry. I´ve re-created your setup and now it works.

Reading the original issue again

Just load a C# file in VSCode-Insiders, no intellisense available, maybe Omnisharp editor never loads?

I suspect @byroniac really just opened a C# without any .csproj file

Thanks for the update @egamma. Glad you got it working.
@byroniac: Yes, if you just open a C# file without a C# project of some sort, you won't get meaningful IntelliSense from OmniSharp, unfortunately. This is a long-standing issue on our backlog here: https://github.com/OmniSharp/omnisharp-vscode/issues/47. If you're interested in .NET Core, it's pretty easy to create a C# project and get started. You can check out the video tutorial at https://channel9.msdn.com/Blogs/dotnet/Get-started-VSCode-Csharp-NET-Core-Windows to get going.

Well, this is very strange. It is working now, and the only thing I've changed that I know of, is that I installed another update from VSCode-Insiders. I can't give out my actual project source without an NDA, but it's not very complex and it started from a "dotnet new razor" command. It had a .csproj file, but according to what you said, maybe it never saw it, or just never loaded it. How do you see the list of running extensions?

I take that back. It was working a few minutes ago, and now it is not. If I hover over a symbol, I get a "Loading..." which flashes and disappears, and then nothing. However, if I start Debugging on it, and then Stop Debugging, it works. Very strange.

And now it's working again, if I get out and back in, no problem now, though a few minutes ago that wasn't working. I think I should mention that I'm trying to edit these files on a corporate file server and every once in awhile network performance is an issue. When it doesn't work, I don't get any kind of Intellisense support or reference counts or anything, and it didn't seem to matter how long I waited with the file loaded in the editor. The only other consideration is that I'm running VIPRE antivirus at work, and Defender at home, both Windows 10 Pro. This may not be a real issue, but it really does not work sometimes.

Oh! I didn't know I could press F1 and type "Developer: " and choose the "Developer: Show Running Extensions" that way.


Running clone behind reverse proxy error 400 using google sign in

Hello,
I started a clone on an https://codecombat.companyxyz.com behind a reverse proxy for ssl offload.
When I try to login by google I get this error in popup:
Fehler 400: redirect_uri_mismatch
The JavaScript origin in the request, https://codecombat.companyxyz.com, does not match the ones authorized for the OAuth client. Visit https://console.developers.google.com/apis/credentials/oauthclient/800329290710-j9sivplv2gpcdgkrsis9rff3o417mlfa.apps.googleusercontent.com?project=800329290710 to update the authorized JavaScript origins.
Do I need to change some value for running behind a reverse proxy?

I am guessing that Google OAuth won't work behind the reverse proxy. What is your use case for this SSL offloading approach–something we can help with?


[WIP] err in pages

in package.json was added modul "hubot-routines". after assembly bot does not start. "Cannot find module 'hubot-happy-birthder'".

Closing in favour of #102.


don't block services init on storage key presence

servicesCtx and fvkCtx beocme promises, so services init no longer blocks on actual storage key presence
this improves reliability of the page connection to the extension - it's entirely local, and there's no reason it should ever fail.
this is part of improving handler context. relying on remote queries for init contributed to the v6.3.0 connection bug.
with these changes, it becomes possible to use minifront if your rpc is down, or even entirely offline - actual implementation of that is in another pr.
in general, this capability makes the app more resilient against network failure.

Could you please add some context about this change? Why it's needed, what it fixes, etc.

this kind of happened accidentally as i was setting up spendkey HandlerContext, so i made it into its own PR

related to #998

add changeset


Running Issue

How can i run this code kindly help me out i am very new to this platfrom but my final year project is totally based on it

Go through the basics first, look at these articles:
https://github.com/davidsandberg/facenet/wiki/Validate-on-lfw
https://github.com/davidsandberg/facenet/wiki/Train-a-classifier-on-own-images


APP-1206: Conflicts fixes.

Codecov Report

Merging #109 into dev will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff          @@
##             dev    #109   +/-   ##
=====================================
  Coverage   87.9%   87.9%
=====================================
  Files        129     129
  Lines       2332    2332
  Branches     274     274
=====================================
  Hits        2050    2050
  Misses       168     168
  Partials     114     114

Continue to review full report at Codecov.

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


[i18n - v4] TypeError: HttpContext.onReady is not a function

Brief Description
I'm trying to use the i18n package in order to translate the site in multiple languages. When I run npm run dev, the script throws an error.
Sample Code

Follow the instructions here
Create the path resources/locales/en/homepage.json
Put this content in homepage:

{
  "subtitle": "Hello world!"
}

In welcome.edge, write {{ antl.formatMessage('homepage.subtitle') }}

Error Stack (if any)
TypeError: HttpContext.onReady is not a function
    at module.exports (/var/www/project/node_modules/@adonisjs/antl/src/ContextBindings/index.js:45:15)
    at AntlProvider.boot (/var/www/project/node_modules/@adonisjs/antl/providers/AntlProvider.js:86:38)
    at process._tickCallback (internal/process/next_tick.js:109:7)
    at Module.runMain (module.js:607:11)
    at run (bootstrap_node.js:427:7)
    at startup (bootstrap_node.js:151:9)
    at bootstrap_node.js:542:3

Make sure you are on the latest version of all packages.
rm -rf node_modules
rm package-lock.json
npm i

Thank you, since I'm using yarn, I just ran yarn upgrade --latest and now it works.


feat: Predicates may return multiple matches

So turns out test 4 was wrong, but it was commented out by mistake and didnt notice...


MakeCert is deprecated

Module: 01
Lab/Demo: 04
Task: 01
Step: 09
Description of issue
MakeCert is deprecated. https://learn.microsoft.com/en-us/windows/win32/seccrypto/makecert
The lab should make reference to New-SelfSignedCertificate and point out which versions of PowerShell and Windows support each.
Current text:
"Learn about code signing. You should learn that MakeCert.exe is used to create a self-signed digital certificate."
Repro steps:

Good point, we updated and issue now resolved. Thanks.


Time series based workload desc order optimization through reverse segment read

Description
As described in issue OpenSearch-6814, desc order sort queries are taking more time (3x or more) compare to asc order queries on same data set (time series based).
That is because all latest documents in time series workload are in latest segments when our IndexSearcher search documents in order of oldest segments to newest segments.
In this PR, we changed the leafReaderContext (segments) order in ContextIndexSearcher in reverse if query type is descending order sort. This will by default behaviour for all type of workloads and not just for time series based workloads. However it will only benefit to workload which has ever increasing data values. And for other type of workload, it wont regress or impact since data is randomly distributed across all segments.
But as a precaution, in case any user/workload gets search latency hit, I have added cluster setting to disable this optimization.
Optimization gains
We are seeing 3x to 5x gains on below configuration.

On http_logs workload with disabled force merge, so each shard has around 100-150  segments.
instance type, r6g.2xlarge.
units are in ms.

Sort Type
hits = 5
hits = 100
hits = 1000

Desc
150
462
621

Desc (with this change)
49
112
125

Issues Resolved
OpenSearch-6814
Next action item
On same segment of time series based workload, ASC queiry is faster compare to descending order. We need to look further to that.
Check List

[x] New functionality includes testing.

[x] All tests pass

[x] New functionality has been documented.

[x] New functionality has javadoc added

[x] Commits are signed per the DCO using --signoff
[x] Commit changes are listed out in CHANGELOG.md file (See: Changelog)

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

@nknize @reta , check once you get time, if this appraoch looks good. The optimization gain is pretty good.

Codecov Report

Merging #7244 (3c367f4) into main (9f6c067) will decrease coverage by 0.53%.
The diff coverage is 38.09%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@             Coverage Diff              @@
##               main    #7244      +/-   ##
============================================
- Coverage     71.18%   70.65%   -0.53%
+ Complexity    59887    59483     -404
============================================
  Files          4859     4859
  Lines        285505   285525      +20
  Branches      41143    41149       +6
============================================
- Hits         203223   201748    -1475
- Misses        65924    67199    +1275
- Partials      16358    16578     +220

Impacted Files
Coverage Δ

...rg/opensearch/common/settings/ClusterSettings.java
92.85% <ø> (ø)

...va/org/opensearch/search/DefaultSearchContext.java
78.92% <ø> (ø)

...search/search/aggregations/AggregatorTestCase.java
89.14% <ø> (ø)

...main/java/org/opensearch/search/SearchService.java
71.31% <37.50%> (-1.50%)
:arrow_down:

...ensearch/search/internal/ContextIndexSearcher.java
75.88% <40.00%> (-1.49%)
:arrow_down:

... and 474 files with indirect coverage changes
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

Is it possible to add a test to SimpleSortIT for the setting the optimization as true for the node/index and verifying that the results are same irrespective of the leafReaderContext iteration order?

Thanks @mgodwan for the review. Yes I added random flag for integ test, which will randomly enable/disble this optimization flag while creating index, so few tests will run with/without this optimiztion.

@nknize @reta , check once you get time, if this appraoch looks good. The optimization gain is pretty good.

I like it @gashutos , a few minor comments but LGTM otherwise, just for the record, it should also work for concurrent search, the segments will be traversed in reverse order concurrently

Awesome, thanks @reta !

it should also work for concurrent search, the segments will be traversed in reverse order concurrently

I think concurrent search will always land on search() methods of IndexSearcher/ContextIndexSearcher with CollectorManager as an argument. This change is in search() method only with Collector as an argument. So yes, concurrent search will not be benefitted with this order. We will have to override slice() method of IndexSearcher in ContextIndexSearcher to modify sequence of leaves search while preparing slices. I am thinking more how can we enforce the ordering there, doing little more research on that, but concurrent search is not productized yet due to its agressive trade offs so dropped plan to have leaf ordering there.
But for sure, I am thinking to optimize there in next iteration.

And for other type of workload, it wont regress or impact since data is randomly distributed across all segments.

This will regress any workload that loads data in reverse order and then does descending searches. That does seem like an edge case, whereas time series workloads are extremely common, so I'm sold that this is a good idea to enable by default. However, is the risk of a regression enough of a concern to not change the default behavior in a minor version and only change the default in the next major version?

And for other type of workload, it wont regress or impact since data is randomly distributed across all segments.

This will regress any workload that loads data in reverse order and then does descending searches. That does seem like an edge case, whereas time series workloads are extremely common, so I'm sold that this is a good idea to enable by default. However, is the risk of a regression enough of a concern to not change the default behavior in a minor version and only change the default in the next major version?

Agree. I was thinking in that direction, but later thought would any production customer do that ? Like ingesting ever decreasing workload ? In general, workload can be ever increasing index field or randomly distributed across segments. Even if we use index sort, the sorted order of documents are only within segments, and not really on individual segment order. This will benefit ever increasing index sorted (desc) workload too !.
If there is any workload which is decreasing by index field, that got accidental advatnage and those are rare case, that's why once I thogutht of hardcoding sort field to @timestamp for this optimization and remove this index level enabling/disabling setting. But later realized, workload like nyc_taxy (which is not time series), but if we sort by dropoff_time or pickup_time, that sort is too benefiting 3x (I tested). So thoguht if any such edge case get regressed and CX is really worrying about that, they can disable the flag.
Let me know your thought on it though :) thanks for discussing this....
Another approach I was thinking, if we can sort this leves by its pointValues (maxPointValues) in desc order, that will give us surity that reverse ingested workload wont regress since it will end up resutling in same leaves order. But that will require us to know exact type of sort field so that we can have comparator for that type, (or we can do more generic code to handle that). That is definitly doable but I wasnt simply seeing any worth on that.
@andrross @nknize @reta your input on this would be helpful. That's the crux of this entire approach

@andrross @nknize @reta your input on this would be helpful. That's the crux of this entire approach

AFAIR we concluded that this is not a win/win solution for all possible workloads. I think that the time-based workloads are more widely and speeding these ones for a cost of possibly regressing rare edge cases in beneficial. I've just realized that we don't consult the type of sort field but only sort order:
request.source().sorts().get(0).order() == SortOrder.DESC

May be we should take one more precaution and ensure this is actually DATE/timestamp field?

Thanks @nknize This was my original implementation too, but the caveat here is, it will regress ASC order query performance (because now we have only one directional traverse of segments since we dont initialize IndexReader again on each query). Like below were my numbers with these implementation on http_logs,

Sort Type
hits = 100

ASC
10

ASC (with optimization)
61

Desc
462

Desc (with optimization)
112

Although I agree ASC order on timeseries might not be not that common. (?)
I agree with above approach as it as safe and clean.  But how about below approach.
Add @timestamp field check here in this snippet on query time so it doesn't alter segment reading order for ASC query.
//Check if sortField is @timestamp in below logic and remove index setting (since we are sure this will work only on //@timestamp field where we will see optimizations)

  if (this.indexShard.isTimeSeriesIndex()) {
            // Only reverse order for desc order sort queries
            if (request != null
                && request.source() != null
                && request.source().sorts() != null
                && request.source().sorts().size() > 0
                && request.source().sorts().get(0).order() == SortOrder.DESC) {
                return true;
            }
        }
        return false;
    }

Thanks @nknize This was my original implementation too, but the caveat here is, it will regress ASC order query performance (because now we have only one directional traverse of segments since we dont initialize IndexReader again on each query).

I really like the direction @nknize drives this change, @gashutos do you think it is possible to expand on that and use LeafSorterFactory instead of just predefined single LeafSorter. The factory could construct the  LeafSorter based on sort fields and index type (datastream). I am not sure how hard it is to pass all the context through, the latest improvements certainly looks good, thank you.

Let's implement both? Default on timeseries indexes should be descending so lets use the IndexWriterConfig.setLeafSorter as the default and only reverse on the infrequent ASC query.

Let me know @nknize if this looks good, once you approve, I will change () CR description with EDIT tag that what finally we have merged for the context for others.

do you think it is possible to expand on that and use LeafSorterFactory instead of just predefined single LeafSorter. The factory could construct the LeafSorter based on sort fields and index type (datastream). I am not sure how hard it is to pass all the context through, the latest improvements certainly looks good, thank you.

@reta I was really inclined towards idea of implementing leafSorterFactory so that we can provide leafSorter at both places through that (InternalEngine & ContextIndexSearcher). but thought boolean is doing simple job there an we really dont need to sort segments again there, just traverse in reverse.
Definitly if we find more use-case in future about sorting/sequencing of segments, we will have an interface for ContextIndexSearcher to accept leafSorter at search query level. In face we can have something similar to slice() implementation of concurrent search where each use case can provide their own implementation.
But as of now lets go with this boolean. Let me know if you think otherwise.

...we will have an interface for ContextIndexSearcher to accept leafSorter at search query level. In fact we can have something similar to slice() implementation of concurrent search where each use case can provide their own implementation.

I think this is the best way to go for sure. I don't think we have to wait for more use cases as I think there's already enough but I'm happy to see it in a follow up PR and not hold up the simple boolean approach.

@nknize are you good now ?

@nknize can we add this change to backport 2.x ?


fix(costmodels): remove name from title in the cost model edit dialog

Codecov Report

Merging #1602 into master will increase coverage by 0.00%.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #1602   +/-   ##
=======================================
  Coverage   78.71%   78.72%
=======================================
  Files         237      238    +1
  Lines        3881     3891   +10
  Branches      712      714    +2
=======================================
+ Hits         3055     3063    +8
- Misses        727      729    +2
  Partials       99       99

Impacted Files
Coverage Δ

...onents/state/maintenanceState/maintenanceState.tsx
77.77% <0.00%> (-2.23%)
:arrow_down:

src/api/reports/report.ts
100.00% <0.00%> (ø)

src/api/reports/awsReports.ts
100.00% <0.00%> (ø)

...c/pages/costModels/components/priceListToolbar.tsx
100.00% <0.00%> (ø)

...costModels/costModelsDetails/components/dialog.tsx
100.00% <0.00%> (ø)

...s/costModels/components/priceListToolbar.styles.ts
100.00% <0.00%> (ø)

src/api/queries/query.ts
42.37% <0.00%> (+2.75%)
:arrow_up:

Continue to review full report at Codecov.

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

Thanks everybody! @dlabrecq @ddonahue007 :bow:


Update build deps installation script for Ubuntu 20.04

The current install_builddeps.sh script doesn't work on Ubuntu 20.04 due to some changes in package names on Ubuntu 20.04 and other differences.
These changes modify the install_builddeps.sh script to load the build dependencies for Nucleus on Ubuntu 20.04 as a prelude to being able to build Nucleus on that platform.

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Hi, my employer is currently in the process of signing and submitting an institutional CLA as work was done under employment with them. In the meantime, I have added two additional commits to this PR which resolve issues preventing compilation of nucleus on Ubuntu 18.04 and 20.04.


How to Add Custom Log

for the custom log we are using below code, but how to Add custom Query Log or some more custom logs.
Tracker::trackEvent(['event' => 'cart.add']);
Tracker::trackEvent(['event' => 'cart.add', 'object' => 'App\Cart\Events\Add']);

What about this one?
Tracker::trackVisit()