Sidenav style updates

Bug/issue #90168484, #89558736, #89375818, if applicable:
Summary
Framework heading
When selected:

[x] Background should be fill-tertiary
[x] Text should be bold

When no selected:

[x] Background should be fill-secondary
[x] Text should be semibold

Others sidenav specs:

[x] Space between Framework heading and items should be 8px
[x] Space between icon and text in each item should be 7px
[x] We should no longer aim for a rounded radius.
[x] Selected and hover state of items should span the full width of the sidebar.
[x] The top level items in the sidebar should also be aligned with the top level technology title.
[x] Delete NavigatorLeafIcon
[x] Hover state for top level technology should be the same color as the rest of items

Dependencies
NA
Testing
Steps:

Run npm run serve with your documentation
Enable sidenav
Assert that summary list is correct

Checklist
Make sure you check off the following items. If they cannot be completed, provide a reason.

[x] Added tests (Not needed)
[x] Ran npm test, and it succeeded
[x] Updated documentation if necessary

I changed some of spacing to have more consistency trying to use 20px and 10px but since some of the design specs on rdar://90168484 (Search & Nav: Sidebar Polish) were having 7px I'm not sure if these are the right specs.

@SamLanier feel free to send me the Sketch file and I will get the spacing from there :)

@swift-ci test

@swift-ci test

@swift-ci test


parseQuery should ignore irrelevant query parms

Note: This will also "fix" bogus URLs coming in with invalid parms (upon persisting state)

Ping @thejameskyle

Whoops, sorry I left this here. Would you mind renaming these to params?

@thejameskyle  No problem, done.

Needs a rebase

Done!

Thanks!


Allow for signal events to optionally pass dictionaries instead of strings

This would resolve https://github.com/coppolaemilio/dialogic/issues/1828
I made this mostly to demonstrate how i envision it to work and think it works. I tried playing around with it and am fairly satisfied.
What I added/changed:

An input scene that acts similar to an array, but instead there are two fields per entry, a key and a value. To keep it simple enough, values are exclusively strings, rather than allowing any data type.
Added resource type KEY_VALUE_PAIRS, i put it under the OTHER category in the enum. This type is meant for dictionaries, which are key value pairs. in to_text() they are handled under their own clause, as putting them in var_to_str() would cause newlines to be added and breaks the syntax highlighting for the text editor. Instead they get serialized densely; example: arg="{"a":"1","b":"2"}"
Added a toggle to switch between the signal using a string as an argument and a dictionary as an argument. It defaults to false and should be compatible with existing signals due to how the syntax works. Since you need to opt-into dictionaries as argument rather than a string, existing code does not break. But in order to take advantage of the feature, they do need to change their code to handle a dictionary argument. With a simple type filter it should work like a charm.

# a simple example of how a type filer could look
func on_timeline_signal(arg: Variant) -> void:
	match typeof(arg):
		TYPE_STRING:
			handle_string_argument(arg as String)
		TYPE_DICTIONARY:
			handle_dictionary_argument(arg as Dictionary)

What can still be added:

For the key value pair inputs, a user could define the type per value, rather than locking them to just strings. However for this to be reliable, it would need a custom serialization step, rather than using Godot's built in JSON stringifier. As it follows the JSON specs, it treats all read values as floats since JSON doesn't distinguish between the two, it only has a number type for numbers. This increases the complexity of implementing this feature and could possibly be added in the future.
Better wording for the visual editor of the signal node. I found it challenging to come up with a good short description that doesn't confuse people. I'm more a technical minded guy and am generally not good with describing things like this after a code jam.

I hope you give this feature a try and see if this is a good fit

I like the idea and the implementation isn't bad either, but UI/UX need improvements. I will try to improve it and then merge it.

Okay I made a pass on UI/UX/naming:
Default look:

Default expanded:

After switching to Dictionary:

With some values:

In text:

The dictionary UI looks really rought, but it's based of the array UI which looks similarly bad, so I'll leave that for a future PR.
I'd also consider both in array and dictionary uses to do a parse_variables pass to allow easy passing of dialogic variables in those.

Thanks for this feature!


issue with number of partitions when we use spark.read

Hello Team,
Here is my use case with memsql spark connector READ operation:

I have table in MEMSQL and I am reading this table using below memsql connector read operation
val DF = spark.read.format("memsql").option("ddlEndpoint", "url value").option("user","username").option("Password", "pwd").load("memsql table name")

Once I read it to spark dataframe, I used below spark write API to write memsql data into hive table.
DF.write.mode("overwrite").format("orc").saveAsTable("hive tabl ename")

In this case, in my cluster, I see only one executor and one task running actively even though I specified 20  cores and 120 executers.

Actual issue: is, spark.read is always creating DF as single partition and because of that, this job not able to use available cores and executers.
I tried DF.repartitions(50) and then applied write operation, but no luck..
How can we make memsql spark.read() API create multiple partitions of DF, so that our job will use cluster resources effectively ?
because of this issue, for 100mn records, it took 28 hours to read from memsql table and write it to HIVE external table.
Any solution ?

Hi @samminen ,
you could try to enable enableParallelRead option, this will allows spark to read directly from the leaves and increase your read performance.
Try to enable it like this:
val DF = spark.read.format("memsql").option("ddlEndpoint", "url value").option("user","username").option("Password", "pwd").option("enableParallelRead","true").load("memsql table name")

And please also read an explanation and some notes about enableParallelRead option in our docs.
Feel free to ask any other questions if that doesn't help you.

Thank you for the update; When I try this option, I see below error
java.lang.NoSuchMethodError: spray.json.package$.enrichString(Ljava/lang/String;)Lspray/json/RichString;
at com.memsql.spark.MemsqlQueryHelpers$.GetPartitions(MemsqlQueryHelpers.scala:40)
at com.memsql.spark.MemsqlRDD.getPartitions(MemsqlRDD.scala:22)
at org.apache.spark.rdd.RDD$$anonfun$partitions$2.apply(RDD.scala:253)
at org.apache.spark.rdd.RDD$$anonfun$partitions$2.apply(RDD.scala:251)
spark connector jar:  memsql-spark-connector_2.11-3.0.5-spark-2.3.4.jar
spray json jar: spray-json_2.11-1.3.2.jar
mariadb jar: mariadb-java-client-2.7.1.jar
if I remove option enableParallelRead, then I do not see above error. How can I use this feature to read parallel ?
What is missing ?

@samminen ,
we are using spray-json-1.3.5 version. Seems like your jar version is lower.
Please try to use 1.3.5 version or newer.

I still see same issue after upgrade spray-json-1.3.5. It is just one partition and using one core and 1 executer in clusert.
This is big issue when we try to ready millions of records from memsql and create a hive table.
Kindly check and provide an update;

Hi @samminen ,
I still see same issue after upgrade spray-json-1.3.5
you mean this issue?
java.lang.NoSuchMethodError: spray.json.package$.enrichString(Ljava/lang/String;)Lspray/json/RichString;
at com.memsql.spark.MemsqlQueryHelpers$.GetPartitions(MemsqlQueryHelpers.scala:40)
at com.memsql.spark.MemsqlRDD.getPartitions(MemsqlRDD.scala:22)
at org.apache.spark.rdd.RDD$$anonfun$partitions$2.apply(RDD.scala:253)
at org.apache.spark.rdd.RDD$$anonfun$partitions$2.apply(RDD.scala:251)

No. Spray Jason issue resolved. But after enableParallelRead, I still see just one partition with memsql spark connector read operation.
Not sure it worked for anyone ?

@samminen , could you please provide some examples of your code so we could investigate it and propose a working solution for you?

@samminen, as there's no response from you, I'll close this issue. Please feel free to reopen it if you have some additional questions


Add mrluissan to Contributors list

@mrluissan, I'm quite elated about your PR. I wanna evolve this project to addresses various problems faced by first time contributors. I'd love to learn about your journey in open source community, the problems, pain points you had etc.
Could you explain how you felt when you went through the tutorial, made a PR and learned that I accepted it?

Thank you, this was my very first pull request on Github.
Answering your question I'd say that the tutorial was fairly easy and I didn't have any major problems. Although, I was confused when it said to fork the repository and clone it, because I used the original repo url to clone it instead of mine (the forked one). So I would clarify that on the tutorial.
Also what I find a little bit confusing is the user experience on Github when I push my changes and it says to compare and pull request. I don't know if I understand yet what are issues and pull requests for. I suppose that Issues are a way to keep track of bugs, ideas, features, implementations, etc and Pull Requests are the changes that a contributor makes and notifies the owner of the repo to check it out and merge them into the actual project.
Apart from these misunderstandings that I have everything was easy to follow. :smile:

I'm thrilled that you found the tutorial useful.
You're right about distinction between issue and pull requests.
If you're keen on keeping contributing to other projects, take a look at suggestions at the end.
Also we have a slack channel in which you can ask any questions. You can join the slack channel by going to this link https://firstcontributions.herokuapp.com


[ZEPPELIN-2075] Can't stop infinite while statement in pyspark Interpreter.

What is this PR for?
If following code runs with Pyspark Interpreter, there is no way to cancel except Zeppelin Server restart.
%spark.pyspark
import time

while True:
    time.sleep(1)
    print("running..")

What type of PR is it?
Bug Fix | Improvement
What is the Jira issue?
https://issues.apache.org/jira/browse/ZEPPELIN-2075
How should this be tested?
Run above code with Pyspark Interpreter and try to cancel.
Screenshots (if appropriate)

before

after

Questions:

Does the licenses files need update? no
Is there breaking changes for older versions? no
Does this needs documentation? no

@astroshim can you take a look CI error ?

@astroshim This would be a problem in case of scala snippet  also(a loop with a print in other words , that which runs only within driver). Is there a possible  fix such that all interpreters(scala, python) can  benefit.

Hello. Sorry for late response.
@Leemoonsoo Let me fix CI error.
@karuppayya Let me fix scala too in another PR.

