Update github actions to run cucumber integration tests

Purpose
$subject
Related Git issue
https://github.com/wso2/apk/issues/1382

Codecov Report
Patch coverage has no change and project coverage change: -4.93 :warning:

Comparison is base (32de9c4) 24.52% compared to head (2eaf94c) 19.60%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1443      +/-   ##
==========================================
- Coverage   24.52%   19.60%   -4.93%
==========================================
  Files         130       67      -63
  Lines       15313     4556   -10757
  Branches     2414     2171     -243
==========================================
- Hits         3756      893    -2863
+ Misses      11424     3663    -7761
+ Partials      133        0     -133

Flag
Coverage Δ

adapter
?

common-controller
0.00% <ø> (ø)

config-deployer-service
20.87% <ø> (-0.03%)
:arrow_down:

idp-domain-service
?

Flags with carried forward coverage won't be shown. Click here to find out more.
see 67 files with indirect coverage changes

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Adding expired batch to getTodoBatches

We'd like to be able to support expired batches in addition to add, remove, and stable. This allows us to disambiguate which todos are considered expired, and thus effectively no longer useful to track. It also allows consuming apps to be able to delete those expired todos easily, without having to determine whether they're expired or not themselves.
We prevented this being a breaking change by adding the expired to the end of the tuple, thus widening the API without a backwards incompatible change.

Question:
if we had to add additional functions for eslint (the ones that end in sync e.g., writeTodoSync) - why is eslint being used for the writeTodos test? Shouldn't it fail? Or is it passing because we're just pretending? But then, what's the point of the test in that case? I don't think I understand this yet.

Question: should we actually consider this breaking if the result of getTodoBatches returns different results than previously (todos that were originally in the remove batch but had an errorDate less than today are now in the expired batch)?

We prevented this being a breaking change by adding the expired to the end of the tuple, thus widening the API without a backwards incompatible change.

I totally agree adding additional entries to the returned array / tuple is perfectly fine and safe, the only thing I wanted to double check with you is where the items that will not be in expired would have been before? and does removing the item from that prior bucket amount to a breaking change?
On initial review, I think the answer is that removing that item from the stable bucket is basically just a bug fix...

They were previously in the stable bucket, yes. I think you're right in your assertion that removing them from stable does constitute a bugfix. I think we can release a patch for this.


PowerToysSetup build with VS2022 and .NET SDK 6 installed

Microsoft PowerToys version
0.0.1
Running as admin

[ ] Yes

Area(s) with issue?
Installer
Steps to reproduce
Build PowerToysSetup.sln from VS2019 with VS2022 and .NET SDK 6 installed.
4>C:\Program Files\dotnet\sdk\6.0.100\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.ConflictResolution.targets(112,5): error NETSDK1152: Found multiple publish output files with the same relative path: C:\Users\david\.nuget\packages\colorcode.core\2.0.6\lib\netstandard1.4\ColorCode.Core.dll, C:\Users\david\source\repos\PowerToys\x64\Release\SettingsUI\ColorCode.Core.dll,

Build.log
✔ Expected Behavior
Build succeed
❌ Actual Behavior
Build fail
Other Software
VS2022
.NET SDK 6

do you have .net core 3.1 sdk?

https://github.com/microsoft/PowerToys/issues/12285 would kinda solve this since we would upgrade to .net 6 :)

Yes, I still have 3.1 SDK.
Thank you.
I think you can close this since I have been able to build the setup launching manually publish.cmd.

i think that isn't a great out of box experience.  I don't like us not being F5 ready

https://github.com/microsoft/PowerToys/issues/12285 would kinda solve this since we would upgrade to .net 6 :)

@crutkas #12285 is talking about .NET 5 not .NET 6 😕

99% sure we’ll pick 6. When I wrote that issue 6 wasn’t out yet.

Working as expected with changes introduced for the new pipeline 😃


OpenBMC:Witherspoon:SNMP- make a keyword out of common code used in snmp_utils

Make a keyword out of common code used in snmp_utils library.

Make a new keyword for common code used in configure SNMP amnager and Delete SNMP manager.

@prkatti1 :  Need your help in identifying common code. I could not see considerable common code to make a separate keyword.

@kantvijay Michael Walsh
Jun 19, 2018
This is the 2nd place where you have this code (or very close).  Maybe instead, you should create a keyword like this:
Get SNMP Manager Object
[Arguments]  ${snmp_ip}  ${port}  ${fail_on_error}=${1}
${snmp_objs}=  Read Properties  ${SNMP_MANAGER}enumerate
: FOR  ${snmp_uri}  IN   @{snmp_objs}
\  ${snmp_obj}=  Set Variable  ${snmp_objs['${snmp_uri}']}
\   Run Keyword If  '${snmp_obj['Address']}' == '${snmp_ip}' and '${snmp_obj['Port']}' == '${port}'
...    Return From Keyword  ${snmp_obj}

Run Keyword If  ${fail_on_error} == ${FALSE}  Return From Keyword  ${EMPTY}

${message}=  Catenate  No valid SNMP manager found on BMC.
...  Couldn't find ${snmp_ip}:${port}.
Fail  ${message}

Then you can call it in place of Verify SNMP Manager and you can call it here.
Reply
Quote
Done
Line# 86
https://gerrit.openbmc-project.xyz/#/c/openbmc/openbmc-test-automation/+/11142/4/lib/snmp/snmp_utils.robot


Use  option pattern for LogForXXX

What does this PR do?
Use  the option pattern for LogForXXX.

Motivation
https://github.com/DataDog/datadog-agent/pull/14264#pullrequestreview-1175887818

Additional Notes

Possible Drawbacks / Trade-offs

Describe how to test/QA your changes
Nothing to QA as the code is already unit tested.

Reviewer's Checklist

[ ] If known, an appropriate milestone has been selected; otherwise the Triage milestone is set.
[ ] Use the major_change label if your change either has a major impact on the code base, is impacting multiple teams or is changing important well-established internals of the Agent. This label will be use during QA to make sure each team pay extra attention to the changed behavior. For any customer facing change use a releasenote.
[ ] A release note has been added or the changelog/no-changelog label has been applied.
[ ] Changed code has automated tests for its functionality.
[ ] Adequate QA/testing plan information is provided if the qa/skip-qa label is not applied.
[ ] At least one team/.. label has been applied, indicating the team(s) that should QA this change.
[ ] If applicable, docs team has been notified or an issue has been opened on the documentation repo.
[ ] If applicable, the need-change/operator and need-change/helm labels have been applied.
[ ] If applicable, the k8s/<min-version> label, indicating the lowest Kubernetes version compatible with this feature.
[ ] If applicable, the config template has been updated.

Closed in favor of https://github.com/DataDog/datadog-agent/pull/14458


Deprecate tunnel call in cluster.go and add BACKPLANE_CONFIG environment variable

What type of PR is this?
(feature)
What this PR does / Why we need it?
This pull request replaces the call to get the backplane host from the hive shard with a call to GetBackplaneURL(). This removes the dependency on ocm backplane tunnel.
If the environment variable isn't set, or the path to the config file does not exist or is invalid, it shows an error.
If those are valid, it uses that configuration file or environment variable as the program's BACKPLANE_URL.
Which Jira/Github issue(s) does this PR fix?
Resolves OSD-14678
Special notes for your reviewer
Pre-checks (if applicable)

[x] Ran unit tests locally
[ ] Validated the changes in a cluster
[ ] Included documentation changes with PR

/lgtm
/approve


SyntaxError: Unexpected token ... on version 1.0.11

Your patch version update is actually a major version upgrade since you have bumped superagent dependency from 3.8.3 to 7.1.6.
And superagent has this upgrade on its dependency:
<EMAIL_ADDRESS>-><EMAIL_ADDRESS>Which now on my version of node hits the following error:
formidable/src/index.js:27
  ...parsers,
  ^^^
SyntaxError: Unexpected token ...

Fixed in<EMAIL_ADDRESS>

Yeah, for now I've forced 1.0.10.
I believe the ideal fix would be as you said to roll back the changes and then make it into a major version change. But I'm also not sure.


[EPIC] v1 data path performance enhancement

Is your feature request related to a problem? Please describe (👍 if you like this request)
This epic is used to track improvements of the v1 data path.

Frontend

https://github.com/longhorn/longhorn/issues/5159

Backend

https://github.com/longhorn/longhorn/issues/6590

Describe the solution you'd like

Describe alternatives you've considered

Additional context

The primary improvement would be:

frontend <-> engine: introduce ublk (relying on kernel support, at least 6.1)
engine <-> replica: introduce a protocol (like quic) to replace the in-house tcp-based protocol.

@Kampadais improved the v1 data path based on my previous PoC.
https://github.com/longhorn/longhorn-engine/pull/1067
I think we can work on the improvement in v1.8.0 together and replace the iSCSI frontend with the new one.
WDYT @PhanLe1010 @Kampadais

Agree that we can implement it in 1.8.0. Because I am working on v1 performance related report, I can help to drive this ticket if it is ok Derek

Agree that we can implement it in 1.8.0. Because I am working on v1 performance related topics, I can help to drive this ticket if it is ok Derek

Sure! ;) BTW, the author of ubdsrv, Ming, is friendly and interested in Longhorn. Feel free to discuss with him if we encounter any issues.

I would like to work on it more. I am currently experimenting and investigating why with my multiple connections approach can't  achieve ublk's performance.

Surely @Kampadais . I am happy to follow your lead!

Recently Phan and me tried to make some improvements to the v1 backend data path:

Avoid unnecessary memory allocations during revision counter increment (for Write operation): https://github.com/longhorn/longhorn-engine/pull/1085
Increase the connection between engine and replicas: https://github.com/longhorn/longhorn-engine/pull/1085
Cache the disk size so that there is no need to invoke system call fstat for each Read operation: https://github.com/longhorn/longhorn/issues/8436#issuecomment-2080072233
Use channels rather than mutex lock for revision counter increment
Increase the revision counter and write actual data simultaneously

Notice that only the first two ideas work as expected. And the remaining 3 ideas cannot get a better result in the fio test, regardless that the CPU profiling shows a CPU usage percentage decrement for the R/W function. We suspect that iSCSI tgt may be the main bottleneck. It may waste all CPU resources saved by the last 3 ideas, which finally leads to 0 improvements in the fio test.
If we plan to introduce ublk or other kinds of frontend, which has better improvement than iSCSI tgt. We can re-do the test for the last 3 ideas. For example:
               ublk + idea 1,2            ublk + idea 1,2,3            ublk + idea 1,2,3,4,5
IOPS
CPU

cc @PhanLe1010

