Document scope of TestingCoreFilters

Please document what is in scope for the testing filter / TestingCoreFilters.
Currently the documentation does describe what's in the core filter, in this page:

https://www.modpagespeed.com/doc/config_filters

There it says:

The default level is CoreFilters. The core set of filters contains:

However, I cannot find a similar specification of what is scope for the TestingCoreFilters.
I tried to determine this by looking at the source code, but I wasn't able to derive that.
It would be appreciated if the contents of that filter set is documented in the normal documentation set, probably in the same page (the one that documents the core filters).

I think this is relevant in the code, from https://github.com/apache/incubator-pagespeed-mod/blob/b4bf44cc56d8bbf17494c540dfb6ef20dfcf5073/net/instaweb/rewriter/rewrite_options.cc#L640
// Note: all Core filters are Test filters as well.  For maintainability,
// this is managed in the c++ switch statement.
const RewriteOptions::Filter kTestFilterSet[] = {
    RewriteOptions::kConvertJpegToWebp,
    RewriteOptions::kDebug,
    RewriteOptions::kDeferIframe,
    RewriteOptions::kDeferJavascript,
    RewriteOptions::kDelayImages,  // AKA inline_preview_images
    RewriteOptions::kIncludeJsSourceMaps,
    RewriteOptions::kInsertAmpLink,
    RewriteOptions::kInsertGA,
    RewriteOptions::kInsertImageDimensions,
    RewriteOptions::kLazyloadImages,
    RewriteOptions::kLeftTrimUrls,
    RewriteOptions::kMakeGoogleAnalyticsAsync,
    RewriteOptions::kPrioritizeCriticalCss,
    RewriteOptions::kResizeToRenderedImageDimensions,
    RewriteOptions::kResponsiveImages,
    RewriteOptions::kRewriteDomains,
    RewriteOptions::kSpriteImages,
};

Doc pull requests welcome! :-)


part files are set as orphin nodes.

_x included as part  should either be ignored or have the correct parent wouldn't it ?

Sorry, could you please give a longer example? Lakos doesn't support the part directive at all.

Thanks @cedvdb. My understanding is that part is used rarely in Dart, but I could be wrong. If I were to support part it would probably look like another arrow type, like a dotted arrow line or something. What do you think? Let's keep this issue open for now...

@OlegAlexander I personally use it extensively, as I want my libraries to be properly encapsulated.
As for arrows, there is two scenario: A class can be included in another file with part :

If the class included is public (not starting with _), there should be an arrow for anyone using it
It the class included is private, the intent of the developer is to encapsulate this part of the library, so by definition I think the better way would be to not have it at all part of the graph. This is usually the most common scenario.

That makes sense. But just to be clear, are you talking about class names or file names that start with _? Because Lakos only looks at file names.

Because Lakos only looks at file names.

Personally by convention I use _ when the internal class of the file also starts with _. I'd suspect others to do the same but I cannot be certain.
So, personally I would like to setup a flag to be able to switch between an encapsulated view  and one where the part files are also part of the graph.
To have the part files part of the graph it seems like the function getEdges would need to include those part refs:
https://github.com/OlegAlexander/lakos/blob/master/lib/src/build_model.dart#L12
To have the part files not part of the graph it seems the function getDartFiles would need to omit _ , the Glob class does not support negative matches, so I guess a .whereNot((file) => file.path.startWith('_')  would do:
https://github.com/OlegAlexander/lakos/blob/master/lib/src/build_model.dart#L109
It seems that the second scenario would be easy to implement, not sure about the first one. Since nobody complained beside myself just having the second method would be ok ?

Thank you for identifying where in my code the changes could be made. I agree that the second scenario would be easier, but I'm not convinced that many people use the _ convention. For example, none of the libs in my test suite use it.
Having said that, you can ignore a list of specific files like this:
lakos -i "{**_suggestions_list_view.dart,**_suggestions_data_source.dart,**_search_suggestion_input.dart}" .

Would that work for you as a workaround?

Yup that can work as a workaround, I'll close this then.
lakos.bat -o metrics/metrics.dot -m ./lib/src -i "_**.dart"  && dot -Tsvg metrics/metrics.dot -o metrics/metrics.svg && gv2gml metrics/metrics.dot  -o metrics/metrics.gml
Here are some usages of part by the dart sdk https://github.com/dart-lang/sdk/search?q=part

My understanding is that part is used rarely in Dart, but I could be wrong. If I were to support part it would probably look like another arrow type, like a dotted arrow line or something. What do you think? Let's keep this issue open for now...

Hi, my 2 cents about this.
Part files are used pretty extensively by code generation tools, also, it may come in handy to use it for other use cases. My main use case is e.g. for bloc files where you have bloc + state + event files tightly coupled, so I often make state and event parts of bloc file.
For me, it makes sense to just ignore these files, since there can be neither imports inside them, nor can they be imported by other files. So, if the file contains part of "..."; line it can be safely ignored.

Thanks for the explanation, @ookami-kb!
@cedvdb, do you agree that files containing part of should be ignored?

do you agree that files containing part of should be ignored?

I'm not OP, but +1 on ignoring part of (or at least as an option).
In my ideal world, I'd have something that would visually group the containing file (the one with the part directive) and its constituent parts (those with the part of directives), so I could "see" the multi-file nature of the effective import. Alternatively, having a modified appearance for the containing file, combined with ignoring the constituent files, would at least prompt my awareness that "there's more there, there."
Having "partness" be a part of the metrics would also be helpful, I think. Perhaps in the containing file, putting the transitive count of contained files (e.g., numParts: 2 if a container had either two part directives, or one part directive which itself also had a part directive).

Hi @tripplilley, thank you for your thoughtful reply. I like the idea of adding an option to ignore part of directives. Would you like to take a stab at it and submit a PR?
I like the idea of having "partness" in the metrics, too. But I'm not sure this feature will be worth the effort because I'm still not sure how prevalent the usage of part is.
Do you know of a package that uses 'part' a lot that I can use for testing? I tried a Github search here but found very little.


Serving page locally in Chrome extension?

Hey, I just stumbled upon your project today.
I really like the idea and I could work on it a little, but unfortunately it takes too much time to load the page for me. When I open new tab I start typing instantly and it results in loosing half of my query.
Have you thought about serving html straight from Chrome extension instead of redirecting?

I actually tried to port the whole thing over into a chrome extension one time, but it was too much of a hassle to be worth it. Chrome caches pages so the load time hasn't been an issue for me, but I'm open to other suggestions.

@jibreil I already did some testing and unfortunately I wasn't able to make it work fast enough for me even with local serving.

I did some testing as well because I wanted to use a customised version but couldn't get it working as I wanted so I'm just using the original chrome extension for now. @KorySchneider could you add an option in the option menu to change colours?

@jinreil I'm planning a full rewrite hopefully in the coming weeks. Color options should be in there.

@KorySchneider Sound good, would it make a major difference if you separated the HTML and CSS? It might make it easier to maintain and to customise.

@jibreil The reason for combining the files is so the end user only has to make one (two if you count the Google fonts) file request. This is much faster than requesting & receiving three or four files.
I've considered writing a little script to stitch together separate HTML/CSS/JS files to create the index.html that gets served. It would ideally minify the file as well. Maybe I'll get around to it eventually...

@KoySchneider I understand but realistically how much of a difference does it make?
Jekyll pops into my mind in terms of stitching the files together, not sure if it would work in this situation.

@jibreil Some number of milliseconds. It doesn't sound like much, but I want it to be as fast as possible.
Isn't Jekyll a blog engine or something along those lines? Not sure what you're thinking is there.

@KorySchneider Jekyll is a dynamic content delivery service, yes it's usually used for blogs but I was thinking how Jekyll allows you have templates and generate pages by inseterting different parts of the page from different files. Haven't used it for a while thought.

@jibreil Ah okay I see. I'll look into it; I was planning on simply using JS.

@jibreil I've looked at Jekyll some, and it seems like more than I need for this project. It does look very excellent though.


Improvements

Improvements
Add event typing
Refactor locale loading to avoid to copy all the data from Dayjs
Remove script to copy locales and ts-node dependency
FIx
Fix visual glitch when picker use as-single use-range at the same time

Doc
Add local search
Add last build date
convert config to typescript
Fix example for Last 15 Days
Update event doc
Update dependencies

Can you fix the conflicts please? @xibman sorry it's my bad

@elreco done


$discord->factory() hangs indefinitely

I am trying to update the game presence of my bot, whenever I call $discord->factory() the bot hangs indefinitely.
The problem exists on version 4.0.1 (latest release) and the development version.
<?php

use Discord\Discord;

require __DIR__ . '/vendor/autoload.php';

$discord = new Discord(['token' => 'my-key']);

$discord->on('ready', function ($discord) {
  $game = $discord->factory(Game::class, [
    'name' => 'with kittens',
  ]);

  var_dump($game); // doesn't dump, hangs indefinitely on factory() call, no errors or warnings.
});

$discord->run();

PS: If this is a pebkac, I humbly apologize in advance.

I'm not sure what is stopping errors from outputting, but you need to import the Game class. Add use Discord\Parts\User\Game; at the top of your file and it should work.


command 'ruby.rubocopAutocorrect' not found

Ola,
Looks like detected a bug with keybindings override.
I getting "command 'ruby.rubocopAutocorrect' not found" warning when pressing shift+cmd+l.
Spotted on:

macOS High Sierra 10.13.2
VSCODE 1.19.3 (1.19.3) c4205b5c6e52a53b81c69d2b2dc8a627abaa0ba 2018-01-25T10:20:43.015Z
ruby-rubocop 0.6.0

My keybindings.json :

[
{
  "key": "shift+cmd+l",
  "command": "ruby.rubocopAutocorrect",
  "when": "editorLangId == 'ruby'"
}
]

Regards,
Dzmitry.

Autocorrect was move to formatter on visual studio code.

@AlxGolubev I think you'll find the answer to your question here => #63

@olivierbuffon thank you!

thank you very much


Always use transaction in JSONFile.Save()

If one exists, it will be used, otherwise a transaction
will be created and used around the save() call.
Also, this removes Save() from ConfigWriter interface
and cleans up unnecessary usage of Save() outside config.go.
PTAL @maxtaco

If Save is only called from the various Set* functions, can we remove it from the ConfigWriter interface?

It is removed from the ConfigWriter interface.

PTAL

:+1:


Add emoticon-selector and NotoColorEmoji font

This Pull-Request introduces a selector for the first code-block of emoji / emoticons (1F600 trough 1F64F) and also introduces NotoColorEmoji font, an open font from Google.
The new font is used in the selector, message input field and for the text of send/received messages.
This should resolve #42, and a bit of #34.
I did not (yet) add all the code blocks, since I'd like to have some feedback on this first. If it fits in your view/roadmap, whether my proposed emoticon-selector works good (enough), etc.. After that, I'd gladly add the rest of the code-pages to the selector.
"known issues":

Emoticons are added in the textfield /after/ the cursor. If there is a selection, it will not overwrite the seletion like what would happen when you input a character using the keyboard.
The selector does not automatically close, you'll have to push the button again.

I just noticed an issue with spaces not being rendered.. It seems that the space character in the Noto font is zero-with?! The NotoColorEmoji font should not provide "normal" letters, so it should only be used to render the emotiocon range,.. right? Or am I misunderstanding the fall-back mechanism of the font-family property?
I would expect that there is no space character in the NotoColorEmoji font, or – at least – it to be non-zero width.

I tried your branch. You're definitely on the right track. I have some graphical comments

I zoomed a portion of yakyak. Here are my observation

There is a double border. I think if you remove the rounded one is going to be ok.
There is also a top margin of some sort that covers part of the conversation clipping away thins that I could be seen.
I think in the drawer the emoticons could be bigger with less margin around them
the image inside the button revealing the drawer is not well centered vertically

Other than that its looking good and If you can figure out spaces and some other emoticon group it would be a great contribution to yakyak.

Thanks for the feedback. I'll try to fix all the margin/border issues etc.
Interesting thing: these emoticons look different at my machine? Mine are like these
I'll post a screenshot after I've made some fixes.

I've updated the styling using your suggestions and I fixed the spaces. Only thing left is the other emoticon-groups.

<3

news on the other groups ? :)

