Changing the theme in defineMermaidSetup doesn't apply anything

Describe the bug
Following the steps on the Mermaid configuration (https://sli.dev/custom/config-mermaid.html) to define the default settings doesn't change anything to my output.
My diagram looks as follows:

It contains the following contents:
//```mermaid
sequenceDiagram
  participant A as Extension Host
  participant B as Webview

  A->>B: Send message to webview

  Note over A,B: Webview listens and reacts to messages

  B->>A: Send message to extension host

  Note over A,B: Extension Host listens and reacts to messages
//```

I wanted to use another theme, but no matter what I define in my .setup/mermaid.ts file, it doesn't get applied.

Also tried to create a custom theme, but this was the same experience.

Is there anything I do wrong?
To Reproduce
Steps to reproduce the behavior:

Go to mermaid config doc
Create the mermaid.ts file
Add the contents from the doc
Start npm run dev
Check the diagram, the outcome is still the same as before

Desktop (please complete the following information):

OS: macOS
Browser: Microsoft Edge / Chrome
Slidev version: 0.39.0

Got it to work for custom theming:

For applying default mermaid themes, the theme property seems to be ignored.

I have this problem on Chromium (but not Firefox interestingly). The config is not applied, unless you hit save on the ./setup/mermaid.ts file after starting the slidev server.
I was able to get around it by specifying the config for each mermaid chart:
```mermaid
---
config:
  theme: 'base'
  fontFamily: 'JetBrains Mono'
---
gitGraph
  commit
  commit
```


Contracts API

[x] Create contracts BE parent of #2176
[x] Suspended Contracts parent of #2225
[x] Get Contract Details BE parent of #2238
[x] Get Contract List parent of #2243
[ ] Update Employees in Contract parent of #2389
[ ]  Terminate Contracts parent of #2615
[ ] Get Сontract employees by contract_id parent of #2594

[ ] Save update employee in contracts signed content to media storage parent of #2662
[ ] Suspended contract improvement parent of #2628
[ ] Changes for Update employees in contracts for declaration limit parent of #2656
[ ] Update contract via Contract Request  parent of #2644
[x] add status_reason to response Get contract_request by id #2668
[ ] contracts documents type parent od #2666


Rename duplicated swift::fatalError in swiftRuntime and swift_Concurrency

Cherry-pick #37084 to fix static builds that use the _Concurrency library.

@swift-ci please test


Cannot launch loader.exe

I've got some troubles with launching the loader, which i dind not used to have before. I did everything like it was said in the guide at thirst time and it ran well, everything was ok, but now it doesn't work, i've already tried to reinstall vm and also VBoxHardenedLoader, it didn't help. Also I have no intel lan driver. During the launching loader I can see this

Excuse me, if this question has already been asked to you, i didn't manage to found a solution

The screanshots I gave shows what happens when I try to launch loader for the second, third time, etc. When I reboot my pc and try to launch it again this what I see (may be it can help to solve the problem)
VirtualBox Hardened Loader v<IP_ADDRESS>5
[>] Entering VBoxLdrMain
LDR: Listing process token privileges...
LDR: SeIncreaseQuotaPrivilege Disabled
LDR: SeSecurityPrivilege Disabled
LDR: SeTakeOwnershipPrivilege Disabled
LDR: SeLoadDriverPrivilege Disabled
LDR: SeSystemProfilePrivilege Disabled
LDR: SeSystemtimePrivilege Disabled
LDR: SeProfileSingleProcessPrivilege Disabled
LDR: SeIncreaseBasePriorityPrivilege Disabled
LDR: SeCreatePagefilePrivilege Disabled
LDR: SeBackupPrivilege Disabled
LDR: SeRestorePrivilege Disabled
LDR: SeShutdownPrivilege Disabled
LDR: SeDebugPrivilege Disabled
LDR: SeSystemEnvironmentPrivilege Disabled
LDR: SeChangeNotifyPrivilege Enabled (Default Enabled)
LDR: SeRemoteShutdownPrivilege Disabled
LDR: SeUndockPrivilege Disabled
LDR: SeManageVolumePrivilege Disabled
LDR: SeImpersonatePrivilege Enabled (Default Enabled)
LDR: SeCreateGlobalPrivilege Enabled (Default Enabled)
LDR: SeIncreaseWorkingSetPrivilege Disabled
LDR: SeTimeZonePrivilege Disabled
LDR: SeCreateSymbolicLinkPrivilege Disabled
LDR: SeDelegateSessionUserImpersonatePrivilege Disabled
LDR: VirtualBox version 6.1.32
LDR: Windows version: 10.0 build 19043
LDR: Maximum User Mode address 0x7FFFFFFEFFFF
Pattern matching: 'VBOX'
Pattern FACP (pre v6.1) was not found
FACP (v6.1+)            0x355e7
Pattern RSDT (pre 6.1) was not found
RSDT (6.1+)             0x3584e
XSDT            0x359a5
APIC            0x35bfb
HPET            0x35da4
MCFG            0x35ea8
VBOXCPU         0x3ffe0
Pattern VBOX generic (pre 6.1) was not found
VBOX (6.1+)             0x142b4c
Pattern matching: 'VirtualBox'
VirtualBox      0x147ac8
VirtualBox__    0x157280
VirtualBox GIM  0x1578b8
VirtualBox VMM  0x158090
Pattern matching: 'Configuration'
Pattern Configuration (pre 6.1) was not found
Configuration (6.1+)            0x154355
Pattern matching: Hardware ID
80EE            0x211d7
80EE            0x211fb
BEEF            0x211ed
BEEF            0x21207
CAFE            0xdf540
LDR: Patch table created
LDR: SeDebugPrivilege assigned
LDR: SeLoadDriverPrivilege assigned
[>] Entering MapTsugumi
[>] Entering ProviderCreate
[>] Entering StartVulnerableDriver
LDR: Vulnerable driver "IntelNal" loaded
LDR: Vulnerable driver opened, handle 0x00000000000000FC
[<] Leaving StartVulnerableDriver
[<] Leaving ProviderCreate
LDR: Victim driver map attempt 1 of 3
LDR: Extracting victim driver "PROCEXP152" as "C:\Users\q1w2e\AppData\Local\Temp\PROCEXP152.sys"
LDR: Victim driver loaded, handle 0x00000000000000A0
LDR: Reading FILE_OBJECT at 0xFFFFB5824D0E10F0 - OK
LDR: Reading DEVICE_OBJECT at 0xFFFFB58249971A70 - OK
LDR: Reading DRIVER_OBJECT at 0xFFFFB5824CEF3E30 - OK
[!] Could not read driver image header at 0xFFFFF80072200000 (Error 5)
[>] Entering ProviderRelease
[>] Entering StopVulnerableDriver
[!] Unable to unload vulnerable driver, NTSTATUS (0xC0000010)
[<] Leaving StopVulnerableDriver
[<] Leaving ProviderRelease
[<] Leaving MapTsugumi
LDR: Cannot inject monitor code
[<] Leaving VBoxLdrMain


feat(menu): support spacer in menu

close #3524

Codecov Report

Merging #3531 (65ff275) into main (16f022e) will decrease coverage by 0.01%.
The diff coverage is 53.84%.

@@            Coverage Diff             @@
##             main    #3531      +/-   ##
==========================================
- Coverage   62.99%   62.98%   -0.02%
==========================================
  Files        1056     1057       +1
  Lines       21923    21935      +12
  Branches     5719     5720       +1
==========================================
+ Hits        13811    13816       +5
- Misses       6623     6629       +6
- Partials     1489     1490       +1

Impacted Files
Coverage Δ

src/menu/src/MenuSpacer.tsx
50.00% <50.00%> (ø)

src/menu/src/utils.tsx
86.84% <57.14%> (-10.04%)
:arrow_down:

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

如果你需要加的话加这个吧，不要搞一个新类型了


Allow python interpreter overrides for specific plugins

Migrated from GitLab: https://gitlab.com/meltano/meltano/-/issues/3411
Originally created by @aaronsteers on 2022-04-18 17:50:38

@edgarrmondragon suggested in https://gitlab.com/meltano/meltano/-/issues/2575#note_646844224 on Aug 9, 2021:

@aaronsteers @pandemicsyn Perhaps we can just add the --python option to the venv creation call if a new python field is not null in the plugin configuration.

In theory, it should be possible to create venvs that run plugins using a different Python interpreter than Meltano itself is using.
This could be useful when Meltano itself is installed on a newer version of Python (such as 3.10) at the time of this writing, but an older version may be needed to run a specific plugin. As we expand the number of installable plugins to include everything on https://hub.meltano.com, the cases where specific plugins need an older (or newer) version of Python will in theory become much more common.
Possible spec:

Add an optional entry on plugin definitions: like python or (more explicit) python_interpreter_path.
When not set, the python interpreter used would be the Meltano one.
When set, the provided python interpreter would be used during plugin install (aka venv creation) instead of one Meltano is running under.

I did some digging and found where I think the main code change would be:
https://github.com/meltano/meltano/blob/2052ede2c80fb0742da9809b8f461a3a6b28d662/src/meltano/core/venv_service.py#L222-L243
Perhaps an easier implementation vs dynamically accepting a Python version number would be to accept a path to a specific python interpreter...
    async def _pip_install(self, *pip_urls: str, upgrade: bool = False, python_path: Path | None = None):
        """
        Install a package using `pip` in the proper virtual environment.
        :raises: AsyncSubprocessError: if the command fails.
        """
        args = [
            # use an override if provided or default to Meltano's:
            str(python_path or self.python_path),
            "-m",
            "pip",
            "install",
        ]
        if upgrade:
            args += ["--upgrade"]
        args += pip_urls

        try:
            return await exec_async(*args)
        except AsyncSubprocessError as err:
            raise AsyncSubprocessError(
                f"Failed to install plugin '{self.name}'.", err.process
            )

And would just require adding support for one additional plugin config in yaml:
plugins:
  extractors:
  - name: tap-github
     pip_url: tap-github
     python_path: /usr/bin/python38

Or if we can assume the interpreter is already on PATH:
plugins:
  extractors:
  - name: tap-github
     pip_url: tap-github
     python_path: python38

@WillDaSilva - Does the above approach make sense? And if yes, do you mind giving this a rough weight estimate?

@aaronsteers The approach you've outlined makes sense. Supporting both specifying a full path to the Python binary, and specifying a name to be found on $PATH (using shutil.which) is a nice touch. I'd give this a rough weight estimate of 4 - the most difficult part will surely be testing it.
To test it, a trick that might work (and would be easier than ensuring the environment has multiple distinct Python binaries) is to create a wrapper executable script around the Python binary that's running the tests. When this wrapper script is run (because Meltano was told to use it for some plugin), it'll leave behind some evidence of it having been run, which the test can then check for. This trick should work for both the full path and $PATH lookup.

Thanks, @WillDaSilva ! I've updated weight to reflect this estimate.
cc @tayloramurphy

FYI @WillDaSilva @aaronsteers i pulled this from the Engineering Assignments board but added the weight to the Product Roadmap board.

Thanks, @tayloramurphy. Makes sense 👍

In addition to allowing this to be configured per-plugin venv, we should also let this be configured as a Meltano setting (configured at the top level or per-environment). That value would be used as the default. This is of particularly relevance for Meltano Cloud where we default to Python 3.9, but a user may want their project to e.g. use Python 3.11 instead. This would save a user from having to set python: python3.11 for every base plugin.

@WillDaSilva are you picking this up currently? Will you update the issue description with your current implementation plan / scope (or updating in the PR description is fine too - just cross-link please)

@tayloramurphy I've updated the description of the linked PR.


minor text change

been bugging me every time I use Kodi on android tv. Please include it.

Thanks, @shamantyagi for PR. this typo is fixed in the latest v2.2.2.


Is it possible to solve this captcha?

Hi everyone, is there any way to solve such captcha, what library or api can be used with puppeteer-real-browser to solve such captcha?

Datadome captcha. You can use Capsolver. I'm closing it as it has nothing to do with the library.

Okay, thanks!


Units tweaks

Added d as a synonym for day
Added tests for unit conversion
Change some indicators units to mm/day instead of mm

Pull Request Test Coverage Report for Build 303

3 of 3 (100.0%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.03%) to 80.974%

Totals

Change from base Build 299:
0.03%

Covered Lines:
532

Relevant Lines:
657

💛  - Coveralls


Remove Hardcoded Offset in Compression

Description
An offset of 7 was hardcoded in the function compress_file, presumably to skip over the default target IP address of <IP_ADDRESS> in a hosts file. However, this causes problems when the default is overridden using the --ip or -i flag, causing visibly garbled output in the generated hosts file.

Fix
Calculate length of target IP at runtime.

Thank you Ankit @ankitpati !
Merging.


ggshakeR gallery

Creating a gallery of code for visualizations either too simple or too complex!
Current functions

KMC
GMM
UMAP
PCA
Bumpy Chart
Comet chart

Feel like GMM is to be combined with both UMAP and Comet Chart. So maybe shelf one of those for now? Right away, feel like GMM + Comet chart is the more popular and useful option.
I have some code for a Bumpy chart (https://github.com/harshkrishna17/R-Code/blob/main/BumpyChart.R) (to be improved). Would also be nice to kill two birds with one stone and add a tutorial on adding images to a plot by creating a bumpy chart like the one by mplsoccer.

I'll work on KMC for progressive passes. The plot which I created 2 months ago is below (to be improved)

Feel like to start out, there should be about 3-4 vignettes and I think we're on track for that. No rush, we can take our time with the new update!

Can also work on this design for KMC if you guys think it would be better!

Initial gallery created


Reconfigure Frame Rate Divisor

Closes #253
Overview
As discussed in the issue, when using FLAnimatedImage on iPhone 13 Pro devices running iOS 15, GIFs play at ultra speed due to some math assuming that the screen refresh rate will never change.
Unfortunately (or fortunately?) ProMotion is now a thing, so assumptions need to be mitigated.
Changes

Made use of if (@available(iOS 10.3, *)) { to use the available UIScreen.mainScreen.maximumFramesPerSecond value.
Previous iOS devices can continue using 60Hz, as devices running <iOS 10.3 do not know about higher refresh rates.

Considerations

Explicit cast to (double) (NSTimeInterval) for accuracy.

actually just noticed this is using mainScreen, should it instead get the screen for the current view? in the worst case it would use more CPU than necessary I think

@mmmulani Do you mean to use the UIScene for the "screen for the current view" by chance? There is only one screen on the device, so the established convention is to use UIScreen.mainScreen for most cases as far as I am aware.
As for the main variable, I can make it a const instead, which will grab the current value when the function gets called. Is that OK?

maybe I'm messing up majorly here but I thought AirPlay/HDMI would create a new UIScreen?

Huh. In this case, .screens would have another value. However logic would need to be introduced (of which there is none at current) to check if the device is connected to another screen or not.
Perhaps this extra logic should be implemented separately? I don't know if I feel comfortable jack-knifing in AirPlay display support alongside a fairly trivial bugfix.. 🤔

The code would then become;
const NSTimeInterval kStaticDisplayRefreshRate = 60.0;
const NSTimeInterval kVariableDisplayRefreshRate = UIScreen.mainScreen.maximumFramesPerSecond;

if (@available(iOS 10.3, *)) {
    self.displayLink.frameInterval = MAX([self frameDelayGreatestCommonDivisor] * (double) kVariableDisplayRefreshRate, 1); // 60Hz or 120Hz, depending on device capabilities.
} else {
    self.displayLink.frameInterval = MAX([self frameDelayGreatestCommonDivisor] * kStaticDisplayRefreshRate, 1); // Before iOS 10, no iOS devices support greater refresh rates than 60Hz.
}

yeah I agree with that screens jack knifing concern. I think the parent caller is didMoveToWindow though right? you could get the screen from there to get the correct maximum
in general I wouldn’t check if the device is connected to another screen but rather determine which screen this view is placed on

I'm having a look at didMoveToWindow now but it doesn't seem to have any parameters in its function body. So I'm trying to think on how to get the current screen from there and save a reference to it. It still seems like I will need to use UIScreen.mainScreen 🤔

Been a minute since I used Obj-C. I saved a reference to the screen and use the value from it instead.

@topLayoutGuide I just pulled your changes and it doesn't seem to fix the double speed GIF animation. Tested on an M1 iPad Pro.

Can you provide any more information/testing GIF?


Adriana Jama-Lipa

Added my name to Contributors.md

We have improved the website. So can you re raised the PR. Sorry for incovience.


Support Hyperf 3.1

Hi!
I added support for the new Hyperf 3.1 class. Please merge PR #6 and release a new version

@gokure please release new version


When I tested locally, I have successfully compiled the mirror of the harbor arm architecture, docker version is 20.10


Set specific parameters on different set of images (hFac, expFactor etc...)?

Hello @aFarkas and thanks again for your amazing work.
I have a website with an horizontal slider with fullscreen images, and a vertical menu with thumbnails.
I use low quality placeholders on both.
So I have 3 images types and need 3 different behaviours:

for the horizontal slider, i need to lazyload the current and 100vw under/after the viewport
for the vertical menu, i need to lazyload all images 100vh under the viewport
and for the low quality placeholders, i need to load them at 300vw and 300vh under/after the viewport

Because there is only globals parameters (lazySizesConfig.hFac etc...),, how can I handle specific parameters for specific images?
Thank you!

Hello @aFarkas! Is it possible to add the option data-hFac so we could override global hFac for each element?

@lizryzhko
To be honest I'm extremely reluctant to do changes to the core. Especially these kinds of changes. I see a lot of devs playing with the current configuration and they are configuring lazysizes in a way that doesn't make too much sense.
In general lazysizes calculates 3 different expand values based on the config and switches between those depending on how many images are loading or in which loading state your document is. It is quite impossible to not be able to generate a config that doesn't support good performance and usability for all images on your page. Everything else goes really in to micro management and premature optimization.


Timeout in OCI push

When using the action actions/attest-build-provenance with the option push-to-registry enabled, I regularly got a timeout error.
Digging into the action I discovered that the timeout corresponding to the OCI push is set here to 2 seconds, which is obviously pretty low and not every registry can fulfil the request in this time, especially not ones which are backed by an object storage.
May I ask here to increase the timeout to something more usual like e.g 30s?
For the time being, is there any possible workaround until this gets fixed?

@matthiasfehr I've got a fix queued up and will try to get this deployed today.
Out of curiosity, which OCI registry are you using?


support constructors in static member classes; fix #6011

With this patch, it's possible to invoke and take references to
constructors of static member classes. For invocations, type argument
inference works. These operations also work when using an import alias
for the static member class when qualifying the constructor.
@gavinking it looks like this is all that is needed. And if not, it's hard to see that this would do actual harm; isStaticallyImportable should always be false for classes with constructors on the JS and JVM backends.
It would be really nice to have this for the upcoming patch release.

Can one of the admins verify this patch? (see README)

I assume this can’t be tested without the Dart backend?

For #6011

@lucaswerkmeister right, I don't know how to test it without Dart.
It might be nice to add a copy of the JS model loader to the typechecker project to be able to test backend specific declarations...

@jvasileff OK, I trust you. Lets see if it breaks any JVM tests.

Thanks!


[CUR-185] Added curriculum info overview tabs

Description

Added further slug for redirects
Added base components for overview and sequence

How to test

Go to https://deploy-preview-1780--oak-web-application.netlify.thenational.academy/beta/teachers/curriculum/maths-secondary/overview
You should see the curriculum overview for secondary maths
Click on the sequence tabular nav
You should see a page reflecting the subject phase sequence
Click on the download tab
You should see a page reflecting the download section for the curricula
Test the breadcrumbing redirects properly between subject and phase

Checklist

[ ] Added or updated tests where appropriate
[ ] Manually tested across browsers / devices
[ ] Considered impact on accessibility
[ ] Design sign-off
[ ] Approved by product owner

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


Prepare for shelley hardfork

I have a cardno-wallet service running of Byron-Wallets and waiting for the Shelley hardfork coming soon.
what should I do to prepare for this hardfork, any information, or link to introduce?
Do I need to change my wallet API from 'byron' to SHELLEY, any else to pay attention to?

We'll detail what to do in the upcoming release notes. But in brief:

The API stays the same. The "Byron" sections of the API keeps working identically (modulo disclaimer below).
Byron wallets won't have any delegation capability, so if you intend to delegate, you'll have to create new "Shelley" wallets.
You'd have to use a new binary that can survive the hard-fork (upcoming release)
On this new binary, until the hard-fork happen, you'll be unable to send transactions (but reading from the chain would work without issue).

See the releases page for the Shelley wallet.


Expose Mobile Columns in Layout Config

Description
It's is possible to override the column count at each breakpoint using CSS currently, but this isn't low-code friendly.
We should expose these at the page level (maybe base to be consistent across the full Dashboard?) to make this easier.
Have you provided an initial effort estimate for this issue?
I have provided an initial effort estimate

Is this a duplicate of #1225?

It most certainly is, I was on my phone when creating this, did a quick search (as I remembered one being created) and couldn't find it.
Closing as duplicate of #1225


Measure transcoding cpu usage with gnu time when running locally

When transcoding locally with ffmpeg, it would be useful to measure cpu usage. Easiest solution is probably to run the ffmpeg command through gnu time.

Fixed. Cpu time used is measured with gnu time and written to file *-passx-cpu-time.txt.


fix(chat): disallow double quotes in entity names (Issue #1622)

Description:
disallow double quotes in entity names
Issues:

Issue #1622

Checklist:

[x] the pull request name complies with Conventional Commits
[x] the pull request name starts with fix(<scope>):, feat(<scope>):, feature(<scope>):, chore(<scope>):, hotfix(<scope>): or e2e(<scope>):. If contains breaking changes then the pull request name must start with fix(<scope>)!:, feat(<scope>)!:, feature(<scope>)!:, chore(<scope>)!:, hotfix(<scope>)!: or e2e(<scope>)!: where <scope> is name of affected project: chat, chat-e2e, overlay, shared, sandbox-overlay, etc.
[x] the pull request name ends with (Issue #<TICKET_ID>) (comma-separated list of issues)
[x] I confirm that do not share any confidential information like API keys or any other secrets and private URLs

/deploy-review

/deploy-review

/deploy-review

/deploy-review

/deploy-review


More control over modal contents and issues with inline-template

I have posted it on the laracasts forum post here for reference:
https://laracasts.com/discuss/channels/general-discussion/vuestrap-bootstrap-components-built-with-pure-vuejs?page=3#reply-106358
Essentially would be great to have multiple insertion points or full support for inline-template.
When I used inline-template it only left some of my template intact and tried to replace/remove other items.

See new modal components with custom template. http://yuche.github.io/vue-strap/#modal

Thanks, just gave that a go however does it only support that specific structure as when I tried:
<modal show="{{@showPreview}}" effect="fade" width="800" v-el="emailPreview">

        <button type="button" class="close" data-dismiss="modal" aria-label="Close">×</button>

{{ title }}

        Country: {{ country | uppercase }}
        Language: {{ language | uppercase }}

        <form>

        </form>

        <button type="button" class="btn btn-default" data-dismiss="modal">Dismiss</button>
        <button type="button" class="btn btn-primary" v-on="click: triggerEvent">Confirm</button>

</modal>

Everything was inserted into the modal body tag?

@andrewdavidcostello   I have this error  Browserify Failed!: 'import' and 'export' may appear only with 'sourceType: module' .
I did  window.VueStrap = require('vue-strap'); // i tried even full path also
new Vue ({
components:{
alert : VurStrap.alert;
})
what mistake I did ?

@chagamkamalakar
Try:
var alert = require('vue-strap/src/Alert.vue');

Browserify Failed!: Parsing file /../../../node_modules/vue-strap/src/Alert.vue: 'import' and 'export' may appear only with 'sourceType: module' ..

@chagamkamalakar You are probably experiencing this issue?
https://github.com/yuche/vue-strap/issues/13
To get around this I use
window.VueStrap = require('vue-strap/dist/vue-strap.min.js');

components: {
        // Bootstrap
        'alert': VueStrap.alert,
        'datepicker': VueStrap.datepicker,
        'modal': VueStrap.modal,
        'panel': VueStrap.panel,

Not a nice solution but it works for now.

@andrewdavidcostello
when i tried earlier .. it was complied with no error. but alert box is displayed like normal text .. i coded as bellow
in main.js file      i did like
window.VueStrap = require('vue-strap/dist/vue-strap.min.js');
list.template.js

Hotel listing

Name
Latest Booked

        Click to toggle alert on right

Well Done!
You successfully read this important alert message.

----------------------------
list.js
======
module.exports = {
    template: require('./list.template.html'),
components: {
    'alert': VueStrap.alert
},

data: function() {
    return {
        showRight: false,
        showTop: false
    }
}

}
It's not working, what it went wrong


Style main page

In this PR, I styled rest of the features of the main page.

Hi @ashmalzahra ,👋🏻👋🏻
Your project is complete! There is nothing else to say other than... it's time to merge it :shipit:
Congratulations! 🎉 🔥🔥💯💯

Highlights 🔥🔥🔥🔥
No Linters erros 💯
Followed Gitflow ✅
Descriptive PR 💯
Optional suggestions
Every comment with the [OPTIONAL] prefix won't stop the approval of this PR. However, I strongly recommend you to take them into account as they can make your code better. Some of them were simply missed by the previous reviewer and addressing them will really improve your application.
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, remember to tag me in your question so I can receive the notification.


build: setting up permissions to API Token

Added permissions to the API TOKEN. Please let me know what you think.

agreed on changes

Thank you

merging to main.


[ZEPPELIN-4353] Move flink specific logic into FlinkInterpreterLauncher

What is this PR for?
This PR is a refactoring PR which introduce a new plugin module launcher/flink for launching flink interpreter.
What type of PR is it?
[ Improvement  | Refactoring]
Todos

[ ] - Task

What is the Jira issue?

https://issues.apache.org/jira/browse/ZEPPELIN-4353

How should this be tested?

CI pass

Screenshots (if appropriate)
Questions:

Does the licenses files need update? No
Is there breaking changes for older versions? No
Does this needs documentation? No

Will merge if no more comments


evm upgrade to parity/frontier commitment 224f251d29dbe16128859b7eee2…

Codecov Report

Merging #174 (bbc0dfc) into master (e64286d) will decrease coverage by 0.08%.
The diff coverage is 48.89%.

@@            Coverage Diff             @@
##           master     #174      +/-   ##
==========================================
- Coverage   75.32%   75.24%   -0.09%
==========================================
  Files          91       91
  Lines       21860    22022     +162
==========================================
+ Hits        16466    16570     +104
- Misses       5394     5452      +58

Impacted Files
Coverage Δ

frontier/client/rpc-core/src/types/block_number.rs
32.47% <0.00%> (ø)

frontier/client/rpc/src/lib.rs
0.36% <ø> (ø)

frontier/frame/base-fee/src/lib.rs
73.65% <0.00%> (-1.28%)
:arrow_down:

frontier/primitives/rpc/src/lib.rs
1.39% <0.00%> (-0.48%)
:arrow_down:

rpc/src/lib.rs
0.46% <0.00%> (-0.04%)
:arrow_down:

runtime/src/lib.rs
22.84% <0.00%> (-0.19%)
:arrow_down:

frontier/frame/ethereum/src/lib.rs
76.40% <61.11%> (-0.70%)
:arrow_down:

frontier/frame/evm/precompile/modexp/src/lib.rs
94.35% <97.95%> (+3.22%)
:arrow_up:

frontier/frame/ethereum/src/tests/eip1559.rs
98.91% <100.00%> (ø)

frontier/frame/ethereum/src/tests/eip2930.rs
98.90% <100.00%> (ø)

... and 8 more

Continue to review full report at Codecov.

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


Questions regarding the hyperparameter searching

Hi, I have one question regarding the way to do the full hyperparamer searching, according to the paper:
we provide the experiment results with the full version of the parameter search. We searched for input length among 96, 192, 336, and 512, learning rate from 10−5 to 0.05, encoder layers from 1 to 5, the dmodel from 16 to 512, training epochs from 10 to 100.
Did you find the best hyperparameter by looking at the validation loss? If so, as far as I can see from the code, the validation data is always the same, then how did you prevent the overfitting of the model on this validation set?
Thanks in advance!

Thank you for your attention to our research. Your question highlights a significant aspect of our study. It is indeed true that hyperparameter tuning predominantly depends on the evaluation of the validation set, and this practice is widely observed in the field. Currently, we address the challenge of overfitting by employing early stopping strategies. In addition, we are actively investigating improved methodologies to further mitigate this issue.


Implement version code adjustment for ABI

Basically, do what make_apk's MakeVersionCode() does, so all APKs can be uploaded and are not conflicting each other.

Will be implemented as part of manifest support.


fix-vertical-metrics.py: fixed linegaps

If any linegap option recieved the value 0, the if options.linegaps: statement would be ignored.

Closing for now, needs further investigation


Closes #50 #52

This commit enables

service-fabrik-broker to recognize json parameter
passed to cf create-service command and deploy to the BOSH specified.
{
 bosh_director_name: <bosh>,
 username: <user_name>,
 password: <password>
}

This bosh_director_name if provided is used to chose the bosh where
the deployment is to be created.  If no director_name is provided the
default bosh is used for create.

With multiple BOSH updates to instances in old BOSH were failing and
a new instance was created in the currently active BOSH.
Any create/update request first checks to see the BOSH in which the
instance exist and then perform update on that BOSH.

Test failing due to npm install issue.


event doesn't seem to fire on "orientationchange"

Works fine on browser window resize and even in the Chrome Developer mobile preview however when viewing on a real iPad/iPhone the size doesn't change when the iOS device is rotated.
I believe this doesn't trigger a resize but instead an orientationchange  event which should be listened for.
I've tried with resize-observer-polyfill and still the same outcome.
Not sure if this is a component-size issue or a ResizeObserver issue (or if i'm just doing something wrong)
edit:
Looks like it possibly my issue. However i'm still seeing the following when i print the size to the screen:
Initial View in Portrait Mode:
{"width":722, "height":1058}
Rotate iPad to Landscape
{"width":722, "height":1058} // No change
Rotate iPad Back to Portrait
{"width":1082, "height": 698} // Changed but referring to the old landscape size
So it looks like it's missing the orientationchange event on the iOS device. Again works fine in the Chrome Browser.

Okay closing this issue as I was able to get it working in a minimal repo so i'm assuming there's an issue with my project somewhere else down the line.


Update is type test logic for NNBD

Need to preserve existing behavior in Legacy libraries
Example null is T is false but Null <: T.
In libraries that have opted in, null is T should always agree with the subtype relation.

Is this still P2 and blocker?  Shouldn't be both.

The spec and our implementation has converged. I believe we are handling these correctly now and we can open new issues for any case where our type test are not correct.


Craft 4 Upgrade

Hey,
Is there a plan in place to make this package compatible with Craft 4?
All the best
Joel

At present, there isn't. What are the main changes if you know? I might take a look in a few weekends.


Cannot read property 'removeListener' of undefined

🐛 Bug Report
Seems related to #192. Locally, the tests run fine, but when running our tests in CircleCI, we get the error:
[Jest Dev server] ℹ ｢wdm｣: Compiled successfully.
 FAIL  test/browser/tests/presentation.entry.js
  ● Test suite failed to run

    TypeError: Cannot read property 'removeListener' of undefined

      at PuppeteerEnvironment.teardown (node_modules/jest-environment-puppeteer/lib/PuppeteerEnvironment.js:126:22)

 FAIL  test/browser/tests/login.entry.js
  ● Test suite failed to run

    TypeError: Cannot read property 'removeListener' of undefined

      at PuppeteerEnvironment.teardown (node_modules/jest-environment-puppeteer/lib/PuppeteerEnvironment.js:126:22)

 FAIL  test/browser/tests/app.entry.js
  ● Test suite failed to run

    TypeError: Cannot read property 'removeListener' of undefined

      at PuppeteerEnvironment.teardown (node_modules/jest-environment-puppeteer/lib/PuppeteerEnvironment.js:126:22)

I've tried clearing the CircleCI cache, but it doesn't help. I also tried adding a global teardown to no avail.
Previously everything was working with:

"jest-puppeteer": "3.8.0"
"jest": "23.6.0"
"puppeteer": "1.11.0"

It fails after updating to:

"jest-puppeteer": "3.9.0"
"jest": "24.1.0"
"puppeteer": "1.12.2"

Our jest.config.js:
module.exports = {
  preset: 'jest-puppeteer',
  roots: ['<rootDir>/test/browser/'],
  testMatch: ['<rootDir>/test/browser/tests/*.entry.js'],
  transform: {
    '^.+\\.(js|jsx)?$': 'babel-jest',
  },
  verbose: true,
};

Our jest-puppeteer.config.js:
const argv = process.execArgv.join();
const isDebugging =
  Boolean(process.env.debug) ||
  argv.includes('inspect') ||
  argv.includes('debug');
const slowMo = 100;
const browserSettings = isDebugging
  ? {
      devtools: true,
      headless: false,
      slowMo,
    }
  : {
      slowMo,
    };

module.exports = {
  launch: {
    defaultViewport: {
      width: 1920,
      height: 1080,
    },
    args: [
      '--window-size=1920,1080',
      '--no-sandbox',
      '--disable-setuid-sandbox',
      '--homedir=/tmp',
      '--data-path=/tmp/data-path',
      '--disk-cache-dir=/tmp/cache-dir',
      '--remote-debugging-port=9222',
      '--proxy-server="direct://"',
      '--proxy-bypass-list=*',
    ].filter(Boolean),
    ...browserSettings,
    dumpio: true,
  },
  server: {
    command: 'yarn test:server',
    protocol: 'http',
    host: 'localhost',
    port: 8082,
    launchTimeout: 500000,
    usedPortAction: 'ignore',
    debug: true,
  },
};

yeah, we are not support jest v24 yet, please use jest v23.6 now.
see https://github.com/smooth-code/jest-puppeteer/pull/196

@anton164
jest-puppeteer are support jest v24 now,.
for jest 22~23 version, you can use<EMAIL_ADDRESS>for jest 24 version, you can use<EMAIL_ADDRESS>

Awesome, thanks @xiaoyuhen !

With a fresh cache in CircleCI this still breaks:
[Jest Dev server] ℹ ｢wdm｣: Compiled successfully.
 FAIL  test/browser/tests/presentation.entry.js
  ● Test suite failed to run

    TypeError: Cannot read property 'removeListener' of undefined

      at PuppeteerEnvironment.teardown (node_modules/jest-environment-puppeteer/lib/PuppeteerEnvironment.js:126:22)

 FAIL  test/browser/tests/login.entry.js
  ● Test suite failed to run

    TypeError: Cannot read property 'removeListener' of undefined

      at PuppeteerEnvironment.teardown (node_modules/jest-environment-puppeteer/lib/PuppeteerEnvironment.js:126:22)

 FAIL  test/browser/tests/app.entry.js
  ● Test suite failed to run

    TypeError: Cannot read property 'removeListener' of undefined

      at PuppeteerEnvironment.teardown (node_modules/jest-environment-puppeteer/lib/PuppeteerEnvironment.js:126:22)

Should I do something to my config?

@anton164
it's very weird. could you please give me a demo for check this?

For me this happens only when headless false: otherwise it works.
TypeError: Cannot read property 'removeListener' of undefined

      at PuppeteerEnvironment.teardown (node_modules/jest-environment-puppeteer/lib/PuppeteerEnvironment.js:126:22)

    "babel-jest": "^24.1.0",
    "eslint-plugin-jest": "^22.3.0",
    "faker": "^4.1.0",
    "jest": "^24.1.0",
    "jest-cli": "^24.1.0",
    "jest-image-snapshot": "^2.8.1",
    "jest-puppeteer": "^4.0.0",
    "pptr-testing-library": "^0.3.1",
    "puppeteer": "^1.12.2"

Cheers

@xiaoyuhen here is a repro based on the create-react-example:
https://github.com/anton164/jest-puppeteer-192
As you can see it fails in CircleCI:
https://circleci.com/gh/anton164/jest-puppeteer-192/6
After updating to node v11, there actually seem to be two errors:
 FAIL  integration/app.test.js
  ● Test suite failed to run

    TypeError: Cannot read property 'removeListener' of undefined

      at PuppeteerEnvironment.teardown (../node_modules/jest-environment-puppeteer/lib/PuppeteerEnvironment.js:126:22)

and
events.js:173
      throw er; // Unhandled 'error' event
      ^

Error: spawn ps ENOENT
    at Process.ChildProcess._handle.onexit (internal/child_process.js:246:19)
    at onErrorNT (internal/child_process.js:427:16)
    at processTicksAndRejections (internal/process/next_tick.js:76:17)
Emitted 'error' event at:
    at Process.ChildProcess._handle.onexit (internal/child_process.js:252:12)
    at onErrorNT (internal/child_process.js:427:16)
    at processTicksAndRejections (internal/process/next_tick.js:76:17)

The docker image used in CircleCI is quite simple:
# Image for ardoq/ci-docker-front
FROM node:11-slim

RUN apt-get update
RUN apt-get install -y curl git
# Dependencies for headless chrome (puppeteer), see https://github.com/Googlechrome/puppeteer/issues/290
RUN  apt-get update \
  # See https://crbug.com/795759
  && apt-get install -yq libgconf-2-4 \
  # Install latest chrome dev package, which installs the necessary libs to
  # make the bundled version of Chromium that Puppeteer installs work.
  && apt-get install -y wget --no-install-recommends \
  && wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add - \
  && sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list' \
  && apt-get update \
  && apt-get install -y google-chrome-unstable --no-install-recommends \
  && rm -rf /var/lib/apt/lists/* \
  && wget --quiet https://raw.githubusercontent.com/vishnubob/wait-for-it/master/wait-for-it.sh -O /usr/sbin/wait-for-it.sh \
  && chmod +x /usr/sbin/wait-for-it.sh
RUN npm update
RUN npm install -g grunt-cli

@anton164
it's an instrumental demo. thank you for your information.
I will find the problem as soon as possible.

I am having a similar problem as well, I isolated it from your CRA example
could be the same or different?
I am trying to launch a browser with "run test:launch" and then run test with connect()
you can see what I tried in the commented out config file

I am using a "launch.js" to start my chrome browser in debug (see launch.js)
I am using "connect" in the jest-puppeteer.config.js

I get:

 FAIL  integration/app.test.js
  ● Test suite failed to run

    TypeError: Cannot read property 'removeListener' of undefined

      at PuppeteerEnvironment.teardown (../node_modules/jest-environment-puppeteer/lib/PuppeteerEnvironment.js:126:22)

Test Suites: 1 failed, 1 total
Tests:       0 total
Snapshots:   0 total
Time:        0.114s
Ran all test suites.
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR<EMAIL_ADDRESS>test:integration: `jest -c integration/jest.config.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>test:integration script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:

$ npm run launch
(other window)
$ npm run test:integration
on the CRA example, here:
https://github.com/fullstackwebdev/cra-jest-puppeteer-fail

Nice @fullstackwebdev , good to have another example - mine has only been failing in continuous integration (CircleCI)

I did run into same issue. Tests fail in CircleCI.

Same problem here, also using connect options, to connect to a chromium instance running inside a docker container. Its lifecycle is managed outside of jest.

i have found the error. you are not allowed to pass both browserWSEndpoint and browserURL to the connect function.

the browserURL must be unset here https://github.com/smooth-code/jest-puppeteer/blob/master/packages/jest-environment-puppeteer/src/PuppeteerEnvironment.js#L40 since the connect/launch variants are all "normalized" in globals.setup and we always get a browserWSEndpoint from there

Good! @backbone87 @xiaoyuhen could you submit a PR to fix this bug?

@backbone87 Your PR solved my issue as well. Thank You a lot!


How to use Carla, ScenarioRunner & OpenPilot

Describe our question or idea
I am trying to use the ScenarioRunner to simulate Scenarios in OpenScenario format. Additionally, I use OpenPilot. The problem occurs, when trying to combine them. Until now, I tried only the FollowLeadingVehicle scenario.
The ego vehicle which is spawned by OpenPilot is not recognized by the Scenario_Runner. I also tried to use the "--waitForEgo" Flag, but this does not change anything here. So how is it possible to specify, that the vehicle, that is spawned when starting OpenPilot, triggers the scenario, instead of the vehicle used right now. I hope you get my point?
Expected behavior
I expect that I can combine OpenPilot and Carla+ScenarioRunner to be able to run scenarios with the given vehicle (of OpenPilot).
Desktop (please complete the following information):

OS: Ubuntu 18 LTS
CARLA Version: 0.9.11
Python version: 3.6
Version 0.9.11
OpenPilot: 0.8.4

I am happy about anything, that can help to run the scenarios.

I am not familiar with OpenPilot, but in general you can do the following: Let OpenPilot spawn the vehicle with the rolename "hero", and use that name for the OpenSCENARIO object, i.e. . Then use --waitForEgo.

Sorry for the late reply, I tried to figure out where I can replace the name of the vehicle in the OpenPilot files, but I didn't find something yet. How is it generally possible to define the name of the vehicle in python ? Maybe it is already sufficient to simply add that to the file that starts OpenPilot.

I added the line blueprint.set_attribute('role_name', 'hero') in the bridge.py file before the vehicle actor is spawned, so here https://github.com/commaai/openpilot/blob/d7ab611bb0a616374e28eb4f0cdf46bb0172bb4b/tools/sim/bridge.py#L198 basically.
I then started the bridge.py of OpenPilot with the addition that I specified town Town01 as this was needed, scenario runner like python3 --scenario FollowLeadingVehicle_1 --waitForEgo and also the manual_control as usual. However, the consoles with the scenario_runner both kept printing "waiting for ego vehicle"  or if I changed the starting order, OpenPilot was unavailable. Do I need to make additional steps?

The line that you have linked is for the camera not for the vehicle. Is just the link wrong, or did you add the rolename to the wrong actor (camera not vehicle)?

 I saw that there are different actors for camera and vehicle, but I somehow mixed up the lines in the vim editor. After inserting vehicle_bp.set_attribute('role_name','hero') before this line, so in the correct positon, it worked and the scenario could be run. So thank you really much for your help!

@jbirtel
Hi, I am trying to reproduce the results you did
Carla: 0.9.12
ScenarioRunner: v0.9.12
OpenPilot: 0.8.14
I have done connect carla, scenariorunner, and openpilot, but the question when I manually drive ego_vehicle or start ACC, NO other vehicle spawned... it supposed to spawn vehicle in front of ego in the scenario "following_leading_vehicle"

So the steps that I did were

Start Carla and play the scene (so any map) in there, as for usual scenes
Start OpenPilot with the specified map of the scenario. You should get into another mode (in the docker) where you can start ACC, stop ACC, stop the bridge.py, manually drive the vehicle.
You have to insert vehicle_bp.set_attribute('role_name','hero') in the bridge.py with a vim editor or so, while you are still in that special mode. This must be inserted after the variable vehicle_bp is declared. You need to save that and exit the editor.
Here I am actually unsure about the correct order out of the box , but I think you first need to start the bridge.py with the correct town (—town ) and scenario runner with the waitForEgo flag. Then, on starting ACC, some milliseconds afterwards the leading vehicle is spawned.

These were the steps that worked for me at least.

@jbirtel
Thank you SO MUCH!!
Finally I figure out why I cannot see the spawned vehicle after I ACC my ego_vehicle. The key point is the ORDER.
I did run scenario_runner first and then bridge.py.
Thanks again!


bug: text is pasted when opening a file

Did you check docs and existing issues?

[X] I have read all the LazyVim docs
[X] I have searched the existing issues of LazyVim
[X] I have searched the existing issues of plugins related to this issue

Neovim version (nvim -v)
NVIM v0.10.0
Operating system/version
Linux
Describe the bug
When I open a file, taxt that I deleted earlier (with closing nvim in the meantime) is pasted into the document.

Steps To Reproduce

edit a file, delete some text
close nvim
open a file, the text is pasted

Expected Behavior
Don't paste text at startup.

I already tried various versions of neovim (0.9, 0.10.0, nightly).
I deleted my config and cloned the lasyvim repo without any changes, the issue happens even with that
The bug seems not to happen when I use the config below (repo.lua)

Repro
-- DO NOT change the paths and don't remove the colorscheme
local root = vim.fn.fnamemodify("./.repro", ":p")

-- set stdpaths to use .repro
for _, name in ipairs({ "config", "data", "state", "cache" }) do
  vim.env[("XDG_%s_HOME"):format(name:upper())] = root .. "/" .. name
end

-- bootstrap lazy
local lazypath = root .. "/plugins/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
  vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", lazypath, })
end
vim.opt.runtimepath:prepend(lazypath)

-- install plugins
local plugins = {
  "folke/tokyonight.nvim",
  "folke/LazyVim",
  -- add any other plugins here
}
require("lazy").setup(plugins, {
  root = root .. "/plugins",
})

vim.cmd.colorscheme("tokyonight")
-- add anything else here

Can't reproduce

Try the following
1. `mkdir ~/.config/lazytest`
2. `git clone https://github.com/LazyVim/starter ~/.config/lazytest`
3. `NVIM_APPNAME=lazytest nvim` and wait for the installation to complete
4. Restart Neovim with the command provided in step 3
5. Delete some text and restart Neovim with command from step 3

Do you observe the same behavior?
For cleanup
rm -rf ~/.config/lazytest
rm -rf ~/.local/share/lazytest
rm -rf ~/.local/state/lazytest
rm -rf ~/.cache/lazytest

@dpetka2001 I get the exact same behaviour!
Any ideas what plugin might cause this? I'm willing to disable whatever comes tou your mind in order to fix this.
I work from a Windows machine through an SSH tunnel on a Arch linux machine, ist that maybe part of the problem?

Maybe what you're using to ssh is messing with the clipboard and sends the clipboard? Not sure. Check the settings of the app you use for ssh. But if you're not able to reproduce locally on your pc, then I don't think this is a LazyVim bug.

I think I got something.

Windows Terminal + Powershell 7 -> Problem
Windows Terminal + Powershell 5 -> No Problem
Putty -> No Problem

Maybe some weird Powershell stuff going on 🤔

Seems similar to https://github.com/neovim/neovim/issues/29047
Either way, I'm closing this, since this is for sure not a LazyVim issue...


Submission of Media Component

Hi Dondi,
Here is Nick Soffa's and my submission for the Media component. I am still working on my section the Selecting component and will be submitting that later on tonight.

Hi again!
I finished the final touches on the selecting component and I am turning it in right now. I am so sorry that it is late.


README: Use HTTPS where possible

There’s no reason not to always use HTTPS. See https://github.com/konklone/cdns-to-https#background for more info.

Btw, consider updating this URL to use HTTPS as well:


Vue lazy loading modules

Is your feature request related to a problem? Please describe.

Currently we noticed that a lot of our pages have low load times. This is only happening to the pages using VueJS + JSS. If we could have the components lazy load (or dynamically load) it would be a great benefit to the load timings.
Describe the solution you'd like

So far I have not figured out in what file the components are imported, still trying to find the correct place, but the file that is importing the components per Route should have dynamic/lazy loading of each component. That way the initial first components load before all others. Making sure the load times stay minimal.
Describe alternatives you've considered

Dynamically loading components, or setting custom timeouts.

@kars-springbok in #366 I provided usage of lazy loading in local import of (Text, RichText...), but it's not related to Styleguide-* components. Some chunks appeared in network panel, but for now i don't found a way how to dynamically import Styleguide components

It is important to be very selective with dynamic imports. It is far too easy to get carried away and think that you should dynamically import all components. Remember that each component you dynamically import will likely represent a separate network request in order to load and then render. This can negatively impact your time-to-interactive speed as well as increase the amount of data being sent to clients. I would recommend taking the time to try to find a good balance between dynamic imports and static imports.

@karsvaniersel You can edit generateComponentFactory function in scripts/generate-component-factory.js,
these components will be loaded in separate chunks. Start application and check src/temp/componentFactory.js - here is registration of your components.
function generateComponentFactory() {
  // by convention, we expect to find Vue components
  // * under /src/components
  // * with a .vue extension to define a component file
  // If you'd like to use your own convention, encode it below.
  // NOTE: generating the component factory is also totally optional,
  // and it can be maintained manually if preferred.

  const imports = [];
  const registrations = [];

  // Define components that you want to lazy load
  const LAZY_LOADED_COMPONENTS = [
    'Styleguide-FieldUsage-Text',
    'Styleguide-Multilingual',
    'GraphQL-IntegratedDemo',
    'GraphQL-SSRDemo',
    'GraphQL-ConnectedDemo'
  ]

  const componentFiles = extractVueFiles(componentRootPath);
  componentFiles.forEach((componentFile) => {
    if (!fs.existsSync(componentFile)) return;

    console.debug(`Registering JSS component ${componentFile}`);
    const componentName = path.basename(componentFile, '.vue');
    const importVarName = componentName.replace(/[^\w]+/g, '');

    const importFullPath = componentFile
      .replace(path.join(componentRootPath, '/'), '')
      .replace(/\\/g, '/')
      .replace('.vue', '')
    // If it's component which should be lazy loaded -> generate dynamic import
    if (LAZY_LOADED_COMPONENTS.includes(componentName)) {
      registrations.push(`components.set('${componentName}', () => import('../components/${importFullPath}'));`);
      return;
    }

    imports.push(
      `import ${importVarName} from '../components/${importFullPath}';`
    );

    registrations.push(`components.set('${componentName}', ${importVarName});`);
  });

  return `/* eslint-disable */
// Do not edit this file, it is auto-generated at build time!
// See scripts/bootstrap.js to modify the generation of this file.
${imports.join('\n')}

const components = new Map();
${registrations.join('\n')}

export default function componentFactory(componentName) {
  return components.get(componentName);
};
`;
}


Multiplication of Two Linked Lists

In the given issue, I will be computing the multiplication of two Linked lists l1 and l2.
INPUT:

n, denoting the size of the first linked list.
Space-separated values of the first linked list.
m, denoting the size of the second linked list.
Space-separated values of the second linked list.

OUTPUT:
An integer denoting the product of the two linked lists.
EXAMPLE:
INPUT:
2       //size of the first linked list
4 5   //values of the first linked list
2      //size of the second linked list
6 7   //values of the second linked list.
OUTPUT:
3015 (Multiplication of 45 and 67)
LANGUAGE: C++
Please let me work on this particular issue,
@plazzy99 @rudrakshi99 @tarun26091999 @nakul-19 @OjusWiZard @shreyanspoddar @raksha009 @anjul2000

Please Assign this problem to me. I will implement in java


RuboCop plugins/extensions API

Some thoughts on plugins/extensions API after writing a rubocop-md gem (btw, @bbatsov I'd like to transfer this gem to rubocop-hq if you don't mind).

[x] Ability to customize supported file extensions list Solved by https://github.com/rubocop-hq/rubocop/issues/4247

[ ] Ability to extend the default configuration.

When inheriting from default, the plugin's default configuration should be merged into it.
Right now we have to monkey-patch (see, for example, rubocop-rspec).
Related method is ConfigLoader#default_configuration:
def default_configuration
  @default_configuration ||= begin
    print 'Default ' if debug?
    load_file(DEFAULT_FILE)
  end
end

Suppose that we have a list of plugins. The the method could look like this:
def default_configuration
  @default_configuration ||= begin
    print 'Default ' if debug?
    plugins.inject(load_file(DEFAULT_FILE)) do |config, plugin|
      resolver.merge(config, plugin.default_config)
    end
  end
end

More specific features (but it would be great to have a way to do that without monkey-patching):

[ ] Source pre-processing.

Ability to modify the source before parsing it (example).
It's a way to generate a Ruby-parseable contents from non-Ruby files.

[ ] Post-processing after auto-correct.

Ideally, it would be great to make it possible to inject between any two steps in the process:
<start> -> read file -> parse code -> run cop (n times) -> perform auto-correct -> <finish>

These features are mostly useful to use RuboCop with non-Ruby files; there are some existing projects, such as  https://github.com/ericqweinstein/ruumba, https://github.com/brigade/haml-lint.
We can introduce a plugin interface like this:
class MyRubocopPlugin < Rubocop::Plugin
  # register default config extension
  default_config File.join(__dir__, "default.yml")

  # conditionally enable plugins
  enable_if ->(filename) { markdown?(filename) }

  # register source preprocessing hook;
  # accepts callable object
  pre_process_source MyRubocopPluging::Preprocessor

  # register source post processing hook, which is called
  # when auto-correct generates a new code and before it's written to file,
  # so we can revert our pre-processing
  post_process_source MyRubocopPluging::Postprocessor

  # hook into auto-correct process; for example, we can build interactive auto-correct
  # by asking a user before adding a correction to the Corrector
  # (that's something I was thinking about for a long time, but it's not easy to implement right now)
  pre_autocorrect ->(correction) {
    # when `false` is returned then skip the correction
    prompt "Apply? y/n >\n#{correction}"
  }
end

Some thoughts on plugins/extensions API after writing a rubocop-md gem (btw, @bbatsov I'd like to transfer this gem to rubocop-hq if you don't mind).

I've just invited you to RuboCop HQ, so you can transfer the gem at your convenience.

When inheriting from default, the plugin's default configuration should be merged into it.

Yeah, I completely agree. This should be an easy change.

Ideally, it would be great to make it possible to inject between any two steps in the process:

Agree with you here as well.
I seem to recall you owe me a few PRs, so you might start by tackling this. ;-)

I seem to recall you owe me a few PRs, so you might start by tackling this. ;-)

Sure. I'll start right after Paris.rb)

@bbatsov

I've just invited you to RuboCop HQ, so you can transfer the gem at your convenience.

Done!

@bbatsov @palkan
Is the current implementation and the use of RuboCop's internal API as done in rubocop-md something you would recommend for other RuboCop plugins?
See https://github.com/rubocop/rubocop-md/blob/2fb1a9a6f847effad88840d0cb3afdb1d301413b/lib/rubocop/markdown/rubocop_ext.rb#L43-L84
Are there plans to enhance the documentation with how to create a plugin? I wasn't able to find anything related.
Just asking for the "best practices" :grinning:
Are there any other RuboCop plugins available where I can look at? :thinking:

There is no official plugin architecture right now unfortunately. The solutions some of the extension libraries have used (such as the inject.rb file) are stable, but are susceptible to breaking if/when RuboCop itself changes.
A small amount of configuration has been moved to be more extensible by extensions, but there is much more that works now by hacks. https://docs.rubocop.org/rubocop/extensions.html is probably the best "documentation" right now but it's pretty sparse.

@dvandersluis Thanks for the fast and insightful response :heart:
I mixed up extensions with plugins - actually I thought these were two different concepts - they aren't :+1:
https://github.com/rubocop/rubocop-extension-generator is a great starting point :tada:


Establish CI/CD pipeline

As a developer, I want to develop and test my modules using the central infrastructure for CI/CD pipeline, so that I can have my pull requests validated.
Description:

Establish CI/CD pipeline for development and testing
Test, evaluate and document the considerations for the publicly available CI/CD services which will be utilized

Acceptance Criteria:

Every commit pushed to a pr should build and run test scripts
Test should cover all the packages in the repository

thanks @kranthie-sap


Dockerfile.jammy error

Dear Sir,
I run into error when trying to build a docker image from the HOME directory of my tensor book UBUNTU 22. The 6th line of the code: ADD control .
is where i am running into error.
Please kindly advise.
See below:
(base) gerry@gerry-TensorBook-2022:~$ sudo docker build -t lambda-stack:22.04 -f Dockerfile.jammy .
DEPRECATED: The legacy builder is deprecated and will be removed in a future release.
Install the buildx component to build images with BuildKit:
https://docs.docker.com/go/buildx/
Sending build context to Docker daemon   29.7GB
Step 1/9 : FROM ubuntu:22.04
---> 8a3cdc4d1ad3
Step 2/9 : WORKDIR /root/
---> Using cache
---> 2113d17b9912
Step 3/9 : ADD control .
ADD failed: file not found in build context or excluded by .dockerignore: stat control: file does not exist

It sounds like you copied the Dockerfile from the repository, but not the corresponding control file (or GPG key). In the future, just build it from the repository directory.


Restore Ignore Recommendation

Issue Type: Feature Request
hi
when i Ignore recommendation for some extensions , later i want to see them and install , i dont know witch them is recommendation , sorry for bad english ,
VS Code version: Code 1.31.0 (7c66f58312b48ed8ca4e387ebd9ffe9605332caa, 2019-02-06T08:51:24.856Z)
OS version: Linux x64 4.15.0-45-generic

You can find all recommended extensions in the extensions view by applying Recommended filter.


Memory leaks in test_setid.cpp

When the test is built in debug mode and run, memory leaks are present.

So I am investigating this error and was surprised to discover that a seg fault is occurring in updatepumpparams() line 409 when the modified input file is being read back in. Very interesting indeed.

Investigating further, this test passes with no leaks when built Win32 and fails when built Win64.

this bug in test_set_id is a specific case of the more general test_save_reopen bug that has been identified.
See Issue #339


refactor: upgrade to uglifyes v3.0.0

There is uglifyes-webpack-plugin and aren't there API breaking changes betwen uglifyes (v3.0.0) && uglifyjs (v2.0.0) which makes this more complicated then switching the dependency?

I was just giving it a go to see what tests pass, but yeah there's none

Superseded by #55 Thx :)


quantity (resource requests and limits) does not parse decimal [ki|me|gi]bibyte correctly

when resource (or limit) is set to kibibyte, mebibyte or gibibyte as decimal number, it is not parsed correctly. For example setting memory to 2.1Gi will be converted to<PHONE_NUMBER>400m. What is happening is that the number is padded to 10 places<PHONE_NUMBER> and then converted.

closing, calculation is correct, looking at tests m is not megabyte, but {".001Ki", "1024m"}


Modal content

Add content to About Modal.
@carderne @Naigege do you already have something written up?

@olafveerman
Text here: https://github.com/carderne/africa-grid-explorer/blob/patch-1/about.md

I've added the text to the modal. It's a bit long for a modal, especially on smaller screen sizes.


Can't use indexed/mapped type signature in interfaces?

TypeScript Version:  2.1.5
What I'd like to do is effectively extend from a record type and then add a few more custom properties. Since type aliases cannot by extended, I tried solving the problem with an indexed type signature in the interface. Unfortunately, this doesn't compile. I also can't add extra properties to a mapped type, so it seems I may be stuck. Is there a way around this problem?
Code
type Names = 'foo' | 'bar' | 'baz';

interface Thing1 {
  readonly [T in Names]?: string;
}

interface Thing2 {
  readonly [T in Names]?: string;
  extra?: number;
}

type Thing3 = Readonly<Partial<Record<Names, string>>>;

type Thing4 = {
  readonly [T in Names]?: string;
};

type Thing5 = {
  readonly [T in Names]?: string;
  extra?: number;
};

Expected behavior:
I would expect all of these to compile.
Actual behavior:
Thing1 and Thing2  fail to compile due to the indexed type signature. Thing5 fails to compile due to the extra property.

It looks like this is a solution:
type Thing6 = Readonly<Partial<Record<Names, string>>> & { extra?: number };

However, I'm still curious if there is a better way.

Personally, I would not like allowing to add extra properties on {type aliases|interfaces} having indexed definition, and not following this indexed definition constraint (in your case, your extra property is of type number, not following the string value indexed type constraint) as I would consider it as an important backward incompatible change in meaning for such indexed definitions.
I often use such type definition (with :, not the new in operator -but I think we could keep the same idea between indexed properties, no matter if we use : or in-) to say to TS compiler "hey, I'm gonna work with a map having every of its values of a certain type (...and optionally, I can give you a list of those properties to help intellisense)"
For instance :
type LogCallback = (message: string, context?: LogContext) => void;
interface LogLevelCallbacks {
    // Here, defining that "every properties of my map will be of type LogCallback"
    [key: string]: LogCallback;

    // Here, specifying the exhaustive list of my properties.. particularly useful to have completion in intellisense
    info: LogCallback;
    warn: LogCallback;
    error: LogCallback;

    blah: string; // Error, won't compile as it won't follow the guideline stated above : "every properties should be of type LogCallback"
}

let callbacks: LogLevelCallbacks = {
    info: console.info,
    warn: console.warn,
    error: console.error,

    // This seems allowed, however intellisense won't list foo after callbacks variable completion
    foo: console.info
};

let level = "info";
callbacks[level]("hello world"); // It does compile (and I have intellisense completion as well) thanks to indexed type declaration.

HOWEVER, if I disagree on your post statement to be able to "append" extra properties on indexed interfaces, I totally agree about the idea that it seems cumbersome to me to have the possibility to use in operator in an alias type and not in an interface (that's what your issue title denotes :-))
I typically don't know why I'm not able to simplify my interface above like this :
type LogLevel = "info"|"warn"|"error";
interface LogLevelCallbacks {
    // Can't do this
    [T in LogLevel]: LogCallback;
}

// However, this works and can be considered as a workaround even if less natural
type LogLevelCallbacksType = [T in LogLevel]: LogCallback;

I would still love to be able to declare Mapped Types in interfaces as it would open the doors to more complex constraints, particularly allowing me to specify common generics at the indexed definition level, and more precise type at the field level.
For instance, let's consider my LogCallback type may use Generics for their context closure parameter.
I may have this :
type LogCallback<T extends LogContext> = (message: string, context?: T) => void;
type LogLevel = "info"|"warn"|"error";
interface LogLevelCallbacks {
    [T in LogLevel]: LogCallback<LogContext>;

    info: LogCallback<InfoLogContext>;
    warn: LogCallback<WarnLogContext>;
    error: LogCallback<ErrorLogContext>;
}

To day, if I use : operator, I can declare such interface. However, I won't be able to tell my indexed key to be one of the LogLevel properties.

+1 Hope we can use 'in' operator in index signature while declaring interfaces not only types. We really need a mapped index sometimes. The inconsistency between interface and type looks confusing.
At present, I have to change an interface declaring to type which is surrounded by vast interfaces declaring.

Is there any movement on this issue?  It seems to be something that is extremely useful, and quite a common use case.
If there is no plan to support something like:
enum Types { Foo, Bar }
interface Things {
  [k in Types]: boolean;
  quu: string;
}

then is there a suggested alternative pattern that achieves the same goal -- namely being able to define an object shape where the key may be any of a list of acceptable values?

@aaroncraig10e I was also looking for something like that. For now this union workaround does the job:
interface TT {
  unit: string,
  decimals: number,
  prefix: string,
  postfix: string,
}

type MySymbols = 'BTC' | 'CZK' | 'ETH' | 'EUR' | 'LTC'

type S1 = {
  [P in MySymbols]: TT
}

interface S2 {
  format: (value: number, currency: MySymbols) => string
}

type S = S1 & S2 // union here

const SYMBOLS: S = {
  BTC: { unit: 'BTC', decimals: 5, prefix: '',  postfix: ''   },
  CZK: { unit: 'CZK', decimals: 2, prefix: '',  postfix: ',-' },
  ETH: { unit: 'ETH', decimals: 4, prefix: 'Ξ', postfix: ''   },
  EUR: { unit: 'EUR', decimals: 2, prefix: '€', postfix: ''   },
  LTC: { unit: 'LTC', decimals: 3, prefix: '',  postfix: ''   },
  format(value, currency) {
    const c = this[currency] // this gets inferred as any and not of type TT
    return c.prefix + value.toFixed(c.decimals) + c.postfix
  },
}

@ackvf use --noImplicitThis.

@mhegazy It did help, but why? I disabled it previously as I had some issues, but I can't remember what.

this in a function by default has type any. if you use --noImplicitThis, the compiler raises errors for untyped this, and tries to infer the type in some contexts, e.g. object literals.

but why?

cause it would have been a breaking change otherwise. this was always any before --noImplcitThis.

This proposal fells like natural extension of mapped types functionality. I guess many people try this exact proposed syntax to then see that it doesn't work.
In my case it would be very useful for situation when we want to extend 3rd party interface with properties that can be "computed" by mapped type. In theory we can achieve the result by some workarounds like writing interface that extends mapped type alias:

but this would be much nicer if I could write [P in Names] : string; inside interface.
I guess this issue is not a big priority for TS team because from what I can see there is nothing fundamentally new that you can't do today. For instance the examples from OP could be written as:
type Names = 'foo' | 'bar' | 'baz';

type Temp = { readonly [T in Names]?: string };

interface Thing1 extends Temp {}

interface Thing2 extends Temp {
  extra?: number;
}

type Thing3 = Readonly<Partial<Record<Names, string>>>;

type Thing4 = { readonly [T in Names]?: string };

type Thing5 = {
  extra?: number;
} & Temp;

There is just this confusion for new users about where you can use mapped type syntax and where not and IMO this confusion itself is worth to consider fixing it.

I was also surprised when I discovered I cannot create mapped interfaces. The TS handbook says:

A second more important difference is that type aliases cannot be extended or implemented from (nor can they extend/implement other types). Because an ideal property of software is being open to extension, you should always use an interface over a type alias if possible.

I am happy this no longer seems to be the case

hope can use in and keyof in interface
when type is string symbol number

@mpawelski If you don't mind me asking, how did you do that?  As far as I know, interfaces cannot extend from type declarations in TypeScript (TS2312).

@jameswilddev It was introduced in typescript 2.2.0. You will in fact get error TS2312: An interface may only extend a class or another interface in previous versions if you try to compile my example from previous post.
works fine:
npx<EMAIL_ADDRESS>-skipLibCheck .\exampleFromMyPreviousPost.ts
gives TS2312 error:
npx<EMAIL_ADDRESS>-skipLibCheck .\exampleFromMyPreviousPost.ts
You can read more details in Allow deriving from object and intersection types PR

Aha, think it's just that I'm overbending the type system a bit.  On 3.1.6, something closer to your example works:
type SingleKeyValueOf<T> = {
  [key in "A" | "B"]: string
}

interface X<T> extends SingleKeyValueOf<T> { }

However, this doesn't:
type SingleKeyValueOf<T> = {
  [key in keyof T]: string
}

interface X<T> extends SingleKeyValueOf<T> { }

any updates on this?

@jas99  Not sure this will solve uses that rely on generic parameters, but I think the original code will work with when #26797 gets merged.

Tracking at #26797

Note that this isn't completely a duplicate of #26797, since that one would not have really supported mapped types (index signatures don't give you a handle on the elements in the set of keys).   This issue seems to be the canonical one for "why can't we add extra properties next to mapped types" which isn't quite the same as "why can't we have arbitrary index signatures".


Bug Report - Invalid index local.lookup_azure_backup_geo_codes

Community Note

Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
If you are interested in working on this issue or have submitted a pull request, please leave a comment

Versions

terraform: 1.3.6
azure provider: 3.58.0
module: 4.0.2
Description
Trying to call the module as described in the '[Examples] Deploy Default Configuration' page results in an error within one of the locals from the module.
Describe the bug
│ Error: Invalid index
│
│   on .terraform\modules\enterprise_scale\modules\connectivity\locals.tf line 1436, in locals:
│ 1436:       "privatelink.${local.lookup_azure_backup_geo_codes[location]}.backup.windowsazure.com"
│     ├────────────────
│     │ local.lookup_azure_backup_geo_codes is object with 67 attributes
│
│ The given key does not identify an element in this collection value.
Steps to Reproduce
Deploy the code as described on the '[Examples] Deploy Default Configuration' page while complying with the described minimal versions. See below the code which is excecuted:
module "enterprise_scale" {
source  = "Azure/caf-enterprise-scale/azurerm"
version = "4.0.2"
default_location = var.primary_location
providers = {
azurerm              = azurerm
azurerm.connectivity = azurerm
azurerm.management   = azurerm
}
root_parent_id = data.azurerm_client_config.current.tenant_id
root_id        = var.root_id
root_name      = var.root_name
}
Screenshots
Additional context
Tried the deployment first via the '[Examples] Deploy using multiple module declarations with orchestration' page. Received the error three times, for each module call, then tried to see if it also happens with the example default configuration as described above. This is the case.

Solved. The value use in the for_each is case sensitive. Changed the default_location value in the module call from West Europe (uppercase AND spaces) to westeurope (lowercase) and now works as intended.
Bit of background:
The for_each used for the line in the error is local.private_link_locations. This local is specified within \modules\connectivity\locals.tf.
The local checks if local.settings.dns.config.private_link_locations isn't null (coalescelist(local.settings.dns.config.private_link_locations, [local.location])) else it will use the value specified in local.location. local.location then checks the value specified at local.default_location, in this case West Europe (.
The for_each is then checked in the lookup_azure_backup_geo_codes which is an merged list consisting of local.builtin_azure_backup_geo_codes which holds all locations specified with lowercase :)


Question regarding testing using Karma/PhantomJS

First off, thank you authors and maintainers for this software. My apologies in advance if this has nothing to do with stardust.
My problem is that importing or requiring a stardust component results in this error:
PhantomJS 2.1.1 (Linux 0.0.0) ERROR
  TypeError: Object is not a function (evaluating '_debug('stardust:' + namespace)')
  at webpack:///~/stardust/dist/commonjs/lib/debug.js:30:0 <- spec/components/snapshots/picture/index.spec.js:28332

Other tests with various ES6 code, import component statements, etc. work. I was looking at your test code and I installed karma-phantomjs-shim. I also copied this package's karma configuration to my karma configuration (frameworks, plugins). But they didn't fix the problem.

I had a globally defined object named _debug that's why it wasn't working. I renamed the object and all is well.

Cool, thanks for closing!


[css-minifier]expand the static calc()

Describe the feature
Usually the expressions in calc() can be expanded further in order to reduce the number of bytes.
There is a lot of this styles in animate.css:
animation-delay: calc(1s * 2) = animation-delay: 2s
.animate__animated.animate__delay-2s {
  -webkit-animation-delay: calc(1s * 2);
  animation-delay: calc(1s * 2);
  -webkit-animation-delay: calc(var(--animate-delay) * 2);
  animation-delay: calc(var(--animate-delay) * 2);
}

But if there are percentages in calc(), we have to treat them differently and not expand them. see https://github.com/evanw/esbuild/issues/1821
Babel plugin or link to the feature description
No response
Additional context
No response

https://cssnano.co/docs/optimisations/calc/


always CPU rendering

For whatever reason, Peacasso is always using CPU instead of GPU, which causes the rendering times to be up to 5 minutes while I have a perfectly good 1080 Ti. I'm a complete noob at both Python and Conda, so I have no experience at adjusting the code in order to make it work the way it should. Is there anyone who would be willing to help me out with this in a more direct manner? Such as through Discord? Would be greatly appreciated.

Additionally, when attempting to use the image prompt instead of text prompt, I receive this error:

Thanks for the feedback slendermane.
Peacasso is currently optimized for running on GPU (currently working on an update to allow selection between GPU, CPU and MPS for apple mac pros).
On your first error, the main issue is that your current conda environment probably does not have pytorch + cuda correctly setup.

The pytorch page has some guide on installing pytorch and CUDA
Verify pytorch is using GPU.

Second error on image error is related to Peacasso not being yet optimized for CPU (there are parts that attempt half precision conversions that are not supported on CPU).


LocalGenerator for ICloneable

A nice use case would be to generate ICloneable fast copy mechanism.

Closed in #20.


pedit changes cursor position when BufReadPre autocmd defined

What steps will reproduce the problem?
1. Start Vim with gvim -N -u NONE -i NONE
2. Source the following minimal .vimrc:

fun! DoNothing()
  return
endfun
augroup TEST
  au!
  autocmd BufReadPre * call DoNothing()
augroup END

3. Edit a file that spans multiple screens (i.e. requires scrolling to view the
bottom of the file).
4. Go to last line in file with G command.
5. :pedit %

What is the expected output? What do you see instead?
Expected output: file is split, with cursor on last line of the file, in the
bottom window. Top window is a preview window showing the last line of the file.

Actual output: file is split, with cursor on FIRST line of the file, in the
bottom window. Top window is a preview window showing the last line of the file.

What version of the product are you using? On what operating system?

VIM - Vi IMproved 7.4 (2013 Aug 10, compiled Dec 15 2014 11:39:32)
MS-Windows 64-bit GUI version with OLE support
Included patches: 1-552
Compiled by {me}
Huge version with GUI.  Features included (+) or not (-):

Please provide any additional information below.

Note that removing the autocmd in the minimal .vimrc shows the expected
behavior rather than the problem behavior. :pedit % is not required, just that
the file being previewed is already open in another window. I first saw this
happening with the autopreview feature of the TagBar plugin.

Original issue reported on code.google.com by<EMAIL_ADDRESS>on 12 Jan 2015 at 10:23

Fixed by 8.1.1205.


prompts and settings for one example

It would be nice to get a sense of how to get good results and what models do a good job.

Hi @laurentopia  You can check out Wiki - Inpainting models

I read those, I learn better by example so what I meant by that is: show the prompts and screenshots of one of your examples. I can not get rid of the borders for example or get anywhere near your level of quality.


feat: made workflow.labels and workflow.annotations exposable as JSON string

#7289
This feature allows for the workflow.labels and workflow.annotations to be exposed as JSON string the same way currently a user could do this for workflow.parameters.

@NikeNano

I will close this PR @dpadhiar is working. with PR owner.


Dev tools extension

Are there any plans to create a Dev tools extension for talker? It would be nice if we could see the logs in dev tools similar to the talker monitor.

Hello @SebastianKlaiber !
This is a great idea, we need to think about its solution!
If someone is ready to help with this PR, you are welcome ❤


[video_player] Add platform interface

Description
Adds platform interface in preparation for federated plugins. Second part of this is here: #2276
Related Issues
#2041
Checklist
Before you create this PR confirm that it meets all requirements listed below by checking the relevant checkboxes ([x]). This will ensure a smooth and quick review process.

[x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[x] My PR includes unit or integration tests for all changed/updated/fixed behaviors (See Contributor Guide).
[x] All existing and new tests are passing.
[x] I updated/added relevant documentation (doc comments with ///).
[x] The analyzer (flutter analyze) does not report any problems on my PR.
[x] I read and followed the Flutter Style Guide.
[x] The title of the PR starts with the name of the plugin surrounded by square brackets, e.g. [shared_preferences]
[x] I updated pubspec.yaml with an appropriate new version according to the pub versioning philosophy.
[x] I updated CHANGELOG.md to add a description of the change.
[x] I signed the CLA.
[x] I am willing to follow-up on review comments in a timely manner.

Breaking Change
Does your PR require plugin users to manually update their apps to accommodate your change?

[ ] Yes, this is a breaking change (please indicate a breaking change in CHANGELOG.md and increment major revision).
[x] No, this is not a breaking change.

@hterkelsen PTAL

Also, I don't see anything here about the stream of VideoPlayerValues. Shouldn't that be a part of the platform interface? Otherwise all implementations will be forced to use EventChannel which is basically the same as locking them into the MethodChannelVideoPlayer platform

True, I guess it should expose a stream?
Also there are some other things I am not too happy about:

the create method currently gets a Map. Would it be nicer if it would get a DataSourceDescription class?
There is a seekTo method which accepts int milliseconds. But a getPosition method which returns a Duration. What if I change seekTo to setPosition which also gets a Duration?

Yeah, I think you should expose a Stream<VideoPlayerValue>. Maybe in the platform interface you can have something like Stream<VideoPlayerValue> playerValuesFor(int textureId).
As for changing the Map parameter of create to a DataSource class, I like that idea. I see the maps as basically an implementation detail of the MethodChannel platform implementation.
I think changing seekTo to take a Duration makes sense because that maps closer to how it is called from video_player, but I don't think we need to change the name since 'seekTo' is the name of the method we call on the MethodChannel implementation

Exposing a Stream<VideoEvent> would be much closer to what we have now.  I will implement this. Tell me if you really want me to change this to a Stream<VideoPlayerValue>.

Stream<VideoEvent> SGTM. We can let the video_player package turn those into VideoPlayerValues

Stream<VideoEvent> has been added. If the tests succeed I think this could be merged and the platform interface published. Improving the create method could also be done in the second PR.

Let's make sure we add buildView to the interface before this gets merged.

Any ideas why the builds are failing now? The e2e tests are not touching anything I changed.

Yeah, very odd. It seems like some of the shards are running that same test and passing... I'll try rerunning them and see if they deflake or if there's another problem

Some more of them went green. Very odd.. Can this be merged without them passing?

@hterkelsen Can you restart the missing checks please? Is there anything else missing from my side to get this merged?

I restarted them. If more pass and some are still flaky I think we should still submit. I don't think this ought to block you

Only 2 left. I guess it could be merged. Can you do this or do we need another review?

Sorry, I should have just merged this in earlier. It looks like there are new merge conflicts. If you resolve them and push the changes I think we can just land this.

BTW I added this tracking issue for video_player: https://github.com/flutter/flutter/issues/45290
I also created this project for tracking the state of implementation for the various plugins: https://github.com/flutter/flutter/projects/69

No worries. I merged master. There haven't been any big conflicts fortunately.

Thanks! Are you able to merge? If not I can merge once the tests run (and after double checking any failures for if they are those iOS flaky tests)

No I don't have write access to this repo.

@hterkelsen "All checks have passed" :)


Unreasonable disk usage (?)

Probably related to exposure notifications functionality.
Since I have installed the latest Version with contact-tracing support and using it with the german corona-warn-app, microg uses enormous amounts of space for user data, until my internal disk space runs full and the corona-app (and other apps) stop functioning.
6 days ago I had to wipe all of the userdata of microg, but it has since then accumulated again to 3.5GB of internal disk space.
is this intended behaviour?

so sorry, must have overseen this issue was already filed >_>

Sorry, I cannot find the related issue. I do have the same problem on Android 7.1 as well. Maybe on Android 10, too, I have to check, the disk is just a lot bigger, so it will be noticed later...

#1190 is the related issue


Remove unused method in database/billing

Which issue this PR addresses:
N/A
What this PR does / why we need it:
Removes an unused method in pkg/database/billing. ListAll is also unused right now but I have uses for it in my database tests.
Test plan for issue:
Static analysis doesn't have an issue with it.
Is there any documentation that needs to be updated for this PR?
N/A

this is used elsewhere


New bitmap font parser breaks loader.

Support for multiple textures for single bitmap font. #4641
This update breaks the loader. The loader never "completes" when trying to load bitmap fonts.
This is the offending code:
 for (let x = 0; x < pages.length; ++x)
        {
            const textureUrl = xmlUrl + pages[x].getAttribute('file');

            if (utils.TextureCache[textureUrl])
            {
                textures.push(utils.TextureCache[textureUrl]);
            }
            else
            {
                // load the texture for the font
                this.add(`${resource.name}_image${x}`, textureUrl, loadOptions, () =>
                {
                    const nextTextures = [];

                    for (let x = 0; x < pages.length; ++x)
                    {
                        const nextTextureUrl = xmlUrl + pages[x].getAttribute('file');

                        if (utils.TextureCache[nextTextureUrl])
                        {
                            nextTextures.push(utils.TextureCache[nextTextureUrl]);
                        }
                        else
                        {
                            return;
                        }
                    }
                    parse(resource, nextTextures);
                    next();
                });
            }
        }

See first else, here we load the images if not present in texture cache. Once loaded the inline function checks if its in the texture cache.
This is the problem, because when adding the image to the loader we add a suffix "_image" + page number. Eg. myFontImage.png_image0
But when checked after loading complete we check if the original file name exist in the cache.
nextTextureUrl will be something like: myFontImage.png. That don't exist in the cache so we just return. Missing the vital next()
// load the texture for the font
                this.add(`${resource.name}_image${x}`, textureUrl, loadOptions, () =>
                {
                    const nextTextures = [];

                    for (let x = 0; x < pages.length; ++x)
                    {
                        const nextTextureUrl = xmlUrl + pages[x].getAttribute('file');

                        if (utils.TextureCache[nextTextureUrl])
                        {
                            nextTextures.push(utils.TextureCache[nextTextureUrl]);
                        }
                        else
                        {
                            return;
                        }
                    }
                    parse(resource, nextTextures);
                    next();
                });
            }

So the next() function is never called which result in a loader that will never complete.
All the images and such do in fact load, but the loader will never complete and thus no complete event will be dispatched and our games will not start.

pixi.js version:  4.8.0
Browser:  66.0.3359.181
Device: Desktop PC

Thank you for reporting. We have already seen this in the wild. Would you mind testing your game with this build: http://pixijs.download/dev/pixi.js, we recently fixed with #4932. Would be helpful to verify. If so, we can push out a hotfix for this.

I wanted to test the fix in our games but we have a pretty complicated build process for our engine with npm, typscript and browserify and so on, and so forth . So I could not test the file you provided directly. But with some good ol' fashion copy/pasting from your file into 4.8.0 node module sources it worked perfectly.
The code i tested was the bitmapFontParser and the changes in BitmapText.registerFont. I just copy and pasted over the whole functions.
This is not a perfect verification process, but the issue seems fairly isolated so for me it's enough.
Also i have not tested actually using a BitmapFont that uses multiple pages. We only use bitmap fonts for number so we don't need more. But i don't see any reasons for it not to work.

Thank you for verifying, this is good enough for me.


Design for building the C library

We must decide which build system we offer and document as the default for our C snapshot. Currently we have both CMake and a standalone Makefile. My preference clearly goes to CMake as the default and keep a standalone Makefile as a backup.
BoringSSL does what I suggest: CMake+Makefile
NSS does:  Gyp+Makefile

The current design with CMake + Makefiles seems convenient.


Firebase admin SDK: getUserByEmail fails for facebook

Operating System version: MacOS Catalina 10.15.6
Firebase SDK version: 7.14.3
Library version: 6.12.2
Firebase Product: auth

I have enabled facebook, google and email/password options in my firebase console.
(1): If a facebook user logs-in and chooses to disclose his email, after successful login the firebase console shows his record for the email. Also, through Admin SDK I am able to get the User record using the getUserByEmail method.

So far this is fine. (2) But when the user does not disclose his email, the firebase does not have his email info (which is expected).

The problem appears if the user deletes the app from facebook (settings > apps & websites) and retries the register action or login.

After deleting the app from settings in facebook, user will again have the choice to disclose his email or not. If he chooses to disclose his email. the same record which was created during (2) seems to get updated with his email. Firebase console shows the record if I query for this email.
But through admin SDK, getUserByEmail does not return any User record corresponding to this email. Is this a bug in firebase admin SDK or am I missing something?

I think this is due to the Admin SDK and the Console using different APIs to query the email.
I believe the Admin SDK API queries the top level email user.email, whereas the Console uses a different API to look by email at the top level user.email and at the provider level user.providerData[0].email.
In the second case above, when the user creates the account and chooses not to disclose the email, the top level email and provider level email are left blank but when the user signs in again and discloses the email, only the provider level email is updated. This explains why the user can be queried in the Console but not by getUserByEmail.

Hi team,
Does this mean, there will be a fix soon? if yes can you let me know any tentative date for the fix as I need to communicate to our customers.

This works as intended. getUserByEmail only looks up by top level email.

So is there a different api to get what console is able to return?
In other words how do I get the user record with email using the admin sdk?

If the user doesn't disclose his email, and later wants to correct it, then in this case, we won't be able to query his record by email. So is there no way in this case?

There is a client SDK to updateEmail which sets the top level email on a user. So you can always use that API. This would make the account searchable. If you need to expose an API to look for user email in providers too, please file an official feature request.


doc: Remove extraneous secret

The documentation shows 8 different secrets that can be configured  Config global.api.users.director.icingaweb.password doesn't exist in the default values.yaml for the Chart, nor does it appear in docs/configuration.md#configuration.  It may be a typo or bad copy-pasta, so I've suggested removal it to reduce confusion.

exists: global.api.users.director.password
exists: global.api.users.icingaweb.password
non-existent: global.api.users.director.icingaweb.password

Contributors that have not signed yet: @chickenandpork

Done :)

Hi, thanks for the PR! Might be an artifact from an earlier build.

@cla-bot check

Yup, this was a bad copy-pasta ;) Thanks!


Fix a typo in the schema. [phab:D728]

Created by zarko at 2016-02-18 21:24:54:

shahms accepted this revision at 2016-02-18 21:27:10

schroederc accepted this revision at 2016-02-18 21:27:15

fromberger accepted this revision at 2016-02-18 21:27:22

zarko closed via commit 04ca85b749215c3f0400ae0efb1d4e1f50096cab at 2016-02-18 21:39:22


Crashed on Android API level 19 (and possibly any level below 21)

An app built with minSdkVersion 16 crashed in Google Play pre-launch testing on Samsung Galaxy S3 (Android 4.3 SDK 18).
Full Description
The issue (see the stack trace below) is with AudioAttributes class, which is added in API level 21 according to this https://developer.android.com/reference/kotlin/android/media/AudioAttributes.Builder. Apparently lowering minSdkVersion to 16 affects more than just playBytes method.
Log Errors
FATAL EXCEPTION: main
java.lang.NoClassDefFoundError: android.media.AudioAttributes$Builder
	at xyz.luan.audioplayers.WrappedSoundPool$Companion.createSoundPool()
	at xyz.luan.audioplayers.WrappedSoundPool$Companion.access$createSoundPool()
	at xyz.luan.audioplayers.WrappedSoundPool.<clinit>()
	at xyz.luan.audioplayers.AudioplayersPlugin.getPlayer()
	at xyz.luan.audioplayers.AudioplayersPlugin.handleMethodCall()
	at xyz.luan.audioplayers.AudioplayersPlugin.onMethodCall()

Thanks for reporting this @sgg-labs this totally slipped way our attention.
@luanpotter this means that the LOW_LATENCY API only works on 21+. How do you wanna procede? Let's add an if API on this and add disclaimer on our README?

@erickzanardo can we please update the feature parity table? https://github.com/luanpotter/audioplayers/blob/master/feature_parity_table.md
also given the error is not that clear I would prefer adding back the if statements so we can have good messages (both for this and the byte array thing)


MultiprocessParallelUpdater modifies devices argument as side effect

The MultiprocessParallelUpdater init method has devices argument that takes as input a list, a tuple or a dictionnary.
In the latter case, the creator pops the 'main' key from it, thus modifies the object given as argument.
https://github.com/chainer/chainer/blob/12340007efee499ddcb53120938cc23c8d96c5f9/chainer/training/updaters/multiprocess_parallel_updater.py#L173-L176
If the user wants to reuse the devices dictionary later (e.g. when specifying Evaluator's device), the user has to create a copy of it.
It is in a way inconsistent with the behaviour of ParallelUpdater (which does not modify the devices dictionary), and can confuse the user.
I think the MultiprocessParallelUpdater should copy the devices argument in case of dictionary to avoid this.
What are your insights about this?

Sure!