🚀 - Support maintaining maximum tab size

Which @codeimage/* package(s) are relevant/releated to the feature request?
Don't known / other
Description
Hi, awesome tool!
It would be cool if there was a way to keep the same tab size when switching tabs, so that you could add a "switch effect" to the slides as if you clicked the other tab in an editor.
Let me know if that makes any sense 😅

Hey, thank you 😄 Unfortunately I didn't understand the request pretty well, could you be more specific?
At the moment tabs keeps their own size based of the text content for both Accent/Non-accent modality

Nevermind, I found out that if you manually set the image width and then manually add the missing lines you can get the effect I was (poorly) trying to explain 😅
Sorry for the trouble ahahhah


Fancy Quote Generator

An idea @mp7786 had when we were talking last night. It would be neat if ClemBot could generate image quotes like the below:

Something like !quote "<author name>" <quotable message> using their PHP for the picture. If "<author name>" was missing, it would use their username instead.

This would be cool, however the command would have to change. !quote is earmarked for something else


Widgets App fixes and minor newton cleanup

See individual commits for slightly more detail.
Fixes https://github.com/flutter/flutter/issues/2710
Fixes https://github.com/flutter/flutter/issues/2709

LGTM


Add CLI directory glob support

No longer required since this is best leveraged via the cli or as a PostCSS plugin.


Trigger music start/stop

Hey,
i am trying to automate my house.
One neat thing is this application to play the music via the RasPi. But, to save energy, my speakers are connected to a smart plug and need to be turned on.
Now my question:
Is there a way, that raspotify triggers the Home Assistant application (or similar) which then turns my speaker on or off?
One thing i already tried was the audio driver. It writes in a textfile, if there's audio or not. But then i had to run a script every minute to check this file, which isn't the optimum.
Thank you very much in advance!
Greetings from Germany.

Try using liquidsoap?


order-properties output is malformed

The order-properties rule uses the disparity module to provide styled output. However, disparity uses terminal escape characters that are problematic. For one, the ESC characters used lead to invalid XML when generating results in junit format. But even the default text output doesn't seem to work in all terminals:

I'm not aware of any eslint rules that attempt to display a diff like this. Perhaps the output could be something like "the order of properties should be x, y, z" or "dependencies should be alphabetized." I'm not sure the minutiae of which exact line is in error really matters, since if there's any error users will probably just use --fix.

Hmm, I don't reproduce this issue with VS Code 1.82.0 and zsh 5.8.1 on macOS Ventura 13.2. What shell/terminal/etc are you using @gabegorelick (if you're still interested in this ~3 years later)?
Agreed that it's quite unusual to list the diff like this - especially since it should be resolved in --fix mode. Maybe it'd be better to give a general error the way https://github.com/lydell/eslint-plugin-simple-import-sort does?

I ended up removing the diff in #40. The 0.3.x line shouldn't experience this bug anymore. Cheers!


RobotFramework TeamCity integration with Java desktop application issue

Dear RobotFramework gurus,
We have desktop java application and running Robot tests as a standalone jar using standard RF libraries and RemoteSwing libraries via IntelliJ Idea RunConfiguration. Locally all works fine.
But when I'm trying to run the same tests via TeamCity as IntelliJ Idea project and submitted RunConfigurations, in TeamCity some of the tests look like successfully executed, but I do not see that the application has been started on this windows server and additionally all screenshot which have been done during test execution are black.
Did someone have similar experience in running RF test this way?
Any ideas about it?
Many thanks in advance.

Sounds like an issue with the virtual display. Definitely not a bug in Robot Framework itself.


gcc cross-compiles from i686 don't support LTO? (efibootmgr fails to cross-compile from i686)

Describe the bug
efibootmgr fails to compile from i686 to armv6l (raspberryPi), because stdenv.isi686 is false and -flto is passed in CFLAGS, however the gcc cross-compiler doesn't support the flag.
Steps To Reproduce
Steps to reproduce the behavior:

From x86-64 Linux, nix-build -A pkgsi686Linux.pkgsCross.raspberryPi.efibootmgr '<nixpkgs>'

Expected behavior
The build to complete successfully.
Additional context
Changing the efibootmgr derivation to use stdenv.buildPlatform.isi686 instead of stdenv.isi686 fixes the build but I'm not sure this is the right fix. It seems that the derivation is perhaps right, and gcc should support LTO on i686 for non-i686 target platforms. Perhaps the references in the gcc sections of pkgs/top-level/all-packages.nix should read enableLTO = !stdenv.hostPlatform.isi686?
Notify maintainers

efibootmgr doesn't have any maintainers listed and I think the actual problem relates to gcc.
@vcunat
@Synthetica9
@Ericson2314
Metadata
Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.
[nix-shell:~]# nix-shell -p nix-info --run "nix-info -m"
these paths will be fetched (0.05 MiB download, 0.28 MiB unpacked):
  /nix/store/p5lnl4zr45n7mf9kz9w8yz3rqh001b5c-bash-interactive-4.4-p23-dev
copying path '/nix/store/p5lnl4zr45n7mf9kz9w8yz3rqh001b5c-bash-interactive-4.4-p23-dev' from 'https://cache.nixos.org'...
 - system: `"x86_64-linux"`
 - host os: `Linux 5.10.74, NixOS, 21.05.3892.70904d4a992 (Okapi)`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.3.16`
 - channels(root): `"nixos-21.05.3892.70904d4a992, unstable-21.11pre323695.9aeeb7574fb"`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

Maintainer information:
# a list of nixpkgs attributes affected by the problem
attribute:
# a list of nixos modules affected by the problem
module:

It looks like LTO availability depends on this setting:
https://github.com/NixOS/nixpkgs/blob/86661be08742ffe5270395d3938e0b3a68a68e96/pkgs/top-level/all-packages.nix#L11691-L11697
So immediately I have a few thoughts:

We should consolidate these definitions and make them available via e.g. gcc.passthru so that packages can check whether they are allowed to use LTO in a non ad-hoc way
Your buildPlatform modification appears to be correct, as the enableLTO setting depends on gcc's hostPlatform rather than its targetPlatform

Your buildPlatform modification appears to be correct, as the enableLTO setting depends on gcc's hostPlatform rather than its targetPlatform

I agree that that's the effect, but is that the intent? Is LTO a problem on i686 hosts or i686 targets, or both? It looks like this was first introduced in 22284b07 by @vcunat who might have some additional context for the change.

Good point, usually settings like that affect the target platform. It's possible this was only tested for the native case, so it's a good idea to verify the platform predicate is correct.

It was reaction to non-cross problems during bootstrapping.  It's well possible that they won't appear when not bootstrapping (e.g. any cross).  Confirming that gcc builds should be enough for the problems from my commit.

I see. It sounds like maybe switching on stdenv.targetPlatform.isi686 is more appropriate, then.
I'm a bit new to Nix, is there a way to force a build from scratch rather than a fetch from cache? The docs are failing me here.

I think you want nix-build --check

Linking likely related https://github.com/NixOS/nixpkgs/pull/144778 so I don't forget to look into it along with this

Linking likely related #144778 so I don't forget to look into it along with this

Sorry, maybe I merged it too soon :sweat_smile: ?

No no worries, I didn't link it there because I don't think the supportsLTO ~ isi686 cleanup is your responsibility. There are probably other locations as well I'll need to look into.

Hmm, so I was thinking I'd figure out the right host/target platform distinction for gcc and then expose whether it has LTO with e.g. stdenv.cc.hasLTO. But I'm unable to encounter any scenario where LTO doesn't work on i686, so I think we can reenable it fully, and I'll just remove the treewide i686-specific LTO workarounds if that sounds reasonable.

Never mind, efivar is a reliable reproducer:
gcc -O2 -flto -g3 -I/build/source/src/include/   -specs=/build/source/gcc.specs  -L.   -Wl,-z,muldefs      -shared \
  -Wl,-soname,libefivar.so.1 \
  -Wl,--version-script=libefivar.map \
  -o libefivar.so dp.o dp-acpi.o dp-hw.o dp-media.o dp-message.o efivarfs.o error.o export.o guid.o guids.o guid-symbols.o lib.o vars.o -ldl
/build/ccQUJQZh.s: Assembler messages:
/build/ccQUJQZh.s: Error: invalid attempt to declare external version name as default in symbol `efi_set_variable@@LIBEFIVAR_0.24'
lto-wrapper: fatal error: /nix/store/y60g40d6pjz5swkzwgdr8jfxcp9ga4cv-gcc-10.3.0/bin/gcc returned 1 exit status
compilation terminated.
/nix/store/1pza4mwv1i91cda2p0g5qvbj053m9a75-binutils-2.35.2/bin/ld: error: lto-wrapper failed
collect2: error: ld returned 1 exit status
make[1]: *** [/build/source/Make.rules:20: libefivar.so] Error 1
make[1]: Leaving directory '/build/source/src'
make: *** [Makefile:14: all] Error 2
builder for '/nix/store/7sli8z0swlcaib4cc1s7jszz3z45pdky-efivar-37.drv' failed with exit code 2

Going to go ahead with the stdenv.cc.hasLTO strategy, happy to discuss alternatives here or in the upcoming PR.


Error: Discrete value supplied to continuous scale in plot_epimutations

Hello,
I am using Epimutacions v1.4.0 and have encountered an error with the plot_epimutations. It says:
Error: Discrete value supplied to continuous scale
I did some digging and found that it only happens if there is NaN for some samples at the given epi-variant location (cpg ids) in the beta table. Is there a way to get past this error and plot? The value for mean and sd calculated using the function betas_sd_mean is NaN for those epi-variations.

A simple fix in the betas_sd_mean function for this issue:
mean <- rowMeans(betas, na.rm = T)
sd <- apply(betas, 1, sd, na.rm = T)

Hello @prajkta9
Thanks for using epimutacions,
I fixed the bug. Could you check if you can make the plot?
Best,
Dolors

Thanks, but I still get the error. I tried to force-install the package again, but is there any other way to update it?

Hi @prajkta9,
Are you using the Bioconductor version?, if so, the changes are not propagated yet. If you want, you can install the content of the devel version directly from github with the command:
devtools::install_github("isglobal-brge/epimutacions@devel")
the current version under development is 1.5.2, which corresponds to the next release of Bioconductor (release 3.18). In this version the bug in the function plot_epimutacions() should be fixed.

I tried this version 1.5.2, but the error is still there.

Could you attach a sample dataset or a .Rda file with the object?

I cannot share the data. I tried the plot_epimutations script, and theemptySamples vector is NA for all samples. Additionally, mean and all sd vectors are also NA.

Hi @prajkta9 ,
The first solution with about more than 20% NA was not working, I have applied the na.rm, now it should work. Could you test it with your data?
Best,

Works perfectly now, thanks.


Season awards screen crash and unintended text box

This is on Version 1.2.1
On the season awards screen, you can click on the players name and it's actually a text box, if you change the name and then press enter, it will crash a few seconds later.
https://github.com/tbrittain/SmbExplorerCompanion/assets/26890375/ab67bdb2-b0a9-4e97-9586-b97541fdb30d

Thanks for the video, this is very helpful. I haven't checked why exactly this is occurring, but I thought I disabled interaction with all grid columns that aren't supposed to be edited. Looks like that may have not been the case for the grids on that page, so I'll work on this asap


Unable to input Chinese chars in TextInput and TextEdit

Is your issue REALLY a bug?

[X] My issue is indeed a bug!
[X] I am not crazy! I will not fill out this form just to ask a question or request a feature. Pinky promise.

Is there an existing issue for this?

[X] I have searched the existing issues.

Is this issue related to iced?

[X] My hardware is compatible and my graphics drivers are up-to-date.

What happened?
Unable to input Chinese fonts in TextInput and TextEdit
The example of my project just likes below
fn main() {
    let _ = application("", APP::update, APP::view)
        .font(include_bytes!("../img/MiSans.ttf").as_slice())
        .default_font(Font::with_name("MiSans"))
        .run();
}

.push(TextInput::new(conval::CALL, self.installer_info.name.as_str()).on_input(Message::ChangedName),)

Match _ {
    Message::ChangedName(name) => self.installer_info.name = name,
}

It's OK to show Chinese fonts in the interface. Even though, Text Fields can show Chinese when using CTRL+V to paste some into, it can not be done by using the keyboard and can only receive ASCII chars.
System information
Deepin V23
6.6.47-amd-desktop-hwe
X11
What is the expected behavior?
able to receive Chinese chars into Text Fields
Version
crates.io release
Operating System
Linux
Do you have any log output?
No

Iced doesn't support winit IME related things.
I tried to support it by adding IME Event to Iced Event and interface for ime.
Result
Hecrij doesn't think about non-european input. no reply from him.
We can support IME. but too many fixes needed to widgets.
and i can't spend many times for very early dev stage of unusable toolkit.

It looks like there are many things to be done, and the progress is fascinating.
Thanks for your update
I can not work on this kind of issue. Considering this function is deeply related with platforms and may have been changed continually, building an exclusive group for it is a good idea, anyway, if this function needs to be adjusted  frequently.


[BUG] preStep and postStep events missing from NgtPhysics

I'm trying to migrate Cannon Callbacks example using @angular-three/cannon.
I don't see these callbacks on the NgtPhysicsXXX object api method or the NgtPhysics object.
I don't see a way to get at the physics store or state to access the world state.
Any help or guidance is appreciated.

Do we still need this? @IRobot1

Yes.  I think its needed

https://github.com/pmndrs/use-cannon/issues/67 Until cannon-worker adds support for preStep and postStep, we cannot really do anything sadly

Actually, its not needed.  Simply subscribe to velocity (or other api property) which is called on every stepSize change.  You don't get to choose pre or post step, but it works quite well for calculating orbits
See callbacks example and code


Fix ruby 2.7 warnings in rake tasks

Thank you very much @aglushkov !
Could you please add a changelog entry?

Changelog updated, was not sure such small PR should be mentioned in changelog )

It's kinda user-visible, so why not.
Thanks again!

Hey @rabotyaga, we are trying to upgrade our app to use Ruby 3, but we saw that our Chewy-related tasks don't include this fix. We're using Chewy 5.2, and as far as I understood, it should include any non-specific Elastic version change, right?

Hey @dsantosmerino 👋 !
Chewy 5.2 supports Elasticsearch 5.x (with a limited support for ES 1.x & 2.x).
Please refer to this table: https://github.com/toptal/chewy#elasticsearch-compatibility-matrix
If you're not limited in the selection of Elasticsearch versions, I'd recommend starting with Chewy 7.2.2 and latest 7.x ES.
Otherwise I'd recommend upgrading ES and Chewy versions gradually as per https://github.com/toptal/chewy/blob/master/migration_guide.md.

We use 6.4 ES, I'll try upgrading to Chewy 6.x then. Thanks, @rabotyaga for your quick response!

hi! could you back port this fix to 7.0.X branch please?
$ rake chewy:upgrade
rake aborted!
ArgumentError: wrong number of arguments (given 1, expected 0)
/Users/olancheg/.rvm/gems/ruby-3.0.3/gems/chewy-7.0.1/lib/chewy/rake_helper.rb:62:in `upgrade'
/Users/olancheg/.rvm/gems/ruby-3.0.3/gems/chewy-7.0.1/lib/tasks/chewy.rake:31:in `block (2 levels) in <top (required)>'
/Users/olancheg/.rvm/gems/ruby-3.0.3/gems/rake-13.0.6/exe/rake:27:in `<top (required)>'
/Users/olancheg/.rvm/gems/ruby-3.0.3/bin/ruby_executable_hooks:22:in `eval'
/Users/olancheg/.rvm/gems/ruby-3.0.3/bin/ruby_executable_hooks:22:in `<main>'
Tasks: TOP => chewy:upgrade
(See full trace by running task with --trace)

Hey @olancheg 👋 !
I'd rather encourage you to ugrade to at least 7.1.0. Or even 7.2.3. Is there anything that blocks you from this?

hey @rabotyaga ,
thanks for getting back to me!
since I'm still on 6.8 ES, and chewy 7.0.X branch being the last to support ES 6 versions.
definitely going to upgrade to ES 7 in due course, though I don't think I'm the only one with this issue :)

@olancheg It seems 6.8 is reaching EOL in less than 1 month: https://www.elastic.co/support/eol
We will not backport fixes to 7.0 branch. Sorry.


[Question] artifacts.loop() deals actual road loops, not iteration

The artifacts.loop() function deals with geometric/road loops, correct? (nothing to do with the simplify.simplify_loop() function, correct?)
@martinfleis Can yon confirm this?

This deals with loops composed of continuity strokes. Different concept.

Ah, OK. So this is something like multiple C strokes that combine into a loop structure?

Yeah. Something like that, but possibly E? Would have to spend more time looking.


How to get progress information from LongRunningRecognize Operation

hello nodejs Google Speech Team !
Thanks for all the work accomplished to abstract the communication with the speech API. Your works make working with the API fairly easy.
Regarding following issues :

https://github.com/googleapis/nodejs-speech/issues/420
https://github.com/googleapis/nodejs-speech/issues/34
https://github.com/googleapis/nodejs-speech/issues/307

and a number of SO questioning about how to get the progress of a LongRunningRecognize, I've finnaly decided to post.
We are using a simple const [operation] = await speechclient.longRunningRecognize({...})
The whole code is the example in the documentation.
The response from the progress event does not contain information except when the jog is done. It goes at 100 which at least is ok.
The progress event only triggers two or three times.
Trying to get more information with the getOperation method, does not give more information.
So how one could get a clear progress state of the operation ?
Thanks for any feedback or help that would allow to get it.
Environment details

OS: macOS
Node.js version: v10.16.1
npm version: 6.14.4
@google-cloud/speech version: 3.6.0

Steps to reproduce

Copy the example : https://cloud.google.com/speech-to-text/docs/async-recognize#speech_transcribe_async_gcs-nodejs
Add the code :

operation.on('progress', (metadata, apiResponse) => {
        console.log('> New progress:')
        console.log(metadata)
})

Observe that you do not get progressPercent key

Regarding where the code reference progressPercent we can find it here https://github.com/googleapis/nodejs-speech/blob/v3.6.0/protos/protos.json#L856
I might try to use the curl method to check the operation data regarding the doc : https://cloud.google.com/speech-to-text/docs/async-recognize#speech_transcribe_async_gcs-protocol
Did not have the time so far.
Thanks a lot !

I believe those other issues show there isn't anything we can do about it, as the backend controls the progress updates we receive. There was a recommendation to file the issue with the appropriate team on their issue tracker: https://cloud.google.com/support/docs/issue-trackers
Am I mistaken? Is there something we can do from this library?

Well the google team looks like they just don't give a *** : https://issuetracker.google.com/issues/73046873 the issue has been opened in 2018. It looks like an eternal bug. Progress is certainly hard to estimate, but for sure a necessary feature for our user to be happy!

@JustinBeckwith Is there a way to follow up on this issue? It's assigned, but ironically, we can't see it's progress :) https://issuetracker.google.com/issues/73046873

Thanks. Just saw your message few weeks ago. Hope someone in the AI & Machine Learning team will feel concerned.

Hi folks - I'm on the Cloud AI Developer Relations engineering team here at Google. I talked with the Cloud AI engineers. They note that intermediate results are, unfortunately, not guaranteed. This can happen with short files and sometimes even for long files. We intend to give intermediate progress, but it may not be possible in every scenario. The behavior you're seeing is the one the product has intended to deliver. I hope that's helpful information. I'm sorry if it makes it more difficult to use in your situation.

Hi Steven,
Thanks for the feedback which clarify a lot the behaviour. So basically, we will never get the progress. Thanks.
One question nonetheless, do you plan to integrate an estimate of the progress as an enhancement ?
Thanks a lot.

I stumbled upon this issue from a web-search on how to get the percent progress reporting.
So here's how I solved it (in javascript):
/**
* Small util that allows you to `await sleep(ms_to_sleep)`
*/
function sleep(ms) {
    return new Promise(resolve => {
        setTimeout(resolve, ms);
    })
}