Maybe the bottleneck can be the revision counter itself? I mean the writing of the revision counter on the disk.

https://github.com/longhorn/longhorn-engine/pull/1109 alternative based on nbd.

https://github.com/longhorn/longhorn-engine/pull/1067 draft PR by @Kampadais


Lower case tags dont work

Trouble in this code
      config.tags.list.forEach((tag: TagEntry) => {

Wrong uppercase in this line
        const def = this.tags.get(tag.tag.toUpperCase()) || {};
        const opts = { ...def, ...tag };

        // Skip disabled default tags
        if (tag.enabled === false) {

Wrong uppercase in this line
          this.tags.delete(tag.tag.toUpperCase());
          return;
        }

        // Fix legacy isRegion tag
        if (opts.isRegion) {
          opts.behavior = "region";
        }

Wrong uppercase in this line
        this.tags.set(tag.tag.toUpperCase(), opts);
      });

Hello!
Since making changes to the anchor parsing system is risky and I currently don't have enough time to properly test it I'll have to keep this feature on hold for now.
However, have you tried setting the configuration option commentAnchors.tags.matchCase to false? This might be a good temporary solution to allow lowercase anchors to work.

Thank you very much for your answer.


laneDraggable:false on customCardLayout break description text.

Describe the bug
When I set laneDraggable={false} on customCardLayout, my description text does not break line. All text keeps in one line.
If I remove this parameter (laneDraggable={false}) the text breaks just fine.
To Reproduce
Steps to reproduce the behavior:

return <Board data={data}	customCardLayout 	draggable laneDraggable={false}

Expected behavior

When the card is draggable and lane is blocked, the card must be like this.

Desktop (please complete the following information):

OS: windows 10
Browser Chrome.
Version +70.

Does it reproduce with cards from storybook? https://rcdexta.com/react-trello/?selectedKind=Drag-n-Drop&selectedStory=Drag Cards not Lanes&full=0&addons=0&stories=1&panelRight=0

Does it reproducible in this story? https://rcdexta.com/react-trello/?selectedKind=Drag-n-Drop&selectedStory=Drag Cards not Lanes&full=0&addons=0&stories=1&panelRight=0

I have the same problem


Strange conversion

Im trying to convert this:
86532 minutes
but getting:
(1M 4w 2d 2h:12m)
im using format("y[y] M[M] w[w] d[d] h[h]:mm[m]")
Why is it not rendering 2M 0w ?

Based on Google, the output you get seems to be right :

2 months = 87600.1 mn

And based on moment itself:
moment.duration(2, "months").format("m [minutes]");
//"87,840 minutes"


Update DIY_OSEM with minor fixes/suggestions.

let me know when done. I need to do something else now...

Should be done


Add tests for common service classes, remove /api/me form input

No need for form input for /api/me endpoint, JSON works fine.

Codecov Report

Merging #208 into master will increase coverage by 0.49%.
The diff coverage is 87.5%.

@@             Coverage Diff              @@
##             master     #208      +/-   ##
============================================
+ Coverage     81.92%   82.41%   +0.49%
- Complexity     1708     1721      +13
============================================
  Files           119      119
  Lines          6284     6285       +1
  Branches       1041     1042       +1
============================================
+ Hits           5148     5180      +32
+ Misses         1052     1025      -27
+ Partials         84       80       -4


[patrol_cli] "target  is invalid" - message is misleading

Steps to reproduce

Create a new Flutter project
Create a test called patrol_test_trial.dart
Add basic patrol test for demo purposes
Execute patrol -t patrol_test_trial.dart
See the error message

Actual results
You will see an error message with Error: target patrol_test_trial.dart is invalid but the test is actually valid and it's only the naming which is the issue here.
Changing the name to patrol_trial_test.dart will stop the error message from appearing and so this should be suggested in the error message.
Logs

Logs
Error: target integration_test/tests/super_admin/patrol_test_trial.dart is invalid
#0      throwToolExit (package:patrol_cli/src/base/exceptions.dart:7:3)
#1      TestFinder.findTests (package:patrol_cli/src/test_finder.dart:65:9)
#2      TestCommand.run (package:patrol_cli/src/commands/test.dart:94:23)

#3      CommandRunner.runCommand (package:args/command_runner.dart:212:13)

#4      PatrolCommandRunner.runCommand (package:patrol_cli/src/runner/patrol_command_runner.dart:347:18)

#5      PatrolCommandRunner.run (package:patrol_cli/src/runner/patrol_command_runner.dart:291:18)

#6      patrolCommandRunner (package:patrol_cli/src/runner/patrol_command_runner.dart:70:20)

#7      main (file:///Users/mos/.pub-cache/hosted/pub.dev/patrol_cli-2.7.0/bin/main.dart:6:20)

Patrol version
patrol: 3.7.1
Patrol Doctor output

Patrol Doctor output
Patrol doctor:
Patrol CLI version: 2.7.0
Flutter command: flutter
Flutter 3.16.9 • channel stable
Android:
• Program adb found in /Users/mos/Library/Android/sdk/platform-tools//adb
• Env var $ANDROID_HOME set to /Users/mos/Library/Android/sdk
iOS / macOS:
• Program xcodebuild found in /usr/bin/xcodebuild
• Program ideviceinstaller found in /opt/homebrew/bin/ideviceinstaller

Flutter Doctor output

Flutter Doctor output
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.16.9, on macOS 13.5.1 22G90 darwin-arm64, locale en-GB)
[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
[✓] Xcode - develop for iOS and macOS (Xcode 14.3.1)
[✓] Chrome - develop for the web
[!] Android Studio (version unknown)
✗ Unable to determine Android Studio version.
[✓] Android Studio (version 2023.3)
[✓] IntelliJ IDEA Ultimate Edition (version 2024.1)
[✓] IntelliJ IDEA Ultimate Edition (version 2024.1.1)
[✓] VS Code (version 1.89.1)
[✓] Connected device (3 available)
[✓] Network resources
! Doctor found issues in 1 category.

I ran into the same error and totally ripped of my test until I checked the source code of the cli.


ROT.Scheduler.Speed not working properly

Hi all,
I'm using ROT.Scheduler.Speed in my web game. I'm running into a few problems.

Scheduler.next() is not returning the proper item. It only returns the first object added, in this case the player.
I found a fix for this by replacing ROT.Scheduler.prototype.next() with this
ROT.Scheduler.prototype.next = function() {  this._current = {}  Object.assign(this._current, this._queue.get())  return this._current; };
With the above I can move down my scheduler but the actors aren't repeating so it will go down my list of Scheduler actors and then return undefined

Notes:
The webapp is built in React.
I want to add and remove actors at any point in time.
I want to dispatch the this._current actor for all React components to see
I only want the Scheduler to know the ActorsID and their speed so I replaced the add function with this
ROT.Scheduler.Speed.prototype.add = function(item, repeat, time) { 	function CreateSchedulerObject(actor) { 		let speedInt = actor 			.CharacterSheet 			.getAttribute('Agility') 		return { 			id: actor.getID(), 			getSpeed: function () { 				return speedInt 			} 		} 	} 	let newObj = CreateSchedulerObject(item) 	console.log(newObj) 	this._queue.add(newObj, time !== undefined ? time : 1/newObj.getSpeed()); 	return ROT.Scheduler.prototype.add.call(this, newObj, repeat); };
Thanks

Solved issue!


WIP: Adding some send with retry

Signed-off-by: Matthias Wessendorf<EMAIL_ADDRESS>Fixes #

Proposed Changes

adding some simple max 5 retry

Release Note

Docs

/assign @cardil
Chris, didn't you notice some potentially lost events on the KafkaSource? Perhaps this will help with that issue?

@matzew looks like a duplicate of https://github.com/knative-sandbox/eventing-kafka/pull/666

/close
Let's focu on the original PR instead


Enhancing the security risk page with grouped alert counts

Summary
You'll gain an enhanced view of the security risk page allowing you to see a count per repository of security alerts by alert severity or security feature.
Intended Outcome
Today, enterprises users need to be able to view a total count of alerts by severity or by security feature for a group of repositories.
This feature aims to give users dynamic views to enable users to quickly and easily identify the most critical security risks and prioritize their remediation efforts.
How will it work?
Users will be presented with a toggle on the security risk page to switch between two different row-level presentations: a sum of alerts by alert severity across all security features, and a sum of alerts by security feature across all alert severities.

We are excited to bring more AI capabilities to GHAS. As a result, this feature’s development is on hold. We appreciate your understanding and welcome your feedback in the GitHub community.


Add hashing configuration

When configuring hashing we should be able to manage the default settings.
The default configuration of argon is good for small systems but should be adjusted to target 0.5 sec to minimize the effect of make it harder to do a brute force attack.
The configuration file (hashing.php) should then have options to do that.
/*
|--------------------------------------------------------------------------
| bcrypt options
|--------------------------------------------------------------------------
|
| We could define the number of rounds the bcrypt algo will be using.
|
| The two digit cost parameter is the base-2 logarithm of the iteration
| count for the underlying Blowfish-based hashing algorithmeter and must
| be in range 04-31, values outside this range will cause crypt() to fail
|
| Default: 10
*/
'bcrypt' => [
'rounds' => 10
],
/*
|--------------------------------------------------------------------------
| argon options
|--------------------------------------------------------------------------
|
| These settings could be adjusted depending on your hardware.
|
| time: Maximum amount of time it may take to compute the Argon2 hash.
|        (default: 2)
|
| memory: Maximum memory (in bytes) that may be used to compute the Argon2 hash
|        (default : 1024)
|
| threads: Number of threads to use for computing the Argon2 hash
|        (default : 2)
|
*/
'argon' => [
    'time' => 2,
    'memory' => 1024,
    'threads' => 2
]

You can pass the options when hashing.

Yes sure we can, but when using the default laravel login / password and register it use the default configuration in the class which in case of argon is not strong enough to resist any brute force attack again a password list.
It think that including this in the configuration would be great instead of having to modify the Login/Register and change password controllers.
According the NCC Group trust slower === better in term of hashing for password protection.
https://www.nccgroup.trust/us/about-us/newsroom-and-events/blog/2015/march/enough-with-the-salts-updates-on-secure-password-schemes/
The following link display many possibility of configuration that could and should be use to slow the attack vector of scrypt and argon2.
https://pthree.org/2016/06/29/further-investigation-into-scrypt-and-argon2-password-hashing/

Should I create a pull request for the configuration file (hashing.php) in the project laravel/laravel ?

@huguesjoyal: Can you please make a PR to the config/hashing.php on the laravel/laravel repo as well?


Feat-[TE-13027]: Added operations like equal, equal ignore case, contains, contains ignore case.

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


The display of register values is not updated when Refresh is pressed

OS and Version: Windows 10
VS Code Version: 1.82.2
Extension Version: 1.4.6

When Refresh 1 is pressed, the display of the value of the DR register is updated (since the USART1 is configured to receive and data is constantly coming to it).
When collapsing-unfolding USART1, the display of the value of the DR register is also updated.
But when Refresh 2 or Refresh 3 are pressed, the display of the value of the DR register IS NOT UPDATED.
When performing any of these actions, the message "Reading 28 bytes @ address 0x40013800" is displayed in the terminal window.
Similar behavior for TIM6 (the timer continuously counts)

Hi, I also encounter the same issue on:

OS and Version: Ubuntu 20.04
VS Code Version: 1.85.2
Cortex-Debug version: 1.12.1


WIP: Fix bug in history search

TODO change description to reflect the fix
closes #4008

Please have another review. Thanks

Thank you @tadgh for looking into my big PR. Please have another look.
CC @nathandoef


Executable cannot compress large files

Version: 1.0.6-win
Neither the x64 nor the x86 version managed to compress a 4.5 GB file.
bzip2: Input file large.file is not a normal file.

Small testfiles (few KB) worked.

bzip2 uses the _stat function on Windows to determine whether the file to compress exists. This will return an error if the file size is greater than 232 - 1 bytes, resulting in the 'not a normal file' output.
I've added a patch to switch to _stati64 instead. This variant of the stat function supports 64-bit file sizes.
I've built a new release (v<IP_ADDRESS>) that includes the patch.

Thank you for this quick fix! I cannot believe that I am the first person to complain about this...


Problem in installation step npm instrall

I was trying to install the odas_web with node version 10.13.0 and npm version 6.4.1
But it is unluck to encounter this problem
May I know what is the solution the settle this problem?
make: Leaving directory '/home/pi/odas_web/node_modules/google-gax/node_modules/grpc/build' gyp ERR! build error  gyp ERR! stack Error: makefailed with exit code: 2 gyp ERR! stack     at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:262:23) gyp ERR! stack     at ChildProcess.emit (events.js:182:13) gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:240:12) gyp ERR! System Linux 4.9.19-v7+ gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "build" "--fallback-to-build" "--library=static_library" "--module=/home/pi/odas_web/node_modules/google-gax/node_modules/grpc/src/node/extension_binary/node-v64-linux-arm-glibc/grpc_node.node" "--module_name=grpc_node" "--module_path=/home/pi/odas_web/node_modules/google-gax/node_modules/grpc/src/node/extension_binary/node-v64-linux-arm-glibc" gyp ERR! cwd /home/pi/odas_web/node_modules/google-gax/node_modules/grpc gyp ERR! node -v v10.13.0 gyp ERR! node-gyp -v v3.8.0 gyp ERR! not ok  npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR<EMAIL_ADDRESS>install:node-pre-gyp install --fallback-to-build --library=static_library`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR!     /home/pi/.npm/_logs/2018-11-01T04_44_41_952Z-debug.log
pi@raspberrypi:~/odas_web $
`

