Installation via Node.JS Permanently Disables Windows Update

What You Are Seeing?
I have been enrolled in a group policy that has forcibly disabled all Windows Updates after Node.JS invoked Boxstarter. This policy continues to exist after Boxstarter has completed and no obvious option to revert this change is apparent.

What is Expected?
Boxstarter should not have any permanent effects on my PC including state changes. This current behavior is what I would expect from a Virus or other malicious software.
How Did You Get This To Happen? (Steps to Reproduce)

Installed Node.JS
Boxstarter forcibly restarted PC multiple times (this is awful behavior btw)
After install script completed a Group Policy had been created and Windows Updates have now been completely disabled.
My personal PC is now enrolled in a group policy.

This issue has also been mentioned multiple other times on the Node.JS page.

Seems to be tied to this PR: https://github.com/nodejs/node/pull/22645

@runewake2 Have you checked Group Policy to ensure it is in there? Have you also tried to use Enable-WindowsUpdate assuming you still have Boxstarter.WinConfig installed?

To be completely honest, I have no idea what I'm doing in Group Policy.  I only know that an application (Node.JS) used this tool to apply a group policy that disabled UAC and Automatic Updates. I do not want these changes.
I was told this would install python and visual studio tooling using chocolaty. Group Policy modifications were not mentioned as part of this. Maybe there was a prompt, but the entire process was forced and included multiple hard-restarts that made following any information in real-time largely impossible.
I don't know how to manually change this back because I have no idea how to tell what has been changed or the extent of the changes (short of manually parsing a 9000 line log file). I would expect I could uninstall or revert these changes but I don't know how to do that either. The only uninstall option I've seen is deleting a folder from %appdata% and I don't see how that could remove group policy or address any of the other hidden changes these scripts had on my PC (the only file in the %appdata% folder is a log file).
I really don't want to reinstall my OS because Node.JS misused this tool. Is there a way to revert these changes that is less drastic?

@runewake2 Did you run the command I asked you to?

That command does not exist. I have not taken any steps to remove Boxstarter yet.

@runewake2 Is there a BoxStarter Shell option under your Start Menu -> Programs -> Boxstarter? If so, click that and type Enable-WindowsUpdate

This is what I see. Did you mean: Enable-MicrosoftUpdate? That does exist.

@runewake2 Apologies it is Enable-MicrosoftUpdate - I was confusing myself with the names as I'm looking at Install-WindowsUpdate!

Boxstarter now reports that updates are enabled, but Windows reports that Updates are disabled and the setting continues to be locked behind a group policy.

@runewake2 Have you rebooted?

Yes, the updates on my system are in the same state per Windows Settings as the original bug. This is what Boxstarter reports now though:
C:\> Enable-MicrosoftUpdate
Boxstarter: Microsoft Update is already enabled, no action will be taken.

@runewake2 Okay, from the same command prompt try and run Start-UpdateServices.

That command had no output. Is that expected. I had to run it with a full path.
C:\ProgramData\Boxstarter\Boxstarter.Bootstrapper\Start-UpdateServices
After running this updates are still disabled and my user is still controlled by a group policy.

@runewake2 said...
After running this updates are still disabled and my user is still controlled by a group policy.

Can you please confirm what process you are using to confirm this?

I am looking at Settings -> Windows Update -> View configured update policies after restarting my system.

@runewake2 What OS and version are you using?

Windows 10 Pro version 10.0.17134 BUILD 17134
Virtualization and WSL have both been enabled if relevant.

@runewake2 I have a VM here, Windows 10 Enterprise Version 1803 Build 17134.285. I have no 'View configured update policies' option. I have All Settings -> Update & Security -> Windows Update
Are you connected to a domain? Unlikely but I'm going to ask.

No, you'll only see View configured update policies if you have a group policy enabled (see original post for image). A group policy was created for my PC after running this tool which controls my automated updates now.

I've seen a similar problem where Windows thinks there is a group policy
enabled (even though my computer is not on a domain so technically can't
have any group policies). Let me see if I can dig up the steps I used to
make that go away...
David
On Mon, 26 Nov 2018 at 06:22, Sam Wronski<EMAIL_ADDRESS>wrote:

No, you'll only see View configured update policies if you have a group
policy enabled (see original post for image). A group policy was created
for my PC after running this tool which controls my automated updates now.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/chocolatey/boxstarter/issues/371#issuecomment-441467589,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAXe60BJKq4CTwXfbaHm_0hNEsrlwApdks5uyvUUgaJpZM4Yxuuv
.

@runewake2 Boxstarter doesn't create any group policy. As you can see in the code that it runs to stop Windows Updates from applying doesn't do any of that.
On that Windows 10 VM I spun up I can't see any Group Policy mentions.
My only suggestion is to run gpedit.msc from a command prompt and look at Local Computer Policy -> Computer Configuration -> Administrative Templates -> Windows Components -> Windows Update - all of these are Not Configured.

In my case (similar error message but pretty sure it wasn't triggered by
Boxstarter), I followed these steps and the problem resolved.
https://www.drivereasy.com/knowledge/solved-how-to-fix-some-settings-are-managed-by-your-organization-error-on-windows-10/
David
On Mon, 26 Nov 2018 at 07:38, Paul Broadwith<EMAIL_ADDRESS>wrote:

@runewake2 https://github.com/runewake2 Boxstarter doesn't create any
group policy. As you can see in the code that it runs to stop Windows
Updates
https://github.com/chocolatey/boxstarter/blob/master/Boxstarter.Bootstrapper/Stop-UpdateServices.ps1
from applying doesn't do any of that.
On that Windows 10 VM I spun up I can't see any Group Policy mentions.
My only suggestion is to run gpedit.msc from a command prompt and look at Local
Computer Policy -> Computer Configuration -> Administrative Templates -> Windows
Components -> Windows Update - all of these are Not Configured.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/chocolatey/boxstarter/issues/371#issuecomment-441473413,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAXe64KSP_zE8FXsqzVZk82r553tbRelks5uywbggaJpZM4Yxuuv
.

I'm also experiencing this. There's nothing in gpedit.msc that's enabled relating to windows update, but windows update has been permanently disabled in the same fashion as OP

I'm unsure exactly which, but either deleting the GPO files as per
RD /S /Q "%WinDir%\System32\GroupPolicyUsers"
RD /S /Q "%WinDir%\System32\GroupPolicy"
gpupdate /force
And/or fiddling about with the GPO registry keys and deleting it there, then restarting fixed it

:')