/**
 * Poll long running speech transcribe progress
 * @param client {SpeechClient}
 * @param operationName {string} Name of the operation to poll on
 * @return {Promise<void>} Resolves once the progress reports "done"
 */
async function pollOperationProgress(client, operationName) {
    let doContinue = true;
    do {
        const response = await client.checkLongRunningRecognizeProgress(operationName);
        const {
            latestResponse,

            /**
             * @type LongRunningRecognizeMetadata
             */
            metadata
        } = response;

        console.log(`Transcribe progress: ${metadata.progressPercent.valueOf()}`);

        // if we aren't done, well, we should continue polling
        doContinue = !latestResponse.done;
        // give the google api a break and wait for 10 seconds before polling again
        await sleep(10 * 1000);

    } while (doContinue);
}

async function waitForOperationAndDoStuff(operation) {
    const [response] = await operation.promise();
    // TODO do stuff with the `response`
}

/**
* Method stub where the client is initialized and the speech recognition process is started
*/
async main() {
    const client = new speech.SpeechClient();
    const request = .... // TODO insert your speech transcribe request / config

    // Fire off the long running recognize
    // start the progress-polling
    //grab the operation promise and wait for both async operations to complete
    const [operation] = await client.longRunningRecognize(request);
    const transcriber = waitForOperationAndWriteTranscribedContent(operation);
    const polling = pollOperationProgress(client, operation.name);

    await Promise.all([polling, transcriber]);
}