Sorry, had a busy week and – moreover – a busy weekend :)
Current status: meddling with closures to get the correct button to open the correct pane of emoji. When that works it should be little effort to create multiple panes of Emoticons.
Things on the to-do list:

Create opinion about the grouping of emoji. The unicode.org grouping seems a bit on the awkward side. I've defined the groups in a mapping, so changing the order/grouping should be just changing the mapping without any other work.
Design of the drawer + tabs. I'm not a designer, so I'll try my best to get it to look as good as possible, but there probably will be some comments/feedback.

Okay, so: if we look at unicode.org and the codepoints they define under "Emoji & Pictographs" (see http://www.unicode.org/charts/ ), there are 5 groups of code-points in unicode (not counting dingbats)

Emoticons [0x1F600..0x1F64F]

Fully present in Noto

Miscellaneous Symbols [0x2600..0x26FF]

Fully present, but contains a lot of awkward glyphs we might want to leave out

Miscellaneous Symbols And Pictographs [0x1F300..0x1F5FF]

Mostly present, some missing and a few awkward glyphs

Supplemental Symbols and Pictographs [0x1F900..0x1F9FF]

Only a few present, a few that I would categorise under 1) and a few animal emoji

Transport and Map Symbols [0x1F680..0x1F6FF]

Mostly present and a few awkward glyphs.

Maybe I shouldn't just take the ranges as they are defined by unicode.org and make our own categories. (luckily I made that quite simple to do).
I'll also take out / blacklist codepoints that don't have a glyph in the font. I don't know if I could automate the extraction of all supported codepoints in a font, would be nice to know beforehand if a codepoint is represented by a font or not. (to prevent the empty box glyph)

http://emojipedia.org

I think these categories are quite nice! They differ from both Hangouts itself and WhatsApp, but they differ between themselves already, so I don't think it is necessary to have the same categories.
I'll try and contact them to see if they have a machine-readable version of their categorisation, otherwise I'll write a quick-n-dirty scrape script to get the categorisation from HTML or something.
In the meanwhile; I currently have this:

This works, technically, but it sill looks ugly :) I'll try to add better padding and spacing, but it's probably best if someone with a better understanding of design & UX takes a look at this.
The box-glyph will disappear when I get/use the categorisation from emojipedia.org

the first line are the last used ones ?

Right, still not mergeable, but I have scraped the categories from emojipedia.org; their categories are far better.
A new issue arose, where there are multi-codepoint emoji (with a glue-codepoint), that should render as 1 glyph, but currently don't render as one for the  elements, but do render as one in the  element.... which is strange.
I've created a python-script to scrape emojipedia.org and to create a big mapping in JSON. Maybe it should be converted to coffeescript and made part of the build process? Or maybe a gulp target to easily fetch changes from emojipedia.org.
Anyway, I'll update when I have some new progress.

the first line are the last used ones ?

No those would be the categories to switch the code-pages.

I would not put the scraping as a part of the build script. Maybe we should commit the script with the result and just update it manually from time to time for now

By "made part of the build process" I actually meant: exposing it as a gulp target. So you can do something like $ gulp update-emoji-definition and it just runs the script. It should, indeed, only be ran manually.

I guess I'm done! :) At least I think it is acceptable for a first iteration?

I've included the python-script in this PR, but it needs some dependencies, so for a non-python developer it is not clear how to set it up. Maybe it should be rewritten into coffeescript to keep the development tools clean & lean.

cool :) will try it in the next days

I just noticed there is a native thing on OS X that allows you to input emojis. It opens as a separate window like this.

which os do you use ?

I'm on Linux, Ubuntu, no built-in keyboard like that, but a vast support for unicode, so it probably is doable to get a emoji-keyboard-thingy. But still: I think having it inside YakYak is nice :smile:

indeed its merged :)

I noticed :)
Maybe there is a way to detect if the OS is capable of showing the selector? And just open that one when clicking the button, otherwise use the drawer as a fall-back. I'll try to find out, I'll probably be able to get my hands on a Mac and see.

I am sure its possible. But using a separate window or not should probably be up to the user so i would leave it like it is right now.


Can SiamMOT be used for person search ?

Hi, can I ask if SiamMOT can be used for person search because some of the other works like FairMOT have a Re-ID branch but SiamMOT seems to not have that?

