Add "random" content for registered parameters

We want to have the possibility to systematically generate some random content for shogun object parameters (see SGObject::parameter_names and SGObject::put, SGObject::get so that we can systematically test clone and equals for non-empty instances that have been created with the default ctor.
@lisitsyn will have some thoughts on API and where to start doing this, or whether we have some kind of range restriction, which also will relate to model selection updates to come in the near future

I'd like to help with this issue. May I get more information ?

We want something like this to work.
k = kernel("GaussianKernel", low_width=2)
k.get("log_width") # returns 2
k.random_content() # for all params
k.get("log_width") # returns a random number
k.random_content("log_width") # just randomizes log_width

It requires some diving deep into the parameter framework, so maybe not the best first issue if you are not familiar with C++

I am interested in working on this issue where do you suggest I would start? :) @karlnapf @lisitsyn

@karlnapf @lisitsyn
After going through the codebase I have realized that we have two types of parameters (correct me if I am wrong): Option-based (added using SG_ADD_OPTIONS) and Non-option based (added using SG_ADD). So, I am think of adding a function randomize_parameter() which roughly looks as follows - feed back is appreciated:
	/** Randomize the parameter identified by the given tag.
	 *
	 * @param _tag name and type information of a parameter
	 * @param seed the seed for the pseudo-rng
	 */
	template<typename T>
	void randomize_parameter(const Tag<T>& _tag, unsigned seed)
	{
		if (m_string_to_enum_map.find(_tag.name()) ==
				m_string_to_enum_map.end())
		{
			// non option based parameter
			//
			// have some questions with respect to these
		}
		else
		{
			// option based parameter
			std::srand(seed);
			auto string_to_enum = m_string_to_enum_map.at(_tag.name());
			ASSERT(!string_to_enum.empty());  // non-zero number of options
			int random_idx = std::rand() % string_to_enum.size();
			auto random_it = std::next(std::begin(string_to_enum), random_idx);
			machine_int_t enum_value = random_it->second;
			update_parameter(_tag, enum_value)
		}
	}

But, as you can see I was a bit stuck with the non-option based parameters. I understand that I need to generate random values using the classes implemented in the shogun::random Namespace (correct me if I am wrong).

How should I go about fixing the range/set of values taken by a parameter?
We have HYPER, GRADIENT, MODEL, SETTING, AUTO, READONLY, FUNCTION, CONSTFUNCTION, CONSTRAIN ParameterProperties. Should the randomize_parameter() function cover parameters that have any of subset of these properties? Or should it just cover the parameters having ParameterProperties::HYPER?
What do ParameterProperties::FUNCTION, ParameterProperties::CONSTFUNCTION mean? Should these parameters also support randomization?

@karlnapf @lisitsyn
After going through the codebase I have realized that we have two types of parameters (correct me if I am wrong): Option-based (added using SG_ADD_OPTIONS) and Non-option based (added using SG_ADD). So, I am think of adding a function randomize_parameter() which roughly looks as follows - feed back is appreciated:
	/** Randomize the parameter identified by the given tag.
	 *
	 * @param _tag name and type information of a parameter
	 * @param seed the seed for the pseudo-rng
	 */
	template<typename T>
	void randomize_parameter(const Tag<T>& _tag, unsigned seed)
	{
		if (m_string_to_enum_map.find(_tag.name()) ==
				m_string_to_enum_map.end())
		{
			// non option based parameter
			//
			// have some questions with respect to these
		}
		else
		{
			// option based parameter
			std::srand(seed);
			auto string_to_enum = m_string_to_enum_map.at(_tag.name());
			ASSERT(!string_to_enum.empty());  // non-zero number of options
			int random_idx = std::rand() % string_to_enum.size();
			auto random_it = std::next(std::begin(string_to_enum), random_idx);
			machine_int_t enum_value = random_it->second;
			update_parameter(_tag, enum_value)
		}
	}

But, as you can see I was a bit stuck with the non-option based parameters. I understand that I need to generate random values using the classes implemented in the shogun::random Namespace (correct me if I am wrong).

How should I go about fixing the range/set of values taken by a parameter?
We have HYPER, GRADIENT, MODEL, SETTING, AUTO, READONLY, FUNCTION, CONSTFUNCTION, CONSTRAIN ParameterProperties. Should the randomize_parameter() function cover parameters that have any of subset of these properties? Or should it just cover the parameters having ParameterProperties::HYPER?
What do ParameterProperties::FUNCTION, ParameterProperties::CONSTFUNCTION mean? Should these parameters also support randomization?


Add documentation for empty window frames

Adding a section on empty window frames in the window function developer guide.

@aditi-pandit Aditi, thank you for working on improving documentation for window functions. It feels like this new doc contains a mix of user-facing documentation that clarifies the semantics of empty and partial frames and some implementation specific details of the Window operator. I wonder if it makes sense to move user-facing details to https://facebookincubator.github.io/velox/functions/presto/window.html and implementation details to the comments in the code.

@mbasmanova :
https://facebookincubator.github.io/velox/functions/presto/window.html and also https://facebookincubator.github.io/velox/functions/spark/window.html in turn are mainly for the functions. I feel adding a link from the functions doc to the window frames doc is better. wdyt ?
I wrote this doc somewhat in line with join and anti-join docs since they too provide many examples with some sense of the code. Since empty frames influence the WindowFunction API, I felt it should be mentioned. That part is more developer facing than user-facing. But since Velox users are mostly developers the boundaries are vague.

@mbasmanova : Thanks for the review. Have addressed your comments.

@mbasmanova : We now have a window function developer guide at https://facebookincubator.github.io/velox/develop/window.html.
This PR enhances the docs for the usage of valid_frames argument in it.
Please can you review.

Hi @aditi-pandit, thank you for adding the documentation! I left a few comments.
For the figure, could you add the index of the current row for each of the example frame so make it more clear that they're concrete frames during window sliding?

Thanks @kagamiori for your review.
Have addressed your review comments. PTAL.

Hi @aditi-pandit, thank you for iterating on this PR. It looks good to me except a few nits.

Thanks @kagamiori. Have addressed the review comments.


Better handle apps deployed from the wrong directory

If a customer deploys an app that's nested in a subdirectory, warn them.
There are a couple of ways to check this:

If deploying to node, prompt if package.json isn't found in the root
If deploying to python, prompt if requirements.txt isn't found in the root
Check a couple levels deeper for the app and provide a suggestion of which directory to deploy

Not sure I'll be able to actually fix the issue in the current milestone, but I wanna try to add some telemetry around this scenario


runelite won't load /start

i downloaded runelite but after the installation it opens for 1 sec and than automaticaly closes again

same

https://github.com/runelite/runelite/wiki/Troubleshooting-problems-with-the-client


placeholder translate doesn't work

I use this in my angular app, but i need to internationalization my app, so i give the attribute "placeholder" a  value like "{'haha_haha' | translate }", but the ngtagsinput get the haha_haha, and not the 'haha_haha''s value, also when i change the language, the placeholder not change.

This issue was selected to be spring-cleaned by a script. More information can be found here.
If anyone thinks this was a mistake and this issue should be reopened, please leave a message below explaining why. Before doing so, please consider reading the CONTRIBUTING file.

I have same problem. Unfortunately  I can't find any workaround. What I found out:
When I open page for first time - placeholder doesn't render from translate filter. Surfing different pages (making work other controllers) and going back to page with ng-tags-input translation renders well. But if I make hard reload (Ctrl + F5) it does'n render again. Some kind of cache? Need extra $apply?
I would appreciate if you take a look at this issue.


How to apply quill-mention styling for pre-existing elements in text

Hello, I have a question which is not a bug/problem but I hope I you can give me some guidance.
I would like the editor to transform some non-quill-mention text to quill-mention styling.
My application is collecting data from database and there's this message property (which right now is managed with quill and quill-mention) showing the html message like so:
Hi ##USER_NAME##, welcome.
As you can imagine, this message property was registered before I had know quill-mention and now I would like to transform these old placeholders into a quill-mention param, applying the proper style.
The params within text are pre-defined in a array like this.
let currentValues = ["#AUTHOR_EMAIL#", "#USER_NAME#", "##DATE##"];
How can I make the editor identify this array's elements and render it with the proper quill-mention styling?

Not possible to do.


h5py pip installation issue