CI test failure is not related (fixed by #2033).
LGTM and merge to master if no further discussions.

@astroshim It looks like the python process will be killed, does it mean the interpreter is closed and the state of all the previous paragraphs is lost ? I try the cancel function in jupyter, it seems jupyter just cancel the current cell but keep the python process alive, the previous cell's state is still in the python process. Maybe there's a better approach for this.

Sorry, it's my misunderstanding. It just interrupt the process rather than kill it. The behavior is consistent with jupyter. It's awesome.

@zjffdu yes, this PR is not kill the python process.
Thank you for reviewing!

Sorry for the late comment.
This solution wouldn't work with impersonation, as the zeppelin user wouldn't have permission to interrupt another users process (unless zeppelin run as root, which comes with a whole set of other problems). I suggest you read in the impersonation command, if there is one, and use that to send of the kill -SIGINT <pid>.

@FireArrow Note has permission in the zeppelin so if user doesn't have write permission on that note, user can't cancel job.

@astroshim That's not what I'm talking about. Assume the following:
Zeppelin run as user "zeppelin"
In zeppelin-env.sh: export ZEPPELIN_IMPERSONATE_CMD='sudo -H -i -u ${ZEPPELIN_IMPERSONATE_USER} bash -c '
User zeppelin have permission to execute paswordless sudo to local users allowed to log into Zeppelin
Interpreters will with this run as the user starting the process, and the zeppelin user will not have permission to send any signal to them.
My suggestion is to execute the kill with $ZEPPELIN_IMPERSONATE_CMD to make sure the kill is executed in the same way as the interpreter was started in the first place.

@FireArrow Yea, right. I understood. Let me fix it.
Thanks.

@FireArrow I think it seems not can be possible to know if impersonation mode or not in Interpreter side(I couldn't find it) and checking cancel paragraph for impersonation is also not good idea (Interpreter sever can be launched itself not the same system with ZeppelinServer)
So I think that the canceling job can run only by user who launched interpreter process can be one option. and In this way, the other user can't stop the job in shared mode.
What do you think?

I have basically only set up zeppelin in isolated mode with impersonation, so I'm not sure what is the "expected" behavior is outside of that. Someone else will have to pitch in here.

@Leemoonsoo @zjffdu @felixcheung @karuppayya  Could you guys help to review about the impersonation mode?

Even in the impersonation mode, it is the process owner to interrupt the process. Here it is the interpreter process owner interrupt the process instead of the zeppelin server owner.  But I can not verify it in impersonation mode. It seems the impersonation mode is broken. I got the following error, can anyone else verify the impersonation mode ?
ERROR [2017-02-28 09:20:18,882] ({pool-2-thread-2} Job.java[run]:194) - Job failed
org.apache.zeppelin.interpreter.InterpreterException: org.apache.hadoop.security.authorize.AuthorizationException: User: user1 is not allowed to impersonate user1

@zjffdu I tested impersonation mode followed http://zeppelin.apache.org/docs/0.7.0/manual/userimpersonation.html and worked well.
BTW for now anybody can interrupt to interpreter process. and that is @FireArrow's worrying. Am i right?

User zeppelin have permission to execute paswordless sudo to local users allowed to log into Zeppelin
Interpreters will with this run as the user starting the process, and the zeppelin user will not have permission to send any signal to them.

I think @FireArrow 's concern is that zeppelin user can kill the process. Actually it is not the user zeppelin send the signal, it is the interpreter process owner. So I think don't think there's any permission issue here. @FireArrow Please help confirm.

@FireArrow ping.

Terribly sorry for late answer! Not sure why I didn't get any notifications about your answers :confused:
@zjffdu I haven't looked into who actually sends the signal, but if it is as you say, with the user owning the interpreter process sending the signal, it should be fine.
My worry was that it was sent by the user running the server, and that if that user isn't root (which would be a terrible idea for other reasons) the OS wouldn't allow sending signals to another users process.
And it is tricky to set up impersonation, but as far as I know it is not broken. I only have my production environment with this set up right now. I suggest not using spark to test with. The sudo approach clashes with the spark impersonation, so if you really want to try that you have to set export ZEPPELIN_IMPERSONATE_SPARK_PROXY_USER=false, and find a way to make sure the user starting the interpreter has a kerberos ticket (if you need that)

@FireArrow Thank you for confirm your idea and thank @zjffdu help to review!

Will merge it


allow lookup of past results based on filename

as suggested by @mwhitesi  in https://github.com/superphy/backend/issues/202#issuecomment-329009153


ImportError: Error while finding module specification for 'module.name' (ModuleNotFoundError: No module named 'module')

Just installed vs code and trying to run a simple file with 2 lines
f= 2123
print(f)
I get the error
ImportError: Error while finding module specification for 'module.name' (ModuleNotFoundError: No module named 'module')
in  both terminal and debug console

Env is Windows 7 Premium

Please file this against the extension which you are using for running that file


[tests-only] Bump core commit id to include cofre PR 39914

Description
Gets test changes from https://github.com/owncloud/core/pull/39914 running in oCIS CI.
Related Issue
https://github.com/owncloud/QA/issues/735
How Has This Been Tested?
CI
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Technical debt
[x] Tests only (no source changes)

Checklist:

[ ] Code changes
[ ] Unit tests added
[ ] Acceptance tests added
[ ] Documentation ticket raised:

Stopped CI since the build had two pending steps for >1,5h. Tests were green though

Restarted just now - the drone problems should have been resolved.


HAWQ-385. Fix too many ssh connections on master and standby

+1

I'm testing this patch on 40 nodes cluster.

Successfully initialize a 40 nodes cluster in 2 minutes. Well done @radarwave ! +1.


rtsp video stream can be bgr to rgb when converting

I have an rtsp video stream, its color channel is bgr, I am now processing it in the business code, I see that go2rtc is using ffmpeg, so I can directly convert bgr to rgb when converting? If possible, can you provide me with a configuration reference?
Thank you all

https://github.com/AlexxIT/go2rtc?tab=readme-ov-file#source-ffmpeg
or
https://github.com/AlexxIT/go2rtc?tab=readme-ov-file#source-echo


Is the extensions development documentation being deleted?

I was developing an Azure DevOps extension and I had saved plenty of helpful URL pages of how to develop it. However most of them has been deleted recently, and they are not redirecting to another page related to it or to a new version of the documentation.
Here are some of them:
API Work item Tracking rest client
Target for hubs in manifest

@lolpez  Thank you for the feedback and apologies for the redirects.
Documentation redirects are generally added to the repo's redirection.json file.  Please note that to view this file, you may need to join Microsoft Docs with your GitHub account, see becoming a contributor.
Otherwise, please refer to work item tracking and add a hub for further information.


[SPIKE] Lehigh App for Orders Requirements Analysis

Currently FOLIO's mod-data-import does not support creating and loading Order records from BIB 9xx fields. One option is the Lehigh's FOLIO Order import tool. This tool is a Java standalone web application that may be difficult to integrate with Airflow as there doesn't appear to be an API that we can use. Also, the app creates Instances, Holdings, and Items records and we want to leverage mod-data-import to this FOLIO record creation.
The scope of this Spike is to determine if Lehigh tool can be used in the context of Airflow and our planned use of the mod-data-import. If that doesn't look viable, create one or more tickets outlining what information needs to be extracted from the MARC Bib record 9xx fields to create Order records. Documentation in the FOLIO Wiki, Import Orders in MARC format, can be of use as it outlines future workflow for Orders importing using the mod-data-import.
Another source for requirements is FOLIO-FSE's Order transformer that creates Order records from TSV files and the example composite order mapping.
Finally, the Okapi mod-orders and mod-orders-storage provide the JSON schema for composite orders records.

THIS TICKET:  Analysis of what's available - maybe indicate in ticket.  Would expect other tickets to come out of this if Lehigh app is promising.

Closing this ticket as our current thinking is that we may use the Lehigh tool as an interim solutions for Orders until we migrate to Orchid.


Reorganise into a large search tables rather than separating for each category

Meanings of categories is going to change https://github.com/LibCrowds/libcrowds-bs4-pybossa-theme/issues/16

Archiving the repo so closing this


Error: The requested platform 'Broadlink RM' was not registered by any plugin.

Hi everyone, I recently installed the Broadlink plugin but unfortunately I get an error. More people seem to get this error, but none of the mentioned solutions that I could find help me. That is why I hereby open a new issue. The error message is as follows:
Error: The requested platform 'Broadlink RM' was not registered by any plugin.
at API.platform (/usr/lib/node_modules/homebridge/lib/api.js:134:13)
at Server._loadPlatforms (/usr/lib/node_modules/homebridge/lib/server.js:327:45)
at Server.run (/usr/lib/node_modules/homebridge/lib/server.js:90:36)
at module.exports (/usr/lib/node_modules/homebridge/lib/cli.js:59:10)
at Object. (/usr/lib/node_modules/homebridge/bin/homebridge:17:22)
at Module._compile (internal/modules/cjs/loader.js:1158:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1178:10)
at Module.load (internal/modules/cjs/loader.js:1002:32)
at Function.Module._load (internal/modules/cjs/loader.js:901:14)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:74:12)
at internal/main/run_main_module.js:18:47
Does anyone have an idea how to fix this?
Homebridge version: 0.4.52
Node.js version: 12.16.1
NPM version: 6.14.2
Broadlink RM plugin version: 3.6.22

I don't know exactly what I did, but suddenly homebridge came online and it seems to be working. The plugin finds my RM 3. Only I don't see any IR codes in my log after I have activated the Learn function. So I'm going to play with that now. In any case, I close these issues.


can't install reduce

hello professor, I can't download reduce python package from anaconda or pip. Could you please tell me the right way to download it?

You can get it on Anaconda.

i
hi,
you mean this?
"conda install -c ostrokach-forge reduce"
thank you!

Looks like it no longer exists on Conda. But you can install it with the instructions from the repo. Link to Reduce repo

I solve this problem,thank you.

Hello, how did you implement the reduce package import and what is the corresponding path?


Magic Move?

I appreciate this is a bit bigger than you're vision for webslides but I thought I'd at least ask it to learn more. One of the most valuable slide transitions in Keynote(Powerpoint) is MagicMove(Morph). This is the transition the animates the position, rotation, size, color of all objects from slide x to x+1.
I expect that CSS could actually do nearly all of the animation work no problem. The real issue is setting it up as it would require precise locations on each slide as well as rotation/scaling/color info. As long as each item had a) an additional MagicMove class and b) the same ID on each object to be animated, you could use JS to setup the animation.
My guess is that this would fall into the 'advanced-only-in-your-text-editior' use case as you are trying hard (and I agree) to NOT allow people to specify exact locations. Obviously this is a BIG ask and raises complex questions for the webslides editor. But even baby steps towards it (e.g. animating a single object) would unlock initial use cases and it could grow as we learn more.

Hi @scottjenson! The aim of the project is to build a SaaS platform like Medium/WordPress.com. Your suggestion would be a a really good feature. Thanks!


Support properties

It's necessary to be able to define dependency versions and other things in a single file (properties?) and then refer to that from multiple jbuild.yaml files.

Done!


updated outbreaks wizard content and selection process

Summary | Résumé
Trello
https://trello.com/c/S7HuVALX/844-optimize-the-selection-in-alerting-tool

Removed link back to search from step 1 of datetime/outbreaks
Added step header
changed control buttons for add/remove date, and new cancel this exposure button from step 1

Test instructions | Instructions pour tester la modification

load outbreaks wizard, verify against figma

Looks good to me.


Incorrect spacing between watch page buttons

It should look like this:

give me some time please

This, ok? @PANMARSAG14

Yes.

Fixed in v1.9.6


Kotlin 1.5

Will keep this open as a draft until 1.5 stable is released.
Changes:

Remove references to WrappedVariableDescriptor

Blocked by Jetpack Compose support for Kotlin 1.5.0


Add JSON to license of twitter4j-core

Type: Incorrect
Summary:
Add JSON to license of twitter4j-core
Details:
twitter4j-core includes some code under the JSON License. This is acknowledged in the LICENSE.txt file, for example; the full text of the license appears in a few source files. It is relevant that the JSON is widely considered to be a non-open-source license (and thus for example not somehow subsumable into the Apache License 2.0 for purposes of making a reasonably useful license description).
Resolution:
Correct the Declared license to "Apache-2.0 AND JSON"
Affected definitions:

twitter4j-core 4.0.6

Great catch. One thing to note here is that this component was harvested some time ago before all the tools were in place. As a result, the tool-base information is lacking. As I type we are in the process of reprocessing all previously harvested components (including this one).
As such, I'd like to defer merging this until after the component is crawled so we can see if the curation is actually needed. (I'll actually look to queue it earlier so we can review this sooner)

I'm thinking about this some more after looking at https://github.com/clearlydefined/clearlydefined/blob/master/docs/clearly.md#licensed
It's good that ClearlyDefined is attempting to define what a "declared" license means and probably this could be improved and made more detailed. In this case, if the project maintainer had sort of "covered up" the presence of JSON, perhaps "Apache-2.0" would be appropriate for the declared license, but in this version the LICENSE.txt and readme.txt file go out of their way to mention that there's JSON-licensed subcomponents. The pom.xml file license element only mentions Apache-2.0. Depending on how "declared license" ought to be understood, you could make the case that JSON is not part of the declared license. Since ClearlyDefined will presumably disclose the presence of JSON-licensed source files anyway, it may not be problematic from an accuracy perspective to describe the declared license as Apache-2.0.

Thanks for the additional insightful comments/questions @richardfontana. We have tried to make the declared license be that which a normal consumer would see as the "envelope license". For example, the value in the license property of an npm or the license seen in the LICENSE file at the root of a repo. Most users would look at these as "this project is declaring that they are MIT".
The discovered licenses are those which are found/referenced in the random files in the component. The scoring model takes away points if your declared and discovered licenses don't match (at least in the core facet) so projects are encouraged to be inclusive/complete in their declarations.
We did have a discussion about packages that have both an explicit license metadata attribute of some sort and a license file. Which should win. I'd love to hear the opinion of others (and frankly I can't remember what we decided) but it has to go one way or the other.

@jeffmcaffer I am very interested in this concept of the declared license (and the distinction from the discovered license(s)) and it could be something I could be motivated to help with in the context of this project. In brief I think it may be more of a can of worms than you may be assuming. Which is not to say it is not valid as something to try to identify. But I should probably comment further outside of this specific conversation.
In this case, a normal consumer might see the license as Apache-2.0 because they might be inclined to ignore the "fine print" that references the presence of the JSON license and they might be inclined not to do a license scan (or human eyeball equivalent) on all the source code. That was probably the intention of the maintainer; they probably struggled over this issue of whether to sweep the problem under the rug or relegate it to "fine print". (Recent versions of Twitter4J have removed the JSON dependencies. There could be an argument that resources like ClearlyDefined can help motivate maintainers to fix problematic things like this.)
A more careful consumer however would notice that fine print. After all it's right there at the bottom of the LICENSE file, but in a way that no license scanner is likely to be configured to catch. A still more careful consumer would find JSON licensed source files anyway. My main point is just that it's not obvious what the declared license is, because "declared license" is a made-up concept, not having any legal validity, that reflects a real psychological phenomenon in FOSS, a desire to have relatively abstract ways of describing licenses of packages. Anyway I will try to provide further thoughts on this elsewhere.

For better or for worse, other systems like FOSSology have more or less the equivalent concept (https://www.fossology.org/get-started/basic-workflow/#bw5). I agree that some consumers may confuse the Declared license in the same way as they would confuse "envelope" licenses today. ClearlyDefined attempts to highlight that condition subtracting points from the score if the declared licenses do not match the discovered licenses. This is a signal that something is amiss and further investigation is required.
Of course, consumers are free to simply use the discovered license set (it is a list of expressions) as the effective license and ignore the declared license altogether.
In any event, your feedback is great and very much appreciated. Keep it coming in whatever forum you choose.
As it is for this PR, my sense is that your correction stands and is the valid as the license file in the component does mention the JSON license and that was simply not picked up by the tools. Correct?

@richardfontana @jeffmcaffer What would you folks like to do with this curation at this point?

@capfei Can you review this curation for accuracy, and merge if appropriate?


Implement Provisioner Reconciler

Description
Implement Kubernetes cluster provisioning functionality.
Acceptance criteria

[x] Define contract between Mothership and a new Reconciler responsible for Kubernetes cluster operations (documented)

What will be the payloads?

[ ] Implement the new Reconciler that supports the following operations:

[ ] Cluster creation
[ ] Cluster removal
[ ] Cluster upgrade

[ ] Implement shoot reconciler with the following functionalities:

[ ] Configuring Gardener audit logs
[ ] Reacting on configuration changes performed by Gardener

[ ] Enhance Mothership API and data model
[ ] Integrate Mothership with the new Reconciler

[ ] Implement scheduling and invoking cluster provisioning and upgrade operations
[ ] Implement logic for orchestrating Kubernetes cluster operations and Components Reconciler

[ ] Provide developer documentation for the new component

Reasons

Reconciler is not able to provision Kubernetes cluster so the cluster needs to be created by an external system.

We need to consider adding additional options in comparison to the old API, for example, there were requests to provide a way of passing percentage string values for Gardener workers maxSurge and maxUnavailable fields.

Metrics for Provisioning/Deprovisioning should be exposed: https://github.tools.sap/kyma/backlog/issues/1036

We also need to include standard provisioning/deprovisioning metrics and expose them (TBD).

The reconciler should also take into account that some upgrades/changes may be performed on the Shoot CR - this can lead to desynchronization errors. Such cases should be handled.

Work-plan proposal:

[ ] Discuss investigation results with the Reconciler team

Set up the contract between Mothership and Provisioner reconciler

[ ] Prepare stub component/project for the defined API

Create Dockerfile
Create pipelines

[ ] Implement the handlers / logic

We've aligned with the Reconciler team, the idea is to implement Provisioning Reconciler as one of the component reconcilers.
We would like to start with the MVP approach - implement only one functionality, for now, we will proceed with the rest later.
The best start would be to create a provisioning action. We can use some kind of callback URL until Mothership's API allows for kubeconfig upload.

There is the following plan for the MVP:

[] Create a package for operating on Gardener shoots
[] Agree interface with Mothership to be used to deliver kubeconfig
[] Prepare a list of open questions for the next steps

For the MVP it was assumed that:

Mothership API will be enhanced to allow providing Gardener cluster config. There will be a need to enhance Mothership to pass configuration to "Provisioning Reconciler"
"Provisioning Reconciler" will use Gardener kubeconfig mounted to the local filesystem. As a result "Provisioning Reconciler" must be deployed in a separate chart.

The current implementation in Provisioner adds shoot annotations to correlate shoot with a particular Runtime in Compass. There are the following annotations:

compass.provisioner.kyma-project.io/operation-id: {id}
compass.provisioner.kyma-project.io/runtime-id: {id}
kcp.provisioner.kyma-project.io/operation-id: {id}
kcp.provisioner.kyma-project.io/runtime-id: {id}

Operation ID is a Provisioner's operation ID so it will not be valid in the Reconciler context.
There are the following questions to be answered:

Is CorrelationID enough to match shoot with particular reconciler operation? Action metadata doesn't contain any other identifier that can be used to map Reconciler operation to shoot.
How RuntimeID annotation will be added? Currently it contains Compass RuntimeID but

Provisioner have two responsibilities that are not directly connected to Provisioning but need to be implemented as a part of new "Provisioning Reconciler":

Enabling audit logs on Gardener's shoot
Updating cluster configuration in case of shoot modifications performed by the Gardener. Some cluster properties (such as Kubernetes version) may be automatically updated by Gardener. SRE experienced issues with upgrading Gardener clusters with Provisioner in case of modifications performed by Gardener. The issues root cause was the fact that Provisioner's database contained outdated values so that attempt to upgrade shoot failed (e.g. kubernetesVersion in Provisioner's database was older then the actual version installed in the cluster  )

In the current architecture, Hyperscaler Account Pool is implemented in Kyma Environment Broker. We need to consider at some point moving HAP to Provisioning Reconciler.

@akgalwas especially since we are considering introducing VNet-related logic, which, in my opinion, should not be coupled with the provisioning. That would make it 3 different components using Hyperscaler Account Pool logic, definitely material for a separate block.

It was decided that the Reconciler architecture will be modified to be more declarative.
The main assumptions:

Cluster Inventory is a single source of truth
Sub reconcilers fetch data from Cluster Inventory and take actions

Details are covered in the following PR: https://github.com/kyma-project/community/pull/636/files
As a result we abandoned the concept of implementing "Provisioning Reconciler"

With the new approach described in https://github.com/kyma-project/kyma/issues/13759, we will be focusing on the declarative, CRD-based approach described here: https://github.com/kyma-incubator/reconciler/issues/1047.
There will be a follow-up ticket for the implementation.


Update setup guide to include reference_data schema

As per http://snowplowanalytics.com/blog/2014/05/30/snowplow-0.9.4-released-with-updated-looker-models-and-dashboard/#install

Closing as no longer relevant.


C_CPP: Fenwick tree in C++

Description
Description
Fenwick tree in C++
Where is this topic in the roadmap:
Roadmap -> C++ -> Data Structures -> User Defined -> Fenwick Tree
Domain
C/CPP
Type of Contribution
Documentation
Code of Conduct

[X] I follow Contributing Guidelines & Code of conduct of this project.

/assign

@adityaraj079 you can proceed with this

@gunjan-g you can check the pr created

@gunjan-g can you check the pr

@gunjan-g can you check the pr

I have reviewed it already


Pass 'i' flag to regex if !caseSensitive

This may be some low-hanging fruit that will greatly simplify regular expressions.  Rather than specify caseSensitive in the Regexp options, use the configuration settings.  This would allow users to make use of the i flag when writing their expressions.

Where do you think a call to https://github.com/otacke/h5p-essay/blob/master/scripts/essay.js#L899 is missing? Feel free to create a pull request.

Ah, thanks... I missed that.  Is this live on h5p.com?  It doesn't seem to work there.  It is funny because I remember suggesting this patch several years ago.


Mixed Reality Feature Tool crashes after clicking "Discover" button

Using latest Mixed Reality Feature Tool (1.0.2103.2- Beta), I'm able to select the location of my Unity project but the Tool exits without error after I click the "Discover Features" button.
I've tried on fresh projects using Unity v2020.3.0f1 & v2020.2.7f1, same behavior.
Windows 10 Build 19042

@bendrexl, can you look in c:\users<yourname>\AppData\Local\MixedRealityFeatureTool and find the log file? That may point to a cause of the issue.
Thanks!

@bendrexl, can you look in c:\users\AppData\Local\MixedRealityFeatureTool and find the log file? That may point to a cause of the issue.

Thanks! The log doesn't look very helpful, but here it is:
Mixed Reality Feature Tool 1.0.2103.2 [3/20/2021 22:14:35] Loading feature catalog.

@davidkline-ms - I downloaded the latest Feature Tool. It still exits without error, but there's a little more in the log:

Mixed Reality Feature Tool 1.0.2103.3
[3/27/2021 19:47:32] Loading feature catalog.
[3/27/2021 19:47:39] Loading the project manifest.
[3/27/2021 19:47:39] Project manifest successfully loaded.
[3/27/2021 19:47:39] Looking for previously imported features.
[3/27/2021 19:47:39] Found 0 imported features.
Project Unity version 2020.3.0f1

Thanks! That gives me a few things to look at.

Can you try version 1.0.2103.3? That might have more info.

I believe I have a fix that will release in the coming days (1.0.2104.0).

@davidkline-ms , any guess when the next release will be? I'm still running into errors trying to follow the documentation to get MRTK packages installed and configured without the Feature Tool, and the documentation seems to be missing the 'legacy' manual installation steps.

@bendrexl 1.0.2104.0 is available now! https://www.microsoft.com/en-us/download/details.aspx?id=102778

hi @keveleigh I have downloaded the latest update but it's still crashing after pressing discover. here is my log:
Refreshing feature catalog.
ERROR: Failed to get data from Primary.
System.Net.Http.HttpRequestException: The SSL connection could not be established, see inner exception.
---> System.IO.IOException: Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host..
---> System.Net.Sockets.SocketException (10054): An existing connection was forcibly closed by the remote host.
--- End of inner exception stack trace ---
at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThrowException(SocketError error, CancellationToken cancellationToken)
at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.GetResult(Int16 token)
at System.Net.Security.SslStream.g__InternalFillHandshakeBufferAsync|182_0[TIOAdapter](TIOAdapter adap, ValueTask1 task, Int32 minSize)    at System.Net.Security.SslStream.ReceiveBlobAsync[TIOAdapter](TIOAdapter adapter)    at System.Net.Security.SslStream.ForceAuthenticationAsync[TIOAdapter](TIOAdapter adapter, Boolean receiveFirst, Byte[] reAuthenticationData, Boolean isApm)    at System.Net.Http.ConnectHelper.EstablishSslConnectionAsyncCore(Boolean async, Stream stream, SslClientAuthenticationOptions sslOptions, CancellationToken cancellationToken)    --- End of inner exception stack trace ---    at System.Net.Http.ConnectHelper.EstablishSslConnectionAsyncCore(Boolean async, Stream stream, SslClientAuthenticationOptions sslOptions, CancellationToken cancellationToken)    at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)    at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)    at System.Net.Http.HttpConnectionPool.GetHttpConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)    at System.Net.Http.HttpConnectionPool.SendWithRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)    at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)    at System.Net.Http.HttpClient.SendAsyncCore(HttpRequestMessage request, HttpCompletionOption completionOption, Boolean async, Boolean emitTelemetryStartStop, CancellationToken cancellationToken)    at Microsoft.MixedReality.FeatureTool.AzureDevOps.AdoFeed.GetFeedInternalAsync[T](Uri uri, String authenticationToken) in D:\a\1\s\Source\AzureDevOps\AdoFeed.cs:line 165    at Microsoft.MixedReality.FeatureTool.AzureDevOps.AdoFeed.GetFeedAsync(Uri registryUri, Boolean isEarlyAccess, String organization, String projectId, String feedId, String authenticationToken) in D:\a\1\s\Source\AzureDevOps\AdoFeed.cs:line 66    at Microsoft.MixedReality.FeatureTool.Core.FeedManagement.Refresh(FeedConnectionData connectionData, String feedName, FileInfo feedCacheFile) in D:\a\1\s\Source\Core\FeedManagement.cs:line 75 InnerException: System.IO.IOException: Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host..  ---> System.Net.Sockets.SocketException (10054): An existing connection was forcibly closed by the remote host.    --- End of inner exception stack trace ---    at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThrowException(SocketError error, CancellationToken cancellationToken)    at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.GetResult(Int16 token)    at System.Net.Security.SslStream.<FillHandshakeBufferAsync>g__InternalFillHandshakeBufferAsync|182_0[TIOAdapter](TIOAdapter adap, ValueTask1 task, Int32 minSize)
at System.Net.Security.SslStream.ReceiveBlobAsync[TIOAdapter](TIOAdapter adapter)
at System.Net.Security.SslStream.ForceAuthenticationAsync[TIOAdapter](TIOAdapter adapter, Boolean receiveFirst, Byte[] reAuthenticationData, Boolean isApm)
at System.Net.Http.ConnectHelper.EstablishSslConnectionAsyncCore(Boolean async, Stream stream, SslClientAuthenticationOptions sslOptions, CancellationToken cancellationToken)
InnerException:
System.Net.Sockets.SocketException (10054): An existing connection was forcibly closed by the remote host.
[22/04/2021 10:41:41] ERROR: Primary catalog not be refreshed.
System.InvalidOperationException: Feed address appears to contain no data
at Microsoft.MixedReality.FeatureTool.Utilities.FeedData.Refresh() in D:\a\1\s\Source\UI\Windows\MixedRealityFeatureTool\Utilities\FeedData.cs:line 66

Thanks for the update @laufenes. I will investigate and hope to find a solution soon.

Hi. I experienced a the same issue as @bendrexl and managed to "fix" it. It stopped crashing after I deleted the c:\users\AppData\Local\MixedRealityFeatureTool folder.

Hi , is there any new updates regarding the issue? have the same one :(
1.0.2104.4 Beta
Thanks in advance

Hi,is there any new updates regarding the issue?
Best,
Sina

Apparently this issue has not been resolved yet. I am having the same problem. Sometimes won't even open when clicking in the exe. Sometimes it get as far as discovery and then it crashes. I have a good internet connection, the absolute latest version of Windows 10, .net 5 installed, restarted computer but this tool will not work. Hopefully this can be resolved soon. But, given there are certainly a number of people out there who are dealing with this issue (probably many that are too discouraged to bother reporting these issues), can whomever that is in charge modify the official docs to include a clear, concise help file that guides developers on how to manually install the required Unity packages without this clearly buggy tool? Thanks!

@mhussar, we have a fix in flight. Hopefully, will be able to publish a new build soon.

Thanks for your reply. Looking forward to the new build.

This issue should be fixed with v1.0.2111.1-Preview at https://aka.mrfeaturetool (available now)

This site can not be accessed: https://aka.mrfeaturetool/

I went to the original URL: https://www.microsoft.com/en-us/download/details.aspx?id=102778  and downloaded the version you updated but it still is working the same as the previous version. Need to double-click the exe 5-6 times to get it to open.

The link was missing some characters: https://aka.ms/mrfeaturetool, but it sounds like you found it anyway.
@davidkline-ms this may be a different issue! Sometimes crashing on launch as opposed to just after the "Discover" button.

davidkline-ms
I'm running the latest version 1.0.2203.0.Preview and the same exception is being thrown:
https://github.com/microsoft/MixedRealityToolkit-Unity/issues/9533#issuecomment-824700750

Hi, I have the latest version of the feature tool: 'MixedRealityFeatureTool-1.0.2203.0-Preview' and it is still crashing.  I'm using Windows 11 - is that a problem for this tool?

Do we still really need .NET5 for the tool? Would it not work properly with .NET6? When I double-click the exe file to run it (just to have MRTK installed) I am prompted to install .NET5 but when I am taken to the page, there is this warning that this release has reached end of life, meaning it is no longer supported. We recommend moving to a supported release, such as 6.0 Runtime. Is .NET5 strictly required?

Hello guys!, do you know how fix it?, I have the same error, here my log:
Mixed Reality Feature Tool 1.0.2206.1 [19/07/2022 01:08:55 a. m.] Refreshing the Primary catalog. [19/07/2022 01:08:55 a. m.] Reading Primary feed Failed to read Primary feed System.Net.Http.HttpRequestException: The SSL connection could not be established, see inner exception.  ---> System.IO.IOException: Unable to read data from the transport connection: Se ha forzado la interrupción de una conexión existente por el host remoto..  ---> System.Net.Sockets.SocketException (10054): Se ha forzado la interrupción de una conexión existente por el host remoto.    --- End of inner exception stack trace ---    at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThrowException(SocketError error, CancellationToken cancellationToken)    at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.GetResult(Int16 token)    at System.Net.Security.SslStream.<FillHandshakeBufferAsync>g__InternalFillHandshakeBufferAsync|182_0[TIOAdapter](TIOAdapter adap, ValueTask1 task, Int32 minSize)
at System.Net.Security.SslStream.ReceiveBlobAsync[TIOAdapter](TIOAdapter adapter)
at System.Net.Security.SslStream.ForceAuthenticationAsync[TIOAdapter](TIOAdapter adapter, Boolean receiveFirst, Byte[] reAuthenticationData, Boolean isApm)
at System.Net.Http.ConnectHelper.EstablishSslConnectionAsyncCore(Boolean async, Stream stream, SslClientAuthenticationOptions sslOptions, CancellationToken cancellationToken)
--- End of inner exception stack trace ---
at System.Net.Http.ConnectHelper.EstablishSslConnectionAsyncCore(Boolean async, Stream stream, SslClientAuthenticationOptions sslOptions, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.GetHttpConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.SendWithRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
at System.Net.Http.HttpClient.SendAsyncCore(HttpRequestMessage request, HttpCompletionOption completionOption, Boolean async, Boolean emitTelemetryStartStop, CancellationToken cancellationToken)
at Microsoft.MixedReality.FeatureTool.AzureDevOps.AdoFeed.GetFeedInternalAsync[T](Uri uri, NetworkCredential credential)
at Microsoft.MixedReality.FeatureTool.AzureDevOps.AdoFeed.GetFeedAsync(Uri registryUri, Boolean isEarlyAccess, String organization, String projectId, String feedId, NetworkCredential credential)
[19/07/2022 01:08:56 a. m.] ERROR: Primary catalog not be refreshed.
System.InvalidOperationException: Feed address appears to contain no data
at Microsoft.MixedReality.FeatureTool.Utilities.FeedData.Refresh(Boolean updateCache)
[19/07/2022 01:09:02 a. m.] Loading the project manifest.
[19/07/2022 01:09:02 a. m.] Project manifest successfully loaded.
[19/07/2022 01:09:02 a. m.] Looking for previously imported features.
[19/07/2022 01:09:02 a. m.] Found 0 imported features.
Project Unity version 2020.3.36f1
[19/07/2022 01:09:03 a. m.] Refreshing the Primary catalog.
[19/07/2022 01:09:03 a. m.] Reading Primary feed
Failed to read Primary feed
System.Net.Http.HttpRequestException: The SSL connection could not be established, see inner exception.
---> System.IO.IOException: Unable to read data from the transport connection: Se ha forzado la interrupción de una conexión existente por el host remoto..
---> System.Net.Sockets.SocketException (10054): Se ha forzado la interrupción de una conexión existente por el host remoto.
--- End of inner exception stack trace ---
at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThrowException(SocketError error, CancellationToken cancellationToken)
at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.GetResult(Int16 token)
at System.Net.Security.SslStream.g__InternalFillHandshakeBufferAsync|182_0[TIOAdapter](TIOAdapter adap, ValueTask1 task, Int32 minSize)    at System.Net.Security.SslStream.ReceiveBlobAsync[TIOAdapter](TIOAdapter adapter)    at System.Net.Security.SslStream.ForceAuthenticationAsync[TIOAdapter](TIOAdapter adapter, Boolean receiveFirst, Byte[] reAuthenticationData, Boolean isApm)    at System.Net.Http.ConnectHelper.EstablishSslConnectionAsyncCore(Boolean async, Stream stream, SslClientAuthenticationOptions sslOptions, CancellationToken cancellationToken)    --- End of inner exception stack trace ---    at System.Net.Http.ConnectHelper.EstablishSslConnectionAsyncCore(Boolean async, Stream stream, SslClientAuthenticationOptions sslOptions, CancellationToken cancellationToken)    at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)    at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)    at System.Net.Http.HttpConnectionPool.GetHttpConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)    at System.Net.Http.HttpConnectionPool.SendWithRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)    at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)    at System.Net.Http.HttpClient.SendAsyncCore(HttpRequestMessage request, HttpCompletionOption completionOption, Boolean async, Boolean emitTelemetryStartStop, CancellationToken cancellationToken)    at Microsoft.MixedReality.FeatureTool.AzureDevOps.AdoFeed.GetFeedInternalAsync[T](Uri uri, NetworkCredential credential)    at Microsoft.MixedReality.FeatureTool.AzureDevOps.AdoFeed.GetFeedAsync(Uri registryUri, Boolean isEarlyAccess, String organization, String projectId, String feedId, NetworkCredential credential) [19/07/2022 01:09:03 a. m.] ERROR: Primary catalog not be refreshed. System.InvalidOperationException: Feed address appears to contain no data    at Microsoft.MixedReality.FeatureTool.Utilities.FeedData.Refresh(Boolean updateCache)