Yes, current SiamMOT does not have a re-id branch to extract an instance-aware embedding that can be used for person search or person re-identification. However, it should be quite straightforward to add a separate re-id branch as our earlier technique report shows (https://arxiv.org/abs/2004.07786). Like FairMOT / JDE, you can train it with cross-entropy loss rather than triplet-based loss.


can not install node-sass in ubuntu

node: 9.5
npm: 5.6

What happens why you try to install. If you're in China try node-sass-china

@xzyfer tks, close it


refactor: re-write prql-java

Closes #1643

Hi @zhicwu
Thanks a lot for the big contribution! Appreciate it.
So I understanding — because we're using JNA rather than JNI — we're no longer linking with the jni rust crate; instead we're linking through prql-lib, is that correct?
IIRC when we discussed this, we thought JNA was reasonable given that we don't care much about performance here (though we miss out on help from the jni rust crate, possible a worthwhile trade though...)
CC @linux-china for feedback.

Thanks a lot for the big contribution! Appreciate it.

Sorry it took so long. I just spent too much time playing ChatGPT lately :p

So I understanding — because we're using JNA rather than JNI — we're no longer linking with the jni rust crate; instead we're linking through prql-lib, is that correct?

Yes. And this ensures consistency with all other language bindings, although it's just C# and PHP for now.

IIRC when we discussed this, we thought JNA was reasonable given that we don't care much about performance here (though we miss out on help from the jni rust crate, possible a worthwhile trade though...)

It's still JNI so the performance is not horrible. Besides, the library is extensible, so user can easily add custom implementation(using jni crate like before or a wrapper of prqlc command-line) as needed. Personally I'd rather build stateless web service using Rust instead of JNI for better throughput and scalability, when performance becoming an issue.

@zhicwu a question here, how to load prql_lib from file system?  Should I copy prql library into a path?  or packaged all library files into fat jar?
import com.sun.jna.Native;

public class JnaImpl extends Prql.Factory implements Prql {
    private static final PrqlLibrary lib;

    static {
        lib = Native.load("prql_lib", PrqlLibrary.class);
    }

}

Refer from  https://developer.okta.com/blog/2022/04/08/state-of-ffi-java
Java Native Interface (JNI)
Pros

Native interface access for C/C++/Assembly
Fastest solution in Java

Cons

Complicated to use and brittle
Not very secure and could cause memory safety issues
Overhead and performance loss is possible
Difficult to debug
Depends on Java developers to write safe C binding code manually
You need to compile and ship the C code for each target platform

Java Native Access (JNA)
Pros

Native interface access for C/C++/Assembly
Simpler to use compared to JNI
Dynamic binding, no need to write any C binding code manually
Widely used and mature library
Better cross-platform support

Cons

Uses reflection
Built on top of JNI
Has performance overhead and can be slower than JNI
Difficult to debug

Just my opinion only:  I prefer JNI for prql-java.

JNI performance is better, and it's very important to transpile PRQL to SQL.
With jni-rs, and almost no header file and code generation for JNI, and development is very easy, and no need to write safe C binding code manually.
File size of jna-5.13.0.jar is almost 1.8M, why add another dependency in prql-java

@zhicwu a question here, how to load prql_lib from file system? Should I copy prql library into a path? or packaged all library files into fat jar?

Native libs are packed into the jar for ease of use. prql-java is ~10MB and JNA is 1.8MB.

Change to draft as I need to test publishing the artifact to Maven central tonight.

Is additional work needed to merge this?

I am curious if there is any reason why this cannot be merged.

I'm sorry to have not replied for a while — it important to me and to the project that contributions like this receive prompt reviews & merges. Thank you very much to @eitsupi for reminding me.
I don't think I have enough context to have a strong view on whether this approach is better. To some extent, I trust @zhicwu 's judgement — he seems to be very competent indeed... I'd welcome feedback from @linux-china or others.
Echoing my comment above:

The jni crate did seem to make the build very easy — it was a single command to build on any platform, lots of the complexity was encapsulated. But I don't know enough to have a strong view — maybe it's difficult for folks with Java expertise to contribute, and that's worth a lot.

It is a lot of code, and this approach relies on Java more than Rust, which is less available in the team. To the extent @zhicwu would like to remain involved with the project, it's possibly an easy choice to merge it. To the extent this was a generous one-off, then it's possible a more difficult decision — are we able to maintain this?

I'm also not sure where we were at re publishing to Maven. (Was anything there on me to do there?)

Sorry for the late reply. Actually ChatGPT-4 can generate working Java code to use prql-lib, which is pretty much this pull request is about. So I think what really matters are:

Publishing compiled PRQL lib for multiple platforms, so that it's easier for all languages to integrate
JDBC driver(either use prqlc, the command line, or PRQL lib via JNI/JNA) for IDE integration

IMO, it's probably the best to manage them in separate repos.
I'm occupied lately but I should be able to clean up code and publish a JDBC driver using prqlc in a week or two.

Just released the JDBC driver, which only uses prqlc, the command line. Let's close the PR for now. Perhaps I can add this into JDBCX as a connector, if prql-lib binaries are all published.


Cypress test for Undo/Redo actions in the code editor

Which issue(s) this PR fixes:#472

@miram13 does it work for Firefox in your local?


Proof Request "required" field

Right now, BC wallet mobile app expects schema id or cred def id to be present in proof requests.
Does it make sense for a proof request to be made without either of those ids? Is this something we need to handle?

In the AnonCreds spec, there are 8 “restrictions” that are supported, all of which are optional. The details of each are described in the spec here — restrictions.  So yes, it makes sense that other restrictions could be used.   Whether you want to support them in BC Wallet might be an open question.  Certainly the software in BC Wallet can support all forms of restrictions.  Restrictions are used when searching the credentials in the wallet for the set that satisfy the presentation request.
Further, since all are optional — there is the case that none are present — that restrictions in the presentation request is an empty array.  That is taken to mean that the data is intended to be “self-attested” — provided by the holder directly (e.g. typed into a box) and not “verifiable” at all.  While there are some good use cases for that, I wouldn’t think that BC Wallet is likely to support that.


VS2019 fresh download of VSIX did not work for me

@EasyRhinoMSFT, how about for you?

@michaelcfanning what error/issue did you see?
I refresh installed the marketplace SARIF viewer on VS 2019, it works for me.

Also clean installed the VS2019 VSIX built from latest main branch. It also works. Pls let me know what issue did you see thanks!

I don't see the tool window, and if I go to View > Other windows, it comes up empty. This is the live package.
From: Yong Yan @.>
Sent: Tuesday, January 25, 2022 10:14 AM
To: microsoft/sarif-visualstudio-extension @.>
Cc: Chris Meyer @.>; Mention @.>
Subject: Re: [microsoft/sarif-visualstudio-extension] VS2019 fresh download of VSIX did not work for me (Issue #453)
Also clean installed the VS2019 VSIX built from latest main branch. It also works. Pls let me know what issue did you see thanks!

Reply to this email directly, view it on GitHubhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fmicrosoft%2Fsarif-visualstudio-extension%2Fissues%2F453%23issuecomment-1021568210&data=04|01|Chris.Meyer%40microsoft.com|3d44b6eef61d45ebe46e08d9e03f2cc8|72f988bf86f141af91ab2d7cd011db47|1|0|637787384217676196|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=tZh0Zi45rC7tJWlud%2BKbT0agN7NeXRtP1eEn47mVBc4%3D&reserved=0, or unsubscribehttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAHZ4KVJC2M2ZOSSES2UYLMTUX377FANCNFSM5MWYDJGA&data=04|01|Chris.Meyer%40microsoft.com|3d44b6eef61d45ebe46e08d9e03f2cc8|72f988bf86f141af91ab2d7cd011db47|1|0|637787384217676196|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=IJvy9fDuLE0cHL1Fwbqa%2Flu9bNhsLsZ26I4HJ66ORJg%3D&reserved=0.
Triage notifications on the go with GitHub Mobile for iOShttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fapps.apple.com%2Fapp%2Fapple-store%2Fid1477376905%3Fct%3Dnotification-email%26mt%3D8%26pt%3D524675&data=04|01|Chris.Meyer%40microsoft.com|3d44b6eef61d45ebe46e08d9e03f2cc8|72f988bf86f141af91ab2d7cd011db47|1|0|637787384217676196|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=iY%2B9zbHQwCY1HtfE4LhIgf9q%2BZZ%2FSOdzZ%2Bd1DxMi8qA%3D&reserved=0 or Androidhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fplay.google.com%2Fstore%2Fapps%2Fdetails%3Fid%3Dcom.github.android%26referrer%3Dutm_campaign%253Dnotification-email%2526utm_medium%253Demail%2526utm_source%253Dgithub&data=04|01|Chris.Meyer%40microsoft.com|3d44b6eef61d45ebe46e08d9e03f2cc8|72f988bf86f141af91ab2d7cd011db47|1|0|637787384217726187|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|3000&sdata=yVf4gP9%2BMnM5eIRxP0HZMmVrDOQY5QFxL77ahim0JWI%3D&reserved=0.
You are receiving this because you were mentioned.Message ID<EMAIL_ADDRESS>

@EasyRhinoMSFT I cannot repo your issue neither...  Ran the APEX tests all passed too. Wondering if its environment related. Feel free to setup a meeting/live session we can investigate more.

Worked with @EasyRhinoMSFT showed me the issue:

Open VS 2019 installed the SAIRF viewer extension.
Open a valid SARIF log file with results.
SARIF explorer does not popup automatically
Open SARIF explorer from menu 'View' -> 'Other Windows' -> 'SARIF Explorer', the explorer window is blank.

As I understand this is current viewer's behavior. Viewer does not open SARIF explorer after opening a SARIF log file.
Only when   you navigate to the result in Error List pane (double click on the error list item), it will open SARIF explorer and populate information.
I found an old issue discussing about this behavior at #159. Please take a look.
We could show a message in the blank SARIF explorer "Select an error to see details" to the user.

I find this very weird. The original purpose of the viewer was to provide an enhanced interaction with SARIF logs with a UI that presents their details. The current behavior makes it almost completely invisible and difficult to discover.

I too am confused by the behavior here. This morning I downloaded and installed it on VS2019. I opened a valid SARIF file (works fine with the VSCode extension) but I don't see anything in the Error List or in the SARIF Explorer window. I even opened the Solution to which the SARIF file applies but I still don't see anything. My expectation is that I should see results for any SARIF file I open somewhere. Any logs or anything I can collect here?

My machine is still in this condition. I see that the extension is installed, <IP_ADDRESS>815. I know that the viewer is partly operational: if I open a SARIF v1 file it queries me to see if I want to transform. And then, after this, silence. :)
@yongyan-gh, @EasyRhinoMSFT, with two customer reports, I trust there's some fire to this smoke. :) Would you like me to debug my system, if no one else on the team can repro?

@michaelcfanning can you please provide the log you are opening

@tgriff @michaelcfanning
can you pls share the visual studio log file at: %APPDATA%\Microsoft\VisualStudio\{vs_version}\ActivityLog.xml, and the sarif log file you opened when you saw the issue? Thanks


update content in supporters, one young world, faq, join team, and diseases pages (assigned to Naysha)

Rupak has updated content for the first 5 pages. Use this google doc to update content in the remaining 5 pages:

supporters
one young world
faq
join team
diseases

https://docs.google.com/document/d/1isZiE1mJKFrgvvVvrW5qFeaQ5LkImQ2QB671ezzeFrs/edit?hl=en

@nayshajain is this issue complete? Or are there more changes needed?

This is complete for now. :)