I stumbled upon this issue from a web-search on how to get the percent progress reporting.
So here's how I solved it (in javascript):
/**
* Small util that allows you to `await sleep(ms_to_sleep)`
*/
function sleep(ms) {
    return new Promise(resolve => {
        setTimeout(resolve, ms);
    })
}

/**
 * Poll long running speech transcribe progress
 * @param client {SpeechClient}
 * @param operationName {string} Name of the operation to poll on
 * @return {Promise<void>} Resolves once the progress reports "done"
 */
async function pollOperationProgress(client, operationName) {
    let doContinue = true;
    do {
        const response = await client.checkLongRunningRecognizeProgress(operationName);
        const {
            latestResponse,

            /**
             * @type LongRunningRecognizeMetadata
             */
            metadata
        } = response;

        console.log(`Transcribe progress: ${metadata.progressPercent.valueOf()}`);

        // if we aren't done, well, we should continue polling
        doContinue = !latestResponse.done;
        // give the google api a break and wait for 10 seconds before polling again
        await sleep(10 * 1000);

    } while (doContinue);
}

async function waitForOperationAndDoStuff(operation) {
    const [response] = await operation.promise();
    // TODO do stuff with the `response`
}

/**
* Method stub where the client is initialized and the speech recognition process is started
*/
async main() {
    const client = new speech.SpeechClient();
    const request = .... // TODO insert your speech transcribe request / config

    // Fire off the long running recognize
    // start the progress-polling
    //grab the operation promise and wait for both async operations to complete
    const [operation] = await client.longRunningRecognize(request);
    const transcriber = waitForOperationAndWriteTranscribedContent(operation);
    const polling = pollOperationProgress(client, operation.name);

    await Promise.all([polling, transcriber]);
}

This is the recommended way according to the document. However it doesn't actually print the percentage value. It's zero all the way until it reaches 100.


[Bug]: SyntaxError: Unexpected token '.' in EventEmitter.js L#163

Minimal, reproducible example
// in NestJS

import { Injectable, Logger } from '@nestjs/common';
import { S3Service } from './s3.service';
import * as puppeteer from 'puppeteer';

@Injectable()
export class PdfService {
  private browser: puppeteer.Browser;
  private readonly logger = new Logger(PdfService.name);
  constructor(private readonly s3Service: S3Service) {}
  async initialize(): Promise<void> {
    this.browser = await puppeteer.launch({ headless: 'new' });
    this.logger.log(`Browser instance initialized`);
  }

  async close(): Promise<void> {
    await this.browser.close();
    this.logger.log(`Browser instance closed`);
  }

  async generatePdf(
    reportId: string,
    orgId: string,
    htmlContent: string,
  ): Promise<any> {
    await this.initialize();
    const page = await this.browser.newPage();
    await page.setContent(htmlContent, { waitUntil: 'networkidle0' });
    const pdfContent = await page.pdf({ format: 'A4', printBackground: true });
    const res = await this.s3Service.uploadReports(reportId, orgId, pdfContent);
    this.close();
    return res;
  }
}

Error string
SyntaxError: Unexpected token '.' in EventEmitter.js
Bug behavior

[ ] Flaky
[X] PDF

Background
Convert handlebars HTML to PDF
Expectation
Worked on local env, worked in staging server, failed in prod server with same config as staging:
NestJS 7
Node 16.20.0
NPM 8.5.5
Ubuntu 18.04
Only local env runs on macOS but has same configs otherwise
Reality
Installation and build works fine but while running it fails with this error:

Puppeteer configuration
{ headless: 'new' }

Puppeteer version
20.7.4
Node version
16.20.0
Package manager
npm
Package manager version
8.5.5
Operating system
Linux

Please provide a reproducible isolated example or a full repo where error is observable.
Also are production builds failing locally?

Also are production builds failing locally?

Builds are not failing on any machine, however this only happens on production while starting the node server

@sambhav2612 are you sure the production server runs node 16? and not node 14 or lower? The error looks like the syntax is not supported by your node version.

@sambhav2612 are you sure the production server runs node 16? and not node 14 or lower? The error looks like the syntax is not supported by your node version.

@OrKoN  Here's a screengrab from the server:

Checking further we found our staging is running on Ubuntu v20.04, however, I don't think that will affect this.
We also installed system-level dependencies before running the server:
sudo apt-get install -y gconf-service libasound2 libatk1.0-0 libc6 libcairo2 libcups2 libdbus-1-3 libexpat1 libfontconfig1 libgcc1 libgconf-2-4 libgdk-pixbuf2.0-0 libglib2.0-0 libgtk-3-0 libnspr4 libpango-1.0-0 libpangocairo-1.0-0 libstdc++6 libx11-6 libx11-xcb1 libxcb1 libxcomposite1 libxcursor1 libxdamage1 libxext6 libxfixes3 libxi6 libxrandr2 libxrender1 libxss1 libxtst6 ca-certificates fonts-liberation libappindicator1 libnss3 lsb-release xdg-utils wget libgbm-dev

could you add a basic Puppeteer script to the server and run it using this node version? perhaps there are multiple installed and the one used by pm2 is different?

Any solution to this, I am facing the same bug

could you add a basic Puppeteer script to the server and run it using this node version? perhaps there are multiple installed and the one used by pm2 is different?

I can confirm this also happens to me
# node test.js
/root/node_modules/puppeteer-core/lib/cjs/puppeteer/common/EventEmitter.js:129
        return this.eventsMap.get(event)?.length || 0;
                                         ^

SyntaxError: Unexpected token '.'
    at wrapSafe (internal/modules/cjs/loader.js:915:16)
    at Module._compile (internal/modules/cjs/loader.js:963:27)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
    at Module.load (internal/modules/cjs/loader.js:863:32)
    at Function.Module._load (internal/modules/cjs/loader.js:708:14)
    at Module.require (internal/modules/cjs/loader.js:887:19)
    at require (internal/modules/cjs/helpers.js:74:18)
    at Object.<anonymous> (/root/node_modules/puppeteer-core/lib/cjs/puppeteer/api/Browser.js:19:27)
    at Module._compile (internal/modules/cjs/loader.js:999:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)

I've run inside a ubuntu:latest docker container (Yes, I could create a Dockerfile for this, but just to ease out the idea)
apt update
apt install nodejs npm
cd /root/
npm install puppeteer

And then run any puppeteer script and the error pops. Versions are wholly different from the ones of @sambhav2612, but the issue is the same

This error indicates that an old Node version (< 16) is used.

while im using node v 16> but im getting same error in cpanel

Minimal, reproducible example
// in NestJS

import { Injectable, Logger } from '@nestjs/common';
import { S3Service } from './s3.service';
import * as puppeteer from 'puppeteer';

@Injectable()
export class PdfService {
  private browser: puppeteer.Browser;
  private readonly logger = new Logger(PdfService.name);
  constructor(private readonly s3Service: S3Service) {}
  async initialize(): Promise<void> {
    this.browser = await puppeteer.launch({ headless: 'new' });
    this.logger.log(`Browser instance initialized`);
  }

  async close(): Promise<void> {
    await this.browser.close();
    this.logger.log(`Browser instance closed`);
  }

  async generatePdf(
    reportId: string,
    orgId: string,
    htmlContent: string,
  ): Promise<any> {
    await this.initialize();
    const page = await this.browser.newPage();
    await page.setContent(htmlContent, { waitUntil: 'networkidle0' });
    const pdfContent = await page.pdf({ format: 'A4', printBackground: true });
    const res = await this.s3Service.uploadReports(reportId, orgId, pdfContent);
    this.close();
    return res;
  }
}

Error string
SyntaxError: Unexpected token '.' in EventEmitter.js
Bug behavior

[ ]  Flaky
[x]  PDF