@RubensTen && @ianklineCTG,
Can you try deleting the settings json file in %userfolder%\AppData\Local\MixedRealityFeatureTool and try again? I have seen a few instances of some bad data causing crashes,
Thanks!

Hey David,
I deleted the settings.json file and ran the tool. This time, instead of crashing I was able to successfully "Discover" the features I wanted and validate them. Now I'm able to see the MRTK features in my Unity project.
Here is my log file of a successful execution
MixedRealityFeatureTool.log
.
Thanks so much for the help! -Ian

I am running into the same issues as the others, but I have no settings json file, and deleting the %userfolder%\AppData\Local\MixedRealityFeatureTool is not solving the issue for me. I also am having issues at times even getting the .exe to open, and when/if it does, I see this error in the logs after the crash:
Mixed Reality Feature Tool 1.0.2209.0
[9/16/2022 4:53:15 PM] Refreshing the Primary catalog.
[9/16/2022 4:53:15 PM] Reading Primary feed
Failed to read Primary feed
System.Net.Http.HttpRequestException: The SSL connection could not be established, see inner exception.
---> System.IO.IOException: Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host..
---> System.Net.Sockets.SocketException (10054): An existing connection was forcibly closed by the remote host.
--- End of inner exception stack trace ---
at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThrowException(SocketError error, CancellationToken cancellationToken)
at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource<System.Int32>.GetResult(Int16 token)
at System.Net.Security.SslStream.g__InternalFillHandshakeBufferAsync|189_0[TIOAdapter](TIOAdapter adap, ValueTask1 task, Int32 minSize)    at System.Net.Security.SslStream.ReceiveBlobAsync[TIOAdapter](TIOAdapter adapter)    at System.Net.Security.SslStream.ForceAuthenticationAsync[TIOAdapter](TIOAdapter adapter, Boolean receiveFirst, Byte[] reAuthenticationData, Boolean isApm)    at System.Net.Http.ConnectHelper.EstablishSslConnectionAsync(SslClientAuthenticationOptions sslOptions, HttpRequestMessage request, Boolean async, Stream stream, CancellationToken cancellationToken)    --- End of inner exception stack trace ---    at System.Net.Http.ConnectHelper.EstablishSslConnectionAsync(SslClientAuthenticationOptions sslOptions, HttpRequestMessage request, Boolean async, Stream stream, CancellationToken cancellationToken)    at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)    at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)    at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(HttpRequestMessage request)    at System.Threading.Tasks.TaskCompletionSourceWithCancellation1.WaitWithCancellationAsync(CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.GetHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
at System.Net.Http.HttpClient.g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken)
at Microsoft.MixedReality.FeatureTool.AzureDevOps.AdoFeed.GetFeedInternalAsync[T](Uri uri, NetworkCredential credential)
at Microsoft.MixedReality.FeatureTool.AzureDevOps.AdoFeed.GetFeedAsync(Uri registryUri, Boolean isEarlyAccess, String organization, String projectId, String feedId, NetworkCredential credential)
[9/16/2022 4:53:16 PM] ERROR: Primary catalog not be refreshed.
System.InvalidOperationException: Feed address appears to contain no data
at Microsoft.MixedReality.FeatureTool.Utilities.FeedData.Refresh(Boolean updateCache)
[9/16/2022 4:53:29 PM] Loading the project manifest.
[9/16/2022 4:53:29 PM] Project manifest successfully loaded.
[9/16/2022 4:53:29 PM] Looking for previously imported features.
[9/16/2022 4:53:29 PM] Found 0 imported features.
Project Unity version 2020.3.39f1
[9/16/2022 4:53:30 PM] Refreshing the Primary catalog.
[9/16/2022 4:53:30 PM] Reading Primary feed
Failed to read Primary feed
System.Net.Http.HttpRequestException: The SSL connection could not be established, see inner exception.
---> System.IO.IOException: Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host..
---> System.Net.Sockets.SocketException (10054): An existing connection was forcibly closed by the remote host.
--- End of inner exception stack trace ---
at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThrowException(SocketError error, CancellationToken cancellationToken)
at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource<System.Int32>.GetResult(Int16 token)
at System.Net.Security.SslStream.g__InternalFillHandshakeBufferAsync|189_0[TIOAdapter](TIOAdapter adap, ValueTask1 task, Int32 minSize)    at System.Net.Security.SslStream.ReceiveBlobAsync[TIOAdapter](TIOAdapter adapter)    at System.Net.Security.SslStream.ForceAuthenticationAsync[TIOAdapter](TIOAdapter adapter, Boolean receiveFirst, Byte[] reAuthenticationData, Boolean isApm)    at System.Net.Http.ConnectHelper.EstablishSslConnectionAsync(SslClientAuthenticationOptions sslOptions, HttpRequestMessage request, Boolean async, Stream stream, CancellationToken cancellationToken)    --- End of inner exception stack trace ---    at System.Net.Http.ConnectHelper.EstablishSslConnectionAsync(SslClientAuthenticationOptions sslOptions, HttpRequestMessage request, Boolean async, Stream stream, CancellationToken cancellationToken)    at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)    at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)    at System.Net.Http.HttpConnectionPool.AddHttp11ConnectionAsync(HttpRequestMessage request)    at System.Threading.Tasks.TaskCompletionSourceWithCancellation1.WaitWithCancellationAsync(CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.GetHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
at System.Net.Http.HttpClient.g__Core|83_0(HttpRequestMessage request, HttpCompletionOption completionOption, CancellationTokenSource cts, Boolean disposeCts, CancellationTokenSource pendingRequestsCts, CancellationToken originalCancellationToken)
at Microsoft.MixedReality.FeatureTool.AzureDevOps.AdoFeed.GetFeedInternalAsync[T](Uri uri, NetworkCredential credential)
at Microsoft.MixedReality.FeatureTool.AzureDevOps.AdoFeed.GetFeedAsync(Uri registryUri, Boolean isEarlyAccess, String organization, String projectId, String feedId, NetworkCredential credential)
[9/16/2022 4:53:30 PM] ERROR: Primary catalog not be refreshed.
System.InvalidOperationException: Feed address appears to contain no data
at Microsoft.MixedReality.FeatureTool.Utilities.FeedData.Refresh(Boolean updateCache)

I put the MixedRealityFeatureTool.exe file in the same folder as my Unity Projects (not the actual project I was selecting) and it worked :) Maybe the problem is running it from your download folder that required user permissions. I tried running as administrator as well but that didn't work. Hopefully this helps :)

Using mobile hotspot solved this issue.


Annotate extra ball events

Currently events in mpf/devices/extra_ball are not annotated. Though, they are missing in the docs.

Is there any documentation for annotation standards for the mpf?

Good point. We need to document that as well probably. The goal of this issue is to add docblock comments such as this one: https://github.com/missionpinball/mpf/blob/dev/mpf/devices/ball_save.py#L162
self.machine.events.post('ball_save_{}grace_period'.format(self.name))
'''event: ball_save(name)_grace_period
desc: The ball save called (name) has just entered its grace period
time.
'''
We parse those comments on readthedocs and show them like this: http://docs.missionpinball.org/en/latest/events/ball_save_name_grace_period.html

Got it. I'll start working on it when I get back home tonight.

Can I get some help merging my changes in? This is my first time contributing to a project on GitHub.

Sure. How can I help? Your workflow should look like this :