Standalone package for your client

Description
When We Generate Client For Our OpenAPI.json, It Can Also Create an Standalone Package with Script Like this openapi --input http://<IP_ADDRESS>:8000/openapi.json --output ./src/client2 --client fetch --name Backend --useOptions.
Which can be used like this
import { Backend } from '@/client';
export default const appClient = new Backend({
  BASE: 'http://localhost:8000',
});

Now I Can Use this single appClient Anywhere i want. and all functions are in this single object as method of that object.
Please Allow Option name instead of deprecating name in @hey-api/openapi-ts

@shriekdj with new clients, you'll be able to do

import * as Backend from '@/client';

And then call the client the same way. Except it will be tree shakeable. What's the value in keeping name?

Ok, Thanks @mrlubos this help my issue.
But the details like this should be also in docs for existing user of name option to use customClient Name package.
currently i have to use it like this
import * as Backend from '@/client';

Backend.OpenAPI.BASE = Config.apiBase;

Backend.OpenAPI.interceptors.request.use((request) => {
  request.cache = 'no-store';
  // request.headers.set('Authorization', 'Bearer <my_token>');
  return request;
});

export const appClient = Backend;

I also had to change my object methods also like before it was look like this
await appClient.district.searchDistrictsDistrictSearchGet();

which looks like after this type code using
await appClient.DistrictService.searchDistrictsDistrictSearchGet();

Everything else was the same for me. I am closing the issue


Repo lacks a license

Improve documentation
Describe the problem
There isn't a license in this repo, therefore the repo is not legally useable.
Describe the improvement
Add the MIT license to a new LICENSE.txt file.
Additional context

For your repository to truly be open source, you'll need to license it so that others are free to use, change, and distribute the software.
https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/licensing-a-repository#

License added with 1d53d25c31274a8c41578eb0c738bd42987d92f0


Keep different versions of documentations

HI, It would be great if we could keep differents versions (either only majors or minors) of documentations in the same folder, and developers would be able to select the version they are using
Thanks

@vinz243 This would be a great feature! How would you expect TypeDoc to know what versions to show/generate?

I guess it could use tags to detect which version to generate docs for. However this would also means that the version would first need to be tagged, so this would not work except if the docs are on another branch (like gh-pages). Another solution would be like, tagging the newly generated docs as 'current', and the previous one using tags maybe? There could be a CLI option too like --targetVersion 4.2.0 to select a version (then current and 4.2.0 would have same docs)

We have https://github.com/bevry/awesome-travis/blob/master/scripts/surge.bash which deploys the repo for each commit, branch, and tag.
For instance, for https://github.com/bevry/editions you can see the docs for master at http://master.editions.bevry.surge.sh/docs/ or the docs for v1.3.4 at http://v1.3.4.editions.bevry.surge.sh/docs/
I made a scaffolding tool to do all the setup automatically at https://github.com/bevry/boundation - which today I added typescript and typedoc support.

Benjamin's solution is the best one here, while TypeDoc could theoretically support merging docs for different versions, it is a large amount of complexity for a fairly small benefit. Keeping separate versions yourself also provides the flexibility to decide when documentation should be updated.

I just (mostly) solved this issue in my own workflow as documented here, complete with automatic symlinks to the latest versions. It's semi-specific to my use-case right now, but I could easily abstract it out to its own action if people would be interested.


getToken return empty string

i have this code:
constructor(
      public navCtrl: NavController,
      public navParams: NavParams,
      public firebase: Firebase,
      public platform: Platform
   ) {
      this.navCtrl = navCtrl;
      this.Http = http;
      this.filter = Filter;
      this.infinitePage = 0;
      this.getData();

      platform.ready().then(() => {
         if (platform.is("cordova")) {
            firebase.getToken().then(token =>this.storeToken(token)).catch(error => console.log('erro'));
         }
      });
   }

   storeToken(token){
      alert(token)
   }

end google service files:
project

In device app
the alert is empty

I hope someone can help me.
Thx

I'm not sure about that, but, are you sure that you have google-services.json and GoogleService-Info.plist inside www directory?
It seems that they are just on the root dir...

Same issue as @jeansarlon. Anyone please help
donno what im missing.
@jeansarlon have u fixed this issue

Another solution is here: https://github.com/arnesson/cordova-plugin-firebase/issues/558
To the author: A PR and a fix is URGENT now... ;-)


Debugging is broken in development mode when using cheap-module-eval-source-map

In Chrome, I'm seeing nothing but this when trying to hit a breakpoint when using cheap-module-eval-source-map:
/** WEBPACK FOOTER **
**
**/
Changing the devtool setting from cheap-module-eval-source-map to eval-source-map fixes this (which I just committed for now), but I'd like to switch back to the former since it's faster.
This issue seems related: https://github.com/webpack/webpack/issues/2145

Hi Cory,
This one kicked my butt as I was trying to follow along with your PS course. Just adding eval-source-map didn't work for me, I had to add new webpack.EvalSourceMapDevToolPlugin() to move along with the course. BTW, LOVE the course, Thank you so much for putting out great content, along with this react-slingshot
plugins: [
new webpack.HotModuleReplacementPlugin(),
new webpack.NoErrorsPlugin()
,new webpack.EvalSourceMapDevToolPlugin()
],
(great course btw! 5 stars).

Hi Cory,
I got the same issue with the cheap-module-eval-source-map when following react-redux course on Pluralsight. Changing the devtool to eval-source-map and adding new webpack.EvalSourceMapDevToolPlugin() make the debugger work.
Thanks cds-amal for the plugin suggestion.

I'm getting this issue too, and only very recently.
console logs are showing up at ?d41d:6 instead of the relevant source file
Switching to eval-source-map as Cory House suggested worked for me, slight bummer that rebundles probably take slightly longer as a result until this gets resolved

^ I've just encoutered this issue, too. I cloned the newest version of Slingshot and compared the webpack config to my version and found the solution. All works now.

I come across this issue too. Thanks for your ideas.

There have been some updates on the parent ticket. This may be resolved and available for re-testing.

Looks like this is supposed to be fixed, but from the Chrome side, not webpack, https://github.com/webpack/webpack/issues/2145#issuecomment-325441145

Good point - Just pulled down and confirmed it works. Closing!


Compatibility and Benchmarks for Datasets

Hey @docyx
Thanks a ton for the datasets and the gem! They’ve been super useful for my school project.
Quick question—any chance you could add compatibility and benchmark info for the necessary components (motherboard, cpu, gpu)? It’d really help with making sure everything works together and understanding performance.
Thanks again for all your efforts!

Hey, happy to hear that this has been a useful resource for you.
See my reply to #12 here. TL;DR getting more info from the individual product pages would involve a complete rewrite and would make this script orders of magnitude more abusive than it already is.
I would have to find an alternative to PCPP with the same plethora of data which is quite hard. I remember researching when I first started this project and those sites are few and far between. So for now I would say this is not an option but if I ever find the time I can look into this a bit more in the future.


Chip onRequestDelete triggered instantly

Hello.
It looks like I found a bug related to the versions of packages
Take a look at the sample.
import React, {Component} from 'react';
import Chip from 'material-ui/Chip';
import Avatar from 'material-ui/Avatar';

export default class TagList extends Component{
  constructor(props){
    super(props)
    this.handleRequestDelete = this.handleRequestDelete.bind(this);
    this.showChosenTags = this.showChosenTags.bind(this);
  }
  handleRequestDelete(tag){
    console.log(tag);
    this.props.deleteTag(tag._id);
  }
  showChosenTags(){
    return(
        this.props.tags.map((tag)=>(

            <Chip onRequestDelete={this.handleRequestDelete(tag)}>
              <Avatar size={24}>{tag.objects.length}</Avatar>
              {tag.name}
            </Chip>

        ))
    );
  }
  render(){
    let tags = (!!this.props.tags)?this.showChosenTags():undefined;
    return(

          {tags}

    )
  }
}

Function handleRequestDelete will run instantly, when component will mount.
I think it is related to version of react-tap-event-plugin.
Am i right?
In my package.json i have these packages:
"dependencies": {
    "babel-runtime": "^6.18.0",
    "flexboxgrid": "^6.3.1",
    "material-ui": "^0.15.4",
    "megadraft": "^0.4.9",
    "meteor-node-stubs": "~0.2.0",
    "react": "^15.4.1",
    "react-addons-pure-render-mixin": "^15.3.2",
    "react-dom": "^15.3.2",
    "react-masonry-component": "^4.3.1",
    "react-router": "^2.8.1",
    "react-s-alert": "^1.2.0",
    "react-tap-event-plugin": "^2.0.1"
  }

Material-ui want use react-tap-event-plugin 1x.
But new version of react need eact-tap-event-plugin 2x. What can we do?

Oh...it is not a bug. It is my stupid:)
That string in a constructor
this.handleRequestDelete = this.handleRequestDelete.bind(this);
Initialize function.
If i will delete it and add changes to place where i call that function
<Chip onRequestDelete={()=>this.handleRequestDelete(tag)} >
...
 </Chip>

Everything wil work fine.
It remains only to understand why the method is initialized in the constructor function in the immediate

@Tbutnyakov: glad you figured that out.
I'm closing this issue for now. :)


Implementing Deepface in FastAPI

