Allow the host to be stopped and started again

1. Host stop procedure
The application can stop the host by calling ble_hs_stop().  Stopping the host has the following effects:

Abort all active GAP procedures with status BLE_HS_EPREEMPTED.
Disallow any subsequent GAP procedures until the host is started again.
Terminate all established connections.

If multiple clients attempt to stop the host simultaneously, all of their provided callbacks are executed when the host stops.  The purpose of this behavior is to guarantee a consistent shutdown procedure.
2. Perform stop on system shutdown (Mynewt only)
This PR also configures the host package with a pkg.down shutdown callback.  This causes a system shutdown to trigger a host stop procedure.  This is a Mynewt only feature, so I enclosed this code in #if MYNEWT / #endif.  If we want to extend this to other OSes, we would need to add some additional definition to NPL (please let me know if this sounds like something we should do).  The auto-stop on shutdown behavior can be disabled by setting the BLE_HS_STOP_ON_SHUTDOWN syscfg setting to 0.
This feature requires updated versions of core and newt:

https://github.com/apache/mynewt-core/pull/1447
https://github.com/apache/mynewt-newt/pull/218

Notes
The code in this PR is pretty ugly.  I particularly dislike the requirement for multiple stop callbacks.  I couldn't think of another way to solve the problem of a system shutdown occurring while a manual stop procedure was already in progress.  The system shutdown code needs to be notified when the stop procedure is complete, regardless of who initiated the procedure, hence the need for multiple callbacks.  Anyway, I will not take offense if the reviewer(s) has lots of change requests.

NOTE: The travis builds are failing because it depends on the referenced apache-mynewt-core PR.

Thanks for reviewing, @rymanluk.  I pushed two of the requested changes as separate commits with the intent to fixup before merging.  As I mentioned, I did not make any changes to the ble_hs_sync_state comparison, but let me know if you think this should also be changed.

Note: The RIOT builds are failing because the nimble package makefile lacks an entry for ble_hs_stop.c.  I have submitted a PR to fix this:


Update sbt-mdoc to 2.2.20

Updates org.scalameta:sbt-mdoc from 2.0.3 to 2.2.20.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.scalameta", artifactId = "sbt-mdoc" } ]

labels: sbt-plugin-update, semver-minor

Superseded by #77.


Sharing crashes on iPad

I'm creating an iPad app where I am trying to share an image.  Here is my code:
if(objSocial.isActivityViewSupported()){
	DebugPrint('Share Current Image (4.1) - Sharing supported - so far so good');
	DebugPrint('Share Current Image (4.1) - sImage='+sImage);

  objSocial.activityPopover({
      text: "Share Image"
      ,subject: "Share Image"
      ,image:sImage
      //removeIcons:"print,sms,copy,contact,camera,mail",
      ,view: btnShare //source button imgShare
  });

} else {
//implement fallback sharing..
DebugPrint('Share Current Image (4.2) - sharing failed');
}
The error I get when I run this is the following:
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[TiUIButtonProxy _viewForPresenting]: unrecognized selector sent to instance 0x13e0ac000'
I have tried using a button as the "view" parameter as well as an ImageView.  Both give me the same error.
I am using SDK 5.0.2 on an iPad only app.  Thanks!

@christianrockbryan I am also getting this error on iPad 2 did you make any progress?

Unfortunately no.  I haven't tried it again since posting here, but I also have not heard any response on it.

Ok thanks yes its definately crashing on a iPad Air 2 with the follow code.
var Social = require('dk.napp.social');
if (Social.isActivityViewSupported()) {
    if (Ti.Platform.osname == "ipad") {

        Social.activityPopover({
            view: $.openIpad,
            text: address,
            url: "http://example.com"
        });
    }
} else {

}

Ive also posted here
https://community.appcelerator.com/topic/4005/dk-napp-social-social-crashing-on-ipad-air-2-cant-find-a-appcelerator-sharing-widget-that-works-for-all-ios-platforms
Hope someone can suggest a fix.
@christianrockbryan what was your solution did you use something else?

There are several issues open for this:
https://github.com/viezel/TiSocial.Framework/issues/148
https://github.com/viezel/TiSocial.Framework/issues/149
https://github.com/viezel/TiSocial.Framework/issues/153
@viezel a solution for that would be really nice. Or did you stopped working on that completely?

Im not working on it. I believe Appc should step up and implement Social and Account Framework into the core.

Thanks

@christianrockbryan Please check the latest v1.8.4 update. @viezel, can you also update the releases section?

Yes, 1.8.4 fixed the problem.  Thank you!


log_file param not working

I am trying to use the log_file param (as seen on line 97 config.h)  but it seems to not work: no log is output to the file (the file is not even created).
However, the model is trained successfully. I end up with the model file only.
Here is my train.conf:
task=train
application=regression
data="lgbm_train.csv"
valid="lgbm_val.csv"
num_iterations=10
early_stopping_rounds=10
learning_rate=0.1
num_leaves=127
tree_learner=serial
num_threads=2
histogram_pool_size=-1
min_data_in_leaf=100
min_sum_hessian_in_leaf=10
feature_fraction=1
feature_fraction_seed=2
bagging_fraction=1
bagging_freq=0
bagging_seed=3
max_bin=255
data_random_seed=1
data_has_label=true
output_model="lgbm_model.txt"
log_file="lgbm_log.txt"
is_sigmoid=true
is_pre_partition=false
is_sparse=true
two_round=false
save_binary=false
sigmoid=1
is_unbalance=false
max_position=20
label_gain=0,1,3,7,15,31,63
metric=l2
metric_freq=1
is_training_metric=true
ndcg_at=1,2,3,4,5
num_machines=1
local_listen_port=12400
time_out=120

Using commit: 1aefcd8a05419ab26e19d34e71c44f0c026e7ce3 (does not work on commit d365762873dac80b9cae7211373f1549a603e328 also)
Operating System: Windows 8.1

I have looked for extra calls when log_file is present, but did not find any in the source code (except in config.cpp). Is it because it is not yet implemented?

@Laurae2  we don't provide the log_file function now, this parameter is dump, i will remove it soon.
You can use Redirect instead.

@guolinke , perhaps we should adding the function back rather than delete it

I still think we don't need the log file. Redirect can solve most of these problems.
If you still need it, please free feel to reopen.


Click on free space in slick-dots li jumping to wrong page

Hi!
I'm using slick with some css tweaks and can't understand whats wrong.
Look at example:
http://jsfiddle.net/6dambjrz/1/
When i click to near dots then slide go to wrong page:

http://jsfiddle.net/xs87r5La/1/
Please check the fiddle, and confirm it's working as you expect, @UksusoFF.
If so I'll merge in to master and it will be on 1.5.3 whenever it's ready :smile:

Yes, works as expect! Thanks!

Cool, it's merged in to master, you can grab that for now, or wait for 1.5.3 and the minified version :)


Update translation strings as of 20201102T140138

Please do not manually merge this pull request.  It will either be automatically merged or withdrawn.

yarn run v1.22.4
$ eslint .
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.


kernel: Rename x86 config and add kernel config for ppc64le

Fixes: #57
Signed-off-by: Nitesh Konkar<EMAIL_ADDRESS>

Hi @nitkon - thanks for raising. I think you need to git mv the file though as this currently just adds another copy of the file.

@jodh-intel : Fixed. But I think this should not be merged until the dev-guide is updated. Also, for now, is kernel version "4.14.x" expected? Or we should make that a variable as well.

Hi @nitkon - makes sense. The way we normally handle dependent issues like this is to just ask for both PRs to land together. Hence, if you'd like to raise a PR to update the dev guide, we'll land that one and this one at the same time to avoid confusion and ensure consistency.
Regarding 4.14, yes that is expected since it conforms to our documented process whereby we support the newest longterm kernel:

https://github.com/kata-containers/documentation/blob/master/Upgrading.md#guest-kernel

Processes can changed of course, but the ideal would be that we'd support 4.14 (since that is the newest on https://www.kernel.org/ currently) on all the architectures. If that's going to be problematic, we'll have to think about the best approach.
Could you try 4.14 on ppc64le and report back?
@Pennyzct - does 4.14 work with ARM64?

@jodh-intel we have tested kata container with 4.14, 4.15, 4.16 and 4.17-rc3 on Arm64. All these kernels can work properly.

@jodh-intel : I tried with 4.14.x kernel and kata works fine with it on ppc64le.
# uname -a
Linux llmtul01b 4.4.0-119-generic #143-Ubuntu SMP Mon Apr 2 16:08:02 UTC 2018 ppc64le ppc64le ppc64le GNU/Linux
# docker run -it --runtime kata-runtime busybox /bin/sh
/ # uname -a
Linux fb711a9c4904 4.14.48 #1 SMP Fri Jun 8 17:11:01 IST 2018 ppc64le GNU/Linux
/ # ls
bin    dev    etc    home   lib    lib64  proc   root   sys    tmp    usr    var

@jodh-intel @Weichen81 : The following instruction is also x86 specific.
$ sudo install -o root -g root -m 0755 -D "$(realpath arch/${kernel_arch}/boot/bzImage)" "${kata_vmlinuz}"

As there is no ${kernel_arch}/boot/bzImage for ppc64le. We have just
$ sudo install -o root -g root -m 0755 -D "$(realpath ./vmlinux)" "${kata_vmlinuz}"

What is the case for ARM64? Any ideas how do we make this command arch-sensitive?