Hi @israelmcmc. Following your advice I tried unsetting HEADAS and I believe that worked.
However, I then had another installation issue since I was missing hdf5 library.
Specifically, I had to install the library via conda (i.e., conda install h5py) and the installation looks to have completed fine.
Installing via pip (i.e., pip install h5py) didn't  work, but I think it would have worked if I also properly set HDF5_DIR environment variable to point to where the hdf5 header file would be. I'm not sure if it is mentioned anywhere that hdf5 is required for cosipy (or maybe everyone has it and I just didn't for some reason).
(Also, sorry if this is the wrong thread to attach this to!)
Originally posted by @mikemoss3 in https://github.com/cositools/cosipy/issues/173#issuecomment-2045399011

@mikemoss3 Can you share the error message that you are seeing, please? h5py is automatically installed with cosipy (as a derived requirement of histpy). However, that's all through pip, which you mentioned didn't work for you.

@israelmcmc luckily, I saved this error message as well! (see attached file)
install-error-hdf5.txt
Let me know if I can provide any further information.

Thanks @mikemoss3! One last thing, please. Which system are you using? And if macos, do you have an M1 chip?

Yes, I am on MacOS and it's the Apple M1 Pro chip.

I have the same issue with the M1 Mac.

I think this is related to these issue(s) in h5py:
https://github.com/h5py/h5py/issues/1810
https://github.com/h5py/h5py/issues/1800
It seems that at the moment there's no good solution other than asking the M1 users to install HDF5 either through homebrew or conda.
I added this info to the installation instructions. I'm closing this issue since once the h5py developer fix this, it will automatically propagate to the cosipy installation.


Can't use Ellie - Uncaught TypeError: Cannot read property 'replaceData' of undefined

Whenever I attempt to use Ellie by visiting https://ellie-app.com I am stuck on the loading screen and get a continuously logging error:
2189editor-301d310bee2d62b52911.js?vsn=d:1 Uncaught TypeError: Cannot read property 'replaceData' of undefined
at te (editor-301d310bee2d62b52911.js?vsn=d:1)
at ee (editor-301d310bee2d62b52911.js?vsn=d:1)
at re (editor-301d310bee2d62b52911.js?vsn=d:1)
at editor-301d310bee2d62b52911.js?vsn=d:1
at t (editor-301d310bee2d62b52911.js?vsn=d:1)
I've tried to clear local storage / cookies etc.
Running Chrome Version 73.0.3683.103 (Official Build) (64-bit)

This is known issue with some Chrome extensions and Elm apps in general, are you using any? If so, which one(s)?

Ah thanks for the quick response, I found the culprit (a website blocker)


ENH Add docblocks, method types, tidy up unit tests

Added php7 style param types and return types to methods that weren't implementing and old php5 interface
Added docblocks to properties and methods, including matches php5 docblocks on interfaces
Tidy up unit tests and fixtures a little
Add Injectable and Configurable traits where applicable
Change protected methods to private methods to reduce API footprint

@bergice rebase and green, ready for merge


Feature 728 sla graph over time

PR related: #728
Added support to show IT Services graph over time and to apply "Functions" on it.

Interval between each SLA range: 86400s (1d);
When the time range is less than 1d it will return the exactly range specified;

@JeferCatarina Thanks for the contribution! I think the same intervals as Zabbix provides makes sense. PR looks good overall, I need to do a more detailed review when I have time.


Mask doesn't update if value is changed.

I have a simple case:
At first, the {value} of my masked input is undefined.
Component then assumes this is starting value and sets it up as such.
However, from this moment onward, masked input will only react to user input, and will ignore any subsequent changes made via altering the value prop.
Is there any way to avoid this behavior, other than hiding the input until value is actually defined (which I can't do for reasons outside this discussion)?

can you default the value to be '' rather than undefined at your call site? Something like:
<MaskedInput value={this.state.value || ''} />

Are you using the latest code?  I had the same issue, but @iamdustan fixed it in #30 (specifically this change)


publish<EMAIL_ADDRESS>

Requested by: @AbhiPrasad
Merge target: (default)
Quick links:

View changes
View check runs

Assign the accepted label to this issue to approve the release.
Leave the #retract comment under this issue to retract the release (original issuer only).
Targets

[ ] npm
[ ] registry
[ ] github

Targets marked with a checkbox have already been executed.  Administrators can manually tick a checkbox to force craft to skip it.

#retract

Don't approve this release - it has the wrong merge target

#retract

#retract

bleh, still broken -- #1360 should fix retracting

#retract


【Class Bug】动态绑定时针对特定元素无法重置元素属性

特定元素下无法初始还原，详情参考DEMO效果。
slider 切换时根据下标动态标识其他元素的颜色。
demo : http://dotwe.org/weex/2d986766e2d48f88a8de7c7789759886
注意使用：h5 和Weex Playgroound预览效果。

This PR/issue doesn't received response since Weex migrated to Apache two years ago and this repository is no longer active yet.
Feel free to ask question in new repository and thanks for your contribution.

This issue is outdated for a long time and will be closed now. You can create a new one if you still have questions.


programs/x509/cert_write not built

When following the steps to generate a self-signed certificate (https://tls.mbed.org/kb/how-to/generate-a-self-signed-certificate) I discovered that the /programs/x509/cert_write executable is not built when using make.
Version: 1.3.11
OS: Debian 7u1 64-bit

Thanks for your report! I did an full check and there were a few other programs that were not built, so I added them all.


Opening our project locally creates VCS changes

for example, just opening the project and doing nothing causes a local change in compiler.xml
We should figure out why and fix it (either commit the change or change the project somehow).

I think this is related to the addition of error prone:

Yeah I've had this flip on me a couple of times.  i.e. I committed the
compiler.xml change, and then reopened the project and it went back to the
way it was before.
On Fri, Feb 10, 2017 at 11:30 AM, Etan Shaul<EMAIL_ADDRESS>wrote:

I think this is related to the addition of error prone:
[image: image]
https://cloud.githubusercontent.com/assets/1735744/22834771/48b3ab7e-ef84-11e6-97e7-d3adc9b08f10.png
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/GoogleCloudPlatform/google-cloud-intellij/issues/1239#issuecomment-278991464,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AHf5Ha0srPZDWDjHMgIZS7nCtK6TidWMks5rbJCVgaJpZM4L9ksp
.

also, the .idea/.name file gets deleted


[MINOR] attempt to fix ReplicatorTest.testResetCursorNotFail timeout in github CI

fix ReplicatorTest.testResetCursorNotFail timeout in github CI.
replace resetCursor by timestamp to latest position
to avoid search message by timestamp.

this is not fix correctly. will submit another pr if find solution.


ModuleNotFoundError: No module named 'bilix'

 python3 download.py -u https://www.ixigua.com/7168489715828851215\?id\=7111665255088685605\&logTag\=5612bf2fc2b05e20c181
Traceback (most recent call last):
  File "/Users/andy/Downloads/VideoDownload/download.py", line 4, in <module>
    from download_bilibili import download_bilibili_video, is_bilibili_video
  File "/Users/andy/Downloads/VideoDownload/download_bilibili.py", line 6, in <module>
    import bilix.api.bilibili as api
ModuleNotFoundError: No module named 'bilix'

Hi, it seems that you miss the lines:
poetry export -f requirements.txt | pip install -r /dev/stdin

This cmd would help install all the dep python pkgs.
Also, you can install pkgs by pip directly if you don't have poetry:
pip install you-get yt-dlp bilix

and call with: (notice that the url should not include any parameter)
python3 download.py -u https://www.ixigua.com/7168489715828851215

however
As mentioned, downloading ixigua depends on you-get, but the current version(0.4.1650) not worked. I just create a PR(https://github.com/soimort/you-get/pull/3001) to fix it. I would update my project once the newest you-get released.

poetry export -f requirements.txt | pip install -r /dev/stdin
This code is only for unix not for cmd or power shell on windows.
I ran  poetry export -f requirements.txt --output requirements.txt & pip install -r requirements.txt
but got Ignoring brotlicffi: markers 'python_version >= "3.8" and python_version < "4.0" and platform_python_implementation != "CPython"' don't match your environment Ignoring cffi: markers 'python_version >= "3.8" and python_version < "4.0" and platform_python_implementation != "CPython"' don't match your environment Ignoring pycparser: markers 'python_version >= "3.8" and python_version < "4.0" and platform_python_implementation != "CPython"' don't match your environment Collecting you-get@ git+https://github.com/soimort/you-get@HEAD ERROR: Can't verify hashes for these requirements because we don't have a way to hash version control repositories:     you-get@ git+https://github.com/soimort/you-get@HEAD from git+https://github.com/soimort/you-get@HEAD (from -r requirements.txt (line 460))

poetry export -f requirements.txt | pip install -r /dev/stdin
This code is only for unix not for cmd or power shell on windows.
I ran poetry export -f requirements.txt --output requirements.txt & pip install -r requirements.txt
but got Ignoring brotlicffi: markers 'python_version >= "3.8" and python_version < "4.0" and platform_python_implementation != "CPython"' don't match your environment Ignoring cffi: markers 'python_version >= "3.8" and python_version < "4.0" and platform_python_implementation != "CPython"' don't match your environment Ignoring pycparser: markers 'python_version >= "3.8" and python_version < "4.0" and platform_python_implementation != "CPython"' don't match your environment Collecting you-get@ git+https://github.com/soimort/you-get@HEAD ERROR: Can't verify hashes for these requirements because we don't have a way to hash version control repositories: you-get@ git+https://github.com/soimort/you-get@HEAD from git+https://github.com/soimort/you-get@HEAD (from -r requirements.txt (line 460))
My py version is 3.9.4

Hi, thank you for point out the install problems for non-poetry envs
I have update my code and you can run:
poetry export -f requirements.txt --output requirements.txt --without-hashes
pip install -r requirements.txt

again to install all deps


[Question] Which function is triggered on an update of a plot?

Hi, I want to know which function is triggered on JS after an update to a plot. I searched the issues and code but couldn't find anything.

What I'm looking for is not the comparison of the environments but for WebGL. As I understand, py/visdom/static/j/main.js is generated by minifying files under js; how is this done?

Ah sorry working on too many threads right now. That's done using webpack, and the instructions for setting it up are in CONTRIBUTING.md


Correction for raw affiliation Department of Computer Science, Wellcome/EPSRC Centre for Interventional and Surgical Sciences (WEISS), University College London, London, United Kingdom; Department of Obstetrics and Gynecology, University Hospital of Rennes, France; LTSI – INSERM UMR 1099, University of Rennes 1, F35000, Rennes, France

Correction needed for raw affiliation Department of Computer Science, Wellcome/EPSRC Centre for Interventional and Surgical Sciences (WEISS), University College London, London, United Kingdom; Department of Obstetrics and Gynecology, University Hospital of Rennes, France; LTSI – INSERM UMR 1099, University of Rennes 1, F35000, Rennes, France
raw_affiliation_name: Department of Computer Science, Wellcome/EPSRC Centre for Interventional and Surgical Sciences (WEISS), University College London, London, United Kingdom; Department of Obstetrics and Gynecology, University Hospital of Rennes, France; LTSI – INSERM UMR 1099, University of Rennes 1, F35000, Rennes, France
new_rors: 03r42r570;02jx3x895;015m7wh34;02vjkv261;05qec5a53;01f1amm71
previous_rors: 03r42r570;02jx3x895;015m7wh34;02vjkv261;05qec5a53
works_examples: W4382701231
contact: 46dda69378eb1c611bb196c311da5f5a:1ad843ecc5652b96e8257de5f65af8cc @ univ-rennes.fr

This issue was accepted and ingested by the OpenAlex team on 2024-10-10. The new affiliations should be visible within the next 7 days.


Random Battles: Pyroar & Lilligant set update

Nobody likes the current Pyroar set. :c

Yeah, no. It's much better than your set. Have you seen its Attack stat? Change it back.
The Lilligant is a good change! I don't think it's necessary to comment there tbh.

Bulldoze is for the speed drop on switches to pick a better follow-up move where the opponent would have otherwise outsped. I see it used occasionally on the NU ladder and it seems to be a decent set (as opposed to solarbeam which I have yet to see ever outside of a dedicated sun team). More importantly though, having Sunny Day forces it to get Heat Rock 100% of the time, which is pretty terrible for pyroar since it very infrequently gets a chance to set up Sunny Day anyways, and even if it does, it really only needs it the next turn assuming you're predicting the rock/water switch in, which you are just as well off hitting with 2 HP Grass hits or WoW anyways. I honestly don't think the moves are any better so much as taking Sunny Day off of Pyroar (or at least Heat Rock somehow) would improve the set. I think in all the randbats matches I've played I've seen Sunny Day used twice.

I didn't realize it gets it 100% of the time, seeing as how it has five moves. This is what you can do to give it a chance of getting Life Orb. Add Hidden Power Grass to its original moves and add this check (at line 1320):
case 'hiddenpower':
	if (this.getType(move.type) === 'Grass' && hasMove['solarbeam']) rejected = true;
	break;

Okay, sounds good. Updated.

For the record, in case it's useful:
15:20	Ascriptmaster	!usage pyroar moves
15:20	TIBot	Hyper Voice 95.306% | Dark Pulse 62.274% | Hidden Power Grass 56.992% | Fire Blast 53.223% | Flamethrower 50.621% | Overheat 23.170% | Will-O-Wisp 14.011% | Hidden Power Ice 6.516% | Taunt 6.286% | Hyper Beam 4.023% | Wild Charge 2.933% | Return 2.662% | Hidden Power Electric 2.351% | Other 19.634%

Sunny Day is basically seen nowhere on Pyroar (even Hyper Beam has higher usage, which probably says something)

As far as I'm concerned, the only moves that matter on Pyroar are [fire attack] / Hyper Voice / [WoW or HP grass]. Pyroars move pool is downright terrible so it wants to just spam Fire Blast and Hyper Voice as much as it can, seeing as those are it's only good two moves. Whatever else is put on Pyroar is only there to discourage things that resist those moves (mostly rock types) from switching in and reducing how often Pyroar is able to spam it's good stabs. For the most part, Rock Types don't want to switch in on WoW or HP Grass so either of those moves fill out it's move pool about the best it can hope for.
I understand the philosophy of wanting Randbat Pokes to be able to deal with as many threats on their own as possible because there is no way to assure team synergy, but I think in this case Pyroar is actually being hurt by trying to give it more coverage. All people want to do with it is spam Fire Blast to revenge kill or at least cause serious damage to whatever switches in, and as such I think insuring that Pyroar always gets Life Orb Fire Blast + Hyper Voice is most important, and everything else on it's set should be a secondary consideration.

There. You can remove the Pyroar changes and just keep this PR for Lilligant.
Now Pyroar gets Life Orb as much as it gets Heat Rock, and at the same time I improve Rapidash. Dark Pulse has a high usage in every tier for Pyroar so I chose that over Hidden Power Grass.

Done & changed pullreq title


Start the task after all the startup tasks are completed

Is is possible to do this?
I am accessing the Configuration in my DoWork.

Hi @vengi83644 ,
The HostedService jobs will start as the application starts. And, the Configuration is a singleton, which should be available if you inject it to your class.
What do you mean "after all the startup tasks" and ""accessing the Configuration"?
Could you elaborate your question a little bit more?

Never mind. Sorry. My bad.


Increase navigator stack

The stack size was generally ok but seemed to get exhausted in the case
of a waypoint which is too far away and therefore exercises some more
code in the mission feasability checker.
Generally, we should have more margin in the navigator stack size
because there are a bunch of different code paths that can happen.
The new stack situation for the case of a mission which is too far away is:
  74 navigator                     785  1.891  1276/ 1392 105 (105)  w:sem

This PR also fixes a printf in the mission feasablity checker.

Can you adjust so there is 300 bytes room to max known value? That's the general policy we're trying to stick to.

Rebased and applied.


Tests being skipped instead of giving an error

In the kindergarten-garden and matrix exercises, tests are being skipped (with t.Skip()) in situations where they should error, example:
func TestNamesNotModified(t *testing.T) {
	cp := append([]string{}, test6names...)
	_, err := NewGarden(test6.diagram, cp)
	if err != nil {
		t.Skip("TestNamesNotModified requires valid garden")
	}
	if !reflect.DeepEqual(cp, test6names) {
		t.Fatalf("NewGarden modified children argment.  " +
			"Arguments should not be modified.")
	}
	sort.Strings(cp)
	if reflect.DeepEqual(cp, test6names) {
		t.Skip("TestNamesNotModified requires names out of order")
	}
}

We should investigate if these tests should really be skipped and possibly convert the calls to Skip to calls to Fail.

Hey, I have checked the skipped parts and I think that both t.Skip() are only used to tell the developer of the tests if the used input (test6.diagram) would trigger the test-case to fail. The given test is only used to check, if func NewGarden() modifies the second parameter (children []string) in place. So here is what the if's with the t.Skip are for:
if err != nil {
		t.Skip("TestNamesNotModified requires valid garden")
	}

-->If the given input is not valid, you cannot know if the value of children is modified, as it could be modified after the check that returns the error
sort.Strings(cp)
	if reflect.DeepEqual(cp, test6names) {
		t.Skip("TestNamesNotModified requires names out of order")
	}

-->If the given input is already sorted, the test-case would not even fail, even if the implementation of func NewGarden would modify the value of children by sorting them, as this would result in the same output. Example:
var in = []string{Alice, Bob, Charlie, David}
NewGarden(..., in)

Even if func NewGarden sorts the students, the following check would not fail as the two slices are still the same.
if !reflect.DeepEqual(cp, test6names) {
		t.Fatalf("NewGarden modified children argment.  " +
			"Arguments should not be modified.")
	}

We could modify the test to be:
// The lazy way to meet the alphabetizing requirement is with sort.Strings
// on the argument slice.  That's an in-place sort though and it's bad practice
// to have a side effect.
func TestNamesNotModified(t *testing.T) {
	var diagram = `
			VCRRGVRG
			RVGCCGCV`

	//children must be unsorted to trigger test, if NewGarden uses sort.Strings
	var children = []string{"David", "Charlie", "Bob", "Alice"}
	var copyOfChildren = append([]string{}, children...)

	_, _ = NewGarden(diagram, children)

	if !reflect.DeepEqual(children, copyOfChildren) {
		t.Fatalf("NewGarden modified children argment.  " +
			"Arguments should not be modified.")
	}
}

We would still have the functionality of the test, but removed the confusing t.Skip. The test could also stay the same as it already is.
Reach out to me, if you want me to implement the suggested version

We could also change the t.Skip to t.Fatalf. If a developer changes the input used for the test, the CI-job will not pass, as the example solutions fail, but I do not know if test should fail, if the used input is not as expected. Here is, what it could look like:
func TestNamesNotModified(t *testing.T) {
	cp := append([]string{}, test6names...)
	_, err := NewGarden(test6.diagram, cp)
	if err != nil || sort.StringsAreSorted(cp) {
		t.Fatalf("TestNamesNotModified requires valid garden and unsorted children (check inputs of test-case)")
	}
	if !reflect.DeepEqual(cp, test6names) {
		t.Fatalf("NewGarden modified children argment.  " +
			"Arguments should not be modified.")
	}
}

I would recommend to use t.Fatalf instead of t.Skip as mentioned in the last comment above. But I would try to make it very clear in the failure message that this failure is not related to the student code, e.g. "error in test setup: ...". (This is also how we handle such situation at work.)
@eklatzer With that input, do you want to go ahead an make a PR?

Yes, I will do after my vacation.


Context lines aren't shown if there are blank lines

$ cargo run sample_files/load_before.js sample_files/load_after.js
sample_files/load_after.js -- JavaScript
 10 var db = require("./db.js");                                            12
 11 var models = require("./models.js");                                    ..
 12                                                                         ..
 13 var total = 0;                                                          13 var total = 0;

Both sides have var db and var models.

Fixed in 0.12 context display rewriting.


Github integration with Azure webApps in Old and New portal

This is a follow up on this twitter chat with @davidebbo :
https://mobile.twitter.com/davidebbo/status/782768419917602816
This issue is not Kudu related, but Old\New Azure portal. I tried to use forum as adviced but it asks me to somehow verify my account ( but doesn't offer any links or options to do that). So I gave up and decided to raise an issue on Kudu repo as discussed.
It's pretty long lasting (I think it's at least 3-4 months old) problem and I know the solution for it. Just want to bring it back to light and I hope it will be fixed soon.
The context to the problem:

We have a github organisation with private repos
We have a special Continuous integration account "drawboard-ci" that we are using for our devops needs. This account doesn't have any personal repositories, but has access to the GH repositories in our organisation.
We are setting up Azure Web Apps from time to time and want to deploy them from github repositories. This is a known deployment option in Old (manage.windowsazure.com) and New (portal.azure.com)  Azure management portals.

The problem is:
Currently it's impossible to set up Github integration from the New portal - for a linked github account there is no repositories visible in the blade :

Old portal shows correctly all repositories but create 2 entries per each repository available to the devops account:

Technically - to solve the issue we can continue using old portal but given that everything being pushed to a new portal - it would be nice if new portal can finally get this working properly.
I tried to sign-out and change account in the new portal - this doesn't solve the issue.
Google chrome in the network tab shows a call which is probably a cause  - GetScmInfo always returns 304 - Not modified :

Old portal uses different endpoints to retrieve the data so GetgithubProjects fetches the actual data (but duplicates it):

Regards,
Alexey

Let's ignore the old portal for now.
Questions:

Is 'drawboard-ci' a normal user account, or something special?
What permission does that account have in that org? Specifically, if you log in as that account, are you able to go to Settings / WebHooks under one of those private repos?

Ok, easy.

drawboard-ci is a usual account,
Member of the org, not an admin or anything.
Member of one team (which is not used for granting any access, more like a silo-group)
2FA is Off.
Has a special symbol in it's name - ":)"
Doesn't have any public or private repositories on it's own.
Collaborator on both projects it has access to.
Can access to Settings \ Webhooks. Can add \ remove \ edit webhooks there.
Has 3 authorized applications in the profile

Azure Management Portal - Primary Last used within the last day · Owned by Azure
Azure Management Portal - Secondary Last used within the last day · Owned by Azure
Windows Azure - Secondary Last used within the last day · Owned by WindowsAzure

Also just found an interesting fact about these 3 autorized applications :

Seems that the "Secondary" access request was a culpit - I re-requested it on behalf of drawboard-ci and granted it - and now everything is working in the new portal.
Why there is 3 different app access requested by 2 different portals. Also it'd be nice to make App names a bit more dev-friendly: Primary and Secondary are a bit confusing names and there is no correlation of what this app is going to do or from which part of Azure Portal this integration is coming from.
No surprise some other admin may accidentaly revoke or deny the initial request for "Azure Management Portal - Secondary".

@Tuesdaysgreen @suwatch do you recognize those 'Azure Management Portal - Primary' and 'Azure Management Portal - Secondary' applications?

Another interesting observation - new project doesn't appear in the list until I grant admin rights on the repository (which I don't like to do) to drawboard-ci account. I'm doing it as part of the 'devops' team but I wish it wouldn't requre an admin rights.

@centur continuous deployment cannot be set up unless the account has the ability to add a WebHook and a Deploy Key, and that requires admin. So that part is entirely by design.
The only quirk left here is I think the dual Primary/Secondary apps which I'm not familiar with myself but others could explain.

As a side note - would be nice to see some hints\links to FAQ on why projects may not appear in the list. Half of the questions above can be made into bullet points like :

I can't see any org projects in this list

Please check that Github Admin granted authorization for your app to access Org repository.

I added account as a collaborator but project doesn't appear in the list

We need rights "Deploy Key" and "Add a Webhook" in that account so Kudu can set up initial integration

Can I revoke permissions after integration is set up / Can I downgrade permissions to reader\collaborator

Yes, you can \No, this account still need access to A/B/C to work correctly.

Though not directly related, an issue I've run into that would be useful on a list like that is if you remove source control deployments to make a change (such as to switch the branch) you need to manually delete the webhhook in GitHub otherwise it'll continue to fail with a non-descript error. I've run into this a few times now.

We added the primary and secondary applications as a way to roll over the secrets without breaking everyone during the change process.  @suwatch can explain in better detail, but I think that even though we regenerated the secrets for both applications, we still need to keep both around because some customers's client secrets are tied to the old application id.

@suwatch can explain in better detail, but I think that even though we regenerated the secrets for both applications, we still need to keep both around because some customers's client secrets are tied to the old application id.

We do keep both applications around and never remove them.   This is part of Key Rollover process.

Another interesting observation - new project doesn't appear in the list until I grant admin rights on the repository (which I don't like to do) to drawboard-ci account or any team this account is in. I'm doing it as part of the 'devops' team but I wish it wouldn't requre an admin rights.

Many of your questions were answered here.   For instance, the above is required due to recent changes by GitHub.  We can definitely improve on UI to suggest what to do when the repository list is empty, @Tuesdaysgreen?  For instance, one has to be admin or has to one-time approve the oauth application.

@suwatch
Great wiki article, I wish I knew about it beforehand. I had the described issue for months ( not really configured GH deployments very often, but every time I did - it was a mini-battle and all of them ended up in the old portal). Even a link to it on the Website deployment page would help a lot.

Agreed, discoverability of this info is poor. @Tuesdaysgreen maybe we can have link from portal just like we already do in the VSTS case?

That's a good idea.  Let me log a bug on our side.

Hi
If the problem persists and is related to running it on Azure App Service, please open a support incident in Azure:
https://learn.microsoft.com/en-us/azure/azure-portal/supportability/how-to-create-azure-support-request
This way we can better track and assist you on this case
Thanks,
Joaquin Vano
Azure App Service


[3.0.0]

[3.0.0]

[ ] Upgrade to Nuxt 3
[ ] Switch out or upgrade @nuxtjs/svg to nuxt-svgo
[ ] Switch out nuxt-purgecss for? WindiCSS?
[x] Upgrade to Tailwind 3
[x] Migrate from webpack to nuxt/vite when it is ready
[ ] Add support for @nuxt/image when it is out of beta

Internal TODO

[ ] Make sure posts are ascending logically
[ ] Rewrite the readme (PWA gone, store?)

finally, the time has come for v3 🚀 🥳


⚠ Bofrost.at has degraded performance

In 040f6a3, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1962 ms

Resolved: Bofrost.at performance has improved in 2be4453.


databricks.koalas.info() doesn't show memory usage

The documentation states that databricks.koalas.info() shows memory usage too but it doesn't in practice.
It doesn't show memory usage in the examples given in the documentation either.

Thanks for the report, @AliWaheed :)
Koalas doesn't show the memory usage.
Seems like it was mistakenly added when copy the pandas' one.
I think we should fix the documents.

Got it, thanks for the reply


[BUG] tsduck hangs and uses 100% on broken TS packet

Bug description:
tsduck hangs and uses 100% CPU when trying to extract PID using "filter" plugin
How to reproduce:
Run tsp -I file 482.ts -P filter -p 0xb73 -O file 0xb73.ts
or tsp -I file 482.ts -P filter -p 0xb73 --valid -O file 0xb73.ts
TS sample:482.zip
Expected behavior:
tsduck extracts pid 0xb73, tsduck doesn't hang
Errors and logs:
* Error: file: synchronization lost after 185 packets, got 0xFF instead of 0x47

Environment:

OS: macOS
OS version: 14.1
TSDuck full version: 3.36-3528
Installation type: homebrew

Additional information:
TS packets 186-190 are broken (sync byte is not 0x47). you can use wireshak filter: mp2t.sync_byte != 0x47
Merry Christmas and Happy New Year!

Merry Christmas and Happy New Year!

A nice bug as Christmas present! Thank you @svlobanov 😄
OK, this is a bug. It can be seen without any filter (tsp -I file 482.ts -O drop). I just fixed it (a simple one-liner). You may pull the repo and rebuild.
This kind of corruption used to be properly handled. I don't know when that regression happened. I have added the first 300 TS packets of your file in the test suite as test-142 to detect any further regression.

Thanks @lelegard! Now it works as expected (with --valid option for 'filter' plugin)


Method storage_permission on upload field

Hi,
First of all, thanks for such a great admin! It's been a pleasure to develop with it.
I just added a simple method that I needed to use the upload form with Digital Ocean Spaces (S3-like object storage) that you can use just like this:
            $form->tab('Images', function($form) {
                $form->hasMany('metadata_images', function($form) {
                    $form->text('key', 'Field');
                    $form->image('value', 'Image')->storage_permission('public');
                });
            });

I think it may be useful for other people too.
Thanks

Thanks！


🐛 BUG:wrangler 3.15.0 still not work on Raspberry Pi OS bookworm

Which Cloudflare product(s) does this pertain to?
Pages
What version(s) of the tool(s) are you using?
3.15.0
What version of Node are you using?
20.9.0
What operating system are you using?
Linux(Raspberry Pi OS (Debian GNU/Linux 12 (bookworm)))
Describe the Bug
I installed Wrangler 3.15.0 on Raspberry Pi OS 12 (bookworm) and started a development server with npx wrangler pages dev to test the Cloudflare pages Function, but I get the following error Failure.
tadashi@raspberrypi:~/dev/astro_test/new_blog $ npx wrangler pages dev --proxy 3000 -- npm run dev -- --host --port 3000
Running npm run dev -- --host --port 3000...
▲ [WARNING] No compatibility_date was specified. Using today's date: 2023-10-31.
  Pass it in your terminal:
  /`/`/`
  --compatibility-date=2023-10-31
  /`/`/`
  See https://developers.cloudflare.com/workers/platform/compatibility-dates/
  for more information.
Compiling worker to "/home/tadashi/dev/astro_test/new_blog/.wrangler/tmp/pages-EyLfBA/functionsWorker-0.02272155090298167.mjs"...
✨⛅ Compiled Worker successfully
 ⛅- wrangler 3.15.0
-------------------
▲ [WARNING] --local is no longer required and will be removed in a future version.
  `wrangler dev` now uses the local Cloudflare Workers runtime by default. 🎉
Using vars defined in .dev.vars
Your worker has access to the following bindings:
- Vars:
  - MICROCMS_SERVICE_DOMAIN: "(hidden)"
  - MICROCMS_API_KEY: "(hidden)"
  - SITE_TITLE: "(hidden)"
  - SITE_DESCRIPTION: "(hidden)"
  - TWITTER: "(hidden)"
  - PIXIV: "(hidden)"
  - FANBOX: "(hidden)"
  - DEVIANTART: "(hidden)"
  - CARD_IMAGE: "(hidden)"
⎔ Starting local server...
[proxy]:
><EMAIL_ADDRESS>dev
> astro dev --host --port 3000
external/com_google_tcmalloc/tcmalloc/system-alloc.cc:661] MmapAligned() failed - unable to allocate with tag (hint, size, alignment) - is something limiting address placement? 0x177740000000<PHONE_NUMBER><PHONE_NUMBER> @ 0x558cd24114 0x558cd205b0 0x558cd1fcfc 0x558cd004dc 0x558cd1d2b8 0x558cd1d07c 0x558ccf56b4 0x558cc61444 0x558cc88568 0x558bae1400 0x558bae1168 0x558bae4b50 0x558ccec7e0 0x7fb126783c
external/com_google_tcmalloc/tcmalloc/arena.cc:58] FATAL ERROR: Out of memory trying to allocate internal tcmalloc data (bytes, object-size); is something preventing mmap from succeeding (sandbox, VSS limitations)? 131072 640 @ 0x558cd24478 0x558cd0056c 0x558cd1d2b8 0x558cd1d07c 0x558ccf56b4 0x558cc61444 0x558cc88568 0x558bae1400 0x558bae1168 0x558bae4b50 0x558ccec7e0 0x7fb126783c
✘ [ERROR] Error reloading local server: Error: write EPIPE
      at WriteWrap.onWriteComplete [as oncomplete]
  (node:internal/stream_base_commons:94:16) {
    errno: -32,
    code: 'EPIPE',
    syscall: 'write'
  }