Hello again!
I'm trying to integrate deepface into my FastAPI. Basically based on the docs in FastAPI
link , I have uploaded two images for face verification process.
I'm using PIL to read the image to read the uploaded images.
The uploaded file has the attribute of " SpooledTemporaryFile" which I try to pass to PIL and turn it into Jpeg.
Below are the snapshot of the codes and API UI.

And here is the preview of the API UI

Apparently, when i try to pass "image_name" to Deepface.verify function, I will get an error. Is there any way that I can convert the PIL.jpeg image to be readable by the verify function? Thanks

Hello,
I do not have an experience on FastAPI firstly. Could you send image_name instead of numpy array or base64 encoded? Because verify function supports those inputs as well.

Here, I found a similar case: https://github.com/serengil/deepface/issues/65
To sum up, you should convert pil to numpy first.
open_cv_image = np.array(image) #image is pil here
open_cv_image = open_cv_image[:, :, ::-1].copy() # Convert RGB to BGR

open_cv_image2 = np.array(image2) #image is pil here
open_cv_image2 = open_cv_image2[:, :, ::-1].copy() # Convert RGB to BGR

DeepFace.verify(open_cv_image, open_cv_image2 )

Thanks! My API works fine now! You have been very helpful sir

@okoliechykwuka I have instead replaced PIL library and code just use opencv to read the spoof file.  If you see in my screenshot above at line 17, I modified it a little so it can compatible with opencv. First , I have to convert the buffer into nparray and then decoded it using cv2.imdecode fuction. Here is the sample of the code:
def read_imagefile(file):
    nparr = np.frombuffer(file, np.uint8)
    image = cv2.imdecode(nparr, cv2.IMREAD_COLOR)
    return image

Then, you can pass the image to DeepFace.verify() function. Good luck!


WFLY-12136 Fix consistency of HttpSessionActivationListener event timing for distributed session managers

https://issues.jboss.org/browse/WFLY-12136

Fixed inadvertent logging level changes (residual debugging cruft).  Rebased against master.


feat: make the DECK_ envvar prefix configurable

Summary
default remains DECK_ so no functional changes to existing code. also adds tests for rendering files.
Testing

[x] Unit tests
[ ] E2E tests
[ ] Manual testing on Universal
[ ] Manual testing on Kubernetes

Codecov Report
Attention: Patch coverage is 75.00000% with 1 line in your changes missing coverage. Please review.

Project coverage is 41.17%. Comparing base (6d3c2b3) to head (8386919).

Files
Patch %
Lines

pkg/file/template.go
75.00%
1 Missing :warning:

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #106   +/-   ##
=======================================
  Coverage   41.16%   41.17%
=======================================
  Files          75       75
  Lines       10807    10807
=======================================
+ Hits         4449     4450    +1
+ Misses       5896     5895    -1
  Partials      462      462

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Question: Why does KubeVirt add extra cpu.feature in domain XML

Question
When I create a VM with specific cpu model and without specifying any CPU features like this.
spec:
  architecture: amd64
  domain:
    cpu:
      cores: 1
      model: IvyBridge
      sockets: 1
      threads: 1

However, I get the following domain XML after dumping. I'm not sure why these features are automatically added to the domain XML.
<cpu mode='custom' match='exact' check='full'>
  <model fallback='forbid'>IvyBridge</model>
  <topology sockets='1' dies='1' cores='1' threads='1'/>
  <feature policy='require' name='hypervisor'/>
  <feature policy='require' name='arat'/>
  <feature policy='require' name='xsaveopt'/>
</cpu>

Is there any hidden mechanisms?
Environment
KubeVirt Version: v1.1

Hi @Yu-Jack  - for questions like this it is probably better to ask them on the kubevirt-dev slack[1] or the kubevirt-dev mailing list[2] rather than opening issues.
Issues are usually for bugs and issues that users hit.
[1] https://kubernetes.slack.com/archives/C0163DT0R8X
[2] https://groups.google.com/forum/#!forum/kubevirt-dev

This is not added by Kubevirt itself, the Libvirt adds these.

Thanks @xpivarc
Going to close this issue - any further questions please reach out on slack / mailing list.
/close


[FEA] Automated CI checks for broken hyperlinks.

Is your feature request related to a problem? Please describe.
There have been a number of changes to the markdown documentation that has inadvertently left broken hyperlinks.  It is tedious to manually verify all the links at least land on a valid page.
Describe the solution you'd like
CI checks should look for changes to the markdown and verify all hyperlinks are traversable.  I'm sure there's existing packages to do this somewhere, or worst-case we could traverse the page as rendered in Github on the PR branch.
Bonus points for having a standalone tool that can be run as part of the release process to verify that when we publish documentation for the entire release that all hyperlinks in the documentation are valid at the time.

Related: https://github.com/marketplace/actions/markdown-link-check

close since #4907 merged


Clarity on the Foot3D class and general GRF stuff

Can you clarify a few things for me? First of all, what units do you assume the GRF data to be:
GRFxy = Var(m.fe, m.cp, fric_set, name='GRFxy', bounds=(0, self.GRFxy_max))
GRFz = Var(m.fe, m.cp, name='GRFz', bounds=(0, self.GRFz_max))

? I have some GRF data in Newtons (and depending on the direction of the force it can be negative) so maybe you assume magnitude here? My GRF data looks like this:

Just to make sure I'm understanding things correctly, do the following sympy variables (Lx and Lz) correspond to the above pyomo variables:
self.Lx = Mat(sp.symbols('L_{%s/x:%s}' % (name, nsides)))
self.Lz = sp.Symbol('L_{%s/z}' % name)
self.L = Mat(self.D).T @ self.Lx + Mat([0, 0, self.Lz])  # type: ignore

And the EOM for the contacts is standard the standard contact jacobian J^T.λ:
def calc_eom(self, q: Mat, dq: Mat, ddq: Mat) -> Mat:
    self.Pb_I_vel = self.Pb_I.jacobian(q) @ dq
    jac_L = self.Pb_I.jacobian(q)
    return jac_L.T @ self.L

In assuming the above, I have tried to add GRF data as a "parameter" into the optimisation (so no estimation of the contacts, and instead just use the data as is into the contact model):
    Fz = signal.resample_poly(grf["Fz"].values, up=2, down=7, axis=0)[::downsample_factor]
    Fx = signal.resample_poly(grf["Fx"].values, up=2, down=7, axis=0)[::downsample_factor]
    Fy = signal.resample_poly(grf["Fy"].values, up=2, down=7, axis=0)[::downsample_factor]
    for foot in foot_contact_order.keys():
        for contact_seq in foot_contact_order[foot]:
            contact_seq[0] //= downsample_factor
            contact_seq[1] //= downsample_factor
    for foot in pe.foot.feet(robot):
        grfz = foot["GRFz"]
        grfxy = foot["GRFxy"]
        foot_height = foot["foot_height"]
        foot_on_ground_indices = []
        try:
            for contact_seq in foot_contact_order[foot.name]:
                foot_on_ground_indices = foot_on_ground_indices + list(range(contact_seq[0], contact_seq[1]))
        except KeyError:
            pass
        for fe, cp in robot.indices(one_based=True):
            grfz[fe, cp].fix(Fz[start_frame + fe - 1])
            # grfz[fe, cp].value = Fz[start_frame + fe - 1]
            if fe - 1 in foot_on_ground_indices:
                foot_height[fe, cp].fix(0)
            # Note, range(4) corresponds with the friction polygon estimate using 4 sides. There is also an option to use 8 sides.
            for i in range(4):
                grfxy[fe, cp, i].fix(foot.D[i, 0] * Fx[start_frame + fe - 1] + foot.D[i, 1] * Fy[start_frame + fe - 1])
                # grfxy[fe, cp, i].value = foot.D[i, 0] * Fx[start_frame + fe - 1] + foot.D[i, 1] * Fy[start_frame + fe - 1]

Do you see anything completely wrong here (mis-understanding or something)?

Hi, sorry for the delay! I just partially answered this in issue #7. GRF has units in Newtons, but scaled by force_scale. Lx corresponds to GRFxy, and Lz corresponds to GRFz (I wanted to stick to the usual naming schemes I found in papers but apparently abandoned that in pyomo)
GRFz is simple (it's just a normal force value) but GRFxy is... complicated (at least, in 3D). It took me quite a while to understand why the friction polygon math works out. Amir has the papers for that but we could maybe go through the equations together if you want. Anyway, each component of the friction polygon is a positive vector. You positive/negative Fx and Fy values would have to be put into the right component of the polygon. I'm a bit rusty on this stuff so I can't comment on your code, but I'll have a look this weekend.

@alknemeyer Thanks for clarifying things. I really appreciate the time you taking out to answer my questions. If you available for chat about this, let me know!

Hey, so sorry for the delay again! I think that's the right idea, although I still haven't reread the paper and code.
Let's have a video chat and go through the paper together. I seem to have been kicked off the lab's Teams account. Could you send me an email at $githubusername at hey dot com and we can find a time?

@alknemeyer Did you receive my email?

Long overdue, but here is a result from projecting the horizontal GRF into a 4-sided polygon. To validate things, I just calculated the magnitude of the horizontal force when approximated by the polygon, and compared this with the magnitude from the force measurements.

Looks like it is close enough. Would be interesting to compare with the 8-sided polygon.
With this result, I think I will close this issue :)

Looks amazing! Thanks for letting me know. Hope your research is going well 🕵♂


Update svg size

Updates to size with the available screen view