Background
Convert handlebars HTML to PDF
Expectation
Worked on local env, worked in staging server, failed in prod server with same config as staging:
NestJS 7 Node 16.20.0 NPM 8.5.5 Ubuntu 18.04
Only local env runs on macOS but has same configs otherwise
Reality
Installation and build works fine but while running it fails with this error:

Puppeteer configuration
{ headless: 'new' }

Puppeteer version
20.7.4
Node version
16.20.0
Package manager
npm
Package manager version
8.5.5
Operating system
Linux

Just idea:
Make sure you're using updated version of node not with running node -v inside cli but inside your code.
In my case, php exec('node -v') returned version 12 regarding that node -v inside cli returned 23.
You can use n (npm install -g n and n stable) to update your node version.


examples: update s3-archive variables.tf name

Description
Update name to variables.tf for the s3-archive example module.
How Has This Been Tested?
All .tf files are combined at runtime; this just corrects a typo.

Checklist:

[x] I have updated the relevant example in the examples directory for the module.
[x] I have updated the relevant test file for the module.
[x] This change does not affect module (e.g. it's readme file change)

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


Run alongside spree_frontend

For sites that just want the checkout part to use angular

@bryanmtl Is this still something we need, or can I close it?

Nope, not needed.


Remove the mDiscoverCallback and its context from otInstance

This commit changes the otDiscover() implementation to directly pass the callback and its corresponding context to method Mle::Discover(). With this change, the mDiscoverCallback and
mDiscoverConext can be removed from otInstance.

Current coverage is 72.89% (diff: 0.00%)

Merging #953 into master will increase coverage by 0.84%

@@             master       #953   diff @@
==========================================
  Files           117        118     +1
  Lines         17551      17555     +4
  Methods        2442       2446     +4
  Messages          0          0
  Branches       2120       2120
==========================================
+ Hits          12645      12797   +152
+ Misses         4209       4069   -140
+ Partials        697        689     -8

Powered by Codecov. Last update 67dbbfc...4a7db95


Move package name prefix concatenation into ViewModel

Per feedback on https://github.com/googleapis/toolkit/pull/932

LGTM


obs4mip

📝 Description

[x] zlim->clim
[x] add xco2, xco4
[x] add pr
[x] add cmor tag
[ ] add cmorized_catalog via function?

Fix #21
🖥 API Changes

[ ] This PR does not break existing dataset calls. If breaking change, justify why needed.

📣 PR Checklist

[ ] Github Actions passing
[x] added related metadata
[x] try to add simplecache to urlpath for automatic caching (does not work for sources intake-thredds and opendap)
[ ] add pre-defined plots (optional)
[ ] ensure new dataset is covered by tests

👍 Mark PR as ready for review!

Check search cmor?

cat.search('cmor').walk() shows all cmor entries


Need to disable default scrolling for touch based mobile devices

On the demo you can see that if you drag and sort an item vertically it triggers the native scrolling behaviour making it completely unusable.
I have a PR for a simple fix.
https://github.com/jasonslyvia/react-anything-sortable/pull/32

merged and confirmed working, thanks @zthomas

Hi @zthomas , just a heads up, I've refactor your PR to move the sortHandleClass props to <Sortable> and renamed it to sortHandle.
https://github.com/jasonslyvia/react-anything-sortable/blob/140b55cdf1256b6e6e7e2594bb50c6366108f201/demo/pages/handle.js

cool, looks great!


Question about dynamic loop flag change

Is it possible to change loop state during playback?

@oFilipMalinowski it should be. Actually, the playback component can be updated dynamically, but I noticed a strange behavior when calling player.configure({ loop: false }).
Apparently, the way it removes the loop state is not having any effect. We'll need to fix this.

@towerz Yeah, that's what I observed using player.configure() which made me think that there is some other way to use it.

For HTML5 video playback component, it may be because the loop property is set only in constructor ?

A simple fix could be to add this code in html5 video playback :
  configure(options) {
    super.configure(options)
    this.el.loop = !!options.loop
  }

@towerz what do you think ?

@kslimani yeah, the playback is missing the configure implementation. It would be better to check whether there are other properties that need to be reconfigured dynamically, for example controls, etc.

@towerz do you suggest to move the "loop" handling logic to media_control plugin (like for mute/volume) and add method(s) to playback component to handle loop boolean state ?

@kslimani no, actually the controls property of the HTML5Video element. All properties that can be changed dynamically could be configured by calling the playback's configure method

@kslimani I think we can discuss this in a separate issue. Since configure was not implemented, we can move on with this initial implementation, and add more properties that could be configured dynamically (controls, remote playback/AirPlay support, etc).


Created Users, Roles and User_Roles tables with knex in the database

Description
Created Users, Roles and User_Roles tables with knex in the database.
Fixes #41
How to test?
Mysql workbench
Checklist

[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] I have merged the latest version of the source branch (typically develop) into this branch before pushing my changes
[x] This PR is ready to be merged and not breaking any other functionality

Hi. You will have to define primary and foreign key relations.

Hey Neils, its not neccessery  now to  define primary and foreign key relations  because Zaki told as about that and he saied that we can make it later...

Ok 👍

Please make sure to have the foreign keys that are "internal" to your PR set up. Any foreign keys that rely on other groups you can do in a separate PR.


feat: Hold stylus button to erase?

Is it possible to hold the stylus button to erase?

You can implement that yourself. Just listen to whichever stylus event you want and do the appropriate setEraser() and setColor() calls on ScribbleNotifier.


Add SkipBody and SkipResBody functions to Config. it used to skip record "body" and "resBody" fields when write log.

Add SkipBody and SkipResBody functions to Config. it used to skip record "body" and "resBody" fields when write log.

// SkipBody defines a function to skip log  "body" field when returned true.
//
// Optional. Default: nil
SkipBody func(c *fiber.Ctx) bool
// SkipResBody defines a function to skip log  "resBody" field when returned true.
//
// Optional. Default: nil
SkipResBody func(c *fiber.Ctx) bool

please add tests that test the new parts that have been added

Add Test for SkipBody and SkipResBody config item.

@piyongcai sorry for my late reply
would merge the pull request, please only expand the readme in the fiber zap folder with the new possibilities of configuration

@piyongcai

@piyongcai

sorry，i missing this pr.

@ReneWerner87
sorry, i missing this pr,  because some reason....


Inter Variable display issue for Vietnamese

Describe the bug
Hi,
I recently updated the Fontsource's Inter Variable to version 5.0.13 and noticed there some issue with the font when displaying characters such as "ể", "ễ", "ẩ",... in Vietnamese. Tone diacritic is overlapped with vowel.  In version 5.0.12, everything looks normal and correct.
Steps to Reproduce

Install Fontsource's Inter Variable 5.0.13
Display some Vietnamese text with characters like "ể", "ễ", "ẩ",...
Notice tone diacritic is overlapped with vowel.

Expected behavior
The characters should look normal and correct as in version 5.0.12
Version
5.0.13
OS
Windows 11
Browser
Chrome, Edge
Additional context
Example:

Version 5.0.13: https://6d557d56.vinh-dev.pages.dev/posts/migrate-from-google-domains-vi
Version 5.0.12: https://68698be7.vinh-dev.pages.dev/posts/migrate-from-google-domains-vi

@vinhphm, can you try updating the package again to 5.0.14?

@ayuhito it's fixed. Thank you!


Is the network policy for VPC CNI designed to be stateful or stateless?

What happened:

I have created an egress network policy allowing the web pod to establish connections with the backend server pod at port 4000.
podSelector:
    matchLabels:
      app.kubernetes.io/component: web
egress:
    - ports:
        - protocol: TCP
          port: 4000
      to:
       - namespaceSelector:
            matchLabels:
              kubernetes.io/metadata.name: backend
         podSelector:
            matchLabels:
              app.kubernetes.io/name: backend

While initially operating as intended, after some time, the packet log occasionally registers a DENY entry for certain return traffic.
Node: ip-10-0-64-172.ap-southeast-1.compute.internal;SIP: <IP_ADDRESS>;SPORT: 4000;DIP: <IP_ADDRESS>;DPORT: 39816;PROTOCOL: TCP;PolicyVerdict: DENY

where <IP_ADDRESS> is the backend server, <IP_ADDRESS> is the web server.
To mitigate this issue, I have to define an ephemeral port range for the ingress of the returned traffic, similar to the VPC ACL configuration.
podSelector:
    matchLabels:
      app.kubernetes.io/component: web
ingress:
    - ports:
        - protocol: TCP
          port: 1024
          endPort: 65535
      from:
       - namespaceSelector:
            matchLabels:
              kubernetes.io/metadata.name: backend
         podSelector:
            matchLabels:
              app.kubernetes.io/name: backend

Attach logs

What you expected to happen:
Kubernetes Network Policies are stateful, which means there's often no need to explicitly define rules for return traffic?
How to reproduce it (as minimally and precisely as possible):
Anything else we need to know?:
Environment:

Kubernetes version (use kubectl version): Server Version: v1.28.4-eks-8cb36c9
CNI Version: v1.16.0-eksbuild.1
OS (e.g: cat /etc/os-release):

NAME="Amazon Linux"
VERSION="2"
ID="amzn"
ID_LIKE="centos rhel fedora"
VERSION_ID="2"
PRETTY_NAME="Amazon Linux 2"
ANSI_COLOR="0;33"
CPE_NAME="cpe:2.3:o:amazon:amazon_linux:2"
HOME_URL="https://amazonlinux.com/"
SUPPORT_END="2025-06-30"

Kernel (e.g. uname -a): Linux ip-10-0-64-172.ap-southeast-1.compute.internal 5.10.199-190.747.amzn2.x86_64 aws/amazon-vpc-cni-k8s#1 SMP Sat Nov 4 16:55:14 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

@khayong the network policy implementation is stateless. What does the policy endpoint object show for this policy? You can see the output with kubectl get policyendpoint <policy_name>

Yes you are right, there is no need to explicitly define rules for return traffic. Can you check the number of the entries in the network policy agent's conntrack table when the issue starts to happen? When the issue happens is there any pod churn or just the established connections fail after a while?
Steps to check -

SSH to the node where you are seeing deny logs, then cd /opt/cni/bin/
Dump the maps - ./aws-eks-na-cli ebpf maps
Pick the ID which has Keysize 20 Valuesize 1 MaxEntries 65536

For example here ID is 5 ->
./aws-eks-na-cli ebpf maps
Maps currently loaded :
Type : 2 ID : 3
Keysize 4 Valuesize 98 MaxEntries 1
========================================================================================
Type : 9 ID : 5
Keysize 20 Valuesize 1 MaxEntries 65536
========================================================================================
Type : 27 ID : 6
Keysize 0 Valuesize 0 MaxEntries 262144
========================================================================================
Type : 11 ID : 16
Keysize 8 Valuesize 288 MaxEntries 65536
========================================================================================

Then using the ID, we should be able to get the number of entries using this CLI -> ./aws-eks-na-cli ebpf dump-maps 5 (Note: replace 5 with the ID you got from step 3.)

I have also encountered this issue, and it seems to relate to long-lived connections being removed from the conntrack table prematurely. There are other issues in this repository relating to this and the latest version (CNI v1.16.0-eksbuild.1 / policy agent 1.0.7) does not fix the issue.
If you enable policy logging using the below configuration on the VPC CNI (if deployed through the UI, else use the appropriate args in Helm/CLI), you'll see that there's an ACCEPT for the connection, then sometime later it's removed from the conntrack table, followed by a DENY in your logs.
    "enableNetworkPolicy":"true",
    "nodeAgent": {
        "enableCloudWatchLogs": "true",
        "enablePolicyEventLogs": "true"
    }
}```

@khayong @stroebs it is possible this is the same error as https://github.com/aws/aws-network-policy-agent/pull/179. The symptoms do sound like they line up

Do you have multiple replicas of these pods scheduled on the same node?

I think this could very well be the case, as we bin pack on a small number of nodes to keep cost low. This would explain why we did not witness this issue in an our development environment which does not have more than 1 replica per deployment.

We will have a release candidate image soon if you are willing to try it out to see if it resolves the issue. The official release image containing #179 is targeting mid-January.

@khayong @stroebs - We have v1.0.8-rc1 tag available if you would like to try.

Thanks jayanthvn, it works. With v1.0.8-rc1, there's no need for me to explicitly define rules for return traffic.

I observed some denied connections in the log today. It appears that there might be a delay in creating entries in the conntrack table. The initial two logs indicate a denial status due to the conntrack not being updated? However, after a delay of 3 seconds, the third log reflects an allowance, seems like the conntrack entry has been successfully created at that time.

On the conntrack table, I can see the presence of the corresponding entry.

Is it considered normal for there to be a delay in the creation of conntrack entries?

I observed some denied connections in the log today.

I have observed the same behaviour. This is with a single pod in a replicaset so unrelated to the race condition I think.

I have another sample here, but there is no allow log at all.

It appears that the conntrack entry was created in the incorrect direction. Should the source and destination be swapped?

@khayong - There will be few seconds(1-2s) delay for the controller to reconcile and attach probes to the new pods. Traffic will be allowed until the probes are attached and then the policy enforcement will take into effect based on the config..in this case probe was probably missing when ingress traffic came in and so no conntrack entry was created.
Regarding the 2nd issue, do you have active policy on .54 pod? if yes can you share the PE?

Regarding the 2nd issue, do you have active policy on .54 pod? if yes can you share the PE?

yes, here it is
apiVersion: networking.k8s.aws/v1alpha1
kind: PolicyEndpoint
metadata:
  creationTimestamp: "2024-01-11T16:17:37Z"
  generateName: live2-gateway-
  generation: 1
  name: live2-gateway-855lp
  namespace: live2
  ownerReferences:
  - apiVersion: networking.k8s.io/v1
    blockOwnerDeletion: true
    controller: true
    kind: NetworkPolicy
    name: live2-gateway
    uid: e2fec936-f1d0-4f9a-bd8c-07d5967ba9e8
  resourceVersion: "24471548"
  uid: 2734c483-dc7b-412f-983b-6f2d2b2ca463
spec:
  egress:
  - cidr: <IP_ADDRESS>/0
    ports:
    - port: 53
      protocol: UDP
  - cidr: ::/0
    ports:
    - port: 53
      protocol: UDP
  ingress:
  - cidr: <IP_ADDRESS>
    ports:
    - port: 8080
      protocol: TCP
    - port: 8080
      protocol: TCP
  - cidr: <IP_ADDRESS>
    ports:
    - port: 8080
      protocol: TCP
    - port: 8080
      protocol: TCP
  podIsolation:
  - Ingress
  - Egress
  podSelector:
    matchLabels:
      app.kubernetes.io/instance: live2
      app.kubernetes.io/name: gateway
  podSelectorEndpoints:
  - hostIP: <IP_ADDRESS>
    name: live2-gateway-b575dcf44-w6sfc
    namespace: live2
    podIP: <IP_ADDRESS>
  - hostIP: <IP_ADDRESS>
    name: live2-gateway-b575dcf44-ktrzz
    namespace: live2
    podIP: <IP_ADDRESS>
  policyRef:
    name: live2-gateway
    namespace: live2

@khayong we are unable to repro this. Can we get on a call? Are you on Kubernetes channel is so we can connect in #aws-vpc-cni .

Can you please try with the latest v1.0.8 release? - https://github.com/aws/amazon-vpc-cni-k8s/releases/tag/v1.16.3

Closing as v1.0.8 has been released. Please reopen if your issue is not resolved.


use the new ranges from the updated FSAC endpoint

This depends on https://github.com/fsharp/FsAutoComplete/pull/693, but updates Ionide to use the new API types exposed as part of that work.  Casing of some things has changed, as the payload we get back from the request is no longer a bare string, instead it's already been hydrated as a JS object due to the LSP back-and-forth.

alright, this is ready as well


pull request for e2e test at 12/07/2016 04:56:06

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


Clean travis.yml and docs

There was an outdated Travis initialization style, right now in Travis

linux os with xenial dist by default
node_modules cache by default
xvfb service will greatly improve configs

UPD:

added a simplified docs

travis.yml
docs

@munrocket thanks for this! This looks good to me - let's see how the build goes and if it goes green I think we can ship. @mathiasbynens would you agree?

@jackfranklin fixed 🎉

Ok, this is ready for merge.

@munrocket thank you!


[AppLovinSdk] Current SDK version (11.5.5) is outdated. Please integrate the latest version of the AppLovin SDK (11.6.0). Doing so will improve your CPMs and ensure you have access to the latest revenue earning features.

Feature Description
applovin_max: ^2.3.1
[AppLovinSdk] Current SDK version (11.5.5) is outdated. Please integrate the latest version of the AppLovin SDK (11.6.0). Doing so will improve your CPMs and ensure you have access to the latest revenue earning features.
How to integrate the latest version of the AppLovin SDK (11.6.0)??

Live in v2.3.2.


Update build-adaptive-card-tabs.md

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

File
Status
Preview URL
Details

msteams-platform/tabs/how-to/build-adaptive-card-tabs.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Wait & retry on rate limit errors for GitHub requests

Closes #125.

Codecov Report

Merging #126 (504e72f) into master (9668a00) will decrease coverage by 6.80%.
The diff coverage is 63.63%.

@@            Coverage Diff             @@
##           master     #126      +/-   ##
==========================================
- Coverage   70.79%   63.99%   -6.81%
==========================================
  Files          10       10
  Lines         928      961      +33
  Branches      140      142       +2
==========================================
- Hits          657      615      -42
- Misses        215      300      +85
+ Partials       56       46      -10

Impacted Files
Coverage Δ

src/tinuous/base.py
79.38% <38.46%> (-8.02%)
:arrow_down:

src/tinuous/util.py
85.86% <50.00%> (-0.80%)
:arrow_down:

src/tinuous/github.py
50.42% <72.50%> (+1.61%)
:arrow_up:

src/tinuous/appveyor.py
51.19% <0.00%> (-25.00%)
:arrow_down:

src/tinuous/travis.py
41.81% <0.00%> (-21.82%)
:arrow_down:

src/tinuous/__main__.py
46.15% <0.00%> (-5.60%)
:arrow_down:

Continue to review full report at Codecov.

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

The test failure is because the version of git-annex in Ubuntu's repositories is too old for DataLad.  #127 fixes that.

since no other pending PRs, let's just release.  Thank you @jwodder!


fix: moveNewHandle should call endHandler with success: false when th…

…e measurement is removed by anyHandleOutsideImage check

Please check if the PR fulfills these requirements

[ ] The commit message follows our guidelines
[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features)

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)

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

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

Does this PR introduce a breaking change? (What changes might users need to make in their application due to this PR?)

Other information:

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Sorting API results

Is it possible to sort some results like the departments list?

We don't have the option right now, but I will work on a new feature to add this in the future.

This was implemented on PR https://github.com/Mteheran/api-colombia/pull/128. Thanks for your support and helping us to improve api-colombia.com


Rename the library, support for DI, v1 🚀

Codecov Report
Base: 100.00% // Head: 100.00% // No change to project coverage :thumbsup:

Coverage data is based on head (8a06bf0) compared to base (617840f).
Patch coverage: 100.00% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##              main       #13    +/-   ##
==========================================
  Coverage   100.00%   100.00%
==========================================
  Files           13        13
  Lines          378       501   +123
==========================================
+ Hits           378       501   +123

Impacted Files
Coverage Δ

neoteroi/auth/errors.py
100.00% <ø> (ø)

neoteroi/auth/jwks/caching.py
100.00% <ø> (ø)

neoteroi/auth/jwts/__init__.py
100.00% <ø> (ø)

neoteroi/auth/utils.py
100.00% <ø> (ø)

neoteroi/auth/__about__.py
100.00% <100.00%> (ø)

neoteroi/auth/__init__.py
100.00% <100.00%> (ø)

neoteroi/auth/abc.py
100.00% <100.00%> (ø)

neoteroi/auth/authentication.py
100.00% <100.00%> (ø)

neoteroi/auth/authorization.py
100.00% <100.00%> (ø)

neoteroi/auth/common.py
100.00% <100.00%> (ø)

... and 3 more

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

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


ensureSecureImageRequest cannot be set to false

Hi guys,
This line in index.js will evaluate to true when 'options.ensureSecureImageRequest' is set to false:
ensureSecureImageRequest: options.ensureSecureImageRequest || true

Whoops -- you are correct. Will fix.

Hi, I fixed the issue. Please find the PR  for changes.

Fixed.


[DR] Incorrect calculation of boundary fluxes in GK solver

In the GK solver we compute boundary fluxes for at least two purposes:

Using them in the Boltzmann electron model, which obtains the sheath potential from ambipolarity at the sheath entrance: Gamma_e = Gamma_i (here Gamma_s is the particle flux of species s at the sheath entrance).
Computing fluxes due to recycling of ions, where the neutral flux into our domain is a function of the ion flux out of our domain.

At least for purpose 1 we were using the presently boundary flux, which is really the z surface term of the GK scaled, e.g. in 1x2v:
\mathrm{bflux}_k  = \frac{2}{\Delta z} \cdot \int_{-1}^{1} \mathrm{d}v_\parallel\,\mathrm{d}\mu~\left(\psi_k \dot{z} J\cdot B\cdot f\right)_{z=\pm 1}

where:

$\Delta z$: cell length along z.
$\psi_k$: phase basis function.
$\dot{z}$: advection speed in the z direction.
$J$: conf-space jacobian
$B$: magnetic field amplitude
$f$: distribution
Later, to compute Gamma, integrate bflux over vpar-mu space, with the appropriate dimensional factors.

The above formula is incorrect if we want the physical particle flux through a surface (or in 1D, through a point). See Dhaeseleer's "Flux coordinates and magnetic field structure", equation 2.5.49a. We are missing a factor of the magnitude of the contravariant unit vector in z. The correct formula should be
\mathrm{bflux}_k  = \frac{2}{\Delta z} \cdot \int_{-1}^{1} \mathrm{d}v_\parallel\,\mathrm{d}\mu~\left(\psi_k \dot{z} J\cdot |\nabla z|\cdot B\cdot f\right)_{z=\pm 1}

One of the consequences of this error, which @Maxwell-Rosen has observed, is that in mirror sims with nonuniform z and Boltzmann electrons the sheath potential comes out different, compared to uniform z sims, and the difference is on the order of $\ln(\vert\nabla z\vert_{\mathrm{uniform}}/\vert\nabla z_{\mathrm{nonuniform}}\vert )$ .
Because of this extra factor of $|\nabla z|$ we can't use the collisionless GK boundary surf kernels, and we'll instead have to create new kernels for these calculations. I propose to change the bflux app and updater so that it uses such new kernels.

Isn't grad(z) just the Jacobian arising from the non-uniform coordinates? Why isn't the Jacobian there the total Jacobian (Jacobian from field line following coordinates * Jacobian from further coordinate transformation)?
It seems like if we were missing this grad(z), the flux would be wrong at every interface in a non-uniform grid simulation.

grad{z} is not that Jacobian from the nonuniform coordinates, but it's related to it. The J in the above equations contains the Jacobian of the nonuniform coordinates, but that's not enough. We need to incorporate grad{z}.
The "flux" here is the physical particle flux, which we need for the Boltzmann electron model. The flux at interior surfaces is a computational flux, and is not quite the same and doesn't require this grad{z} factor, principally because our weak form is an inner product in computational coordinates, not in physical coordinates.

This was addressed in PR #544
I'd like to point out to possible or necessary improvements to that work:

The boundary_flux kernels still include a factor of 2/dx_i where i is the boundary direction. This is legacy from the boundary_surf kernels, and could or should be removed. But doing so requires removing some other factors of dx/2 in other parts of the code (e.g. the Boltzmann elc model).
Presently the Boltzmann electron model uses the M0 moment of the boundary_flux. I think it should use the M0 half moment, i.e. M0 of the particles with velocities towards the boundary only. As that model is only being used for cases in which all ions at the boundary are moving towards the wall, it presently has no practical repercussions, but I think it is still technically incorrect.


Allow Mesh-related queue phase systems to parallelize

Objective
Partially addresses #3548. queue_shadows and queue_material_meshes cannot parallelize because of the ResMut<RenderMeshInstances> parameter for queue_material_meshes.
Solution
Change the material_bind_group field to use atomics instead of needing full mutable access. Change the ResMut to a Res, which should allow both sets of systems to parallelize without issue.
Performance
Tested against many_foxes, this has a significant improvement over the entire render schedule. (Yellow is this PR, red is main)

The use of atomics does seem to have a negative effect on queue_material_meshes (roughly a 8.29% increase in time spent in the system).

queue_shadows seems to be ever so slightly slower (1.6% more time spent) in the system.

batch_and_prepare_render_phase seems to be a mix, but overall seems to be slightly faster by about 5%.

Does this have a significant effect on single threaded perf?

Merge conflict. Code looks good. Could you test with a heavier load like many_cubes?

Merge conflict. Code looks good. Could you test with a heavier single-material-type no-contention load like many_cubes?

Checked against main and this PR. There seems to be next to zero impact on the average time spent, which makes sense uncontended atomics on x86 machines is essentially free.

Does this have a significant effect on single threaded perf?

Most modern platforms (with maybe the exception of wasm) treat all load/store operations as atomic, and so long as there is no contention on the same cache line, it's identical to single threaded performance. The only thing you might be missing out on is the compiler reordering your operations to be more optimal, which isn't a particular concern for these systems.


Simplify the creation of Exceptions

Closes #10
I used a bulk regex search & replace to make the repo use the new exception factories instead of creating the enum variants directly. The regexes managed to catch most of the now-redundant calls, like
Exceptions::illegalArgument("foo".to_owned())
// changed into
Exceptions::illegalArgument("foo")

Though I'm sure there's still a couple more left that the regexes missed. Instead of trying to hunt down the few ones left, I figured I'd leave them. They can be refactored manually as you run into them in the code while doing other work.

@hschimke Renamed the helpers; it's ready for review now.

@Asha20 if you get a chance, please resolve the conflicts caused by the merge of #9

Done.


3.0.1 has .DS_Store inside

node_modules/braces
node_modules/braces/LICENSE
node_modules/braces/CHANGELOG.md
node_modules/braces/index.js
node_modules/braces/README.md
node_modules/braces/package.json
node_modules/braces/lib
node_modules/braces/lib/constants.js
node_modules/braces/lib/stringify.js
node_modules/braces/lib/.DS_Store
node_modules/braces/lib/parse.js
node_modules/braces/lib/expand.js
node_modules/braces/lib/utils.js
node_modules/braces/lib/compile.js

Are you sure it's not on your machine? .DS_Store is ignored in .gitignore.

Positive. Download https://registry.npmjs.org/braces/-/braces-3.0.1.tgz and check it by yourself, it's there.

I think what happened here is it got gitignored but not npmignored.

(No need to publish 3.0.2 — let's just add some constraints for the future release)

I think what happened here is it got gitignored but not npmignored.

It's more likely that it was either committed by me when the project was initialized, and for some reason, there wasn't a .gitignore yet, or something like that.

let's just add some constraints for the future release)

I'm not sure what those constraints would be. This is a fluke, I've never seen this in one of my projects in thousands of commits over the past 5 years. I'm still not convinced that it's from me, but I'll track it down.

Positive. Download https://registry.npmjs.org/braces/-/braces-3.0.1.tgz and check it by yourself, it's there.

It's not there for me.

.DS_Store is hidden by MacOS, use ls -la:
test ❯ wget https://registry.npmjs.org/braces/-/braces-3.0.1.tgz
2019-04-16 22:23:43 (14.8 MB/s) - ‘braces-3.0.1.tgz’ saved [15971/15971]

test ❯ tar -xvzf braces-3.0.1.tgz
x package/package.json
x package/CHANGELOG.md
x package/index.js
x package/LICENSE
x package/README.md
x package/lib/.DS_Store
x package/lib/compile.js
x package/lib/constants.js
x package/lib/expand.js
x package/lib/parse.js
x package/lib/stringify.js
x package/lib/utils.js
test ❯ ls -la package/lib
total 72
drwxr-xr-x  9 user  staff   288 Apr 16 22:24 .
drwxr-xr-x  8 user  staff   256 Apr 16 22:24 ..
-rw-r--r--  1 user  staff  6148 Oct 26  1985 .DS_Store
-rw-r--r--  1 user  staff  1415 Oct 26  1985 compile.js
-rw-r--r--  1 user  staff  1593 Oct 26  1985 constants.js
-rw-r--r--  1 user  staff  2780 Oct 26  1985 expand.js
-rw-r--r--  1 user  staff  6913 Oct 26  1985 parse.js
-rw-r--r--  1 user  staff   700 Oct 26  1985 stringify.js
-rw-r--r--  1 user  staff  2451 Oct 26  1985 utils.js

I see it also.

(No need to publish 3.0.2 — let's just add some constraints for the future release)

There is already constraint in place using the files property in package.json. According to the NPM docs .DS_Store is always excluded, so this is bug with NPM.

Fixes on NPM in version 3.0.2. I'll also check NPM's issue tracker to open a ticket if one isn't already opened.


Always use alt text with images, including icons.

Thinking: There are a variety of reasons to do this, including for if users have disabled image loading as well as if users are using screen readers.

Use aria-label with links (like <a>) and input elements to describe what they do.

Thinking: This is super useful for screen readers, and without them sites quickly become unusable.

Always use a standard <label> with every input element.

Thinking: Makes it clear what all the different input elements do.

Follow ARIA-landmark layout with the following elements having the sematic meanings:

<header> - banner
<nav> - navigation
<main> - main
<aside> - complementary
<footer> - contentinfo
Thinking: Using these conventions will help structure our page in an easy to understand way for both developers and screen readers.

Avoid absolute units, especially for text. rem is the preferred standard unit (equivalent to about 16 pixels).

Thinking: The user can change the rem by changing their font sizing. This allows for users to request larger text without us needing to manually add that setting.
Followup: It would also be handy to have standard text sizes defined using custom properties rather than hard coded, again just to have consistency across our site.

Most of this was already done. Breaking up into new issues for the remaining bits.


Run on entire file when it was changed

Hi,
is there an option to check the entire file when it includes a change? This would help us find issues in lines that didn't get changed but where the issue was created by a line that got changed.
Thanks!

Which runner is this for, @joker-777?

@ashkulz For the pronto-eslint_npm runner.


Two issues

Android does not actually store images in gallery folder such as with
var imageUrl = mediaClass.CallStatic("insertImage", cr, image, title, description); << However this function doesn't work for me

I cannot build on Ios, i get invalid bitcode signature error.
Thanks

Invalid bitcode is also an issue for me - building on Unity Cloud Build with bitcode disabled in a build post-process.

Have just pushed a version of libNativeToolkit.a that has the -fembed-bitcode flags, so building with bitcode enabled should work now.


Fix function checks by resetting symbol requirements

Related to PR #104

@ebfe could you test it if it works for you?

Works

Merged. Thanks!

Thanks, @ebfe!


[No QA] [TS migration] Migrate 'Performance.js' lib to TypeScript

Details

Fixed Issues

$ https://github.com/Expensify/App/issues/24907
PROPOSAL:  N/A
Tests

[x] Verify that no errors appear in the JS console

Enable performance metrics tracking using flag CONFIG.CAPTURE_METRICS
Make sure the app works as expected and the performance data is tracked when necessary

Offline tests

N/A
QA Steps

[x] Verify that no errors appear in the JS console

Enable performance metrics tracking using flag CONFIG.CAPTURE_METRICS
Make sure the app works as expected and the performance data is tracked when necessary

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android / native
[x] Android / Chrome
[x] iOS / native
[x] iOS / Safari
[x] MacOS / Chrome / Safari
[x] MacOS / Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] If we are not using the full Onyx data that we loaded, I've added the proper selector in order to ensure the component only re-renders when the data it is using changes
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

Screenshots/Videos

Web

https://github.com/Expensify/App/assets/23176449/6be2e525-644c-4f46-a74c-379ff3579679

Mobile Web - Chrome

https://github.com/Expensify/App/assets/23176449/8f69c104-01d4-409d-85fc-77f0bc5a48a5

Mobile Web - Safari

https://github.com/Expensify/App/assets/23176449/1a2c7235-8474-4f66-b954-9af0d8a8431c

Desktop

https://github.com/Expensify/App/assets/23176449/34b3a485-d44f-4c05-ba2d-8c4842320f38

iOS

https://github.com/Expensify/App/assets/23176449/79048ac0-5b73-4c29-bf21-794959634b91

Android

https://github.com/Expensify/App/assets/23176449/1505ac84-ba8e-41e1-90f4-627cd514cbd1

I am running a bit behind schedule, so @situchan will review the PR. Over to you, @situchan

Just so you know @situchan, TS process was changed recently and now C+ are responsible for the reviewer checklist.

yup, I know

@VickyStash can you please share video that verifies the performance data is tracked when necessary?
Also, please pull main

@situchan Performance lib file that was updated is mostly used for E2E performance tests. So one of the ways to test that it works is also to run these tests.
Here are screenshots of performance tests run locally (the video of the tests running is too long):

Also, in the videos attached in the PR description for ios and android you can see the alert with performance info at the start:

Let me know if you need anything else.

@situchan Could you please take a look at this PR?

oh sorry slipped from my radar as I wasn't assigned here.
Code looked good in previous review. Will test shortly

Reviewer Checklist

[x] I have verified the author checklist is complete (all boxes are checked off).
[x] I verified the correct issue is linked in the ### Fixed Issues section above
[x] I verified testing steps are clear and they cover the changes made in this PR

[x] I verified the steps for local testing are in the Tests section
[x] I verified the steps for Staging and/or Production testing are in the QA steps section
[x] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[x] I checked that screenshots or videos are included for tests on all platforms
[x] I included screenshots or videos for tests on all platforms
[x] I verified tests pass on all platforms & I tested again on:

[x] Android / native
[x] Android / Chrome
[x] iOS / native
[x] iOS / Safari
[x] MacOS / Chrome / Safari
[x] MacOS / Desktop

[x] If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
[x] I verified proper code patterns were followed (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method
[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I verified that this PR follows the guidelines as stated in the Review Guidelines
[x] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG)

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Web

Mobile Web - Chrome

Mobile Web - Safari

Desktop

iOS

Android

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/hayata-suenaga in version: 1.3.85-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/francoisl in version: 1.3.85-4 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅

🚀 Deployed to staging by https://github.com/hayata-suenaga in version: 1.3.86-0 🚀

platform
result

🤖 android 🤖
failure ❌

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/francoisl in version: 1.3.86-5 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅


ToastStyle is deprecated

Description
The example in the Best Practices uses ToastStyle, which is deprecated.

Ah good catch! I fixed it here: https://github.com/raycast/extensions/commit/50648665246eec1490af97bf526f3834f2f2f3b7 because this example should have used a useEffect.
Thanks!


Only Last Message of Grouped Messages are fetched.

While trying to fetch all messages only last message of grouped messages available. How can I fetch all the messages?

@ankittparikh Hey, what messages are they exactly?

Seems to be an ice-box. Will close it at the moment


Export with dependencies is missing autoload files

Godot version: 3.1.1
OS/device including version: OS X 10.14.6 (18G95)
Issue description: When I select export selected scenes and dependencies, it misses the files declared as autoloaded which renders the game unplayable.
Even other scenes that are directly inside a scene are missing: Player.tscn
Steps to reproduce: Have in autoloader and export selected scenes and dependencies
Project: https://github.com/firegate666/godot-platformer
ERROR: initialize: Directional shadow framebuffer status invalid
   At: drivers/gles2/rasterizer_scene_gles2.cpp:3369.
ERROR: load_interactive: Condition ' err != OK ' is true. returned: Ref<ResourceInteractiveLoader>()
   At: scene/resources/resource_format_text.cpp:1226.
ERROR: _load: Failed loading resource: res://default_env.tres
   At: core/io/resource_loader.cpp:285.
ERROR: SceneTree: Default Environment as specified in Project Settings (Rendering -> Environment -> Default Environment) could not be loaded.
   At: scene/main/scene_tree.cpp:2048.
ERROR: load_source_code: Condition ' err ' is true. returned: err
   At: modules/gdscript/gdscript.cpp:813.
ERROR: load: Condition ' err != OK ' is true. returned: RES()
   At: modules/gdscript/gdscript.cpp:2172.
ERROR: _load: Failed loading resource: res://SignalBus.gd
   At: core/io/resource_loader.cpp:285.
ERROR: start: Can't autoload: res://SignalBus.gd
   At: main/main.cpp:1549.
ERROR: load_source_code: Condition ' err ' is true. returned: err
   At: modules/gdscript/gdscript.cpp:813.
ERROR: load: Condition ' err != OK ' is true. returned: RES()
   At: modules/gdscript/gdscript.cpp:2172.
ERROR: _load: Failed loading resource: res://Player.gd
   At: core/io/resource_loader.cpp:285.
ERROR: poll: res://Player.tscn:3 - Parse Error: [ext_resource] referenced nonexistent resource at: res://Player.gd
   At: scene/resources/resource_format_text.cpp:440.
ERROR: load: Condition ' err != OK ' is true. returned: RES()
   At: core/io/resource_loader.cpp:208.
ERROR: _load: Failed loading resource: res://Player.tscn
   At: core/io/resource_loader.cpp:285.
ERROR: poll: res://Level1.tscn:4 - Parse Error: [ext_resource] referenced nonexistent resource at: res://Player.tscn
   At: scene/resources/resource_format_text.cpp:440.
ERROR: load: Condition ' err != OK ' is true. returned: RES()
   At: core/io/resource_loader.cpp:208.
ERROR: _load: Failed loading resource: res://Level1.tscn
   At: core/io/resource_loader.cpp:285.

Did you try to change Autoload or class_name - PlayerModel?
In Godot 3.2+ there is visible error when someone have same name for Autoload and Class.
SCRIPT ERROR: GDScript::reload: Parse Error: The class "PlayerModel" conflicts with the AutoLoad singleton of the same name, and is therefore redundant. Remove the class_name declaration to fix this error.
   At: res://PlayerModel.gd:2.
ERROR: reload: Method/Function Failed, returning: ERR_PARSE_ERROR
   At: modules/gdscript/gdscript.cpp:576.
ERROR: _create_autoload: Script does not inherit a Node: res://PlayerModel.gd.
   At: editor/editor_autoload_settings.cpp:327.

I've been having this issue recently. My temporary fix has been putting all my autoloads in a folder (e.g. res://AutoLoads/), then in the export settings, write the folder as a filter to export "non-resource files/folders" (e.g. write AutoLoads/*).
Though this works, I think it would be nice to have the option in export to include or exclude AutoLoaded files when exporting with scenes + dependencies :)

There is not only autoload but also global classes (class_name used in selected scenes/scripts) are missed in export.

Confirmed, this still happens with autoload scripts in Godot Engine v3.2.2.stable.official and Android export template.

Confirmed, this still happens with autoload scripts in Godot Engine v3.2.2.stable.official and Android export template.

I can fix this issue, as I have looked at the code and it's quite straightforward. The question is though, which of these options would be the best, @KoBeWi?

automatically export autoloaded resources and their dependencies no matter what
extend ExportFilter enum by adding EXPORT_SELECTED_SCENES_AND_AUTOLOAD, and hence add a new option item "Export selected scenes and AutoLoad (and dependencies)"
in case of EXPORT_SELECTED_SCENES is selected, show additional CheckBox in the ProjectExportDialog right under the OptionButton determining whether to export autoload resources or not
leave it as-is, and use workaround @RokaRoka mentioned

I can fix this issue, as I have looked at the code and it's quite straightforward. The question is though, which of these options would be the best, @KoBeWi?

automatically export autoloaded resources and their dependencies no matter what
extend ExportFilter enum by adding EXPORT_SELECTED_SCENES_AND_AUTOLOAD, and hence add a new option item "Export selected scenes and AutoLoad (and dependencies)"
in case of EXPORT_SELECTED_SCENES is selected, show additional CheckBox in the ProjectExportDialog right under the OptionButton determining whether to export autoload resources or not
leave it as-is, and use workaround @RokaRoka mentioned

I think 1. would be the best, because it fixes the bug and is straightforward to do. We could make it customizable later if someone wants it (but hard to say right now, likely not).

I think 1. would be the best, because it fixes the bug and is straightforward to do. We could make it customizable later if someone wants it (but hard to say right now, likely not).

There is not only autoload but also global classes (class_name used in selected scenes/scripts) are missed in export.

Could you open a dedicated issue for this? The autoload part will be fixed by #45059.

There is not only autoload but also global classes (class_name used in selected scenes/scripts) are missed in export.

Could you open a dedicated issue for this? The autoload part will be fixed by #45059.


Doc formatting & vue-html card removal

I have gone ahead and updated the doc .md files to fix ```html-vue and  inconsistencies. This includes:

tabbing
adding
removing  from ```html-vue
adding  to code block examples
for spinners I removed non breaking spaces and used BS margin classes. for the moment I removed any dark mode variants to make sure they render in the current mode

for spinners I removed non breaking spaces and used BS margin classes. for the moment I removed any dark mode variants to make sure they render in the current mode

variant="dark" is deprecated. They will all need to be removed at some point https://getbootstrap.com/docs/5.3/migration/#color-modes


Issue in Codeunit "CRM Sales Order to Sales Order" 5343

Dear,
I have an issue with this CU in Business Central SaaS 18.3
I subscribe to this publisher :
[EventSubscriber(ObjectType::Codeunit, Codeunit::"CRM Sales Order to Sales Order", 'OnCreateSalesOrderLinesOnBeforeSalesLineInsert', '', true, false)]
local procedure OnCreateSalesOrderLinesOnBeforeSalesLineInsertExt(CRMSalesorderdetail: Record "CRM Salesorderdetail"; var SalesLine: Record "Sales Line")
begin
SalesLine.Validate("VAT Prod. Posting Group", CRMSalesorderdetail.DBEVATProdPostingGrp);
end;
but when this event is triggered, Business Central crash with standard error "....Something Went Wrong..." :(
I tried without validate and same crash. I'm "SUPER" and ADMIN User.
if someone has any idear, thanks by advance.
have nice day

Apologies for the delay in getting a response for this. Can you share your AAD tenant ID? I need it to check our telemetry to see what might have gone wrong in SaaS, and figure out which team owns this bug. It's understandable if you don't want to post your aad tenant ID on this issue, so you can send it to me directly at<EMAIL_ADDRESS>Thanks in advance!

With Tholke, we managed to find a fix for this issue. use "Text" type for field definition in extension, instead of "Code" type.

Thanks for posting the fix for others to see!
Hopefully MS can fix the crash or at least generate a proper error when it happens ;-)

That is the plan. There should never be a reason for the error page to be shown. We either need to not have the error to begin with, catch it earlier (compile time), or show something more friendly. :)


How do I get access to control the animation properties

Hey so I'm using this plugin as having issues using lottie-web in an astro component.
Your library does not allow me access the methods such as play and pause is that correct? (I am using this for a mobile menu animation)
If so how could I go about doing this.

Actually not possible. Give me a day, I'm working on a new version with that feature.

Closed by ef05f31799cbf5fec94a962037151f2d4f146874.
I pushed the v0.2.0. Now you can access the Lottie player for any animation. Checkout the updated ReadMe and let me know if you have any issue.

@giuseppelt amazing work! This is going to make the site look great I really appreciate it.


Empty object json files causes error

I'm working with LingoHub to manage translations, and one of the things it does is generate empty placeholder translation files.
The problem is that those files contain { }, and apparently that triggers an error with tap:i18n's parser:
While building package telescope:getting-started:
   /Users/sacha/Dev/Telescope/packages/telescope-getting-started/i18n/en.i18n.json: Can't load
   `/Users/sacha/Dev/Telescope/packages/telescope-getting-started/i18n/en.i18n.json' JSON
   packages/tap-i18n-compiler/lib/plugin/helpers/load_json.coffee:25:19: Can't load
   `/Users/sacha/Dev/Telescope/packages/telescope-getting-started/i18n/en.i18n.json' JSON (compiling i18n/en.i18n.json)
   at Object._.extend.loadJSON (packages/tap-i18n-compiler/lib/plugin/helpers/load_json.coffee:25:19)
   at Package (packages/tap-i18n-compiler/lib/plugin/compilers/i18n.json.coffee:23:26)

I'll make sure there are no empty json objects for now, but it'd be great if tap:i18n could just ignore empty objects and move on to the next file without throwing an error.

Oh and I should also mention that this is only an issue with empty objects in the source language's files, since they're the only ones loaded on the server.

I think this is a bug.
If i use {} or { } I get the same error, but I i use:
{
}

The error goes away.

Couldn't reproduce. I tend to suspect it's an issue with different versions of node.
As the code is very simple: https://github.com/TAPevents/tap-i18n/blob/master/lib/plugin/helpers/load_json.coffee#L18
-Daniel

Something to do with JSON.minify -- isn't that a redundant step (why not just JSON.parse((fs.readFileSync(file_path, "utf8"))?

Need to understand what is the cause, which function in particular fails for some version of node but is ok for others, then we can implement a fix/workaround.

Having the same issue with {}, on Mac, Meteor 1.2.1
   blabla/i18n/en.i18n.json: Can't load `blabla/i18n/en.i18n.json' JSON
   <runJavaScript-157>:293:13: Can't load `blabla/i18n/en.i18n.json' JSON (compiling i18n/en.i18n.json)
   at Object._.extend.loadJSON (<runJavaScript-157>:293:13)
   at Package (<runJavaScript-157>:622:26)