To add onto my previous comment, restarting 2+ times (I'm currently still installing it) should not be needed to install something.

Sorry for all this spam but as it turns out they get activated again.
After finishing the installation they got turned back on and I was able to check for updates once again.
I'm not sure if this is still happening to some people but I'd assume that this is done and would suggest closing this Issue to prevent more spam from People like me

@codepupper thank you for the update.  As you have found out, if you leave the Boxstarter process to complete, your system will be put back to the state that it was in before the process started.  Part of the issues that we have seen being raised is that people are terminating the Boxstarter process before it has had a chance to finish, and therefore it is being left in a unfinished state.

@runewake2 @20k @codepupper @pauby @flcdrg @mwallner The latest version of the NodeJS installer no longer makes use of Boxstarter.  Instead, it uses Chocolatey directly to install the required applications.  This approach runs the risk of applications not being able to install correctly due to a requirement for a reboot to install remaining applications, but it does mean that your system will not automatically restart, or alter your system configurations in terms of temporarily disabling Windows Updates, as well as UAC.  If you are interested, I uploaded a video showing the new end to end process for the Node JS installation using Chocolatey here:
https://youtu.be/OgJBFSfsRP0

@gep13 Yeah, I'm aware of that. I'm assuming the last issue raised here was from an old installer as @codepupper is not aware of every having installed them directly.

I just downloaded the latest installer from Nodejs' website and was worried that I would not be able to update. I had heard of this mistake before but completely forgot about it when I installed it

@gep13 said:
Part of the issues that we have seen being raised is that people are terminating the Boxstarter process before it has had a chance to finish, and therefore it is being left in a unfinished state.

I am having the exact same problem, I had left my PC to finish the installation and reboot as many times as it wanted, and I didn't touch anything, so why is mine in this state?
Is there anything I can do to fix this or should I reinstall Windows? I am using Win 8.1.

@20k
I'm unsure exactly which, but either deleting the GPO files as per
RD /S /Q "%WinDir%\System32\GroupPolicyUsers"
RD /S /Q "%WinDir%\System32\GroupPolicy"
gpupdate /force
And/or fiddling about with the GPO registry keys and deleting it there, then restarting fixed it

Could you tell me what keys you deleted? Will this have an effect on my computer?

I had installed an older version which used Boxstarter, I can't remember now as I used the uninstaller provided to delete it, unfortunately :neutral_face:

@PCTipsGR See the comments in this issue and also see the linked issues on #378 (that issue itself only links to others at the moment). We'd appreciate any feedback on the uninstall process which we're going to document.

As this issue relates to the NodeJS installer which is no longer being used for Boxstarter, and the issue not been updated in 3 months, I will close it. We can always re-open again in the future if needed.

In my case (similar error message but pretty sure it wasn't triggered by
Boxstarter), I followed these steps and the problem resolved.
https://www.zmdrivers.com/

In my case (similar error message but pretty sure it wasn't triggered by
Boxstarter), I followed these steps and the problem resolved.
https://www.zmdrivers.com/

Laptop Driver


Macros

macro subleq($a:address, $b:address, $c:address) {
    asm {
        subleq $a, $b, $c
    }
}

subleq!(a, b, c)

https://github.com/Vurv78/mic1/commit/c3d4a6d2ca6bf9cb26618bdd55e6138731268d82


[chore] shift course calendar events if course dates were shifted outside app

Description
LEARNER-8403
As a user, I want my device calendar to update if course dates are changed outside the mobile app
How to test this PR

[ ] If syncing is on and course access is not expired, after opening the app and being authenticated, if course dates do not match what is the user's calendar, the app presents a native alert to confirm modifying the calendar events, or to remove the calendar and stop syncing.  (See Figma link below.)

Title: Your course calendar is out of date
Description: Your course dates have been shifted and your course calendar is no longer up to date with your new schedule.
Buttons: Update now | Remove course calendar

[ ] Confirming modifying course events edits the dates/times of the calendar events to reflect the new dates/times on the Course Dates page.  Event changes are visible in the calendar.
[ ] Choosing the remove calendar/stop syncing option is equivalent to turning the sync toggle off (removes the calendar and stops syncing)
[ ] Confirmation toast is displayed on the course dashboard if modifying the calendar is successful.  Same toast we already show, but with different copy: Your course calendar has been updated.
[ ] Confirmation toast is displayed on the course dashboard if removing the calendar is successful.  Same toast we already show, with the same copy: Your course calendar has been removed. (No Shift Dates toast will be displayed)
[ ] If syncing is off or course access is expired, no alert is presented and no events are updated.

@mumer92 The code is not compiling at my end and it failing with the error Reference to property datesShifted in closure requires explicit use of 'self' to make capture semantics explicit. Can you please recheck it?

@saeedbashir  i have fixed the issue.


Help to start off with Varnish

Issue Type

Support Request

Your Environment
Vagrant 2.0.1 (impossible to get more)

Your OS

Windows (7)

Summary
Hi
I dont know where I can access the varnish admin page. I tried drupalvm.test:81 but it simply display my website homepage. I searched also for some default.vcl in the VM but couldn't find any. Could you tell me the first steps to begin please ?

@artatum Varnish doesn't have and admin console see https://stackoverflow.com/questions/23316454/how-do-i-access-varnish-admin-area

Thx for the link. Sorry for the duplicate...


fix: Set toBeInTheDocument and toContainElement to be nullable

What:

Set toBeInTheDocument and toContainElement to allow null and undefined.
Adjusted response to make the failing text clearer

Why:
On issue #46, expressed the desire to be able to use null in toBeInTheDocument and toContainElement. This is useful when querying for elements that could result in null. It allows code like the following:
// queryByText('Loading...') = null;
expect(queryByText('Loading...')).not.toBeInTheDocument()
expect(container).not.toContainElement(queryByText('Loading...'))

Instead of:
expect(queryByText('Loading...').toBeNull();

How:

Updated the elements in the matchers to be conditional
Updated the matching text to make it clearer
Updated the types to allow null and undefined

Checklist:

[x] Documentation
[x] Tests
[x] Updated Type Definitions
[x] Ready to be merged
[x] Added myself to contributors table N/A

Looks like the build is failing due to localStorage is not available for opaque origins. I just saw this in my projects and it's caused by a JSDOM upgrade. Setting "testURL": "http://localhost/" in the jest config fixes it.

@jgoz Updated element validation logic to what we discussed.

If we add that example, it should be using document.querySelector. queryByTestId is a dom-testing-library-specific api, and I'd prefer the README to be more oriented to the general use case.

@gnapse Good point. The existing examples use queryByTestId, which is why I suggested it. But I agree with you.

Yes, I suspected that we may have some uses here and there. That's something I've been meaning to take care of. Not a big deal anyway.

Sounds good! My aim is to add the null example in the readme.md (using document.querySelector) by tonight. @jgoz and @gnapse, if you see any other changes you would like let me know. Thanks for letting me be part!

For the current time, I matched the tests to the surrounding code to make it consistent.

@gnapse Just to make sure fix: sets it as a non-breaking change, where feat: is a breaking change?
I don't think we came to the conclusion:
https://github.com/gnapse/jest-dom/issues/46#issuecomment-409282459
I was thinking we should be safe and make it a breaking change, However, @jgoz made a great point:

If you go by the type definitions, it is not a breaking change since it would simply involve allowing null and undefined where they were previously not allowed. Also, any previously usages of toContainElement(null) would be throwing errors, so it's unlikely that they are being used.

But feat: are not breaking changes. feat: just increases the minor version number, e.g. 1.11.1 would be followed by 1.12.0.
A breaking change would make 1.11.1 be followed by 2.0.0. And to do one, it's not enough with the prefix in the commit message. You'd have to include the words BREAKING CHANGE in the merge commit message. That's it not what I'm thinking.
I think this is a new feature, not a breaking change. A new feature is anything that introduces a new API, or adds a new capability to an existing API, without changing the current valid uses of any API. In this case I agree with @jgoz that this is not a breaking change, because these matchers didn't accept null as an argument, and now the do. So no one could've been using them in that way anyway.

I am good with whatever you think @gnapse on this!

:tada: This PR is included in version 1.12.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


miniupnpc_2: 2.1 -> 2.1.20190210

Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/miniupnpc/versions.
meta.description for miniupnpc_2 is: '"A client that implements the UPnP Internet Gateway Device (IGD) specification"'.

Checks done (click to expand)

built on NixOS
Warning: no invocation of /nix/store/dvfr1bfyrvlh7s0aljxbyji60r79vldw-miniupnpc-2.1.20190210/bin/upnpc had a zero exit code or showed the expected version
/nix/store/dvfr1bfyrvlh7s0aljxbyji60r79vldw-miniupnpc-2.1.20190210/bin/external-ip passed the binary check.
1 of 2 passed binary check by having a zero exit code.
0 of 2 passed binary check by having the new version present in output.
found 2.1.20190210 with grep in /nix/store/dvfr1bfyrvlh7s0aljxbyji60r79vldw-miniupnpc-2.1.20190210
directory tree listing: https://gist.github.com/53d6fac0e04a9d68314f61839bb80a90
du listing: https://gist.github.com/c304cc9f6d63cccf0c36b3b3965aeb78

Rebuild report (if merged into master) (click to expand)

27 total rebuild path(s)
8 package rebuild(s)
8 x86_64-linux rebuild(s)
8 i686-linux rebuild(s)
4 x86_64-darwin rebuild(s)
7 aarch64-linux rebuild(s)
First fifty rebuilds by attrpath
altcoins.bitcoin
altcoins.bitcoind
altcoins.particl-core
altcoins.wownero
bitcoin
bitcoinarmory
miniupnpc_2
particl-core

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/dvfr1bfyrvlh7s0aljxbyji60r79vldw-miniupnpc-2.1.20190210 \
  --option binary-caches 'https://cache.nixos.org/ https://r-ryantm.cachix.org/' \
  --option trusted-public-keys '
  r-ryantm.cachix.org-1:gkUbLkouDAyvBdpBX0JOdIiD2/DP1ldF3Z3Y6Gqcc4c=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(r-ryantm's Cachix cache is only trusted for this store-path realization.)
Or, build yourself:
nix-build -A miniupnpc_2 https://github.com/r-ryantm/nixpkgs/archive/dfb08610d2fddaf8a44b9042203fc4c5949ed13e.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/dvfr1bfyrvlh7s0aljxbyji60r79vldw-miniupnpc-2.1.20190210
ls -la /nix/store/dvfr1bfyrvlh7s0aljxbyji60r79vldw-miniupnpc-2.1.20190210/bin

Changelog: http://miniupnp.free.fr/files/changelog.php?file=miniupnpc-2.1.20190210.tar.gz
Seems we should bump miniupnpd at the same time, for consistency,
and the changes there are pretty compelling I think:
http://miniupnp.free.fr/files/changelog.php?file=miniupnpd-2.1.20190210.tar.gz

--> #61363


Revert "Ignore broken group DMs"

This reverts commit fe1b78f47f97f999a301549d17dcbd782f368aba.
This is due to the fact that Group DMs with no recipients means that they include the user, which is not included in the recipients list.
This may break another element, but that's unlikely and we will only find out later.
fixes #5

LGTM. Can you PR a version bump for gtkcord4 as well?

Sorry, i can't do that as i am unable to test building gtkcord4 from source, which is why i can't bump the ningen version it uses.
But i will ask for you to please bump the arikawa version to 3.3.1 for new applications (such as discordo, gtkcord4, and bots) to support the new display username system without needing to fetch arikawa down to the specific commit the feature was added.

If the upstream module (e.g. discordo, gtkcord4, etc.) use Arikawa v3.3.1, then that is the version used by ningen in that module. The top-level module gets to decide the version as long as the major version is the same.

Ah i see, but wouldn't arikawa and ningen need a version bump for new applications to support display names easily and fix this issue? or only the application needs to get go get -u'd ?

Only the application should need to do that.

Also as a side note, when you PR changes to gtkcord4, the pipeline might run and build the binary for you.


BREAKING CHANGE!: Product detail's feedbacks

What's changes:

Feedbacks pagination.
Feedbacks filter by star.


Support for GHC 9.6.4

How is hard to do? The source code seems to have evolved significantly since the last PR on the GHC bump, so it's not very clear how to do that. Just bumping haskell.nix didn't work for me.

Shouldn't be too hard. @yvan-sraka can you please take a Quick Look at this? Should really jsut be Haskell.nix bump plus ironing out remaining issues.


Refactoring 2.0

The logging currently uses a lot of space. It would be good to do it like pnpm for example. As well, there is a lot of stuff which should be done differently.

Use https://www.npmjs.com/package/archiver for Jaring the files. It's much more versatile instead of jszip.

Done!


Leading backslash in class name

Should I use a leading backslash in class name when register new class:
$container->add('\SomeNS\ClassName');
instead of:
$container->add('SomeNS\ClassName');
What's difference?

Either will work fine

in this example:
interface RepositoryInterface {}
class Repository implements RepositoryInterface {}
class Controller
{
    function __construct(RepositoryInterface $repo) {
    }
}

$container = new League\Container\Container;
$container->add('RepositoryInterface', 'Repository');
$controller = $container->get('Controller');

if i use
$container->add('\RepositoryInterface', '\Repository')
instead of:
$container->add('RepositoryInterface', 'Repository')
it will cause a fata error.

Well in this example you're allowing the container to try to resolve the dependency automatically where the leading namespace separator will not work. But if you define the controller with it's dependency then it will work.

$container->add('Controller')->with argument('\RepositoryIntetface');

—
Sent from Mailbox
On Sat, Jul 11, 2015 at 4:16 AM, FreeCoder<EMAIL_ADDRESS>wrote:

in this example:
interface RepositoryInterface {}
class Repository implements RepositoryInterface {}
class Controller
{
    function __construct(RepositoryInterface $repo) {
    }
}
$container = new League\Container\Container;
$container->add('RepositoryInterface', 'Repository');
$controller = $container->get('Controller');

if i use
$container->add('\RepositoryInterface', '\Repository')
instead of:
$container->add('RepositoryInterface', 'Repository')
it will cause a fata error.
Reply to this email directly or view it on GitHub:
https://github.com/thephpleague/container/issues/48#issuecomment-120566012


fix: declare variables which should not be managed by inline-snapshot

things which can be changed with the next inline-snapshot version to make clear who is responsible for the source code (inline-snapshot or the developer).

I don't understand this. What's the difference between Is(foo) and foo when foo is a variable name?

@alexmojaki, you are fast :smile:.
I published this to show what I'm currently working on https://github.com/15r10nk/inline-snapshot/issues/123.
This makes only sense if you know that Is(...) will be a part of the next inline-snapshot version which allows the developer to take back control and to change code inside snapshots.
This makes it explicit who controls the source code and inline-snapshot will no longer try to change you code back with "update".
The value inside Is(...) can also change if the snapshot is evaluated multiple times and allow some constructs which are not possible today.

thanks, personally I think this looks good, but @alexmojaki and @Kludex mostly maintain this repo, so it's up to them.

Closing because I think the underlying issue about long reports is resolved with the newest inline-snapshot and I don't think it's worth fixing merge conflicts here.


Add pause when waiting for EV change

Add pause when waiting for EV change if the segment isn't present in
the EV. This avoids hammering ZK in certain conditions (eg. waiting
for EV change when all servers for a given segment are offline).

Current coverage is 64.26% (diff: 0.00%)

No coverage report found for master at 0bc4d04.

Powered by Codecov. Last update 0bc4d04...be23b7e

@jfim is this good to get merged?

Yeah, it's just something I noticed, if a segment isn't in EV when we're waiting for it to change, it fails the if condition and tries to fetch it again in a tight loop. This adds a small pause between fetches so that we avoid causing issues with ZK.

Oh didn't notice the approval, I'll merge it now :)


feat: adding unit tests for InlineHelp ,MacWindow , Newsletter , Profile ,Remember and Warning components

Description

In this PR , I have included the tests for some small UI components in the website , these components are present in the standalone files in the website . Following are the standalone files for which I have included the tests for :

1. InlineHelp.js : This is a toggle / hover component where when we hover on the Question Mark Icon , a helper text appears . The tests I have included here are as follows   :

toggles help text visibility on click and hover

2. MacWindow.js : In this component , a MAC like UI has to appear , the tests I have included here are as follows :

renders the component props

3. NewsletterSubscribe :  In this component , I have added the following tests  :

renders the component with props

4.Profile :  For this profile component , I have added the following tests :

renders null when profiles array is empty
renders profile links and names when profiles array is not empty

5. Remember :  I have included following tests for this component  :

renders the component with the provided title and children
renders the component with default title and no children

6. Warning : I have included following tests for this component :
-renders the component with the provided title and description

Related issue(s)
fixes #1826

@reachaadrika Kindly update the PR title related to changes inside PR

/rtm


fix: create task definition before destroying the existing one

what

Added create_before_destroy to the task definition

why

Currently, when applying the state fails you will be left out with a task definition

/test all

hi @syphernl. Thanks for the contribution. We're still waiting for the new sg module 0.4.0 to be used with this repo before this repos code is unfrozen. Please wait for us to complete that before we merge this pr.

@nitrocode @aknysh create_before_destroy is a breaking change. It can be folded into the Security Group 0.4.0 upgrade, but please assess the cost/benefit of the change before introducing it, and provide a migration strategy suitable for a live production environment.

@nitrocode @Nuru Any updates on this one?


how to define customized user fields?

you just set email, but we want to set phone and other fields of user. how should we do?

I believe that you can specify any property that you want when you call an analytics function. For example:
analytics.track("Sign up", {
  username: "foo",
  phone:<PHONE_NUMBER>,
  email<EMAIL_ADDRESS>});

I believe it's specific to which analytics tracker you're using (google analytics, mixpanel, etc). I would look at the (analytics.js)[https://segment.com/docs/libraries/analytics.js/] documentation for more info.


feat(checkbox): add new color aliases and focus color fixes

Description
refactor(checkbox): add color alias tokens and correct some colors for focus and hover

Adds new color alias tokens from CSS-472 and implements them. Focus token was previously commented out.
* neutral-background-color-selected-default
* neutral-background-color-selected-hover
* neutral-background-color-selected-down
* neutral-background-color-selected-key-focus
Fix some focus and hover color related bugs in prod:

non-emphasized default showing blue border on focus and hover instead of grey
emphasized, unchecked showing blue border on focus and hover
emphasized, indeterminate showing grey after click

Changed psuedo :focus-ring from old spec to :focus-visible (a find replace for the generated .focus-ring class was already being done in the SWC version of the component, replacing it with :focus-visible). Checkboxes should now show their focus indicator when tabbed into in Storybook.

fix(checkbox): high contrast mode updates and remove deprecated
Update to match previous WHCM behavior after styles update, and some needed system color updates noticed while looking at that code.

Focus color update to match with modified styles.
Background system color is deprecated; replace with Canvas.
Default text of label should be CanvasText, it is not on top of a background with ButtonFace.
Focus indicator color custom property was repeated in the same style rule, and was using FieldText when not on top of a matching Field background pair. Replaced with CanvasText as this should be appearing on top of default Canvas.

There are some additional WHCM changes that should probably be made to align with the W3C spec on system color pair usage, which I will leave for a future update (guideline language may also need to change as it relates to that).
How and where has this been tested?
Please tag yourself on the tests you've marked complete to confirm the tests have been run by someone other than the author.
Some validation instructions:

New color tokens

[x] Confirm that 4 new alias tokens are defined and used in the CSS (@mlogsdon18)

Confirm wrong color behavior in prod is fixed. Open the PR docs for the checkbox component

[x] Standard, Default, unchecked - hover over box and it should show darker grey color border (not blue) (@mlogsdon18)
[ ] Emphasized, Default, unchecked + checked + indeterminate - tab focus to element, box should show grey border
[ ] Emphasized, Default, unchecked + checked + indeterminate - hover over element, box should show grey border
[x] Emphasized, Default, indeterminate - click checkbox. it should not turn grey. (@mlogsdon18)

Confirm correct colors appear in all states. See following grid for reference:

[x] Look over docs examples for default, invalid, disabled, read-only for any inconsistencies (@mlogsdon18)
[x] Tab focus through all default and invalid checkboxes for Standard and Emphasized and confirm that colors are correct (note: focus & hover color is slightly darker than default color). (@mlogsdon18)
[x] Hover over all checkboxes for Standard and Emphasized and confirm that colors are correct. (@mlogsdon18)
[x] Click all checkboxes for Standard and Emphasized and confirm that colors are correct. (@mlogsdon18)

Windows High Contrast Mode / forced-colors mode

[x] Confirm that colors still look the same as prod by default (@mlogsdon18)
[x] Confirm that colors still look the same as prod when tab focusing each checkbox (@mlogsdon18)
[ ] Confirm that colors still look the same as prod when hovering each checkbox

Regression testing
Validate:

A legacy documentation page (such as accordion), including:

[ ] The page renders correctly
[ ] The page is accessible
[ ] The page is responsive

A migrated documentation page (such as action group), including:

[ ] The page renders correctly
[ ] The page is accessible
[ ] The page is responsive

To-do list

[x] I have read the contribution guidelines.

[x] I have updated relevant storybook stories and templates.

[x] I have tested these changes in Windows High Contrast mode.

[ ] If my change impacts other components, I have tested to make sure they don't break.

[ ] If my change impacts documentation, I have updated the documentation accordingly.

[ ] ✨ This pull request is ready to merge. ✨

Just a few minor things that may or may not be issues:

There was a TODO still in the index.css about using font-weight tokens. Can that be removed?
In WHCM in prod, Emphasized Default does not change color on hover, but it does in your PR. I feel like it should change color like your PR is doing but wanted to point out that difference
The emphasized checked and indeterminate states have a blue border on focus-visible and hover, not gray like you said, but again I think this is how it is supposed to be, just wanted to point out the difference

Just a few minor things that may or may not be issues:
* There was a TODO still in the index.css about using font-weight tokens. Can that be removed?

I'm not sure about that one. I don't see the weight or style set yet, so it may still have to be done? I don't have the context for why it was left as a TODO. Something to look into for a followup update perhaps (@pfulton).

* In WHCM in prod, Emphasized Default does not change color on hover, but it does in your PR. I feel like it should change color like your PR is doing but wanted to point out that difference

An unintended fix :) Yeah, it does look like this is how it should behave. I see that the non-emphasized in prod does show the hover color in WHCM.

* The emphasized checked and indeterminate states have a blue border on focus-visible and hover, not gray like you said, but again I think this is how it is supposed to be, just wanted to point out the difference

Yes, that's right. I updated the validation instructions for the two you hadn't checked yet; those had been worded wrong.


#4409 followup. Missing templates updates

Problem
The current gen/ folder are out of sync with the templates from src/app/zap-templates.
Some of the changes introduced in #4409 has been handcrafted and the templates have not been updated.
Summary of Changes

Fix the templates so the code can be generated again.

For the record. I first tried to split types.xml but it immediately led to another issue where the templates on the fact that Status is part of the database for determining the underlying type of clusters commands that uses it.
So I end up with this version that keep it into the db but filters it out from beeing generated in enums.h

For the record. I first tried to split types.xml but it immediately led to another issue where the templates on the fact that Status is part of the database for determining the underlying type of clusters commands that uses it.
So I end up with this version that keep it into the db but filters it out from beeing generated in enums.h

@saurabhst @jelderton @BroderickCarlin @hawk248 ?

@saurabhst @jelderton @BroderickCarlin @hawk248 ?


MF1 board ,output is red screen

I found the issue After flashing MF1.bin to the board MF1 ,output is red screen on the screen. I follow the instruction and send an email with key to<EMAIL_ADDRESS>but nothing feedback. Where can I download MF1 firmware?

Hello, what's your email address

Hello, what's your email address

My email is<EMAIL_ADDRESS>

I got support by<EMAIL_ADDRESS>


syntax error when parsing DWARF info

Trying to run

.version 7.5
.target sm_35
.address_size 64

        // .globl       E__012

.visible .entry E__012(
        .param .u64 E__012_param_0,
        .param .u64 E__012_param_1,
        .param .u64 E__012_param_2
)
.maxntid 128, 1, 1
{
        .reg .pred      %p<4>;
        .reg .b32       %r<5>;
        .reg .f32       %f<4>;
        .reg .b64       %rd<4>;
        .loc    1 5 0
$L__func_begin0:
        .loc    1 5 0

        ld.param.u64    %rd3, [E__012_param_0];
        ld.param.u64    %rd1, [E__012_param_1];
        mov.pred        %p1, -1;
$L__tmp0:
        .loc    1 6 19
        mov.u32 %r1, 0x0;
        @%p1 ld.global.b32 { %r1 }, [ %rd1 + 0 ];
        mov.b32         %f1, %r1;
        ld.param.u64    %rd2, [E__012_param_2];
        .loc    1 7 19
        mov.u32 %r2, 0x0;
        @%p1 ld.global.b32 { %r2 }, [ %rd2 + 0 ];
        mov.b32         %f2, %r2;
        .loc    1 8 18
        add.f32         %f3, %f1, %f2;
        .loc    1 9 22
        mov.u32         %r4, %tid.x;
        setp.eq.s32     %p3, %r4, 0;
        mov.b32         %r3, %f3;
        @%p3 st.global.b32 [ %rd3 + 0 ], { %r3 };
        .loc    1 9 2
        ret;
$L__tmp1:
$L__func_end0:

}
        .file   1 "/tmp/fdd8645ffd4a0efbff44b049ab8c6846.py"
        .section        .debug_abbrev
        {
.b8 1
.b8 17
.b8 1
.b8 37
.b8 8
.b8 19
.b8 5
.b8 3
.b8 8
.b8 16
.b8 6
.b8 27
.b8 8
.b8 180
.b8 66
.b8 12
.b8 17
.b8 1
.b8 18
.b8 1
.b8 0
.b8 0
.b8 2
.b8 46
.b8 0
.b8 17
.b8 1
.b8 18
.b8 1
.b8 64
.b8 10
.b8 135
.b8 64
.b8 8
.b8 3
.b8 8
.b8 58
.b8 11
.b8 59
.b8 11
.b8 63
.b8 12
.b8 0
.b8 0
.b8 0
        }
        .section        .debug_info
        {
.b32 116
.b8 2
.b8 0
.b32 .debug_abbrev
.b8 8
.b8 1
.b8 116
.b8 114
.b8 105
.b8 116
.b8 111
.b8 110
.b8 0
.b8 2
.b8 0
.b8 102
.b8 100
.b8 100
.b8 56
.b8 54
.b8 52
.b8 53
.b8 102
.b8 102
.b8 100
.b8 52
.b8 97
.b8 48
.b8 101
.b8 102
.b8 98
.b8 102
.b8 102
.b8 52
.b8 52
.b8 98
.b8 48
.b8 52
.b8 57
.b8 97
.b8 98
.b8 56
.b8 99
.b8 54
.b8 56
.b8 52
.b8 54
.b8 46
.b8 112
.b8 121
.b8 0
.b32 .debug_line
.b8 47
.b8 116
.b8 109
.b8 112
.b8 0
.b8 1
.b64 $L__func_begin0
.b64 $L__func_end0
.b8 2
.b64 $L__func_begin0
.b64 $L__func_end0
.b8 1
.b8 156
.b8 69
.b8 95
.b8 95
.b8 48
.b8 49
.b8 50
.b8 0
.b8 69
.b8 95
.b8 95
.b8 48
.b8 49
.b8 50
.b8 0
.b8 1
.b8 5
.b8 1
.b8 0
        }
        .section        .debug_pubnames
        {
.b32 $L__pubNames_end0-$L__pubNames_start0
$L__pubNames_start0:
.b8 2
.b8 0
.b32 .debug_info
.b32 120
.b32 83
.b8 69
.b8 95
.b8 95
.b8 48
.b8 49
.b8 50
.b8 0
.b32 0
$L__pubNames_end0:
        }
        .section        .debug_pubtypes
        {
.b32 $L__pubTypes_end0-$L__pubTypes_start0
$L__pubTypes_start0:
.b8 2
.b8 0
.b32 .debug_info
.b32 120
.b32 0
$L__pubTypes_end0:
        }
        .section        .debug_loc      {       }

results in ocelot throwing
terminate called after throwing an instance of 'parser::PTXParser::Exception'
  what():
Failed to parse file '':
43      setp.eq.s32     %p3, %r4, 0;
44      mov.b32         %r3, %f3;
45      @%p3 st.global.b32 [ %rd3 + 0 ], { %r3 };
46      .loc    1 9 2
47      ret;
48 $L__tmp1:
49 $L__func_end0:
50
51 }
52      .file   1 "/tmp/fdd8645ffd4a0efbff44b049ab8c6846.py"
53      .section        .debug_abbrev
54      {
55 .b8 1
56 .b8 17
57 .b8 1
58 .b8 37
59 .b8 8
60 .b8 19
61 .b8 5
62 .b8 3
63
 (53, 5):  syntax error
Aborted (core dumped)

Hi @SzymonOzog , thanks for this report. I haven't ever seen debug information being included into the PTX code. Moreover, I don't think the .section clause is even supported. Classic PTX standard does not include these features. What is the source if this generation? Is it cupy or something?

It's generated by triton compiler - https://github.com/openai/triton

Thanks, so Triton is something like Numba.
PTX standard has evolved over time. What is being supported now could have been introduced just recently. GPUOcelot does not support the most recent PTX standard. Solution is either to add support, or to remove unsupported features from the code.
I'm pretty sure in your case the debug information is irrelevant, and you can safely remove all sections.

When I tried removing the DWARF info I recieved SegmentationFaults for the code that was running correctly on the GPU, I'll triple check for errors later because I don't have access to the code atm but the same code is used for allocations and testing of both cuda compiled with pycuda and self generatex PTX without any issues

OK, here is the first thing to observe. GPUOcelot makes your PTX code to run on CPU (not on GPU). Although the kernel is now running on CPU, you may still have the GPU memory allocated, and passing its pointers down to now-CPU kernel. Obviously, this will segfault.

Hi, the buffers passed are cpu buffers, here is the minimum reproducable example
the code used to generate this ptx was
import triton
import triton.language as tl
tl.core.TRITON_MAX_TENSOR_NUMEL = float('inf')
@triton.jit
def E_(data0,data1):
  val1_0 = tl.load(data1 + 0, mask = 0<1).to(tl.int32)
  alu0 = ((val1_0+val1_0)).to(tl.int32)
  tl.store(data0 + 0, alu0, mask = 0<1)

prg = """.version 7.5
.target sm_35
.address_size 64

        // .globl       E__01

.visible .entry E__01(
        .param .u64 E__01_param_0,
        .param .u64 E__01_param_1
)
.maxntid 128, 1, 1
{
        .reg .pred      %p<3>;
        .reg .b32       %r<4>;
        .reg .b64       %rd<3>;
        .loc    1 6 0
$L__func_begin0:
        .loc    1 6 0

        ld.param.u64    %rd2, [E__01_param_0];
        ld.param.u64    %rd1, [E__01_param_1];
        mov.pred        %p1, -1;
$L__tmp0:
        .loc    1 7 19
        mov.u32 %r1, 0x0;
        @%p1 ld.global.b32 { %r1 }, [ %rd1 + 0 ];
        .loc    1 8 18
        shl.b32         %r2, %r1, 1;
        .loc    1 9 22
        mov.u32         %r3, %tid.x;
        setp.eq.s32     %p2, %r3, 0;
        @%p2 st.global.b32 [ %rd2 + 0 ], { %r2 };
        .loc    1 9 2
        ret;
$L__tmp1:
$L__func_end0:

}"""

import ctypes, ctypes.util
lib = ctypes.CDLL(ctypes.util.find_library("gpuocelot"))
lib.ptx_run.argtypes = [ctypes.c_char_p, ctypes.c_int, ctypes.POINTER(ctypes.c_void_p), ctypes.c_int, ctypes.c_int, ctypes.c_int, ctypes.c_int, ctypes.c_int, ctypes.c_int]
args = [(ctypes.c_int32*1)(), (ctypes.c_int32*1)(10)]
bufs = (ctypes.c_void_p * len(args))(*[ctypes.cast(x, ctypes.c_void_p) for x in args])
lib.ptx_run(prg.encode('utf8'), len(args), bufs, 1,1,1,1,1,1)

Update, it seems to be the problem with passing the registers inside lists, replacing the code above with
.version 7.5
.target sm_35
.address_size 64

        // .globl       E__01

.visible .entry E__01(
        .param .u64 E__01_param_0,
        .param .u64 E__01_param_1
)
.maxntid 128, 1, 1
{
        .reg .pred      %p<3>;
        .reg .b32       %r<4>;
        .reg .b64       %rd<3>;
        .loc    1 6 0
$L__func_begin0:
        .loc    1 6 0

        ld.param.u64    %rd2, [E__01_param_0];
        ld.param.u64    %rd1, [E__01_param_1];
        mov.pred        %p1, -1;
$L__tmp0:
        .loc    1 7 19
        mov.u32 %r1, 0x0;
        @%p1 ld.global.b32  %r1 , [ %rd1 + 0 ];
        .loc    1 8 18
        shl.b32         %r2, %r1, 1;
        .loc    1 9 22
        mov.u32         %r3, %tid.x;
        setp.eq.s32     %p2, %r3, 0;
        @%p2 st.global.b32 [ %rd2 + 0 ], %r2 ;
        .loc    1 9 2
        ret;
$L__tmp1:
$L__func_end0:

}

makes it run just fine, I'm not an expert in PTX so I don't know if the list syntax is correct but CUDA seems to have no problem with it so I'm assuming it's a bug inside ocelot

What do you refer to by "lists"? There is no such thing as "list" in PTX. Have you changed the kernel assembly, or have you changed the CDLL dispatch code?

Hi, the lines that got changed were in the kernel assembly, specifically
@%p1 ld.global.b32 { %r1 }, [ %rd1 + 0 ];
to
@%p1 ld.global.b32  %r1 , [ %rd1 + 0 ];
and
@%p2 st.global.b32 [ %rd2 + 0 ], { %r2 };
to
@%p2 st.global.b32 [ %rd2 + 0 ], %r2 ;

Oh, I see now, thanks!
Still, I have no clue what is the meaning of { %r1 } syntax. According to the PTX ISA document, it does not seem to be mentioned anywhere. Where did you get it from, is it from a disassembly?

It's generated by the triton compiler and seems to actually be just like the initializer list from c++ https://docs.nvidia.com/cuda/parallel-thread-execution/index.html#initializers

Thank you, this is very interesting in many ways. Not only because initializers spec does not mention the use of registers. Not even because initializers within the load/store semantics are useless (there is nothing to initialize). Most of all I'm confused by the fact that the use of {} in loads/stores changes the meaning of argument from scalar to pointer immediate. Looks like someone was bored.

Trust me, I'm as puzzled by this as you are

https://stackoverflow.com/questions/77014973/the-meaning-of-brackets-around-register-in-ptx-assembly-loads-stores

I'm going to close this in favor of separate https://github.com/gpuocelot/gpuocelot/issues/20 and https://github.com/gpuocelot/gpuocelot/issues/21 issues.


Mention Teklia's fork

I added a link toward Teklia's fork, as the latest version of PyLaia is now developed over there.

SAL'D0 B0-NUS S'LL0T RE'B4TE 560RB KMU BERH4SIL DIPR0SESKAN! t.ly/tWZeR ST4R'L1GHT SLL'0T B4GI 960JT


Why are all the references of a single variable listed in the outline?

I am using pylsp and essentially if the source code references a variable on every line,
then the outline has the same length as the code itself. Which is not really an outline IMHO, but some sort of filtering.

Is this intentional? If yes, the why? Would it be possible to have an option to turn this off?

This is a LSP issue, consider switching to a different python lsp

I shall look around and compare results.

Did you find a more promising Python LSP?

Pyright seems to work correctly. It has most of the features from Pylsp I used except pydocstyle but using null-ls I was able to fill that in. Here's my lsp config directory if anyone also needs to do the same switch.

I have switched to jedi-language-server/, and the problem seased to exist.


Reach out to the Financial Sector

Woohoo! This is ticket #100.
Acceptance criteria:

[x] Add contacts to Contact Tracker document
[x] Reach out to project team for contact emails/introductions
[ ] Add emails for each to Contact Tracker
[ ] Write outreach email for financial sector
[ ] Send email to identified contacts

The following Financial contacts have been identified:

BMO Chief Sustainability Officer
RBC Director, Sustainable Finance
Investors for Paris Compliance
BCI Senior Managing Director ESG

Blocked by CF

Note: not completed during initial research and discovery phase. Removed from External Research EPIC to capture in potential future work.

Closing this ticket as it's no longer relevant


Templating merge

refactored Monarch's code: generic file utilities to files.js, remove validators

changed project creation flow to prompt base

project name -> optional. defaults to generic mintbean-hackathon-challenge-YYYY-MM-DD

added react-gh-pages template

renamed vanilla template to vanilla-js

closes #2 (using templating now)


Wiki's code snippets contain raw html special symbols

The page "Hello world" contains raw > and & symbols.

Fixed, thanks for reporting. :+1: :cat2:


Offload FCS to driver specific code

Related #151. Virtio driver should work to some degree after this. I tested TCP and some other basic networking that seems to work. PCNet should remain unchanged.

Tested locally and working w/ PCNet & virtio-net. Merging, thanks !


Default footer heading and content template is not used on create a release

Description
The default footer-heading and footer-content template for the create command is not used while creating a release.
Expected Behavior
The default footer-heading and footer-content template should be used without have them explicit uncomment in the config yaml file.
Actual Behavior
The footer-heading and footer-content properties must be uncomment in the config yaml file to include a footer in a release.
Steps to Reproduce

Create a new milestone
Cretate one or more issues, assign them a label and the milestone
Close the issues
The create: include-footer: true property must be set in the config yaml file
Execute the close command
Execute the create command

I would like to fix the bug and provide a PR.

@akordowski I am not sure about this suggested change.  Can you help me understand why you are suggesting this?
The current default is due to the fact that for most projects, I don't include either of these two things.  As a result, I can quickly setup GRM without having to switch these values off.  This would also be a breaking change in the implementation, so I am hesitant to move forward with this one unless there is a really good reason.

When I use the yaml config below, the SHA section and the issue comments are added, but the footer not. Therefore I was expecting that the footer is included aswell without having footer-heading and footer-content uncommented in the config.
Footer not included
create:
  include-footer: true
#  footer-heading: Where to get it
#  footer-content: >-
#    You can download this release from
#
#    [chocolatey](https://chocolatey.org/packages/chocolateyGUI/{milestone})
  include-sha-section: true
#  sha-section-heading: SHA256 Hashes of the release artifacts
#  sha-section-line-format: '- `{1}	{0}`'
close:
  use-issue-comments: true
#  issue-comment: |-
#    :tada: This issue has been resolved in version {milestone} :tada:
#
#    The release is available on:
#
#    - [NuGet package(@{milestone})](https://nuget.org/packages/{repository}/{milestone})
#    - [GitHub release](https://github.com/{owner}/{repository}/releases/tag/{milestone})
#
#    Your **[GitReleaseManager](https://github.com/GitTools/GitReleaseManager)** bot :package::rocket:

Footer included
create:
  include-footer: true
  footer-heading: Where to get it
  footer-content: >-
    You can download this release from

    [chocolatey](https://chocolatey.org/packages/chocolateyGUI/{milestone})
  include-sha-section: true
#  sha-section-heading: SHA256 Hashes of the release artifacts
#  sha-section-line-format: '- `{1}	{0}`'
close:
  use-issue-comments: true
#  issue-comment: |-
#    :tada: This issue has been resolved in version {milestone} :tada:
#
#    The release is available on:
#
#    - [NuGet package(@{milestone})](https://nuget.org/packages/{repository}/{milestone})
#    - [GitHub release](https://github.com/{owner}/{repository}/releases/tag/{milestone})
#
#    Your **[GitReleaseManager](https://github.com/GitTools/GitReleaseManager)** bot :package::rocket:

Ah, I see what you are saying.
The reason for this is due to the fact that we can apply default values for each of the commented out values, for example:

sha-section-heading
sha-section-line-format
issue-comment

However, the same is not true for the footer section of the release notes.  This section is intended to be completely filled in my the consumer of GRM, and therefore sensible defaults cannot be applied.
Does that make sense?

I understand your point. I might be a bit nitpicking but for me the footer and the issue-comment seems to be pretty similar which is why I expected the described behavior.
I can imagine that the most GRM users deploys on NuGet, so would it not make sense to change the Chocolatey link with a NuGet link in the footer? So it would be consistent to the issue-comment and the default values could be used. Just a thought.

Just to make sure we are on the same page...
The default issue-comment is:
:tada: This issue has been resolved in version {milestone} :tada:

The release is available on:

- [GitHub release](https://github.com/{owner}/{repository}/releases/tag/{milestone})

Your **[GitReleaseManager](https://github.com/GitTools/GitReleaseManager)** bot :package::rocket:";

where as the sample (which appears in the yaml file) is the following:
:tada: This issue has been resolved in version {milestone} :tada:

The release is available on:

- [NuGet package(@{milestone})](https://nuget.org/packages/{repository}/{milestone})
- [GitHub release](https://github.com/{owner}/{repository}/releases/tag/{milestone})

Your **[GitReleaseManager](https://github.com/GitTools/GitReleaseManager)** bot :package::rocket:

These two things are not exactly the same, since we can't assume that the artifacts of the build are being pushed to NuGet, but we can assume that they are going to GitHub.
If we can come up with a sensible default for what would go into the footer section of the release notes, I am not against changing this, and making is used when one isn't provided in the yaml file.

Thanks for the clarification. I close the issue then.

@akordowski I just wanted to mention, if you ever wonder which settings that GRM will use, the you can run GitReleaseManager.exe showconfig.
This should give you the exact settings that GRM uses, including the default and your custom configurations.

Good to know, thanks!


Assignment 2

What changes are you trying to make? (e.g. Adding or removing code, refactoring existing code, adding reports)
==> Submitting Assignment-2
What did you learn from the changes you have made?
==> Understood and learned how to review 3rd party code, analyzed a problem and tried to troubleshoot by reviewing the code and analyzing the solution.
Was there another approach you were thinking about making? If so, what approach(es) were you thinking of?
==> Was also trying to see if I can write the alternative code to optimize the time and space complexity problem.
Were there any challenges? If so, what issue(s) did you face? How did you overcome it?
==> The alternative code was taking too long, and due to assignment submission deadline, have planned to do it afterwards.
How were these changes tested?
==> Within Jupyter notebook in VS Code
A reference to a related issue in your repository (if applicable)
Checklist

[ ] I can confirm that my changes are working as intended

Okay, thanks you @tianyi21


Update README with OpenShift and migration details

Recent work on this project revealed a couple new or missing details from from the README. Specifically, we need to define USER as an environment variable in OpenShift for yoyo-migrations to work properly. Also, we should add at least a sentence about specifying migration dependencies with yoyo.

Resolved by #27

Verified README contains details of yoyo-migrations.


Reorg foundation sops files and add OWNERS.

/assign @jnpacker
Hello, Joshua, please take a look at this PR, I updated the files directory and added an OWNERS file. Thanks!

/lgtm

/approve


Resolve script warnings

[user@ip-123-456-789-012 atz-replayflair]$ python readreplay.py
:0: UserWarning: The keyword `bot` in your user_agent may be problematic.
/usr/lib/python2.6/site-packages/praw/decorators.py:88: DeprecationWarning: reddit intends to disable password-based authentication of API clients sometime in the near future. As a result this method will be removed in a future major version of PRAW.

For more information please see:

* Original reddit deprecation notice: https://www.reddit.com/comments/2ujhkr/

* Updated delayed deprecation notice: https://www.reddit.com/comments/37e2mv/

Pass ``disable_warning=True`` to ``login`` to disable this warning.
  warn(msg, DeprecationWarning)
/usr/lib/python2.6/site-packages/requests/packages/urllib3/util/ssl_.py:90: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. For more information, see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning.
  InsecurePlatformWarning

Better now 20ce746232999bc8ef7761a265b3712f6da274f9

fixed 82387e744601376ff3e045c42c520886451f7276


Extremely high FPS on macOS Mojave

Probably vsync doesn't work well.

https://github.com/glfw/glfw/issues/1337

This doesn't affect game playing itself, but CPU powered is consumed unnecessarily.

Metal (#621) will solve this automatically. Mark 'won't fix'.


embed the text as well

can't see why we shouldn't have an option for encoding the text and putting that in the WDS

tasks:

[ ] add optional encode_text parameter
[ ] edit encode_chunk function (https://github.com/iejMac/clip-video-encode/blob/b14fbb57b464484d0443cfbc5c56a91bb52bbed3/clip_video_encode/clip_video_encode.py#L30) to encode the text if the encode_text parameter is True
[ ] add the optional text_emb param to all writer.write methods (https://github.com/iejMac/clip-video-encode/blob/main/clip_video_encode/writer.py) and write same way as frames

you can't save the caption embeddings in the current state but you could probably hack around the code (or make a clean PR! that would be great) and get it to do that since they are computed here - https://github.com/iejMac/clip-video-encode/blob/ff390b01091e9d93263d3cb4e8a747fb4143cc1d/clip_video_encode/clip_video_encode.py#L107
currently they aren't saved but instead they are just compared to each frame in the input video to get a similarity score per frame and that is saved

Thanks, I guess I'll be able to finish a pr in the future after getting my things done. By the way, is there embedded caption data for webvid? I only see video embeddings in huggingface.


chore: Remove RHTAP QE from IC

Description
Please include a summary of the changes and the related issue. Please also include relevant motivation and context. List any dependencies that are required for this change.
Issue ticket number and link
Type of change

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration
Checklist:

[ ] I have performed a self-review of my code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] I have added meaningful description with JIRA/GitHub issue key(if applicable), for example HASSuiteDescribe("STONE-123456789 devfile source")
[ ] I have updated labels (if needed)

[
{"username": "jinqi", "id": ""},
{"username": "msawood", "id": ""},
{"username": "rhopp", "id": ""},
{"username": "Pavel Sturc", "id": ""},
{"username": "Kasem Alem", "id": ""},
{"username": "Sushanta Das", "id": ""},
{"username": "Dheeraj", "id": ""},
{"username": "Alessandro Babrarossa", "id": ""},
{"username": "nshprai", "id": ""},
{"username": "Rafaela Soares", "id": ""}
]

@psturc Thank you! Wrong base branch. Thanks!

the job failure is related to KFLUXBUGS-17

/test redhat-appstudio-e2e


Standardize how we exit tests

Problem:
Currently we exit main() in unit tests with a mix of:
    END_TEST();
}

and
    END_TEST();
    return 0;
}

The former likely does not throw a compiler error as END_TEST() returns 0.
To follow both c and s2n conventions, we should update tests to return 0; at the end of main()
Furthermore, if END_TEST() were ever be updated to simply return;, our test suite would likely break.
Solution:

Add return 0; at the end of main() in unit tests that are currently missing it.
Optional: add a linter/style checker so we don't have to rely on tribal knowledge to not make the mistake again

Requirements / Acceptance Criteria:
Each unit test has been checked

Worth considering the pattern in fuzz tests from #2100


fix: telegraf kakfa ordered configuration

What this PR does / why we need it:
fix: telegraf kakfa ordered configuration

Does this PR need to be backport to the previous release branch?:

release/3.12
release/3.11
release/3.10

/cc @zexi @wanyaoqi @ioito

/lgtm


{Core} Fix #19183: Improve get GitHub latest version speed if no internet connection

Description

Fix #19183
The timeout of checking the latest version from GitHub is 10 seconds. The az -v command is extremely slow (20s) if no internet connection.
This PR fixes this issue. It takes about 2s now.
Testing Guide

Add <IP_ADDRESS> raw.githubusercontent.com in hosts, time az -v.
History Notes

[Component Name 1] BREAKING CHANGE: az command a: Make some customer-facing breaking change
[Component Name 2] az command b: Add some customer-facing feature

This checklist is used to make sure that common guidelines for a pull request are followed.

[ ] The PR title and description has followed the guideline in Submitting Pull Requests.

[ ] I adhere to the Command Guidelines.

[ ] I adhere to the Error Handling Guidelines.

Core


[Storage] Move rand to dev dependency

As title.

@bors-libra r+

:pushpin: Commit 5a725ff has been approved by msmouse

:hourglass: Testing commit 5a725ffae9df3ce07040fbad8390a36ecfd6e637 with merge 9ed252cffcf34e6f0f8a6d095607dd60f5cbf767...

:sunny: Test successful - checks-actions_land_blocking_test, checks-circle_commit_workflow
Approved by: msmouse
Pushing 9ed252cffcf34e6f0f8a6d095607dd60f5cbf767 to master...


v 0.1.1 -   fix hot-reload bug -   add excluedSelf in broadcast -   rename sample to example -   rename docs to doc

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.tino.wjf seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


Running a private reviewdog server

I'd like to be able to run a private reviewdog server, so that we can use the github-pr-check reporter against GitHub Enterprise. Do you have the source code and/or any documentation on the server?

Same here. It would be grat if you could open source the server part, so you can reduce load on your private server and we can integrate it into our infrastructure.

Now reviewdog can report via Check API if it's running on GitHub Actions. https://medium.com/@haya14busa/automated-code-review-on-github-actions-with-reviewdog-for-any-languages-tools-20285e04448e
I don't have a plan to support running a private reviewdog server considering GitHub Actions can solve this problem.

related #145

@haya14busa that doesn't solve the issue, as we don't have GitHub actions available on GitHub Enterprise.

Actually I already opened every code in this repository including the reviewdog server, but I don't recommend users to use it. Please feel free to use it at your own decision.
Also, GitHub Actions itself is beta for public GitHub too and they seem to extend it more and more. including enterprise usecases.

When I say GitHub Enterprise, I mean their on-premise GitHub server offering. According to a recent blog post, Actions won't be available there until next year.
I can poke around with the server in the meantime; I didn't realize it was already in the repo. I'm assuming this is it? https://github.com/reviewdog/reviewdog/blob/master/doghouse/appengine/main.go


Incomplete

Missing subcode 0x6000

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

ID: de955911-dfbf-33b3-778a-767a5a578a0d
Version Independent ID: 23fb5cbd-5f7d-f7ca-1622-5885020966c2
Content: Bug Check 0x1A MEMORY_MANAGEMENT - Windows drivers
Content Source: windows-driver-docs-pr/debugger/bug-check-0x1a--memory-management.md
Product: windows-hardware
Technology: debugger
GitHub Login: @DOMARS
Microsoft Alias: domars

@tcostin - Thanks for passing on that you are seeing a sub code  0x6000 for Bug Check 0x1A: MEMORY_MANAGEMENT
I have opened an internal work item to track this work, so closing this issue for now. We use a process to prioritize the most frequent bug checks out of the hundreds that are currently defined. With our limited documentation team resources, we use data to work on updates for the most common error codes that impact the largest number of users.
As you may be aware, much of memory failure troubleshooting is directed at finding and fixing, what is typically either a failed hardware memory component or a kernel mode driver that is not properly managing memory. The common tools are the Windows memory test and Driver Verifier. You may have success posting the specifics of your bug check issue in the following forums, where other driver developers and Microsoft engineers can be found. The community there is quite responsive.
•	Hardware and Application Developers on Q&A
Thank you for your interest in improving our stop code docs, and good luck troubleshooting this memory error.


Explicitly set "files" key in drush tasks.

By setting "files" separately from "args" and "cwd", these options can
be applied to each file that may be given in the task. A separate, but
identically configured Drush process is started for each destination
file.
Fixes #7.

Well. Never mind. Didn't realize there was a PR on this issue already.

Havent merged this specific PR, but have refactored based on your work (5e725032) - will be sure to mention you in the changelog once its stable. Thanks @IslandUsurper


⚠ Fortnite has degraded performance

In 24dac2a, Fortnite (https://fortnite.com) experienced degraded performance:

HTTP code: 200
Response time: 1586 ms

Resolved: Fortnite performance has improved in 536215a.


Create snapshot functionality

Uses httpClient to hit typesense api to initiate a snapshot of the cluster

Hi @DaneAffinity,
I've refactored a bit to match the rest of the code-base and I've also added a test. I'll merge it in.
// Rune

@DaneAffinity, it has now been released in version 6.11.0.

Awesome, cheers Rune 😁


Rechecking Sponsorblock segments on a previously downloaded video

DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE

[X] I understand that I will be blocked if I intentionally remove or skip any mandatory* field

Checklist

[X] I'm asking a question and not reporting a bug or requesting a feature
[X] I've looked through the README
[X] I've verified that I'm running yt-dlp version 2023.07.06 (update instructions) or later (specify commit)
[X] I've searched known issues and the bugtracker for similar questions including closed ones. DO NOT post duplicates
[X] I've read the guidelines for opening an issue

Please make sure the question is worded well enough to be understood
Hi
I use embedding for yt-dlp, and I wondered if there is a way to re-check sponsorblock segments for a video that I have already downloaded? Sometimes it happens that my script runs before anyone has checked for segments etc.
In my ydl_opts I use 'download_archive': mobilearchive, . and  'force_write_download_archive': True, so if I re-run the script again it won't re-download the videos (which is what I want), but if I disable these options it will re-download the videos and re-check sponsorblock segments, but I would prefer not to have to do that.
In my postprocessors i currently use:
'postprocessors': [
{
    'key': 'SponsorBlock',
    'categories': ['sponsor','selfpromo'],
    'when': 'before_dl'
},
{
    'key': 'ModifyChapters',

},

 {
     'key': 'FFmpegEmbedSubtitle',

 },

{

    'key': 'FFmpegMetadata',
    'add_chapters': True,
    'add_metadata': False,

}]

}_
Thanks
Provide verbose output that clearly demonstrates the problem

[X] Run your yt-dlp command with -vU flag added (yt-dlp -vU <your command line>)
[X] If using API, add 'verbose': True to YoutubeDL params instead
[X] Copy the WHOLE output (starting with [debug] Command-line config) and insert it below

Complete Verbose Output
No response

it helps if you include a log or at least an example URL so that someone can reproduce your issue and/or test/find a solution to your question

Sorry yes some logs would help. My script to auto download subscriptions is at https://github.com/jstriker87/ytdlpscripts/blob/main/mediaautodl.py
I have a file in a sub folder called 'txt' called 'autolist.txt', that has all of my subscriptions. For this example I just removed all but one channel to make it easier (https://www.youtube.com/@CeciliaBlomdahl/videos which released a video today. My cron job downloaded the new video (ID VUFBJfH458A) before anyone checked for sponsors, Someone then added a a sponsor segment, but when the script re-runs automatically 30 minutes later the video has already been recorded in the archive.
Logs:
[debug] Encodings: locale UTF-8, fs utf-8, pref UTF-8, out UTF-8 (No ANSI), error UTF-8 (No ANSI), screen UTF-8 (No ANSI)
[debug] yt-dlp version<EMAIL_ADDRESS>[86aea0d3a] API
[debug] params: {'ratelimit': 50000000, 'concurrent_fragment_downloads': 4, 'playlistend': 2, 'match_filter': <function checkstatus at 0xf74f3e80>, 'retries': 5, 'ffmpeg_location': '/usr/bin/ffmpeg', 'ignoreerrors': True, 'noprogress': True, 'daterange': yt_dlp.utils.DateRange('2023-08-12', '2023-08-13'), 'enable_file_urls': True, 'subtitleslangs': ['en-orig'], 'subtitlesformat': 'best', 'writesubtitles': True, 'writeautomaticsub': True, 'format': 'bestvideo[height<=1080]+bestaudio+best', 'verbose': True, 'download_archive': '/media/usb/ytdlp/WatchScripts/Mobile/ytdlpscripts/txt/mobilearchive.txt', 'force_write_download_archive': True, 'forceip': '4', 'concurrexnt_fragment_downloads': 5, 'max_filesize':<PHONE_NUMBER>, 'overwrites': False, 'outtmpl': '/media/usb/ytdlp/WatchScripts/Mobile/ytdlpscripts/dl/%(upload_date>%d-%m-%Y)s - %(uploader)s  - %(title)s [%(id)s]', 'postprocessors': [{'key': 'SponsorBlock', 'categories': ['sponsor', 'selfpromo'], 'when': 'before_dl'}, {'key': 'ModifyChapters'}, {'key': 'FFmpegEmbedSubtitle'}, {'key': 'FFmpegMetadata', 'add_chapters': True, 'add_metadata': False}], 'compat_opts': set(), 'http_headers': {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.212 Safari/537.36', 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8', 'Accept-Language': 'en-us,en;q=0.5', 'Sec-Fetch-Mode': 'navigate'}}
[debug] Python 3.9.2 (CPython aarch64 32bit) - Linux-6.1.21-v8+-aarch64-with-glibc2.31 (OpenSSL 1.1.1n  15 Mar 2022, glibc 2.31)
[debug] exe versions: ffmpeg 4.3.6-0, ffprobe 4.3.6-0
[debug] Optional libraries: Cryptodome-3.18.0, brotli-1.0.9, certifi-2023.07.22, mutagen-1.46.0, sqlite3-2.6.0, websockets-11.0.3
[debug] Proxy map: {}
[debug] Loaded 1857 extractors
[debug] Loading archive file '/media/usb/ytdlp/WatchScripts/Mobile/ytdlpscripts/txt/mobilearchive.txt'
[youtube:tab] Extracting URL: https://www.youtube.com/@CeciliaBlomdahl/videos
[youtube:tab] @CeciliaBlomdahl/videos: Downloading webpage
WARNING: [youtube:tab] unable to extract yt initial data; please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U
WARNING: [youtube:tab] Incomplete yt initial data received. Retrying (1/3)...
[youtube:tab] @CeciliaBlomdahl/videos: Downloading webpage
WARNING: [youtube:tab] unable to extract yt initial data; please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U
WARNING: [youtube:tab] Incomplete yt initial data received. Retrying (2/3)...
[youtube:tab] @CeciliaBlomdahl/videos: Downloading webpage
WARNING: [youtube:tab] unable to extract yt initial data; please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U
WARNING: [youtube:tab] Incomplete yt initial data received. Retrying (3/3)...
[youtube:tab] @CeciliaBlomdahl/videos: Downloading webpage
WARNING: [youtube:tab] unable to extract yt initial data; please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U
WARNING: [youtube:tab] Incomplete yt initial data received; please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U. Giving up after 3 retries
[youtube:tab] @CeciliaBlomdahl/videos: Downloading API parameters API JSON
[youtube:tab] @CeciliaBlomdahl/videos: Downloading API JSON
[debug] [youtube:tab] Selected tab: 'videos' (videos), Requested tab: 'videos'
[download] Downloading playlist: Cecilia Blomdahl - Videos
[youtube:tab] Playlist Cecilia Blomdahl - Videos: Downloading 2 items
[debug] The information of all playlist entries will be held in memory
[download] VUFBJfH458A: a very productive day on Svalbard | *errands in Longyearbyen has already been recorded in the archive
[download] qjsPNBNso_E: What I EAT IN A DAY living in the world's northernmost town | Svalbard has already been recorded in the archive
[download] Finished downloading playlist: Cecilia Blomdahl - Videos
Thanks

If you want sponsorblock chapters marked/added to a video that has already been downloaded, make sure your download path and output template are the same as when the video was originally downloaded, and run yt-dlp again without 'download_archive' in your options. I think this is the only way to achieve what you want (see #7457)

Ok thanks for your help


Hierarchy feature is broken

It works fine for mesh. But, camera does not work with hierarchy.

Hierarchy of camera is incorrect.


Contact.Emit method is not needed

contact.emit() and room.emit() methods don't seems necessary and will cause ambiguity.
room.emit("leave", *args) is very similar to on_room_leave(*args)
room_one = bot.Room.load('room-one-id')
room_two = bot.Room.load('room-two-id')

async def on_room_one_event():
    print('emit the room one event')

async def on_room_two_event():
    print("emit the room two event")

room_one.on("message", on_room_one_event)
room_two.on("message", on_room_two_event)

In the code-semantic level, it will emit the different room event to the different methods. But actually, this different channel event will lead to hard-code for the specific room.
In an another aspect, all of these logic will be completed in wechaty-level event bus. So, I am considering that this feature can be removed later.

After discussing with contributors of wechaty, this is the feature which you can simplify the event listener to the specific Room/Contact. Eg:
room_id = "room_id_[union_id]"
room = Room.load(room_id)
room.on("leave", room_leave_event)

When you have the specific room id or topic,  you can load the room and do some more things. In this aspect, It will be more convenience for the specific room.
But, ~~~~~~~~~~~~~~~~ it can be implemented in Plugin system.

After considering carefully, this feature is the One-Step wrapper which can be redundancy for python-wechaty. In this stage, we should keep it simple for developers.
Simple is powerful.


ERR_HTTP2_PROTOCOL_ERROR

ERR_HTTP2_PROTOCOL_ERROR
I can't access my website
how to reproduct :

web application exposed to 5000 port
502 Bad Gateway
*8596 upstream sent too big header while reading response header from upstream
add configuration in avanced configuration
  proxy_buffer_size   128k; proxy_buffers   4 256k; proxy_busy_buffers_size   256k;
ERR_HTTP2_PROTOCOL_ERROR
no log for this error

I can access it directly with the ip + port address but not with the proxy domain name
Do you have any ideas to help me ?
Thanks

@arnaudbagnis I don't know if you still need it, but try adding this custom config
  location / {

 proxy_buffer_size   128k;
    proxy_buffers   4 256k;
    proxy_busy_buffers_size   256k;

    # Proxy!
    include conf.d/include/proxy.conf;
  }


How to go about saving user's credentials?

Hey everyone, curious how you are implementing the saveUserCredentials function for the onTokenRefresh. I am storing the token in keychain, but when I extract the token and place it in a OAuth2User accessToken, I get an "UnAuthorized" from TwitterAPIError. Below is a snippet of what I am doing, please ignore how this is setup as I am just trying to get it to work initially. I can save and read from keychain and it provides me with the token when I print it out, but can't seem to save and authorize a user once they allow the app to use Twitter. Thoughts?
func getFollowing(results: Int){
Task{
do{
let getStoredToken = read(service: "access-token", account: "twitter")!
let storedAccessToken = String(data: getStoredToken, encoding: .utf8)!
let oauthUser = OAuth2User(accessToken: storedAccessToken, clientId: TWITTER_CLIENT_ID, scope: Set(OAuth2Scope.allCases))
            print(storedAccessToken)

            if(storedAccessToken.isEmpty){
                let oauthUser = try await Twift.Authentication().authenticateUser(
                  clientId: TWITTER_CLIENT_ID,
                  redirectUri: URL(string: TWITTER_CALLBACK_URL)!,
                  scope: Set(OAuth2Scope.allCases)
                )
                print(oauthUser.accessToken)
            }

            var twitterClient = await Twift(oauth2User: oauthUser, onTokenRefresh: save)

            save(oauthUser: oauthUser)

            let result = try await twitterClient.getMe(fields: allUserFields)
            let following = try await twitterClient.getFollowing((result.data.id), maxResults: results)
            users = following.data
        }   catch{
            print(String(describing: error))
        }
    }

}

func save(oauthUser: OAuth2User) {
let data = Data(oauthUser.accessToken.utf8)
let service = "access-token"
let account = "twitter"
    // Create query
    let query = [
        kSecValueData: data,
        kSecClass: kSecClassGenericPassword,
        kSecAttrService: service,
        kSecAttrAccount: account,
    ] as CFDictionary

    // Add data in query to keychain
    let status = SecItemAdd(query, nil)

    if status == errSecDuplicateItem {
            // Item already exist, thus update it.
            let query = [
                kSecAttrService: service,
                kSecAttrAccount: account,
                kSecClass: kSecClassGenericPassword,
            ] as CFDictionary

            let attributesToUpdate = [kSecValueData: data] as CFDictionary

            // Update existing item
            SecItemUpdate(query, attributesToUpdate)
        }
}

func read(service: String, account: String) -> Data? {

    let query = [
        kSecAttrService: service,
        kSecAttrAccount: account,
        kSecClass: kSecClassGenericPassword,
        kSecReturnData: true
    ] as CFDictionary

    var result: AnyObject?
    SecItemCopyMatching(query, &result)

    return (result as? Data)
}

This preview broke in few spots, so fairly hard to follow 🥲, but it kinda seems like it should work? 🤷♂ You get the authUser and save it on refresh. Maybe store it before refresh as well?
It could happen that you get the user, and before refresh it is not saved?
I also write fairly linear when trying to make things work, but it is hard to know which part of the code here fell appart.
I can post what I have in my networking class, hopefully it helps? Saving in UserDefaults for now because its so convenient 😂
private let urlScheme = Constants.urlScheme
  private let clientId = Constants.clientID

  var client: Twift?

  func initiateLogin(forceReconnect: Bool = false, completion: @escaping (Bool)->Void) {
    Task {
        await loginUser(forceReconnect: forceReconnect, completion: { user in
            UserDefaults.encodeUser(user: user)
            self.initClient(withCredentials: user)
        completion(true)
      })
    }
  }

    func loginUser(forceReconnect: Bool = false, completion: @escaping (OAuth2User)->Void) async {
    do {
      // flow with existing user
      if let oauthUser = UserDefaults.decodeUser(), !forceReconnect {
        completion(oauthUser)
      } else {
        // flow with new user
        let oauthUser = try await Twift.Authentication().authenticateUser(
          clientId: Constants.clientID,
          redirectUri: URL(string: Constants.urlScheme)!,
          scope: Set(OAuth2Scope.allCases),
          presentationContextProvider: nil)
        completion(oauthUser)
      }
    } catch {
      print(error.localizedDescription)
    }
  }

  func initClient(withCredentials oauthUser: OAuth2User) {
      client = Twift(oauth2User: oauthUser, onTokenRefresh: { newUser in
          UserDefaults.encodeUser(user: newUser)
      })
  }

Thanks will give it a shot! Appreciate the feedback.


Numbers like the number of unique bacteria should stand out

...should be bold, and differentiate from what hyperlinks look like. Numbers should be localized with the correct separator (eg 1000 -> 1,000)

@dhakim87, could you look at localization for the numbers in the results page?


[error, please cancel] LaTeX support?

I'm trying to get NERDCommenter to work with LaTeX files (.tex), but even if :set ft? shows me filetype=tex, NERDCommenter does not work. Enquiring over, I see that the .tex filetype is not hardcoded among the others in plugin/NERD_commenter.vim (we have ConTeX, LyTeX, TeXinfo).
Now, I can add this by myself, but probably introducing LaTeX support could be a good idea.

Me too!


Improve codegen for stdlib <-> df interop workflow

I recommend to review commits individually. First two were small changes made to improve debugging experience, and other two are separate features
solves https://github.com/Kotlin/dataframe/issues/344

df.generateDataClasses().print()

@koperagen could you add a page in our docs or chapter with simple description and small example?

Let's do it later. I want to find a better form and place for it

We could add documentation later, but in this case, please create a doc ticket for this, link to this issue and assign on your-self


Qbeast-Photon module

Description
In this PR, we are adding support for querying Qbeast Format in Photon, a new Query Engine for Spark on Databricks.
Type of change
It is a new feature that includes the following changes:

New module named qbeast-photon that depends on qbeast-core and has it's own datasource implementation. This Datasource/Table Provider includes the necessary capabilities for Sample, Filter and Aggregation Pushdown.
Reorganisation of the code: we moved some parts of the Query Management into core module, to avoid having code duplication. After some analysis, we still have Spark parts that can be shared with qbeast-spark main project, maybe we can decouple Spark code to be able to reuse as much as possible. We can discuss it in this PR.
README and instructions are uploaded in the independent module.

Checklist:
Here is the list of things you should do before submitting this pull request:

[x] New feature / bug fix has been committed following the Contribution guide.
[x] Add comments to the code (make it easier for the community!).
[x] Change the documentation.
[ ] Add unit tests.
[ ] Add integration test w/ Databricks.
[x] Your branch is updated to the main branch (dependent changes have been merged).

TODO:

I commented some test on qbeast-spark module. Need to double check them.
Add more test on the qbeast-photon module.
Test the full solution on platforms.

Morning!
Updates on the module:

At first, we implement OTreePhotonIndex as an extension of InMemoryFileIndex. This class returns a list of FileStatus that contains the files to read. Unfortunately, this FileStatus is not compatible with internal Databricks class SerializableFileStatus on customised implementations (like ours), and an error appears on reading.

To solve this problem, we can:

initialise an InMemoryFileIndex with the filtered files already. This would be converted in a PhotonScan directly and can fully benefit from Photon vectorial reading. This solution is proved to be working on DB.
Use an extension of PartitioningAwareFileIndex. Not sure if this would work on DB clusters. Needs to be tested.

The tests on qbeast-spark are modified accordingly.

Some small test are added on qbeast-photon.

Next steps:

Run TPC-DS queries to verify compatibility.
Review this PR. Clean the code, improve the usability and readability.

Few comments:

It's better to separate this PR in two, so code review it's easier. One of them would contain only Photon module (with no refactoring) and the other would include the package changes.
Need to include CI with Databricks for this part. We would discuss the best way to do so and come back with the changes.

Closing this PR to separate the code in two. Sorry for the inconvenience.


Auto instrumentation doesn't appear to work in Flask

Versions
honeycomb-opentelemetry==0.2.0b0
opentelemetry-api==1.17.0
opentelemetry-exporter-otlp==1.17.0
opentelemetry-exporter-otlp-proto-grpc==1.17.0
opentelemetry-exporter-otlp-proto-http==1.17.0
opentelemetry-instrumentation==0.38b0
opentelemetry-instrumentation-aiohttp-client==0.38b0
opentelemetry-instrumentation-aws-lambda==0.38b0
opentelemetry-instrumentation-dbapi==0.38b0
opentelemetry-instrumentation-flask==0.38b0
opentelemetry-instrumentation-grpc==0.38b0
opentelemetry-instrumentation-jinja2==0.38b0
opentelemetry-instrumentation-logging==0.38b0
opentelemetry-instrumentation-requests==0.38b0
opentelemetry-instrumentation-sqlalchemy==0.38b0
opentelemetry-instrumentation-sqlite3==0.38b0
opentelemetry-instrumentation-tortoiseorm==0.38b0
opentelemetry-instrumentation-urllib==0.38b0
opentelemetry-instrumentation-urllib3==0.38b0
opentelemetry-instrumentation-wsgi==0.38b0
opentelemetry-propagator-aws-xray==1.0.1
opentelemetry-proto==1.17.0
opentelemetry-sdk==1.17.0
opentelemetry-semantic-conventions==0.38b0
opentelemetry-util-http==0.38b0

Steps to reproduce
This was a fresh install of Honeycomb on a Flask codebase, I followed the instructions on the Python guide. I've output the versions of OTEL that resulted. My app does not appear to be sending any telemetry data to Honeycomb.
Additional context
Hi there,
Auto instrumentation doesn't appear to be working for my Flask app. I set the DEBUG=true flag to get more verbose information and I don't see Honeycomb barking anywhere (see screenshot below). What are some things I can try to get this to work? Thank you!

Thank you @JamieDanielson! I'll give this a shot

Hi @JamieDanielson, I got further along, but I seem to be getting errors now which I presume is OTEL trying to phone home:

I followed the instructions on this doc: https://docs.honeycomb.io/getting-data-in/opentelemetry/python-distro/
Is there a way for me to grab more info for you to see what's going sideways? Thank you!

I'll open up a new issue since this is unrelated to auto-instrumentation. Thank you!


Large files in cargo package source

maidsafe_sodiumoxide 0.0.12 has a 6 MB ./bin/x86_64-pc-windows-gnu/ directory in its cargo package source. Consider releasing a new clean version.
This is a reminder that cargo includes all non-ignored files in your working directory when you publish — look at git status before you publish.
(I downloaded all crates.io crates and I started to grep for junk)

Thanks for the report.  Fixed in https://github.com/maidsafe/sodiumoxide/commit/b619e0f7db5b13b0d0912fa67c238de6d1b3862e.


Attaches DayPicker caret to inputs instead of the picker component

So I've been thinking about this problem specifically for https://github.com/airbnb/react-dates/pull/83, and after @travisbloom introduced anchorDirection in (https://github.com/airbnb/react-dates/pull/72, it became pretty clear that we were doing a lot of grossness to make carets consistently align. Combine this with the fact that we have to override caret styles at Airbnb for medium breakpoints, and the point is that I was getting annoying.
While it makes some sense to attach the caret to the DateRangePicker__picker, I think it actually makes more sense for placement to attach them to the inputs.
to: @airbnb/webinfra

Coverage remained the same at 87.969% when pulling 1b2662dd1dd38dede99f7751ca046512af5f8b75 on maja-attach-picker-caret-to-input into 04a9ee8600b47bd1326dd8977b2b9d07715de797 on master.

LGTM

so much cleaner, nice @majapw

Coverage remained the same at 87.969% when pulling 7d6e1292e87012c94070620542ba6ef4b9d75cf0 on maja-attach-picker-caret-to-input into eb4bf333ce2c03e0348635dcf20ae31e60f516d1 on master.


Can i download tomcat's log by azure sdk for java?

I use the tomcat of app service ,  because our office's firewall doesn't raise the port of 21, i cannot download tomcat's log by ftp, can i download tomcat's log by azure sdk for java.

Hello @mayong1030
I am sorry about you didn't get a sooner answer on this
Do you still need help on this? Let me know and I would be happy to help.
Note: As part of repository cleaning effort, this issue will be closed by Nov 11 if no response is received from submitter and/or not further action is required.


feat: Enable Dual Signing for akmods

Thank you for contributing to the Universal Blue project!
Please read the Contributor's Guide before submitting a pull request.

Changes look great to me, I'm about to do a testing build so I can run these against that if you like


Tight dependency on camel-core version

The feature currently depends on the camel-core bundle in a specific version. Currently (8981dcf), it is set to 2.17.3:
<bundle dependency="true">mvn:org.apache.camel/camel-core/${apache-camel-version}</bundle>
If I'm not mistaken, this makes the feature incompatible even with other minor or patch versions, e.g. it cannot be used with recent camel 2.18. Is it planned to release this feature along with each matching camel release or would it be an alternative to replace the bundle dependency with a feature dependency with version ranges (which seems to work with my camel-core 2.18.0):
<feature prerequisite="false" dependency="true" version="[2.17.0,3)">camel-core</feature>
Thank you for the great contribution anyway!

To be honest, I am not that familiar how Karaf packaging works best. If you know more, just open a PR ;-)

Here is the PR, but I guess you won't like it :-) My fix for integrating this plugin into Camel 2.18.0 was to bump its dependency and its version to 2.18.0, which seems to be common practice for camel plugins (see here for example https://github.com/apache/camel/blob/master/components/camel-ahc/pom.xml), but of course it totally breaks your original versioning scheme.
I'm fine with rejecting this PR, it's just the solution that works for me right now.

I published a new version to Maven Central a few minutes ago (version 0.1.1). This should fix this issue.
It should also fix this issue. Maybe you can give it another try and let me know! Thanks!

It solves the problem and allows a suitable camel-core version range. Thank you!

Thanks for the feedback!


Is there a way to change the Display name of a Repository?

https://docs.abapgit.org/user-guide/repo-settings/local.html


feat(vue-app): support alias in head

This PR allows you to use alias on link property in head
Types of changes

[ ] Bug fix (a non-breaking change which fixes an issue)
[x] New feature (a non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Description

Now this is possible
// nuxt.config.js
export default {
  head: {
    link: [
      {
        rel: 'apple-touch-icon',
        sizes: '180x180',
        href: '~/assets/images/favicons/apple-touch-icon.png'
      }
    ]
  }
}

Checklist:

[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly. (PR: #)
[x] I have added tests to cover my changes (if not applicable, please state why)
[x] All new and existing tests are passing.

Codecov Report

Merging #6200 into dev will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##              dev    #6200   +/-   ##
=======================================
  Coverage   95.74%   95.74%
=======================================
  Files          80       80
  Lines        2655     2655
  Branches      683      683
=======================================
  Hits         2542     2542
  Misses         97       97
  Partials       16       16

Flag
Coverage Δ

#e2e
100% <ø> (ø)
:arrow_up:

#fixtures
50.8% <ø> (ø)
:arrow_up:

#unit
92.42% <ø> (ø)
:arrow_up:

Impacted Files
Coverage Δ

packages/vue-app/src/index.js
0% <ø> (ø)
:arrow_up:

packages/builder/src/context/template.js
100% <ø> (ø)
:arrow_up:

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 c436839...f8733c9. Read the comment docs.

I can think of one other tag that would need same treatment (meta) but there are possibly more.
<meta rel="icon" type="image/x-icon"  href="~/asssets/favicon.ico">

Actually there is another point which can be quite problematic if the user uses a head function
how are we going to access link, meta, style, script?
``
export default {
head() {
return {
link: [
{
rel: 'icon',
type: 'image/png',
href: '~/assets/favicon.png'
}
]
}
}
}

@ricardogobbosouza We might be able to fully support functions by transforming to AST, manipulate the AST and then transform the AST back to source. This could be a bit tedious to get working properly (and not sure its even possible to get working properly), but if we could implement this it should always work.
There might be other (easier?) tools available, but I only have experience using babel/parser and babel/transform in nuxt/tib
Steps we would need to implement are:

parse the raw nuxt.config file from text to AST
use babel/traverse to find the head node in the AST
find out if there are any imports or variables from a parent scope being used

if so, recursively include these

include variables by value
include functions by definition (e.g. import when possible)

note: this is the big downside of this approach and responsible for the tedious part, there might be a better way and we might not get this too work properly in all use-cases anyway

create a new AST program with a default export for the head function AST
transform the AST back to source and write to head.js file

@pimlie I think this approach is a real overengineering over a simple requirement! Extracting a function and it's dependencies from the config file and then transforming back to an ES6 code is subject to countless edge cases and almost means rewriting a JS bundler. Also what if for example a function inside config that should be serialized depends on a dependency (like a vue library)? We are also importing it when loading config.
The config (both currently nuxt.config.js and upcoming config/) should have a clear definition and scope not mixing with runtime IMO.
Like #6055 approach, simply introducing app/head.js can resolve this problem, keeping backward compatibility and support for easier use cases and even able to mix both heads (like an object which is filled by PWA and other modules + user-provided ones)

@pi0 Yeah, fully agree thats its probably not worth the time to pursue this. But theoretically it might just work maybe and/or possibly :angel:

@pimlie I think even theoretically there is at least (as far as can think) one big problem: When loading nuxt.config through ESM, there are imports that are requirements of a function to be serialized. If even not conflicting that adds performance penalty. Also prevents using ~/ aliases for imports as there is no webpack.

@pi0 Maybe another approach could be to extract the head function out of nuxt.config, write a temporary pre-head.js that also includes imports from nuxt.config, then create head.js using webpack so it resolves the requirements for us. We could still use AST then to reliably determine which imports and parent scope variables are used within the head function.
Performance penalty would be significant probably indeed, but that would be the cost of using a function instead of an object as head in your nuxt.config

A reminder that for nuxt3 (and even in a minor) we are also supporting config/ directory. Having config/head.js or app/head.js is zero cost ;)