have you seen the preview ? https://hackygolucky-patch-1.website-92s.pages.dev/
i would at least add a black background


[Announcement] 2024 Project Ideas

I submitted an application for this repo to have some projects listed in the 2024 google summer of code. Below are the project ideas. Unfortunately this year, this project was not chosen for participation.
If people want to work on these, please do so and I will be happy to help with mentoring and reviews.

1. Add Typescript client that validates openapi schemas only
Description
Add a new typescript client code generator that validates openapi 3.0.0-3.1.0 schemas only
This would be similar to the Java addition that was done recently in the v4.1.0 release ~65 PRs to make the Java client up to that point
Expected Outcome
new client must exist, have two sample clients (3.0.0 and 3.1.0 unit test clients) generated for it, samples must be tested in CI which includes the json schema tests on component schemas
Skills Required
typescript programming knowledge, handlebars templating, java, circleci
Mentors: @spacether
Size of Project: 175 hours (medium)
Difficulty: easy/intermediate
Ballpark Steps:

duplicate the python generator and templates
get schema validation working
must implement validation of around 39 keywords
validate interfaces but be the same or as close as possible to the already existing python/java interfaces
3.0.0 unit test client must be generated and tested
3.1.0 unit test client must be generated and tested
petstore client must be generated and tested

2. Add async handling to python + java generated code to improve schema validation/api call performance
Description
Add a generation option async: true/false which will have generated code be async. Add async functionality in python + java. Generate new async clients and test them in CI. Test result runtimes can be compared to demonstrate speed increases. Note: async in python should also apply to endpoint calls
Expected Outcome
async option exists in command line interface for both java and python generators, both have async clients generated in the repo + tested in CI
Skills Required
async experience with java/python, java, python, handlebars templating, circleci
Possible Mentors: @spacether
Size of Project: 90 hours (small)
Difficulty: easy
Ballpark steps:

add new command line input option for both generators
add async functionality to python generator + templates
generate and test async client in CI
add async functionality to java generator and templates
generate and test async client in CI

3. Improve Map property Output Class Properties By Adding + Implementing Interfaces
Description
If interfaces are generated for all schemas, and those are included in the output classes for list/dict classes, then the output classes and potentially the input classes/builders can be much thorough in describing what properties/items are present and what their types are. Right now, the output classes only describe the items/properties defined in that one specific schema. Have all map (json schema object type) schemas generate interfaces. Have all composed schemas that allOf include those schemas implement those interfaces. It would also be great if oneOf/anyOf schemas were included.
Challenges:

But if they were, then some of those properties are optional and could throw exceptions in java or return Unset in python. Can those use cases be covered by interfaces?
schemas can cyclically depend upon each other, can the generated interfaces work with that in python?
An example of a schema that would benefit from this is the Cat.Cat1 schema which could include a Map output class containing the allOf subschema properties

Expected Outcome
java code updated to include what interfaces each output class must implement, generated java or python code must include those interfaces, some schemas with cyclic references like A-allOf->b-allOf->c-allOf->A must be tested, generated client code must work and pass CI tests
Skills Required
java, python, handlebars templating
Mentors: @spacether
Size of Project: 175 hours
Difficulty: medium

4. Add Typescript client code generation
Description
Add a new typescript client code generator, this includes schema validations, all openpi types like servers security schemes, component schemas parameters headers request bodies, responses, endpoint operations.
Expected Outcome
typescript generator is added, openapi v3.0.0 client is generated and tested in CI could be the petstore client, ideally includes v3.0.0 unit test client also
Skills Required
java, typescript, javascript, handlebars templating, circleci
Mentors: @spacether
Project Size: 350 hrs (large)
Difficulty: medium/hard
Ballpark Steps:

duplicate the python generator and templates
get schema validation working
add servers
add component security schemes
add securities
integrate into ApiConfiguration
add RequestBody
add Header
add Parameter
add Response
Add RestClient
add Endpoints that use the above classes

@hxyannnay are you interested in doing one of these projects?

Closing this because the issue is stale and no one has submitted PRs for these projects.


next.js rewrite

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


Add feature to allow ceryx to be used as data by-pass proxy

Hello there! I'm happy user of ceryx for around a year now and I've implemented a small set of features for a specific use-case at my startup: using ceryx as configurable proxy to by-pass a cluster application for database access.
The following merge request is rather big, but all the changes are important to enable this use-case / feature / pattern. Let me explain to you what is happening. I hope you can appreciate the additions and I'm happy to make adjustments wherever necessary.
The base material explaining the use-case on a rather theoretical basis is a document from the Eclipse Ditto documentation, Data By-Pass Pattern. The basic idea is to place a random UUID with a "hidden" source URL together with authorization information in ceryx and return a 303 to the client which then is able to get a database query executed by calling ceryx with the UUID, without ever seeing the actual query or credentials. The environment is a cluster application which is not suited to pipe big amounts of data like in a database query.
To enable this I've added several things which are all explained in more detail in the README.

Ability to use arbitrary strings as source
Ability to use request uri params for targets
Ability to provide headers for ceryx calling the target, e.g. for Authorization or Host headers
Ability to provide a TTL to automatically clean up and invalidate routes after a certain amount of time

As said previously I'm using this modified Ceryx for about a year now and I think these features could benefit more people out there.
Tell me what you think! :)
More ideas:

Ceryx could execute queries in advance, cache them and discard after TTL runs out

👍

Hi @w4tsn thanks a lot for your proposal and your kind works. We will get back on this next week, in order to review the use case, semantics and implmentation.

After thinking about this a bit more: I'm totally with you regarding your opinions and ideas on where to go from here but honestly I believe that all those requests is actually killing this MR because it extends the scope to something that I think is worth at least one more MR. Do you see any way of getting this MR merged and starting from there to tackle the refactor and new features?


Vesting & cap aren't fully removed yet; will cause user confusion

Describe the bug
We cut out vesting in the smart contracts a few weeks ago. Took much security risk for the benefits. The smart contract interface for vesting was kept, just for potential in the future.
But ocean.py should just hide it completely, just giving zero values so that the user doesn't even have to think about it. (Keeping it is a problem because the user will get confused.)
Related: Same thing for datatoken cap. Why: ERC20 datatokens created from ERC721 have cap hardcoded to max integer (see _cap = 0xff.ff in ERC20Template.sol). Yet ocean.py interface still allows for cap to be set, see e.g. test_erc721_token.py.
Places to fix / to check:

marketplace readme still has it, and sets a nonzero value.
test_side_staking.py still refers to it to
test_erc721_token.py still sets cap, and (currently) doesn't even check what the value is. It shouldn't even set cap.
And probably more! I just had a quick glance and already saw this

I suggest to search for "vest" and "Vest", and remove every place it shows up, except for the smart contract call itself where you insert a zero.

@mariacarmina I think you fixed this in #799. Am I right?

@mariacarmina I think you fixed this in #799. Am I right?

I just checked, all three examples listed in the description have not been addressed. And there is probably more.

I have deleted all vesting tests, vesting events on #799, sorry for my late response. That was a PR which resolved some conflicts, new contract release and a barge update, so we decided to fix in that PR (also discussed with @calina-c about this)

I will delete the rest of occurrences of vesting if there are any.

I will delete the rest of occurrences of vesting if there are any.

I just checked, all three examples listed in the description have not been addressed. And there is probably more.

Ok, I will create a PR based on this, thank you @trentmc.

Hello @trentmc, I saw that removing the cap from create_erc20 contract function call will raise an exception as is mentioned in the contracts (https://github.com/oceanprotocol/contracts/blob/v4main/contracts/ERC721Factory.sol#L339).

Either the contracts need a fix in this case, either keep the cap in ocean.py tests.
I remember that I had a discussion with @alexcos20 regarding setting the cap to max integer value. The cap is a generic property of an ERC20 token and we kept in the contracts logic for ERC20 "standard methods". Maybe we can create an issue on the contracts to remove that require and also keep the cap aside.
What do you think @trentmc, @alexcos20 ?

Don't change the contracts. Just pass in dummy values.

Note: we should have done a new release on this, since it broke the interface.
I created a new issue for it. https://github.com/oceanprotocol/ocean.py/issues/836


Add webpack bundling

Addresses https://github.com/Innablr/revolver/issues/87.

Added in webpack bundling. npm run bundle still produces a zip with revolver.js, it's just now a single bundled file and minified.
Caught top level errors and manually handled the error. Otherwise the bundled js will produce an error on line 2 that prints the entire program.

UPDATED:
Webpack seems to ignore the dynamic loading when using ES2015 imports. This might be a compatibility issue with the typescript compiler module being set to commonjs and the ts-loader plugin for webpack. Changing the dynamic import to require and using "stringish" paths seems to work.
Webpack supports dynamic loading out of the box but it needs to know at least some of the path as a string. require(varName) isn't supported, it needs to at least be require('./plugin/${varName}'). See https://webpack.js.org/guides/code-splitting/

As discussed in slack: webpack isn't including the dynamically-loaded modules (plugins and drivers).
Adding these explicitly to webpack.config.cjs means they are included, but the actual imports fail (cannot find ../plugins/whatever etc). Seems this needs some magic:

https://webpack.js.org/guides/code-splitting/#dynamic-imports
https://webpack.js.org/guides/dependency-management/#require-with-expression

But this is beyond my typescript-foo.

Getting some work on my work machine: any ideas?


Android + Vulkan running build and tests

Getting to a baseline of being able to run our cc tests on Android with native Vulkan is import. From there it should be mostly shell mangling to get the new check tests running (if anything). Ideally we could have an OSS CI running Android tests, but even if just an emulator internally that's fine.

This is done now. We can cross compile towards Android and use ctest to launch tests on an Android device.


Parameter confused

pts: GroupLike
Parameters like this really confused,
What is the differences of PtLikeIterable or GroupLike
Or construct a Group(new Pt(x,y), new Pt(a,b)), Group([1,2,3,4])
In practice, I think all these objects are different, because some works in Curve, some don't.
I think this is the biggest obstacle in this project, people have to read your Demo code to try which works.

Following up on this. As a starting point, I've updated the documentations so it's clearer what these types mean.
Not sure if I can simplify it further. Needed the Iterable types as we want to support non-array iterables.
When in doubt, just pass a Group instance which should work always :)