Just tried running JSON.minify('{}') and it returns an empty string, which is of course not a valid JSON


Remove restful test to restore run_local.sh

As discussed on the last meeting, we just remove the restful test to make running the unit tests locally easier. .ci/run_local.sh now works and runs in a reasonable time.
It also renames the files in the config test to make agent removal easier later on.

The e2e tests, cover pretty much everything that the restful test covers and is way simpler to run.

Codecov Report

Merging #1325 (1b4d7b3) into master (8ddfd12) will decrease coverage by 0.49%.
The diff coverage is n/a.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files

Flag
Coverage Δ

packit-e2e
74.15% <ø> (-0.49%)
:arrow_down:

testsuite
6.74% <ø> (-4.34%)
:arrow_down:

unittests
1.92% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

keylime/keylime_agent.py
72.55% <0.00%> (-0.58%)
:arrow_down:

The e2e tests, cover pretty much everything that the restful test covers and is way simpler to run.

Naive question: with e2e you mean the packit tests? How can those be executed locally?

@aplanas yes I mean the packit tests. You can run them locally, the documentation for that can be found here: https://github.com/RedHat-SP-Security/keylime-tests/blob/main/TESTING.md

@aplanas yes I mean the packit tests. You can run them locally, the documentation for that can be found here: https://github.com/RedHat-SP-Security/keylime-tests/blob/main/TESTING.md

