Suppress warnings on nRF52832 detection

@Tiwalun do you happen to know what's going on with these? During ROM table read we are greeted with the following warnings:
WARN probe_rs::architecture::arm::memory::romtable: Component at 0xe0001000: CIDR0 has invalid preamble (expected 0xd, got 0x0)
 WARN probe_rs::architecture::arm::memory::romtable: Component at 0xe0001000: CIDR2 has invalid preamble (expected 0x5, got 0x0)
 WARN probe_rs::architecture::arm::memory::romtable: Component at 0xe0001000: CIDR3 has invalid preamble (expected 0xb1, got 0x0)
 WARN probe_rs::architecture::arm::memory::romtable: Component at 0xe0000000: CIDR0 has invalid preamble (expected 0xd, got 0xb1)
 WARN probe_rs::architecture::arm::memory::romtable: Component at 0xe0000000: CIDR1 has invalid preamble (expected 0x0, got 0x1)
 WARN probe_rs::architecture::arm::memory::romtable: Component at 0xe0000000: CIDR2 has invalid preamble (expected 0x5, got 0xb1)
 WARN probe_rs::architecture::arm::memory::romtable: Component at 0xe0040000: CIDR0 has invalid preamble (expected 0xd, got 0x0)
 WARN probe_rs::architecture::arm::memory::romtable: Component at 0xe0040000: CIDR2 has invalid preamble (expected 0x5, got 0x0)
 WARN probe_rs::architecture::arm::memory::romtable: Component at 0xe0040000: CIDR3 has invalid preamble (expected 0xb1, got 0x0)

No idea, but for identifying the Nordic chips reading a romtable shouldn't be necessary.
These components look like standard ARM components, so it's a bit surprising that they don't have proper entries.

No idea, but for identifying the Nordic chips reading a romtable shouldn't be necessary.

As it's been implemented for ages, we first read ArmChipInfo - and that comes from the rom tables.

These components look like standard ARM components, so it's a bit surprising that they don't have proper entries.

Did Nordic do an oopsie? :) We read GenericVerificationComponent classification for these...

I tried this out with my chip, I was curious if there is any power information included.
I didn't see any warnings, are you doing something to trigger this?

