POL-313 Check if payload.data is undefined

Extends the optional chaining to the data field, if anything in the chain is undefined, return undefined (this is true when we are fetching the data)

Codecov Report

Merging #173 into master will not change coverage.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##           master     #173   +/-   ##
=======================================
  Coverage   91.42%   91.42%
=======================================
  Files         149      149
  Lines        2869     2869
  Branches      495      495
=======================================
  Hits         2623     2623
  Misses        244      244
  Partials        2        2

Impacted Files
Coverage Δ

src/pages/PolicyDetail/PolicyDetail.tsx
100.00% <100.00%> (ø)


BREAKING CHANGE: Add Scope option (continuation of #11)

@kwirkykat I somehow had deleted the repo from GitHub #11 was based on. I have forked it again deleted the DSCResource.Tests as you asked and push my branch again. Thanks fo reviewing and accepting the change,
This PR builds on the work (#9) of @HansOMartinsen (who seems to be MIA) and added the changes suggested by reviewer @BerheAbrha.
This fixes #8.

This change is

@kwirkykat do you need anything from me to get this merged?

@kwirkykat I have updated the README.


Support: hiding the modules' Name and description so it does not show on the screen.

Hello,
As in the subject, is it possible to hide the module's name and description so it does not show on the screen?
Thanks.
-Mario

Yes. Check the docs.

Just leave out the header field in the config file.
https://github.com/MichMich/MagicMirror#configuration


SAP HANA Cloud Vector Engine Support

Recently SAP HANA has added support for Vector datatypes (See e.g. https://www.sap.com/events/teched/news-guide/ai.html#article8)
This is already supported in Langchain Python
Supporting this in LangchainGo shouldn't be too hard, but requires adding a dependency on the database driver for HANA: SAP/go-hdb
Would this be okay to add?

Recently SAP HANA has added support for Vector datatypes (See e.g. https://www.sap.com/events/teched/news-guide/ai.html#article8)
This is already supported in Langchain Python
Supporting this in LangchainGo shouldn't be too hard, but requires adding a dependency on the database driver for HANA: SAP/go-hdb
Would this be okay to add?

I think that could add, because some vectorstores  has dependency too


Schema query not working with .getJson()

I was just writing some tests, and I wanted to verify the schema state before running a function. So I constructed a schema query. I got the query to work, however res.getJson() does not extract the results from the response as I expected.
The results do seem to be present on the return object, and I worked out I could use res.toObject().schemaList to get them.
      const query = `
                schema {
                    type
                    index
                    reverse
                    tokenizer
                }
        ` ;
        const res = await dgraphClient.newTxn().query(query);
        const json = res.getJson() // returns and empty object
        const object = res.toObject().schemaList; // returns schema like ratel

I am not sure what is expected here. This functionality is not documented, so I just wanted to flag it with you. I feel it would be worthwhile to document it, or if it's a bug fix it so .getJson() works.
If it's just a super special query maybe you can create:
dgraphClient.newTxn().getSchema()

Look at this issue #20

Ok thanks.


Hash Conflicts are More Frequent than Expected

This issue is related to the hash function used in src/ila/hash_ast.cc
The test is provide in this pull request (but I don't expect you to merge it, because the test will most likely fail).
In the test constructed, in each round there are

512x ITE nodes
512x EQ nodes
1x BitVectorVar node
1024x BvConst nodes

The BvConst nodes are the same for each round, so they should not result in different
hashes, and will be replaced by the same BvConst node as the first round.
So in the i-th round, there will be 1025*i + 1024 AST nodes (assuming i starts from 0)
So in 10000 rounds, there will be around 10^7 AST nodes.
According to table here, the collision probability for a 64-bit hash with 1.9x10^7 hash values is 10^-5. However, I was never able to finish this test without errors (you can also try it yourself). If it is not a hash-function design problem, I think we should go to buy lottery.

Address in ca55d46f51e6ec43d7e110f3032b6798c27d4c06


Ugc1hc/feat/threading feature

*Fixed issues:
https://github.com/test-fullautomation/robotframework/issues/48
https://github.com/test-fullautomation/robotframework/issues/45
https://github.com/test-fullautomation/robotframework/issues/43
https://github.com/test-fullautomation/robotframework/issues/42
https://github.com/test-fullautomation/robotframework/issues/41
https://github.com/test-fullautomation/robotframework/issues/50
https://github.com/test-fullautomation/robotframework/issues/46
https://github.com/test-fullautomation/robotframework/issues/49

Hello Holger,
I'd like to answer your questions regarding to threading document:

The THREAD works as a keyword like FOR, WHILE or TRY, you can call it in a testcase or put it in a User Defined keyword.
The THREAD start as soon as it call, it mean after the line 'THREAD    ${ThreadName}    ${IsDaemon}'
Different threads has different variables scopes.
I don't want to restrict users from naming threads with duplicate names, even though it's generally not advisable due to the potential for overlapping log files and receiving notifications from other threads, leading to strange behaviors. I prefer to give users more freedom and hold them more accountable for the scripts they write. In certain situations, this flexibility could serve their specific purposes. For example, they might want to send notifications to two specific threads instead of broadcasting to all or just one. Therefore, allowing duplicate thread names could be beneficial in these unique scenarios, despite the inherent risks.
It's case sensitive

Thanks,
Cuong

Hi Holger,
I agree to Cuong's answer.
Thank you,
Thomas


Add Style and Alignment

Issue No: - #5
Alignment of the content need to be improvement
Which is resolve, Kindly have a look at and make a hacktoberfest accept.
PFA,

Thanks

Thanks for your valuable contribution.
Don't forget to star the repo.

Sure, and also add hactoberfest accept badge label

done


Jump'n'Bump sources

seem to be missing

I will try to import the cvs from icculus.org and if that doesn't work, contact icculus and if that doesn't work ask on reddit or freegamedev.

The cvs as mentioned on the website of jumpnbump is long gone. But there is a git at
git://git.icculus.org/crow/jumpnbump.git
Just need to clone it.


Nomination of @pkwiatkowski1 as a maintainer

@pkwiatkowski1 is an active contributor to bomctl and while don't have a documented "contributor ladder" he has demonstrated a background in subject and understanding of the codebase.
I'd like to nomination @pkwiatkowski1 to become a maintainer on this project.

Past PRs

@eddiezane, @ashearin, and @jhoward-lm the current maintainers, do you have concerns with the addition of @pkwiatkowski1 as a new maintainer on this project?

None at all!

No objections. Fully in support.

No objections! Thank you for the contributions!


Add test for Speech to Text Customization

Some users have reported issues with the Speech to Text customization feature. We should run some tests to double-check whether it's working or silently failing.

We've been able to successfully use a customized Speech to Text instance in several applications and tests. So as far as we can tell, everything is working okay here. I'm going to rename this issue to emphasize that we should still add a test to the SDK that uses a customization ID.

Complete with #529.


[Opinion] All-true-ation * is hard to read

The explanation in All-true-ation *

all([[]]) returns False because not [] is True is equivalent to not False as the list inside the iterable is empty.

Feels like verbal diarrhoea to me. Perhaps something like:

all([[]]) returns False because its single element, [], is an empty list, which is falsy in python.

The second point is also a bit hard to follow; the use of not is difficult to understand on a first pass. I would suggest:

all([[[]]]) and higher recursive variants are always True since the inner array, [[...]], has one element, and lists with values are truthy.

I am willing to make a PR for these changes. Just let me know.

I think you're right, it's confusing to follow now that I think about it, would appreciate the PR if you have time :)
Thanks @chrismilson


Update README.md

Codecov Report

Merging #36 into ci will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##                ci       #36   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            1         1
  Lines            3         3
=========================================
  Hits             3         3

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 43110ba...00cffcb. Read the comment docs.

test

Codecov Report

Merging #36 into ci will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##                ci       #36   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            1         1
  Lines            3         3
=========================================
  Hits             3         3

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 56512fe...446fcaf. Read the comment docs.


New version: nkdAgility.AzureDevOpsMigrationTools.Preview version 16.0.3-Preview.2

Checklist for Pull Requests

[ ] Have you signed the Contributor License Agreement?
[ ] Is there a linked Issue?

Manifests

[ ] Have you checked that there aren't other open pull requests for the same manifest update/change?
[ ] This PR only modifies one (1) manifest
[ ] Have you validated your manifest locally with winget validate --manifest <path>?
[ ] Have you tested your manifest locally with winget install --manifest <path>?
[ ] Does your manifest conform to the 1.6 schema?

Note: <path> is the directory's name containing the manifest you're submitting.

Microsoft Reviewers: Open in CodeFlow

Automatic Validation ended with:

Installation failed with exit code -1978335187
2024-09-13 07:50:22.571 [FAIL] Installer failed security check. Url: https://github.com/nkdAgility/azure-devops-migration-tools/releases/download/v16.0.3-Preview.2/MigrationTools-16.0.3-Preview.2.zip Result: 0x80004005
MSI (s) (E4:44) [07:47:19:314]: PROPERTY CHANGE: Adding OutOfDiskSpace property. Its value is '0'.
MSI (s) (E4:44) [07:47:19:314]: PROPERTY CHANGE: Adding OutOfNoRbDiskSpace property. Its value is '0'.
MSI (s) (E4:44) [07:47:19:314]: PROPERTY CHANGE: Adding PrimaryVolumeSpaceAvailable property. Its value is '0'.
MSI (s) (E4:44) [07:47:19:314]: PROPERTY CHANGE: Adding PrimaryVolumeSpaceRequired property. Its value is '0'.
MSI (s) (E4:44) [07:47:19:314]: PROPERTY CHANGE: Adding PrimaryVolumeSpaceRemaining property. Its value is '0'.
MSI (s) (E4:44) [07:47:20:845]: Executing op: ComponentRegister(ComponentId={3DECCF90-5544-52BD-9D49-7B231B0A055B},KeyPath=2285\SOFTWARE\Microsoft\Windows\Windows Error Reporting\RuntimeExceptionHelperModules\C:\Program Files\dotnet\shared\Microsoft.NETCore.App\8.0.8\mscordaccore.dll,State=3,,Disk=1,SharedDllRefCount=0,BinaryType=1)
MSI (s) (E4:44) [07:47:22:595]: Executing op: RegOpenKey(Root=-2147483646,Key=SOFTWARE\Microsoft\Windows\Windows Error Reporting\RuntimeExceptionHelperModules,,BinaryType=1,,)
Property(S): ErrorDialog = ErrorDlg
Property(S): OutOfDiskSpace = 0
Property(S): OutOfNoRbDiskSpace = 0
Property(S): PrimaryVolumeSpaceAvailable = 0
Property(S): PrimaryVolumeSpaceRequired = 0
Property(S): PrimaryVolumeSpaceRemaining = 0
MSI (s) (E4:20) [07:47:27:251]: PROPERTY CHANGE: Adding OutOfDiskSpace property. Its value is '0'.
MSI (s) (E4:20) [07:47:27:251]: PROPERTY CHANGE: Adding OutOfNoRbDiskSpace property. Its value is '0'.
MSI (s) (E4:20) [07:47:27:251]: PROPERTY CHANGE: Adding PrimaryVolumeSpaceAvailable property. Its value is '0'.
MSI (s) (E4:20) [07:47:27:251]: PROPERTY CHANGE: Adding PrimaryVolumeSpaceRequired property. Its value is '0'.
MSI (s) (E4:20) [07:47:27:251]: PROPERTY CHANGE: Adding PrimaryVolumeSpaceRemaining property. Its value is '0'.
MSI (s) (E4:AC) [07:47:31:970]: PROPERTY CHANGE: Adding OutOfDiskSpace property. Its value is '0'.
MSI (s) (E4:AC) [07:47:31:970]: PROPERTY CHANGE: Adding OutOfNoRbDiskSpace property. Its value is '0'.
MSI (s) (E4:AC) [07:47:31:970]: PROPERTY CHANGE: Adding PrimaryVolumeSpaceAvailable property. Its value is '0'.
MSI (s) (E4:AC) [07:47:31:970]: PROPERTY CHANGE: Adding PrimaryVolumeSpaceRequired property. Its value is '0'.
MSI (s) (E4:AC) [07:47:31:970]: PROPERTY CHANGE: Adding PrimaryVolumeSpaceRemaining property. Its value is '0'.
MSI (s) (E4:C8) [07:47:33:767]: PROPERTY CHANGE: Adding OutOfDiskSpace property. Its value is '0'.
MSI (s) (E4:C8) [07:47:33:767]: PROPERTY CHANGE: Adding OutOfNoRbDiskSpace property. Its value is '0'.
MSI (s) (E4:C8) [07:47:33:767]: PROPERTY CHANGE: Adding PrimaryVolumeSpaceAvailable property. Its value is '0'.
MSI (s) (E4:C8) [07:47:33:767]: PROPERTY CHANGE: Adding PrimaryVolumeSpaceRequired property. Its value is '0'.
MSI (s) (E4:C8) [07:47:33:767]: PROPERTY CHANGE: Adding PrimaryVolumeSpaceRemaining property. Its value is '0'.

Automated error analysis suggests -1978335187 may mean Installer failed security check. Another script should retry this every 18 hours.
Automated error analysis suggests 80004005 may mean Resource missing
(Automated response - build 895.)

Error message reads like the agent ran out of disco space.

@wingetbot run


Fix printing not found image and tabulation

This fixes printing the name of an image when it is not found (eg user forgot to run create-image).
I changed the mix of tabs/spaces to space only which is responsible for the somewhat messy diff.

Hi,
I actually like seeing the full path name in this message, as then I can cut'n'paste the directory name when I start poking further.
You have a different opinion?

I do copy/paste the relative paths without issues, not sure what's your problem. But I would not mind removing the code that removes the path prefix. The main problem was that it was not printing anything before, because it was using a variable FILE instead of FILE_NAME. Everything else is "noise".

Ah, I see now. The actual change was lost in the noise of the other lines changing. I'm fine with this kind of name stripping. I'm bringing this change in along with the same update to jlink script.

This was merged but not automatically closed.


Add config-keys to set minimum rules for cuts and segments duration

The editor WoH that applies the Opencast Built-in editor has some hidden configurations that are not user reachable.
These configurations are:

Minimum segment duration: If a segment has a lower duration as this parameter, it will be discarded.
Minimum Cut segment duration: If the cut between two segments is less than the threshold, it will be discarded.

The PR adds these two parameters to the etc/org.opencastproject.videoeditor.impl.VideoEditorServiceImpl.cfg file.
Ready for Review
It will keep as a draft because I need to fix this undesirable log message:
2023-10-06 15:07:15,981 | WARN  | (LoadUtil:95) - No hosts found that can process jobs of type segments.min.duration with load 100.0
2023-10-06 15:07:15,982 | WARN  | (LoadUtil:95) - No hosts found that can process jobs of type segments.min.cut.duration with load 100.0

That error is because I used the same method to read the properties as jobLoad variable. I will fix it soon.
Your pull request should…

[ ] have a concise title
[ ] close an accompanying issue if one exists
[ ] be against the correct branch
[ ] include migration scripts and documentation, if appropriate
[ ] pass automated tests
[ ] have a clean commit history
[ ] have proper commit messages (title and body) for all commits

Fine to me. Just want to get rid of the commented-out lines :)

@Arnei repeated commented code deleted, please merge as you wish 😄


Uncaught TypeError in home page: Cannot read property 'html' of undefined

There is an this error Uncaught TypeError in home page: Cannot read property 'html' of undefined on the home page of swyx.io and it stopped the rest of the code from working, including routing.
I tried to dig into the source code but I cannot see why it's happening.😂 It is probably coming from this line Maybe it is something related to how Svelte updates state?
Anyway, thanks for your posts and regular sharing on Twitter. Good luck with your talk at the jsconf!

oh dear, thank u, will look into it


nltk error

import nltk
nltk.download('Stopwords')
[nltk_data] Error loading Stopwords: <urlopen error [WinError 10054]
[nltk_data]     An existing connection was forcibly closed by the
[nltk_data]     remote host>

Try with lowercase stopwords and check that you can access  https://raw.githubusercontent.com/nltk/nltk_data/gh-pages/index.xml from your system.

@abhisri7635 Could we check whether you're still having the problem?

I have similar problem

import nltk
nltk.download('punkt')
[nltk_data] Error loading punkt: <urlopen error [WinError 10054] An
[nltk_data]     existing connection was forcibly closed by the remote
[nltk_data]     host>
False

I'm still facing this issue can anyone help me with this

@krishnaspeakz
Some users, particularly those who are using the "Jio" internet provider, have experienced this issue. They seemed to have been able to resolve it by connecting to mobile hotspot temporarily while downloading NLTK data, or by changing some DNS settings.
There's a bit more info here, perhaps it'll help: https://github.com/nltk/nltk/issues/3146


No funds on the wallet after migration with ledger nano s

Yesterday I have migrated my tokens to new firefly wallet with my ledger nano s and everything went well. but today I noticed information from firefly on the screen that something went wrong and there was an error and i need to contact iota.org. Then I checked my wallet and balance was zero.

Issue can be close see Discord message https://discord.com/channels/397872799483428865/398499876935303186/874351150583930990


Add bal help text for asyncapi command

Purpose

bal asyncapi command was missing when executing bal help and bal

Approach

Add asyncapi command to the help text

@HasithaAthukorala Do we need this PR? Looks like it got automatically closed without any attention. If you really don't need this PR anymore, please remove the stale label from the PR. Then it won't get added to the [Stale PR] Ballerina Stale PR Details mail in the future.

@HasithaAthukorala Do we need this PR? Looks like it got automatically closed without any attention. If you really don't need this PR anymore, please remove the stale label from the PR. Then it won't get added to the [Stale PR] Ballerina Stale PR Details mail in the future.

Sure, will check and remove, Thanks a lot for the suggestion

@HasithaAthukorala Do we need this PR? Looks like it got automatically closed without any attention. If you really don't need this PR anymore, please remove the stale label from the PR. Then it won't get added to the [Stale PR] Ballerina Stale PR Details mail in the future.

@anupama-pathirage This PR is not needed anymore. I have no permission to remove the stale label. Could you please remove the label? Thanks in advance.

@HasithaAthukorala - Removed the stale label.


DBZ-6603 Support for custom tags in the connector metrics

https://issues.redhat.com/browse/DBZ-6603

@harveyyue can you please check if the test failure is related to your changes? Thanks.

@harveyyue can you please check if the test failure is related to your changes? Thanks.

Done.


m.2 ssd temp not coming up

As the subject states, my M.2 SSD temperature is not coming up.
Here are some screen shots
https://imgur.com/1o6GUk8
https://imgur.com/23q4EWt

I would bet that the assigned value in SMV is the wrong one. Did you check?

Hi @Shrekmachine you're correct, i was able to resolve this by checking the SMV values. Thanks for pointing that out! I thought it was odd because it had come up when i first setup my computer, but after I added a 2nd sata hd it went away.
Thanks again!


fix(workflow): compute branch name from pull_request number

Issue
Follow-up to https://github.com/awslabs/aws-sdk-js-codemod/pull/174
Description
Computer branch name from pull_request number
Testing
Will be done after PR is merged
Additional context
Docs: https://docs.github.com/developers/webhooks-and-events/webhooks/webhook-events-and-payloads?actionType=closed#pull_request

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Verified that action successfully deleted cache in workflow run https://github.com/awslabs/aws-sdk-js-codemod/actions/runs/3709390440/jobs/6287961022


Webhooks Microservice

This PR Creates an additional Microservice.
This came out of a need to since GitHub Sponsors Webhooks weren't correctly supported by Discord. So this Microservice instead receives GitHub Sponsor Webhooks and translates them to something compatible with Discord.
The authentication model is simple with more details in the Readme but ensures that the URL for our Discord Webhook is secure, as well as the webhook URL for the microservice is 'password' protected-ish.
This Microservice is already active as was necessary during development, and is accessible via https://webhooks.pulsar-edit.dev
The only currently accepted URL Slug is /github_sponors?token=<TOKEN>
Hopefully in the future we can expand it's usage if needed.

@autumnblazey Thanks a ton for the feedback, the issues you pointed out are resolved, and if they look good I'll push to prod once this is merged.

Tagged the new changes and pushed to prod. I'll go ahead and merge this one now, thanks again for the review


Change project members to active members & past members

@kmcnellis Hey Kiana! I was working on the feature-groupSemesters branch for this. I see that it's many commits behind. Is it okay to continue this project from the same branch, or should I start from scratch?
Or would it be better that I just scrap this project all together and start picking up some issues?


Refactored react FormFields to use react-bootstrap FormControl components

Also have done:

Addded CheckboxField, CheckboxSetField and OptionsetField (radio) fields
Refactored documentation for most components
Split CastStringToElement to a library, since it was so handy across multiple components

Current coverage is 70.22% (diff: 16.66%)

Merging #6120 into master will decrease coverage by <.01%

@@             master      #6120   diff @@
==========================================
  Files           416        416
  Lines         35711      35716     +5
  Methods        4688       4689     +1
  Messages          0          0
  Branches          0          0
==========================================
  Hits          25083      25083
- Misses        10628      10633     +5
  Partials          0          0

Powered by Codecov. Last update a08a854...f561005

Have you tested readOnly and disable states? For example, OptionSetField converts to a LookupField, which isn't implemented in JS yet (I think...). CheckboxField converts to CheckboxField_Readonly which is more of a LiteralField on the client - but needs special handling.

Yup, I had tested readonly and disabled states on the component itself rather than through a generated schema from SilverStripe.
My main reason is that since the react-bootstrap FormControls support readonly and disabled properties, where the equivalent HTML properties are not supported (e.g. readonly for checkboxes), it would make sense to utilise those if possible.
When I did try testing through a generated schema, I thought the readonly transformation was really weird when I was testing the transformations, e.g. OptionsetField (SingleSelect type) to LookupField (MultiSelect type) and causes some even more weird functions like this (although that function is still there for the casting to string reason mainly): https://github.com/silverstripe/silverstripe-framework/pull/6120/files#diff-a24423e2714380498612641b9adf1f0dR33

I had also thought about if someone had chosen to override the react-bootstrap formfield component with their own, they can also decide how to handle readonly through their own component rather than be dictated by the server-side schema.
Up for discussion I guess, maybe this does deserve its own story.

Regarding Form->performReadonlyTransformation(), that’s a bigger API change (not replacing field identity). I’ll agree that it’s bad, but will leave that alone for now - we need to get forms working as-is - which means implementing LookupField (https://github.com/silverstripe/silverstripe-framework/issues/6148). Not a blocker for this PR though.

Cool, we'll need to implement the majority of the other fields soon anyway :)


Fail on legitimate map

input was
$settings_icons : (
    user: url('assets/svg/user.svg'),
    check: url('assets/svg/check.svg'),
    );

Hmm, I've just check it on text in issue again, and now it works ! Maybe while copying some was stripped...

Aha, find it, I've edited the desription, the issue in last colon, without it all good, but it libsass parse it without clause...

And in that case parser goes to infinity loop
$settings_icons : (
user: url('assets/svg/user.svg'),
check: url('assets/svg/check.svg'),
//some: url('assets/1.jpg'));


how to install the 5.0.0 version?

I have a problem when installing the 5.0.0 version. I downloaded all the files, and used all the code in vic/drivers/classic/ as the source code, but could not progress. Are they the correct folder and files? Thanks.

@ching12 - please see the documentation on how to build/configure/run VIC. If you have further questions, please direct them to the vic users listserve


Problem with Install-Haskell.ps1

Description
When the script used to install Haskell runs, ghc 9.0.2 is installed correctly :

==> vhd: Provisioning with powershell script: C:\a\2\image-generation\images\win/scripts/Installers/Install-Haskell.ps1
vhd: Installing ghc 9.0.2...
vhd: Running [#1]: choco install ghc -y --version 9.0.2 -m
vhd: Chocolatey v1.2.0
vhd: Installing the same package with multiple versions is deprecated and will be removed in v2.0.0.
vhd: Installing the following packages:
vhd: ghc
vhd: By installing, you accept licenses for the packages.
vhd:
vhd: cabal v<IP_ADDRESS> [Approved]
vhd: cabal package files install completed. Performing other installation steps.
vhd: Downloading cabal 64 bit
vhd:   from 'https://downloads.haskell.org/cabal/cabal-install-<IP_ADDRESS>/cabal-install-<IP_ADDRESS>-x86_64-windows.zip'
vhd:
vhd: Download of cabal-install-<IP_ADDRESS>-x86_64-windows.zip (14.71 MB) completed.
vhd: Hashes match.
vhd: Extracting C:\Users\packer\AppData\Local\Temp\chocolatey\cabal\<IP_ADDRESS>\cabal-install-<IP_ADDRESS>-x86_64-windows.zip to C:\ProgramData\chocolatey\lib\cabal.<IP_ADDRESS>\tools\cabal-<IP_ADDRESS>...
vhd: C:\ProgramData\chocolatey\lib\cabal.<IP_ADDRESS>\tools\cabal-<IP_ADDRESS>
vhd: Standalone msys2 detected. Using default paths.
vhd: Could not read cabal configuration key 'install-method'.
vhd: Updated cabal configuration.
vhd: PATH environment variable does not have C:\Users\packer\AppData\Roaming\cabal\bin in it. Adding...
vhd: Standalone msys2 detected. Using default paths.
vhd: Adding C:\ProgramData\chocolatey\bin\mingw64-pkg.bat and pointing it to powershell command C:\ProgramData\chocolatey\lib\cabal.<IP_ADDRESS>\tools\mingw64-pkg.ps1
vhd: Environment Vars (like PATH) have changed. Close/reopen your shell to
vhd:  see the changes (or in powershell/cmd.exe just type refreshenv).
vhd:  ShimGen has successfully created a shim for cabal.exe
vhd:  The install of cabal was successful.
vhd:   Software installed to 'C:\ProgramData\chocolatey\lib\cabal.<IP_ADDRESS>\tools\cabal-<IP_ADDRESS>'

When the script installs ghc 9.2.5:

vhd: Installing ghc 9.2.5...
vhd: Running [#1]: choco install ghc -y --version 9.2.5 -m
vhd: Chocolatey v1.2.0
vhd: Installing the same package with multiple versions is deprecated and will be removed in v2.0.0.
vhd: Installing the following packages:
vhd: ghc
vhd: By installing, you accept licenses for the packages.
vhd:
vhd: ghc v9.2.5 [Approved]
vhd: ghc package files install completed. Performing other installation steps.
vhd: ERROR: Cannot bind argument to parameter 'Path' because it is null.
vhd: The install of ghc was NOT successful.
vhd: Error while running 'C:\ProgramData\chocolatey\lib\ghc.9.2.5\tools\chocolateyInstall.ps1'.
vhd:  See log for details.
vhd:
vhd: Chocolatey installed 0/1 packages. 1 packages failed.
vhd:  See the log for details (C:\ProgramData\chocolatey\logs\chocolatey.log).
vhd:
vhd: Failures
vhd:  - ghc (exited -1) - Error while running 'C:\ProgramData\chocolatey\lib\ghc.9.2.5\tools\chocolateyInstall.ps1'.
vhd:  See log for details.

Same when the script install ghc 9.4.3:

vhd: Installing ghc 9.4.3...
vhd: Running [#1]: choco install ghc -y --version 9.4.3 -m
vhd: Chocolatey v1.2.0
vhd: Installing the same package with multiple versions is deprecated and will be removed in v2.0.0.
vhd: Installing the following packages:
vhd: ghc
vhd: By installing, you accept licenses for the packages.
vhd:
vhd: ghc v9.4.3 - Possibly broken
vhd: ghc package files install completed. Performing other installation steps.
vhd: ERROR: Cannot bind argument to parameter 'Path' because it is null.
vhd: The install of ghc was NOT successful.
vhd: Error while running 'C:\ProgramData\chocolatey\lib\ghc.9.4.3\tools\chocolateyInstall.ps1'.
vhd:  See log for details.

Seems to be something related to the use of multiple versions by choco but I'm not sure...
Platforms affected

[X] Azure DevOps
[ ] GitHub Actions - Standard Runners
[ ] GitHub Actions - Larger Runners

Runner images affected

[ ] Ubuntu 18.04
[ ] Ubuntu 20.04
[ ] Ubuntu 22.04
[ ] macOS 10.15
[ ] macOS 11
[ ] macOS 12
[X] Windows Server 2019
[X] Windows Server 2022

Image version and build link
20221111.1
Is it regression?
Yes, last one working for us was 20221002.2
Expected behavior
When Haskell.Tests.ps1 is runned, no tests are failing.
Actual behavior
When Haskell.Tests.ps1 is runned, 2 tests are failing because when Haskell is installed, only 1 version is succeeding (9.0.2). Other two versions (9.2.5 and 9.4.3) return this error :
ERROR: Cannot bind argument to parameter 'Path' because it is null.
Also, 9.4.3 is possibly broken and is waiting for maintainer to take corrective action (see here)
Repro steps
Build with Packer 1.8.3

We're seeing the same issue.

we are seeing the same issue

Hey @simbo1984!
We'll take a look.

I think the best fix would be to change
$ODataQuery = '$filter=(Title eq ''ghc'') and (IsPrerelease eq false)&$orderby=Version desc'
to
$ODataQuery = '$filter=(Title eq ''ghc'') and (IsApproved eq true)&$orderby=Version desc'

Must be fixed. Please sync your main.

Hello,
We are still receiving this error, is there anything that we can do? Thanks

@bjamone please update your fork and try again. If error will happen again send error-logs.

Hello Erik, unfortunately we are using azure devops, I'm not sure what I should do.
We have Invoke-RestMethod "https://api.github.com/repos/actions/virtual-environments/releases" and git clone https://github.com/actions/virtual-environments.git

Hello Erik, unfortunately we are using azure devops, I'm not sure what I should do.
We use git clone https://github.com/actions/virtual-environments.git

Please take a look at guide. You use old version as I can figure out from your link.

Hello Erik,
Those old urls are pointing to the same pages, I changed them in our pipeline to be sure, will try again

Hello Erik,
I used the new urls, made the changes, but unfortunately get the same error message:
vhd: The install of ghc was NOT successful.

vhd: Error while running 'C:\ProgramData\chocolatey\lib\ghc.9.4.3\tools\chocolateyInstall.ps1'.

vhd:  See log for details.

vhd:
vhd: Chocolatey installed 0/1 packages. 1 packages failed.

vhd:  See the log for details (C:\ProgramData\chocolatey\logs\chocolatey.log).

vhd:

vhd: Failures

vhd:  - ghc (exited -1) - Error while running 'C:\ProgramData\chocolatey\lib\ghc.9.4.3\tools\chocolateyInstall.ps1'.


Support multiple LXD server

It should not only be possible to connect to one server, but to multiple servers at once.
Evaluate how much time it would be needed to implement this feature, either:

Access all servers at the same time
Switch servers (preferred, tab-local storage)

This would be awesome. I use a management LXD server which connects to 5 other LXD servers as remotes. So when I spin up containers or run commands I do so from the management server currently. With commands like...
lxc exec Server01:www-somesite-com bash - to gain access to the container root.
lxc remote list - to remember what my remote container VM IDs are :)


New layouts

Feature description
We need to add new layouts components to provide standards in application design and navigation
Describe the solution you'd like
No response
Describe alternatives you've considered
No response
Additional context and information
No response
Code of Conduct

[X] I've searched across open and closed issues for similiar requests

Definitely needed 🙌


Vue infinite loop detection should throw a real error in dev, not just log a warning to console

Vue version
3.2.45
Link to minimal reproduction
github repo
Steps to reproduce

pnpm dev, open chrome dev tool
click the button
pnpm dev && pnpm preview, click button again
compare both console log

What is expected?
both dev and prod mode should work in same way; or the code did not cause recursively update
What is actually happening?
in dev mode, recursive update will stop auto;
in prod mode, it just continue run
System Info
System:
    OS: Windows 10 10.0.22621
    CPU: (12) x64 Intel(R) Core(TM) i7-8700 CPU @ 3.20GHz
    Memory: 21.69 GB / 31.92 GB
  Binaries:
    Node: 16.17.1 - ~\AppData\Local\fnm_multishells\17284_1672413295400\node.EXE
    npm: 8.15.0 - ~\AppData\Local\fnm_multishells\17284_1672413295400\npm.CMD
  Browsers:
    Edge: Spartan (44.22621.963.0), Chromium (108.0.1462.54)
    Internet Explorer: 11.0.22621.1
  npmPackages:
    vue: ^3.2.45 => 3.2.45

Any additional comments?
sfc.vuejs.org even in PROD mode, it still use dev vue file so i upload a github repo.
the key code
watch(() => [state.value.deep], () => {
  state.value = { deep: false }
  // console.log('watch', ++count)
})

====
english is not my first lang, so i write a chinese version desc here too.
复现：

clone repo后，跑dev，尝试点击button
观察控制台输出
pnpm dev && pnpm preview, 再次点击button
再次观察控制台输出

期望：
dev与prod mode两边的行为一致，或者这段代码根本不会产生死循环更新
实际：
dev会在安全范围内停掉这个watch
prod则会跑到死

+++ watch(() => state.value.deep, () => {
--- watch(() => [state.value.deep], () => {

or check the new value and old value yourself
It will avoid recursive updates.

in dev mode, recursive update will stop auto; in prod mode, it just continue run

The behaviors of dev and prod are expected I guess since Vue emitted a warning when dev mode. The developers should fix this.

[Vue warn]: Maximum recursive updates exceeded. This means you have a reactive effect that is mutating its own dependencies and thus recursively triggering itself. Possible sources include component template, render function, updated hook or watcher source function.

+++ watch(() => state.value.deep, () => {
--- watch(() => [state.value.deep], () => {

or check the new value and old value yourself
It will avoid recursive updates.

i am not interested in how to fix this code; if i write the logic, data update will not appera in watch cb but in event cb.
i think it is important than a framework have same behavior in both mode, both stop the browser or both stop in max count

I think it is an intentionally optimized behavior of Vue. There are some small differences in behavior between production and development modes, but they are aimed to improve the developing experience.
In this case, the browser will be stuck by infinite looping. So that's why Vue will stop it and emit a warning in dev mode. Relate PR: https://github.com/vuejs/core/pull/456
If you insist that the behavior can be improved and removed, I'm also happy to reopen the issue for a more in-depth discussion.

@sxzz tks

i think it is important than a framework have same behavior in both mode, both stop the browser or both stop in max count

the max count check has a perf impact, so it's currently only in dev.
and it's in dev because the warning we can give this way is much more helpful than a context-free max stack size exceeded.

So it's a compromise to gett both better dev experience and better prod performance.
What specific problem does the current behavior pose for you that would be worth giving that up?

@LinusBorg problem is same wrong code, vue "work" in dev mode but not i prod mode.
may be vue team can consider thrown error in dev mode too?

Actually, warnings are not to be ignored in Vue.

@sxzz i know vue team has warning me/us in console to friendly reminder me modify my code, but catch an error then change it to a warn is not a good practice, right? it make wrong code "work".
and we can not expect all dever open dev tool all the time

@Inori-Lover 🤔 Hmmm it makes sense.
I think we should change the warning to an error too and it's a serious error to be fixed by developers.

Agreed.

does we need a pr?

does we need a pr?

Sure, if you would like

so, maybe we need to replace the 'warn' with throwing an error? But I want to know how to test changes in prod mode? Since the SFC also running in dev mode

@smallnine9 @sxzz Why was this PR closed without comment? I think this is a much needed feature and should be merged soon.

@yyx990803 @smallnine9 @sxzz
In this large application, correlated infinite loops cannot be noticed and cannot be detected by UT or static analysis.
I feel that this also evolves into the question of whether or not Vue.js is the architecture of choice for building enterprise apps. Please check it out.

Resolved in #7447

Thanks for the tremendously fast response.


Merge changes from 2.2.1-next.1 into main

Merge changes from 2.2.1-next.1 into main.
Details regarding the included changes are provided in the release notes and the CHANGELOG.

:tada: This PR is included in version 2.2.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Bump version to 0.7.1

Closing for now since I'm not sure if the other changes since 0.7.0 are backward compatible


brew doctor says a new command line tools release is available

[x] ran brew update and can still reproduce the problem?

❯ brew update
Already up-to-date.

[x] ran brew doctor, fixed all issues and can still reproduce the problem?
[x] ran brew config and brew doctor and included their output with your issue?

What you were trying to do (and why)
Check brew doctor for issues
What happened (include command output)

❯ brew doctor
Please note that these warnings are just used to help the Homebrew maintainers
with debugging if you file an issue. If everything you use Homebrew for is
working fine: please don't worry or file an issue; just ignore this. Thanks!

Warning: A newer Command Line Tools release is available.
Update them from Software Update in System Preferences or
https://developer.apple.com/download/more/.

❯ xcode-select --install
xcode-select: error: command line tools are already installed, use "Software Update" to install updates

❯ softwareupdate --list
Software Update Tool

Finding available software
No new software available.

What you expected to happen
No warning about command line tools version since I have latest available version.
Step-by-step reproduction instructions (by running brew commands)
brew doctor
Output of brew config and brew doctor commands
❯ brew config
HOMEBREW_VERSION: 2.2.0-49-g4a7ea6d
ORIGIN: https://github.com/Homebrew/brew
HEAD: 4a7ea6dbc4698c5c897ee667f19ed0127868bfb1
Last commit: 4 hours ago
Core tap ORIGIN: https://github.com/Homebrew/homebrew-core
Core tap HEAD: df7bdec3bf05a359433ff558e5541ac94c826850
Core tap last commit: 7 hours ago
HOMEBREW_PREFIX: /usr/local
HOMEBREW_DEV_CMD_RUN: 1
HOMEBREW_GITHUB_API_TOKEN: set
CPU: octa-core 64-bit kabylake
Homebrew Ruby: 2.6.3 => /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/ruby
Clang: 11.0 build 1100
Git: 2.24.0 => /usr/local/bin/git
Curl: 7.64.1 => /usr/bin/curl
Java: 9, 1.8.0_144
macOS: 10.15.1-x86_64
CLT: 1<IP_ADDRESS>
Xcode: 11.2.1

Related to #6576

Update them from Software Update in System Preferences or
https://developer.apple.com/download/more/.

I tried to update them with software update in system preferences and it says no update available. The latest available version on https://developer.apple.com/download/more/ is already installed on my system.

Try again to install that CLT 11.2 on your system.

Reinstalling CLT 11.2 from apple resolved the issue. Thanks for the tip. Any idea why this is occurring?

You didn't have the latest version of the CLT so had to install a newer one.

Thanks for opening this @esetnik. I was bitten by this along with some coworkers and we also are wondering why it suddenly was necessary to manually download that DMG.
For others following along, here's a link to the DMG, though you'll need to login to the developer site:
https://download.developer.apple.com/Developer_Tools/Command_Line_Tools_for_Xcode_11.2/Command_Line_Tools_for_Xcode_11.2.dmg

The best thing you can do is file bug reports (radars) with Apple.

Thanks for opening this @esetnik. I was bitten by this along with some coworkers and we also are wondering why it suddenly was necessary to manually download that DMG.
For others following along, here's a link to the DMG, though you'll need to login to the developer site:
https://download.developer.apple.com/Developer_Tools/Command_Line_Tools_for_Xcode_11.2/Command_Line_Tools_for_Xcode_11.2.dmg

Ive got this issue as well, If this works I will update this.

I've been having this issue the last few days and had to manually download and install CLT 11.3.
Here's the direct link to 11.3: https://download.developer.apple.com/Developer_Tools/Command_Line_Tools_for_Xcode_11.3/Command_Line_Tools_for_Xcode_11.3.dmg


Snapshot errors on 3.6.2

When trying to take a snapshot using function:
undefined:1
:true}Content-Le
                       ^
SyntaxError: Unexpected token C
    at Object.parse (native)
    at parse (/home/tanepiper/.nave/installed/0.6.5/lib/node_modules/node-inspector/lib/debugger.js:36:22)
    at Socket.<anonymous> (/home/tanepiper/.nave/installed/0.6.5/lib/node_modules/node-inspector/lib/debugger.js:114:5)
    at Socket.emit (events.js:67:17)
    at TCP.onread (net.js:324:31)

When taking one in node inspector:
undefined:1
(length: 624814)
                       ^
SyntaxError: Unexpected end of input
    at Object.parse (native)
    at /home/tanepiper/.nave/installed/0.6.5/lib/node_modules/node-inspector/lib/session.js:910:26
    at Object.<anonymous> (/home/tanepiper/.nave/installed/0.6.5/lib/node_modules/node-inspector/lib/callback.js:22:18)
    at parse (/home/tanepiper/.nave/installed/0.6.5/lib/node_modules/node-inspector/lib/debugger.js:38:29)
    at Socket.<anonymous> (/home/tanepiper/.nave/installed/0.6.5/lib/node_modules/node-inspector/lib/debugger.js:114:5)
    at Socket.emit (events.js:67:17)
    at TCP.onread (net.js:324:31)

On node 0.6.5 on Ubuntu 11.10 32bit with latest node-inspector from npm

+1

+1

I am getting this error as well.

+1

+1

@dannycoates - thanks for the fix on NPM now - however still getting issues with this.  If I try to take a snapshot with the API - my snapshot appears in node-profiler, however has no data appearing.  If I try invoke one from node-inspector still getting issues like this:
undefined:1
(length: 617719)
^
SyntaxError: Unexpected end of input
at Object.parse (native)
at /usr/local/lib/node_modules/node-inspector/lib/session.js:910:26
at Object. (/usr/local/lib/node_modules/node-inspector/lib/callback.js:22:18)
at parse (/usr/local/lib/node_modules/node-inspector/lib/debugger.js:38:29)
at Socket. (/usr/local/lib/node_modules/node-inspector/lib/debugger.js:114:5)
at Socket.emit (events.js:67:17)
at TCP.onread (net.js:342:31)

Exact same issue here, ETA on a fix?


Composed props aren't handled properly

With the following code, VSCode won't show an error for a required prop:
const prop = () => ({
  test: {
    type: String,
    required: true,
  }
})

export default defineComponent({
  name: 'Test',

  props: {
    ...prop(),
  },
})

What ends up happening is that the type annotation is being used, instead of the actual values:
(property) Test: DefineComponent<{
    test: {
        type: StringConstructor;
        required: boolean; // this should be `true`
    };
}, {

Changing it to an inline prop works as expected:
export default defineComponent({
  name: 'Test',

  props: {
      test: {
        type: String,
        required: true,
      }
  },
})

Explicitly typing the return value works, so maybe thats not properly inferred?:
const prop = (): {
  test: {
    type: StringConstructior;
    required: true;
  }
} => ({
  test: {
    type: String,
    required: true,
  }
})

export default defineComponent({
  name: 'Test',

  props: {
    ...prop(),
  },
})

This is expected TS behavior, you can reproduce in *.ts script.
You need to use as const to const props:
const prop = () => ({
  test: {
    type: String,
    required: true as const,
  }
})

Thank you, I'll blame my limited TS knowledge ;)


Why are emptybot created by composer and dotnet cli different to each other ?

Describe the solution you'd like

Describe alternatives you've considered

Hi,
when we create a .netcore app with visual studio, the generated files are exactly similar to files generated by dotnet cli command. Except for .sln file.
Why the same behavior does not happen when we create an empty bot with bot composer ?
When I create an empty bot with bot composer and these cli commands :
dotnet new -i Microsoft.Bot.Framework.CSharp.EmptyBot
dotnet new emptybot

The .csproj files are different with each other
I think it would be a good idea to make them look similar to each other.
for example :
.csproj file of the bot created by BotComposer
<Project Sdk="Microsoft.NET.Sdk.Web">
  <PropertyGroup>
    <TargetFramework>netcoreapp3.1</TargetFramework>
    <AspNetCoreHostingModel>OutOfProcess</AspNetCoreHostingModel>
    <UserSecretsId>a48f4174-7781-4c8d-96ff-365c72b37550</UserSecretsId>
  </PropertyGroup>
  <ItemGroup>
    <Content Include="**/*.blu;**/*.dialog;**/*.lg;**/*.lu;**/*.onnx;**/*.qna;**/*.txt" Exclude="$(BaseOutputPath)/**;$(BaseIntermediateOutputPath)/**;wwwroot/**">
      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
    </Content>
  </ItemGroup>
  <ItemGroup>
    <PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="3.1.8" />
    <PackageReference Include="Microsoft.Bot.Builder.AI.Luis" Version="4.13.1" />
    <PackageReference Include="Microsoft.Bot.Builder.AI.QnA" Version="4.13.1" />
    <PackageReference Include="Microsoft.Bot.Builder.Dialogs.Adaptive.Runtime" Version="4.13.1" />
  </ItemGroup>
</Project>

.csproj file of the bot created by dotnet cli commands
<Project Sdk="Microsoft.NET.Sdk.Web">

  <PropertyGroup>
    <TargetFramework>netcoreapp3.1</TargetFramework>
    <LangVersion>latest</LangVersion>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="3.1.1" />
    <PackageReference Include="Microsoft.Bot.Builder.Integration.AspNet.Core" Version="4.13.1" />
  </ItemGroup>

  <ItemGroup>
    <Content Update="appsettings.json">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </Content>
  </ItemGroup>

</Project>

Regards,
Parsa Lotfi
Additional context

That means there is no way to convert empty bot created by Composer, to the shape of a bot created by dotnet cli , right ?
I thought I can remove these extra lines in csproj file and remove packages and compare 2 project with each other and remove extra codes...
by the way I think it would be good if these 2 things were similar to each other, however I have no idea what these adaptive stack and sdk stack and yeoman are.
Thank you for your comment 💯

Re-reading your original request, I think I misunderstood. The Visual Studio template and the dotnet cli template should be very similar (if not identical). I'm going to move this to our dotnet SDK repo where I think you'll get a better answer (this repository is for our Composer tool for authoring bots, which actually comes with the completely different empty bot template I referred to in my previous answer).


Ability to change permissions.yml at runtime

Besides writing your own custom permission handler is it possible to have deepstream monitor permissions.yml for changes and reload permissions at runtime ?

Hey,
We have an internal API for allowing permissions to be reloaded during runtime, but have not yet exposed it. The reason behind that is because its hard to find the connections the permissions may effect for existing subscriptions. So while making rpcs, emitting events and updating or deleting records would immediately reflect the changes, all connections prior will either need to be force closed (very expensive) or revalidated (less expensive but very bug prone).
Happy to hear any suggestions on how we can potentially find a solution for this that is performant!
Cheers,
Yasser

I had a quick look at the config-permission-handler.   Would something like this work
Still loading permissions as normal with the permissions.yml file, (as most permissions are fairly static do not need to be changed at runtime).  Additionally I would have a deepstream list of other permissions objects in the same format as what comes out of configCompiler.compile.  I would listen to that list for changes and when it changes add/remove/replace the changed permission in the _config object in the permission handler, and clear the permission cache.  Not sure about what to do about existing subscriptions except publish an event to let the client know it has changed and should resubscribe.  Anyway I understand the issues now around changing permissions run time.

@yasserf To solve your problem, have you tried using "smart" subscription objects?
When registering a subscription, not only store information about the subscribed user or the record id, etc, but also information about the version of the permissioning rule that was used to permit the subscription.
When the subscription means that the user now is going to receive a message, first check if the permit version is still up-to-date or not. If it is, everything carries on normally. Else, re-evaluate the permission using the new permissioning rule. If the user endures the change and is still permitted, then just update the version field recorded in the subscription to the newest one just used. Else, notify the user that they have lost their access and therefor the subscription and that their data is no longer guaranteed to be up to date -- and of course delete the subscription.

While that does make alot of sense, it sounds like quite a bit of work too, specially since it isn't isolated in a separate part of the application.
It also doesn't solve the issue with cross referencing, so if a subscription permission depends on the state of another record then we need to have a concept of watches which is quite expensive to maintain during runtime.

So currently valve doesn't recompute a cross reference after it changes?

 It seems like a perfect use case to me and you are already optimizing deepstream for speed all the time, and, best of all, now this becomes a separate part that is much easier to manage and extend.

 It's just quite a tough issue to get right (running computed rules), requires alot of work on client and server side and is not high on our priority list in comparison to many other features we want to get in. Hopefully one day though!

After all, all valve does is respond to events, perform RPCs and react to data changes.

Valve doesn't react to data changes, rules are only run functionally and do not contain state outside of a very small execution time.

I am back with a proposed solution, @yasserf. So, recently I've been playing with the following setup in Node.js for my deepstream server (conceptual pseudo code):
let main_server = new DeepstreamServer({port: 6020, allowRemoteConnections: true});
let helper_server = new DeepstreamServer({port: 6021, allowRemoteConnections: false});

helper_server.start();
helper_server.client = new DeepstreamClient({port: 6021});
await helper_server.login();

main_server.set('permissionHandler', {
  isReady: true,
  canPerformAction: function(username, message, callback, authData, revoke) {
   let msg = decode_message(message);
    if (msg.type === 'subscribe to record data') {
      let permission_record_name = 'permission/'+msg.record.type //eg: 'permission/user'
      let rule = await helper_server.client.getRecord(permission_record_name).whenReady;
      let user = await helper_server.client.getRecord('user/'+username).whenReady;
      let result = calculate_permission(rule, user, data); //data is data being read.
      if (result) {
        callback(null, true); //grant permission;
        rule.subscribe((new_rule) => {
          if (!calculate_permission(new_rule, user, data)) {
            revoke();
            rule.discard();
          }
        });
      } else callback(null, false); //reject permission.
    }
  }
});

main_server.start();

Now you have fully reactive permissioning rules as deepstream records! This opens the door for so many exciting possibilities. My favorites are:

reusable permissioning rules. (eg: a "userIsAdmin" rule);
rule composition and referencing.
data write validation.
frequency limiting (how many reads and writes per unit of time is allowed).

Note that revoke is an artificial parameter, crucial to the process here, but not really implemented in deepstream. However, in this demonstrative case of subscribing to a record's data, the implementation should be as simple as emulating a client-side unsubscibe on the server (perhaps also with a courtesy notification to the client that their permission has expired). Notice also that calculate_permission depends on the data being read, but no subscription to that data is actually performed so that calculate_permission is called again after data changes, and then maybe the permission needs to be revoked.
This is just scratching the surface. Deepstream is powerful enough to implement any dynamic permissioning system based on permission records, permission events and RPCs. However, for a full fledged permissioning system (dare I say, valve 2.0?), the permission handler needs to be able to revoke permissions via a revoke callback, as well as being able to screen data before it is sent to the user so that the same record holding a user's profile picture and authentication password is screened and filtered appropriately for different users with different permissions. Perhaps GraphQL might be of use at this place.
I am already in the midst of creating my own permissioning system based on data types and sophisticated permissioning schemas, reusable rules, rules composition, data validation, and more. I might decide to opensource it and work on this together, but for now I am stuck at being not able to  revoke or screen the data before it is sent to the client.

We will be implementing refreshing permissions soon using an admin api, but revoking individual subscriptions is still quite hard to do. Totally doable, but I don't think its worth the cost and maintenance vs killing the connection. Specially now with bulk subscriptions.


RUBY-1498: Event publishing with Mongo Ruby driver 2.1.0

@mwear This addresses most issues at stated here https://github.com/newrelic/rpm/pull/211#issuecomment-132009360
Responses to those questions:

event.command.values.first is guaranteed by our spec to always be the command name since BSON::Documents are ordered - it was an issue in the beta version of the Ruby driver, which is fixed in master and will be in the RC relase. I pointed the multiverse tests at master now instead of the beta.

The command that is issued will not always match the event name, as this is low level monitoring and we wanted to avoid any sort of method tracing in order to not break future the agent in future API changes to the driver. We also deemed it more important for a user to know exactly what was happening in the database... Ie a find can be a find, several getmore commands and a killcursors command... An insert_many can be split up into several insert commands, etc. This is the same across all of our drivers now in compliance with the spec.

I switched to use the statement formatter but there is one remaining failing test because it uses a whitelist approach instead of a blacklist one. Right now it's going to filter out the command name and collection name from the statements because they are not included in the list. This will include all commands sent to the database and any future additional commands. If you agree - I'd like to change this.

@durran thanks for the work.  I understand both 1 and 2 from the list above and am fine with those explanations.  As for 3, we don't have to use the StatementFormatter for this instrumentation, but we need to be able to transform the events from the CommandSubscriber into a statement equivalent to what StatementFormatter would give us from the old mongo payloads.  If it'd be easier to make a NewRelic::Agent::Datastores::Mongo::EventFormatter that does this work, then that's fine.  I'm also open to any other way you would like to solve that problem.  Let me know if you have any questions.

@mwear I think that is a good idea for #3 - I'll work on that and add to this pull tomorrow - something along the lines of a NewRelic::Agent::Datastores::Mongo::EventFormatter as you suggested.

@mwear Next question. I added the EventFormatter, but wanted to know if in the output the operation, database and collection keys need to be symbols. Right now they are strings.
https://github.com/newrelic/rpm/pull/214/files#diff-0203b51aa1cdea5921861f50ebffc582R21

@durran This all looks really good. I think we are fine with string keys for operation, database, and collection as this data is ultimately serialized as JSON when sending it over the wire. I'll verify that in end-to-end testing and on the off chance it does need to be changed it's something I can handle.  Thanks so much for all the work on this.  I'm going to merge this PR.  If I run into any issues I'll be in touch with with you, otherwise thanks again!

@mwear Great! Let me know if there is anything else you need from me.


Multiple SnackBars

Greetings,
I'm curious to see if there is a way to have multiple snackbars to use the component also for some specific notifications that can be stacked, kinda like facebook.

For multiple snackbars you can simply use a Toast component @MiguelArmendariz  that's mainly the difference between Snackbar and Toast

I had the same problem. Now started using this - https://react-hot-toast.com/

I had the same problem. Now started using this - https://react-hot-toast.com/


Grid Width and Height

Hi
Try the following:

....
$('.grid-stack').gridstack({float:true;cellHeight:5;verticalMargin:1}); $('.grid-stack').data('gridstack').addWidget($('

' + i + '

'),30, 10, 14, 20);
The widget cannot be dragged below 599px (height) ! The only correct way to get it beyond that point is to put data-gs-height="142", because 142=850px/600px
Another issue: any verticalMargin value greater than 1 modifies the 599px water mark and we can go way beyond 850px. Why ?
Finally inverting width and height (width=850px, height=600px) in the HTML works fine without the 142 trick.
The 599px let's me think that somewhere in the code height is used as width, or vice versa.
Regards
Fadi

Could you provide a jsFiddle? Additionally, #405 provides insight into a verticalMargin issue. I believe this is causing at least part of your issue.

I've solved the problem by setting data-gs-width=100 and data-gs-height=$('.grid-stack').parent().height() / (options.cellHeight + options.verticalMargin)
This said I'm wondering how this setting reconciles with the defined css, for I defined:
.grid-stack > .grid-stack-item[data-gs-x='n'] { width:n%;}
.grid-stack > .grid-stack-item[data-gs-y='n'] { width:n%;}
.grid-stack > .grid-stack-item[data-gs-width='n'] { width:n%;}
.grid-stack > .grid-stack-item[data-gs-height='n'] { width:n%;}
with n going from 1 to 100. "data-gs-height" is often different from 100 with the above formula.


read error: Not Found

We use weed to store our image files. Currently each volume server manage more than 1800 volumes (~28TB data). For some files we stored in weed, we get:
 I0809 19:08:46 30628 volume_server_handlers_read.go:71] read error: Not Found /20,042bf3f712f892

Do you have any ideas what happend?
Full log of a volume server: https://gist.github.com/lqhl/d9955a1bfb81a36322ba4f5606e722d3

No idea.
On Wed, Aug 9, 2017 at 6:23 PM Qin Liu<EMAIL_ADDRESS>wrote:

We use weed to store our image files. Currently each volume server manage
more than 1800 volumes (~28TB data). For some files we stored in weed, we
get:
I0809 19:08:46 30628 volume_server_handlers_read.go:71] read error: Not Found /20,042bf3f712f892
Do you have any ideas what happend?
Full log of a volume server:
https://gist.github.com/lqhl/d9955a1bfb81a36322ba4f5606e722d3
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/chrislusf/seaweedfs/issues/548, or mute the thread
https://github.com/notifications/unsubscribe-auth/ABeL7_GJ20JNyeEfebMErrGNttH3ASubks5sWluLgaJpZM4Oy1Nd
.

We also get:
I0809 12:29:55 30628 volume_server_handlers_read.go:77] request /16,042bbe979c03b8 with unmaching cookie seen:<PHONE_NUMBER> expected: 169337437 from <IP_ADDRESS>:52074 agent Apache-HttpClient/4.5.2 (Java/1.8.0_131)

What about this?

We use a Java Client to upload and download files: https://github.com/lokra/seaweedfs-client
The client seems to treat all HTTP status code 1XX and 2XX as success. Is it possible that an upload fails but weed return such status code?

Do you only see the error in the logs? Do you know the history for the file? Is it deleted? where the request comes from?

It's an internal system. So the requests are all from our program which
alsu uses the Java client. For both error types, the client gets 404 error.
best,
Qin Liu
lqhl.me
On Thu, Aug 10, 2017 at 1:07 PM, Chris Lu<EMAIL_ADDRESS>wrote:

Do you only see the error in the logs? Do you know the history for the
file? Is it deleted? where the request comes from?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/chrislusf/seaweedfs/issues/548#issuecomment-321451977,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAqALZOZbXJf74MXv1mqYEkFOq46S40Oks5sWpANgaJpZM4Oy1Nd
.

some problems on PROD env.
any useful tips to fix it?

Usually the deletions are triggered by client requests. If no activity or
TTL, the files will stay there forever. Please check all the client
requests.
On Thu, Apr 19, 2018 at 6:23 PM CrocdileChan<EMAIL_ADDRESS>wrote:

so , do you resolve this problem?
I get the same problem, we also use mysql to store file ID and we delete
the file ID from mysql when we delete the file data from weedFS. BUT, we
still lose some file data.
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/chrislusf/seaweedfs/issues/548#issuecomment-382933679,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABeL782bAUi0CWBJWF7OxprAOqyHe7mjks5tqTibgaJpZM4Oy1Nd
.


Added remark-lint-ending-period into the external rules

See the project's page: https://github.com/wemake-services/remark-lint-ending-period
The idea behind it was, that I need my list-items in the awesome-cryptography to be closed with the . char.
We have added the support of any other set of symbols, such as: [';', '...', '!'], see it in action: https://github.com/sobolevn/awesome-cryptography/blob/master/package.json

[Current coverage][cc-pull] is 100%

Merging [#67][cc-pull] into [master][cc-base-branch] will not change coverage

@@           master    #67   diff @@
====================================
  Files          60     60
  Lines        1276   1276
  Methods         0      0
  Messages        0      0
  Branches        0      0
====================================
  Hits         1276   1276
  Misses          0      0
  Partials        0      0

Powered by Codecov. Last updated by [27d3444...37ced37][cc-compare]
[cc-base-branch]: https://codecov.io/gh/wooorm/remark-lint/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/wooorm/remark-lint/compare/27d3444e06c45cad24907119d26c16ae2c3f2ea5...37ced375d22fef84fa0f968d1d16979d33f5c2a5
[cc-pull]: https://codecov.io/gh/wooorm/remark-lint/pull/67?src=pr

Cool, I’ll add it in a sec.
Regarding endings: Why not allow an array to be passed in as preferred instead of requiring preferred.endings?
Also, what follows is my usage of list-item punctuation:
For tight lists (loose: false), I prefer the following:
*   Foo;
*   Bar;
*   Baz.

And, for loose lists (loose: true), I prefer:
*   Foo
    Bar.

*   Baz
    Qux.

*   Quux
    Quuux.

Would you be interested in adding some sort of support for that?

Hold on, it’s a bit weird that the project is called remark-lint-ending-period, when it doesn’t requires periods (necessarily). Plus that it doesn’t requires all the things to be terminated by a period / other marker: just list items. It’s confusing. Wouldn’t remark-lint-list-item-punctuation be more suitable?

Thanks, for the feedback. Well, choosing a name was a bit hard. remark-lint-list-item-punctuation is way better. I will change it soon, so don't merge this PR, I will update it.
I am definitely interested in extending it.  Could you please open an issue with the desired specs?
About preferred.endings: it is made just in case other options will show up.

Opened https://github.com/wemake-services/remark-lint-ending-period/issues/1 and https://github.com/wemake-services/remark-lint-ending-period/issues/2!

Thanks!

@sobolevn Closing this for now, please open a new PR if list-item-punctuation is done!


MODE-2600 Adds the "workspaces" index definition attribute to the WF kit

@rhauch are you ok with this ?

Yeah, it looks good.


T01.01-Solution-CreateLayout

this is mine

@Ichigokfm You are not supposed to solve the exercises by submitting pull requests to this repository.
If you find bugs or mistakes sure, you can help fix them. But I don't think it is the case with the current changes you sent in this PR.
I suggest that you fork this repository and push your solutions to the exercises there.


[v1.15] cilium-dbg: remove section with unknown health status.

This is not a backport
Current changes in main branch already fixed this.  This was initially planned to be fixed in main first and backported, however these commits cannot be backported to v1.15.
This mirrors the original fix PR by removing the Unknown status in v1.15, other version branches are unaffected.
The "unknown" status simply refers to components that accept a health reporter scope, but have not declared their state as being either "ok" or degraded.
This is a bit confusing, as this does not necessarily mean any problems with Cilium.
In the future we may want to rework this state to distinguish between unreported states and components that are "timing-out" reconciling a desired state.
This PR simply removes displaying this information in cilium-dbg status

/test-backport-1.15


[WIP do not merge]Update examples to use Serde auto-config

This PR is show the changes required to leverage Serde auto-config.
It also exposes couple of issue with the new feature and this PR won't compile until we sync the upstream changes from the AK repo (including follow up bug fixes in AK).
Opened the PR to give an impression on the impact. More details in inline comments.

Without https://github.com/apache/kafka/pull/6614, UserCountsPerRegionLambdaIntegrationTest also fails, exposing the corresponding bug.
Not sure if the PR is the correct fix though. Compare the comment on the PR itself.

Thanks for the illustration @mjsax

Closing this PR for now -- https://issues.apache.org/jira/browse/KAFKA-3729 is reopened and this feature requires a KIP and will come later.


Fix unable to copy native jar Error

Purpose
Fixes #18992
Check List

[ ] Read the Contributing Guide
[ ] Required Balo version update
[ ] Updated Change Log
[ ] Checked Tooling Support (#)
[ ] Added necessary tests

[ ] Unit Tests
[ ] Spec Conformance Tests
[ ] Integration Tests
[ ] Ballerina By Example Tests

[ ] Increased Test Coverage
[ ] Added necessary documentation

[ ] API documentation
[ ] Module documentation in Module.md files
[ ] Ballerina By Examples

Codecov Report

Merging #19052 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master   #19052   +/-   ##
=======================================
  Coverage    15.8%    15.8%
=======================================
  Files          47       47
  Lines        1259     1259
  Branches      196      196
=======================================
  Hits          199      199
  Misses       1047     1047
  Partials       13       13

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 5e6d330...0f0419c. Read the comment docs.

Created PR for 1.0.x branch, hence closing this.
https://github.com/ballerina-platform/ballerina-lang/pull/19106


Don't Merge! PR real time test for source branch full build

Docs Build status updates of commit e3c5c36:
:clock10: Pending: waiting for processors (26 builds ahead of you)
:warning: Docs Build is busy, currently there are 26 builds ahead of this one, for more information you can view the Build queue graph on the Docs Portal.

Docs Build status updates of commit e3c5c36:
:clock10: Full build: the average full build time is 6 min(s) 4 sec(s), this is based on the last 30 build(s) for this repository.

Docs Build status updates of commit e3c5c36:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docfx.json
:white_check_mark:Succeeded

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


Add utilization %

The formula to be used is something like this:
``
    const { depth, bucketDepth, utilization } = batch // as PostageBatch
    const value = utilization / Math.pow(2, (depth - bucketDepth))


sdk upgrade should respect sdkman_auto_answer setting

At the moment sdk upgrade will trigger prompt to the user when there are upgrades found.
This operation should respect sdkman_auto_answer setting so that prompt could be suppressed.
It might be useful when executing sdk operations as part of other scripts (for example batch update: update deb packages and sdk candidates)

This has now been merged so closing this issue.


ARM template for multiple subscriptions

[Enter feedback here]
Do we have an option for ARM template wherein a single template can scope multiple subscriptions via a single template OR
Do we have an option for ARM template wherein a single template can scope management Groups? Since EA subscriptions have the option of management groups on portal
Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 080cd0e8-fd09-6361-8c14-fe9f80758417
Version Independent ID: 2bab0ac2-1fd5-c6d9-d5ac-a44fcb8c8d75
Content: Quickstart - Create a budget with an Azure Resource Manager template
Content Source: articles/cost-management-billing/costs/quick-create-budget-template.md
Service: cost-management-billing
Sub-service: cost-management
GitHub Login: @bandersmsft
Microsoft Alias: banders

@Siby22071989 Thanks for reaching out. We will investigate and update the thread accordingly.

@bandersmsft Any thoughts?

@Siby22071989 ARM allow us cross subscription deployment. If you want to deploy resources in other subscription than you currently logged in subscription these resources will be defined inside a nested template (either inline or in a separate JSON file) which is called from the main template. In the nested template you have to specify the other subscription ID of your resource. You can refer this link for more info.

@SadiqhAhmed-MSFT : Thank you for looking. However, the above link is for multi deployments using ARM template. What I am asking for is a single ARM template that can create " Budget Alerts" across resource group of multiple subscriptions. For example on Azure portal you can move subscriptions under management scope >> select management scope >> select RG under that scope and then apply budget. Is this possible via ARM template as I see the ARM template for single subscription, or department

@Siby22071989 This just sounds more like you could easily accomplish this via ARM Template Spec - https://docs.microsoft.com/en-us/azure/azure-resource-manager/templates/template-specs?tabs=azure-powershell
Then its just a matter of invoking it for each subscription which is able to be done several ways

@SadiqhAhmed-MSFT : Thank you Sadiqh. I have reviewed: https://docs.microsoft.com/en-us/azure/azure-resource-manager/templates/template-specs?tabs=azure-powershell in the past, but it does not provide a clear direction and there is no schema provided for multi subscriptions. . Do you have any plans to publish an ARM template to include multiple subscriptions?

@Siby22071989 Today, Budgets ARM template doesn't support multiple subscriptions. However you can leverage Budgets REST APIs to setup Budgets programmatically across different Subscriptions/Resource Groups - https://docs.microsoft.com/en-us/rest/api/consumption/budgets . Let us know if you would need more details there.

#please-close


Fixed #29138 -- Add ModelAdmin.autocomplete_fields support for ForeignKeys that use to_field (2019-10-29)

Bug fix for 29138
https://code.djangoproject.com/ticket/29138
This continues the work started in:
https://github.com/django/django/pull/10494
Another related/abandoned PR:
https://github.com/django/django/pull/10517
That effort had gone stale and needed conflicts resolved.

@schwtyl I created a patch file for your convenience: https://gist.github.com/codingjoe/5c5ef8087f8d71dbd4b4373bbc39ffaa

Let me know when you are ready for another review round :)

@codingjoe we have been affected by this bug, using Django 2.1.5. As our to_field points to a valid integer, we have been incorrectly modifying data. IMHO I think this should be marked as a DATA LOSS bug and be addressed urgently.
Is there anything we can do to move this forward?

This issue should be fixed by #11026. Thanks!

This issue should be fixed by #11026. Thanks!


nixos/luksroot: Add option to save passphrases.

Motivation for this change
I needed that another LUKS device gets unlocked automatically using the same passphrase that was used to unlock the LUKS device containing the root file system. This adds an option to the initrd which if enabled will save passphrases to /run/initrd-saved-passphrases so that they can be used after the initrd to unlock other devices.
Maybe using /run/keys (which is already a thing and gets mounted automatically, but not in the initrd) would be more appropriate? Not sure where would be the right place to put the code for doing that, and if it could somehow conflict with the fstab entry.
Things done

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

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[x] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

I thought #29441 did this already, or am I misunderstanding what this patch does?

That one temporarily saves the passphrase and automatically tries to reuse it for the next LUKS device opened from the initrd. That allows opening multiple LUKS devices in the initrd while typing only one passphrase.
What I need is to open just one device in the initrd (where the root filesystem is), and open another device automatically during the systemd boot. That other device does not need to be opened in the initrd; configuring it to be opened in the initrd would prevent me from booting if the device does not work, would also increase the boot time a little (since it is not done in parallel).
This patch makes it possible for the initrd to save the passphrase so that it can be used later (after the initrd is done) to open another device. To do that I added a systemd service like this:
systemd.services.cryptsetup-crypt-disk = let
  name = "crypt-disk";
  device = "/dev/disk/by-uuid/xxx";
  keyFile = "/run/initrd-saved-passphrases/luks-crypt-ssd";
in {
  description = "Open LUKS volume ${name}";
  requires = [ "${utils.escapeSystemdPath device}.device" ];
  after = [ "${utils.escapeSystemdPath device}.device" ];
  # I use ZFS so this is a dependency of the service that imports the pool.
  # Otherwise it would be a dependency of mount units directly.
  before = [ "zfs-import-zfs-disk.service" ];
  requiredBy = [ "zfs-import-zfs-disk.service" ];
  unitConfig.DefaultDependencies = "no";
  serviceConfig = {
    Type = "oneshot";
    RemainAfterExit = true;
    ExecStart = "${pkgs.cryptsetup}/bin/cryptsetup luksOpen ${device} ${name} --key-file ${keyFile}";
  };
};

another option would be to have a regular keyfile on the encrypted rootfs, and then always use that to open the 2nd luks device

another option would be to have a regular keyfile on the encrypted rootfs, and then always use that to open the 2nd luks device

This is true but I'm not fond of keeping encryption keys on the disk and it's also manual work.

I know this is stale, but I find myself with a bit of time to try and work through the oldest, non-conflicting issues.
For clarity, why can't you mount this in the initrd phase? Won't putting the key in /run/initrd-saved-passphrases/ be the equivalent of putting the key on another encrypted drive that's been mounted in initrd? This turns the passphrase into a keyfile.
Is it just another way of doing things that doesn't require a benefit?


Minigpt-4 #12

This pull request implements a new strategy called minigpt4.py that generates the next InputEvent by taking in a task description, then passing MiniGPT-4 this description, the past InputEvents, and the screenshot, and asking it to generate the next event. I also used OCR to generate a description of the screenshot to give to MiniGPT4 as well. I used a similar approach to the PR for issue #15 but used MiniGPT-4 instead.
Issues/Uncertainties:

Wasn’t sure where to put the imported MiniGPT-4 module in the puterbot repository
Also had to rename the MiniGPT-4 since it had a hyphen in its name, so it couldn't be imported
Unsure if necessary to reinitialize MiniGPT-4 each time as it could take more time than needed

TODO:

convert MiniGPT-4's returned text into an InputEvent rather than just a text action
create unit tests

ChatGPT transcript: https://drive.google.com/file/d/1_6tlxgyYSZj6snCxuaQV52arbG2rK026/view?usp=share_link
Any feedback is appreciated!

Thank you @angelala3252 !
Please follow the instructions at https://github.com/MLDSAI/puterbot/pull/56#issuecomment-1530755076 but modified for your fork, e.g.:
git remote add angelala3252 https://github.com/angelala3252/puterbot.git
git fetch angelala3252
# what goes here to run your code? please create a branch update your PR to merge from that branch, e.g.:
git checkout feat/<your-feature-name>  # please fill this in
pip install -r requirements.txt  # please fill this in
python -m ...  # please fill this in

@angelala3252 thank you for the great work! Please grab some time on my calendar at your earliest convenience on Weds/Thurs this week: https://www.getclockwise.com/c/richard-abrich/quick-meeting

@angelala3252 I would love to try this out but I can't get it to work:
(.venv) abrichr@MacBook-Pro-2 puterbot % python -m puterbot.replay GPTReplayStrategy
Traceback (most recent call last):
  File<EMAIL_ADDRESS>line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File<EMAIL_ADDRESS>line 86, in _run_code
    exec(code, run_globals)
  File "/Users/abrichr/MLDSAI/src/puterbot/puterbot/replay.py", line 4, in <module>
    from crud import get_latest_recording
ModuleNotFoundError: No module named 'crud'

Can you please run:
git fetch
git checkout origin/master -- puterbot/config.py
git checkout origin/master -- puterbot/crud.py
git checkout origin/master -- puterbot/db.py
git checkout origin/master -- puterbot/events.py
git checkout origin/master -- puterbot/models.py
git checkout origin/master -- puterbot/record.py
git checkout origin/master -- puterbot/replay.py
git checkout origin/master -- puterbot/strategies/__init__.py
cat "from puterbotlstrategies.minigpt4 import GPTReplayStrategy" >> puterbot/strategies/__init__.py
git checkout origin/master -- puterbot/utils.py
git checkout origin/master -- puterbot/visualize.py

This will replace your unnecessary and unrelated changes and keep the relevant ones.
Please commit the result and push your latest. Also please modify the branch of this PR to point to your feature branch. Also rename your feature branch so that it isn't literally feat/my-feature but something descriptive like feat/minigpt4: https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/changing-the-base-branch-of-a-pull-request

After implementing the above on my machine I get:
(.venv) abrichr@MacBook-Pro-2 puterbot % python -m puterbot.replay GPTReplayStrategy
2023-05-02 02:20:20.671 | INFO     | __main__:replay:19 - strategy_name='GPTReplayStrategy'
Traceback (most recent call last):
  File<EMAIL_ADDRESS>line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File<EMAIL_ADDRESS>line 86, in _run_code
    exec(code, run_globals)
  File "/Users/abrichr/MLDSAI/src/puterbot/puterbot/replay.py", line 43, in <module>
    fire.Fire(replay)
  File "/Users/abrichr/MLDSAI/src/puterbot/.venv/lib/python3.10/site-packages/fire/core.py", line 141, in Fire
    component_trace = _Fire(component, args, parsed_flag_args, context, name)
  File "/Users/abrichr/MLDSAI/src/puterbot/.venv/lib/python3.10/site-packages/fire/core.py", line 466, in _Fire
    component, remaining_args = _CallAndUpdateTrace(
  File "/Users/abrichr/MLDSAI/src/puterbot/.venv/lib/python3.10/site-packages/fire/core.py", line 681, in _CallAndUpdateTrace
    component = fn(*varargs, **kwargs)
  File "/Users/abrichr/MLDSAI/src/puterbot/puterbot/replay.py", line 21, in replay
    strategy_class_by_name = get_strategy_class_by_name()
  File "/Users/abrichr/MLDSAI/src/puterbot/puterbot/utils.py", line 375, in get_strategy_class_by_name
    from puterbot.strategies import BaseReplayStrategy
  File "/Users/abrichr/MLDSAI/src/puterbot/puterbot/strategies/__init__.py", line 5, in <module>
    from puterbot.strategies.minigpt4 import GPTReplayStrategy
  File "/Users/abrichr/MLDSAI/src/puterbot/puterbot/strategies/minigpt4.py", line 20, in <module>
    from MiniGPT4.minigpt4.common.config import Config
ModuleNotFoundError: No module named 'MiniGPT4'

@angelala3252 Can you please add to requirements.txt? You can do a pip freeze > requirements.txt

@abrichr After looking into the MiniGPT-4 repo a bit further, I realized that I missed some steps in the setup and that in order to fully initialize MiniGPT-4, we would have to request access to download the LLaMA weights here https://docs.google.com/forms/d/e/1FAIpQLSfqNECQnMkycAp2jP4Z9TFX0cGR4uf7b_fBxjY_OjhJILlKGA/viewform
How do you want me to proceed?

This is the code that would be used to run my code (but as I mentioned above I can't actually run my solution because of the issue with the MiniGPT-4 installation and weights):
git remote add angelala3252 https://github.com/angelala3252/puterbot.git git fetch angelala3252 git checkout feat/minigpt4 pip install -r requirements.txt python -m puterbot.replay NaiveReplayStrategy # assuming you have a replay you want to playback
I've updated the requirements.txt file to include the packages that the MiniGPT-4 repo requires (as it uses a conda environment rather than a requirements.txt file) in a new PR that merges from my feat/minigpt4 branch instead of my main branch.

Thanks @angelala3252!

in order to fully initialize MiniGPT-4, we would have to request access
to download the LLaMA weights here
https://docs.google.com/forms/d/e/1FAIpQLSfqNECQnMkycAp2jP4Z9TFX0cGR4uf7b_fBxjY_OjhJILlKGA/viewform

Ideally this would all be automated. The user should be able to follow the
setup instructions in a brand new PuterBot installation, and have
everything just work out of the box. Do you mind taking this on? 🙏
On Wed, May 3, 2023 at 8:59 PM angelala3252 @.***>
wrote:

This is the code that would be used to run my code (but as I mentioned
above I can't actually run my solution because of the issue with the
MiniGPT-4 installation and weights):
git remote add angelala3252 https://github.com/angelala3252/puterbot.git
git fetch angelala3252 git checkout feat/minigpt4 pip install -r
requirements.txt python -m puterbot.replay NaiveReplayStrategy # assuming
you have a replay you want to playback
I've updated the requirements.txt file to include the packages that the
MiniGPT-4 repo requires (as it uses a conda environment rather than a
requirements.txt file) in a new PR
https://github.com/MLDSAI/PuterBot/pull/81 that merges from my
feat/minigpt4 branch instead of my main branch.
—
Reply to this email directly, view it on GitHub
https://github.com/MLDSAI/PuterBot/pull/55#issuecomment-1533929182, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAF5DV2ETEOJ4LEB3KJP7DLXEL5NXANCNFSM6AAAAAAXRMDPFU
.
You are receiving this because you were mentioned.Message ID:
@.***>

@angelala3252 should we close this in favor of your other PR https://github.com/MLDSAI/puterbot/pull/81 ?


Add ability for some ManipulationHandler to ignore pointer events from gameobjects using InteractiveColliderContext

This is an alternative approach for PR #5072 to fix #4393 (follow-up bugfix is #4546)
Looking for feedback
I'm looking for feedback regarding the approach in this PR compares to PR #5072. Would love to hear if folks see issues with this approach. Also suggestions about naming the component.
Overview
The root cause of #4393 is that when maniphandler is above boundingbox, maniphandler will swallow all pointer events originating from scale, rotate affordances before bounding box has a chance to handle it. This causes the scale, rotate affordances to be impossible to grab. The fix is to put bounding box before manip handler. This allows bounding box to handle the affordances first.
PR #5072 solves this by throwing error if bounding box is ever coming after manip handler.
An alternate approach is to somehow tell ManipulationHandler to ignore events from certain gameobjects. I considered using tags or layers but decided against it because those approaches did not feel extensible (layers only have 31 values so potentially customers could run out if we took one for layer "Ignore Manipulationhandler", and only one tag allowed per gameobject).
An alternative to tags or layers is to add a component I called ManipulationHandlerContext component that can provide configurable info to a manipulationhandler whenever that gameobject is grabbed.  On PointerDOwn, ManipulationHandler then checks if the object the pointer event came from has a ManipHandlerContext and ignores the event source if IgnoredByManipulationHandler == true. This allows us to have descendents that raise pointer events, but which can be ignored by manipulation handler (because they could be used by some other components).
BoundingBox then adds these context components to its affordances, and sets IgnoredByManipulationHandler = true. This then prevents manipulationhandler from stealing the events that come from the bounding box affordances.
Verification

Verified that this allows bounding box handles to be grabbed regardless of whether bounding box is above / below manipulationhandler

Note: if I was to go with this approach I need to add docs in ManipulationHandler explaining ManipulationHandlerContext.

Okay, I updated to use a more general "InteractiveColliderContext" component. Going to mark this as ready for review then and close the other PR, in favor of this one.

/azp run mrtk_pr

What if instead we add a component to the rig root game object created by the bounding box that catches those events and dispatches them to the bounding box? I'd rather that to the context component approach because the latter forces event listeners (e..g manipulation handler) to check for the context while the former is completely transparent.

What if instead we add a component to the rig root game object created by the bounding box that catches those events and dispatches them to the bounding box? I'd rather that to the context component approach because the latter forces event listeners (e..g manipulation handler) to check for the context while the former is completely transparent.

That could work, let me try it out.

What if instead we add a component to the rig root game object created by the bounding box that catches those events and dispatches them to the bounding box? I'd rather that to the context component approach because the latter forces event listeners (e..g manipulation handler) to check for the context while the former is completely transparent.

That could work, let me try it out and see.

Seems to be working! I like that solution a lot better, third times a charm :-) Will send that out shortly and closing this PR.


Further work on the BrowserWidget, it now supports documents rendered…

… within a paragraph (i.e. floating images on the left or right).

Refer to this link for build results (access rights to CI server needed):
http://jenkins.terasology.org/job/TerasologyPRs/75/
Hooray Jenkins reported success with all tests good!

Checked it out along with https://github.com/Terasology/ManualLabor/pull/10/files - seems everything still works (with that PR pulled), and it is pretty isolated, so merging away!
Will push the module PR in a bit after engine is done building


refactor: Improve memory pressure

this is the duplicate of #5610, it is refactoring to ensure outer values are not retained when they do not have to be. It needs to be done in a separate PR because the branches diverge just enough to require it. This PR also has some mild, internal type fixes.

Note that the changes are not 1:1 with the other PR. I have to do things like leave InnerSubscriber and OuterSubscriber in the same spot with the same names for rxjs-compat. I could have refactored and aliased, but it's not really worth the effort and extra risk.

The TS3 test isn't really supposed to pass for 6.x. I'm not sure why we're hinging on it.


Delete a Specific Channel.

How can I delete Specific Channel (1 to 1) or multiple user Channel that was created by me.
Thanks in Advance.

[selectedChannel leaveChannelWithCompletionHandler:^(SBDError * _Nullable error) {
            if (error != nil) {
                return;
            }
            [self.channels removeObject:selectedChannel];
            dispatch_async(dispatch_get_main_queue(), ^{
                [tblView reloadData];
            });
        }];

@kuldeep13990 Have you resolved your issue?


perf(nuxt): decrease default bundle size

🔗 Linked issue

❓ Type of change

[ ] 📖 Documentation (updates to the documentation, readme or JSdoc annotations)
[ ] 🐞 Bug fix (a non-breaking change that fixes an issue)
[x] 👌 Enhancement (improving an existing functionality like performance)
[ ] ✨ New feature (a non-breaking change that adds functionality)
[ ] 🧹 Chore (updates to the build process or auxiliary tools and libraries)
[ ] ⚠ Breaking change (fix or feature that would cause existing functionality to change)

📚 Description
This is a raft of small changes which together make a difference in minimal bundle size for the client.
📝 Checklist

[ ] I have linked an issue or discussion.
[ ] I have updated the documentation accordingly.

Beautiful!


[dataset] Add posix app bootup parameter to retrieve dataset from NCP and save to file

[dataset] Add posix app bootup parameter to retrieve dataset from NCP and save to file
There are cases when NCP platform was used at first. Then need to change to use RCP platform later. The PAN active and pending dataset needs to be retrieved from NCP firmware to avoid repairing again.
This change,

Add one bootup parameter to posix app (--ncp-dataset).
Utilize spinel property SPINEL_PROP_THREAD_ACTIVE_DATASET and SPINEL_PROP_THREAD_PENDING_DATASET to retrieve dataset from NCP.

@jwhui the travis tests passed.


[promethues-node-exporter] added service annotations with the default value

added annotations

/ok-to-test