I did not test the install on node 10, only node 8. You may want to try downgrading.
Issue #22 mentions overcoming the problem, so you may want to ask for more info there.

Thanks, it is working by upgrading to node 8.


Avoid calculating measurement prediction for missed detections

These aren't really required, as no comparison to measurement space is done. This also causes issues where no measurement model is provided for an updater, as reasonable use case when adding measurement models to detections.

Looks good 👍


Cleanup cross-compilation

Before this PR, we were using emulation for linux_aarch64 and linux_ppc64le . As in https://github.com/emscripten-forge/recipes/pull/124 we are trying to understand more what is going on with cross-compilation, it is worth to try to use cross-compilation for for linux_aarch64 and linux_ppc64le, and also understand why cross-compilation is working fine on osx_arm64 .
Checklist

[x] Used a personal fork of the feedstock to propose changes
[x] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[x] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[x] Ensured the license file is being packaged.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@conda-forge-admin, please rerender

Exactly like in https://github.com/emscripten-forge/recipes/pull/124, on linux-aarch64 and linux-ppc64le the build is failing because CMake is not able to find Python headers and numpy headers:
CMake Error at /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
  Could NOT find Python3 (missing: Python3_INCLUDE_DIRS
  Python3_NumPy_INCLUDE_DIRS Development.Module NumPy) (found version
  "3.7.12")
Call Stack (most recent call first):
  /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPackageHandleStandardArgs.cmake:594 (_FPHSA_FAILURE_MESSAGE)
  /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPython/Support.cmake:3203 (find_package_handle_standard_args)
  /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPython3.cmake:490 (include)
  bindings/CMakeLists.txt:44 (find_package)

-- Configuring incomplete, errors occurred!
CMake Error at /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
  Could NOT find Python3 (missing: Python3_INCLUDE_DIRS
  Python3_NumPy_INCLUDE_DIRS Development.Module NumPy) (found version
  "3.7.12")
Call Stack (most recent call first):
  /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPackageHandleStandardArgs.cmake:594 (_FPHSA_FAILURE_MESSAGE)
  /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPython/Support.cmake:3203 (find_package_handle_standard_args)
  /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPython3.cmake:490 (include)
  bindings/CMakeLists.txt:44 (find_package)

-- Configuring incomplete, errors occurred!CMake Error at /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
  Could NOT find Python3 (missing: Python3_INCLUDE_DIRS
  Python3_NumPy_INCLUDE_DIRS Development.Module NumPy) (found version
  "3.7.12")
Call Stack (most recent call first):
  /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPackageHandleStandardArgs.cmake:594 (_FPHSA_FAILURE_MESSAGE)
  /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPython/Support.cmake:3203 (find_package_handle_standard_args)
  /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPython3.cmake:490 (include)
  bindings/CMakeLists.txt:44 (find_package)

-- Configuring incomplete, errors occurred!CMake Error at /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
  Could NOT find Python3 (missing: Python3_INCLUDE_DIRS
  Python3_NumPy_INCLUDE_DIRS Development.Module NumPy) (found version
  "3.7.12")
Call Stack (most recent call first):
  /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPackageHandleStandardArgs.cmake:594 (_FPHSA_FAILURE_MESSAGE)
  /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPython/Support.cmake:3203 (find_package_handle_standard_args)
  /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPython3.cmake:490 (include)
  bindings/CMakeLists.txt:44 (find_package)

-- Configuring incomplete, errors occurred!
CMake Error at /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
  Could NOT find Python3 (missing: Python3_INCLUDE_DIRS
  Python3_NumPy_INCLUDE_DIRS Development.Module NumPy) (found version
  "3.7.12")
Call Stack (most recent call first):
  /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPackageHandleStandardArgs.cmake:594 (_FPHSA_FAILURE_MESSAGE)
  /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPython/Support.cmake:3203 (find_package_handle_standard_args)
  /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPython3.cmake:490 (include)
  bindings/CMakeLists.txt:44 (find_package)

-- Configuring incomplete, errors occurred!CMake Error at /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
  Could NOT find Python3 (missing: Python3_INCLUDE_DIRS
  Python3_NumPy_INCLUDE_DIRS Development.Module NumPy) (found version
  "3.7.12")
Call Stack (most recent call first):
  /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPackageHandleStandardArgs.cmake:594 (_FPHSA_FAILURE_MESSAGE)
  /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPython/Support.cmake:3203 (find_package_handle_standard_args)
  /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPython3.cmake:490 (include)
  bindings/CMakeLists.txt:44 (find_package)

-- Configuring incomplete, errors occurred!CMake Error at /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
  Could NOT find Python3 (missing: Python3_INCLUDE_DIRS
  Python3_NumPy_INCLUDE_DIRS Development.Module NumPy) (found version
  "3.7.12")
Call Stack (most recent call first):
  /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPackageHandleStandardArgs.cmake:594 (_FPHSA_FAILURE_MESSAGE)
  /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPython/Support.cmake:3203 (find_package_handle_standard_args)
  /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPython3.cmake:490 (include)
  bindings/CMakeLists.txt:44 (find_package)

-- Configuring incomplete, errors occurred!
CMake Error at /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
  Could NOT find Python3 (missing: Python3_INCLUDE_DIRS
  Python3_NumPy_INCLUDE_DIRS Development.Module NumPy) (found version
  "3.7.12")
Call Stack (most recent call first):
  /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPackageHandleStandardArgs.cmake:594 (_FPHSA_FAILURE_MESSAGE)
  /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPython/Support.cmake:3203 (find_package_handle_standard_args)
  /home/conda/feedstock_root/build_artifacts/idyntree_1665400979716/_build_env/share/cmake-3.24/Modules/FindPython3.cmake:490 (include)
  bindings/CMakeLists.txt:44 (find_package)

-- Configuring incomplete, errors occurred!

For some reason instead on macOS everything is working fine, and CMake is finding Python and NumPy headers in the BUILD_PREFIX:
2022-10-10T11:33:14.1097520Z FIND_PACKAGE_MESSAGE_DETAILS_Python3:INTERNAL=[$PREFIX/bin/python][$BUILD_PREFIX/include/python3.8][$BUILD_PREFIX/venv/lib/python3.8/site-packages/numpy/core/include][cfound components: Interpreter Development.Module NumPy ][v3.8.13()]

Closed as stale.


[Bug]: SQL execution time consuming statistics error

ODC version
4.2.1
OB version
not related
What happened?
I try to get the time consuming of SQL execution and found several problems as follow:

leak several stages in pre check stage:

data masking stage
database permission check stage
external sql check stage
nls date format set stage
sql check stage
sql console rule check stage

the sum of execution time from different sub-stage is not equal to parent stage:

What did you expect to happen?
show sql execution time correctly
How can we reproduce it (as minimally and precisely as possible)?
follow what happened
Anything else we need to know?
No response
Cloud
No response

pass


adding grumphp, php-cs-fixer, fixing-style, narrowing namespace

Codecov Report

Merging #1 into master will not change coverage.
The diff coverage is 75.75%.

@@            Coverage Diff            @@
##             master       #1   +/-   ##
=========================================
  Coverage     93.54%   93.54%
  Complexity      323      323
=========================================
  Files             5        5
  Lines           713      713
=========================================
  Hits            667      667
  Misses           46       46

Impacted Files
Coverage Δ
Complexity Δ

src/Zend/Navigation.php
100% <100%> (ø)
4 <0> (ø)
:arrow_down:

src/Zend/Navigation/Page/Mvc.php
95.75% <100%> (ø)
64 <0> (ø)
:arrow_down:

src/Zend/Navigation/Page/Uri.php
100% <100%> (ø)
8 <0> (ø)
:arrow_down:

src/Zend/Navigation/Container.php
91.89% <71.42%> (ø)
79 <0> (ø)
:arrow_down:

src/Zend/Navigation/Page.php
92.87% <73.91%> (ø)
168 <5> (ø)
:arrow_down:

Continue to review full report at Codecov.

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


Fuzz testing: KBC interpreter/mixed mode crash

Divergence found:
KBC-CMP-DebugX64 - KBC-MIX-DebugX64: !DIVERGENCE! 1.2:2317718365
See attached for your convenience.
We get regular output for:
dart fuzz.dart
But not all KBC modes run fine.
Fully compiled mode works fine, but fully interpreted mode and mixed mode crash:
../../runtime/vm/object.h: 1523: error: Handle check failed: saw Type: class '_Mint@0150898' expected Class
Dumping native stack trace for thread 2c07b
[0x00005635a60e9a6f] dart::Profiler::DumpStackTrace(void*)
[0x00005635a60e9a6f] dart::Profiler::DumpStackTrace(void*)
[0x00005635a633ac92] dart::Assert::Fail(char const*, ...)
[0x00005635a6138fcd] dart::DRT_AllocateObject(dart::NativeArguments)
[0x00005635a5ffcd81] Unknown symbol
[0x00005635a60024f4] dart::Interpreter::AllocateInt64Box(dart::Thread*, long, unsigned int*, dart::RawObject**, dart::RawObject**)
[0x00005635a60016c0] dart::Interpreter::Call(dart::RawFunction*, dart::RawArray*, long, dart::RawObject* const*, dart::Thread*)
[0x00005635a6146af8] dart::RuntimeEntry::InterpretCall(dart::RawFunction*, dart::RawArray*, long, dart::RawObject**, dart::Thread*)
fuzz.dart.txt

This was also found by:
JIT-DebugSIMARM64 - KBC-INT-DebugX64: !DIVERGENCE! 1.2:1419655255 (output=false)

I can't reproduce the bug. It looks like the crash happens when reading vm_platform_strong.dill, and vm_platform_strong.dill is corrupted or maybe overwritten by another build happening at the same time.
@aartbik could you please take a look?

I updated the original comment with the real problem. My script that generates easy reproducers had a bug, causing dill to be not found (which yields the weird  Uint8List.[] message).

This crash should be fixed by https://github.com/dart-lang/sdk/commit/4486bf5f6b8c8a762bb7139a2fa7c40c05ad1a5b.


Take lifecycle controller out of recovery mode

@cdearborn @rpioso @digambar15
modified config_idrac.py in JetStream calling directly into python-dracclient to check if a node is in recovery mode and take it out of recovery mode if necessary.
And also created monkey patch for client.py, job.py, utils.py and lifecycle_controller.py

Updated error message.

Thanks Chris!


Remove hardcoded reference to vm-dev-030

Can find them in a variety of places by searching:
https://github.com/informatics-isi-edu/chaise/search?utf8=✓&q=vm-dev-030&type=Code
For example:
https://github.com/informatics-isi-edu/chaise/blob/4405533360e37f4237778a36360cec050fa7b4d3/record/index.html#L29
and:
https://github.com/informatics-isi-edu/chaise/blob/4405533360e37f4237778a36360cec050fa7b4d3/record/assets/javascripts/app.js#L39

Was just checking this now, seems like someone resolved it already.

I think rob just replaced one hard coded solution with another. The correct solution need to be to set this at deployment time.
Carl
Sent from my iPhone
Dr. Carl Kesselman
Dean's Professor, Epstein Dept. Industrial and Systems Engineering
Fellow, Information Sciences Institute
Viterbi School of Engineering
Phone: +1<PHONE_NUMBER>
Email: carl<EMAIL_ADDRESS>On Oct 2, 2015, at 7:09 PM, Bennett Lee <notifications<EMAIL_ADDRESS>wrote:
Was just checking this now, seems like someone resolved it already.

Reply to this email directly or view it on GitHubhttps://github.com/informatics-isi-edu/chaise/issues/87#issuecomment-145193647.

actually serban went back in and fixed it with the window.location. but I think we may still want to get rid of that global variable.


Fix managed etcd cold startup deadlock issue #2249

Proposed Changes

Add code to handle join URL server returning 503, and continue with
startup if the managed database is already initialized to avoid
deadlock when etcd does not have quorum.
Refactor clientaccess token handling for improved readability.
Add doc comments to clientaccess and cluster startup code.
Remove unused code from cluster managedDB setup.

Types of Changes

embedded etcd
token handling
doc comments

Verification

Follow reproduction steps in linked issue
Cluster starts up successfully from quorum-loss state.
Should see a warning when starting the second node: Ignoring bootstrap token validation error on initialized member due to cluster quorum loss: failed to get CA certs: service unavailable

Linked Issues
#2249
Further Comments
I did a fair bit of refactoring of the token handling code to improve readability and reduce duplicate code and the number of round-trips necessary to validate the token. Unfortunately the extensive changes mean that the diff is pretty hard to make heads or tails of.

I actually want to hold off on this a little bit longer. The current fix still requires that the join URL be available to serve a 503. One the cluster has been initialized, we shouldn't require the first member to be up, or even necessarily exist. I think it's useful to validate the token if the server is still up, but IMO we should gracefully handle situations where the initial server is offline or otherwise unreachable.

@brandond @ibuildthecloud I would suggest:

remove --cluster-init parameter
--server parameter either take dns as input, which then map to a list of master ip addresses, or take a list of master ip addresses as input.
when startup, try to ping other Its address, but not connect to own IP. If others is reachable, join. If none of other are reachable, run as first master.

By doing this, we don't depend on the first master to bring up the the cluster, first come first win.

@ElisaMeng this would be incredibly difficult to pull off from an operational perspective. Etcd stores its list of endpoints in the database, and kubernetes stores its list of nodes in etcd. Making the user provide a complete list of cluster members on the command line would remove a lot of flexibility.
Ideally, the only time you should need to point k3s server at another server is when joining it to the cluster for the first time.

@ElisaMeng I proper mislead u early, I have updated my comment, you don't need a full list of members, but just a list of seeding nodes, which are part of the member list and they are believed to be stable from operator perspective.

In another word, you just need to point out some nodes which intend to start early, basically doing the same with the first master dose today. In my case, just allow more than one masters to compete to be leader, and then potentially break the dead lock.

@ElisaMeng right now we are letting k3s manage the etcd cluster membership in sync with the kubernetes cluster membership. You can join by pointing a new server at any available server; if quorum is unrecoverably lost you can --cluster-reset one of the nodes and then rejoin the others.

@brandond I might miss some points somewhere. I actually believe my idea is not against the design today, but also resolve the issue you mention in https://github.com/rancher/k3s/issues/2316. Today, the node with cluster-init is the only seeding node, I want it to become multiple, therefore remove this single point of failure.

You can actually join (seed from) any server once it's been joined.

@brandond After digging into the source, I think I get you better now.  But in the document, it says:
K3S_TOKEN=SECRET k3s server --server https://:6443
give me an impression that we always need the first server to be available. So you are saying, even without multiple seeding nodes, we are still able to handle re-bootstraping in some way.  Are we ignoring --server parameter but loading peer nodes from local persistent storage?

So you are saying, even without multiple seeding nodes, we are still able to handle re-bootstraping in some way. Are we ignoring --server parameter but loading peer nodes from local persistent storage?

Yes, from the local copy of the etcd database. Etc stores cluster membership events inside WAL, which is replayed on startup. The --cluster-reset flag is available to reset the etcd cluster membership in case of some sort of catastrophic change to the membership list. This resets the etcd cluster membership to a single node without wiping any data; other servers can be rejoined by removing their copy of the database from disk and then restarting.

Alright, @ibuildthecloud did look at this after your rewrite to the fix @brandond and he is good with it.

It's similar to what I suggested but better because he's checking initialized state, not bootstrap state.

Let's merge (via "Create a merge commit") and move this forward. Does this need pulled into rke2?


.NET Guidelines: Updates to out of date guidelines

Description
For the MQ Guidelines effort, update links and guidelines to make them current.
Details
This includes:

[ ] Link to Framework Design Guidelines on Safari Books Online where called out in TODOs in introduction.md.
This link is aka.ms/fdg3, but may additionally need a sentence description of how to log in the first time (all MS employees have access).

In Design Principles/Idiomatic
In Service Method Parameters
Under struct criteria guideline

[ ] Link to guidance on contacting arch board where called out in TODOs

In Support for non-HTTP Protocols

[ ] Update list of namespaces; there is a TODO for this in the Namespaces section.

[ ] Update samples guidance; there is a TODO for this in the Samples section.

[ ] In Using HttpPipeline in implementation.md, do we want to keep the code sample, even though our recommendation is now to use code generation rather than writing these methods by hand?

@sameralameer FYI

In Using HttpPipeline in implementation.md, do we want to keep the code sample, even though our recommendation is now to use code generation rather than writing these methods by hand?

I will keep it and simply add a note that some of this code can be generated.

For samples I filed a separate issue #2141. This is a large workitem.


How to decode rpc response string ?