vendorGitDeps: perform basic URL decoding of attributes

Motivation
An alternative (and slightly more general) implementation of https://github.com/ipetkov/crane/pull/760
Checklist

[x] added tests to verify new behavior
[ ] added an example template or updated an existing one
[ ] updated docs/API.md (or general documentation) with changes
[x] updated CHANGELOG.md

Awesome, thank you for fixing this so quickly! From what I see, the fix works as expected!
:heart:


[BUG] Chromium crash with bad parameters configuration

Context:

Playwright Version: 1.18.1
Operating System: Linux
.NET version: .NET 6
Browser: Chromium
Extra: AWS Lambda Custom Image

Code Snippet
var _playwright = await Playwright.CreateAsync();

var _browser = await _playwright.Chromium.LaunchAsync(new BrowserTypeLaunchOptions()
            {
                Args = new []
                {
                    "--disable-gpu",
                    "",
                    "--no-sandbox",
                    "--single-process"
                },
                Timeout = 30000,
                Headless = true
            });

Describe the bug
When sending empty arg (after disable GPU line) on the string array from BrowserTypeLauncheOptions Args variable, it causes Chromium to crash.

AWS Lambda Custom Image

Thats not officially supported, for the official supported operating systems see here: https://playwright.dev/dotnet/docs/intro#linux
You could try setting the DEBUG=pw:api,pw:browser environment variable, this should give you more hints whats actually crashing and on which side its crashing (Chromium vs. Playwright).


Enable tracing for interactive testing on fork with hardhat console

Is it not possible to have tracing for a transaction sent on local hardhat network (forked) interactively through the hardhat console?

Does npx hardhat node --trace work in this case?

Does npx hardhat node --trace work in this case?

I couldn't make it work..

What error/behavior do you get? What hardhat version are you using?

This issue was just fixed in v2.8.2 of this plugin.

Works great now, thanks!


fix flaky test

When building a python3.10 CI env, the build of this package failed one of the tests:

ERROR: test_general_signal (test.FunctionalTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/build/sh-1.14.2/test.py", line 1546, in test_general_signal
    p = python(py.name, _out=agg, _tee=True)
  File "/build/sh-1.14.2/sh.py", line 1566, in __call__
    return RunningCommand(cmd, call_args, stdin, stdout, stderr)
  File "/build/sh-1.14.2/sh.py", line 822, in __init__
    self.wait()
  File "/build/sh-1.14.2/sh.py", line 879, in wait
    self.handle_command_exit_code(exit_code)
  File "/build/sh-1.14.2/sh.py", line 905, in handle_command_exit_code
    raise exc
sh.ErrorReturnCode_1:

  RAN: /nix/store/19pr23xsafq6psd8jpa6fcjbz8j0si6i-python3-3.10.0/bin/python3.10 /build/tmp83hhw5f5

  STDOUT:
0
1
2
3

  STDERR:
Traceback (most recent call last):
  File "/build/tmp83hhw5f5", line 14, in <module>
    print(i)
  File "/build/tmp83hhw5f5", line 8, in sig_handler
    print(10)
RuntimeError: reentrant call inside <_io.BufferedWriter name='<stdout>'>

----------------------------------------------------------------------
Ran 171 tests in 48.500s

FAILED (errors=1, skipped=3)
Test failed: <unittest.runner.TextTestResult run=171 errors=1 failures=0>
error: Test failed: <unittest.runner.TextTestResult run=171 errors=1 failures=0>

@rmcgibbo figured out in this comment that this test is probably wrong (when looking at this bug report: https://bugs.python.org/issue24283 ). This removes the offending line and relies on the exit(0) to notify the correct handling of the signal.
PLease let me know if you want this to go into a different branch

I agree that the test is wrong, in the sense that printing in a signal handler is not supported.
However, the fix also removes the intent of the test case because it no longer tests that the body of the signal handler is executed. I don't have any ideas how to fix that off the top of my head, but  I would prefer if we can find a solution before merging this.

I don't have any ideas how to fix that off the top of my head, but I would prefer if we can find a solution before merging this.

Would 29edf3f be sufficient? (let the body of the signal handler update the internal state and not exit out afterwards)


TypeError: string.replace is not a function

Do you want to request a feature or report a bug?
Bug; updating from 0.1.40 to 15.0.2.
What is the current behavior?
Running jest gives me:
TypeError: string.replace is not a function
    at string (C:\xampp\htdocs\outlandish\kasia\node_modules\jest-util\build\index.js:44:19)
    at p (C:\xampp\htdocs\outlandish\kasia\node_modules\jest-cli\build\SearchSource.js:63:26)
    at new SearchSource (C:\xampp\htdocs\outlandish\kasia\node_modules\jest-cli\build\SearchSource.js:97:34)
    at C:\xampp\htdocs\outlandish\kasia\node_modules\jest-cli\build\jest.js:139:20
    at process._tickCallback (node.js:412:9)

If the current behavior is a bug, please provide the steps to reproduce and if possible a minimal repository on GitHub that we can npm install and npm test.
Not sure what the problem is and therefore am not sure I could reliably reproduce it.
Run Jest again with --debug and provide the full configuration it prints. Please mention your node and npm version and operating system.
Node: 5.9.1
npm: 3.8.3
jest version = 15.0.2
test framework = jasmine2
config = {
  "automock": true,
  "verbose": true,
  "testRegex": [
    "/test/.*\\.js$"
  ],
  "unmockedModulePathPatterns": [
    "C:\\\\xampp\\\\htdocs\\\\outlandish\\\\kasia\\\\node_modules\\\\react",
    "C:\\\\xampp\\\\htdocs\\\\outlandish\\\\kasia\\\\node_modules\\\\react-dom",
    "C:\\\\xampp\\\\htdocs\\\\outlandish\\\\kasia\\\\node_modules\\\\react-addons-test-utils",
    "C:\\\\xampp\\\\htdocs\\\\outlandish\\\\kasia\\\\node_modules\\\\enzyme",
    "C:\\\\xampp\\\\htdocs\\\\outlandish\\\\kasia\\\\node_modules\\\\lodash"
  ],
  "testPathIgnorePatterns": [
    "\\\\node_modules\\\\",
    "\\\\fixtures\\\\",
    "\\\\components\\\\"
  ],
  "rootDir": "C:\\xampp\\htdocs\\outlandish\\kasia",
  "name": "C:-xampp-htdocs-outlandish-kasia",
  "setupFiles": [
    "C:\\xampp\\htdocs\\outlandish\\kasia\\node_modules\\babel-polyfill\\lib\\index.js"
  ],
  "testRunner": "C:\\xampp\\htdocs\\outlandish\\kasia\\node_modules\\jest-jasmine2\\build\\index.js",
  "scriptPreprocessor": "C:\\xampp\\htdocs\\outlandish\\kasia\\node_modules\\babel-jest\\src\\index.js",
  "usesBabelJest": true,
  "preprocessorIgnorePatterns": [
    "\\\\node_modules\\\\"
  ],
  "bail": false,
  "browser": false,
  "cacheDirectory": "C:\\Users\\SAMIAM~1\\AppData\\Local\\Temp\\jest",
  "colors": false,
  "coveragePathIgnorePatterns": [
    "\\\\node_modules\\\\"
  ],
  "coverageReporters": [
    "json",
    "text",
    "lcov",
    "clover"
  ],
  "globals": {},
  "haste": {
    "providesModuleNodeModules": []
  },
  "mocksPattern": "__mocks__",
  "moduleDirectories": [
    "node_modules"
  ],
  "moduleFileExtensions": [
    "js",
    "json",
    "node"
  ],
  "moduleNameMapper": {},
  "modulePathIgnorePatterns": [],
  "noStackTrace": false,
  "notify": false,
  "preset": null,
  "resetModules": false,
  "testEnvironment": "jest-environment-jsdom",
  "testPathDirs": [
    "C:\\xampp\\htdocs\\outlandish\\kasia"
  ],
  "testURL": "about:blank",
  "timers": "real",
  "useStderr": false,
  "watch": false,
  "cache": true,
  "watchman": true,
  "testcheckOptions": {
    "times": 100,
    "maxSize": 200
  }
}

Wait, are you really upgrading from 0.1.40 or do you mean 14.0?

@cpojer 0.1.40 :-)

Woah! Can you create a minimal repro and put it up on GitHub? I'm going to fix some Windows issues in Jest today and could take a look then.

@cpojer Bit tight for time at the moment, but I will try. Would a minimal repro consist of just a no-op test with the config that I am using?

Oops, wrong button!

yeah, as long as it shows the same issue on Windows and I can easily "npm install" and "npm test" it.

@cpojer Ok that was much quicker than I expected! Here ya go.

Aha! I found the problem. I was passing an array to the testRegex option. :disappointed:
Would a PR for checking the type of this option be desirable?

Yeah, adding validation to this is definitely nice – appreciate any PRs you could send :)
Closing this issue because it isn't a bug.