I'm not doing anything special, I'm seeing these warnings in my tester (e.g. https://github.com/probe-rs/probe-rs/actions/runs/10271931612/job/28423262197), during the chip detection phase before downloading an embedded-test binary.
I didn't try power cycling the board or anything similar, all tests seem to pass, it's just these warnings and nothing else.

I would like to have something reproducible. Could you share what the embedded-test part actually does? The pipeline yaml doesn't really say much.

Here's the code. It's nothing fancy, so if I didn't mess something royally up, it shouldn't be the culprit.
My nRF52 is ages old at this point, the devkit is from 2017 and this isn't its first rodeo. I wouldn't rule out something related to its hardware revision, or even some damage - although damage seems unlikely to me.

That being said, I have an nRF52833 with the same symptoms:
 WARN probe_rs::architecture::arm::memory::romtable: Component at 0xe0001000: CIDR0 has invalid preamble (expected 0xd, got 0x0)
 WARN probe_rs::architecture::arm::memory::romtable: Component at 0xe0001000: CIDR2 has invalid preamble (expected 0x5, got 0x0)
 WARN probe_rs::architecture::arm::memory::romtable: Component at 0xe0001000: CIDR3 has invalid preamble (expected 0xb1, got 0x0)
 WARN probe_rs::architecture::arm::memory::romtable: Component at 0xe0000000: CIDR0 has invalid preamble (expected 0xd, got 0xb1)
 WARN probe_rs::architecture::arm::memory::romtable: Component at 0xe0000000: CIDR1 has invalid preamble (expected 0x0, got 0x1)
 WARN probe_rs::architecture::arm::memory::romtable: Component at 0xe0000000: CIDR2 has invalid preamble (expected 0x5, got 0xb1)
 WARN probe_rs::architecture::arm::memory::romtable: Component at 0xe0040000: CIDR0 has invalid preamble (expected 0xd, got 0x0)
 WARN probe_rs::architecture::arm::memory::romtable: Component at 0xe0040000: CIDR2 has invalid preamble (expected 0x5, got 0x0)
 WARN probe_rs::architecture::arm::memory::romtable: Component at 0xe0040000: CIDR3 has invalid preamble (expected 0xb1, got 0x0)

So 🤷♂

Just realised I actually looked at a 52833 anyways. From a power-on reset, what commands do you run to cause this?

probe-rs run <path-to-elf>

This just doesn't go away for me. I've tried erasing, then unplugging-and-replugging, but the first flashing gave the warnings. I've tried erasing, then flashing a softdevice and an nrf-softdevice-based project, but still warnings. The nrf-softdevice project uses embassy, the embedded-test technically does too, but that's most likely just sitting in a semihosting breakpoint (or a hardfault handler I guess if there is no debugger connected?). I even get these warnings with --connect-under-reset (no matter that the connection times out with that).


Lock event properties not populated correctly

Regardless of what triggered a lock/unlock event, the events I receive always contain activity_type=ActivityType.LOCK_OPERATION_WITHOUT_OPERATOR, operated_by=None, operated_keypad=False and other inaccurate info. I saw one event with operated_remote=True, but almost all events had operated_remote=False, even when activated by the Yale app.
Is there anything I can do at my end to fix the events?
(Great library by the way, I built a handy little Yale <> mqtt bridge in a few hours)

Can you post the debug logs?

2023-03-14 21:35:36.635 [alpha] docker yalemqtt [DEBUG] Recieved new messages on channel UUID for device_id: deadbeef with timetoken:<PHONE_NUMBER>5909667: {'remoteEvent': 1, 'status': 'kAugLockState_Unlocked', 'info': {'action': 'status', 'startTime': '2023-03-14T20:35:36.058Z', 'context': {'transactionID': 'Ozdb83KYSG', 'startDate': '2023-03-14T20:35:36.054Z', 'retryCount': 1}, 'lockType': 'lock_version_7', 'serialNumber': 'L', 'rssi': -81, 'wlanRSSI': -54, 'wlanSNR': 45, 'duration': 428, 'lockID': 'deadbeef', 'bridgeID': 'deadbeef', 'serial': 'C'}, 'doorState': 'kAugDoorState_Closed', 'retryCount': 1, 'totalTime': 444, 'resultsFromOperationCache': False}
kAugDoorState_Closed is never going to have an operator since the lock doesn't know who opened/closed the door.
Do you have a lock event ?

Sure, here's a lock event from immediately after. I also seem to be getting a lot of extra events, both doorclosed events every time there is a lock/unlock action, but also events even when there is no activity.
2023-03-14 21:37:05.765 [alpha] docker yalemqtt [DEBUG] Processing activity: {'deviceID': 'deadbeef', 'house': 'UUID', 'dateTime':<PHONE_NUMBER>747.561, 'deviceName': 'Other Door', 'deviceType': 'lock', 'info': {'action': 'status', 'startTime': '2023-03-14T20:37:05.115Z', 'context': {'transactionID': 'o5yTvW1-9', 'startDate': '2023-03-14T20:37:05.112Z', 'retryCount': 1}, 'lockType': 'lock_version_7', 'serialNumber': 'L', 'rssi': -91, 'wlanRSSI': -59, 'wlanSNR': 40, 'duration': 511, 'lockID': 'deadbeef', 'bridgeID': 'deadbeef', 'serial': 'C', 'remote': True}, 'action': 'lock'}
2023-03-14 21:37:05.765 [alpha] docker yalemqtt [INFO] Lock event: <LockOperationActivity action=lock activity_type=ActivityType.LOCK_OPERATION_WITHOUT_OPERATOR activity_start_time=2023-03-14 21:37:05.747561 device_name=Other Door operated_by=None operated_remote=True operated_keypad=False operated_autorelock=False operator_image_url=None operator_thumbnail_url=None>

Can you post the activity data from pubnub before it's processed?

This one?

2023-03-14 21:36:51.498 [alpha] docker yalemqtt [DEBUG] Recieved new messages on channel 192e2cfc-746e-4423-8606-8f35b0e296cf for device_id: 09B76412C70BE3489726CB0E75CDFEF6 with timetoken:<PHONE_NUMBER>3138031: {'remoteEvent': 1, 'status': 'kAugLockState_Unlocked', 'info': {'action': 'status', 'startTime': '2023-03-14T20:36:40.516Z', 'context': {'transactionID': 'NMv4GXYRl9', 'startDate': '2023-03-14T20:36:40.512Z', 'retryCount': 1}, 'lockType': 'lock_version_7', 'serialNumber': 'L7I7G000HC', 'rssi': -82, 'wlanRSSI': -54, 'wlanSNR': 45, 'duration': 10683, 'lockID': '09B76412C70BE3489726CB0E75CDFEF6', 'bridgeID': '63dc0f853c6d995613f6d4e1', 'serial': 'C6W73002KW'}, 'doorState': 'kAugDoorState_Closed', 'retryCount': 1, 'totalTime': 10710, 'resultsFromOperationCache': False}

2023-03-14 21:37:05.765 [alpha] docker yalemqtt [DEBUG] Recieved new messages on channel 36c572fd-6559-473e-8775-fa9cd3654971 for device_id: 63C8038BDF91CB4FBC254AED8E742ACE with timetoken:<PHONE_NUMBER>7475607: {'remoteEvent': 1, 'status': 'kAugLockState_Locked', 'info': {'action': 'status', 'startTime': '2023-03-14T20:37:05.115Z', 'context': {'transactionID': 'o5yTvW1-9', 'startDate': '2023-03-14T20:37:05.112Z', 'retryCount': 1}, 'lockType': 'lock_version_7', 'serialNumber': 'L7I7L000F3', 'rssi': -91, 'wlanRSSI': -59, 'wlanSNR': 40, 'duration': 511, 'lockID': '63C8038BDF91CB4FBC254AED8E742ACE', 'bridgeID': '63bbe80a4e7fc46a36ebce80', 'serial': 'C6W3X004XJ'}, 'doorState': 'kAugDoorState_Closed', 'retryCount': 1, 'totalTime': 544, 'resultsFromOperationCache': False}

Yes, how did you lock the door for this message?

If it's a replay of a previous event, from pubnub, the way to tell the operator is to fetch the activities, API, and than compare the timestamps

That was from the Yale app. Ok, I've only been relying on the pubnub events. To get more information I need to use the activities API as well?

Yes.  If it's the first time the event happens it should include the operator. If not it's likely a replay
Startup
Connect pubnub
Fetch activities
Populate operators from activities
Switch to processing new events with pubnub

Well, these are not replays, these events I manually trigger after I fire up the service and subscribe.

This was resolved by fetching the activity log from the api.


HDDS-2819. Fix timeout threshold is too small to exit safemode when security enabled

#137  What changes were proposed in this pull request?
How to reproduce the problem:

When I run ozone-0.5.0-SNAPSHOT/compose/ozonesecure/test.sh on computer with 8 core 1999.971 Mhz, 16G memory, it always fail and report "Safemode is still on".

Then I enlarge the timeout threshold in testlib.sh from 90 seconds to 360 seconds, and record the time to exist safemode 10 times,  and the average time to exit safemode is about 160 seconds, and the maxum time is about 240 seconds.

How to fix the problem:
Enlarge the timeout threshold to 600 seconds when security enabled.
What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-2819
How was this patch tested?
Run ozone-0.5.0-SNAPSHOT/compose/ozonesecure/test.sh on computer with 8 core 1999.971 Mhz, 16G memory.

@ChenSammi Could you help review this patch ? Thank you very much.


add tests for redis

For some reason, the tests fail. But, do these changes suffice for adding the test? What about the async and await keywords? Are they applicable here? CC: @btel @wolfv
Also, they won't run on CI for now. So the above comment was for failing locally.

Update: The tests pass locally, only the CI remains to be configured.

it looks good, it would be also great to add docs about setting up quetz with redis workers (launching redis, rq and workers, + configuration that we already discussed)


Refactor SequentialTasks & SequentialRuns Tests

Changes

This commit removes the defer functions within the tests: TestDAGExecutionQueueSequentialTasks and TestDAGExecutionQueueSequentialRuns. This enables the invdividual test cases to pass in isolation in addtion to passing when run all at once.
/kind cleanup
Submitter Checklist
As the author of this PR, please check off the items in this checklist:

[ ] Has Docs if any changes are user facing, including updates to minimum requirements e.g. Kubernetes version bumps
[X] Has Tests included if any functionality added or changed
[X] Follows the commit message standard
[X] Meets the Tekton contributor standards (including functionality, content, code)
[X] Has a kind label. You can add one by adding a comment on this PR that contains /kind <type>. Valid types are bug, cleanup, design, documentation, feature, flake, misc, question, tep
[ ] Release notes block below has been updated with any user facing changes (API changes, bug fixes, changes requiring upgrade notices or deprecation warnings). See some examples of good release notes.
[ ] Release notes contains the string "action required" if the change requires additional action from users switching to the new release

Release Notes
NONE

@EmmaMunley I think the explanation here is not quite right: the tests do currently pass in isolation and all at once, but the problem is that they influence each other by sharing state, modifying it, and resetting it at the end of the test. I would reword this commit message/PR description to explain that we're reducing the scope of these variables to individual test cases rather than all of them at once.


chore(deps): upgrade jenkins-x/jx3-pipeline-catalog to version 3.2.316

from: https://github.com/jenkins-x/jx

/hold

/close


Slider: The event listening area for drag events should be the slider instead of the background

Please Describe The Problem To Be Solved
The current event listener are adding on the bg instead of the slider, which is counterintuitive.
Sometimes we also want to design the background of the slider as a thin line, but the slider is larger. In the current behavior, it is not easy for the user to drag the slider.

(Optional): Suggest A Solution
Add event listeners to "slider" instead of "bg", or to both.

Fixed in #137


TrackEvent causes crash

I'm getting this error when I use trackEvent:
2011-08-31 17:52:42.907 Purina Pet Health[29844:5d03] [ERROR] Error occurred calling next on a PLSqliteResultSet. SQLite error: 'constraint failed' for 'INSERT INTO events (user_id, random_val, timestamp_first, timestamp_previous, timestamp_current, visits, category, action, label, value) VALUES (?,?,?,?,?,?,?,?,?,?)'
It appears the values are all null when I use trackEvent and this crashes my iOS app.
Am I doing something wrong, or is trackEvent not fully working?

I am getting this error also. What's up? Thought the merge was because this now worked?

Figured it out. All parts of the trackEvent have to be passed to the analytics script:
In my case:
Titanium.App.Analytics.trackEvent('Videos', 'Stop', win.movieUrl, '');
Notice I do not need a value so I pass in an empty variable. Make sure to reset your simulator and clear your build folder to see this working if you have run once and got a crash already.


Small installation instructions enhancement

Plus minor nitpicks and likely bugs.
Also, I am working on an implementation of Async Actor-Critic, which I read somewhere you have in progress. If you're also working on it now, please tell me so we can coordinate and avoid duplicate work.

@rhaps0dy Thanks for fix. Yes I'm working on A3C and you can see the codes at https://github.com/devsisters/async-rl-tensorflow. But before finishing it, I had a hard time debugging this repo and https://github.com/devsisters/DQN-tensorflow/ to add Double Q-learning, Duelling network, and set the environment which is exactly same as Nature paper.
There is non-convergence issue at https://github.com/devsisters/DQN-tensorflow/ which contains:

Max pooling for most recent 2 frames
Frame skip (action repeat) for 4 times
Terminal if life is discounted
Duelling network
Double Q-learning
Give -1 reward if dead (this is not used in Nature but by adding this, I can train this model with upper features. Without this, not working for frame_skip=4 or 2 but only working for frame_skip=1)

I created multiple repos but this repo, https://github.com/carpedm20/deep-rl-tensorflow is the most cleanest and my favorite. So you are interested in implementing A3C and is there any codes you wrote since now?

Hello,
Well, I'm glad this is the cleanest repo. I wrote an implementation of A3C, but it works really badly. So far the code is just at my fork of this repo, https://github.com/rhaps0dy/deep-rl-tensorflow/ . If you execute the command for debugging in the README, it learns, but slowly and it doesn't get much reward. Note the stupidly small learning rate. Perhaps you can identify what is wrong?
What do you mean, a non-convergence issue? On the toy problem too? And is it fixed in this repo (deep-rl-tensorflow) ?


feat(compilation): introduce queue handlers representing task_queue

Summary

Test Plan

Require Documentation?

[ ] No
[ ] Yes, the corresponding rspack-website PR is __

Current dependencies on/for this PR:

main

PR #4785   👈

This stack of pull requests is managed by Graphite.


src folder

main.ts should be in a src folder and settings could be in another ts file

You are free to do that after you fork the template repo.


VsTest Code Coverage is not published as artifact

Type: Bug
Task name: VSTest
Environment
Server: Azure Pipelines
Account name, team project name, build definition name/build number: Can be provided on demand. I do not want to share business information here.
Agent: Private

Agent variable
Value

Agent.Version
2.168.2

Agent.OS
Windows_NT

Agent.OSArchitecture
X64

Agent.OSVersion
10.0.14393

Issue Description
I have a Visual Studio Test task in my build pipeline:
steps:
- task: VSTest@2
  displayName: 'Unit test solution'
  inputs:
    testAssemblyVer2: |
     **\*UnitTests.dll
     !**\obj\**
    vsTestVersion: toolsInstaller
    codeCoverageEnabled: true

As you can see, Code Coverage is enabled. In the logs I can see that the .coverage file is generated, but it is never published in the artifact for the pipeline, nor is it parsed by the pipeline (there is no "code coverage" tab visible in the finished pipeline).
This is somewhat related to #11677 but not excatly the same.
Task logs
Debug log. I have edited out business critical information:
UnitTestDebugOutput.txt
From this log it certainly looks like the .coverage file is published, but it still does not appear inside the "1 published; 1 consumed" artifacts, and the "code coverage" tab is not visible (and it still only says "Setup code coverage" instead of displaying the actual results).
It actually looks like it's trying to publish a different file location than what has been generated. These two does not match:

Type
Path

Generated
C:\VSTSAgent_work_temp\TestResults\f811a5af-f624-44d2-806d-5dd8eef7154f\BuildServerName$_BuildServerName_2021-05-03.12_54_19.coverage

To be published
C:\VSTSAgent_work_temp\TestResults\BuildServerName$_BuildServerName_2021-05-03_12_54_27\In\BuildServerName\BuildServerName$_BuildServerName_2021-05-03.12_54_19.coverage

Anybody have any updates about this?

Still no updates?!

Thanks for the suggestion, but I'm running .NET Framework, not .NET Core

Comment to keep issue open


[question] kerning.scaleBy accepting tuple – why?

In the documentation for kerning.scaleBy I see two examples:
            >>> myKerning.scaleBy(2)
            >>> myKerning.scaleBy((2,3))

Which scenario is the 2,3 example for? Vertical kerning? (not likely)

see the docs:  The first value of the **factor** will be used to scale the kerning values.
a normalised scale value is an x,y tuple


added manifest update script

Added a simple node script that developers can use to update their old manifests. Created a tools (open to suggestions...) directory. also added a readme.

Scripts looks great to me, thanks for the thoroughness and supporting directories!
Two thoughts:

It might be worth discussing if we actually want this in the extensions repo.  If we put it here we will need to leave it there for a significant amount of time (possibly post release), which might be confusing to new users down the road.  An alternative would be to put it in a separate github repo.  Or perhaps we just make it available via the pre-release site since it only will be used by those users? I'd probably vote for that last one.

@Kovner your thoughts here?

Wanted to verify you tested this on mac too.

Yea I was thinking about that as well, if we put the script in the github repo we might have to leave it here and support it going forward. I think the pre-release site is a good idea, I think we can put it there, and reference it in our documentation. @d45

@benlower here's the PR with the manifest update script along with the readme. haven't tested on mac yet, will do that in a bit.

tested on mac, works as expected.

@jz-huang should we close this since it looks like we've distributed it via the pre release site?

yep, closing the pr.


[Feature] Add a section "writer" in a mrmr.

What
Add a section "writer" in a mrmr, like bellow:
---

## 1e92ab5c-b399-41a7-bf10-5d96738ed6f8

2022-11-13 11:42:00

[writer](#yaisland10_cebc6bf4-04ba-4f6d-b569-3d1821abb778)

demo mrmr.

Why
Be possible to do "Six Thinking Hats" or write a one diary with familly.

Support multi writer to one mrmr?
e.g. :

---

## 1e92ab5c-b399-41a7-bf10-5d96738ed6f8

2022-11-13 11:42:00

[writer](#yaisland10_cebc6bf4-04ba-4f6d-b569-3d1821abb778)
[writer](#whitehat_0dadaa8b-c5bc-41af-91b7-ea91a05ed6c5)

This mrmr write with Mr.whitehat.


Add Azure Key Vault version support

Adding Azure Key Vault certificate version support, similar to azuresigntool changes.

Thanks, @jimmycartrette!  It's looking good.  Thanks for making those changes.
Only a few things remain:

You have not yet agreed to the CLA.  See https://github.com/dotnet/sign/pull/789#issuecomment-2454739649
You need to run eng\common\CIBuild.cmd to regenerate *.xlf files from the .resx file.  You updated the .resx file, but the .xlf files are now out of date.
Your branch is out-of-date with the base branch.  Can you rebase on latest main?

Thanks I'm just trying to get confirmation that I can sign the agreement

Hi @jimmycartrette, just checking in?


Add support for ajax functions on a has-many relationship

Now you can setup relationships between models in Spine and fetch the related data lazily and asynchronously!
Part of a series of ideas I have for Spine, based on monkey-patches freedom-patches I've been amassing in my own projects.
The idea here was that if, say, an Author has many Books, you can setup the relationship on the models and then call author.books().fetch() to trigger an ajax request to /author/123/books.
I'm basically looking for love-it/hate-it feedback. If there's some desire to see this functionality in Spine, I'll follow up with unit tests and so forth to make this a better PR.

Only waiting on tests to get this included


[DO NOT MERGE] - Delete contact documents with old id format

The _id field for most content is the same as the link (including the leading /), but contacts have an _id without a leading slash.
The publishing to the new govuk index will now make each contact document have an _id with the leading / therefore we need to delete all the old documents.
This task can be removed once it has been run in production after the contact format documents have been republished to the new govuk index.
https://trello.com/c/dLnAxXzs

Going about this a different way.


Question about 500Hz Maximum PWM Frequency

Hello,  Thanks for creating a great library, particularly its non-blocking feature.
I understand controllers and interrupt driven timers but don't have experience with the ESP32 family to fully understand its features and limitations.
Do you see a problem with extending the maximum frequency from 500Hz to 1,000Hz?
My simple testing seems to suggest it works but I don't have access to an Oscilloscope at the moment to confirm both the frequency and waveform.

Thanks for your interest in the library and nice words.
The max 500Hz is just a conservative frequency to be sure there is no issue, but I think you can use up to multi 1000Hz or a little bit more w/o any issue, depending on how many PWM channels you're using.
To test using higher freq., you can modify this line ESP32_PWM_ISR.h#L110 to
if ( ( frequency > 0 ) )

from
if ( ( frequency > 0 ) && ( frequency <= 500 ) )

Having fun testing,


uWSGI breaks pip install on windows

Hi,
I'm trying to install simple_tensorflow_serving via  pip, but uWSGI is not supported on windows.
Is there any specific reason why uWSGI is used in this project?
i was thinking of switching out uWSGI with Gunicorn or Waitress, and running a manual build.
would you recommend this approach for windows?
Thanks.

Sorry about that @ashbeats . The latest version of simple-tensorflow-serving(>=0.7.0) requires uwsgi to run by default. You may try install with pip install simple-tensorflow-serving==0.6.6 to use the older one .
In the future, we may support run simple-tensorflow-serving with multiple server backends including the flask internal server, uwsgi and others.


disable test_discover_complex_default and

Disabled 2 python tests to get a passing CI.
Issue to fix those tests:
https://github.com/microsoft/vscode-python/issues/14023

Codecov Report

Merging #14024 into release-2020.09 will decrease coverage by 0.01%.
The diff coverage is n/a.

@@                 Coverage Diff                 @@
##           release-2020.09   #14024      +/-   ##
===================================================
- Coverage            59.87%   59.85%   -0.02%
===================================================
  Files                  693      692       -1
  Lines                38345    38337       -8
  Branches              5514     5513       -1
===================================================
- Hits                 22958    22946      -12
+ Misses               14207    14205       -2
- Partials              1180     1186       +6

Impacted Files
Coverage Δ

src/client/datascience/crossProcessLock.ts
79.41% <0.00%> (-11.77%)
:arrow_down:

src/client/common/utils/platform.ts
60.00% <0.00%> (-8.00%)
:arrow_down:

src/client/linters/pydocstyle.ts
86.66% <0.00%> (-2.23%)
:arrow_down:

src/client/datascience/debugLocationTracker.ts
76.56% <0.00%> (-1.57%)
:arrow_down:

...ient/datascience/jupyter/kernels/kernelSelector.ts
62.80% <0.00%> (-1.20%)
:arrow_down:

src/client/common/process/proc.ts
14.49% <0.00%> (-0.73%)
:arrow_down:

...datascience/notebookStorage/nativeEditorStorage.ts
66.34% <0.00%> (-0.64%)
:arrow_down:

src/client/datascience/jupyter/kernels/helpers.ts
34.23% <0.00%> (-0.63%)
:arrow_down:

.../datascience/interactive-common/interactiveBase.ts
5.77% <0.00%> (-0.03%)
:arrow_down:

src/client/datascience/types.ts
100.00% <0.00%> (ø)

... and 6 more

Continue to review full report at Codecov.

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


Support return and throw generator methods

Per the spec[1], generator objects have two methods which I neglected to
implement on the first go 'round.
return is somewhat special, because it means the return type can be
widened outside the generator function declaration itself. The argument
passed to return becomes the completion value of the generator itself,
and return value is the iterator result with done:true and the
provided value.
throw is more straightforward, but led me to a (perhaps controversial)
change: I think the type of the catch parameter should be mixed,
instead of an open tvar. In a perfect world, Flow would know exactly
what type was thrown, but barring that, we should be pessimistic and
require the user to do a dynamic type test (invariant() is useful for
this).
This change is unrelated to generators, but I think the throw API
invites people to pass values into a generator, and I don't want Flow to
ignore potential runtime errors caused by that use.

http://www.ecma-international.org/ecma-262/6.0/#sec-generator-objects

Actually are we overthinking it? Should we just do something like
return(value: Return): { done: true, value: value };

I'm having trouble deciding why not, especially since a generator, once done, stops returning the value.

Regarding your "overthinking it" comment—maybe. I don't have the b/w to do due diligence on that, but if you do, feel free to add it in if/when you merge.
For the rest, I'm pushing up a couple commits...

Sorry it took me so long to land this! It's in now, though! Thanks!


How to check the outgoing buffer size?

I'd like to implement something like volatile messages.
So if I have heavy amount of data, and the network can't handle that, the outgoing buffer may pile up.
I'd like to terminate the connection when reaching a certain limit for the buffer.
NodeJS sockets have a property bufferSize http://nodejs.org/api/net.html#net_socket_buffersize.
However when I launch a ws server and inspect a single ws client connection, I notice that it actually has multiple sockets, that have the attribute bufferSize
ws._socket;
ws._ultron.ee;
ws.upgradeReq.socket;
ws.upgradeReq.connection;
ws.upgradeReq.client;
ws._sender._socket;

Which of these is the socket for outgoing data, that I could use to determine if there isn't a problem with congestion of the messages, and that isn't piling up?

https://github.com/einaros/ws/blob/master/lib/WebSocket.js#L360
aka, ws.bufferedAmount

Thanks! I had noticed it, but wasn't sure what it's for.


Pin maze.io/x/duration and miscies

Still getting timeout when trying to go mod vendor with this one.
Cleanup image list to pin them on ECR in .tekton/pull/push yaml
Signed-off-by: Chmouel Boudjnah<EMAIL_ADDRESS>

/lgtm


Memory issues

Hey,
I noticed that Craftsim is displaying strange behaviour related to memory.
Every time you craft something, it'll jump up about 6 MB in memory usage till it hits about 75MB and it then dumps down again (garbage collect I think).
For that to happen there seems to be a memory leak going on somewhere in the process. (It also always laggs slightly when you finish a craft)
I got all the stuff disabled just Average Profit is showing, so it's not related to top gear or anything.

The same is happening for me, big lag spike every time i craft something with the addon enabled.

The same is happening for me, big lag spike every time i craft something with the addon enabled.

still huge fps drops when im crafing . i need to fix it any idea what the issue is?

This is mostly on blizzards site, but CraftSim recently introduced the possibility to disable the recording of any crafts in the CraftResults module, this might help


PHPLIB-1482: Skip range V1 tests on ext-mongodb 1.20+

https://jira.mongodb.org/browse/PHPLIB-1482
ext-mongodb 1.20 uses libmongoc 1.28, which enables range V2 from libmongocrypt 1.10+ and drops support for range V1.
This should address test failures for build-php-%phpVersion%-next-minor tasks in Evergreen.
If this is merged to v1.19 and then merged up to master, there will be a conflict with https://github.com/mongodb/mongo-php-library/pull/1350. Since https://github.com/mongodb/mongo-php-library/pull/1350 is blocked on adding MongoDB 8.0 to CI, it may be prudent to rebase that PR after this is merged and then remove these changes there.

Patch build: https://spruce.mongodb.com/version/66762ace0ed7d7000740f55b/tasks

evergreen keep-definitions

I see that the fle2v2-Compact.yml test is still failing. This seems related to the libmongoc 1.28 bump in ext-mongodb, as it dates back to this CI build when all of the range V1 tests started failing.
However, that test file wasn't changed in https://github.com/mongodb/specifications/commit/9bfa512e41c1231a51f83260f5672a36626d9bcd, so it's not clear to me how it's related. DRIVERS-2629 alludes to it being specially processed by libmongocrypt, so this may be an upstream issue.


Convert HDInsight SDK to Swagger and AutoRest

Description
Hydra is obsolete for ARM APIs.  APIs must be moved to Swagger and consumed in PowerShell cmdlets by the end of June 2017.

This is done.


API TLS does not work

I set --api.host and --api.port and --api.certs and exec wavelet under linux.
I got this error :(
FTL Failed to listen to port 443. error: "listen tcp :443: bind: permission denied"
I tried to change 443 port to other port and exec again, I got this error :(
acme/autocert: missing server name

Please add api TLS port parameter.
Please give api.host parameter to GetCertificate.

Thanks for the feedback, we're looking into these changes.  However, if you're using autocert it doesn't make sense to specify the API TLS port as something other than 443/tcp since that's the only port that can be verified.
We'll add support for specifying a different API TLS port if you already have an X.509 certificate and not using autocert.

Current using autocert library version is for Let's Encrypt v1.
But Let's Encrypt v1 is already deprecated.
https://github.com/golang/crypto/commit/a950601f39e69382d60ea46fa15cecc9d9b70ec6
https://community.letsencrypt.org/t/end-of-life-plan-for-acmev1/88430
Please update golang.org/x/crypto version.


pull request for e2e test at 11/28/2016 09:56:04

:white_check_mark: Validation status: passed
For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Require JDK 11 for Android

We are dropping support for the old JDK 1.8 in C:\Program Files\Android\jdk\microsoft_dist_openjdk_<IP_ADDRESS>. In .NET 6 Preview 4, the Android workload will no longer locate it by default, but you can still set it to %JAVA_HOME% or /p:JavaSdkDirectory manually.
We should prompt for users to install this new JDK 11 distro instead:
https://www.microsoft.com/openjdk
We can go ahead and start requiring this in maui-check, I think. Boots.Core seems like it could install these automatically.

The current --dev feed requires and installs OpenJDK11.


#4 Develop REST API Endpoint and Integration

Description: Set up an endpoint to allow real-time diagnostic analysis through the frontend, allowing retina scan submission and prediction result displaying on the patient dashboard/patient profile.
Tasks

Create a REST API endpoint (/predict) to receive and process image submissions.
Create process_image() function to handle image preprocessing and model inference.
Integrate the diagnostic results display on the frontend/patient dashboard

In my mind we can break this down into the following tickets.

Ticket A - Create the server. aka the initial backend setup (whether with flask or django again)
Ticket B - [dependent on A] Create a new endpoint /predict. Have the initial return being Hello World to verify endpoint works.
Ticket C - [dependent on B] Build out the business logic for the image processing for the endpoint to return the data needed.
In the other repository, we should verify that we have a ticket to receive said data from the wizard and update our databases

Split into smaller tickets, closing out this one. (tickets, 55-59)


make default subscribers and mailservers optional

hello! i am trying to manage monit configuration alone with chef role, but facing some issues.

localhost is always set to first mailserver, where i want to configure it to something else for different location servers and the only way i get it right is overriding attribute in a chef role, but that does not get me so far as i need different config for different chef roles

default root subscribers does not help my scenario much, at some places even local smtp is disabled

what do you think about having an attribute e.g. default['monit']['default_config']? which if set true, then  below attributes will get default values otherwise not:
default['monit']['config']['subscribers']
default['monit']['config']['mail_servers']
i have PR ready if this sound good to you.

i'm not quite sure i understand the use case here.
as far as i know, both the subscribers and mailservers configurations should be able to be excluded from the generated configuration by setting the attributes to an empty array, or overriden from a wrapping cookbook.
i just verified that overriding from a wrapper cookbook works like i thought (check the mail-server-subscriber-override branch for an example).
does that help with what you're trying to achieve, or am i misunderstanding?

I am using chef roles for now and monit checks recipe provided by this
cookbook.
as chef role default attributes takes precedence over cookbook and
environment default attributes, I don't have to user override anywhere. Now
it may seems weird, but it's one of the standard we have adopted to
maintain attributes among cookbook and roles.
this helps at some places to perform an audit or regular clean up, as we
know that we always just have to look for default attributes not override.
And if I use override attributes, I will have to maintain
override_attributes everywhere for each app role where I want to use monit
and believe me it makes things bit uneasy for us.
but you are right, override works just fine.
also monit default config does not set any subscribers or mail servers, I
would like cookbook to be able to provide a basic config as possible with
configurable option.
On Mar 1, 2015 6:34 AM, "Nathan Williams"<EMAIL_ADDRESS>wrote:

i'm not quite sure i understand the use case here.
as far as i know, both the subscribers and mailservers configurations
should be able to be excluded from the generated configuration by setting
the attributes to an empty array, or overriden from a wrapping cookbook.
i just verified that overriding from a wrapper cookbook works like i
thought (check the mail-server-subscriber-override branch for an example).
does that help with what you're trying to achieve, or am i
misunderstanding?
—
Reply to this email directly or view it on GitHub
https://github.com/bbg-cookbooks/monit-ng/issues/15#issuecomment-76562002
.

OK, I think I understand. For your role-centric use case, Chef is merging the options instead of allowing them to be overridden with the same attribute precedence (ouch).
I confess I'm not a big fan of the proposed solution of a boolean that only controls certain configuration options, as it seems like it would generate some confusion, but I do think the cookbook should reflect the upstream configuration defaults as much as possible, so thanks for bringing that up.
A better solution here might be to update the cookbook attribute defaults for subscribers and mail_servers to each be empty arrays, and move the current values into the README to document how to set them for users that wish to use them.
Does that sound like a reasonable solution? If so, I'd welcome a PR for it.

@nathwill setting both the value to an empty array would be ideal, i just did not want to propose it at first place considering the default use case.
submitting a PR. thanks!

@nathwill submitted https://github.com/bbg-cookbooks/monit-ng/pull/17
also added some extra content to README, i hope you don't mind.

not a bit, thank you very much! this is merged now, so closing out the issue. i'm going to run this through it's integration tests and address issue #18 before cutting a new release (likely tomorrow or the day after).
thanks again for all the help!


About W2A16 weight only matmul

Hi, if I have a linear layer the weight only has the value of {0, 1, -1}. Is it possible to utilize your kernel for weight compression and inference speed-up? My current weight is in bfloat16 format.
For example, if I have this code:
input = torch.randn(64, 1024, dtype=torch.bfloat16).cuda()
weights = torch.randint(-1, 2, (1024, 1024), dtype=torch.int8)
weights_bf16 = weights.bfloat16().cuda()
output = torch.nn.functional.linear(input, weights_bf16, None)
How to use ABQ's kernel to optimize the computation? Thanks!

Thanks for your attention to our work. Matrix multiplication of int and float is not supported, but based on experience in model optimization, the effect of int16 and float16 will be basically aligned (sd or llm).
So I suggest you try W2Aint16. In this case, you can directly use our operator for acceleration. Our operator is suitable for W2 scenarios.

Thanks for your attention to our work. Matrix multiplication of int and float is not supported, but based on experience in model optimization, the effect of int16 and float16 will be basically aligned (sd or llm).
So I suggest you try W2Aint16. In this case, you can directly use our operator for acceleration. Our operator is suitable for W2 scenarios.

Thanks for the reply.
So if all of the linear layer in my model has the bfloat16 weight with values {0,1,-1}, and the input and output are blfoat16. What steps should I do to use your W2Aint16 operator? Thanks!


a lot of connections to the DB

Hello theangryangel,
I have a question about the plugin and the connections using MS SQL.
I've the version 0.2.10 of the plugin and logstash 2.4.0.
Is it normal that there are a lot (more than 50) of connections with the status "ESTABLISHED" to the MS SQL servers?
You can see all the connection status with: netstat -p | grep java
Thx

Upgrading to 0.3.0 or newer should reduce the number of connections significantly.
The reason why is before Logstash 2.2 you'd only get 1 instance of a plugin. In 2.2 elastic.co changed this, and how events get processed. The most important thing from that post is that unless you declare the plugin as threadsafe, you get multiple instances of the plugin. Unfortunately I wasn't aware of this change and only checked and declared the plugin threadsafe in 0.3.0 and newer.
This means with a plugin version <0.3.0 and Logstash>=2.2 the total possible number of connections that this plugin can open, would be number of pipelines * max_pool_size connections. This is why you're getting so many connections, and why upgrading should "fix" it 😄

omg, you reply too fast...and always with a solution! thanks, I will update the plugin!

Not a problem @phr0gz - if it helps you can also change the max_pool_size option to a lower number (i.e. 1) rather than upgrading.


DOCROOT_SUBDIR not set, causing reinstall of Drupal files every start

Using Drupal 8, in /usr/local/bin/init.sh there is a test to see if Drupal is installed by looking for $(DRUPAL_ROOT)/index.php.  If that file is not found the Drupal files are copied into $(APP_ROOT) (which is the root_codebase volume).  This should happen only once (first run) to get those files in place.
However, the DRUPAL_ROOT variable is wrong - it is the same as APP_ROOT and does not include "/web" at the end, which means ever time the container is started the files are copied again (which then causes a bad configuration and the container to fails).
This appears to be caused by DOCROOT_SUBDIR being empty when drupal-php.mk is executing, which defaults the path to "${APP_ROOT}".  It appears that DOCROOT_SUBDIR should contain "web" but I don't see anything that sets that.  I do see in a recent change to Dockerfile that DOCROOT_SUBDIR is set to a path including "web", but I confirmed that is being overwritten by the test in drupal-php.mk.
The workaround I am doing for now is to bash into my root_php_1 container and edit the /usr/local/bin/drupal-php.mk file.  Here is what it currently contains:
ifeq ("$(DOCROOT_SUBDIR)", "")
    DRUPAL_ROOT=$(APP_ROOT)/web    <-- this is the hack that stops the reinstall
else
    DRUPAL_ROOT="$(APP_ROOT)/$(DOCROOT_SUBDIR)"
endif

If I add a test for DRUPAL_ROOT being empty (which it isn't, thanks to Dockerfile) then it works fine:
ifeq ("$(DRUPAL_ROOT)", "")
    ifeq ("$(DOCROOT_SUBDIR)", "")
        DRUPAL_ROOT=$(APP_ROOT)
    else
        DRUPAL_ROOT="$(APP_ROOT)/$(DOCROOT_SUBDIR)"
    endif
endif

I think this means one of two things: either add DOCROOT_SUBDIR to Dockerfile, or change drupal-php.mk to no longer overwrite DRUPAL_ROOT based on DOCROOT_SUBDIR alone.
Appreciate the help!
Chris

Thanks for reporting this, we should probably add the environment variable DOCROOT_SUBDIR to the docker4drupal's compose file, web should not be hardcoded.

Actually, DRUPAL_ROOT is hard coded in Dockerfile for this image so everything should work fine. Maybe you're just using an outdated version?

Correct - DRUPAL_ROOT is in Dockerfile.  However, in drupal-php.mk it ignores DRUPAL_ROOT and instead looks at DOCROOT_SUBDIR and based on it (which is empty) it overrides the DRUPAL_ROOT value (to no longer include "web").  I think what is needed is for DOCROOT_SUBDIR to be set to "web" in Dockerfile, or for drupal-php.mk to be changed to not override DRUPAL_ROOT.

What actions do you use from drupal-php.mk? Normally, this image uses only init action in docker4drupal setup.

It is part of init, which triggers the .PHONY build (via the dependency on init-drupal) and that is where this change happens.
I'm just using simple, normal usage (no custom changes) and experience this problem.  Here are the steps I use:

I clear out my images and volumes to start fresh, or simply start a brand new server (I've done both many times)
I download and run (docker-compose up -d)
Visit the web site and finish the startup wizard
Shut down the containers (docker-compose stop)
Start the containers (docker-compose start)

At this point, the container root_php_1 will fail to stay running and logs will show that it copied the Drupal files over again (due to the .PHONY dependency overwriting DRUPAL_ROOT).

Thank you for details. This issue has been fixed, latest images contain the fix.


Add selectrum-move-default-candidate

@minad I'm not still not sure I would like selectrum metadata, I failed to find the discussion where you brought up arguments why it would be preferable to you, for now I made the variable public you are using public at least.

@clemera I am also good with the way things are now, since I have all the selectrum stuff decoupled from the rest via the advice. So metadata would only help me when I set the variables in the consult--read directly. Therefore I am also good with the current way of doing things. If you merge this, I will adapt consult accordingly, such that it uses the public variable.

@clemera I am also good with the way things are now, since I have all the selectrum stuff decoupled from the rest via the advice. So metadata would only help me when I set the variables in the consult--read directly. Therefore I am also good with the current way of doing things. If you merge this, I will adapt consult accordingly, such that it uses the public variable.

Done in #441


Update sbt-dynver to 3.3.0

Updates com.dwijnand:sbt-dynver from 2.1.0 to 3.3.0.
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 @scala-steward in the comments below.
Have a nice day!

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

superseded by #72


Support usage from Groovy files

Is there a possibility of adding support for using the plugin from a Groovy based project? Or any workaround?

Hi @almogtavor.
in principle, the plugin should work regardless of the language being used to write the build file. If someone is willing to try and document how to use the plugin in Groovy, I'll gladly accept a PR that updates the documentation (or the plugin code, if it improves the experience for Groovy users, as far as the functionality when used from Kotlin is unchanged).

Currently it doesn’t work since groovy won’t recognize the gitHooks task. Do you have any idea why this could happen?

Uhmm... the gitHooks block is an extension created on the settings file - it should work in both cases

Can you be more specific and link a build scan and the output of your attempts? I need to see the error

The error I'm getting is
> No signature of method: settings_27xxnymre4hp11j1ud1g2gjwl.gitHooks() is applicable for argument types: (settings_27xxnymre4hp11j1ud1g2gjwl$_run_closure1) values: [settings_27xxnymre4hp11j1ud1g2gjwl$_run_closure1@417206fd]
Caused by: groovy.lang.MissingMethodException: No signature of method: settings_27xxnymre4hp11j1ud1g2gjwl.gitHooks() is applicable for argument types: (settings_27xxnymre4hp11j1ud1g2gjwl$_run_closure1) values: [settings_27xxnymre4hp11j1ud1g2gjwl$_run_closure1@417206fd]
My project contains only build.gradle and settings.gradle. The build.gradle is a default build.gradle of:
plugins {
    id 'java'
}

group 'org.example'
version '1.0-SNAPSHOT'

And a settings.gradle of:
plugins {
    id("org.danilopianini.gradle-pre-commit-git-hooks") version "1.0.12"
}

rootProject.name = 'gradle-pre-commit-git-hooks-groovy-bug'

gitHooks {
    createHooks()
}

Oh, I see. Groovy's lambdas are not type-compatible with Kotlin's lambdas.
The Groovy build files could be supported, but that requires basically a second DSL. Is it impossible, in your case, to switch the Groovy settings.gradle file into a settings.gradle.kts, leaving the remainder of the build unchanged? That would allow you to use the plugin without waiting for me preparing a second implementation.

@DanySK I'll check it. If you'll transform the Kotlin lambda to a regular method do you think it will work?

I would need to tarnish the code a bit, as instead of Kotlin functions with receiver I'll need something that produces bytecode compatible with the Groovy way of reading it.
https://github.com/DanySK/gradle-pre-commit-git-hooks/blob/ad7794a24815b98cea278f38df59d6d37f733253/src/main/kotlin/org/gradle/kotlin/dsl/GradleGitHooksExtensions.kt#L10-L12
I'll probably need to study the Gradle Java API to do so...

It will call the first one, but then I use Kotlin functions with receiver along the script.
Also (and that is a requirement) I do not want to compromise the usage from Kotlin scripts.

@DanySK So what's the solution you suggest?

I might have found a way to call Kotlin's functions with receiver from Groovy. Can you try:
plugins {
    id("org.danilopianini.gradle-pre-commit-git-hooks") version "1.0.14"
}

gitHooks { extension ->
    extension.with {
        commitMsg { context ->
            context.with {
                conventionalCommits { conventionalCommits ->
                    conventionalCommits.with {
                        defaultTypes()
                    }
                }
            }
        }
        createHooks(true)
    }
}

The idea is: the JVM signature has the receiver as first argument, so it should be invokable from Groovy by passing a lambda that intercepts the receiver as the first argument.

@DanySK It works. Thank you very much! In general I think this isn't ideal and pretty hard to understand. Maybe the ideal solution shall be to release a dedicated plugin for Kotlin and dedicated plugin for Groovy?

@DanySK I totally agree that Groovy sucks and Kotlin DSL is much cleaner and preferable in general. But sometimes you end up with a team that sticks to the Groovy since everything is already written like that. Anyway I'd like to contribute the Java classes that's needed. What do you think should be implemented except from the extension class?

My suggestion is to add several tests using Groovy (covering all your use cases) and then add the required Java methods. They could be implemented by calling Kotlin. I'd be okay with a Groovy implementation, too, if that is easier for you and your team


Not allow user from joining or leading more than one  hike at any given time

Right now users can join more than one hikes at the same time which should not be allowed.

hey @aadibajpai can i work on this issue.

Hello , My name is Kanishka and I would like to work on this issue , can you provide some more details about the error and assign me with this @devansh12b2


Manage cases where the port is not the default one for the host, wrap…

… password in quotes for special character handling.

👍

Agree with @franciscoj . Regarding the env var, you can also do something like the following in your app's config/database.yml:
common: &common
  adapter: <%= ENV.fetch('DB_ADAPTER', 'mysql2') %>
  host: <%= ENV.fetch('DB_HOST', 'localhost') %>
  port: <%= ENV.fetch('DB_PORT', 3306) %>
  username: <%= ENV.fetch('DB_USERNAME', 'root') %>
  password: <%= ENV['DB_PASSWORD'] %>
  encoding: utf8
  local_infile: true
  strict: false

development: &development
  <<: *common
  database: <%= ENV.fetch('DB_NAME', 'redbooth_development') %>

(...)

This way you have one place to change this setting for your app.

@sauloperez @franciscoj agree with both comments,  I have updated my PR.

resolves #67

thanks a lot @Nakort !


I would live to archive tasks without specifying archive header text (without a header at all), especially when moving them to another note.

I just want the tasks right on the page without being under a header.

Hello, @YousufSSyed!
I added such an option to 0.15.0:


chore(functions): support NodeJS LTS v14. fix audit issues

AngularJS is in LTS mode
We are no longer accepting changes that are not critical bug fixes into this project.
See https://blog.angular.io/stable-angularjs-and-long-term-support-7e077635ee9c for more detail.

Does this PR fix a regression since 1.7.0, a security flaw, or a problem caused by a new browser version?
Yes

What is the current behavior? (You can also link to an open issue here)

from: 6 vulnerabilities found - Severity: 6 High
https://github.com/angular/angular.js/pull/17132
https://github.com/angular/angular.js/pull/17133

What is the new behavior (if this is a feature change)?

update firebase scripts
to: 0 vulnerabilities found

Does this PR introduce a breaking change?
No
Please check if the PR fulfills these requirements

[x] The commit message follows our guidelines
[x] Fix/Feature: Docs have been added/updated
[x] Fix/Feature: Tests have been added; existing tests pass

Other information:

There is a warning when doing yarn install
warning "firebase-admin > @firebase/database ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>
But that is an issue with Firebase that is fixed in https://github.com/firebase/firebase-js-sdk/pull/4087.


Refs #9388 -- Added selectable monthlist and yearlist to admin calender widget

now its easy so add older dates like birthday date in admin calendar widget.
in ltr

in rtl

@felixxm is this need any requirements?

@ahmadekhalili Thanks for this patch :+1: All new features require an accepted ticket. Also, tests and release notes are missing.

i will work on it.

@ahmadekhalili Yesterday | Today | Tomorrow bar should not be visible when you select the month or the year.

@felixxm Added tests and release note, fixed some issues and a bit changes in yearlist css.
in ltr

in rtl

@thibaudcolas, I have a couple of thoughts. I wonder if we could remove the datepicker at some point as the major browsers all have their own, but I'm not completely sure how well they work (timezones, accessibility, usability, ...). There was some discussion about changing the input type of date/datetime fields to use the relevant HTML5 types - https://groups.google.com/g/django-developers/c/wp-pnzcB25o/m/oNwaqc_JAQAJ - but it seemed like there were still issues. I don't know if they'd apply to the admin or not. It's something I'm planning to look at at some point.
I'm sure there are plenty of datetime pickers out there we could use, but there are tradeoffs. If we found a good one, we can kind of wash our hands of the issue to some extent. But we'd also need to keep it updated, it may change and cause unexpected issues, adding extra dependencies is annoying, and so on. For now I think it's fine to improve what we already have and hope that the browser implementations will be good enough in the future.

There's a long thread (dating back to 2018) on the govuk-design-system. They show some user research which is interesting and my takeaway is that it is hard. The final comment references some fairly recent user research and shows that browsers datepickers still have issues.
It seems to me there are positive comments about having both a text input and an optional date picker. Which I think is what the admin does?
https://github.com/alphagov/govuk-design-system-backlog/issues/17

That's a very interesting thread, thanks for the link.
One thing I found especially interesting is that if you're dealing with a date the user already knows (such as a date of birth) they advice to just use a text box (or rather one for day, month, and year). It seems they only use a date picker if it's a date the user doesn't know, such as when making an appointment, where knowing the day of week is useful.
I'm not saying we should follow this advice necessarily, but I did find it an interesting separation of use-cases. It's a shame the native date pickers aren't accessible - has anyone done a more recent audit? What's linked to is a few years old now.

I dont know about different use cases in detail but there are several date pickers like:
https://duetds.github.io/date-picker/
https://mengxiong10.github.io/vue2-datepicker/
but in my experience something like:
https://vuetifyjs.com/en/components/date-pickers/#usage
is more clear, simple and friendly for general cases. i also added  "changing input when only clicking on a month or year" for example when you click on a month in monthlist box, input will fill with current year-clicked month-current day, means you don't force to clicking on a day to filling input and is useful when you only need month calendar or year calendar.
I think just using a text box for birthday is not something admin users like, because dates can have different formats like y/m/d  y-m-d y-d-m or years with 2 digit or ....) and new users don't know which of them should be, so typing dates seems not good. but native date pickers even more and better styles and actions is something we need in future.

Yes, for dates of birth I believe there’s consensus that text input is better. That does mean the input has to validate the entered date format, and support entering the date (and displaying help text) in the user’s local date format.
Accessibility-wise it’s also important to provide options whenever possible – so supporting users entering dates either with text or a picker is very valuable. This PR looks excellent in that respect, notwithstanding the issues with the base picker.

It seems to me there are positive comments about having both a text input and an optional date picker. Which I think is what the admin does?

Yep.

For the native input type="date", a11ysupport.io has test results from 6 months ago. It’s worth bearing in mind Safari’s support is very recent: Safari 14.1. It looks like desktop Safari versions below 14.1 account for about 1% of the global browser market share.

@felixxm failing checks is out of my codes and need rebase but i pulled on main branch so can't rebase. should i recreate PL?

@felixxm failing checks is out of my codes and need rebase but i pulled on main branch so can't rebase. should i recreate PL?

You should be able to rebase from the main branch :thinking: I did this for you. Use git pull --rebase to get the rebased version locally.

Hello, is this going ahead? It would be great to implement it. I have tested with the latest Django and it still works. The only thing is that the width of calendarbox needs to be increased in widgets.css. I set it to 40em and not the table element is not truncated any more.

Hello, is this going ahead? It would be great to implement it. I have tested with the latest Django 5.0.6 and it still works. The only thing is that the width of calendarbox needs to be increased in widgets.css. I set it to 40em and not the table element is not truncated any more.

Hi @lguariento! Would you have availability to push this forward? Django is built and progressed by members of the community who contribute their time, so it would be greatly appreciated if you could help with this effort. The next step would be to create your own PR based on this one and confirming that all remaining comments are addressed, and then updating the ticket in Trac. Let us know!
No worries if you can't, though :star2:

Hello. I'm not even sure what Trac is :) ! I've checked the comments above and they all seem to have been addressed. I can create a PR request and see how I get on (I'm not very experienced with that).

Hello. I'm not even sure what Trac is :) ! I've checked the comments above and they all seem to have been addressed. I can create a PR request and see how I get on (I'm not very experienced with that).

Hi @lguariento! Trac is the ticket tracking system that the Django project uses. There are docs explaining where it is and how  it needs to be updated for PRs to be on the review queue. Please refer to:
https://docs.djangoproject.com/en/dev/internals/contributing/writing-code/submitting-patches/

Closing due to inactivity.


enforce first null byte in CANARY

Problem
Currently it's possible to trivially leak the heap canary if the allocated buffer is fully filled and interpreted as a string.

This potential implementation resolves #951.
Change
This pull request implements a simple bit mask, that enforces that the LSB (least significant byte of the canary) is a null byte.
notes
Sadly this implementation removes one potential byte of entropy for our canary, reducing it from 32bit to 24bit,
but still allows the detection of common one null byte overflows, something that would be lost if the first/last character of padding was turned into a null byte.
This implementation only considers little endianness

@microsoft-github-policy-service agree
Everything outside this pull request is considered "Not a Submission".

Thank you so much for the PR -- good idea. I implemented it directly as the free.c needs to check the same canary so I'll close this PR.  Thanks again!

Thx for implementing this fix.


fixup: verbosity distributed print

Fixup #97 for use of CPU vs GPU

@streeve
I did the following sequence of operations:

git reset to last commit of the main branch
git commit by smashing all the changes of the current branch into a single commit
git rebase main
git push --force

This solved the failures of the CI test.
Accept and merge this PR into the main at your earliest convenience.

I think you needed to pull from this branch in between - your force dropped the last commit. I pushed again, hopefully it passes

I'm okay to merge - only waiting to make sure we're all on the same page

@streeve
If you want @pzhanggit to review this, considering this is a fix-up of a previous PR, shouldn't @pzhanggit also have ti retro-actively review the previous PR?

@streeve If you want @pzhanggit to review this, considering this is a fix-up of a previous PR, shouldn't @pzhanggit also have to retro-actively review the previous PR?

I guess I didn't think of that, but that's why I linked to the previous


Implement platform releated build for Mac

What is the issue?
There are several actually. Since Apple computers is a little bit different from normal linux then we have to change some of the things in the code. To be more specific in the bm_utils.c. Here is a list of things that needs to have Mac specific changes:

In bm_utils.c line 41. Mac has malloc in ´#include <stdlib.h>´
On line 389 in bm_util.c the O_LARGEFILE is used. However, this can be omitted, since Mac doesn't need to use that flag in order to read large files.

SSBGEN is implemented


Fixing "dependency cycle between modules" when using hclvalidate command with undefined config_path attribute

Description
In normal operation, if a dependency block does not have a config_path attribute, decoding returns an error since this attribute is required, but the hclvalidate command suppresses decoding errors and this causes a cycle between modules. This PR prevents further processing of dependencies without the config_path attribute.
For more information, see ticket 111184

TODOs
Read the Gruntwork contribution guidelines.

[ ] Update the docs.
[ ] Run the relevant tests successfully, including pre-commit checks.
[ ] Ensure any 3rd party code adheres with our license policy or delete this line if its not applicable.
[ ] Include release notes. If this PR is backward incompatible, include a migration guide.

Release Notes (draft)

Added / Removed / Updated [X].
Migration Guide

@yhakbar, thanks for the review!


[Question] Generate one client from several swagger specs/versions

Hi Rico,
I have small question.
Background.
I have several swagger api versions.
Like:

http://localhost:5002/swagger/v1/swagger.json
http://localhost:5002/swagger/v2/swagger.json

Question:
Is it possible to generate only one client from 2..n swagger openAPI specs / versions ? (Maybe NSwag has merge option etc?)
Thanks in advance.

Ghere is no prebuild feature which supports that... i recommend to build an own simple cli app based on nswag.core which merges multiplr specs into one...

Hi Rico, thanks a lot for the feedback.
I probably have to implement Open API merging logic/templates by myself. Or is it included in nswag.core ?

No, it's not yet implemented, but it would be a great addition to nswag.core

The hard part would be to merge dto schemes (i.e. remove redundant ones, etc.). I don't know if there is a way to do this generically (i.e. which works for everyone :-)

Hi Rico, sure I will try to help here.
So found how this was implemented in following components:

swagger-cli
swagger-merger
swagger-combine

Have one question isn't this feature was implemented, here the closed issue 1326  ?
Please correct me if I wrong.

@Boriszn this is different: It allows to add multiple specs to the ui, they are still separate from each other and actually not merged...

I have small question.

@Boriszn Heya! Did you ever have any luck with this? Surely this is a common feature -> multiple private microservices (with OpenApi swagger docs) behind a single API Gateway which is where the single doc, should exist?
@RicoSuter have you ever had to do this?

No, i didn't have the need to do this yet.
But in theory you'd download both specs, parse it with the OpenApiDocument class and then merge the two instances (this might be quite tricky if there are overlapping types, etc.)

Thanks @RicoSuter for the prompt reply - really appreciate it.
Since I posted that, I ended up stumbling across this project which is an NPM package (sadness) but actually works.
I've created a json file which lists my real life external swagger API's and ends up creating a single output yml file which I assume I could then use to generate a single SDK.
You were totally right about the "Overlapping Types, etc.". I initially had trouble with the merging because each separate swagger file had their own operationId ... but the same ones were generated in each other swagger. So when it came to merge/join, got failure errors.
so yeah, interesting! I've still got more work to do, to see if this all really works out ... but i was totally expecting this to be a common thing (1x schema for multiple api's).

If you use nswag to generate the individual specs then the operation ids are controller_operation and if the controller names are unique over all projects then you should be fine.

Another option would be to generate muliple files (for each api) into a single sdk project.

controller names are unique

they aren't :( Is there a way to specify a different naming convention for the operation ids?
for example:

microservice 1 : microservice-1-<controller>-<operation>
microservice 2 : microservice-2-<controller>-<operation>

Another option would be to generate muliple files (for each api) into a single sdk project.

Can you elaborate what you mean by this, please?

Hey @PureKrome
I've combined several swagger API specs with API gateways e.g Azure API Management, Ocelot. Also, I've have used swagger-combine (almost like swagger-combine) in the dev ops pipeline.

I tried out swagger-combine, but it de-references all object definitions so I'm not sure how it's useful as input for client generation. I think the best option is probably to consolidate multiple generated clients into one library as @RicoSuter suggested.
Otherwise, if a merger was implemented (in NSwag.Core) perhaps it can be strict about duplicate type names and ignore dupes if they've already been added to the client.


Hakuouki Reimeiroku [PCSG00605]

App summary

App name: 薄桜鬼 黎明録 思馳せ空
App serial: PCSG00605
App version: 1.00

Vita3K summary

Version: v0.1.8
Build number: 3173
Commit hash: https://github.com/vita3k/vita3k/commit/42d6b4ef
CPU backend: Dynarmic
GPU backend: Vulkan

Test environment summary

Tested by: Dystnine
OS: Windows 7
CPU: INTEL I3 4100U
GPU: AMD HD8500M
RAM: 8 GB

Issues

Everything works fine except for the screen flickering when switching scenes.
Screenshots

Log
vita3k.log
Recommended labels

Ingame+

Recommended labels
playable

Where can we download it?


Changing python run env crashes VS

[Window Title]
devenv.exe
[Main Instruction]
An unexpected error occurred
[Content]
Please press Ctrl+C to copy the contents of this dialog and report this error to our issue tracker.
[^] Hide details  [Close]
[Expanded Information]
Build: 16.0.19074.1

System.NullReferenceException: Object reference not set to an instance of an object.
   at Microsoft.VisualStudio.PlatformUI.SetupPackagesCache.GetPackages(String& language, DateTime& installDate, DateTime& lastUpdatedDate, Uri& currentReleaseUri, String& currentProductDisplayVersion, String& currentProductDisplayName)
   at Microsoft.VisualStudio.PlatformUI.SetupPackagesCache.Refresh()
   at Microsoft.VisualStudio.PlatformUI.SetupPackagesCache.<>c.<.cctor>b__35_0()
   at System.Lazy`1.CreateValue()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Lazy`1.get_Value()
   at Microsoft.VisualStudio.PlatformUI.SetupCompositionService.GetSetupPackagesInfo(UInt32 numberofPackages, IVsSetupPackageInfo[] packageInfo, UInt32& pcActual)
   at Microsoft.PythonTools.Environments.AddInstalledEnvironmentView.GetPackages(IVsSetupCompositionService setupService)
   at Microsoft.PythonTools.Environments.AddInstalledEnvironmentView..ctor(IServiceProvider serviceProvider, ProjectView[] projects, ProjectView selectedProject)
   at Microsoft.PythonTools.Environments.AddEnvironmentDialog.<ShowDialogAsync>d__10.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.PythonTools.Infrastructure.VSTaskExtensions.<HandleAllExceptions>d__5.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at Microsoft.VisualStudio.Telemetry.WindowsErrorReporting.WatsonReport.GetClrWatsonExceptionInfo(Exception exceptionObject)

Thank you for reporting this issue. It's currently under investigation.

Can you please provide steps to reproduce this issue?

Same as https://github.com/microsoft/PTVS/issues/5235


update(tests): fix a broken socketcall test

What type of PR is this?
/kind failing-test
Any specific area of the project related to this PR?
/area tests
Does this PR require a change in the driver versions?
No
What this PR does / why we need it:
This PR fixes a missing parameter in socketcall tests (https://github.com/falcosecurity/libs/pull/1059/files) and tries to increase the stability of dynamic snaplen tests
Which issue(s) this PR fixes:
Special notes for your reviewer:
Does this PR introduce a user-facing change?:
NONE

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: Andreagit97
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [Andreagit97]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: Andreagit97, FedeDP
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [Andreagit97,FedeDP]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

LGTM label has been added.  Git tree hash: 6a1a84249883bd8c32e771e78173bfd1f8686f36

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: Andreagit97, FedeDP, hbrueckner
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [Andreagit97,FedeDP]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


commit to show keyboard bug

DO NOT MERGE.
https://github.com/jaesung-0o0/ChatUI/assets/5091275/9016fd11-e25f-4fba-8936-ee3b1b6e11fd

Adding this pull request, to show that an issue I am having with the keyboard not being shown. Ive tried recreating the issue outside my app in the examples project but cannot recreate.
The pull request is simply to show the issue I am getting and see if you have any ideas what the problem could be


Update README.md

Added contributors profile in readme file.

hey @suryanshsk,
can you check this pr?


Use mdCodes in mdTranslator

Use the mdCodes codelists in mdTranslator for generation of ISO code syntax.

Completed coding, pushed out in version 1.2.0


Adds lazy to implicit Encoder vals

The implicit val encoderX ... need to become lazy, as the hierarchy matters:
case class Organization(owner: Person)
case class Person(name: String)

implicit val encoderOrganization: Encoder[Organization] = ...
implicit val encoderPerson: Encoder[Person] = ...

The above will throw a NullPointerException once you start encoding an Organization.

You are right. Probably the proper way to fix that would be to analyze dependencies between products and generate them in a way that takes that into account. Although, that would be a lot of work.
As a first implementation your solution is good enough :+1:

Thank you for the contribution! :tada:

You're welcome!
The dependencies could be analyzed, though I'm wonder what the added benefit is? The lazy keyword does this dependency resolution automatically for you. I don't believe there's any performance penalty to take into consideration here either for using lazy.

I like my generated code to be as efficient as possible even if the difference is negligible (e.g. lazy generates more bytecode). However, we should also take into account future maintenance and it is definitely easier to maintain a code that hasn't been written at all. So, fair point and I agree.

Published as 0.3.0 :smile:


money_format wrongly formatting floats

For en_US.utf8 money_format('%n', 1003.998); returns $1,003.100

Try accounting.js.

@theaqua Thank you. Looks like I have the patch but didn't create a PR. Need to check it.

Thanks for reporting, and sorry for the long wait. This project and my motivation were in a bad spot. I recently did a lot of work to breathe new life into it (http://locutus.io/2016/05/announcing-locutus/) and am happy to take a look at your issue. We'll check out the PR and close this issue to keep the discussion in a central place.


Grader not recognizing single quotes

Challenge http://www.freecodecamp.com/challenges/waypoint-bring-your-javascript-slot-machine-to-life has an issue. When entering the three lines required for the code to execute:
    $($(".slot")[0]).html(slotOne);
    $($(".slot")[1]).html(slotTwo);
    $($(".slot")[2]).html(slotThree);

If you use single quotes (') instead of double (") the code will pass, but the grader will fail you for:
You should have used the the selector given in the description to select each slot and assign it the value of slotOne, slotTwo and slotThree respectively

Hey @stwaldo   thanks for posting this!
We have a few duplicate postings of this so see #2522 for updates on this issue.
I'll close this as a duplicate.


Travis CI: Cache node_modules folder

Coverage remained the same at 100.0% when pulling 8482b62cbf5df03526531bbfb599f63c90cbbb2e on cache-node into 8bcd56b739636867389049cbbc6e0c48ea771f09 on master.


sanitize_repo.sh now replaces in .kitchen.yml

jenkins, retest this please

@yarmiganosca version bump needed.

@zadunn version bump where?

@yarmiganosca  metadata.rb in the root.

cool


Clicking on SHA crashes

Pressing Ctrl-b opens the git blame, but on my machine at least. Clicking on the SHA causes Atom to instantly shut down.

Duplicate of #60 ?

dupe


Resulting GIFs only have one frame

Hello! I have been trying to use gif.h for GIF recording in my application. Long story short, it works, with one flaw. The first frame is the only one kept. Here is a sample result:

The code I used is available here:
QImage &startImg = frames[0];
GifWriter writer;
GifBegin(&writer, tmpDir.absoluteFilePath("resulting.gif").toLocal8Bit().constData(), startImg.width(),
startImg.height(), d);
int i = 0;
for (QImage &a : frames) {
    QByteArray alpha8((char *)a.bits(), a.byteCount());
    GifWriteFrame(&writer, (uint8_t *)alpha8.data(), a.width(), a.height(), d);
}
GifEnd(&writer);

Thanks in advance!

What value of "d" you have set?

1000 / framerate

One thing:

the accepting value is in centiseconds (1/100) which is natively in GIF file format, not in milliseconds (1/1000)

I made the sample code which generates working GIF:
#include <QApplication>
#include <QImage>
#include <QFileDialog>
#include <QList>
#include <QMessageBox>
#include "../gif.h"

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    QList<QImage> frames;

    QImage empty(300, 300, QImage::Format_ARGB32);
    empty.fill(0xFFFFFFFF);

    for(int i = 0; i < 15; i++)
    {
        QImage e = empty;
        e.fill(uint(rand() % 256) + (uint(rand() % 256) << 8) + (uint(rand() % 256) << 16) + (256u << 24));
        frames.push_back(e);
    }

    QString f = QFileDialog::getSaveFileName(NULL, "Spawn to", "", "GIF image (*.gif)");
    if(!f.isEmpty())
    {
        uint32_t d = 100 / 2; // Half of second per frame
        QImage &startImg = frames[0];
        GifWriter writer;
        GifBegin(&writer, f.toUtf8().constData(), (uint32_t)startImg.width(), (uint32_t)startImg.height(), d);
        //int i = 0;   //This is unused, nuke it away
        for (QImage &a : frames) {
            QByteArray alpha8((char *)a.bits(),
                  #if (QT_VERSION >= 0x050A00) //since Qt 5.10 "byteCount" will warn about deprecation
                              a.sizeInBytes() //This introduced since 5.10, so, will fail on old versions. Be careful!
                  #else
                              a.byteCount()
                  #endif
                              );
            GifWriteFrame(&writer, (uint8_t *)alpha8.data(), a.width(), a.height(), d);
        }
        GifEnd(&writer);

        QMessageBox::information(NULL, "Done!", QString("GIF Image has been wrote!"));
    }

    return 0;
}

Oh that's amazing. Well, thanks. But in the meanwhile I switched to avformat

I using this library as simplest way to directly record GIF showcases from my game engine project. I plan to use the FFMPEG / AVFormat to record videos. Even with this I will still keep this simple library in use especially as lossless way to record GIF (except of color palette which is limited to 256 colors). In case of FFMPEG/AVFormat you are recording the video (obviously into lossy format) which later you converting into GIF.

No, actually, ffmpeg libraries allow direct gif recording with the exact same code as if it was any other format. But that's off topic here, so closing issue.

If that, then okay. I saw some clunky usages of FFMpeg where a video file (MKV) was used as a middle storage before to generate GIF itself.
Anyway, FFMpeg itself is heavy (as lots of video and audio formats support and lot of great processing features) and using it for gif recording only is not a good solution (exception is only when you are producing software for Linux as package where ffmpeg is commonly used by many other softwares). So, this library is a choice for a small projects (for easier deployment since ffmpeg is a heavy dependency) and projects are don't needs for a wide usage of FFMpeg (if not as video player / streamer / etc., even just optionally export something into a video file rather GIF).

For my project the target is supporting many formats, and main target s Linux. But yes, very use case dependent

You must feed frame writer with ARGB frames as it supports input in this only format yet.
Aside: paletted 8-bit input format is supported by this fork: https://github.com/rversteegen/gif-h

Also, in my experience the lossiness due to quantisation of 32 bit frames to 256 colours can be quite serious.

Yeah, the result is lossy when source frame has more than 256 colors.

It's lossy even when the source frame has less than 256 colors. GifSplitPalette doesn't work very well.

Yeah, both the palettizer and the dithering have turned out quite bad in hindsight and I never got around to revisiting them. (The only advantage is they're pretty fast which is nice if you're trying to record output from a game or such.)

The dithering? It greatly improves the results, but suffers from serious bleeding. (Also, dithering is slow because it disables delta coding. In fact it's about 2x slower than pngquant in its fastest setting, and that's one of the highest quality quantisers around.)
Without dither:

With dither:

Two possible ways to fix the bleeding: firstly, diffuse less than 100% of the error. However, this generally increases contrast, though I think that's no concern when the colours are way off anyway.
I tried reducing the 7,5,3,1 coefficients in Floyd-Steinberg to 6,4,3,1, so only 87.5% of the error is diffused. (I made these numbers up, and didn't try any others.)
A comparison of normal F-S and the reduced diffusion to the original image quantised with pngquant (very close to actual original):

Or secondly, cap the values in the accumulation buffer to at most 255 (actually 255*256): you only clamped them above 0. (Also, scaling the accumulation buffer by 256 was probably a waste of time, considering the problems far worse than losing thousandths of a shade)
Here's a comparison of those two alternatives separately and together:

Both separate fixes caused the average number of leaves checked while searching the palette tree to drop from 71 to 45, and combining them reduced it to 40, with a proportional speed increase too! Too bad that the fastest option, their combination, didn't give the best results.
Now, about the palette creation. @jacobly0 improved it in 704223ce63f in his branch, which I've incorporated into my own. (Should I submit a pull request? The API has changed a bit, and you'll have to take or leave the whole branch)
His improvements seemed to dramatically reduce colour bleed. In fact, all the examples I gave above were based on his changes. But here's a comparison of before and after his changes.
Before

After:

However I don't think it helped with the problem I'm facing when dithering is disabled:
(This is 'after'. 'Before' shot omitted):

The source sequence has 247 unique colours.
The proper solution appears to be to first select a palette and then build a k-d tree for it. Because palette creation is something like 6x faster than the dithering/thresholding step, that will probably reduce total runtime by reducing k-d leaf nodes checked. And if speed is really the priority, it's not necessary to find the best-match nearest colour.

I really should update this to say that I found out that the awful flickering results I showed in my previous comment were mostly due to bugs introduced both by my own changes and when I merged in @jacobly0's branch. Sorry!
However, even so, accumulation capping really should be used to prevent colour bleeding artifacts.
And also, it turns out that the original space partitioning implementation really is buggy (see https://github.com/rversteegen/gif-h/commit/58f80e767fdb4b8325c3b95dcc5c163455e95670), producing worse results and running slower than necessary.
But even with that fix, it's still the case that gif.h does the partitioning in a (sometimes highly) suboptimal way. If half the image is black, then half the palette is black.
To fix that I switched to a priority queue-based algorithm. I'll submit a pull request later - I need to clean it up. Unfortunately increases the code size.


Show relevant items in UI only when applicable - Grey out all features that are not able to be used at that time

Describe the feature enhancement request 🪲
When using the OAMTCT UI, only show relevant fields (selectable items that will perform actions) that can be executed or performed at that time.    Grey out all non-usable fields and/or selectable items when they are not usable.
To Reproduce 🪜
Example:   When connected to a vPro device that is powered OFF, Sleep or Hibernate, you should only show the relevant button for POWER ON...   Or POWER to BIOS, or POWER to PXE... all other fields, should be greyed out since they will not work.
Expected behavior
Only show features that are "Usable" at that moment...   Basically giving our software a "Smart" aware like feature
Screenshots 🖼

Example are CIRCLED BLUE would be active button and the others greyed out.
AMT Device (please complete the following information): 🖥
N/A
Service Deployment (please complete the following information): ⛈
N/A
Additional context
Add any other context about the problem here.

Due to the refactoring of the device detail page, this changes things a bit. But, can still target on providing a 'smart' menu for the top-right power actions and dropdown menu.
Limitation: Most likely cannot provide greyed-out in-band options as we do not know if LMS is running/installed.


add quaternion::inv_unit()

add quaternion::inv_unit() function to calculate inversion of the quaternion assuming that it is a unit quaternion.

done


How to remove the animation effect of the modal ?

What problem does this feature solve?
..PM don't want to have animation effect
What does the proposed API look like?
..

not in plan yet.


Throw when setting OnStarting after response has already started (#806).

#806
@halter73 @mikeharder @pakrym

Would it be worthwhile to add a functional test as well, showing how customer code would set OnStarting()?

:shipit: from me, though you might want to review @benaadams comment.

:shipit:


Video Player  dispose

[ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: A VideoPlayerController was used after being disposed.
Once you have called dispose() on a VideoPlayerController, it can no longer be used.

As mentioned in documentation:
dispose() → Future
Discards any resources used by the object. After this is called, the object is not in a usable state and should be discarded (calls to addListener will throw after the object is disposed).
That is the normal behaviour of dispose method that gets rid of all resources,
In order to use VideoPlayerController again maybe you can create a new instance of the controller

This looks more of a code implementation issue and also based on above explaination.
Closing as such. @alialdwahy You may search on support channels like StackOverflow for solution, as the error you are getting isn't a bug.


PR review

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+5.2%) to 86.277%

Totals

Change from base Build<PHONE_NUMBER>:
5.2%

Covered Lines:
635

Relevant Lines:
736

💛  - Coveralls


Create Extracts

create Extracts for most importants cities, countries

This is the script to create the all extracts
https://gist.github.com/lukasmartinelli/33385087c01ca5f42487
It makes sense to run multiple once in parallel to speed this up.
Currently running the extracts.

Extract of Switzerland: https://osm2vectortiles-downloads.os.zhdk.cloud.switch.ch/v1.0/extracts/switzerland.mbtiles
We plan to merge the world from z0-z4 (20mb or so) into each country mbtiles because it looks a bit weird on lower zoom levels otherwise.

Extract of Czech Republic: https://osm2vectortiles-downloads.os.zhdk.cloud.switch.ch/v1.0/extracts/czech_republic.mbtiles
This already contains world z0 to z4.
I've not been able to test the generated extracts yet - would be glad for feedback whether they worked.

Note to myself:
I need to generate the following extracts later because they are quite large.
./tilelive-copy --minzoom=0 --maxzoom=14 --bounds=-179.1591529,-52.9213686,179.4643594,-28.9303302 world.mbtiles extracts/new_zealand.mbtiles
./tilelive-copy --minzoom=0 --maxzoom=14 --bounds=-9.7848145,-54.7539999,34.7891253,81.128076 world.mbtiles extracts/norway.mbtiles
./tilelive-copy --minzoom=0 --maxzoom=14 --bounds=-180.0999999,41.0858711,180.1,82.1586232 world.mbtiles extracts/russian_federation.mbtiles
./tilelive-copy --minzoom=0 --maxzoom=14 --bounds=-180.0999999,-14.8608357,180.1,71.7048217 world.mbtiles extracts/united_states_of_america.mbtiles
./tilelive-copy --minzoom=0 --maxzoom=14 --bounds=-178.4873748,-50.3187168,172.4057152,51.368318 world.mbtiles extracts/france.mbtiles

Except the 5 extracts mentioned the rest of them is available for download at http://osm2vectortiles.org/data/download.html

Open until #92 is fixed.

As #92 is closed, this issue can also be closed.


[Transformer] Normalize variable name 'separators'

In RF, single spaces and underscores in variable names are ignored. It would be nice to have a way to normalize this depending on the preferred separator.
Given
${variable separated by space}
@{variable_separated_by_underscore}
&{variable_with mixed separator}

Normalize variable names to use underscores
${variable_separated_by_space}
@{variable_separated_by_underscore}
&{variable_with_mixed_separator}

Normalize variable names to use single space
${variable separated by space}
@{variable separated by underscore}
&{variable with mixed separator}

Totally removing the separators may be supported as well but of course this will be nearly impossible to convert back to separated formats.

It sounds useful and it could be also later extended by normalizing the case (upper case for globals etc). I only wonder if it should be enabled by default or not?
We could also try to auto detect if variables in file use underscores or spaces but that's optional for the future, we can start with enforcing either of the two (most likely underscores) and allow to configure it.

I'm leaning towards disabling it by default since RF doesn't really favor one style over the other.

I've created working POC (https://github.com/MarketSquare/robotframework-tidy/tree/rename_variables). There are some edge cases I need to think over so it's most likely aimed for release 3.1.
Case1:
Variables in values:
*** Variables ***
${_VAR}    1
@{VARS}    0    ${ VARS}

Case1 extended:
Variables in strings:
*** Keywords ***
Keyword
    Keyword Call    this is string with ${var_iable}

Thanks @bhirsz! I gave it a try and found the following issue

It seems to be adding a separator between two variables

Thanks for testing - yeah recognizing the variables is bit primitive, I will replace that logic with the one I used somewhere else for detecting embedded variables. Or perhaps simple regex pattern should suffice since we're not interested in position etc of the variable, we only want to sub patterns in variables. I will test it.

Adding more edge cases and loose thoughts (bit chaotic but I wanted to record it):
# item access
${VAR['key']}  # not sure if it's still supported in RF 4? Robotidy only supports 4+
# python objects
${OBJECT.eat('Cucumber')}
# name access
$variable
# variable in item access
${_var_[${ var2}]}

We can't cover everything so it will be responsiblity of the user to verify if syntax he/she is using still works as expected after running the transformer. The variable resolving is dynamic in Robot Framework. For example it will first check if ${DICT[2]} name is defined somewhere, then it will try to find "DICT" and access it's value with key=2. We can at least try to follow some of the rules for variable name resolving:

Variable starts with either of $, @, &, % (and is not preceded by escape char \), followed by { and ends with }. We also need to differentiate from inline Python evaluation (${{ eval }}).
Variable can contain other variables in a name.
The end of the variable name is when we got any non-alphanumeric character (except for separators and embeded variables).

With this approach with this variable:
${letters_second_${embedded.key()} third['key_']}

we will only 'parse' following sub-strings:
letters_seconds_
embedded
 third

RenameVariables transformer that handles it and much more was just released in Robotidy 4.0! However I recommend waiting till the Robotidy 4.0.1 is (soon) released because I introduced regression.


specify npm script to run for the EsLint hook

configured the EsLint hook like
  EsLint:
    enabled: true
    command: './node_modules/eslint/bin/eslint.js'
    include: '**/*.js'

which works
but ideally would prefer to specify the npm script command
example:
in node's package.json
"scripts": {
    "lint": "eslint ."
  },
"devDependencies": {
    "eslint": "^2.0.0-rc.1",
    "eslint-plugin-react": "^3.16.1"
  }

and can run npm run lint
so want the hook config to be something like
  EsLint:
    enabled: true
    command: 'npm run lint'

is that possible ?

Did you try it? :stuck_out_tongue:

thanks @sds. your tip for command: ['npm', 'run', 'lint'] worked :-)
i had tried by suggestion about command: 'npm run lint'
got the error No such file or directory - npm run lint
full stacktrace is:
Running pre-commit hooks
Analyzing with ESLint........................................[EsLint] FAILED
Hook raised unexpected error
No such file or directory - npm run lint
/usr/local/opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/childprocess-0.5.9/lib/childprocess/unix/fork_exec_process.rb:58:in `launch_process'
/usr/local/opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/childprocess-0.5.9/lib/childprocess/abstract_process.rb:82:in `start'
/usr/local/opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/overcommit-0.31.0/lib/overcommit/subprocess.rb:35:in `spawn'
/usr/local/opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/overcommit-0.31.0/lib/overcommit/command_splitter.rb:66:in `block in execute'
/usr/local/opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/overcommit-0.31.0/lib/overcommit/command_splitter.rb:65:in `map'
/usr/local/opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/overcommit-0.31.0/lib/overcommit/command_splitter.rb:65:in `execute'
/usr/local/opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/overcommit-0.31.0/lib/overcommit/utils.rb:184:in `execute'
/usr/local/opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/overcommit-0.31.0/lib/overcommit/hook/base.rb:100:in `execute'
/usr/local/opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/overcommit-0.31.0/lib/overcommit/hook/pre_commit/es_lint.rb:7:in `run'
/usr/local/opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/overcommit-0.31.0/lib/overcommit/hook/base.rb:45:in `block in run_and_transform'
/usr/local/opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/overcommit-0.31.0/lib/overcommit/utils.rb:223:in `with_environment'
/usr/local/opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/overcommit-0.31.0/lib/overcommit/hook/base.rb:45:in `run_and_transform'
/usr/local/opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/overcommit-0.31.0/lib/overcommit/hook_runner.rb:107:in `block in run_hook'
/usr/local/opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/overcommit-0.31.0/lib/overcommit/interrupt_handler.rb:63:in `disable_until_finished_or_interrupted'
/usr/local/opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/overcommit-0.31.0/lib/overcommit/hook_runner.rb:106:in `run_hook'
/usr/local/opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/overcommit-0.31.0/lib/overcommit/hook_runner.rb:59:in `block in run_hooks'
/usr/local/opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/overcommit-0.31.0/lib/overcommit/hook_runner.rb:58:in `each'
/usr/local/opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/overcommit-0.31.0/lib/overcommit/hook_runner.rb:58:in `run_hooks'
/usr/local/opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/overcommit-0.31.0/lib/overcommit/hook_runner.rb:39:in `block in run'
/usr/local/opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/overcommit-0.31.0/lib/overcommit/interrupt_handler.rb:84:in `isolate_from_interrupts'
/usr/local/opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/overcommit-0.31.0/lib/overcommit/hook_runner.rb:24:in `run'
/usr/local/opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/overcommit-0.31.0/lib/overcommit/cli.rb:203:in `run_all'
/usr/local/opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/overcommit-0.31.0/lib/overcommit/cli.rb:28:in `run'
/usr/local/opt/rbenv/versions/2.3.0/lib/ruby/gems/2.3.0/gems/overcommit-0.31.0/bin/overcommit:7:in `<top (required)>'
/usr/local/opt/rbenv/versions/2.3.0/bin/overcommit:23:in `load'
/usr/local/opt/rbenv/versions/2.3.0/bin/overcommit:23:in `<main>'

command: npm run lint not working
  EsLint:
    enabled: true
    required_executable: 'npm'
    command: ['npm', 'run', 'lint']

It will display ✓ All pre-commit hooks passed
but actually run npm run lint, will show errors. ✖ 4 problems (4 errors, 0 warnings)
same source code, and tracked by git.
Change to this will be work:
  EsLint:
    enabled: true
    required_executable: './node_modules/.bin/eslint'
    command: ['./node_modules/.bin/eslint']

Just a hunch: try command: ['npm', 'run', 'lint', '--'].

@jawshooah It works ! But what's that meaning ?

You can pass arguments to your script by adding -- after npm run <script-name>. In this case, Overcommit appends flags to the eslint command, but since you changed the command to npm run lint they weren't being properly passed to eslint.

@jawshooah got it, real commnd will be
npm run lint -- --format=compact => eslint --format=compact
because eslint default config will pass this glags.
Thank again!


Perform speedup analysis after Numba/Dask optimization

Measure execution times of StochPy for simulation scripts before and after Numba and Dask optimization
Measure additional metrics between non-optimized StochPy and optimized StochPy as neeed
Compile this information for later inclusion in the project report, class presentation, and presentation to our sponsor

Moving to Sprint 4, due to being unfinished in Sprint 3

This objective has been rendered obsolete by direction from the client being to investigate a means of replacing StochPy entirely.