Oh thanks. Seems that tmt is not frequently found outside RH. I will make it available in openSUSE too.

I would like to get this in, so that I can remove the agent more easily. I will look into adding back pure REST unit tests that not require the agent running, after the removal is complete.


Update i18n.md with information about Unicode isolation marks

Supersedes #1053.

Yes, that's intentional (https://github.com/grammyjs/website/pull/1053#discussion_r1604214506). Should I remove them?

Yes, that's intentional (https://github.com/grammyjs/website/pull/1053#discussion_r1604214506). Should I remove them?

I think we should keep it as it'll be useful for the readers.


/ tag is not working properly

I created a tag on the advanced.js parser and named it s as the <..strike> tag seems to be deprecated in HTML5. It works fine but when I press space and continue to type in some other words, it doesn't disable the strike through tag and there is no way of turning it off.
Is this the expected behavior? I tried some other elements like Bold, Italicized, Underlined but they work as expected except for <..strike>/<..s> tags.
Thanks!

I can confirm as well, I can toggle between  b i u tags. It means if I pressed the button twice it switches the format on and off. This is not the case for s and strike tags.

Ok I got it to working. Instead of using formatBlock. I tried to inline it instead. I failed to analyze its resulting HTML source but I was able to figure it out anyway.
Thanks!!!
ToolbarInterface.prototype.strikeout = function()
{
this._mEditor.composer.commands.exec("formatInline" , "s");
}
I also set the s tag in advance.js like this:
"s" : {}