I use this search my account info:get_token_accounts_by_owne
but response this:{'jsonrpc': '2.0', 'result': {'context': {'slot': 76584788}, 'value': [{'account': {'data': ['8CsaUtZsXoZJMjgBclYYcr9wvkOJryLokWuobaSAVBUkD+i7UazOtnaj1x73Gsn2kO74OBdBANIgLDdXhAPuEQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA', 'base64'], 'executable': False, 'lamports': 2039280, 'owner': 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA', 'rentEpoch': 176}, 'pubkey': 'Cc74FDMM3g5UpdLdW4hNqJRazCnDC1vK48F6A3cwLnKw'}]}, 'id': 1}
How can I decode account.data ?

Here is what you can do right now: https://github.com/michaelhly/solana-py/blob/97a62c60b829ba4d3ebcc8f2c3473d19d8dd4aea/tests/integration/test_token_client.py#L73
Sorry that this isn't very friendly right now. I'll see how I can expose a friendlier helper method.

Here is what you can do right now:
https://github.com/michaelhly/solana-py/blob/97a62c60b829ba4d3ebcc8f2c3473d19d8dd4aea/tests/integration/test_token_client.py#L73
Sorry that this isn't very friendly right now. I'll see how I can expose a friendlier helper method.

OK thank you ，use this method I got this:

now I need Convert byte?

Can you try to just dumping those bytes into PublicKey(...)?

Can you try dumping those bytes into PublicKey(...)?

Thank you , It works

hey @michaelhly circling back here, is there an easier method to decode data for get_account_info now?


Vehicles (Spirit) crashes the game

Hi, I saw the vehicles list...
I used cheat engine and spawned a Really Hog with a frag grenade and it did work (I followed the biped tutorial but I changed the bipeds to vehicles).
Then I tried with the Spirit and it crashed, it does the same to some of the AR Projectiles (Thanks to you now I know how to change the projectiles but some don't work (crash), like the Red Missile and the Blue missile)
Is there a solution? Am I doing something wrong?
See y'all
Edit: there it is an image and a video

http://xboxdvr.com/gamer/Halo5ForgeMod/video/21603778

The issues platform is intended to be used for issues relating to the Osiris software and not to the tutorials on the wiki.
For help related to the tutorials try talking in the Discord


LFX Proposal: Multimodal Large Model Joint Learning Algorithm: Reproduction Based on KubeEdge-Ianvs #123

What type of PR is this?
/kind design
What this PR does / why we need it:
Proposal for LFX Project CNCF - Multimodal Large Model Joint Learning Algorithm: Reproduction Based on KubeEdge-Ianvs
Which issue(s) this PR fixes:
Fixes https://github.com/kubeedge/ianvs/issues/123

sure sir I am working on it.


Need release for fixing the vulnerable request dependency

Could you perform a new release that includes the PR to bump the version of request.

It looks like the bump, in 061ed05a172b70fe0, is the only change since 0.2.13. It's been simmering on master for a while; is it possible to get it in a release?


.

Coverage remained the same at 66.667% when pulling 9ad655eec12fccae5c54580f6f65e8f7a2f80743 on AlKass:rewriting-plugin-doc into 4debebf512cd65f3e29fae0649919f95fdc6cd63 on fadeenk:master.


Run python fixture script during container build

I am working on containerizing my mongodb instance and my web application running on another instance access it. I have a requirement to run few fixtures scripts which are in python. A part of script generates the password hash and stores in the mongo as a default user password. I am using bcrypt to generate the hash. I can run simple .sh and .js script in /docker-entrypoint-initdb.d as mentioned in the Mongodb official docker link . Is there a way to run scripts that invokes other libraries and utilities during the docker build or via docker-compose. If not, are there any other ways to fulfill my requirements. I wonder if I whatever I am doing is the right approach.

Is there a way to run scripts that invokes other libraries and utilities during the docker build or via docker-compose. If not, are there any other ways to fulfill my requirements. I wonder if I whatever I am doing is the right approach.

If you want to do something during docker build, that'd just be a RUN line.  If you want to invoke non-shell or non-javascript files during database initialization, I'd recommend adding a tiny shell script which invokes whatever it is you want invoked (python, compiled binary, etc).
If you need more complex behavior (perhaps invoked more often than just at database initialization time), you should probably be putting that into a separate container which interacts with your database container.
In the future (and for further help), these sorts of questions/requests would be more appropriately posted to the Docker Community Forums, the Docker Community Slack, or Stack Overflow.


Not an issue, just appreciation

Hi, I think what you create is very good. Thanks a lot
To other that needed some sample how to use it, here it is :
val scope = rememberCoroutineScope()
val zoomableState = rememberZoomableState()

...
ZoomableImage(
		modifier = Modifier
			.fillMaxWidth()
			.fillMaxHeight(0.95f),
		coroutineScope = scope, zoomableState = zoomableState,
	)

Hey, thanks for the compliment, happy to help.
Can I use that Sample in the readme? You are also very welcome to make a PR if you'd like to get the credit ;)

Sure, thats what I got some trouble at first since there's no example yet, hopefully it will help all your component user

Thanks for your suggestion, I'll close this issue now


possible to extend to multiple ds18b20

Is there a way to add :

list ds18b20 devices
get device temp by Index
etc etc ?

Or maybe i can code this if you explain me what tool i can use to code?

Yes, there is such a possibility. But because of my assumptions while creating custom blocks. The code had to be as short as possible because it had to be placed in the custom block to avoid additional manual uploading of libraries to which the custom block would refer. From the uiflow editor level there is no possibility to upload selected files other than m5f, jpg or bmp

Generally you can upload the file to the block editor
http://block-maker.m5stack.com/
Upload the m5b file and there you can view and edit each block and what code is injected where each block occurs. All of the "library" code is placed in the init block as a class definition to separate it from the rest of the code created automatically by the uiflow editor. The rest of the blocks refer to the appropriate functions contained in this class.
I put the file with the code I based on (blocky18b20.py) in the repository.
Translated with www.DeepL.com/Translator (free version)


Fix channel str support

These test cases did not work:
    def test_plot_can_render_a_single_channel_str_from_image(self, sdata_blobs_str: SpatialData):
        sdata_blobs_str.pl.render_images(elements="blobs_image", channel="c1").pl.show()

    def test_plot_can_render_a_single_channel_str_from_multiscale_image(self, sdata_blobs_str: SpatialData):
        sdata_blobs_str.pl.render_images(elements="blobs_multiscale_image", channel="c1").pl.show()

    def test_plot_can_render_two_channels_str_from_image(self, sdata_blobs_str: SpatialData):
        sdata_blobs_str.pl.render_images(elements="blobs_image", channel=["c1", "c2"]).pl.show()

    def test_plot_can_render_two_channels_str_from_multiscale_image(self, sdata_blobs_str: SpatialData):
        sdata_blobs_str.pl.render_images(elements="blobs_multiscale_image", channel=["c1", "c2"]).pl.show()

I added the tests and the two fixes needed to make them pass. Reported by @thienthu.
The problem with buggy channel string support is usually creating a new Image2DModel with the data but not also the string labels via a c_coords parameter (see src/spatialdata_plot/pl/utils.py:1247).

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 77.70%. Comparing base (ac062d8) to head (b5f8902).

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #221   +/-   ##
=======================================
  Coverage   77.70%   77.70%
=======================================
  Files          11       11
  Lines        1722     1722
=======================================
  Hits         1338     1338
  Misses        384      384

Files
Coverage Δ

src/spatialdata_plot/pl/render.py
94.61% <100.00%> (ø)

src/spatialdata_plot/pl/utils.py
66.70% <100.00%> (ø)

Should now all be fixed, it's failing because the codecov retry limit is reached for now. Will try again in a bit and then merge. Thanks for the work @berombau!


Using wrong flag to write to error log in ErrorHandler

In ErrorHandler at line 262, the condition is checked against the wrong flag.
the condition must check against $this->logErrorDetails rather than $this->displayErrorDetails. so the line would be:
if (!$this->logErrorDetails) {
If the bug is valid, I can create a pull request to fix it.
More details: It seems writeToErrorLog() is used to save the logs properly somewhere and $this->displayErrorDetails is used by the renderer to show the error details in realtime on the client

In this case, the test against displayErrorDetails being set to false is correct.
The idea here is that we we add a tip to the log to remind the developer that if they want to see the error in their browser, they need to set displayErrorDetails to true.
There's an argument that we could add a new suppressDisplayErrorDetailsTip that defaults to false that allows for a dev to hide this message as they intentionally have displayErrorDetails set the way they want it to be.

Please don't just close the issue. it is not resolved nor completed.
I get the idea here. but I'm not sure you are correct. for example, there is no need for suppressDisplayErrorDetailsTip for sure.
Let me elaborate.
When a log is added, We want to either:

Display it
Write it somewhere.
Or both

Also, regarding the details, We may want to either:

Show details of a log when displaying it or skip details and display the log without details
Write the log to a backend with or without details (regardless of how we display it).

So, what if I don't want to display the details of a log but I want to write details of the same log to send it to a backend?
We need to understand the purpose of the flags:
The displayErrorDetails flag is for DISPLAYING logs.
The logErrorDetails flag is for writing the log to a destination.
Back to my first post. the condition I mentioned IS NOT  meant for display and the developer must have used logErrorDetails to determine if we need log details. but the developer incorrectly used displayErrorDetails to determine if we need log details for a log which is never going to be displayed.
Pay attention, the function name is writeToErrorLog. That will clarify the incorrect flag usage.
Practical Example:
Right now, I have a JSON serializer and I want to add log details. but when JSON is created, the tip is added to the end of the JSON, resulting in an incorrect JSON object.
I can send a pull request about this.

Please reopen @akrabat

As per your original report, the code is not using the wrong flag as the writeToErrorLog function is intended to  add an additional string to the logged error if displayErrorDetails is false.
That is, the suggestion to change line 262 to if (!$this->logErrorDetails) { would be incorrect as that's not the intention of the code.

Having said that, you have now provided additional information about an actual problem you have that you did not provide in the original report which shows that there is an issue to be addressed. It would have been helpful if you have provided the information about the production of invalid JSON at the start as we can now determine the correct resolution to your actual problem.

I'm still uncertain about  your understanding regarding the intention of the code.
You can check where the function is called.
If you check, you'll get to line 132. as you can see, it is wrapped inside an if condition, the condition become true only if we want to write the log.
On line 135 you can see that  a response is returned and writeToErrorLog has nothing to do with displaying.
Am I wrong? please guide me so that I can help to fix it.

As I now understand it, the actual problem is that we are adding a plain text string to the output provided by an error renderer, where that renderer's output may be a formatted output that is not plain text.
My immediate ideas for resolution to this are that we could do one of:

Remove lines 262 to 265 completely
Add a new property suppressDisplayErrorDetailsTip and change line 262 to if (!$this->suppressDisplayErrorDetailsTip && !$this->displayErrorDetails) {. This would allow the develop to disable this addition to the logged error message if they need to.
Move the code that adds this message to the PlainTextRenderer, but we can't do that as we'd have to change the signature of ErrorRendererInterface::__invoke() which is a massive BC break! Hence we'd need a new Interface and have to test for it in writeToErrorLog and so on. i.e. quite a lot of work.

I'm still uncertain about your understanding regarding the intention of the code.
You can check where the function is called. If you check, you'll get to line 132. as you can see, it is wrapped inside an if condition, the condition become true only if we want to write the log.
On line 135 you can see that a response is returned and writeToErrorLog has nothing to do with displaying.
Am I wrong? please guide me so that I can help to fix it.

You are correct that writeToErrorLog() is only called if $logErrors is true. The intention of the code. The intention of the if (!$this->displayErrorDetails) { test in writeToErrorLog() is to help the user work out why they can't see the error in their browser. i.e. if someone does not set $displayErrorDetails to true, then their browser will not show any useful information while they are developing and this is a hint to help them work that out.

Look at line 261. The second param is $this->logErrorDetails.
Now look at line 300. The second param is $this->displayErrorDetails
As you can see, writeToErrorLog() is intended for writing to a log and respond() is intended for displaying the error on the browser.
As you can see in response(), Response is returned. so that indicate that writeToErrorLog() has nothing to do with displaying error on the browser.
If you guys are certain about keeping the tip. It can happen on line 303. we can simply append the tip to the body.
Any opinion?

This is how I'd change writeToErrorLog() and respond() :
 protected function writeToErrorLog(): void
    {
        $renderer = $this->callableResolver->resolve($this->logErrorRenderer);
        $error = $renderer($this->exception, $this->logErrorDetails);
        $this->logError($error);
    }

protected function respond(): ResponseInterface
    {
        $response = $this->responseFactory->createResponse($this->statusCode);
        if ($this->contentType !== null && array_key_exists($this->contentType, $this->errorRenderers)) {
            $response = $response->withHeader('Content-type', $this->contentType);
        } else {
            $response = $response->withHeader('Content-type', $this->defaultErrorRendererContentType);
        }

        if ($this->exception instanceof HttpMethodNotAllowedException) {
            $allowedMethods = implode(', ', $this->exception->getAllowedMethods());
            $response = $response->withHeader('Allow', $allowedMethods);
        }

        $renderer = $this->determineRenderer();
        $body = call_user_func($renderer, $this->exception, $this->displayErrorDetails);
        if (!$this->displayErrorDetails) {
            $body .= "\nTips: To display error details in HTTP response ";
            $body .= 'set "displayErrorDetails" to true in the ErrorHandler constructor.';
        }
        if ($body !== false) {
            /** @var string $body */
            $response->getBody()->write($body);
        }

        return $response;
    }

The important thing is that
if (!$this->displayErrorDetails) {
    $body .= "\nTips: To display error details in HTTP response ";
    $body .= 'set "displayErrorDetails" to true in the ErrorHandler constructor.';
}

is output to the log, not the the response.


Inpainting results do not look as good as the paper

Hi,
Thank you for releasing the code. I am trying to use your model for inpainting using 100 reference images however the results do not look good. Any chance of being able to release your model or suggest what is going on?

dlib needs to match your image to the inpainted image, maybe they missed that step in the code,probably need to do it yourself


docs

@svycka Does this make sense?

don't think so.. PR https://github.com/juriansluiman/SlmQueue/pull/201 affects only users who does not use zend-mvc and anyway they can still get eventmanager with this https://github.com/juriansluiman/SlmQueue/blob/master/src/Worker/AbstractWorker.php#L79 it is not a shared event manager but it is eventmanager anyway...

so adding something like
or you should attach listeners to the manager from your Worker::getEventManager()
would be more accurate?

or should we remove this doc at all and suggest Worker::getEventManager? https://github.com/basz/SlmQueue/blob/93d194af791b22ea8864dfc3f9665bfca02d9661/docs/6.Events.md#using-the-shared-event-manager

I think both are valid not sure with one is more accurate. but I would go with Worker::getEventManager since this is valid both ways.

@basz I didn't now we have this in docs but I guess this does not change anything since this example is for  zend-mvc and still working. But I guess to be more clear and safe we could get not shared event manager but event manager from worker because who knows how it is created maybe someone is using different factory and this way using custom event manager... so using event manager from worker always will be safe..

I think that in next version maybe we could get ride of shared event manager at all? also not sure if this is important but with zend-mvc Worker::getEventManager will return SharedEventManager but without it will return just EventManager. Is this important and should return the same in both cases?

oh I was wrong..
Both has EventManager the difference is that EventManager from zend-mvc is created with attached shared event manager I guess this is the only difference. But anyway if event will be attached to event manager from Worker:getEventManager then there is no big difference if we will not use SharedEventManager and remove from docs or update docs to use event manager from Worker::getEventManager.

I think that in next version maybe we could get ride of shared event manager at all

me too

if event manager is important in this module maybe would be good idea to introduce container key for eventmanager would be easier to add it.

@basz And went ahead and merged the changes in master. Thanks!


Always run pip installer to get implicit deps

Unconditionally executing the contents of this if block results in the installation of wheel (consistent with <= 3.3 images) without over-zealous overhead:
[...] # end of make install output
Successfully installed pip-9.0.1 setuptools-28.8.0
+ wget -O /tmp/get-pip.py https://bootstrap.pypa.io/get-pip.py
Connecting to bootstrap.pypa.io (<IP_ADDRESS>:443)
get-pip.py           100% |*******************************|  1558k  0:00:00 ETA
+ python3 /tmp/get-pip.py pip==9.0.1
Requirement already up-to-date: pip==9.0.1 in /usr/local/lib/python3.6/site-packages
Collecting wheel
  Downloading wheel-0.29.0-py2.py3-none-any.whl (66kB)
Installing collected packages: wheel
Successfully installed wheel-0.29.0
+ rm /tmp/get-pip.py
[...]

Fixes #141

I'm a little bit confused about what this does that just pip3 install --no-cache-dir --upgrade --force-reinstall pip==9.0.1 is not doing (which is invoked later).
@dstufft would you be willing to give us some advice on whether it's sane / smart to always invoke get-pip.py, regardless of whether our Python install already includes a pip3 which we can use for bootstrapping via --force-reinstall?  Any (other) suggestions for improvement? :pray: :innocent: :heart: :heart:

It installs wheel which is not present in any of the existing > 3.3 images. If there's a better way of achieving the same, all the better 😄

I'm on my phone but a quick glance suggests the impetus for this change is that get-pip.py installs pip/setuptools/wheel but ensurepip only installs pip/setuptools. Expanding your later command to also include setuptools and wheel should solve this also I think.
I will take a closer look when I get home.

Oh, we also have https://github.com/docker-library/python/issues/170, where folks are suggesting that we need newer setuptools, so perhaps simply keeping setuptools and wheel up-to-date in the same way we handle pip would make sense? :smile:
(Definitely appreciate the input :heart: :heart: :heart:)

Just did a quick PoC of the suggested approach, following along with how pip version management is done.
There's a version difference between the wheel installed by pip's get-pip.py and the wheel installed as a result of version grabbing from pypi: wheel-0.29.0 vs wheel-0.30.0a0. I'm unsure if that's an issue but worth noting.
Happy to update this PR when we know which direction we'd like to take this 😄

That'll be because pip excludes pre-releases by default.

In that case I think the current way of getting the package versions might need a tweak, because as I pointed out above, right now it happily grabs pre-release versions.
# curl -fsSL 'https://pypi.python.org/pypi/pip/json' | awk -F '"' '$2 == "version" { print $4 }'
9.0.1
# curl -fsSL 'https://pypi.python.org/pypi/setuptools/json' | awk -F '"' '$2 == "version" { print $4 }'
34.3.3
# curl -fsSL 'https://pypi.python.org/pypi/wheel/json' | awk -F '"' '$2 == "version" { print $4 }'
0.30.0a0

A look at the docs claims that it will fetch the stable version by default but that does not appear to be happening:

This retrieves information about the latest stable release

In the meantime, I'll update this PR with the version that grabs pre-releases and we can go forward from there.

I'll squash this down once we're happy with it 😉

Is it permissable to use tools such as jq when processing the https://pypi.python.org/pypi/wheel/json style URLs, or are we limited to using common system tools?

Yeah, jq is one that's permissible (we use it in other places, so it's safe to assume it being installed).  I was thinking of replacing the awk with jq since that'd be more reliable anyhow. :smile:
I think the main issue I see is that the alpha is listed as the actual "latest release" for wheel by PyPI, so I'm not sure how we're expected to know that 0.29.0 is what we ought to be consuming unless we implement the PEP for Python version number sorting ourselves. :disappointed:

Try https://pypi.org/pypi/wheel/json.

Aha! Perfect! I'll get a commit going, thanks 😁

You're a hero, @dstufft :heart: (thanks for all you do! :+1:)

I feel obligated to mention that URL is technically not "production" which mostly just means there's no alerting if it goes down, but that should be fairly rare to get downtime of that URL that actually makes it unavailable.

Yeah, I figured as much when I checked out https://pypi.org (and saw the warning), but it's only going to be used from our update.sh script that's used for updating the version numbers, not during builds, so I'm +1 on using it since it solves our issues. :smile: :heart: (especially since now we can claim to be guinea pigs helping test pypi.org! :innocent:)

Anything more to do on this one @tianon?

I took the liberty of rebasing this on https://github.com/docker-library/python/pull/187 for you, and added a commit (60d03bd670bb9956b9c62a1004640e88669c301c) which both fixes our pip update code on Windows, and applies this same change there. :+1: :metal:

I'm a bit concerned about tracking the setuptools version as it moves very fast which would lead to these images being rebuilt very often. For example, there's already version 35.0.2.
https://github.com/pypa/setuptools/blame/master/CHANGES.rst

Hmm, good point @JayH5.  @yosifkit and I took a look at Python's ./configure options, and we're considering using --without-ensurepip to have Python no longer install the embedded pip at all, and just use get-pip.py unilaterally, which means we can even move the get-pip.py into a separate layer and get even better cache (especially for minor pip bumps).  :sweat_smile:
(Then, since we'll be using get-pip.py unconditionally, we'll always get setuptools and wheel, and they'll be the "latest release at the time of our installation of pip", which also solves the problem of "when do we bump them?" -- they'll be naturally bumped any time Python, pip, or our base image are. :+1:)

(Which ironically enough is basically exactly what @mal suggested originally -- sorry @mal :see_no_evil: :heart: :heart:)


Mail delivery

Hello,
I've found your fork of Cachet and was able to configure and install it without issues. However I would like to know if the approach of announcing to subs via email is expected as behavior or it's something which is not implemented.
Sending mails for Incidents is working just fine with proper configuration, but creating a Maintenance doesn't send emails at all. Any further information on this will be much appreciated.
Thank you in advance.

I will look at it when possible


Why clearing cache when Temp=0

In the _check_data function there is the following validation:
  if parsed[MI_TEMPERATURE] == 0:  # humidity over 100 procent
    self.clear_cache()
    return

Why is clearing cache when temp=0? This does not make sense to me. Maybe when humidity below 0, but not temperature.
I'm right?

you're right, should be removed.


lookup type incorrectly becomes intersection type

TypeScript Version:  3.5.1, 3.6.3, 3.7.2

works as expected in TypeScript 3.3.3

Search Terms:
lookup type, intersection
Code
const codeToErrorMessage = {
    CODE_1: ({ internalError }: { internalError: Error }) =>
        `internal error: ${internalError} ${internalError.stack}`,
    CODE_2: ({ rc }: { rc: number }) =>
        `bad return code ${rc}.`,
};

export function errMessage<
    K extends keyof typeof codeToErrorMessage,
    F extends typeof codeToErrorMessage[K],
>(k: K, arg: ParamType<F>): string {
    const func = codeToErrorMessage[k];
    const str = func(arg);
    return str;
}

type ParamType<T> = T extends (arg: infer Arg) => any ? Arg : any;

Expected behavior:
no type errors
Actual behavior:
error on this line in TS versions 3.5.1, 3.6.3, 3.7.2.

Version 3.3.3 is the latest version I could find that has no type errors with this code

const str = func(arg);  // Error here is unexpected

Argument of type 'ParamType<F>' is not assignable to parameter of type '{ internalError: Error; } & { rc: number; }'.
  Type 'unknown' is not assignable to type '{ internalError: Error; } & { rc: number; }'.
    Type 'unknown' is not assignable to type '{ internalError: Error; }'.
      Type 'ParamType<{ CODE_1: ({ internalError }: { internalError: Error; }) => string; CODE_2: ({ rc }: { rc: number; }) => string; }[K]>' is not assignable to type '{ internalError: Error; } & { rc: number; }'.
        Type 'unknown' is not assignable to type '{ internalError: Error; } & { rc: number; }'.
          Type 'unknown' is not assignable to type '{ internalError: Error; }'.
            Type '{ internalError: Error; } | { rc: number; }' is not assignable to type '{ internalError: Error; } & { rc: number; }'.
              Type '{ internalError: Error; }' is not assignable to type '{ internalError: Error; } & { rc: number; }'.
                Property 'rc' is missing in type '{ internalError: Error; }' but required in type '{ rc: number; }'.
                  Type 'ParamType<{ CODE_1: ({ internalError }: { internalError: Error; }) => string; CODE_2: ({ rc }: { rc: number; }) => string; }[K]>' is not assignable to type '{ internalError: Error; }'.
                    Type 'ParamType<F>' is not assignable to type '{ internalError: Error; }'.
                      Type 'unknown' is not assignable to type '{ internalError: Error; }'.
                        Type 'ParamType<{ CODE_1: ({ internalError }: { internalError: Error; }) => string; CODE_2: ({ rc }: { rc: number; }) => string; }[K]>' is not assignable to type '{ internalError: Error; }'.
                          Type 'unknown' is not assignable to type '{ internalError: Error; }'.
                            Type '{ internalError: Error; } | { rc: number; }' is not assignable to type '{ internalError: Error; }'.
                              Property 'internalError' is missing in type '{ rc: number; }' but required in type '{ internalError: Error; }'.

The problem seems to be related to TS forming an intersection type of the parameter types for the functions in codeToErrorMessage rather than keeping them lookup-able.
Playground Links:
Error in v3.7.2
Expected behavior in v.3.3.3
Related Issues:
I could not find a related issue

Most likely a result of #30769.

ParamType<F> was never working, but in older versions the default type for an inference was any which allowed this to type-check. Now the default parameter is unknown which causes this to break. You can see the behavior here:
export function errMessage<
    K extends keyof typeof codeToErrorMessage,
    F extends typeof codeToErrorMessage[K],
    >(k: K, arg: ParamType<F>) {

    // `any` is not assignable to `never` in 3.3
    // `unknown` is not assignable to `never` in 3.5+
    const x: never = arg;

    // ok in 3.3
    // error in 3.5+
    const bad: "nonsense" = arg;
}

@jack-williams thanks for taking a look, and for the explanation! I see what you mean about the sneaky any.
However, isn't the code in the original post correct? In the example, Args is dependent on K.
I see two possible answers here:

the code is "correct" but the type system isn't smart enough to see it yet. In which case this issue could become a bug report or feature request.
OR the code is unsound in a way I'm not seeing, in which case I should close the issue

A little from both.
The code is unsound as shown below:
// no error but will call a function expecting { internalError: Error }
errMessage("CODE_1" as keyof typeof codeToErrorMessage, { rc: 3 });

This unsoundness can be remedied by changing the definition of ParamType to not distribute over the union of functions, meaning you correctly get an intersection type at the call-site.
type ParamType<T> = [T] extends [(arg: infer Arg) => any] ? Arg : any;

But there is a fundamental issue in implementing this function, which is that generic constraints are ignored by conditional types, so ParamType<F> is always going to remain unresolved in the body of the function. TypeScript just isn't smart enough here, but there are good reasons for the current limitation.

Thanks! Sounds like my issue was related to known limitations in TypeScript's already-super-smart checker. Closing


HDDS-6021: EC: Client side exclude nodes list should expire after certain time period or based on the list size.

What changes were proposed in this pull request?
Introduced a daemon in exclude list class to expire the nodes after certain time period. That time could be generally node expiry time.
What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-6021
How was this patch tested?
Added test and I will be adding few more tests.

Thanks for the changes on this - the code looks good now, I but I think we need to switch the map to a concurrent hash map - could you have a think about that please?

Thanks @sodonnel , currently adding nodes would not happen concurrently (And also ExcludeList is not shared between KeyOutPutStreams, its per KeyOutPutStream). We do invoke addDns methods in handleStripeFailure checks, that will happen only after stripe write. In non EC flow, anyway we are not using this currently.
But for safety and defensive programming, it may be a good idea to change that to ConcurrentHMap.


Issue with applying template to downloads folder Template

Whenever i customize the downloads folder template it either gets the global or general items view or it applies what i set in the downloads folder template to folders with a general items folder template. I think this happens because the downloads folder is not in it's default folder since i moved it to c drive
I want to either be able to make it work properly or at least make winsetview reset it to the general items folder template every time i submit a change to any other template. Unchecking the downloads box in winsetview does not work.

Your moved Downloads folder is probably not folder type Downloads. It's type may be General or may follows it's contents.
I'll run some tests with a relocated Downloads folder when I'm back at my PC.
Is that folder located on a disk of type "local disk" or "USB drive" or "Network"? Is it formatted NTFS? Are you using the Windows 10 or Windows 11 Explorer?

When i open the properties i see that it’s optimized for general item but that would also happen even if i didn’t move the folder, no? I relocated the downloads folder from the default location in user folder under c: drive (SSD) where i installed windows to the d: drive (HDD) it’s not a usb drive or network. I am using file explorer windows 11 23H2. What is formatted NTFS?

Explorer always says the Download folder is type "General items" but that's a bug. The folder type is actually "Downloads". It shouldn't even show the Customize tab at all. For example, if you right click the Contacts folder (that's inside your user folder) it will not have a Customize button because it's a special folder type. The Downloads folder used to be just another folder of type "General items". When Microsoft changed its type to "Downloads" they forgot a few things like ensuring that the Customize tab is not shown. You should see that attempting to change the Downloads folder to a different folder type, such as Pictures, does not work.
I just did a test where I used the folder's Location tab to change my Downloads folder location to F:\Downloads. That folder picked up the view I set in WinSetView for Downloads, so I know it's type Downloads.
What procedure did you use to relocate your Downloads folder?
BTW, a disk can be formatted in different ways, such as NTFS, FAT32, ExFAT, etc. Chances are, your D: drive is formatted NTFS and is type "local disk". Verify that by opening the properties for the drive. You should see something like this:

If your D drive is anything other than type Local Disk and format NTFS, then that will make a difference to how things work.
So, currently, if you set the view you want for Downloads using WinSetView, and click Submit, you're not getting that view in your D:\Downloads folder. Is that correct?

it's a local disk NTFS. I just tested changing the folder template to music and it worked. I think i now remember that i might have created another folder under d drive, called it downloads and gave it the icon because i had issues with moving it from c drive. I tried looking for the real downloads folder right now and i found 3 under "C:\Users\Public\Downloads" "C:\Users\Default\Downloads" "C:\Users\Administrator\Downloads" but they all act the same as the one in d drive. I can change folder template and when i submit changes in winsetview they don't apply. Is there a way to associate the folder in d drive with the downloads folder template using registry maybe?

I have created a folder under C:\Users(myUsername)\ called Downloads and the settings i set in winsetview now apply. When go into properties and try to move the folder to d drive i get an error: The folder can't be moved here

Dragging the folder from c to d drive makes the folder like any other folder. And i don't want to keep the downloads folder in c drive because it will make moving files to my d drive (where i store almost all my files) slow

Ok finally fixed. I've used this article "https://www.winhelponline.com/blog/windows-10-shell-folders-paths-defaults-restore/ " to determine the registry key of the downloads shell folder and then changing the location in this value -> {374DE290-123F-4565-9164-39C4925E467B} under HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders from %USERPROFILE%\Downloads to D:\Users\Downloads
After I restarted, the folder now acts normally and uses the template that is set in winsetview.

Sorry I couldn't get back to you sooner. Glad to hear you got it sorted, but please note that all you had to do is use the Location tab in the Downloads Properties dialog to change its location. That will set the registry entries for you, refresh Explorer, and will give you the option to move the files for you to the new location.

The d drive version of the downloads folder was actually in d\users\downloads all along. I got the error anyway.


Update README.md about apt-cyg needed iconv

Changed in MR #75
I noticed a difference from the previous documentation during a new installation.

Thanks.
I would like to consider re-construct initial configurations.


docs: vite.js deployment with stormkit

Description
This pull request aims to enhance the Vite.js documentation with a dedicated section on deploying static sites using Stormkit.
Additional context
We provided a link to a template repository pre-configured to support features like server-side rendering, static page generation, single-page application hosting, and API provision. Note that this link can be omitted if deemed necessary.
What is the purpose of this pull request?

[ ] Bug fix
[ ] New Feature
[x] Documentation update
[ ] Other

Before submitting the PR, please make sure you do the following

[x] Read the Contributing Guidelines.
[x] Read the Pull Request Guidelines and follow the PR Title Convention.
[x] Check that there isn't already a PR that solves the problem the same way to avoid creating a duplicate.
[x] Provide a description in this PR that addresses what the PR is solving, or reference the issue that it solves (e.g. fixes #123).
[x] Ideally, include relevant tests that fail without this PR but pass with it.

Thanks for the PR @eldemcan. We're currently only adding services that have a free tier to this page. IIUC, Stormkit only has a free trial for 15 days, is that the case? For reference, we removed Heroku for this reason (see https://github.com/vitejs/vite/pull/10155)

Thanks again for understanding. And I think a good way to share the template project is through the social accounts, blogs, etc of stormkit


feat: new definitions for memory separation

New Memory Model
The new memory model is different from the old one in two ways:

It uses (base pointer, length) to keep track of memory regions instead of closed inntervals of [pointer 1, pointer 2].
To faciliatate the new representation, it bakes in the assumption that the memory region is legal
(i.e. no wraparound).
More softly, it tries to keep reasoning in terms of Nat rather than BitVec in order to allow easier
automation via omega for proving disjointedness / subset assumptions.
All of the new definitions are named after the old definitions with a prime (') after their name.
For robustness (and confidence), we plan to prove theorems that establish the equivalence of the old and new memory models.

@shigoel All comments addressed, PR good for merge IMO!

@shigoel comments addressed!


Output pdb file

What can I do if I want to input protein sequences and output pdb files based on your code?

A sample code for this situation will be added later today

Thanks a million.

Provided an example in the last commit! check it out in train_end2end.py --> the whole training code needs a brush, which will be done soon, but the example should be easy to follow


Commiting Changes - Issue#676

Hi @christianp,
I am raising this pull request for the changes required for issue #676. Please let me know if any thing is required from my side. Thanks in advance!
Regards,
Maheshwaran D

Thank you very much for this. It looks like you've understood how the code works very well.
I'm not too keen on just using a string search to check for explore mode, though. If you don't mind, I'm going to leave this until we start caching feature use in the database, and then you could check against that.

Hi @christianp , Sure. I am happy to make the changes during the caching feature use in the database. Thank you!!


Correct minor typo in extract action input

Fixes minor typo in action.yml extract input.

@philostler Thanks for spotting that :)


v4.24.1p6

Coverage decreased (-0.004%) to 95.706% when pulling d218ac909b7a90a9da4fda792f0c911d630764ea on v4241p6 into 893753fe92e00e4657958fbb9c772df3abf1c8fb on master.

Coverage decreased (-0.004%) to 95.706% when pulling d218ac909b7a90a9da4fda792f0c911d630764ea on v4241p6 into 893753fe92e00e4657958fbb9c772df3abf1c8fb on master.


⚠ Thumbnails API Endpoint has degraded performance

In e8e2e64, Thumbnails API Endpoint (https://thumbnails.roblox.com/v1/assets?assetIds=82738847&format=Png&isCircular=false&size=30x30) experienced degraded performance:

HTTP code: 200
Response time: 4996 ms

Resolved: Thumbnails API Endpoint performance has improved in bad52bf after 4 minutes.


WebP pass-through if bad encoding

I ran into a situation where the image is webp even though it is .jpg extension but it says error in log
error transforming image: webp: non-Alpha VP8X is not implemented
It still loads the image fine in chrome but firefox, safari, and ios app won't load if it goes through the imageproxy.  If you load the url without imageproxy then it works fine it will render the image in safari.   Shouldn't the image just pass-through the code basically the unchanged if webp and error decoding it?  But seems something changes after going through the imageproxy... Any ideas?
This is the image in question:
https://assets13.modaoperandi.com/images/products/643353/239580/large_innika-choo-plaid-two-tier-scalloped-skirt-top.jpg

In case this helps others I was able to work around this in our fork by setting the user agent on origin requests to a version of a browser that doesn't support webp. The majority of sites stop serving it to you then. In our case we're using:
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:64.0) Gecko/20100101 Firefox/64.0

A cleaner approach is probably setting the Accept header to content types it is known the imageproxy supports but I haven't tested that.

We now have support for:

setting custom user agent (3444fd9cb)
sending proper accept header in requests (6aca1e0)
detecting content-type when not set in response header (cf54b2c)

Between these, I think this now properly handles the proxied request for https://assets13.modaoperandi.com/images/products/643353/239580/large_innika-choo-plaid-two-tier-scalloped-skirt-top.jpg in all the various forms I could come up with.  I'll close this as fixed, but if you still see any problems related to this issue, please let me know.

If it helps anyone I used https://github.com/chai2010/webp library to handle webp transformation:
case "webp":
		// use webp library to encode
		quality := opt.Quality
		if quality == 0 || quality > 100 {
			quality = defaultQuality
		}
		m = transformImage(m, opt)
		err = webp.Encode(buf, m, &webp.Options{Quality: float32(quality)})
		if err != nil {
			return nil, err
		}

This still requires through testing though across different platforms/mobile devices.


Better support of Live streams

Been trying to get Pluto TV, Samsung TV Plus, etc. working in Cabernet. They work but none of them quite as well as Matt Huisman's Kodi plugins.

The reason for this is that they are switching the stream for the commercial, injecting a new video/stream of the commercial in the stream.
Note that for streaming live TV from the Internet there are still issues that need to worked out to support every stream. Specifically full complete support of RFC-7933 and RFC-8216. Full support of these RFC is missing from ffmpeg.
Dolby AC-4 and MPEG-H 3D Audio support is missing from ffmpeg in order to be able to record and play back ATSC 3.0 over the air 4K broadcasts as well.
Add #EXT-X-DISCONTINUITY support to ffmpeg for IPTV streams such as Stirr and Pluto is the problem. It's part of the RFCs that ffmpeg isn't supporting properly.
https://github.com/jellyfin/jellyfin-ffmpeg/issues/57
In order to fix things you might want to look at this Python code which is a proxy to deal with more RFC stuff that ffmpeg doesn't currently support properly.
Python m3u8 Parser for HTTP Live Streaming (HLS) Transmissions
https://github.com/globocom/m3u8
https://github.com/globocom/m3u8#supported-tags

I thought maybe you could look at including this kind of proxy to add support for:
Supported tags

#EXT-X-TARGETDURATION
#EXT-X-MEDIA-SEQUENCE
#EXT-X-DISCONTINUITY-SEQUENCE
#EXT-X-PROGRAM-DATE-TIME
#EXT-X-MEDIA
#EXT-X-PLAYLIST-TYPE
#EXT-X-KEY
#EXT-X-STREAM-INF
#EXT-X-VERSION
#EXT-X-ALLOW-CACHE
#EXT-X-ENDLIST
#EXTINF
#EXT-X-I-FRAMES-ONLY
#EXT-X-BITRATE
#EXT-X-BYTERANGE
#EXT-X-I-FRAME-STREAM-INF
#EXT-X-DISCONTINUITY
#EXT-X-CUE-OUT
#EXT-X-CUE-OUT-CONT
#EXT-X-CUE-IN
#EXT-X-CUE-SPAN
#EXT-OATCLS-SCTE35
#EXT-X-INDEPENDENT-SEGMENTS
#EXT-X-MAP
#EXT-X-START
#EXT-X-SERVER-CONTROL
#EXT-X-PART-INF
#EXT-X-PART
#EXT-X-RENDITION-REPORT
#EXT-X-SKIP
#EXT-X-SESSION-DATA
#EXT-X-PRELOAD-HINT
#EXT-X-SESSION-KEY
#EXT-X-DATERANGE
#EXT-X-GAP
#EXT-X-CONTENT-STEERING


Links to Glossary pages often omit a leading space

There are 930 pages with links to the glossary. Many of those links are missing a leading space before the link.
For example
Properties Window Command (View Menu)

Displays the  Properties window, which lists the design-time properties for a selectedform, control, class, project ormodule.

Notice the missing spaces before form and module, but not before control, class and project
And in this example
Interface not valid for Implements

The interface contains some element that can't be supported by Visual Basic. For example, Visual Basic has no equivalent to the unsigned long integer type, Visual Basic can't designate a procedureparameter as "out-only." Although Visual Basic supports the use of the underscore character (_) in Visual Basicidentifiers, it can't implement an interface that uses underscore characters in the names of its members.

Notice the missing space before parameter and identifiers, but not before procedure

ThunderFrame, Thank you for bringing this issue up. We have been aware of this spacing issue and are working to resolve it in as many topics as we can.


Fixed #34345 - Added Command that adds Multiple Cursors To End of File/Top of File

This PR addresses this issue: https://github.com/Microsoft/vscode/issues/34345.
When using ALT + SHIFT + N it will now add multiple cursors till it reaches the bottom of the cursor.
Example:

In addition, it's possible to do ALT + SHIFT + Q to add multiple cursors till the top of the cursor.
Example:

Any feedback or suggestions would be welcome.

Thank you!


Pause/Resume function

While running the sample available here I have encountered some issues regarding the Pause/Resume functionality. First of all, in the documentation it is stated that if a transfer is interrupted by network connectivity loss, upon reconnection the transfer will be automatically resumed. However, this is not the case, as the transfer enters FAILED state when connectivity is lost, and doesn't resume automatically. Second, I have tried uploading a large file (~27 MB), paused the transfer at 18 MB, but when I have pressed the Resume button, the transfer was restarted from the beginning. Only if paused near the end (more than 22MB) does the transfer resume from around 7MB. Before the upload began, I saw the following line in the logs:
03-31 16:44:35.800 32183-424/com.amazonaws.demo.s3transferutility D/UploadTask: multipart upload 98 in 6 parts.
So I would have expected that, for example, if I pause the transfer after 10MB were uploaded, the transfer would be resumed from 8MB.
How can I properly set up a multipart transfer using the TransferUtility and what are the limitations regarding minimum file size and part size?

Two questions here:

Why does TransferUtility not resume on network loss? The way TransferUtility detects network is via broadcast receiver. If TransferUtility is informed by the system about network status change, it'll pause current transfers and will resume when the network comes back. However there are cases where the system isn't aware of a network connectivity issue and doesn't notify TransferUtility. One example is that your phone is on Wifi via a router, but the router loses LAN connection.
Why does TransferUtility not resume at where it was? This is due to the limitation of S3. The minimum part size in multipart upload is 5mb. A part has to be fully uploaded or it'll be discarded. Say you upload a 30mb file, in 6 parts, and 2-4 uploads (based on # of cores) will occur in parallel. If one is done, and three others are at 4mb, you will see transfer progress at 5 + 4*3 = 17. If you pause it, the three incomplete parts will be discarded and the transfer will be resumed at 5mb.


Add support for openSUSE

Going to try Tumbleweed as a rolling distro so got Ansible setup working in a VM first. Had a slight issue with GNOME (vulkan library missing) but after that everything seems fine. Leap is having an issue finishing the script due to Evolution but not as interested in a stable release distro so leaving it incomplete for now.

Github is now showing that the request can be merged... thank you!!


[Bug]: onFilterUpdate in Multi select widget is triggered on changing the page and coming back

Is there an existing issue for this?

[X] I have searched the existing issues

Description

Steps To Reproduce

Add Multi select widget onto canvas
Enable Server Side Filtering
configure {{showAlert(MultiSelect1.filterText)}} in onFillterUpdate to view the notification
Add more pages in a application
Now change the page to view the blank black alert message in which multiselect widget is present

Public Sample App
No response
Version
cloud/Production

Stats

Stat
Values

Reach
5

Effort (months)
0.5

Stats

Stat
Values

Reach
15

Effort (months)
0.5