@cpojer Great, I'll see what I can cook up. Thanks for your swift responses!

but.. they are JavaScript responses, not swift.

dateFormatChanger = dateFormatChanger.replace(/d|D/, "DD");
I still get error
TypeError: dateFormatChanger.replace is not a function


Lexical scoping bug with loops when variable declaration occurs before assignment

There appears to be a problem with lexical scoping in relation to loop blocks.  Consider the following program:
def calculate rows
    var sum = 0
    for var row: rows
        var largest, smallest
        say "begin loop: largest = $largest, smallest = $smallest"
        for var number: row
            if largest == nil || number > largest
                largest = number
            end
            if smallest == nil || number < smallest
                smallest = number
            end
        end
        say "end loop: largest = $largest, smallest = $smallest"
        sum += largest - smallest
    end
    return sum
end

say "result: ${calculate { { 5, 1, 9, 5}, {7, 5, 3}, {2, 4, 6, 8} }}" # returns 24, but should be 18

At the beginning of the first iteration of the outer loop, largest and smallest are both nil.  With each iteration of the outer loop, I would expect largest and smallest to be nil.  However, what happens instead is that with subsequent iterations of the loop, they retain their values from the previous iteration.  I can work around this by assigning nil to these variables when they are declared, but it doesn't seem like I should have to do this.

Verified with test program:
for: range 2
    var a
    say a
    a = 1
end

Should output two nils, but outputs nil then 1.
Likely won't fix this for some time, I don't have much free time and this one seems minor.
Thank you for reporting though, it's very helpful -- I will keep this ticket open.

No worries. It's an easy one to work around.
On Sun, 11 Mar 2018, 19:20 Sean<EMAIL_ADDRESS>wrote:

Verified with test program:
for: range 2
var a
say a
a = 1
end
Should output two nils, but outputs nil then 1.
Likely won't fix this for some time, I don't have much free time and this
one seems minor.
Thank you for reporting though, it's very helpful -- I will keep this
ticket open.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/voidqk/sink/issues/47#issuecomment-372141341, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAScYIIqmLvvT1VvTs9myt6FQ8DLeZFfks5tdXkNgaJpZM4SlzJc
.

https://github.com/voidqk/sink/commit/30bbfd34dcbe86efa0df9de431fa5b989231a7ad fixes this issue
However, I haven't created new binaries, so the problem will persist in them until beta 3 is released (unknown time).

FYI @pmarflee just released beta3 binaries


fix 'request ip return 500 no address allocated' when pod is created by ephemeral VMI

What type of this PR

Bug fixes

Fix: pod would not get neither */allocated nor */routed Annotations, when it was created by ephemeral VMI which not managed by a VM
Fix: kube-ovn-controller crashed when VM's Template without an Annotations;

Which issue(s) this PR fixes:
Fixes #1557

@lrh3321 can you resolve the conflicts

there is no conflicts now

已回合release-1.9 和release-1.10 分支

已回合release-1.9 和release-1.10 分支

Great, I'm running into this one when adding Fedora 36 support for Kubespray project 😄
Any idea when this will be released ?

@floryut we will release it this week soon

Good job guys, even if it's not needed I can confirm that this is now fixed 🥳


Display function param type details instead of just type name.

/**
 * @typedef Options
 * @property {number} number
 */

/**
 * @param {Options} options
 */
function getNum(options) {
  return options.number;
}

When I hover over options, I want to see Options has a property which named number and type number.
以前的版本, 当光标悬停在参数 options 上时, 会显示 Options 内具体的内容. 但是现在仅仅显示一个名字.
希望能该功能回退到以前的版本, 或者作为一个编辑器选项.

Related to https://github.com/Microsoft/TypeScript/issues/14662
Showing only the alias is by design here as often the full type signature can be overwhelming and is often not useful


Custom window frame support extended to built-in window functions

Which issue does this PR close?
Closes #4076.
Rationale for this change
With this change, we can now run built-in window functions with custom window frames such as queries in the form
SELECT
     FIRST_VALUE(c4) OVER(ORDER BY c9) as first_value1,
     FIRST_VALUE(c4) OVER(ORDER BY c9) as first_value2,
     LAST_VALUE(c4) OVER(ORDER BY c9) as last_value1,
     LAST_VALUE(c4) OVER(ORDER BY c9) as last_value2
     FROM aggregate_test_100
     ORDER BY c9
     LIMIT 5

What changes are included in this PR?

We added range calculation support for Builtin-window functions FIRST_VALUE, LAST_VALUE, NTH_VALUE (For other window functions what is inside window frame isn’t important https://www.postgresql.org/docs/current/functions-window.html). To be able to use range calculation code for both window functions and aggregate functions, range calculation code is moved from aggregate.rs to window_expr.rs.
Added tests for Built-in Window Functions

Are there any user-facing changes?
N.A

I again ran out of time today but it is on my list for first thing tomorrow

I'll plan to merge this PR tomorrow unless there are other comments raised.

Again, really nice work @mustafasrepo  and @ozankabak -- thank you very much


ERROR 1: on geopandas import in version 8

ERROR 1: PROJ: proj_create_from_database: Open of /opt/conda/share/proj failed
is thrown on import geopandas in a fresh GDS_ENV version 8.0.
This does not seem to be fatal, as subsequent geopandas calls seem to work fine.

Sorry I never replied to this. Yes, I've noticed this issues too but I haven't had any tangible effect on runtime so I did not pay much attention. I'm hoping with 9.0 this gets automatically resolved. Closing for now but happy to engage further if anything comes up.


Remove LinkHandler mentions from migration guide

Description
Since Jmix 1.4 it was decided to remove LinkHandler functionality.
See https://github.com/jmix-framework/jmix/issues/963

I don't see any mentions of LinkHandler in the current docs.


fix(writer): Use final size if it's not an estimation

This avoids running into the "flashstate percentage above 100%" error again.
Change-Type: patch
See also: #1572

Not sure how this particular error popped up again – I thought we'd dealt with this before?

Are you sure this isn't breaking other image formats? As a recap: etcher-image-write potentially takes an image stream that represents the compressed version of an image. The module also expects the size you pass to it to be the size of the compressed stream, since that's what its going to consume.
The writer then pipes the compressed stream through a progress transform stream, and then applies the image transform stream that takes care of the decompression. This design decision is to workaround the fact that for some image types, we have no way to determine the final uncompressed size with certainty. Despite this, we always know the compressed size, so it means we can always show an accurate progress bar.
So again, I'm pretty sure that the value we need to pass to etcher-image-write is the size of the compressed package, and then pass a transform stream that is able to decompress it.
As far as I can see on the code, the UDIF image stream handler passes a stream that extracts the file directly, which kinda breaks our design (I didn't notice this before). We have two solutions:

Make the UDIF image stream handler return a stream of the compressed package, set the original and final sizes accordingly, and also pass a transform stream that is able to decompress it

Keep everything as it is, but set both the original and final value to the final value, since decompression is already being done on the UDIF module (of course this only applies if we know that the uncompressed size we got is absolutely correct, which I think its the case)

To be honest, I'm surprised our test cases didn't catch this. Can we fix it somehow? I believe the error would have been detected as incorrect progress percentages while flashing the DMGs. If so, can we extend the DMGs test to ensure we get sane progress percentages?

I wonder if the test DMGs are so small, that the difference between the compressed and uncompressed file sizes is too small to register as > 100% ? *shrug*
@jviotti Rather than always calculating the progress based on the size of the compressed image, and the decompression-stream-progress; if we know for definite what the final uncompressed image size is, could we have an alternative progress-calculation scheme based on the size of the uncompressed image, and the bytes-actually-written-to-disk stream? This would prevent inaccurate progress readings when the decompression speed is much faster than the disk-write speed, and it would also prevent the "write speed" slowing down massively towards the end for those images that have a lot of low-compressible data at the start, followed by a huge amount of empty space (high-compressible data) at the end, which I believe is what's occurring in #1171 and #638 , regardless of the actual compression method being used.
That's kinda hard to explain in words, so maybe this picture helps?

@lurch Yeah, I'm happy to make that change, which should be now easier to do with pipage.

@jviotti @lurch I have made this a DMG specific workaround for now, so that we can get rid of the errors, and test with it – and I'd do the proper fix as a follow up to this; what do you think?

@jhermsmeier Let's do the following instead, which is localized in the DMG handler:
diff --git a/lib/image-stream/handlers.js b/lib/image-stream/handlers.js
index 62069f89..095a24ee 100644
--- a/lib/image-stream/handlers.js
+++ b/lib/image-stream/handlers.js
@@ -157,7 +157,7 @@ module.exports = {
         extension: fileExtensions.getLastFileExtension(imagePath),
         stream: udif.createReadStream(imagePath),
         size: {
-          original: options.size,
+          original: size,
           final: {
             estimation: false,
             value: size

So basically since the stream node-udif gives us is already the one with uncompressed data, we can tell Etcher that the source size is the uncompressed size.

@jviotti alright, done.