Fork the MPF repository on github
Clone your fork (git clone https://github.com/... mpf) and change into directory (cd mpf)
Checkout dev branch (git checkout dev)
Create your own (local) branch (git checkout -b add_doc_blocks_in_extra_ball)
Make your changes
Review your changes (git diff)
Commit all changes locally (git commit -a)
Push your branch to github (git push add_doc_blocks_in_extra_ball)
Go to github.com and click on Create Pull Request
Wait for review and merge from us

That's perfect thanks! I'd left out a couple of those steps when trying to get my changes set up for a pull request yesterday. I'll finish it up tonight.
Also, would the lack of documentation about the event annotations (or annotations in general) be worth opening up an issue for?

I guess that documentation could go here: http://developer.missionpinball.org/en/dev/. If you want you can add it there (using the "edit on github" button) or just create a new issue. Developer documentation actually lives inside the mpf repository while docs.missionpinball.org lives in mpf-docs.

I ended up having to use "git push --set-upstream origin remote" in order to get the branch to push. About to submit the pull request.


SERIALIZE AND DESERIALIZE BINARY TREE

Problem Link
https://leetcode.com/problems/serialize-and-deserialize-binary-tree/
Coding platform
Leetcode
Programming language

[ ] C
[x] C++
[ ] Java
[ ] Python
[ ] JavaScript

hey can someone please tell what dose this 5 tasks/ 10 tasks mean?

hey can someone please tell what dose this 5 tasks/ 10 tasks mean?

@Shubhambawner There are some choices like which language you prefer like C/CPP etc in issues
and same as in PR with relevant choices


Add generic upgrade cost analysis workflow

The upgrade is using PyDSS branch independent-controls-prototype-X, is that ready to merge? If they need this feature soon, then I'll simply approve with this upgrade test failure.


"Certificate not standards compliant" on macOS Catalina, iOS 13

Certificates generated after July 1st, 2019 by versions of mkcert prior to v1.4.0 will not work on macOS 10.15 Catalina and iOS 13. Please update mkcert and regenerate the affected certificates.
The root CA is unaffected and there is no need to rerun mkcert -install.
— @FiloSottile

Under MacOS Catalina Public Beta 2, after installing mkcert via Homebrew and running the root certificate installer, my mkcert generated certificates are rejected in Safari with the message 'Certificate is not standards compliant' and in Chrome with 'ERR_CERT_REVOKED'.

Looks like it's a new limit on maximum lifespan. See https://support.apple.com/en-us/HT210176.

Additionally, all TLS server certificates issued after July 1, 2019 (as indicated in the NotBefore field of the certificate) must follow these guidelines:
TLS server certificates must have a validity period of 825 days or fewer (as expressed in the NotBefore and NotAfter fields of the certificate).

It's surprising they would enforce it on private roots, honestly.
I am mildly tempted to fake the notBefore, but one way or another I need to fix it soon, or a bunch of certificates will be generated that will stop working after updating to Catalina.
BTW, if you try Chrome Canary it should give you a better error message.

I opted to backdate the notBefore until the ACME server is implemented. Once ACME is an option, automation should reduce the need for long lifespans.
@selfagency Please test the latest master (brew install mkcert --HEAD), and let me know. If it works, I'll push a new version ASAP so we can minimize the number of doomed certificates that will get issued.

I've recently had this issue as well. Tried the HEAD install but still get rejected certs. (Just so you know @FiloSottile)

I'm having a same issue with Chrome on MacOS Catalina! Interestingly certificate works on Firefox developer edition 🤷♂
Tried running brew install mkcert --HEAD, but no luck!
➜ brew install mkcert --HEAD --debug
/usr/local/Homebrew/Library/Homebrew/brew.rb (Formulary::FormulaLoader): loading /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/Formula/mkcert.rb
Error: can't modify frozen String
/usr/local/Homebrew/Library/Homebrew/exceptions.rb:475:in `initialize'
/usr/local/Homebrew/Library/Homebrew/formula_installer.rb:86:in `new'
/usr/local/Homebrew/Library/Homebrew/formula_installer.rb:86:in `prevent_build_flags'
/usr/local/Homebrew/Library/Homebrew/cmd/install.rb:134:in `install'
/usr/local/Homebrew/Library/Homebrew/brew.rb:102:in `<main>'

➜ brew --version
Homebrew 2.1.7
Homebrew/homebrew-core (git revision 276f; last commit 2019-07-10)

Why Apple is limiting certs validity to 825(Magic number?) days though? 🤔

Same deal, unfortunately, with the head version.
NET::ERR_CERT_REVOKED
Subject: mkcert development certificate

Issuer: mkcert<EMAIL_ADDRESS>
Expires on: Jul 6, 2029

Current date: Jul 11, 2019

825 comes from the CAB forum bylaws for certificates. All of the major products and CA's follow them.

https://www.sslshopper.com/cab-forum-reduces-max-cert-validity-to-825-days.html
https://cabforum.org/2017/03/17/ballot-193-825-day-certificate-lifetimes/

I'm having a same issue with Chrome on MacOS Catalina public beta 2! Interestingly certificate works on Firefox developer edition 🤷♂
Tried running brew install mkcert --HEAD, but no luck!
➜ brew install mkcert --HEAD --debug
/usr/local/Homebrew/Library/Homebrew/brew.rb (Formulary::FormulaLoader): loading /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/Formula/mkcert.rb
Error: can't modify frozen String
/usr/local/Homebrew/Library/Homebrew/exceptions.rb:475:in `initialize'
/usr/local/Homebrew/Library/Homebrew/formula_installer.rb:86:in `new'
/usr/local/Homebrew/Library/Homebrew/formula_installer.rb:86:in `prevent_build_flags'
/usr/local/Homebrew/Library/Homebrew/cmd/install.rb:134:in `install'
/usr/local/Homebrew/Library/Homebrew/brew.rb:102:in `<main>'

➜ brew --version
Homebrew 2.1.7
Homebrew/homebrew-core (git revision 276f; last commit 2019-07-10)

Why Apple is limiting certs validity to 825(Magic number?) days though? 🤔

Manually compiling from current master using go on MacOS Catalina public beta 2 works on chrome 🎉
brew install go
go get -u github.com/FiloSottile/mkcert
$(go env GOPATH)/bin/mkcert -install
$(go env GOPATH)/bin/mkcert localhost

That works for me on macOS Catalina too.

I'm having a same issue with Chrome on MacOS Catalina public beta 2! Interestingly certificate works on Firefox developer edition 🤷♂
Tried running brew install mkcert --HEAD, but no luck!
➜ brew install mkcert --HEAD --debug
/usr/local/Homebrew/Library/Homebrew/brew.rb (Formulary::FormulaLoader): loading /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/Formula/mkcert.rb
Error: can't modify frozen String
/usr/local/Homebrew/Library/Homebrew/exceptions.rb:475:in `initialize'
/usr/local/Homebrew/Library/Homebrew/formula_installer.rb:86:in `new'
/usr/local/Homebrew/Library/Homebrew/formula_installer.rb:86:in `prevent_build_flags'
/usr/local/Homebrew/Library/Homebrew/cmd/install.rb:134:in `install'
/usr/local/Homebrew/Library/Homebrew/brew.rb:102:in `<main>'

➜ brew --version
Homebrew 2.1.7
Homebrew/homebrew-core (git revision 276f; last commit 2019-07-10)

Why Apple is limiting certs validity to 825(Magic number?) days though? 🤔

Manually compiling from current master using go on MacOS Catalina public beta 2 works on chrome 🎉
brew install go
go get -u github.com/FiloSottile/mkcert
$(go env GOPATH)/bin/mkcert -install
$(go env GOPATH)/bin/mkcert localhost

That works for me on macOS Catalina too.

Feeling anxious to get this into a release. I'll think about how I can test, maybe Parallels  macOS upgraded to Catalina.

If you use APFS, you can install it into its own container. https://www.macworld.com/article/3405588/how-to-install-the-macos-catalina-beta-in-its-own-apfs-container.html
On Jul 31, 2019, 3:27 PM -0400, Randy Fay<EMAIL_ADDRESS>wrote:

Feeling anxious to get this into a release. I'll think about how I can test, maybe Parallels macOS upgraded to Catalina.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

Sadly, I'm unable to verify that latest works on Catalina. I've tried a number of things and have failed at every step.
I built mkcert with go install and then have done everything I could think of to make sure no existing remnants still exist:

Check out https://github.com/FiloSottile/mkcert/commit/2d05f3b4d80da3b20560535ab363ce3d7b3d9fd9 and build with go install
brew unlink mkcert && cp ~/go/bin/mkcert /usr/local/bin`
mkcert -uninstall
rm -rf $(mkcert -CAROOT)
Restart chrome
Explicitly delete old certs that were in Chrome (there were 4 of them)

No matter what I do I end up with a cert that has a 2029 expiration date and is thus "revoked".
I assume there's some cleanup step I've missed. I certainly see the important commit https://github.com/FiloSottile/mkcert/commit/df15e0c1efd3b2f372170e6866cac54df720e724 there.
Suggestions on what I could do differently to verify this?

I confirm this situation with a better test.

Building mkcert master latest commit 2d05f3b  on Catalina (although it doesn't matter where it's built). Clean machine, no other mkcert has ever been installed there.
mkcert junker99
openssl x509 -in junker99.pem -text -noout and note the expiration date is still 2029.

Certificate:
    Data:
        Version: 3 (0x2)
        Serial Number:
            cb:62:fc:d8:82:6a:18:dd:5f:b8:d3:12:1f:48:5d:5b
    Signature Algorithm: sha256WithRSAEncryption
        Issuer: O=mkcert development CA<EMAIL_ADDRESS>CN=mkcert<EMAIL_ADDRESS>        Validity
            Not Before: Jun  1 00:00:00 2019 GMT
            Not After : Aug 14 01:25:38 2029 GMT
        Subject: O=mkcert development certificate<EMAIL_ADDRESS>

I will try to do some debugging to see why the code that looks so good is not getting us to a shorter expiration.

The code wasn't trying to make a shorter expiration, but to backdate the Not Before so the certificate would be exempt. I finally have time and space to install Catalina and will get to testing today or tomorrow.

And... I spent a lot more time with it tonight, and tried the shorter expiration because of the conversation here. But I discovered I had a lot more complex environment than I was remembering. (A linux mkcert in a container was using the root CA created on macOS, which the macOS browser had to trust... but I was still using the old linux mkcert)
Now I can confirm that the code in 2d05f3b does work. I didn't understand at all given the conversation here how we could still be making 10 years work.
I'd rather do the more obvious code in https://github.com/rfay/mkcert/blob/20190813_catalina_shorter_cert/cert.go#L67-L75, as it directly addresses the issue here. I'll make a PR of that if you like it. But I think my earlier testing was flawed due to the complexity of my own environment and the disconcerting fact we are still using a 10 year expiration, which I thought was the issue.

I went ahead and made the PR. We'll see if it's useful. I think it's a more direct approach to this problem. https://github.com/FiloSottile/mkcert/pull/187
Thanks for all your work on this! It means so much to so many of us.

Had to kick macOS to get it to download Catalina, but I managed to test this.
The fix works correctly. Here's a before and after.

I'll make a release tomorrow.
(What didn't work is brew install mkcert --HEAD because Homebrew regrettably removed that very useful feature from its core packages. I will maintain a formula in this repo for these cases.)

Fixed in v1.4.0. https://github.com/FiloSottile/mkcert/releases/tag/v1.4.0

How can I install v1.4.0 before it comes through Brew? Is there some magic command or do I need to take  the build from source road?

You can get binaries from the release page. https://github.com/FiloSottile/mkcert/releases/tag/v1.4.0

Homebrew has 1.4.0 now.

I'm still having issues with this. :-(
If I regenerate certs from scratch, both the root and the leaf have a notBefore of today, and I'm getting NET::ERR_CERT_REVOKED in Chrome.
This is with:
mkcert 1.4.0
Chrome 77.0.3865.120
macOS 10.15.0

I'm still having issues with this. :-(
If I regenerate certs from scratch, both the root and the leaf have a notBefore of today, and I'm getting NET::ERR_CERT_REVOKED in Chrome.
This is with:
mkcert 1.4.0
Chrome 77.0.3865.120
macOS 10.15.0

Reinstalling a few times using Homebrew didn't work. I ended up compiling from scratch. Is it possible the binary 1.4.0 Homebrew distribution has the old version of the code?

AFAIK the Homebrew distribution is the right version. Maybe you had an old version built from source higher in your $PATH?
If you can reproduce this from scratch please open a new issue so we don't lose track of it.

I'm still getting this issue, but it still seems to be an issue for me on the latest version. I have built from the source, but my certs still generate with a expiry date of 12 May 2030.
macOS: 10.15.4
mkcert: v1.4.1-dev

@arimolzer I believe the screenshot here is of the Root Certificate Authority, and not the end-entity/leaf certificates, where this issue becomes an issue.
I.e. if you run:
mkcert localhost <IP_ADDRESS>
openssl x509 -in localhost+1-key.pem -noout -startdate
# -startdate is a libressl (macOS) flag

You should see that this end-entity/leaf certificate, which you would use in your application, are properly back dated.
So far I haven't seen an issue with having Root Certificate Authorities create certificates with start before its creation date; however, I'm sure it's only a matter of time before Apple's security theater becomes more problematic.


Unity 2017.2.0p1-MRTP4 , Unity 2017.2.0b11 crashes in Play mode for Windows Mixed reality(tried with Samsung)!!.

Overview
Crashes on Play mode in Unity 2017.2.0p1-MRTP4  , was working fine previously , but crashes from Dec 7th , when playmode is enabled, with Windows Mixed reality device is connected and Mixed reality Portal is awake !!.
My project was a UWP app, works without crash in Unity 2017.1.2f1 for Hololens support!!.
Expected Behavior
should able to play without crashing!!.
Actual Behavior
Crashes on Play, Windows Mixed reality is connected !!.
Steps to reproduce
(Links to sample github project preferred)
Unity Editor Version
2017.2.0p1-MRTP4   , 2017.2.0b11
Mixed Reality Toolkit Release Version
Master 2017.2.0
attached crash log file!!.
error.log

One thing you can check - make sure 'Window > Holographic Emulation' is turned off. This caused crashes for the immersive headset.

Thank Yu, cre8ivepark , I'll give a try!!.

Closing issues older than 180 days. If this is still an issue, please reactivate with recent information.


Time in loki is scrape time not log time

What's wrong?
Setting this up for first time so probably missing something obvious but i cant get any logs to use the time in the log not the time scrapped. In grafana explore they appear like this

In alloy i have it configured like this
loki.process "add_static_label" {
      forward_to = [loki.write.grafana_loki.receiver]

  stage.regex {
    expression = "(?P<time>\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2},\\d{3}) \\[(?P<code>\\d+)\\] (?P<type>INFO|ERROR) (?P<message>.+)"
  }

  stage.replace {
  source = "time"
  expression = "(?P<time>\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2}),(\\d{3})"
  replace = "{{ regexReplaceAll \",\" .time \".\" }}"
}

  stage.static_labels {
      values = {
        logs = "expressapi",
        env = "production",
      }
  }

  stage.timestamp {
    source = "time"
    location = "Europe/London"
    format = "2006-01-02 15:04:05.000"
}

my log files appear like this
2024-07-04 00:00:17,530 [4] INFO Test log entry
The timestamp is first set in the map as time then i replace the comma for a full stop and save it back as time, have i missed something here. The event log seems fine for entries
ts=2024-07-04T14:50:21.3669977Z level=debug msg="extracted data debug in replace stage" component_path=/ component_id=loki.process.add_static_label component=stage type=replace "extracted data"="map[code:18 filename:C:\test\logs\XpressRegisterChecker_20240212.log message:Test Log entry\r time:2024-02-12 05:51:01.317 type:INFO]"
Steps to reproduce
As above
System information
No response
Software version
No response
Configuration
No response
Logs
No response

Looks like you're trying to have Loki ingesting out-of-order and older logs. Maybe this guide from Loki can help?

I am ingesting older logs but after reading that guide it doesnt seem to be a problem doing this by default. As far as i can see my log timestamps have a comma for milliseconds so i use a replace to change that to a full stop, then set a timestamp block. It appears that this doesnt change the timestamp

It would help if there was a way to see what is actually happening at each stage but the client http://localhost:12345/component/ just repeats whats in the log file, it doesnt actually show me how it processes each stage which would actually be usefull. Live debugging when turned on view the guide doesnt work the service just wont start.

Yep, was premature of me suggesting issue with out-of-order logs since they would be rejected by Loki.

@hainenber no worries, was something i was not aware of so interesting read anyway

Ok some further info. I cleared Loki and Alloy and started fresh with a single log file containing a hundred entries. The log entries that appear do not have the correct timestamp applied. I do see an event log error in windows which states
ts=2024-07-12T09:52:56.9713188Z level=error msg="final error sending batch" component_path=/ component_id=loki.write.grafana_loki component=client host:3100=task02.cardiff.gov.uk status=400 tenant="" error="server returned HTTP status 400 Bad Request (400): entry with timestamp 2024-02-14 00:00:20.549 +0000 UTC ignored, reason: 'entry too far behind, oldest acceptable timestamp is: 2024-07-12T08:52:55Z',"
However i also have this in my loki config
reject_old_samples: false
reject_old_samples_max_age: 43800h
So why does loki think it can only ingest entries from up to an hour ago?
My logs are ordered by time, i am not sure if i need to do something with my alloy config to make sure they are passed to loki in time order, seems that grafan make both so I would hope this is by default.
A sample of the logs
2024-02-14 00:00:20,549 [19] INFO System.Net.Http.HttpClient.signed.LogicalHandler - End processing HTTP request after 34.6075ms - 400
2024-02-14 00:00:20,549 [19] WARN HTTP Status Code: 400
2024-02-14 00:00:20,549 [19] WARN FAIL - {"timestamp":"2024-02-14T00:00:20.542Z","status":400,"error":"Bad Request","message":"Validation failed for object='registerCheckResultRequest'. Error count: 1","validationErrors":["Error on field 'registerCheckMatches[0]': rejected value [], size must be between 1 and 10"]}
2024-02-14 00:00:20,549 [19] INFO XpressRegisterChecker - Adding UnsuccessfulPostResponse: f88ae707-41b4-41c6-8a70-69ba6f019955
It does show that these logs have the SAME timestamp as they occurred at the same time, could that be the problem? If so how am i meant to handle this


Custom converter updates destination only if it's a field

I'm using a custom converter to convert from a String to a custom object.  When I have an object that has a field that uses the custom converter, everything works fine.  However, if I just have a String and I try to convert that into my custom object, my destination object never gets updated, even though my custom converter gets called.  Here's a simplified example:
public class AClass {
    private String customField;
    //getter & setter...
}

public class BClass {
    private CustomObject customField;
    //getter & setter
}

I've implemented a basic custom converter, and since that gets called every time I'll omit it from here.
Now my calling code
AClass a = new AClass();
a.setCustomField("abc123");
BClass b = new BClass();
beanMapper.mapFrom(a, b);
//This updates b.getCustomField()

String str = "abc123";
CustomObject obj  = new CustomObject();
//tried setting obj to null at first but this gives me the following error:
//Request processing failed; nested exception is org.dozer.MappingException: Destination object must not be null
beanMapper.mapFrom(str, obj);
//this does not update obj

Am I doing something wrong or is this an actual bug?

@rsparkyc ; is this still an issue? if so, can you create a github repo, that includes a unit test showing this behaviour and link it here.

@rsparkyc ; any update?

Sorry, it's been years since I touched this, so I'd have to do a lot of digging to reproduce this.  You can probably close this if you want (or try to reproduce yourself)


Session is based on UserID

Not sure how far you want to go with this sample application. I noticed that the session is based on the UserID which would result in all chats sharing the same history.
I've also been playing with Bedrock Chat, and perhaps there's some overlapping functionality which could be integrated.
https://github.com/aws-samples/bedrock-claude-chat
If this is beyond the intended scope of this project, feel free to discard.

Hi @ctodd thanks for you comment. This error is now resolved in the Bedrock implementation by using Lex for sessionId management https://github.com/aws-samples/langchain-agents/tree/main/bedrock . Lex comes with a built-in chat interface accessible through the AWS Console, but you can also create a customer facing interface using one of the many Lex Samples


repository database is incompatible

scenario:

create two kernels (Spark 1.6 and 2.1)
run display() in a notebook using one kernel ( I started with 2.1)
stop kernel and run a display() cell in another (or the same) notebook using the other kernel

Expected behavior
it works!
Actual behavior
An error is raised and the notebook cannot be run.
Caused by: ERROR XSLAN: Database at /Users/patti/pixiedust/notebook/metastore_db has an incompatible format with the current version of the software.  The database was created by or upgraded by version 10.12.

Investigate cause and provide guidance/workaround for local development.
Need to verify if problem occurs on DSX and if so create defect


MFRC522.new blocks when used on Gtk3

I'm trying to use mfrc522 with gtk3 on an RPi 3B+ with raspbian stretch. Code is
require 'gtk3'
require 'mfrc522'

win = Gtk::Window.new
win.window_position = :center
win.border_width = 5

win.signal_connect("destroy") { Gtk.main_quit }

rfid = MFRC522.new

win.show_all
Gtk.main

If I comment rfid = MFRC522.new gtk window is displayed. If I uncomment, execution blocks on rfid = MFRC522.new
mfrc522 code on console (without gtk) to read uid works well

It's a bit weird. I'd an old RPi3 B (Raspbian Jessie) with mfrc522-2.0.0 and it works well! It is also using pi_piper-2.0.0,
To resume;
RPi3 B+ raspbian stretch: mfrc522-2.0.0 pi_piper-2.0.0 works well
RPi3 B   raspbian jessie: mfrc522-2.0.0 pi_piper-2.0.0 it blocks
Any ideas?

How about making them both stretch or jessie?
That could be differences in the OS.
install jessie on 3B+: https://raspberrypi.stackexchange.com/questions/81725/raspbian-8-on-raspberry-pi-3-b

Yes, it's pi_piper's fault. I've reported it to jwhitehorn/pi_piper. In the meanwhile I've mocked mfrc522 so as to call a mfrc522 requests server. In this way it works

Replacing pi_piper with other GPIO library is also an option.
It is easy to do so because only 3 methods, (initialize, read_spi , write_spi), invoke GPIO/SPI operation.

[NOTE: this issue has been solved, please look at the end]
ok, I was doing some testing...
Program is three lines:
require 'gtk3'
require 'pi_piper/bcm2835'
PiPiper::Bcm2835.init
program versions:
ruby 2.3.3p222 (2016-11-21) [arm-linux-gnueabihf]
gtk3-3.3.0 gem
pi_piper-2.0.0 gem (with libbcm2835 1.49 library, see https://github.com/zsyed91/pi_piper)
hardware:
RPi 3B+ Raspbian Stretch
comments:
-This same program works well on RPi 3B (no plus) Raspbian Jessie
if I comment require 'gtk3' it works
if I comment PiPiper::Bcm2835.init it works

segfault log:
test_gtk.rb:15: [BUG] Segmentation fault at 0xe92d000e
ruby 2.3.3p222 (2016-11-21) [arm-linux-gnueabihf]
-- Control frame information -----------------------------------------------
c:0003 p:---- s:0007 e:000006 CFUNC :init
c:0002 p:0032 s:0004 E:001c70 EVAL test_gtk.rb:15 [FINISH]
c:0001 p:0000 s:0002 E:001420 (none) [FINISH]
-- Ruby level backtrace information ----------------------------------------
test_gtk.rb:15:in ' test_gtk.rb:15:in init'
-- Other runtime information -----------------------------------------------
Loaded script: test_gtk.rb

Loaded features:

0 enumerator.so
1 thread.rb
2 rational.so
3 complex.so
4 /usr/lib/arm-linux-gnueabihf/ruby/2.3.0/enc/encdb.so
5 /usr/lib/arm-linux-gnueabihf/ruby/2.3.0/enc/trans/transdb.so
6 /usr/lib/ruby/2.3.0/unicode_normalize.rb
7 /usr/lib/arm-linux-gnueabihf/ruby/2.3.0/rbconfig.rb
...
143 /var/lib/gems/2.3.0/gems/ffi-1.9.25/lib/ffi/callback.rb
144 /var/lib/gems/2.3.0/gems/ffi-1.9.25/lib/ffi/io.rb
145 /var/lib/gems/2.3.0/gems/ffi-1.9.25/lib/ffi/autopointer.rb
146 /var/lib/gems/2.3.0/gems/ffi-1.9.25/lib/ffi/variadic.rb
147 /var/lib/gems/2.3.0/gems/ffi-1.9.25/lib/ffi/enum.rb
148 /var/lib/gems/2.3.0/gems/ffi-1.9.25/lib/ffi/ffi.rb
149 /var/lib/gems/2.3.0/gems/ffi-1.9.25/lib/ffi.rb
150 /var/lib/gems/2.3.0/gems/pi_piper-2.0.0/lib/pi_piper/bcm2835.rb

Process memory map:

00010000-00011000 r-xp 00000000 b3:02 147846 /usr/bin/ruby2.3
00020000-00021000 r--p 00000000 b3:02 147846 /usr/bin/ruby2.3
00021000-00022000 rw-p 00001000 b3:02 147846 /usr/bin/ruby2.3
01303000-01c01000 rw-p 00000000 00:00 0 [heap]
74fa1000-74fbe000 r-xp 00000000 b3:02 265396 /var/lib/gems/2.3.0/gems/ffi-1.9.25/lib/ffi_c.so
...
76f1b000-76f1c000 rw-p 00021000 b3:02 395 /lib/arm-linux-gnueabihf/ld-2.24.so
7e5c0000-7edbf000 rw-p 00000000 00:00 0 [stack]
7ef03000-7ef04000 r-xp 00000000 00:00 0 [sigpage]
7ef04000-7ef05000 r--p 00000000 00:00 0 [vvar]
7ef05000-7ef06000 r-xp 00000000 00:00 0 [vdso]
ffff0000-ffff1000 r-xp 00000000 00:00 0 [vectors]
[NOTE]
You may have encountered a bug in the Ruby interpreter or extension libraries.
Bug reports are welcome.
For details: http://www.ruby-lang.org/bugreport.html
[SOLVED]
In the end I've found the culprit...: neither gtk3, nor pi_piper..., but ruby interpreter ruby 2.3.3p222 (2016-11-21) [arm-linux-gnueabihf]
This is unfortunate because this ruby version is the one which gets installed with sudo apt-get install ruby on RPi Raspbian Stretch. Notice that Raspbian Jessie installs ruby 2.1 and the bug doesn't appear
Conclusion: using rvm with ruby 2.5 should be strongly recommended. You can close the ticket. Thanks for your attention

The last time I tested this gem, I was using ruby 2.3 that comes from Raspbian Stretch on RPi 3(no plus).
I thought it was Raspbian Stretch 2017-11-29.

Which one? gtk3, pi_piper? It's the combination of gtk3 and PiPiper::Bcm2835.init on ruby 2.3.3p222 (2016-11-21) [arm-linux-gnueabihf] which makes the bug arise (and the culprit is the ruby interpreter. It works perfectly well on ruby 2.5

OK, I forgot I only used terminal to test it. It's not related to this issue.
I'll add a notice for those who want to use with GUI in the readme file.

reported as a bug: https://bugs.launchpad.net/raspbian/+bug/1803538


Mry/email

This PR does ...
Changes

Adds support for multiple transports
Adds support for email transport (link is not working)
Adds support for prime-data-hub web page

Checklist

[X] Tested locally?
[X] Added new dependencies?
[X] Updated the docs?
[ ] Added a test?
[X] Did you check for sensitive data, and remove any?
[ ] Are additional approvals needed for this change?
[ ] Are there potential vulnerabilities or licensing issues with any new dependencies introduced?

Fixes

#issue

To Be Done

Need to retrieve the file by id

Dropping in favor of some smaller requests


More Extensible Checkers

Pass options into ConnectionCheck and allow implentation of Checker by external packages
My use-case here is that I wanted to use the connection checker to run against known room connection configurations.
In this process, I also wanted to test publishing without running a getMedia, which required extending the Checker abstract class, which is currently not exported by the package

 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.

Is there a good way for me to test this locally prior to merge?

you can directly link the package locally to a project consuming it.
assuming you use pnpm, the most robust would be to

pnpm build the livekit client packages
set pnpm: { overrides: { livekit-client: link:./relative/path/to/client-sdk-js } } in the package.json and install with pnpm install


RL: controlling multiple simulation instances

Hi all,
I'm working on an updated gym wrapper for bluesky, in order to use the simulator in RL experiments. So far I'm able to import from python and step through a single simulation by sending stack commands, but I'm wondering if you have any examples of how we might setup and step through multiple simulation instances in parallel? This is all without the GUI, as I only need to send actions to an aircraft and retrieve state information.
I've seen the docs for ADDNODES, which seems to be implementing what I want - the ability to launch separate simulation instances. What would be the best way to connect to these additional simulation environments and send them stack commands individually from a python script? Do I need to initialize separate Client() instances with different ports for each simulation instance I want to access? Ideally we'd like to follow the gym paradigm and just have each gym environment represent a single class instance with access to it's own bluesky simulation node.
Any help is greatly appreciated, and thanks for all your work on this project! Do let me know if I can provide more information or clarify anything.

Hi @echen-aurora, you can in principle do this with only one Client. You can switch between nodes with Client.actnode() and then use the regular stack.stack(), or directly send stack commands to individual nodes using Client.send_event(b'STACK', cmd, target=...).


add check to set is-loading on submitted button

Task: task-834886
Currently if there is more than one submit button on a form (Q&A answer rating and Q&A moderator edit forms for example), when one submit button is clicked, they both display is-loading class, which is confusing to users. This PR adds a check to setBusySubmitButton to check for the submitter button to add is-loading class to that button and disabled status to the remaining submit buttons.
Testing
This is how I tested this on the Q&A site:

git checkout main; git pull; git checkout nmarshall/qna-update-setbusysubmitbutton; npm run build:js
Copy the js/dist folder
In docs-ui, delete the existing node_modules/@microsoft/atlas-js/dist folder
Note: you may need to run `git clean -fxd; npm i; then do the above step
npm run dev and go to Q&A https://learn-microsoft-com.local/en-us/answers/questions/
Test various forms, below I've listed Q&A form examples, but please test elsewhere too

Ask a question/add answer/add comment/follow/etc. -- Should be no change
Editing as a moderator, which has two buttons -- The clicked button should have is-loading, the other should be disabled
On your own question with answers from others (feel free to ping me if you need answers), rate Yes or No on the answer rating form -- The clicked button should have is-loading, the other should be disabled

Contributor checklist

[X] Did you update the description of this pull request with a review link and test steps?
[X] Did you submit a changeset? Changesets are required for all code changes.
[X] Does your pull request implement complex UI logic (js/ts)? Consider adding an integration test to test your user flow.
[ ] Does your pull request add a new page to the documentation site? Add your new page for automated accessibility testing in /integration/tests/accessibility.

@disimmon @jdanyow @homing1 Could you take a look at this and let me know what you think :)


Yay! Close PO Infra position.

Signed-off-by: Eduard Itrich<EMAIL_ADDRESS>

Looks great. And great achievement!


Ability to specify percentiles you need for response time chart

Is your feature request related to a problem? Please describe.

The software I'm currently testing by locust requires 98% < 1.0 sec and 99.5 % < 2.0 sec response time performance. The performance requirement will vary based on software or project etc.. It would be better that percentiles on performance char is configurable not only median and 95% percentile.
Benefit of having this function on chart page is,  we can see necessary percentile info in response time chart dynamically every minutes.
Describe the solution you'd like

Ideal solution would be to add new command line argument like attachment. If the parameters are not specified, default value median and 95% are used
locust -f locust.py --percentile1 0.8 --percentile2 0.99

then displays like this

Performance chart

report page

Describe alternatives you've considered

applying to stats page is alternatives, but it's overall percentiles not time series

Additional context

I have updated locust for the ability on my local repo folked from orignal.

Sounds reasonably useful. I’d prefer —percentiles 0.8,0.99 as the parameter style though. PR welcome.

Note that for csv reports you can overwrite locust.stats.PERCENTILES_TO_REPORT https://docs.locust.io/en/stable/configuration.html#customization-of-statistics-settings

Thank you for the reply. I'll take this style "--percentiles 0.8,0.99" and will send PR.


Off-chain workers docs

@joepetrowski  @JoshOrndorff  @riusricardo
I am done with my doc on off-chain worker. Conceptual part is mostly from v1 as it is still relevant. There are still some stuff in development part I am missing I need to further explore. They are commented at the end (they are not visible in the website) But see if the current content is good enough to publish and do some good.
Please make improvement on my grammar.
Thanks.

@JoshOrndorff

I wonder if it would be better as a recipe or tutorial? @jimmychu0807 I would love to have your price-fetching example as part of the recipes.

I am updating the guide now. I will later add an additional chapter in  recipe with the price-fetching example.

@JoshOrndorff I have incorporated all comments except the one about removing the full path name of files. I am not sure what the best solution is. The current path name give readers most context where to add the code.

This is really close, just a few changes to make first. A couple image updates:

@joepetrowski  I end up unified using image with dotted red line. For v1 off-chain workers doc, I am keeping the original image as I am not sure if it was designed like that before. For v2, I have updated based on your feedback.


LCP: Do not require the presence of a hint link in a license

The LCP specification requires the presence of a link with hint relation in a license document. This used to be enforced in the Swift toolkit which blocked opening the license when it was missing.
Instead, we want to allow opening invalid licenses (as long as the signature matches of course) and leave the validation to the server certification.

The background of this decision is that even if such missing link is an annoyance for the user (he has no way to recover his passphrase), this is not invalidation the core functioning of the license. Client devices should be considered like browsers: they "show" can the can.
This missing link must be trapped when the LCP service is tested at the time of certification.


[tensorflow] update to <2.12.0>

Library name
tensorflow
New version number
2.12.0
Other information that may be useful (release notes, etc...)
It is important to be able to access models, older versions will fail on new models.
Thank you so much!

ATM the tensorflow ports in a bad shape with regard to windows suport, patched but not building in CI. I'm currently looking at fixing at least tensorflow for windows CI, and would try an update after that.
(Past port updates without CI coverage contributed to the problems.)

I could use this on mac m2/intel as well.

Tensorflow is very much out of date, with 2.18.0 coming soon.

Maybe most of us would be happy with tensorflow lite (for shipping software), and could do the machine learning using the distribution's packaging.

There's a cmake build system for tensorflow lite.