[proxy]:   🚀  astro  v3.4.0 started in 1150ms
  ┃ Local    http://localhost:3000/
  ┃ Network  http://<IP_ADDRESS>:3000/
 @  12 0:-*                4h4m 0.46 4x0.9GHz 3.7G35% 470G3% 2023-10-31 15:21:00

https://github.com/cloudflare/workers-sdk/issues/3457 claims to have solved the problem, but it does not appear to be resolved.
I have also done sudo apt install libc++-dev  and sudo apt install libc++1, but they don't seem to be working at all.
Is there a solution? If there isn't, you should clearly say "Raspberry Pi OS is not supported".
Please provide a link to a minimal reproduction
No response
Please provide any relevant error logs
No response

Likely related to https://github.com/raspberrypi/linux/issues/4375

Rebuilt the kernel with CONFIG_ARM64_VA_BITS_48=y and wrangler works for me now.
mkdir -p ~/.local/src
git clone --depth=1 https://github.com/raspberrypi/linux
cd ~/.local/src/linux
sudo modprobe configs
zcat /proc/config.gz > .config
sed -i 's/CONFIG_ARM64_VA_BITS_39=y/CONFIG_ARM64_VA_BITS_48=y/' .config
make -j $(nproc) Image.gz modules dtbs
sudo make modules_install
sudo cp arch/arm64/boot/dts/broadcom/*.dtb /boot/firmware/
sudo cp arch/arm64/boot/dts/overlays/*.dtb* /boot/firmware/overlays/
sudo cp arch/arm64/boot/dts/overlays/README /boot/firmware/overlays/
sudo cp arch/arm64/boot/Image.gz /boot/firmware/kernel8.img
sudo reboot

Sorry for the late reply.
I changed OS to Ubuntu 22.04 LTS because of many other problems with the Raspberry Pi OS (Bookworm), but it worked normally there.
It seems that the problem is only with Raspberry Pi OS.

This is not resolved because https://github.com/raspberrypi/linux/issues/4375 is not resolved. It would be nice if that issue were at least referenced in documentation, since wrangler still doesn't work out-of-the-box on Raspberry Pi OS.


Improved Jest-Serializer

What problem does this feature solve?
I've forked off of the jest-serializer-vue repo and have added many new features and had over a dozen releases since the fork. This is a complete re-write with 100% test code coverage.
Major features:

Customizable settings (all new features can be enabled or disabled in vue.config.js). (shielding people from downstream updates)
All feature requests from the original jest-serializer-vue have been implemented (and more).
Much better default formatting, which is now completely customizable. Example of better formatting:

Can optionally remove from snapshots (enabled by default):

data-server-rendered="true" - good for Nuxt apps
data-test="whatever" - Commonly used way of targeting elements in your tests. (Used in the Vue-Test-Utils-Next documentation)
data-testid="whatever" - Common way of targeting a unique element
data-test-id="whatever"
data-v-1234abcd="" - This one feature is the entire reason I started working on this project. It is a life saver when updating 3rd party components like Vue-Good-Table or Vue-Select that use scoped styles. Each new release has different data-v-ID's and breaks all snapshots that mount these components. Removing the data-v-id's from the snapshots fixes this pain.

Can optionally remove from snapshots (disabled by default):

All html comments <!-- whatever -->
data-qa="whatever"
id="testWhatever"
class="test-whatever"

Has an experimental feature to display JSON data stored in HTML attributes. Example:

This <router-link to="[object Object]">
becomes <router-link to="{ name: 'UserList' }">

Each setting can be changed on a per-test basis as well
A migration guide is provided to help as people transition from jest-serializer-vue v2 to jest-serializer-vue-tjw v3.

What does the proposed API look like?
Change the dependency from jest-serializer-vue to jest-serializer-vue-tjw:

https://github.com/vuejs/vue-cli/blob/dev/packages/%40vue/cli-plugin-unit-jest/package.json#L36

Change the jest config from jest-serializer-vue to jest-serializer-vue-tjw:

https://github.com/vuejs/vue-cli/blob/dev/packages/%40vue/cli-plugin-unit-jest/presets/default/jest-preset.js#L24

Is there any interest for this change?


Add support for query parameters

Currently, if you have a URL such as /?hello=world, the router says that the route is not found. I made changes so that it ignores all query params and matches only the route itself (/).

Coverage remained the same at 100.0% when pulling 0497028dce026c3a12706a21b06b062d419de8df on ludicrousxyz:master into 36a06a54ae93ac2a01036142ebbe4c2bc9343dcc on protocol114:master.

I like the idea, but if I recall correctly the url.parse method was deprecated in Node 11.0.0. I'll take your PR as a starting point, write a test against this case and implement this change with the newer WHATWG URL API. Thanks!

Great, should I do this or will you?

Feel free to take a crack at it if you'd like, I've already tried with the new URL API and it seems that the request doesn't get passed the full URL for some reason which makes the URL parsing fail in the new API. I'm still working on it, but it will probably be a few days until I can push anything into the repo.

Hey,
Sorry for the late reply... I did some research and stumbled upon https://github.com/nodejs/node/issues/12682. Based on that, here are the possible solutions I found:

https://github.com/nodejs/node/issues/12682#issuecomment-377609414 (however the next comment says that that won't work. We could substitute something random like localhost in there
Use the url-parse library which has over 13 million downloads/week. Has two dependencies
Use the request-target library which has almost no downloads but is compliant with RFC 7230 and is supposedly more performant

I'd personally suggest method 2. It seems to be the most well-supported option.

I think option 1 is fine. The comment below it says that you'll be in trouble when there is a backslash in path, but I think this case is rare. Are they even legal in HTTP request?

Yes, that seems fine. I've implemented that solution and it seems to be working fine. @nahtnam I'll push this change into a separate branch, would you mind pulling it and making sure that it works?
I'll be adding full support for query parameters by simply passing the new WHATWG URL .searchParams object right onto the request object as .searchParams. I've written a new test to ensure this functionality works, but I'd like a second pair of eyes of possible before pushing it into NPM 😉

@protocol114 Looks good to me! Few nitpicky things but would it be better if we use localhost instead of example.com? I know it makes no difference but it feels "safer" if you get what I mean. Also not sure what sytnax you prefer, object destructuring over doing req.searchParams and stuff seems to be better.
Thanks!

Did you get a chance to review the changes/publish?

Another comment is with this line of code: https://github.com/protocol114/micro-http-router/blob/queryParams/src/router.js#L160
Just FYI that is a https://developer.mozilla.org/en-US/docs/Web/API/URLSearchParams object so you cant just do req.searchParams.host. You'd have to do req.searchParams.get('host'). I'm not sure you want to serialize it to JSON or not (I do it here https://github.com/ludicrousxyz/light/blob/master/src/query.ts#L10-L14) but just a heads up :)

@nahtnam That serialization will eat repeated keys like ?sort[]=name+&sort[]=id-. I would suggest not serialize because JavaScript user is supposed to be familiar with URLSearchParams.

@FranklinYu Good catch. For some reason I thought URLSearchParams would return an array in situations like those. I have fixed the issue. If the user wants the URLSearchParams, it is available in req.searchParams as @protocol114 put in the branch. The point of my function is to convert it to a JSON object as that is what express does. Both options are available to the user as soon as that branch gets merged and published.

Sorry to keep bugging you guys, but any update? This is blocking some of my other work. I tried to publish my initial PR under @ludicrousxyz/micro-http-router but RunKit.com isn't detecting that package but it is picking this one up, so it would be nice if this package could just publish the changes.
Thanks!

Sorry friend, been super busy with life things. I've got a quick change to make to my branch and I'll push it up and publish to npm sometime today.

OK, sorry again. Just pushed up a new update 1.4.0 into npm that has the query param changes and a new router.unroute(path, method) function as per your previous issue as well. How badly do you need a remove all method? I could probably add that as well.
Let me know if everything's working correctly.

No worries, thank you for all of the efforts you put.
I do need either a unrouteAll or a way to get the list of all current routes (which I can then unroute myself`.
I am working on a framework which lets you hotswap routes so you don't have to wait for the server to restart every time you make a change (which can take a couple of seconds for big apps). But my issue is if someone changes a route from /a to /b, the /a route kind of just lingers until the server is fully restarted. It would be nice if I could deregister them. I could theoretically solve this by creating my own copy of a list of routes but it seems more efficient to do that here since the router already has the list of routes.

I had some free time and added both an unrouteAll() and a router.routes object that lists all the current routes and which methods have handlers configured. Hope it's useful, go ahead and pull v1.5.0 from NPM and let me know if you encounter any issues!

Works perfectly, thank you!


ENH: Update extension metadata

Consolidate extension metadata based on the corresponding s4ext file organized in the ExtensionsIndex repository.

Related to:

https://github.com/Slicer/ExtensionsIndex/pull/1911

@AlistairMcCutcheon Would you be able to review and integrate this PR?


[VS Incentives]: Create Group CLI

Background
Need create group CLI
Suggested Design
TBD
Acceptance Criteria
TBD

This is being covered by https://github.com/osmosis-labs/osmosis/issues/6153. Closing as duplicated


MC: twiching/jerking on stick change in position control

http://logs.uaventure.com/view/ypvNzJezx2hifXsHeS22uD (towards the end)
In POSCTL the multirotor twiches when the stick input changes. The velocity setpoint changes nicely but the rate setpoint seems to ask for too much initially.

Fixed.


Ensure all measurements are documented

Similar to the span data conventions, it'll be useful to have a live document of all the possible measurements set by the sdks including browser, mobile, etc. as measurements require special handling in the UI.
We'll need to know the name of the measurement and the unit associated with it's value.

https://github.com/getsentry/sentry-conventions/tree/main/model/measurements


Installed, but not working

I'm not sure where else to put this, but I am not seeing syntax highlighting when I am trying to use this extension. VSC shows it's installed but passage listing is turned off and I can't enable it, and the buttons in the passage listing side pane pop errors "Command 'twee3LanguageTools.passage.list' not found" and "Command 'twee3LanguageTools.storyMap.show' not found"

I'd be able to help better in the Twine Games Discord server, but the usual issues are:

Opening a single file instead of a folder/workspace,
Not having a StoryData passage with valid storyformat and version explicitly mentioned.

The README lists the basic requirements, check for those first. Should resolve the issue.
And on that note, I think I should move the requirements to the top of the README so people don't miss it.

I'd be able to help better in the Twine Games Discord server, but the usual issues are:

Opening a single file instead of a folder/workspace,
Not having a StoryData passage with valid storyformat and version explicitly mentioned.

The README lists the basic requirements, check for those first. Should resolve the issue.
And on that note, I think I should move the requirements to the top of the README so people don't miss it.

@BadGriffin hopefully you solved the problem. Since there haven't been any follow ups, I am assuming you've resolved the issue, whatever it was. Closing.


Feature request : More than 2 letters for custom shorthand

Hello,
First of all, thanks for this wonderful plugin, it is so useful.
It would be really nice if we could use whatever expression we wish as custom shorthands (= not limited by only two characters).
Thank you !

@Elaws  Hi!
Thank you so much for the great suggestion! I have incorporated this in the new release, please take a look~

@joeyuping : Thanks so much for taking this into account ! It works really well.
You may want to update the associated text in the settings (Use two letters custom shorthands) ;)


kodi: updates

Motivation for this change

manual version bumps because i noticed the bot hasn't been updating packages :cry:

ran nix-shell maintainers/scripts/update.nix --argstr package kodi.packages... a few times
felt regret the bot didn't do it for me

i haven't got around to testing this yet...
ping @andir just in case
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[ ] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
21.11 Release Notes

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

In the 0.7.3 release of jellyfin-kodi the plugin stopped shipping its own version of the websocket-client python module and started pulling this library in as a dependency: https://github.com/jellyfin/jellyfin-kodi/compare/v0.7.2...v0.7.3
Running this PR introduces the following error:
2021-06-21 20:36:43.944 T:385896   ERROR <general>: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                                                    - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                                   Error Type: <class 'ModuleNotFoundError'>
                                                   Error Contents: No module named 'websocket'
                                                   Traceback (most recent call last):
                                                     File "/nix/store/cbqyg6hzn180yq61v7c5zj0q95dy5mkj-kodi-19.1-env/share/kodi/addons/plugin.video.jellyfin/service.py", line 21, in <module>
                                                       from entrypoint import Service  # noqa: E402
                                                     File "/nix/store/cbqyg6hzn180yq61v7c5zj0q95dy5mkj-kodi-19.1-env/share/kodi/addons/plugin.video.jellyfin/jellyfin_kodi/entrypoint/__init__.py", line 11, in <module>
                                                       from jellyfin import Jellyfin
                                                     File "/nix/store/cbqyg6hzn180yq61v7c5zj0q95dy5mkj-kodi-19.1-env/share/kodi/addons/plugin.video.jellyfin/jellyfin_kodi/jellyfin/__init__.py", line 10, in <module>
                                                       from .client import JellyfinClient
                                                     File "/nix/store/cbqyg6hzn180yq61v7c5zj0q95dy5mkj-kodi-19.1-env/share/kodi/addons/plugin.video.jellyfin/jellyfin_kodi/jellyfin/client.py", line 11, in <module>
                                                       from .ws_client import WSClient
                                                     File "/nix/store/cbqyg6hzn180yq61v7c5zj0q95dy5mkj-kodi-19.1-env/share/kodi/addons/plugin.video.jellyfin/jellyfin_kodi/jellyfin/ws_client.py", line 17, in <module>
                                                       import websocket  # noqa: E402,I201
                                                   ModuleNotFoundError: No module named 'websocket'
                                                   -->End of Python script error report<--

I'm at a loss. :thinking:
Is anyone available to look at this?

@aanderse That's weird, I tested your PR and built kodi.withPackages (p: [ p.jellyfin-kodi ]) without issue. I haven't done any extensive testing of the Jellyfin addon, but the addon could be activated and I could see the settings menu, and could list the users of my own Jellyfin server

@minijackson thanks for testing. Since this is websocket related my assumption would be that the error would only occur if you connected to a jellyfin server. Did you connect to a jellyfin server, or could you be bothered to test that?

@aanderse from a fresh Kodi install, I can add my server, refresh the whole library, and play a video file.

I blew away my ~/.kodi directory and everything worked. I'm not sure what to say. It seems kodi downloaded some python dependencies against my wishes... maybe that was messing with things :man_shrugging:
I think I need to set my ~/.kodi/addons directory read-only so it will just let nixpkgs manage addons! :angry:
Thank you very much for your testing @minijackson :heart:

I guess the jellyfin error I had mentioned here was more of an issue than I thought. I believe this needs to be fixed before jellyfin is going to be usable without having to rm -rf ~/.kodi...


Configurable text escaping

By default all text is escaped, too.  Added a new escapeText parameter in case you want your text to be left alone.

Whoa there, not escaping text at all would be very bad, yes? You could use
that to introduce HTML.
On Thu, Feb 12, 2015 at 11:39 AM, Csaba Palfi<EMAIL_ADDRESS>wrote:

By default all text is escaped, too. Added a new escapeText parameter in
case you want your text to be left alone.
You can view, comment on, or merge this pull request online at:
https://github.com/punkave/sanitize-html/pull/42
Commit Summary

configurable escaping

File Changes

M README.md
https://github.com/punkave/sanitize-html/pull/42/files#diff-0 (3)
M index.js
https://github.com/punkave/sanitize-html/pull/42/files#diff-1 (7)
M test/test.js
https://github.com/punkave/sanitize-html/pull/42/files#diff-2 (7)

Patch Links:

https://github.com/punkave/sanitize-html/pull/42.patch
https://github.com/punkave/sanitize-html/pull/42.diff

—
Reply to this email directly or view it on GitHub
https://github.com/punkave/sanitize-html/pull/42.

--
*THOMAS BOUTELL, *DEV & OPS
P'UNK AVENUE |<PHONE_NUMBER>  |  punkave.com

My use-case is not allowing any tags so I thought not escaping text should be fine. Let me write another test. Maybe my understanding of htmlparser2 is not complete then :)

I thought htmlparser2 would emit onopentag in case of an opening tag.
ontext is only ever emitted with some text without html tags so it should just be safe to write that without escaping.
Do you maybe have an example of how you can introduce html without tags?

htmlparser2 is pretty tolerant. I don't think we can assume it won't figure
out when it's looking at poorly written HTML where the occasional < or >
wasn't escaped right, and include that in the plaintext.
More generally, if somebody hands you data and says "this is unescaped
plaintext," it is very poor form not to re-escape it if you want it to be
valid in HTML.
On Thu, Feb 12, 2015 at 2:49 PM, Csaba Palfi<EMAIL_ADDRESS>wrote:

I thought htmlparser2 would emit onopentag in case of an opening tag.
ontext is only ever emitted with some text without html tags so it should
just be safe to write that without escaping.
Do you maybe have an example of how you can introduce html without tags?
—
Reply to this email directly or view it on GitHub
https://github.com/punkave/sanitize-html/pull/42#issuecomment-74139518.

--
*THOMAS BOUTELL, *DEV & OPS
P'UNK AVENUE |<PHONE_NUMBER>  |  punkave.com

I'm still good with not escaping ' and " unnecessarily in text, though.
On Thu, Feb 12, 2015 at 2:59 PM, Tom Boutell<EMAIL_ADDRESS>wrote:

htmlparser2 is pretty tolerant. I don't think we can assume it won't
figure out when it's looking at poorly written HTML where the occasional <
or > wasn't escaped right, and include that in the plaintext.
More generally, if somebody hands you data and says "this is unescaped
plaintext," it is very poor form not to re-escape it if you want it to be
valid in HTML.
On Thu, Feb 12, 2015 at 2:49 PM, Csaba Palfi<EMAIL_ADDRESS>wrote:

I thought htmlparser2 would emit onopentag in case of an opening tag.
ontext is only ever emitted with some text without html tags so it
should just be safe to write that without escaping.
Do you maybe have an example of how you can introduce html without tags?
—
Reply to this email directly or view it on GitHub
https://github.com/punkave/sanitize-html/pull/42#issuecomment-74139518.

--
*THOMAS BOUTELL, *DEV & OPS
P'UNK AVENUE |<PHONE_NUMBER>  |  punkave.com

--
*THOMAS BOUTELL, *DEV & OPS
P'UNK AVENUE |<PHONE_NUMBER>  |  punkave.com

Actually it would be as simple as this:
<script>oh no, rogue script tag!</script>
htmlparser2 would hand us this for the text:

Because we have it un-escaping things at all times.
A very Bad Thing would then happen when we output this without re-escaping
it. (:
On Thu, Feb 12, 2015 at 3:00 PM, Tom Boutell<EMAIL_ADDRESS>wrote:

I'm still good with not escaping ' and " unnecessarily in text, though.
On Thu, Feb 12, 2015 at 2:59 PM, Tom Boutell<EMAIL_ADDRESS>wrote:

htmlparser2 is pretty tolerant. I don't think we can assume it won't
figure out when it's looking at poorly written HTML where the occasional <
or > wasn't escaped right, and include that in the plaintext.
More generally, if somebody hands you data and says "this is unescaped
plaintext," it is very poor form not to re-escape it if you want it to be
valid in HTML.
On Thu, Feb 12, 2015 at 2:49 PM, Csaba Palfi<EMAIL_ADDRESS>wrote:

I thought htmlparser2 would emit onopentag in case of an opening tag.
ontext is only ever emitted with some text without html tags so it
should just be safe to write that without escaping.
Do you maybe have an example of how you can introduce html without tags?
—
Reply to this email directly or view it on GitHub
https://github.com/punkave/sanitize-html/pull/42#issuecomment-74139518
.

--
*THOMAS BOUTELL, *DEV & OPS
P'UNK AVENUE |<PHONE_NUMBER>  |  punkave.com

--
*THOMAS BOUTELL, *DEV & OPS
P'UNK AVENUE |<PHONE_NUMBER>  |  punkave.com

--
*THOMAS BOUTELL, *DEV & OPS
P'UNK AVENUE |<PHONE_NUMBER>  |  punkave.com

Ouch. Didn't know htmlparser2 unescapes everything.
Even then & alone is harmless. Are you ok with only escaping & when it's part of an escaped angle bracket?
Also angle brackets in text are harmless, too as if they would form a tag htmlparser emits an onopentag event.
I propose escaping text should probably just become this:
s.replace(/\</g, '&lt;').replace(/\>/g, '&gt;')

What we have now is correct and secure. I think we'd want to read over the
various CSRF exploit lists before concluding that a more relaxed solution
is correct and secure.
On Thu, Feb 12, 2015 at 3:14 PM, Csaba Palfi<EMAIL_ADDRESS>wrote:

Ouch. Didn't know htmlparser2 unescapes everything.
Even then & alone is harmless. Are you ok with only escaping & when it's
part of an escaped angle bracket?
Also angle brackets in text are harmless, too as if they would form a tag
htmlparser emits an onopentag event.
I propose escaping text should probably just become this:
s.replace(/</g, '<').replace(/>/g, '>')
—
Reply to this email directly or view it on GitHub
https://github.com/punkave/sanitize-html/pull/42#issuecomment-74143807.

--
*THOMAS BOUTELL, *DEV & OPS
P'UNK AVENUE |<PHONE_NUMBER>  |  punkave.com

I see your point.
Based on #41 and #28 there's greater interest in custom text processing (which would actually help me, too)
Closing this now and will send another PR with custom text processing.


disable download on photos

Hi i want to disable the download of photos but still download all photos meta-data how is that possible ?
Thanks

I wrote the solution here https://github.com/rarcega/instagram-scraper/issues/475#issuecomment-574315298

Thanks. Do you know if it denies the "download" request, or actually still does the request but just doesn't download it?
I know this sound stupid, but i think the less request sent, the better it is to prevent blocking.


Fix process definitions exists check error

This patch fix process definition error when we submit workflow-as-code define

Codecov Report

Merging #6668 (4c224e6) into dev (3a8b809) will decrease coverage by 0.00%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##                dev    #6668      +/-   ##
============================================
- Coverage     38.49%   38.48%   -0.01%
- Complexity     3223     3224       +1
============================================
  Files           646      646
  Lines         25874    25886      +12
  Branches       2805     2808       +3
============================================
+ Hits           9959     9962       +3
- Misses        15002    15007       +5
- Partials        913      917       +4

Impacted Files
Coverage Δ

...ache/dolphinscheduler/server/log/LoggerServer.java
78.26% <0.00%> (-8.70%)
:arrow_down:

...org/apache/dolphinscheduler/remote/utils/Host.java
40.00% <0.00%> (-2.11%)
:arrow_down:

...dolphinscheduler/remote/future/ResponseFuture.java
81.35% <0.00%> (-1.70%)
:arrow_down:

...pache/dolphinscheduler/dao/upgrade/UpgradeDao.java
4.21% <0.00%> (-0.05%)
:arrow_down:

...scheduler/dao/upgrade/DolphinSchedulerManager.java
0.00% <0.00%> (ø)

...e/dolphinscheduler/remote/NettyRemotingClient.java
52.81% <0.00%> (+0.70%)
:arrow_up:

...er/master/processor/queue/TaskResponseService.java
60.97% <0.00%> (+3.65%)
: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 3a8b809...4c224e6. Read the comment docs.

LGTM

Hi, @ruanwenjun  I add some log as you said above, PTAL

Thanks 🎉


Count consumer group members/instances

Environment

Node version: latest
Kafka-node version: 2.6.1
Kafka version: latest

Hi, there is a way to know or get Consumer Group members/consumers/instances?
i know there is an option in Kafka itself ('GroupMembers') but i need it in node.
thanks

If you are referring to https://kafka.apache.org/protocol#The_Messages_ListGroups then this can be achieved using the following code...
const options = { kafkaHost: 'localhost:9092' };
const client = new kafka.KafkaClient(options);
const admin = new kafka.Admin(client);
// listen to the 'ready' event on the client first, then...
admin.listGroups((err, res) => {
  let consumerGroups = Object.keys(res); // array of consumer group names
  let count = consumerGroups.length; // count of consumer group entries
});

https://github.com/SOHU-Co/kafka-node#describegroupsconsumergroups-cb can then be used to get more info on a group(s).

Good answer, thanks


Fixture load yields "permission denied" error when disabling triggers in PostgreSQL

What steps will reproduce the problem?
When we try ./yii fixture/load, Yii disables triggers before load and enables them after. However, in PostgreSQL, the database user must be superuser so he can disable system triggers like foreign key constraints. If the user is not a superuser, we get an error message like this:
ERROR:  permission denied: "RI_ConstraintTrigger_16509" is a system trigger

What is the expected result?
./yii fixture/load should works with any database user, but currently fails when the user is not a superuser.
What do you get instead?
Inability to load fixtures with a non-super user. I think that needing a DB superuser only to load fixtures is too overkill.
Additional info
According to [1], the best workaround is marking the triggers as deferred at first and mark them as immediate at last, using SET CONSTRAINTS ALL DEFERRED/IMMEDIATE. I've done some tests and seems to work OK, but I would like to see some other comments about that. I can create a pull request if needed.
Interestingly, this change will render PR #11775 unnecessary.
[1] http://kopongo.com/2008/7/25/postgres-ri_constrainttrigger-error

Q
A

Yii version
2.0.10

PHP version
7.0.8-0ubuntu<IP_ADDRESS>

Operating system
Ubuntu 16.04.1 LTS 64-bit

Sounds good. If you'll do a pull request, start with unit tests.

Problem still exists. It doesn't allows to run tests with PostgreSQL without using PostgreSQL superuser (which doesn't sounds very secure).
Suggested solution was rejected, see #13106 (I understand why, however this solution works for tests purpose).
Is there anything we can do about this? (besides using PostgreSQL superuser)

I'm not into this part of PostgreSQL much so I'm not sure #13106 is the only way to achieve it... do you have alternative solutions?

There is no way to exactly "disable constraints checks, insert invalid data, enable constraints checks" without superuser rights. So solutions depends on the goal.
(1) If the goal is to "insert valid data without caring about order of inserts", then solution is to use SET CONSTRAINTS ALL DEFERRED. This allows to insert data in any order but there is still constraints checks at the end of transactions.
(2) ActiveFixture supports depends. So we can select right order for inserts and there is no need to deffer constraints checks, right? Maybe is's just better to allow disabling usage of checkIntegrity() in InitDbFixture?
(3) If the goal is to "insert invalid data just for test purposes", then solution is to:

Drop the constraints
Load data, use data in tests
Clean data, re-create constraints

I think main goal is to allow run tests without using postgres superuser (as it's core feature).
P.S. This not resolves the problem:

Use ALTER TABLE table DISABLE TRIGGER ALL, requires superuser (current)
Use set session_replication_role to replica; requires superuser
Disable only user triggers using ALTER TABLE table DISABLE TRIGGER USER, but it doesn't disabling foreign key checks (so you still can't insert invalid data)

any news?

No.


editors/vscode: Implement goto-ing to imported files

This PR add support for "go to file" when declaration is in another (imported) source file. Note that this doesn't work for prelude types (e.g String, Error, File etc.)

Awesome!


Sample data: Use DSL

Its hard & expensive to create a real sample construction site; being realistic about how a construction site really progresses. Testing & development would however greatly profit.
Proposal: Create an activity.txt file with a DSL that describes progress (like "constructionManager.0 creates issue.0 (map.0, ...)")
To be able to easy implement it, need to find an appropriate format.

Pain of sample data has gone away with real world usage


Unable to execute ESRI’s Source Code for Geoportal Server harvester 2.6.4

Hi,
We are facing issue with ESRI’s Source Code for Geoportal Server harvester 2.6.4.
Attached is the document outlining the problem.
Thanks & Regards
Dinesh
Geoportal Server Development Harvester.docx

before diving into how to debug multi-project maven applications (such as the harvester), why is H2 not sufficient? the harvester uses this as the internal data store for brokers and tasks. it is not intended as a full-fledged relational database.

My recommendation is to use AdoptOpenJDK 11 to compile and run Geoportal Harvester and Apache Tomcat 9.x as a web server. This is environment is described on our Wiki page at: https://github.com/Esri/geoportal-server-harvester/wiki/Installation-guide. Unfortunately, the front page of the Geoportal Harvester hasn't been updated - I've just corrected it.
When it comes to H2 database it is being used exclusively for the harvester purposes as an embedded database; think of it as a black box solution. No other database is currently supported.

Thanks a lot. I am checking with suggested environment and get back to you in case of any further issues.

Geoportal server harvester 2.6.4.docx
Hi I am yet facing problem.
Attached is the document outlining the problem.
Please suggest.
Thanks & Regards
Dinesh

Hi Pandzel, appreciate if you can help us with this issue. Thank You for your time.

What happens when you execute maven build CLI without Eclipse? Did you try running command:
mvn package
I see some errors associated with running test. If command given above fails try skipping tests running:
mvn package -Dmaven.test.skip=true
From the log attached it's quite possible it is all associated with Eclipse, although I have to admit I have absolutely no knowledge about Eclipse - simply put it I don't use at all (always preferred NetBeans). Perhaps you have a way to configure Eclipse in such a way it can skip tests as well.
Just before I posted that message I cloned harvester repository and run build on it (on Windows and Ubuntu via Docker) and in both cases it passed and produced artifact. What you are reporting is very odd.

Dear Piotr,
Today, I want to run code of Geoportal Server Harvester 2.6.5 in NetBeans and Eclipse both. But, I am yet facing issue related to maven install. i.e. code is not giving error. Can you please suggest further.
Thanks & Regards
Dinesh

@Dineshr25 I have not enough details to provide you with a  meaningful help. I sense you are having fundamental issues with your environment and that's something which would be entirely on you. That said, if you are maintaining multiple Java SDK's on your machine make sure you are using the right one, Check JAVA_HOME and PATH variables or so. Using NetBeans is extremely easy; you just open top level pom.xml. After that you may check in project options if the right Java SDK is selected. Keep in mind that NetBEans have capability to work either with a build in instance of maven or with external maven. Both should work fine, but if you are curious which I am using then I amusing an external one.

Dear Piotr,
Thanks a lot for your continued support.
Now, its working fine in Netbeans IDE.
Regards
Dinesh


Hi, where do I find the stats with the pokemon spawn hour locally? Thanks

Hi, where do I find the stats with the pokemon spawn hour locally?
Thanks

Im not the guy who made this but correct me if i am wrong. There might be a database file that is associated with the package. If i recall they are sql files. Before this map program became a desktop app there was a guide with the original pokemon go map. If you can find it i think ti will help you with your answer.

@dripsin Thanks a lot! Any idea where to find it on Windows? I was able to find a pogom folder but not the .db file.

And @dripsin, what program would you suggest on mac for looking at that .db file? Thanks.

I think there's a program he mentions in the read file. I don't recall what it is.

I think for Windows it's at C:\Users\username\AppData\Roaming\pokemon-go-map.
The file should be called pogom.db

Works like a charm.


Can O' Spam: Watch burlingtonclinics.com

Can O' Spam requests the watch of the watch_keyword burlingtonclinics\.com. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

burlingtonclinics\.com has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by cigien in Charcoal HQ


MacOS Won't Raise PointerMoved on Pointer Release

Describe the bug
MacOS doesn't appear to raise a PointerMoved event when the mouse left button is pressed, moved and then finally released. There is no event on press release.
At first this appears correct -- after all the pointer was just released, it hasn't moved. However, there is no other way to determine that pointer is no longer clicked. This is especially important for code relying both pointer move AND pointer click state.
Note that Windows does NOT have this issue and will raise a final PointerMoved event when the mouse left button is released even thoguh it hasn't moved.
To Reproduce
Steps to reproduce the behavior:

Using MacOS
Add a Grid and then PointerMoved event handler
Within the PointerMoved event handler watch PointerPoint.Properties.IsLeftButtonPressed and do something on move -- think custom dragging
Release the pointer left button (WITHOUT MOVING THE POINTER)
The PointerMoved event is never called

Expected behavior
PointerMoved should be invoked one last time if the pointer press is released even if it hasn't actually moved.
Screenshots
If applicable, add screenshots to help explain your problem.
Environment

OS: MacOS
Avalonia-Version: 11.0.6

Additional context
Add any other context about the problem here.

I have a question. Why do we need to have this feature in Avalonia? I tested in WPF, there is no MouseMove after MouseUp. What is the correct behavior?

Yea, this is more of an observation right now. Definitely needs to be checked a bit before any changes.
The code is originally coming from WinUI and works still on Windows so I probably should check and see if UWP/WinUI work this way too.
I think it's just a convenience feature so PointerReleased isn't needed in cases like this.

@robloo not sure here. But at least it should be the same behavior on each platform. Can you check it with a minimal sample in DevTools for Mac and Windows?


Find out whether the ClusterRole works as expected

RBAC: ClusterRole write-client-certificates does not include permission to fetch the Secret. Name and permissions are not aligned.

The ClusterRole write-client-certificates was created in order to grant the automation ServiceAccount permissions to create WC client certificates (related PR). The ClusterRoleBinding write-client-certificates-customer-sa is created between this ClusterRole and this ServiceAccount.
The automation ServiceAccount also has a RoleBinding write-all-customer-sa to the cluster-admin ClusterRole. In the bootstrap package, this RoleBinding is created in the default namespace (for reference). Subjects bound to this Role are granted access for all verbs to all resources in all API groups, including Secrets.
However, it seems that in addition to the above, a RoleBinding between the automation ServiceAccount and the cluster-admin ClusterRole is also created in every organization namespace.
For example, the following commands both return yes:
kubectl auth can-i get secrets --as system:serviceaccount:default:automation -n default
kubectl auth can-i get secrets --as system:serviceaccount:default:automation -n org-giantswarm
(Small experiment: rbac-operator recreates the write-all-customer-sa RoleBinding within an organization namespace if you delete it. This can be observed from the logs of the rbac-operator pods.)
TL;DR The ClusterRole write-client-certificates does not include permissions to fetch Secrets, but the automationServiceAccount for which the ClusterRole was created for (and bound to), does have the permissions to fetchSecrets`.

We talked today. I think it will be part of a general default (cluster)role cleanup. Closing.


:art: Code Rework

Reworked the code base to improve readability and performance.

The remaining clang-tidy comments are false positives. Not quite sure what's up with that... :thinking:


Added horizontal scroll for perfgrids

As an attempt to make better solution for #300 I've implemented horizontal scrolling within first column of the grid.
The scrollbar appears below grid when necessary.
Works fine for me, but should be tested better on larger dumps to check performance.

Codecov Report

Merging #592 into master will increase coverage by 0.09%.
The diff coverage is 56.26%.

@@            Coverage Diff             @@
##           master     #592      +/-   ##
==========================================
+ Coverage   17.49%   17.58%   +0.09%
==========================================
  Files         216      218       +2
  Lines      124868   125194     +326
  Branches    12050    12111      +61
==========================================
+ Hits        21847    22021     +174
- Misses     102157   102277     +120
- Partials      864      896      +32

Flag
Coverage Δ

#2017
17.58% <56.26%> (+0.09%)
:arrow_up:

#Debug
17.58% <56.26%> (+0.09%)
:arrow_up:

#Release
?

Impacted Files
Coverage Δ

src/PerfView/StackViewer/StackWindow.xaml
100% <ø> (ø)
:arrow_up:

src/PerfView/StackViewer/PerfDataGrid.xaml
100% <100%> (ø)
:arrow_up:

src/PerfView/StackViewer/PerfDataGrid.xaml.cs
34.42% <100%> (+0.39%)
:arrow_up:

src/PerfView/GuiUtilities/ScrollViewerMouseFix.cs
25% <25%> (ø)

src/PerfView/GuiUtilities/ScrollSynchronizer.cs
55.55% <55.55%> (ø)

src/PerfView.Tests/StackViewer/StackWindowTests.cs
92.97% <73.91%> (-1.61%)
:arrow_down:

src/PerfView/StackViewer/StackWindow.xaml.cs
25.65% <0%> (-0.08%)
:arrow_down:

Continue to review full report at Codecov.

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

It is better to use see diff ignoring whitespace differences: https://github.com/Microsoft/perfview/pull/592/files?w=1

@vancem @adamsitnik
Any chance to also look at this one? I have this running in my local build and didn't experience any issues so far..

This one will take a little longer to review properly, but I should be able to do it this week.
Vance

I'm closing this and will create new one.


Add zbell plugin

This is a modified version of this script https://gist.github.com/oknowton/8346801, which notifies users when a long running command has finished.

+1


Cannot login anymore

Error: operation timed out after 9016 ms, 5 tries with error: Cannot read property 'push' of null.

TypeError: Cannot read property 'push' of null
       at self.signatureBuilder.encrypt (C:\Users\xxxx\Downloads\pogobuf-latest\node_modules\pogobuf\pogobuf\pogobuf.client.js:886:34)

Happens for both providers.

The problem comes from a proto update: RequestEnvelope.unknown6 is no longer repeated.
See the latest commit for a fix. I'll make a patch release in a bit.