We'll need to make the packaging repo clone https://github.com/kata-containers/tests so that it can run the https://github.com/kata-containers/tests/blob/master/.ci/kata-arch.sh script as "kata-arch.sh --kernel".
The standard way the other repos CI scripts work is .ci/setup.sh calls clone_tests_repo (see
https://github.com/kata-containers/runtime/blob/master/.ci/setup.sh and https://github.com/kata-containers/runtime/blob/master/.ci/lib.sh for example). However, I see that we have https://github.com/kata-containers/packaging/blob/master/scripts/pkglib.sh in this repo so I'd be tempted to add a clone_tests_repo to pkglib.sh and then make https://github.com/kata-containers/packaging/blob/master/kernel/update.sh source pkglib.sh and call clone_tests_repo. It will then be able to run $GOPATH/src/github.com/kata-containers/tests/.ci/kata-arch.sh.
wdyt @jcvenegas, @grahamwhaley?

@jodh-intel : My question was more towards, how do we treat this arch-specific kernel path  ${kernel_arch}/boot/bzImage ? For ppc64le we would have ./vmlinux  and probably something else for ARM64?

@jodh-intel : I have sent a PR for updating the Developer-Guide and sent a PR for kernel config for ppc64le (as per my current understanding which works on ppc64le, can be optimized later with more in-depth analysis)

@jodh-intel : Can this PR land now, as this PR got merged.

Hi @nitkon - we need another ack but...
lgtm

/me notices that the Jenkins build is running, but I don't think the PR has changed recently - @chavafg - with that Jenkins reconfig yesterday, we might want to check/ensure that it is set to trigger/build only on PR commit changes, and not on PR comment updates (I believe that is an option in the Jenkins plugin, and may be the default...)

CI failed - relevant fragment looks like:
Step 5/12 : RUN zypper -n install osc-plugin-install vim curl bsdtar git sudo pcre-tools
 ---> Running in e9a9eb28d7e0
Retrieving repository 'NON OSS' metadata [..........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................Build timed out (after 11 minutes). Marking the build as aborted.
Build was aborted

/cc @chavafg
@nitkon - we are having a few CI instabilities right now - so, I don't think this is a problem with your PR :-) - we'll just have to wait for the CI to settle down ...

@jcvenegas any idea of this zypper timeout?

@chavafg  I will take a look now, if this is not a blocker go ahead and merge it ( today the CI does not test any change on kernel config.
Does this change not need update the ci installation scripts to use this new config name?

@jodh-intel @grahamwhaley : I guess this can be merged now. :-)

Hi @nitkon - I think @jcvenegas is asking if there needs to be an update in the update.sh file as well to match the x86 config file rename. I'm not sure - anybody?

@grahamwhaley : Ahh, let me check on that..

@jcvenegas , @grahamwhaley  Raised this PR.

@jodh-intel @grahamwhaley : Updated my PR as per the review.

lgtm, I can update update.sh as follow up PR.

@jcvenegas : I have updated this PR with a commit for update.sh already. Can you please take a look. Thanks!

@jodh-intel : Sent an updated PR. Lets try to get this PR landed .

I see a green button...!


Added 'strict' mode which requires all requests on cassette to play in order

Feedback appreciated.

@chrisrichard This is a great idea. Any chance to resolve the conflicts?

I'm eager to see this added to PHP-VCR, so I made a PR on this one to fix the conflicts: https://github.com/ratehub/php-vcr/pull/1
Hope it helps


fix(TDI-38459): remove INT64 and binary types form azure filter table

What is the current behavior? (You can also link to an open issue here)
https://jira.talendforge.org/browse/TDI-38459
What is the new behavior?
we removed the int64 and binary types from azure filter table. those types are not used
Please check if the PR fulfills these requirements

[x] The commit message follows Talend standard
[x] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features) ?
[ ] The code coverage on new code >75%
[ ] The new code does not introduce new technical issues (sonar / eslint)

What kind of change does this PR introduce?

[x] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build / CI related changes
[ ] Other... Please describe:

Does this PR introduce a breaking change?

[ ] Yes
[x] No

If this PR contains a breaking change, please describe the impact and migration path for existing applications: ...
Other information:

Pull request test result: success :star:


drivers: display: ili9xxx: support display_read

Add support for ILI9xxx display reads. This feature is opt-in, as the bit shifting required results in a very slow performance. It is primarily useful for testing, and was implemented to verify the mipi command read support present in #64587, and therefore contains the commits from that PR. This will be kept as a draft until that RFC merges.

Updated PR to use HWMv2 identifier for RT685 EVK, and rebased onto latest main


Add support for Principled BSDF Node

This was brought up in #57, but the state of things was primitive then and the issue got closed.  A couple of key things have changed in the time since that issue was closed:

Blender 2.79 had a stable release last month, adding a new built-in node called the Principled BSDF Node.  In this release, it's connected to the Cycles rendering engine (a non-realtime rendering engine).

Blender 2.8 preview builds (tested Oct 2017), no longer include a custom "Eevee node" as they did last summer.  Instead, Eevee's realtime PBR rendering is connected to the Principled BSDF node in the latest builds.  In the Oct 5 build for example, the user can directly toggle between the Cycles and Eevee rendering engines, and their PBR setup applies to both, so they can quickly compare render results between the two, using the same node.

From this I think it's clear that the Principled BSDF node is being groomed to become to be the standard path for getting PBR inputs into Blender's various engines.  Even if the Blender 2.8 API that eventually gets released is incompatible with the API present today, the Principled BSDF node is already present and stable in 2.79, and represents the future of PBR inside Blender.
In light of that, it's important for the Blender exporter to be able to make use of any applicable inputs to the Blender 2.79 Principled BSDF node.

Things are getting even simpler from a user experience point of view than I expected in #57 then...
The principled node is easy to use to define a large range of materials (puts to shame the classical diffuse/glossy/mix setup you'll find in many tutorials, and metalness is literally a slider away).
What you describe would provide a simple path in 2.79 to design models in cycles (using classical or incremental rendering) and export them to glTF2 without tweaking the materials or using glTF-specific ones (compare with the existing Sketchfab or glTF export path, with both require specific materials).

I would like to strengthen @oparisy point from a users perspective, the BSDF node will be widely used and is a great chance to make it possible to translate materials from one engine to another.
As said, it would make it possible to work without the glTF specifc materials, which i think is extremely valuable especially people who just want to export a model from blender and have very little knowledge about the node system.
i would offer to contribute, if this will be implemented.

One pitfall here is that the Principled BSDF node is very different from glTF's core parameters.  Blender's node has a lot of things that don't translate, such as Subsurface, Anisotropic, Sheen, ClearCoat, and IOR settings.  Those can be documented as being ignored, of course.
The more interesting problem is how to control glTF's settings that aren't represented by the BSDF node.  Of course Base Color, Metallic, and Roughness could be made to work, but there are additional options in glTF that need representation in Blender.  The occlusion map for example: Blender can bake these manually, but how does the user let the exporter know where to find the baked occlusion?  The emission map is more straightforward, the exporter could look for the emission Blender node, which is separate from the Principled BSDF node, but presumably could still be located in the node graph and used.  The normal map also presents a challenge, as Blender takes a vector channel there, but glTF wants a tangent-space raster image.  Then there's the question of what to do with alpha information, which again can be affected by additional nodes in the graph apart from the BSDF node.
Even with these questions, a basic hookup of base color, metal, and rough would go a long way towards making this export work out-of-the-box with existing Blender scenes, without linking in a custom node wireup.

As I mentioned in other opportunities, from Godot Engine we would like to obtain the whole Blender graph connected to the Principled BSDF node. For a game engine, converting this to a local shader format is really easy.

For Blender 2.78, I "used" to have a GLSL shader generator fro the Cycles node tree:
https://github.com/McNopper/Vulkan/tree/master/VKTS_Exporter/Blender/addons/io_scene_vkts

@UX3D-nopper GLSL is mostly useless for a game engine IMO, most engines have their own shader languages, or versions of existing shader languages adapted to only replace a bit of the actual shader and custom outputs.
This is why i think the best is to simply export the nodes as nodes and let an engine importer handle it.

Unless you are using the Blender Cycles node system as the engines shader language.

@UX3D-kress not really, its very easy to convert a node graph to a specific shader language. It's a lot more difficult or impossible to convert an existing shader from an engine to another.

The occlusion map for example: Blender can bake these manually, but how does the user let the exporter know where to find the baked occlusion?

From EEVEE FAQ, either the Principled BSDF node or Output node will eventually have AO. I think we can omit it for now, or look for a disconnected Ambient Occlusion node. Cycles does not have ambient light.

The emission map is more straightforward, the exporter could look for the emission Blender node, which is separate from the Principled BSDF node, but presumably could still be located in the node graph and used. The normal map also presents a challenge, as Blender takes a vector channel there, but glTF wants a tangent-space raster image.

Will probably want to look for something like this:

Where metallicRoughnessPBR should be the Principled BSDF node.

I like where this is going.  The normal map appears to be much less an issue than I thought, the converter can look for Blender's Normal-map node, and if needed warn the user that it can only export when set to tangent space.  Emission can be found that way too, and if the Blender devs go ahead with adding an input for the baked occlusion map, then we basically have all the inputs we need to fill out a glTF core material.
I wonder what we can do to lower the barrier even further from here.  Getting rid of the need to import a custom node graph into your Blender scene is a great start, but it still feels like we're asking the user to set up a fairly specific node graph of their own.  Perhaps the glTF plugin could add a button or menu option to the UI, "New glTF Material..." or "Convert to glTF Material..." or some such, that would build out a node tree similar to above, including texture inputs for the supported channels.
In Blender, anywhere a texture can be supplied to a node, you can also disconnect the texture node and just put a solid color there instead.  The exporter could look for this and make use of the factors (baseColorFactor etc) to apply the solid color or constant value.

I like the ideas here and I'm much interested in progress on this topic.
Here's my initial version that exports principled shader based materials. Consider it heavy WIP and feel free to test/give feedback:
https://github.com/Roomle/glTF-Blender-Exporter/tree/principled_export

Hi @atteneder, thanks, we'll take a look! Note that we are in the process of merging this exporter with an importer and future development on the Principled BSDF node will be tracked here: https://github.com/KhronosGroup/glTF-Blender-IO/issues/5

Hi @donmccurdy,
yeah, I noticed just yesterday. Sounds promising...too bad it's not ready yet. My code isn't super polished anyways, so consider it a prototype/proof of concept. Would be nice if the useful parts can be ported over or refactured at some point.

@atteneder Psst, the import and export is already working in the new repository - at least it has the same features as the importer and exporter.
Plus, we already added a basic Principled BSDF exporter in it, not considering incoming links at the moment. I already do have code for this from a former exporter, but I will also have a look at your code - maybe there is an elegant solution included.

Closing this as implemented in https://github.com/KhronosGroup/glTF-Blender-IO/.  Any bugs or problems, please open new issues in that repo instead of this one, thanks!


Move the typescript parser outside of jest-editor-support to jest-tes…

Move the typescript parser outside of jest-editor-support
to jest-test-typescript-parser

Summary
Makes babylon parser the default for jest-editor-support, create a second package that contains the code for the typescript parser

Test plan
Tests pass

👍


tpmd to listen on a privileged port

At the moment, unprivileged users can bind on the tcp port before tpmd is started. That could DoS tpmclient.
See https://github.com/coreos/rkt/issues/1816

/cc @mjg59 @jonboulle

I don't quite understand what you want here. To have it listen on a fixed port and remove the option of configuring it?

oh, I forgot that the port was configurable. I think it is fine to be configurable.
Then the suggestion is to pick a port < 1024, document it and write it in tpmd.service. Then, get rkt to use that port. So, non-root processes cannot steal that port.
Or, if rkt does not use tpmd over a network, we could add an additional option in tpmd to listen on a socket file in /run/tpmd/tpmd.socket (with /run/tpmd/ only writeable by root).


General feedback

Not sure if this goes here sorry!
OreLook: Laggy, but makes it easy to find diamonds! IG there's a kind of tradeoff, which will hopefully discourage people from using it in servers.
DuraLook: Unlike LukasPAH's durability viewer, it's super smooth and causes basically no lag! In the inventory screen though, the durability label renders behind the item texture, messing it up a bit. It's also a bit big and hard to read. Could you make one smaller and in base 10?
ChunkLook: Absolutely love it! Very unconventional way of showing the chunk borders but it works really well! My only concern is that sometimes the particles seem to be drifting slightly off the borders exactly, but it's still easy to see.
HPLook: Works well, but for most mobs its overlapping with the entity itself - maybe make it render above the head?
Tested on Windows 10 1.20.51

Thank you for always following me and detailed feedback!
OreLook: currently searching for blocks with a large number of invisible particles. These are fired radially from the player, so the further away they are, the less dense they are. This causes the need for even larger numbers of particles. I'm looking for a better way.
DuraLook: I too feel the difficulty in reading due to the letters.There is a part of the lightness and practicality of using hexadecimal numbers.It is clear that decimal numbers would be overwhelmingly easier to read, and I will continue to consider this.
ChunkLook: There is a bug that if you move a dimension while it is displayed, it will not be displayed.I believe that the occasional misalignment of the display is caused by a delay in the reflection of molang queries.Additional features are being considered.
HPLook: This was previously developed as health indicate bar (hbar).I am looking for a way to get the height of the mob.


Strange Movement

I currently try to get my project done with this library (leaved ESP Stepper Motor Server). Looks like working good so far but have a issue on movements of stepper (in loop function). the stepper rotate correct but on reached position he move a little bit back in other direction before stop and reached target position. can you explain what i do wrong?
#include <Arduino.h>
#include <ESP_FlexyStepper.h>

// IO pin assignments
const int MOTOR_STEP_PIN = 2;
const int MOTOR_DIRECTION_PIN = 15;
const int EMERGENCY_STOP_PIN = 13; //define the IO pin the emergency stop switch is connected to
const int LIMIT_SWITCH_PIN = 12;   //define the IO pin where the limit switches are connected to (switches in series in normally closed setup against ground)

// Speed settings
const int DISTANCE_TO_TRAVEL_IN_STEPS = 2000;
const int SPEED_IN_STEPS_PER_SECOND = 300;
const int ACCELERATION_IN_STEPS_PER_SECOND = 800;
const int DECELERATION_IN_STEPS_PER_SECOND = 800;

// create the stepper motor object
ESP_FlexyStepper stepper;

int previousDirection = 1;

//this function gets called whenever the stepper reaches the target position / ends the current movement
//it is registerd in the line "stepperConfiguration->getFlexyStepper()->registerTargetPositionReachedCallback(targetPositionReachedCallback);"
void targetPositionReachedCallback(long position)
{
  Serial.printf("Stepper reached target position %ld\n", position);
}

void EmergencyStopTriggered()
{
  Serial.printf("Emergency Switch triggered\n");
}

void EmergencyStopReleased()
{
  Serial.printf("Emergency Switch released\n");
}

void ICACHE_RAM_ATTR emergencySwitchHandler(){
  stepper.emergencyStop(true);
}

void limitSwitchHandler()
{
}

void HomeReachedCallback()
{
  Serial.printf("Stepper is now on Home Position\n");
}

void setup()
{
  Serial.begin(115200);

  //set the pin for the emegrenxy witch to input with inernal pullup
  //the emergency switch is connected in a Active Low configuraiton in this example, meaning the switch connects the input to ground when closed
  pinMode(EMERGENCY_STOP_PIN, INPUT_PULLUP);
  //attach an interrupt to the IO pin of the switch and specify the handler function
  attachInterrupt(digitalPinToInterrupt(EMERGENCY_STOP_PIN), emergencySwitchHandler, CHANGE);

  //attach an interrupt to the IO pin of the limit switch and specify the handler function
  attachInterrupt(digitalPinToInterrupt(LIMIT_SWITCH_PIN), limitSwitchHandler, CHANGE);

  // connect and configure the stepper motor to its IO pins
  stepper.connectToPins(MOTOR_STEP_PIN, MOTOR_DIRECTION_PIN);
  // set the speed and acceleration rates for the stepper motor
  stepper.setSpeedInStepsPerSecond(SPEED_IN_STEPS_PER_SECOND);
  stepper.setAccelerationInStepsPerSecondPerSecond(ACCELERATION_IN_STEPS_PER_SECOND);
  stepper.setDecelerationInStepsPerSecondPerSecond(DECELERATION_IN_STEPS_PER_SECOND);

  //register the callback function, to get informed whenever the target postion has been reached
  stepper.registerTargetPositionReachedCallback(targetPositionReachedCallback);
  //you can also register for other events using (these accept currently only functions without any parameters):
  stepper.registerEmergencyStopReleasedCallback(EmergencyStopReleased);
  stepper.registerEmergencyStopTriggeredCallback(EmergencyStopTriggered);
  stepper.registerHomeReachedCallback(HomeReachedCallback);

  // Not start the stepper instance as a service in the "background" as a separate task
  // and the OS of the ESP will take care of invoking the processMovement() task regularily so you can do whatever you want in the loop function
  stepper.startAsService();
  stepper.moveToHomeInSteps(previousDirection,300,5000, LIMIT_SWITCH_PIN);
}

void loop()
{
  // Notice that you can now do whatever you want in the loop function without the need to call processMovement().
  // also you do not have to care if your loop processing times are too long.
  Serial.printf("Actual position is %i\n", stepper.getCurrentPositionInSteps());
  delay(5000);
  stepper.moveRelativeInSteps(400);
  delay(5000);
  stepper.moveRelativeInSteps(400);
  delay(5000);
  stepper.moveToPositionInSteps(0);
}

nothing is wrong, this is the intended behaviour as you can see in this part of the code:
https://github.com/pkerspe/ESP-FlexyStepper/blob/40d5fcb1a17c60469e6cf681705519c8321761dc/src/ESP_FlexyStepper.cpp#L915

oh you may understand me wrong. this i have see and love it but thats not i talking about. i mean in the loop function of my code all positions movements do that

maybe you are moving in the wrong direction and continuously trigger the limit switch?
You set the variable previousDirection to 1 and never change it again. So you move to the limit switch in a positive direction.
then in the loop you always call moveRelativeInStepswith a positive value as well...the seems strange, maybe it should be a negative value there.
But not sure, just a guess for now since I cannot analyse this fully without a test rig.

can‘t not really be the point. exact same issue are with one of your original examples

is there any chance that you soon can look to this?

ok, I tested it and can confirm your observations. Need to look into the possible cause on the weekend

great!! thank you so much. hope you find the issue

Found the issue: you are starting the stepper library as a service but then only use blocking calls.
Remove the line stepper.startAsService();and it will work without the overshooting.
Or you start it as a service and only use the non blocking functions with callbacks.


Add voting delay and period

Fixes https://github.com/snapshot-labs/snapshot/issues/709

Requires https://github.com/snapshot-labs/snapshot.js/pull/390


feat: add python language target

Added the python synthesizer for Nocti. Should implement all intrinsics and conditionals.

found a bug with how I'm handling custom stack props while updating the formatting. Gonna leave this broken and will find the time to fix that

found a bug with how I'm handling custom stack props while updating the formatting. Gonna leave this broken and will find the time to fix that

Fixed it


Add Windows DNS instructions

Windows need to resolve classroom.example.com through DNS.
We need to update https://htmlpreview.github.io/?https://github.com/redhat-developer/docker-java/blob/javaone2015/readme.html#_environment to include windows instructions.

Fixed in https://github.com/redhat-developer/docker-java/commit/1d732260ae592c3d61731e8d93430b7941667202 and https://github.com/redhat-developer/docker-java/commit/647ae82a69428504e01c6037c61d7a6304bb8501


refactor(app): h-S Adjust wizard order and add open latch button

closes #10563
Overview
Reorders the pages and adjusts the text accordingly. Also adds a labware latch button on the Attach adapter page.

Changelog

adjust HeaterShakerWizard, PowerOn, and AttachAdapter

Review requests

go through the wizard without a protocol and with a protocol. It should match the designs. On the AttachAdapter page, there should be a button that allows you to open or close the labware latch. It should be wired up and working properly.
if the heater-shaker is already shaking, the labware latch button should be disabled with a tooltip saying that the H-S is shaking.

Risk assessment
low, h-s

I did notice on Step 1 of 4 I don't see the "Step 1 of 4" header. Is that just due to scrolling? Otherwise looks good!

@howisthisnamenottakenyet , yup that is due to scrolling, sorry! Here is the top bit of the page:

One small question, when I click the open/close latch button there seems to be a 1-2 second delay. At quick glance it doesn't seem like there is a way to give some kind of user feedback in this state, perhaps a disabled button or something, has that come up in ux discussions for buttons that do these kinds of async tasks?

@vabruzzo, ya I've noticed this slight delay with all module commands. Not sure if there have been discussions about it.


nuxt-i18n <-> vuelidate dynamic validation issue

Apparently there seems to be an issue that the dynamic validations are no longer triggered, when "nuxt-i18n" is used.
I reproduced the issue here:
[broken]
https://codesandbox.io/s/vy54y194yy
[working]
https://codesandbox.io/s/ywxknqooxv
The example is the one used in the vuelidate documentation: https://monterail.github.io/vuelidate/#sub-dynamic-validation-schema
The expected behavior is that the validation configuration should change when the checkbox is clicked. But in the broken version is does not.
The only difference between the working and broken example is that in the working one the module for nuxt-i18n is commented out in the nuxt config.
Since I'm not really sure who can fix this issue I created this issue for nuxt-i18n and vuelidate.
Thanks in advance :)

Reference: https://github.com/nuxt-community/nuxt-i18n/issues/142

I have the same issue. Very strange bug.
I tried to downgrade nuxt, vuelidate and nuxt-i18n, but no results...
I'm using https://vuejs.org/v2/api/#vm-forceUpdate as temporary fix.
this.$v.$touch() this.$forceUpdate()

I have same issue and tried @dinaabramova way but it doesn't worked for me.
Is there any solution?

These libraries have too many conflicts. I've found another 2 compatibility bugs after fixing this one. Not with rendering only, but with updating $v object at all in some cases. And it's really magic, I have no ideas, why it happens.
nuxt-i18n is very useful and can't be replaced by another library, but vuelidate can be simply replaced by vee-validate. It doesn't have any problems with nuxt-i18n and is working perfect for me at the moment.

@dinaabramova thanks for your explanation, I'm already changed Vuelidate to Vee-validate

I also switched to vee validate for the same reasons @dinaabramova gave

I just wrote vue-joi-validation  base on Joi , you can use it , As Joi is a good library for validation purposes .
Features

Model based
Decoupled from templates
Schema based
Built upon Joi
Minimalistic
Support for collection validations
Support for nested models
Contextified validators
Easy to use with custom validators (e.g. Moment.js)
Support for function composition
Validates different data sources: Vuex getters, computed values, etc.


Add client roles to camunda identity service in default realm import

Currently the roles are not assigned to default client scopes in the default techsophy-platform realm committed to keycloak.
Assigned client roles can be by default added and committed so that it gets automatically imported.

We need to do using curl command as export/import option is not vailable for client scopes.


[BugFix] Ranges may be lost when dynamic partitions are created.

What type of PR is this：

[x] bugfix
[ ] feature
[ ] enhancement
[ ] refactor
[ ] others

Which issues of this PR fixes ：

Fixes #
Problem Summary(Required) ：

If the partition type changes from the month dimension to the week dimension.  Old dynamic partitioning for [(' 2022-08-01 00:00:00), (' 2022-09-01 00:00:00))
In this case, the new dynamic partition of the week dimension [('2022-08-29 00:00:00'), ('2022-09-05 00:00:00')) fails to be created.  The next partition created successfully will be [('2022-09-05 00:00:00'), ('2022-09-12 00:00:00')).  No partition can be found for the data from September 1 to September 4.  Therefore, I added a dynamic clipping partition in this area.  When this situation is detected, I clipped the starting position of the partition to create a partition for [('2022-09-01 00:00:00'), ('2022-09-05 00:00:00')).
Checklist:

[ ] I have added test cases for my bug fix or my new feature
[ ] I have added user document for my new feature or new function

Does this bug exist in main-branch, should submit it to main-branch first then other branches

Does this bug exist in main-branch, should submit it to main-branch first then other branches

ok，I will submit main-branch first.


Don't whitelist the resolved IP address

This is to support websites behind content proxies like Cloudflare that flatten the CNAME, currently the now alias command just errors:
❯ now alias z0GIyDKdF4gH8LDesAqYlnST rolandwarmerdam.com
> rolandwarmerdam.com is a custom domain.
> Verifying the DNS settings for rolandwarmerdam.com (see https://zeit.world for help)
> Resolved IP: <IP_ADDRESS> (unknown)
> Nameservers: ara.ns.cloudflare.com, curt.ns.cloudflare.com
> Error! The domain rolandwarmerdam.com has an A record <IP_ADDRESS> that doesn't resolve to alias.zeit.co.
> Please make sure that your nameservers point to zeit.world.
> Examples: (full list at https://zeit.world)
> - california.zeit.world    <IP_ADDRESS>
> - newark.zeit.world        <IP_ADDRESS>
> - london.zeit.world        <IP_ADDRESS>
> - singapore.zeit.world     <IP_ADDRESS>
> Alternatively, ensure it resolves to alias.zeit.co via CNAME / ALIAS.

I feel #111 is a better solution but optimally we should recognise Cloudflare and such services as a third method to use a custom domain. This however requires more than just changing the client behaviour.

We will add an improved verification method that works properly with Cloudflare.


CSS backdrop-filter affects photo gallery scrolling animations FPS

Describe the bug
A clear and concise description of what the bug is.
Swiping photos is unpleasant experience due to FPS drops

Which site: dev.phanpy.social

To Reproduce
Steps to reproduce the behavior:

Go to post with multiple photos, e.g https://dev.phanpy.social/#/mstdn.social/s/110885138853427849
Preview first photo
Swipe to next photo
Observe FPS drops during this action

P.S. you can hide control elements, by tapping photo. After hiding – FPS is no longer dropping (because .plain2, plain3 class elements are hidden)

Comment out these two styles and gallery animation framerate will dramatically increase.
I guess this happens because of transparent + blur() on moving photos, which consumes a lot of CPU on each frame
Ref: https://github.com/cheeaun/phanpy/blob/main/src/index.css#L199
:is(button, .button).plain2 {
  background-color: transparent;
  color: var(--link-color);
  /* backdrop-filter: blur(12px) invert(0.1); */
}
:is(button, .button).plain3 {
  background-color: transparent;
  color: var(--button-text-color);
  /* backdrop-filter: blur(12px) invert(0.25); */
}

Smartphone (please complete the following information):

Device: Google Pixel 6
OS: Android 14
Browser Google Chrome 115

Additional context
I have checked locally, that removing those backdrop-filter solves problem, but i'm not a frontend guy, so i don't know how to correctly replace them with somewhat similar

Some references

https://stackoverflow.com/questions/29550422/css3-filter-performance-cpu-usage-why-do-certain-filters-tax-the-cpu
https://github.com/thirdweb-dev/dashboard/issues/703
https://github.com/WordPress/gutenberg/issues/43877
https://bugzilla.mozilla.org/show_bug.cgi?id=1718471

@cheeaun thanks, problem solved

div.media-play also hits performance 🥲
Might be a good idea to double-check every place with this filter
backdrop-filter:.*blur
It will really improve users experience. Now it is lagging even on my Macbook M1 Air (not everyone can notice that, but still)
@cheeaun if you don't have time to fix this, just let me know what is resolution strategy for those cases, and i will try to make PR

@Alex0007 is this a different bug? I can understand if this lags on a phone but it seems weird that it's lagging on a desktop (especially on M1 😲). Is it possible if you can check/pinpoint if the blur is the main cause for this case, maybe have a user-style to disable all backdrop-filter styles 🙏

It is same kind of bug, but in different place (now in "play" overlay above videos, which also has that blur style)

especially on M1 😲
It's not that noticeable on notebook. On the phone you can see micro freezes when blurred element appear on the screen. While on notebook smooth scrolling stops being smooth.

You might think I'm crazy, but this performance problems are really blocking me from using Phanpy on the phone.
Most annoying bug was gallery one and now it's fixed, but maybe it's worth to fix remaining places to get ideal performance

Is it possible if you can check/pinpoint if the blur is the main cause for this case

Now gallery swipes perform great, and I have noticed that before looking into commits history. So yes, it is the case.
Not sure every blur in codebase dips performance. For example header blur is fine, as well as text blur in spoilers

@cheeaun
Here is screen recording that captures FPS drops as soon, as div.media-play element appears on the screen
https://github.com/cheeaun/phanpy/assets/1143226/91818670-3acc-44ae-bf84-930d6a34a77e

Closing for now until i get more evidence of drops


Initial pipelines-as-code integration

Adds initial implementation of PaC into Build Service.
Currently both Trigger and PaC builds are supported. If the Component has pipelinesascode: "1" annotation, then PaC build is used. Otherwise, previous behavior applies.

/retest

/retest

Tested manually the flow:

Create a component repository (forked from https://github.com/devfile-samples/devfile-sample-go-basic).
Installed PaC GitHub Application (see docs).
Created AppStudio Application and Component (with pipelinesascode: "1" annotation).
Checked for a new PR in the Component repository.
Fixed Dockerfile path in the PR: from Dockerfile to docker/Dockerfile.
Added /retest comment in the PR, it triggered a new on-pr pipeline.
When pipeline finished successfully, merged the PR.
A new on-push pipeline is triggered.
Component deployment is available.


"Download selected submissions" - No way to distinguish submissions with the same filenames

@nicomy
This issue concerns the feature implemented in this PR:

#1548

The bulk download works well. However, it zips together all selected submissions, even if they have the same filenames. This has two consequences:

The unzipping is clumsy (most unzip softwares will ask for deleting or renaming the files)
We have no way to distinguish the submissions

Possible solution:

Rename automatically the files in the case of non-unique filenames, adding the submission ID.

Another issue here: we download just the submission file, not the outputs

Maybe we should have these options:

download submissions only
download submissions predicted output
download submissions scoring output
download submissions + predicted output + scoring output

Hi, another issue i am encountering regarding "Download selected submissions":
I am getting a bug which results in 26 copied zipped submissions when i use the UI for downloading in bulk but select 1 submission. for 4 files i got 96 copies. The main problem is that the files are all corrupted.

@seroy123 Hi, thank you for reporting this problem.
Can you please share more details please?

URL of the competition
Your username
Which submission did you select?
Any relevant information to reproduce the bug


Add βTorrent tracker

To be kept open until Instant.io and βTorrent has been tested enough while having 2 trackers.

Was hoping you'd send a PR here too.


Firmware restart button

Coverage increased (+0.03%) to 93.754% when pulling e9f305e543086f57e047b7446d156ecef9089494 on gabrielburnworth:staging into 3d8a06bacfe98b6b358b026c997dbbd22ea5c010 on FarmBot:staging.


cmd/go: go generate should be more resilient to source changes

go version devel +3c0fbeea7d Tue Nov 5 05:22:07 2019 +0000 linux/amd64

When go generate runs, it's quite likely to add and remove source files.
This can result in errors which are inappropriate.
Here's a testscript command script that demonstrates the issue. It's a pared-down version of some real code:
go generate ./...
cp names.new names
go generate ./...

-- names --
a
b
c
-- names.new --
a
b
d
-- gen.go --
// +build ignore

package main

import (
	"io/ioutil"
	"log"
	"os"
	"path/filepath"
	"strings"
)

func main() {
	os.RemoveAll("generated")
	testData, err := ioutil.ReadFile("names")
	if err != nil {
		log.Fatal(err)
	}
	for _, name := range strings.Fields(string(testData)) {
		if err := os.MkdirAll(filepath.Join("generated", name), 0777); err != nil {
			log.Fatal(err)
		}
		err := ioutil.WriteFile(filepath.Join("generated", name, "f.go"), []byte(`
// Code generated for this test. DO NOT EDIT.

package `+name+`

func F() {}
`), 0666)
		if err != nil {
			log.Fatal(err)
		}
	}
}
-- go.mod --
module m

go 1.14
-- main.go --
package main

//go:generate go run gen.go

func main() {
}

When I run it, I see this:
% testscript goissue.txtar
> go generate ./...
> cp names.new names
> go generate ./...
[stderr]
generate: open $WORK/generated/c/f.go: no such file or directory

[exit status 1]
FAIL: /tmp/testscript089422577/0/script.txt:3: unexpected go command failure
error running tst.txtar in /tmp/testscript089422577/0

That is, the second time that go generate runs, it fails.
It seems that go generate is evaluating all the files when it runs, and not being resilient when they change (in this case a file changed name).
Perhaps it should be silent in cases like this.
There may also be other cases where go generate could be quieter about errors (for example when there's a package name mismatch in files in a package, which can be caused when a package is renamed and go generate is called again to regenerate the new files).
One possible approach might be for go generate to ignore any errors on files which contain the standard "DO NOT EDIT" comment.

/cc @bcmills @jayconrod

@rogpeppe, it seems very odd for go generate . to produce source files for a different package (./generated/c). (I would expect that to be pretty common for testadata directories, but testdata directories are ignored for patterns like ./....)
I'm assuming that you ran into this with a more concrete example somewhere. Can you give some more detail about the concrete case?

In this particular case, I was writing tests for a code generator. The generator generates code in a package, and the go generate command iterates over a bunch of test data, creating a directory, running the generator in it and generating some test code to test the generated code.
The advantage of doing this is that I can check in the resulting test code, which serves as unit tests for the imported package used by the generated code.
There's nothing about go generate that says that it should only generate code in the same directory, so I thought this could work ok, but it turns out a bit awkwardly, hence this issue.

The generator generates code in a package, and the go generate command iterates over a bunch of test data, creating a directory, running the generator in it and generating some test code to test the generated code.

It still seems like the solution here belongs on the caller side: if go generate foo might delete the package foo/generated/c entirely, then the user should not run go generate on foo and foo/generated/c simultaneously.
OTOH, if the package foo/generated/c is just testdata for foo, then it should probably be named foo/testdata/c instead, and then the ./... pattern won't match it at all.

It still seems like the solution here belongs on the caller side: if go generate foo might delete the package foo/generated/c entirely, then the user should not run go generate on foo and foo/generated/c simultaneously.

I don't really see how this is so different from running go generate on a package where some of the files in the package are generated and might appear or disappear. This is just doing the generation at a package level rather than a file level.

OTOH, if the package foo/generated/c is just testdata for foo, then it should probably be named foo/testdata/c instead, and then the ./... pattern won't match it at all.

If I did that, I couldn't run the generated tests by running go test ./..., which is one of the main reasons I'm going this this way.

A smaller testscript that reproduces the error:
go generate ./...

-- gen.go --
// +build ignore

package main

import (
	"log"
	"os"
)

func main() {
	if err := os.Remove("b.go"); err != nil {
		log.Fatal(err)
	}
}

-- a.go --
package gen

//go:generate go run gen.go

-- b.go --
package gen

-- go.mod --
module issue36068

go 1.16

Another solution is to put opposite build tags on the generator and the generated file. So the generated file will be excluded from building the generator.

@nightlyone not sure how that’d help. E.g. gotd/td recently stumbled upon this issue because it puts types from Telegram’s TL schema in a separate files when generating tg package. So removing a type from schema breaks code gen since it needs to remove the file too (uh, and currently go generate doesn’t like it). An ugly workaround would be to place go:generate directive at the end of the package files list (perhaps zgen.go).

Just wanted to mention that we are running into the same issue in https://github.com/open-telemetry/opentelemetry-collector-contrib.
The use case is to generate a file in an internal sub-package ./internal/metadata/metrics.go.
It works fine for creating new files and replacing them. But if we want to change the filename from the generator, e.g. remove ./internal/metadata/metrics.go and create ./internal/metadata/metrics_v2.go, the generator program works fine - files are replaced, but go generate ./... fails at the same time with
generate: open /Users/danoshin/Projects/opentelemetry-collector-contrib/receiver/hostmetricsreceiver/internal/scraper/memoryscraper/internal/metadata/generated_metrics_v2.go: no such file or directory


[Auto-Complete] - Popover and scroll error

When focus on the auto-complete input field and popover is show, then scrolling still works on the page.
The popover will show like a fix position in the browser window

Material-UI: 0.18.0
React: 15.5.4
Browser: Chrome Version 59.0.3071.115 (Official Build) (64-bit)

Closed by #4783


Badges in README point to new repository location

Merging to fix consistency of badge links. CI ha passed same tests as on previous locations.


Documentation: init isn't a function on settings any longer

The documentation's examples treat init as if it's a function on Settings, but it's not.

 I've published a hopefully slightly more accurate version.


STM32H7 Power Configuration issues leading to general unreliability to start-up

This is a placeholder issue to track the knowledge we have on why STM32H7's are so unreliable to start-up. all of my testing has been done on three different STM32H745 boards: a Nucleo, a Discovery board, and a custom in-house board. This is what I have found so far, and will update as I discover more:

Encountered the exact same issue on all three different STM32H745 boards
Whenever I try to bring a project to life using Rust/Embassy, it throws a tantrum, failing a few times and getting stuck at while !PWR.csr1().read().actvosrdy() {} in the rcc::init function.
Oddly enough, playing musical chairs with various example projects in the embassy repo seems to eventually coax it into working... until the next power cycle, that is.
Tweaking the voltage scales seems to have no effect on the frequency of the gremlin...
In a twist, flashing a bare-metal (C) project from STMCube initially follows the same script of failure (post-Embassy project flash). Yet, post a power cycle, it runs as smooth as butter - no hiccups or boot issues whatsoever, power cycle after power cycle.

I had this issue for a while on the H747xi but managed to resolve it after much testing. Let me dig up the config I'm using.
I have a spare NUCLEO-H743ZI2 which I can test for you if you like.

This is the code I have configured for my custom board, which to be fair has an external oscillator, but I have equivalent C code which I can use t- get it running reliably. so i am trying to work out the difference. This is the config I have:
    let mut config = Config::default();
    {
        use embassy_stm32::rcc::*;
        // config.rcc.hsi = Some(HSIPrescaler::DIV1);
        config.rcc.hsi = None; // Since we're using HSE
        config.rcc.hse = Some(Hse { freq: mhz(20), mode: HseMode::Bypass});
        config.rcc.csi = false;
        config.rcc.pll1 = Some(Pll {
            source: PllSource::HSE,
            prediv: PllPreDiv::DIV2,
            mul: PllMul::MUL32,
            divp: Some(PllDiv::DIV2),
            divq: Some(PllDiv::DIV8),
            divr: Some(PllDiv::DIV2),
        });
        config.rcc.sys = Sysclk::PLL1_P; // 400 Mhz
        config.rcc.ahb_pre = AHBPrescaler::DIV2; // 200 Mhz
        config.rcc.apb1_pre = APBPrescaler::DIV2; // 100 Mhz
        config.rcc.apb2_pre = APBPrescaler::DIV2; // 100 Mhz
        config.rcc.apb3_pre = APBPrescaler::DIV2; // 100 Mhz
        config.rcc.apb4_pre = APBPrescaler::DIV2; // 100 Mhz
        config.rcc.voltage_scale = VoltageScale::Scale3;
        config.rcc.supply_config = SupplyConfig::DirectSMPS;
    }
    let p = embassy_stm32::init(config);

And this is the equivalent config generated from STMCube:
void SystemClock_Config(void)
{
  RCC_OscInitTypeDef RCC_OscInitStruct = {0};
  RCC_ClkInitTypeDef RCC_ClkInitStruct = {0};

  /** Supply configuration update enable
  */
  HAL_PWREx_ConfigSupply(PWR_DIRECT_SMPS_SUPPLY);

  /** Configure the main internal regulator output voltage
  */
  __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE3);

  while(!__HAL_PWR_GET_FLAG(PWR_FLAG_VOSRDY)) {}

  /** Macro to configure the PLL clock source
  */
  __HAL_RCC_PLL_PLLSOURCE_CONFIG(RCC_PLLSOURCE_HSE);

  /** Initializes the RCC Oscillators according to the specified parameters
  * in the RCC_OscInitTypeDef structure.
  */
  RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE;
  RCC_OscInitStruct.HSEState = RCC_HSE_BYPASS;
  RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
  RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
  RCC_OscInitStruct.PLL.PLLM = 2;
  RCC_OscInitStruct.PLL.PLLN = 32;
  RCC_OscInitStruct.PLL.PLLP = 2;
  RCC_OscInitStruct.PLL.PLLQ = 8;
  RCC_OscInitStruct.PLL.PLLR = 2;
  RCC_OscInitStruct.PLL.PLLRGE = RCC_PLL1VCIRANGE_3;
  RCC_OscInitStruct.PLL.PLLVCOSEL = RCC_PLL1VCOWIDE;
  RCC_OscInitStruct.PLL.PLLFRACN = 0;
  if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK)
  {
    Error_Handler();
  }

  /** Initializes the CPU, AHB and APB buses clocks
  */
  RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
                              |RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2
                              |RCC_CLOCKTYPE_D3PCLK1|RCC_CLOCKTYPE_D1PCLK1;
  RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
  RCC_ClkInitStruct.SYSCLKDivider = RCC_SYSCLK_DIV1;
  RCC_ClkInitStruct.AHBCLKDivider = RCC_HCLK_DIV2;
  RCC_ClkInitStruct.APB3CLKDivider = RCC_APB3_DIV2;
  RCC_ClkInitStruct.APB1CLKDivider = RCC_APB1_DIV2;
  RCC_ClkInitStruct.APB2CLKDivider = RCC_APB2_DIV2;
  RCC_ClkInitStruct.APB4CLKDivider = RCC_APB4_DIV2;

  if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_1) != HAL_OK)
  {
    Error_Handler();
  }
}

When I read out the PWR.CR3 register just before waiting for VOSRDY, the configuration from STMCube sets the register up as 0x5010044, whereas Embassy has it set up as 0x10044. Looking at RM0399, the difference is that the the register setup from the STMCUBE also has the USB33RDY and USB33DEN enabled, which are both USB specific and not something I am using.
I can only assume that the STMCube HAL is adding bloat and enabling those even though they arent specifically being used

pub fn init() -> (embassy_stm32::Peripherals, cortex_m::Peripherals) {
    let mut config = Config::default();
    {
        use embassy_stm32::rcc::*;
        config.rcc.supply_config = SupplyConfig::LDO;
        config.rcc.hsi = Some(HSIPrescaler::DIV1); // // 64MHz
        config.rcc.csi = true;
        config.rcc.hsi48 = Some(Hsi48Config {
            sync_from_usb: true,
        }); // needed for USB

        #[cfg(feature = "stm32h747_400")]
        {
            config.rcc.pll1 = Some(Pll {
                source: PllSource::HSI,
                prediv: PllPreDiv::DIV4,
                mul: PllMul::MUL50,
                divp: Some(PllDiv::DIV2), // ((64/4)*50)/2 = 400MHz
                divq: Some(PllDiv::DIV8), // ((64/4)*50)/8 = 100MHz / SPI1 cksel defaults to pll1_q
                divr: None,
            });
            config.rcc.pll2 = Some(Pll {
                source: PllSource::HSI,
                prediv: PllPreDiv::DIV8,
                mul: PllMul::MUL50,
                divp: Some(PllDiv::DIV4), // ((64/8)*50)/4 = 100MHz
                divq: None,
                divr: None,
            });
        }
        #[cfg(feature = "stm32h747_480")]
        {
            config.rcc.pll1 = Some(Pll {
                source: PllSource::HSI,
                prediv: PllPreDiv::DIV8,
                mul: PllMul::MUL120,
                divp: Some(PllDiv::DIV2), // ((64/8)*120)/2 = 480MHz
                divq: Some(PllDiv::DIV8), // ((64/8)*120)/8 = 120MHz / SPI1 cksel defaults to pll1_q
                divr: None,
            });
            config.rcc.pll2 = Some(Pll {
                source: PllSource::HSI,
                prediv: PllPreDiv::DIV8,
                mul: PllMul::MUL50,
                divp: Some(PllDiv::DIV4), // ((64/8)*50)/4 = 100MHz
                divq: None,
                divr: None,
            });
        }
        config.rcc.sys = Sysclk::PLL1_P; // 400 Mhz
        config.rcc.ahb_pre = AHBPrescaler::DIV2; // 200 Mhz
        config.rcc.apb1_pre = APBPrescaler::DIV2; // 100 Mhz
        config.rcc.apb2_pre = APBPrescaler::DIV2; // 100 Mhz
        config.rcc.apb3_pre = APBPrescaler::DIV2; // 100 Mhz
        config.rcc.apb4_pre = APBPrescaler::DIV2; // 100 Mhz
        config.rcc.voltage_scale = VoltageScale::Scale0;

        let mut mux = rcc::mux::ClockMux::default();
        mux.adcsel = rcc::mux::Adcsel::PLL2_P;
        config.rcc.mux = mux;

        // RTC
        config.rcc.ls = LsConfig::default_lse();

        trace!("Voltage::Scale{=i32}", config.rcc.voltage_scale as i32);
    }

    let p: embassy_stm32::Peripherals = embassy_stm32::init(config);
    let core_peri = cortex_m::Peripherals::take().unwrap();

    (p, core_peri)
}

This is my config, I don't think I had much luck with config.rcc.hse.

Also, this works on the STM32h7hxi Arduino Portenta H7
https://github.com/embassy-rs/embassy/blob/main/examples/stm32h7/src/bin/dac_dma.rs

I've found some instability in my power configuration for the STM32h7hxi and have shared https://github.com/bsodmike/stm32h747xi-embassy-uart-troubleshoot which can be flashed onto an Arduino Portenta H7.  See REDME for details.
If anyone has a working config for UART with stm32h747xi please let me know.

Also, this works on the STM32h7hxi Arduino Portenta H7
https://github.com/embassy-rs/embassy/blob/main/examples/stm32h7/src/bin/dac_dma.rs

I have tested the same rcc config in the blinky sketch on a Portenta and it seems that the clock speed is not right, the blink seems quite slow (will need to check with a logic analyzer).
This zephyr PR has some interesting comments and seems to have a working RCC config to get to 400 MHz.

[ ] https://github.com/embassy-rs/embassy/pull/3008 should fix this.


Hot reload stopped working

I hesitate to bring this up as an issue here, in case it's just my environment, but hot reloading on all of the apps I've built with the kit has stopped working. It doesn't matter if it's an app I haven't touched in a few days where it was known to work before (and no dependency changes or updates) or a fresh clone of the kit with a fresh npm install. I get the message in the console that hot loading is enabled, but no changes to components have any effect. I've restarted Chrome (46.0.2490.80 (64-bit)), my computer etc. and still no luck. Can anyone else confirm?

Just to confirm it wasn't the kit, I cloned the react-transform-boilerplate example, and it doesn't work either. I'm at a loss.

Ugh, really not sure why this issue keeps cropping up. Just out of curiosity, what did you have to do to fix it with react-transform-boilerplate?

I'm...not really sure. It just started working after a few tries. I was also able to confirm that this kit works fine on another machine, so this appears to be something that's wrong with that one machine's file watching. So if you want to close this, I understand.

That's so strange. I'd really like to take a look on my machine but won't be able to until later tonight, so I'll leave it open for the time being.

FWIW, athe update to El Capitan got things working again.

That's really weird. I'm still on Yosemite with no issues... hopefully I don't get the opposite lol


"Admin, Member" in group page is confusing

I added Willy to the group and checked both "Admin" and "Member" boxes in the Add User dialog. Now he has "Admin, Member" in the group page:

Is "Admin, Member" the same as "Admin"? If not, how are they different? If so, can we just show "Admin" for both?

@zarsky-broad I believe you are addressing this now. I'm assigning to you and marking in progress. Once your changes roll out can you close this as fixed?

Just got merged! #1255


Fix invalid escape sequence deprecation warnings

Fixes the following:
❯ flake8 | rg escape
./flex/paths.py:21:7: W605 invalid escape sequence '\.'
./flex/paths.py:21:13: W605 invalid escape sequence '\.'
./flex/paths.py:22:7: W605 invalid escape sequence '\{'
./flex/paths.py:22:13: W605 invalid escape sequence '\{'
./flex/paths.py:23:7: W605 invalid escape sequence '\}'
./flex/paths.py:23:13: W605 invalid escape sequence '\}'
./flex/paths.py:42:32: W605 invalid escape sequence '\{'
./flex/paths.py:42:36: W605 invalid escape sequence '\}'
./flex/paths.py:56:21: W605 invalid escape sequence '\d'
./flex/loading/common/mimetypes.py:26:11: W605 invalid escape sequence '\.'
./flex/loading/common/mimetypes.py:26:28: W605 invalid escape sequence '\.'
./flex/loading/common/mimetypes.py:29:7: W605 invalid escape sequence '\+'
./flex/loading/common/mimetypes.py:30:29: W605 invalid escape sequence '\.'
./flex/loading/common/mimetypes.py:30:53: W605 invalid escape sequence '\.'
./flex/loading/schema/host.py:50:36: W605 invalid escape sequence '\d'

These also show up as deprecation warnings when running pytest

Thanks!


[D01231] Close pdf resource after text extraction

Coverage decreased (-0.02%) to 26.728% when pulling 9114b541bc119579f570603eeb18237ff24ec0a4 on dame-sprint-oct-d01213-pdf into d1de7911eefe9b7da255d53125555c737a19a289 on dame-sprint-oct-staging.


LEGO: Pull request from JUNO/hb_a12a4630-4852-4e7d-9cbc-c0e1117da1ab_20220907180147477 to main

LEGO: Pull request from JUNO/hb_a12a4630-4852-4e7d-9cbc-c0e1117da1ab_20220907180147477 to main with localized lcls

Codecov Report

Merging #1694 (69bc108) into main (d1a6b50) will decrease coverage by 3.56%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main    #1694      +/-   ##
==========================================
- Coverage   88.90%   85.34%   -3.57%
==========================================
  Files         105       58      -47
  Lines        5553     3030    -2523
==========================================
- Hits         4937     2586    -2351
+ Misses        616      444     -172

Flag
Coverage Δ

unittests
85.34% <ø> (-3.57%)
:arrow_down:

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

Impacted Files
Coverage Δ

...i/responsibleai/managers/counterfactual_manager.py

...bleai/responsibleai/_tools/causal/causal_result.py

responsibleai/responsibleai/exceptions.py

...leai/responsibleai/databalanceanalysis/__init__.py

...sibleai/responsibleai/rai_insights/rai_insights.py

...eai/responsibleai/databalanceanalysis/constants.py

...onsibleai/_tools/shared/attribute_serialization.py

responsibleai/responsibleai/_config/base_config.py

...onsibleai/responsibleai/serialization_utilities.py

...i/responsibleai/managers/error_analysis_manager.py

... and 37 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


"Unity Sample Page" links to deprecated git repo

When you click the link to "Unity Sample Page" towards the bottom of the page it takes you to
https://github.com/sceneunderstanding-microsoft/unitysample
Which says the repo has moved to https://github.com/microsoft/MixedReality-SceneUnderstanding-Samples
The link the docs should be updated to new repo

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

ID: e11ada88-8eb6-0e07-0b90-02b8b87179bf
Version Independent ID: 9bb41118-53ab-73c6-5908-83f0c2334536
Content: Scene understanding SDK - Mixed Reality
Content Source: mixed-reality-docs/scene-understanding-SDK.md
Product: mixed-reality
Technology: mr-dev
GitHub Login: @SzymonS
Microsoft Alias: szymons

I believe that this should link to https://github.com/microsoft/MixedReality-SceneUnderstanding-Samples

I believe that this should link to https://github.com/microsoft/MixedReality-SceneUnderstanding-Samples

Thanks, updated!

Thanks, updated!


[PATTERN] Add Pascal Triangle pattern in Java, Pattern43

Description
Task:
for the given input n the following pattern should print (n=5 for the below pattern):
Pattern Image

Filename
Pattern43.java

Hello , pls assign this task to me

@abhishek09827 please solve previously assigned issue before asking for another one.

Hi, can you assign this issue to me?

@RenatBl this issue is already assigned to someone else.

Also, if you don't mind, I would like to do some refactoring In the Pattern.java, Pattern33.java, Pattern_3.java classes, the class name does not match the file name, I could fix this

@RenatBl if you want to work on those issues raise the issue specifying the bug and Pattern. Raise separate issues for the different patterns.

Also, if you don't mind, I would like to do some refactoring In the Pattern.java, Pattern33.java, Pattern_3.java classes, the class name does not match the file name, I could fix this

@RenatBl if you want to work on those issues raise the issue specifying the bug and Pattern. Raise separate issues for the different patterns.

@Vishal21121 Opened a new issue: https://github.com/Vishal21121/Patterns-different-language/issues/130
Can you assign it to me?
For this issue, I have a ready-made solution, if you allow, I would like to provide it

pr merged #122


GCC 5.3.1 Compiler warning: sign compare

Compiler:
g++ (Debian 5.3.1-21) 5.3.1 20160528
Code:
#define DOCTEST_CONFIG_IMPLEMENT_WITH_MAIN
#include "doctest/doctest.h"

#include <map>

TEST_CASE("x")
{
	std::map<int, int> m;
	CHECK(m.size() == 0);
}

Command line (unimportant flags like include paths removed):
/usr/bin/c++ -std=c++14 -Wall -Wextra -Wshadow -Wnon-virtual-dtor -pedantic -Wcast-align
-Woverloaded-virtual -g -fprofile-arcs -ftest-coverage -fno-omit-frame-pointer -O0
-std=gnu++14
-o CMakeFiles/x.dir/tests/x.cpp.o

Result (full paths removed):
In file included from /somewhere/tests/x.cpp:2:0:
/somewhere/tests/doctest/doctest.h: In instantiation of ‘typename doctest::detail::enable_if<(doctest::detail::can_use_op<T>::value || doctest::detail::can_use_op<R>::value), bool>::type doctest::detail::eq(const L&, const R&) [with L = long unsigned int; R = int; typename doctest::detail::enable_if<(doctest::detail::can_use_op<T>::value || doctest::detail::can_use_op<R>::value), bool>::type = bool]’:
/somewhere/tests/doctest/doctest.h:593:82:   required from ‘doctest::detail::Result doctest::detail::Expression_lhs<L>::operator==(const R&) [with R = int; L = const long unsigned int&]’
/somewhere/tests/x.cpp:9:2:   required from here
/somewhere/tests/doctest/doctest.h:557:127: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  || can_use_op<R>::value, bool>::type eq (const L& lhs, const R& rhs) { return lhs == rhs; }
                                                                                ^

Well the compiler is right isn't it? Using m.size() == 0u obviates the warning.

well... I don't get a warning for if(m.size() == 0) and also Catch doesn't produce a warning for CHECK(m.size() == 0) so I should look into this...

With GNU 5.2.0 on Windows I also get the warning for m.size() == 0.

Catch actively suppresses signed/unsigned mismatch for the expression decomposer.

See // This level of indirection allows us to specialise for integer types to avoid signed/ unsigned warnings.

So I asked these 2 questions on SO and didn't get the nice explanation I was hoping for.
Atleast I have a conclusion: if(vec.size() == 0) does not produce a warning, but CHECK(vec.size() == 0) does - and the reason is that I bind the 2 values to const references in the expression decomposing template machinery.
I don't like the way Catch handles this in gcc/clang - all those templates and specializations must have a compile time performance overhead.
The way I've chosen is to disable the few relevant warnings in the templated code, and the user will be able to remove these warning suppressions with the DOCTEST_CONFIG_NO_COMPARISON_WARNING_SUPPRESSION identifier.


Add support for BPF_PROG_TYPE_CGROUP_SYSCTL

This patch adds support for BPF_PROG_TYPE_CGROUP_SYSCTL.
close https://github.com/aya-rs/aya/issues/217

https://github.com/nak3/aya-showcase/tree/main/cgroup-sysctl is the demonstration for this PR.

Thank you! Updated.


feat: update cellguide pipeline to calculate ontology trees per organism

Reason for Change

#TICKET_NUMBER
If the reason for this PR's code changes are not clear in the issue, state value/impact

Changes

add
remove
modify

Testing steps

Either list QA steps or reasoning you feel QA is unnecessary
Describe how you made sure to know that your changes worked. Should allow someone else to go verify your code without in depth knowledge.
"Unit tested only", "tested in rdev by a, b, c, verifying feature worked by... ", "manually ran pipeline locally with these results: ..."

Checklist 🛎

[ ] Add product, design, and eng as reviewers for rdev review
[ ] For UI changes, add screenshots/videos, so the reviewers know what you expect them to see
[ ] For UI changes, add e2e tests to prevent regressions
[ ] For UI changes, verify impacted analytics events still work

Notes for Reviewer

Can you add a description please


Python RxPY await scenario Observables

While working on something unrelated, I noticed from reading the source that Observables are awaitable (defines __await__()).
Awaiting on an Observable:

Runs the observable, much like documented behaviors: subscribe(...) or run()
Automatically uses reactivex.scheduler.eventloop.AsyncIOScheduler (reducing boilerplate)
Eliminates the need to manually synchronize with semaphores

It is interesting to note that revisiting their documentation, even the section of asyncio integration fails to mention this.
This PR also made all scenarios synchronous (replaced async def scenario##() with def scenario##()), as they never needed to be async. I think I just made everything async while trying to figure out RxPY asyncio integration.

Oh nice! Good find.


Poor results on my testing data

Hello @YixingHuang, I think I finally managed to run your model and obtain results on my data.
However the results are quite poor and I wonder whether that is a matter of data drift or maybe I am missing something.
I had a problem running your preprocessing pipeline with my Slicer installation. However, I read through your code and tried to replicate that programmatically.
I have a brain, T1 contrast applied, MRI prior and target images.

I used 3D slicer 4.10.2 to perform N4ITK MRI Bias correction as this built-in function works for me. However I think that under the hood it uses this function from SimpleITK, https://simpleitk.readthedocs.io/en/master/link_N4BiasFieldCorrection_docs.html, so it is probably possible for me to just use it.
My prior and target images are already registered, I used this software to do that https://greedy.readthedocs.io/en/latest/
I have resampled the images to  240 * 240 * 155 with an isotropic voxel size of 1 mm as you mentioned in https://github.com/YixingHuang/DeepMedicPlus/issues/4
I extracted the brain from the scans using HD-BET, so that the n4 bias-corrected, resampled images, are only brain images without skulls.
I z-score normalized the images as it is what https://simpleitk.org/doxygen/latest/html/classitk_1_1simple_1_1NormalizeImageFilter.html function seems to be doing.

After performing these steps I used your model to find lesions. It seems to find some lesion on my image:

But at the same time it also marks a lot of singular pixels and areas that for sure are not lesions:

Did I miss something in the preprocessing pipeline? Or you think that the poor results may be the result of data drift?
Also, do you have any single example from your dataset that you could share so that I can test whether I can run your model on it and get good results?
Regards,
Damian Kucharski

Hi @damiankucharski
are you using the high sensitivity model? If so, it is likely to have several false positive cases. Try the high-precision model as well.
Our preprocessed MRI volumes have an intensity value of around -0.4125 for the empty background. Most of the brain voxels are between 1.3 to 3.0, while other high contrast structures can be 4.0 -7.0. Can you tell me yours so I can quickly check how close your data is to ours.
Due to data privacy regulations, we are not allowed to share the data. To improve the performace, some finetuning one your own training dataset is necessary.

Hello @YixingHuang, please see attached screenshot where I marked some point in the image and associated values.

The intensity range and the appearance are similar to ours. On our test data, on average there will be around 2 false positive (FP)detections per patient. Can you check the current performance on your dataset? Please tell me the sensitivity, precision, #FP per patient, so I can tell that whether the performance on your data is far worse than ours.

Okay, I will try to run all my data through your models, it may take longer time though, I will get back to you with the results.
Apart from that, I am struggling to find a way to specify output directory of the model. Is it possible to set it up or the results must be saved to DeepMedicPlus/DeepMedicPlus/examples/output/predictions/testSessionDm/predictions?

In the testConfig.cfg file, you can change the sessionName from "testSessionDm" to other names. Then the saved folder will change accordingly.

And glad to hear that the high precision model works better.

By the way, can you please tell me more information on your dataset (such as from which company, which exact MRI T1 sequence), so we can have more intuition on data drift across different scanners. Ours is from Siemens Scanners with the contrast enhanced T1 MPRAGE sequence.

Thank you for the information about your acquisition procedure. Sadly I cannot provide you with detailed information due to NDA, but the data comes from multiple instututions and many different scanners. It is therefore quite probable that your model was trained on the data that comes from narrower distribution and my not generalize perfectly to our data. However when the results are published I will definitely share them with you.

Thank you for your information.

@YixingHuang if you are still interested in reading it, we have published the paper, here is the link: https://www.sciencedirect.com/science/article/pii/S0895611124000788?via%3Dihub :)

Thanks for sharing the information. Already got the notification of your article from ResearchGate. Nice work done!


ENH: Artifacts are coerced by transformers

Pair-programmed with @thermokarst
Large change which has removed readers/writers for data-layouts. Instead
data-layouts are now called DirectoryFormats which have no version or name,
instead the classname is used. DirectoryFormats are composed of
FileFormats, which basically match the existing class.
Transformers are registered on the plugin and indicate their ability to
convert one type into another via function annotations.
DirectoryFormats and FileFormats can also be requested as a view and
provide the path as obj.path and as str(obj). DirectoryFormats have
additional API which should be considered a WIP.

Future: use the ResourcePattern to validate the output of actions and transformers

check them qza's why are they there? who added them? what do they know? let's find out!

🎉 🎉 🎉 🎉 🎉 🎉  :robot_face::robot_face::robot_face::robot_face::robot_face::robot_face: 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉 🎉


Add a Minimal CPU support

Is is possible to define/specify a minimal CPU with the very minimal set of features and a very neutral architecture ?
This specification can to be used :

Provide support for not-yet-defined CPUs, or not yet existing hardware. I see that there are at least two issues , one for SPARC (#53) and the other for PPC64 (#2 ).

As a test CPU. Think of fooling pytorch to use this CPU instead of the hardware based one.

For profiling new code. Think of using a very sophisticated XEON while disabling every sophisticated feature and comparing the floating point results and computation times.

Some post-training operations, such as deployment, explanation and prediction do not need a very sophisticated CPU.

Minimal CPU is ecologically friendly.

On a SPARC debian machine, I get this message

```Python 3.9.11 (main, Mar 17 2022, 07:20:01)
[GCC 11.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import torch
Error in cpuinfo: processor architecture is not supported in cpuinfo
>>> quit()


Resizing Control in CanvasLayer will change control's anchor, not margin.

Godot version:

Master: 0ac3687
OS/device including version:
Windows 7
Issue description:

Resizing Control in CanvasLayer will change control's anchor, not margin.
Steps to reproduce:

create a new scene
use CanvasLayer as root
create a Control under CanvasLayer
resize Control

You have the anchor mode activated (top right of the toolbar), that's an expected behaviour.
The problem is that the mode activate itself for no reason, but I have a pending PR to fix that.


haskell-ng: taglib: pkg-config dependency taglib_c not found

When attempting to install nixpkgs.haskellngPackages.taglib, the build fails with the following output:
Setup: The pkg-config package taglib_c is required but it could not be found.

As far as I can tell, the C/C++ taglib is installed correctly on my system and has pkg-config files in /nix/store/...-taglib-1.9.1/lib/pkgconfig.
Possible reason: The pkg-config dependency is called taglib_c because taglib has two different pkg-config targets. Therefore, the auto-generated derivation seems to set taglib_c = null. Curiously, the derivation doesn't show up in Hydra at all from what I can tell.

I committed a fix in https://github.com/NixOS/cabal2nix/commit/aeacd345c9bb877dcafc84e41167169ffda29883.

Fix works for me. Thank you very much for the quick response!


Open source of Hub control

Proposal: Open source of Hub control
I need Hub control in Uno Platform
https://github.com/unoplatform/uno/issues/5249#issuecomment-890324172
The easiest way of porting is to take original Hub control sources and migrate to Uno Platform.
Rationale

Hub control is a crucial control for an app home page
Uno platform is the major motivation to use UWP and WinUI and drastically expand its spreading

As a part of Winui3 we will be making the framework open source, this will need to wait for that.

@ryandemopoulos FYI

What is the time frame of that?

Hello @xperiandri, this is our backlog and we don't expect to get to it till sometime next year. Hope that helps!

The Hub source is all shared now, with https://github.com/microsoft/microsoft-ui-xaml/blob/winui3/release/1.5-stable/dxaml/xcp/dxaml/lib/Hub_Partial.cpp as one of the main files. This code is in ABI style, so it won't map easily to C# or C++/WinRT code.


Add email signup form to the bottom of lander

Description of changes

This PR adds a simple email signup form to the end of the homepage. Its functionality mirrors  our normal signup component in the following ways:

The button pauses while the action resolves
The user is provided with error messaging should any arise
A flash notification pops with an error

Full-Stack Testing
This was successfully tested with our backend (until I broke something with docker), however, it definitely deserves more thorough full-stack testing.
Visual Testing
Certified Responsive™ on firefox, chrome, and safari (on breakpoints down to ~330px)
Issue Resolved

Fixes #745

This looks good from a quick review of the code.

Made an adjustment to the endpoint here, sorry about that!

Approved!  Free free to merge at will, or I can in a couple of hours :)


Contributing a menu item to explorer/context only when right clicking a folder

As per title, is there a way to do that? Being the when thing practically undocumented I couldn't find any info on how to do this.
I this can't be done as of today, I think this should be implemented, there's no point in contributing a menu item to files if one's only targeting folders.

@fabiospampinato The 'when' clause is documented but it is a little hard to find.
https://code.visualstudio.com/docs/getstarted/keybindings#_when-clause-contexts
The when clause of 'explorerResourceIsFolder' may be what you are looking for.

Yup explorerResourceIsFolder
We accept PRs that improve docs
@gregvanl fyi for documentation missing

@JokerDan nice, thanks! Has this been added recently? I'm pretty sure it was undocumented before.

Was probably added with the multi select work in explorer a couple of milestones ago.


There should be a public method to close the file

The file is currently closed in __desctruct method, which is not guaranteed to run.
Ref.:

https://blogs.msdn.microsoft.com/oldnewthing/20100809-00/?p=13203/
https://github.com/keboola/processor-create-manifest/pull/14#discussion_r189224075

I think it is unnecessary.
If you need it explicitly close in some case, just unset it or null it. Same like PDO.

to be clear - it is not guaranteed to run before the program termination
theoretically - it should be there
practically - no one needed it in 6 years

I don't think it should be there even theoretically


[cxx-interop] Treat name lookup as successful if we found a C++ member operator

ClangImporter::Implementation::lookupValue used to return false if it found an overloaded C++ operator that is declared as a member function of a C++ type.
This doesn't have any effect now since the return value isn't used under normal conditions, but it might bite us later.

@swift-ci please smoke test

@swift-ci please smoke test


[0.9.x] [KOGITO-1702] Updated discovery test due to onboarding example migrated to ruleunit

https://issues.redhat.com/browse/KOGITO-1702
cherry-pick: https://github.com/kiegroup/kogito-cloud-operator/pull/268
depends on: https://github.com/kiegroup/kogito-examples/pull/190
Many thanks for submiting your Pull Request :heart:!
Please make sure that your PR meets the following requirements:

[x] You have read the contributors guide
[x] Pull Request title is properly formatted: [KOGITO-XYZ] Subject
[x] Pull Request contains link to the JIRA issue
[x] Pull Request contains description of the issue
[x] Pull Request does not include fixes for issues other than the main ticket
[ ] Your feature/bug fix has a unit test that verifies it
[x] You've tested the new feature/bug fix in an actual OpenShift cluster

test ok

waiting for https://github.com/kiegroup/kogito-examples/pull/190 to be merged


Preprocessor support

Hypothetically speaking, where would one add in preprocessor support in the application? Having gotten the UI/UX team invested in sass, it's going to be one hell of a struggle to rip it away from them. In previous applications, we used gulp to run tasks which produces artifacts in the static route, not sure how to go about in adonis.

how a backend framework can decide what do to with sass.

install gulp as you usually do.
Create a gulpfile.
Keep sass under resources/sass and compile css to public directory

Thanks now that you put in steps, it seems intuitively obvious.


Page not found in 3.0.0 redirection is wrong

Description:
When there is a page not available in 3.0.0 it takes the user to the 3.1.0 page not found page.
Clicked on this

Redirected to this

Fixed
https://apim.docs.wso2.com/en/3.0.0/learn/analytics/adding-third-party-non-osgi-libraries/test
https://apim.docs.wso2.com/en/3.1.0/learn/design-api/create-api/create-a-rest-api/test
For future releases also, this needs to be fixed by the digital operations team

@erangatl , thanks loads for looking into this issue and resolving it.


Support beacon proxies

Given that OpenZeppelin Contracts contains beacon proxies, it would be expected that the Upgrades Plugins should support them as well.
It is not clear if this should take the form of a kind: 'beacon' option to deployProxy, or if it should be a new family of functions: deployBeacon and upgradeBeacon. It seems that people interested in beacons will exclusively be those using on chain factories of upgradeable contracts, so deployProxy might not really be the right abstraction for them, although it would certainly be useful for testing, so we might want both.

Nearing two months since this has been published. Any updates here?
Also wondering why beacon proxies aren't supported in the upgrades plugin; it does seem like a fairly niche use-case, but would be a nice quality of life improvement to be able to use the plugin on these.

@bundle-boy We agree it would be awesome to support beacon proxies here and hope we can work on this in the next few weeks.
Can you comment on the question of deployBeacon vs deployProxy? I'd love to hear how you would expect to use the plugin in the context of beacon proxies so we can have more clarity on the direction we should take.

I want to share my experience using beacon proxies for development and deployment. We use on-chain factory to deploy beacon proxies so we don't need deployBeacon functionality at all. Even tests use factory class to test for upgradability. We do use method upgradeBeacon to upgrade our beacon proxies via Hardhat script which is quite handy. Unfortunately, right now script is not capable to verify storage and other checks due to using hardhat-deploy for deployment so we are doing line by line peer review in case of upgrade.
I would say having an ability to run checks before calling an upgrade method is the biggest value proposition. Writing a script to deploy or upgrade a beacon proxy is trivial. Checking for upgradability compatibility is not. Especially in case of using different deployment solutions. Just using artifacts folder as a place to store deployed artifacts is not viable for most projects.

A note for people subscribed: we have one last simplification pending before we release this but it should not be long.

Any update on when this will be officially supported? I see #491 is pending review, is this the last simplification before beacon upgrades are put in production?

@leonwilly Yes, will be done this week.


Model checkpointing with ZeRO-3 training with NVMe offload

This is a proposal for an implementation of checkpointing models when training with ZeRO-3 with NVMe offload. It consists of several logical parts:

Currently, the names of the files used in the checkpoint are based on the Python id of the parameter object, which is just the parameter's address in memory. This is not stable across runs, which has two disadvantages:

The NVMe offloading files grow with every run of the model even if the architecture did not change. This wastes disk space and, at least for me, was a surprise when I first saw it. It is not related to checkpointing.
Without a way to match the file to the offloaded tensor we can't reload the checkpoint.

We propose an alternative naming scheme. The parameters are named after their ds_id instead of their Python id, and the tensors are named after their state_name and (new) parameter id. See commit cbf83d9.

A model checkpoint now has to include all the offloaded tensor files. During checkpoint save/load we copy all the tensor files to/from the "offloaded_tensors" subdirectory of the checkpoint. We provide some logging on the remaining space on the file system due to the potential size of these files, especially as they accumulate in each checkpoint. See commits 0accdb8, ba7d3e6, a99daa0.

When loading the checkpoint, the optimizer already has prepared buffers for swapping. We need to purge them so that they are replaced with the freshly copied on-disk buffers from the checkpoint. See commit 6c6a1ec.

I'm working on a test for this feature but I wanted to finally get this code in front of the DeepSpeed team for your feedback.

@eisene, this is really amazing! Thanks so much. I will review asap.

Closing in favor of #4707


RecordUpsertForm.submit() hanging when creating user record

I love PocketBase!  Thanks for all your work on it.
I'm trying to create a user record in a server hook.  The submit() call hangs.
As you'll see below, I tried calling validate(), validateAndFill(), and drySubmit() and those all worked fine.  But submit() hangs.  (It also hangs without those calls.)
Partial source code:
            ...
            // User will set their own password when they click the link in the email.
            const alphanumeric = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
            const unguessablePassword = $security.pseudorandomStringWithAlphabet(20, alphanumeric)

            const record = new Record(userCollection)
            const form = new RecordUpsertForm($app, record)

            const formData = {
                // "id" not set until it is saved.
                // "username": generated by Pocketbase
                "password": unguessablePassword,
                "passwordConfirm": unguessablePassword,
                "email": email,
                "emailVisibility": true,
                "verified": false,
                "firstName": firstName,
                "lastName": lastName,
                "cell": cell,
                // "segment":
                "permissionsIsUES": false,
                // "permissionsConference": TODO: How to set to empty?
                // "permissionsHotel": TODO: How to set to empty?
            }

            console.log("User data: " + JSON.stringify(formData))  // TODO: Don't log passwords!!!!
            form.loadData(formData)
            console.log("loadData done")
            form.validate()
            console.log("validate done")
            form.validateAndFill()
            console.log("validateAndFill done")
            form.drySubmit
            console.log("drySubmit done")

            form.submit()  // validate + saveRecord
            console.log("submit done")

        ...

Output from "./pocketbase serve --debug --indexFallback=0"

2024/07/30 10:37:56 User data: {"password":"cj6O61iqHD26DU758LR2","passwordConfirm":"cj6O61iqHD26DU758LR2","email":"j@m.com","emailVisibility":true,"verified":false,"firstName":"Jack","lastName":"Miller","cell":"+566","permissionsIsUES":false}
2024/07/30 10:37:56 loadData done
[0.00ms] SELECT {{_collections}}.* FROM _collections WHERE [[id]] = 'user_coll_id' OR LOWER([[name]])='user_coll_id' LIMIT 1
[0.00ms] SELECT count() FROM User WHERE<EMAIL_ADDRESS>LIMIT 1
2024/07/30 10:37:56 validate done
[0.00ms] SELECT {{_collections}}. FROM _collections WHERE [[id]] = 'user_coll_id' OR LOWER([[name]])='user_coll_id' LIMIT 1
[0.00ms] SELECT count() FROM User WHERE<EMAIL_ADDRESS>LIMIT 1
[0.00ms] SELECT {{_collections}}. FROM _collections WHERE [[id]] = 'user_coll_id' OR LOWER([[name]])='user_coll_id' LIMIT 1
[0.00ms] SELECT count() FROM User WHERE LOWER([[username]])='user34851' LIMIT 1
2024/07/30 10:37:57 validateAndFill done
2024/07/30 10:37:57 drySubmit done
[0.00ms] SELECT {{_collections}}. FROM _collections WHERE [[id]] = 'user_coll_id' OR LOWER([[name]])='user_coll_id' LIMIT 1
[0.00ms] SELECT count() FROM User WHERE LOWER([[username]])='user34851' LIMIT 1
[0.00ms] SELECT {{_collections}}. FROM _collections WHERE [[id]] = 'user_coll_id' OR LOWER([[name]])='user_coll_id' LIMIT 1
[0.00ms] SELECT count() FROM User WHERE<EMAIL_ADDRESS>LIMIT 1
[0.00ms] SELECT {{_collections}}. FROM _collections WHERE type='auth' ORDER BY created ASC

It hung there.   After I hit Control-C, the following was printed:

^C[101707.00ms] INSERT INTO User (cell, created, email, emailVisibility, firstName, id, lastName, lastResetSentAt, lastVerificationSentAt, passwordHash, permissionsConference, permissionsHotel, permissionsIsUES, segment, tokenKey, updated, username, verified) VALUES ('+566', '2024-07-30 15:37:57.486Z'<EMAIL_ADDRESS>true, 'Jack', 'jj416yv9yz4k18n', 'Miller', '', '', '$2a$12$rxMU9j7spfeCDWOKhdiVp.bUUSzw4yo9YZZwmgOccg9eeDd/t/IKS', '[]', '[]', false, '', 'lcI77vvxSXCANhUoMhGFuutkIzQv0IaoiXXsg8bOtlanxlBgG3', '2024-07-30 15:37:57.486Z', 'User34851', false)
2024/07/30 10:39:39 Error saving brand new record: sql: database is closed
2024/07/30 10:39:39 Log save failed: sql: database is closed

I don't think this is a PocketBase issue, or at least I don't know how to reproduce it (the for is also used internally by the default update API request and there are automated tests that verify that it works correctly).
If you are running the above inside of a transaction, then you need to change the form Dao with that of the transaction, aka. form.setDao(txDao), see https://github.com/pocketbase/pocketbase/discussions/5265.
In any case, if you still think that this is a PocketBase issue, please provide a minimal reproducible example or at least a more complete code sample with details about your collections configuration (Admin UI > Settings > Export collections).

As a side-note: for passwords (or any other security related context) prefer using $security.randomStringWithAlphabet instead of $security.pseudorandomStringWithAlphabet.

form.setDao(txDao) fixed it.  Thanks!
Good side-note!
I'll try to submit a better formatted issue in the future.  (I'm shocked at how few issues I have run into.  I'm impressed!)


Roll Plugins from faa26ec364cd to bea4b14a6a6f (2 revisions)

https://github.com/flutter/plugins/compare/faa26ec364cd...bea4b14a6a6f
2021-01-20<EMAIL_ADDRESS>Add Labeler Github Action (flutter/plugins#3433)
2021-01-19<EMAIL_ADDRESS>combine release messages and versions (flutter/plugins#3435)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-plugins-flutter-autoroll
Please CC<EMAIL_ADDRESS>on the revert to ensure that a human
is aware of the problem.
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md

Commit queue failed; closing this roll.

Commit queue failed; closing this roll.