Display WorkflowExecution stats on Workflow listing page

See https://projects.invisionapp.com/d/main#/console/19217882/405979089/preview

@rushtehrani Are these stats supposed to be live?
Also, are any of these stats going to be stored in database, or do we need to do a query each time?

@Vafilor

Are these stats supposed to be live?
No, but maybe we can poll for stats every so often.

Also, are any of these stats going to be stored in database, or do we need to do a query each time?
I think we need to cache/store them but deferring to the implementer to make that decision after research.

@rushtehrani
Polling sounds good.
Regarding cache/store, another possibility is to store the data on the workflow template itself as a label.
Might be more efficient to just get it from the DB, but just throwing up some ideas if we want to keep more to k8s.

Regarding cache/store, another possibility is to store the data on the workflow template itself as a label.

I didn't think of that, this might be the best way actually. Wonder if it makes sense to use Annotations instead if we're not querying objects based on this data?

I think it's better to assume we will query for it, it provides us more capability.
If we really want, we can add it to both places.
In addition to your example, we might want

Sort by least/most failed, # executions, etc.

Overview of decided implementation:
We are using a database for storing information.

Generating statistics is easier than querying kubernetes workflow information
We can store records of workflows that are gone from k8s
-- Argo garbage collection can delete workflows
-- CronWorkflows have a limit for how many error/successful workflows they keep around
We don't have to worry about concurrency or race conditions with data updates / inserts / queries.
-- If we were to store the information in k8s via annotation or label, these might be issues.

We will push information to the database instead of polling.

Polling requires running a process every so often. So we'd need to set up a cron
We'd also be relying on the time-frame being small enough to capture any workflow execution

We will attempt to use argo "exit handlers" to push information.

These are going to run after the workflow completes or errors out
Adding a side-car container would be too granular, we are focusing on workflow outcomes

Regarding deletion of workflows, either by garbage collection or cron workflow settings:
We're going to test out an archive functionality, from argo.

For now, we may just have an endpoint to report how many are archived.
We can iterate on what information to provide to the user regarding the archived pieces.

Issues so far:

We should be using internal service names for the API call. T
When the call completes, the container continues running. On success we should exit with code 0 and on failure a code other than 0.

In reference to issue 1:

The internal service name is onepanel-core.onepanel.svc.cluster.local and the port is 80. This will be consistently the same in Kubernetes as long as we don't change the service name or namespace.
We may also have to set a NetworkPolicy in onepanel to allow access from other namespaces to the onepanel-core pod.

Note: Test on Azure


优化了git_projects脚本，支持参数传入扫描单个/多个目标，单条/多条指定规则，输出格式，输出方式，扫描完后是否删除项目

Pull Request Test Coverage Report for Build 410

2 of 2 (100.0%) changed or added relevant lines in 1 file are covered.
2 unchanged lines in 1 file lost coverage.
Overall coverage decreased (-0.02%) to 42.337%

Files with Coverage Reduction
New Missed Lines
%

cobra/log.py
2
44.2%

Totals

Change from base Build 409:
-0.02%

Covered Lines:
1558

Relevant Lines:
3680

💛  - Coveralls

@BlBana build failed


Fixes entity.headMeta.pagedTitle is not a function

Fixes https://github.com/frontity/saturn-theme/issues/55

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


Feature/manifest mbdb

Manifest.mbdb parsing ready, based off https://github.com/Anarky/mbdbEditor/blob/master/parse_manifest.py
It does work well for iOS 7.1.2 backup, so I guess this is ok for anything >=5.0 && <10.0
Solves https://github.com/richinfante/iphonebackuptools/issues/11

Tested on iOS 6.1.6, iOS 9.2.1, iOS 9.3.5 backup samples, works well!


[LazyImage] data_uri_thumbnail filename

In the documentation we can see a snippet of code, that explain how to use data_uri_thumbnail, but this one is wrong, because internally the https://github.com/symfony/ux-lazy-image/blob/main/BlurHash/BlurHash.php use the file_get_content function that is relative to this file.
That's why in Twig we need to write the full path, that is not convenient.
<img
    src="{{ data_uri_thumbnail('public/image/large.png', 100, 75) }}"
    {{ stimulus_controller('symfony/ux-lazy-image/lazy-image') }}
    data-hd-src="{{ asset('image/large.png') }}"

    {# Using BlurHash, the size is required #}
    width="200"
    height="150"
/>

For this case, there is 2 option:

We can do on our side, create a Twig global like below, and use it in Twig, maybe update the doc in this case

    globals:
        projectDir: '%kernel.project_dir%'

Use the Project dir at start point to find the file
I just miss something ?

I also experienced the same error. I think this has to be done internally so using it with asset() would be easier


automatic version à la python-versioneer

We are using https://github.com/warner/python-versioneer to version our tools, and it's been working very well so far. Now we are looking into using poetry, but would like to keep a versioneer like behavior that doesn't seem to be possible at this time.
Basically, versioneer automatically generates the package version number based on the current git commits and tags of the package repository. It uses the information from git describe to generate the version, and apply a few changes to it to be compatible with python versioning scheme and include some useful info.
For example, in our repository, we have:
> git describe
v0.11.0-136-g2f043654
> mytool --version
0.11.0+136.g2f043654.dirty

and python setup.py sdist generates a package called mytool-0.11.0+136.g2f043654.dirty.tar.gz.
Any chance we can make that happen in poetry?

This is whats holding us back from switching to Poetry as well. We love versioneer!

I do something similar with setuptools and some homegrown code to programatically determine the version (similar to versioneer).  Having the ability to keep such functionality would be ideal.

Related requests: https://github.com/sdispater/poetry/issues/185 https://github.com/sdispater/poetry/issues/140

Let's close this in favor of #140 + #672 (demo discussion) so that it would be 1 single place with info, not 3 issues asking the same :)


Trying to download a large collection from Luscious

Ripme version: v1.7.92
Java version:
Operating system: Windows 10 pro

Exact URL you were trying to rip when the problem occurred: https://members.luscious.net/albums/kantai-collection_365738/
Please include any additional information about how to reproduce the problem:

The kentaicollection I was trying to download stops at around 3k and it's total size is rather large at around 14k. I have enough space on my drive for it.

You might solve this by increasing the maximum size of downloaded files per album. The default is set to 104857600 bytes (100 MB).
RipMe config: %APPDATA%..\Local\ripme\rip.properties
# Maximum size of downloaded files in bytes (required)
download.max_size = 104857600

Thanks so much for getting back to me about this! I've just been dealing with that limit up until now lol! I'll give it a try once I have some free time. I'll leave this case open until then. I just want to make sure I don't have any other questions pop up  until then! Thanks again!


Add Percentile Optimizer

Percentile Optimizer is a commonly used calibration method aimed at activation calibration.
We need to make QModuleMixin support the optimizer for activation first

Optimizers are only for evaluating the scale and zeropoint during the quantization of weights.

@dacorvo After studying the code for Calibration, I finally understand your meaning, about the role of the Optimizer and how the calibration is done. However, I still have some other questions about how to calibrate the output of ops. I will start a new issue to describe it.

To calibrate the activations quanto uses absmax + momentum. Other algorithms can be applied. In other frameworks the object doing this is typically called an Observer.

Just to be clear there is no abstraction in quanto (yet) to support that. It could be added if it allowed to implement an algorithm with results outperforming absmax + momentum on some models. I personally think that the key is not the calibration itself, but rather the smoothing of activations (i.e. rebalance the activation scales to the weights of the next Linear).

Just to be clear there is no abstraction in quanto (yet) to support that. It could be added if it allowed to implement an algorithm with results outperforming absmax + momentum on some models. I personally think that the key is not the calibration itself, but rather the smoothing of activations (i.e. rebalance the activation scales to the weights of the next Linear).

@dacorvo I agree with your point that the key is to smoothing of activations and I have read a paper that proposed a method named AWQ to try smoothing the activation and merge the smooth function to the weight in the before/next layer.
However based on my experience, when quantizing convolution based networks, what we are doing is to find outliers and surpass them, that's why we need optimizers like MSE, Percentile, etc. Here is the slides from NVIDIA that may help: https://on-demand.gputechconf.com/gtc/2017/presentation/s7310-8-bit-inference-with-tensorrt.pdf

When quantizing LLMs, we should protect the outliers(https://timdettmers.com/2022/08/17/llm-int8-and-emergent-features/), but when quantizing non-LLMs like convolution networks, we need to find outliers and remove/suppress them.


Should pasting newline with auto-indent move the cursor + inconsistencies when pasting newlines

Issue Type: Bug

Have an indent block, eg:

() => {

}

Paste something with a trailing newline
Expected: The newline is indented and your cursor starts at the right indent position

() => {
	() => {
		a
	}
	<- Cursor is here
}

Actual: The newline is indented but your cursor stays at the beginning of the line

() => {
	() => {
		a
	}
<- Cursor is here <indent after>
}

Also when pasting content with a trailing newline, only pastes with 2+ lines (that isn't already correctly indented) end up indenting the last newline.
() => {
	() => {}
<- Cursor is here, no indent
}

() => {
	() => {

	}
<- Cursor is here <indent after>
}

() => {
	() => {

	}
<- Cursor is here, no indent (as pasted content already had correct indent)
}

VS Code version: Code 1.40.2 (f359dd69833dd8800b54d458f6d37ab7c78df520, 2019-11-25T14:54:45.096Z)
OS version: Windows_NT x64 10.0.19033

Auto Indent on Paste is based on indentation rules, which are not sound. You can currently disable this particular auto indent feature by setting editor.autoIndent: advanced ./

@rebornix I can try and work on it.
What do you think is the more consistent way?

Don't indent trailing newlines
Always indent trailing newlines


Use /_ah/push-handlers/ prefix for the push endpoint.

/_ah/push-handlers is now protected as admin-required for public, but it's accessible from the Cloud Pub/Sub push service.

@eschapira FYI

@lesv thanks. Added a test for making sure that the handler is protected from the internet. Although the test should fail for now.

I was actually meaning you should include some security stuff in web.xml.  The test looks both correct and pointless - as you pointed out. If you run it locally, it's not actually testing things, and how do you run it remotely?

I'm talking about https://cloud.google.com/appengine/docs/java/config/webxml#Secure_URLs

The travis script deploys the app and it will access to the appspot URL.

The test should fail because the protection is not implemented yet.

Seems odd to L G T M something that fails.  Are you asking for that?

Yes! I will merge once the test passes :)
BTW, now the handler is returning 411. Maybe we should add Content-Length header. Let me try it first.

Weird, the same test returns 404 for Python:
https://travis-ci.org/GoogleCloudPlatform/cloud-pubsub-samples-python/builds/119391085#L271
I'll look into it tomorrow.

Great, now the test fails as expected :)
Failed tests:   testPushHandlerIsProtected(com.google.cloud.pubsub.client.demos.appengine.IntegrationTest): expected:<302> but was:<400>

Now the servlet returns SC_BAD_REQUEST == 400:
https://github.com/GoogleCloudPlatform/cloud-pubsub-samples-java/blob/master/appengine-push/src/main/java/com/google/cloud/pubsub/client/demos/appengine/servlet/ReceiveMessageServlet.java#L49

Cool - presumably you wish to do something before checking in to fix travis?

Restarting the build

Alright, this is now green :) @lesv OK to merge?

LGTM after you fix travis version (if required)

Thanks, merging


support for mouse hover / change layout

Hi Michael,
do you know if it's possible to add an animation when changing layouts?
Regards
John Pope

like this https://github.com/johndpope/ios-flexboxkit

got the animation working https://youtu.be/QjAXLGgmDiE
This was a rebound of https://dribbble.com/shots/2091583-Prism-Homescreen


About pop-up window stacking problem

When I set the contentFillsEntireScreen of the BottomPopup popup to true, and then another BottomPopup pops up under this popup, the contentFillsEntireScreen of this popup is false, and the height is set to only occupy 50% of the screen, then the popup loaded for the first time will also be stacked to the back according to 50% of the height and become invisible, which is very strange
I expect that the first popup will not be stacked, but will remain unchanged like a normal window, and the second popup will pop up normally
I saw this issue discussed in #98. If I understand it correctly, can I switch to this branch patch-2.6.0 to implement it through zIndex?
If so, can you tell me how to use it? Because I see that the document has not been updated yet, I don’t quite understand how to use it
I would appreciate any help in resolving this issue.

Hey, could you please upload a video showing the problem? Thanks in advance.

Hey, could you please upload a video showing the problem? Thanks in advance.

This is a simple example I made with your demo
https://github.com/Mijick/PopupView/assets/45414993/c8e422b9-e67f-4bdd-aeae-db902d8bcf9a

Hmmm, I see. Unfortunately this is an expected behaviour of this library (the previous popup is being "stacked" a.k.a. should be hidden behind the active one). As a temporary solution I can propose you to use our other library, NavigationView and declare that full-screen popup as a view that should be "pushed" with a "vertical slide" animation.
Next week we're going to start developing version 3.0.0 of this library, so I'll try to include your case here.
Sorry for the inconvenience and have a good day,
Tomasz

Ok thanks, I'll try to find out first to see


python311Packages.pyxbe: 1.0.2 -> 1.0.3

Diff: https://github.com/mborgerson/pyxbe/compare/refs/tags/v1.0.2...v1.0.3
Description of changes

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 244134 run on x86_64-linux 1

20 packages built:

python310Packages.angr
python310Packages.angr.dist
python310Packages.angrcli
python310Packages.angrcli.dist
python310Packages.angrop
python310Packages.angrop.dist
python310Packages.cle
python310Packages.cle.dist
python310Packages.pyxbe
python310Packages.pyxbe.dist
python311Packages.angr
python311Packages.angr.dist
python311Packages.angrcli
python311Packages.angrcli.dist
python311Packages.angrop
python311Packages.angrop.dist
python311Packages.cle
python311Packages.cle.dist
python311Packages.pyxbe
python311Packages.pyxbe.dist


Specific params route matcher results in generated client error (Advanced Routing)

Describe the bug
First time poster here and new to svelte, hopefully I did not miss anything crucial!
I just spend a pretty lengthy debugging session on the question of "Why is my button on:click event not working"?
<button on:click={() => alert('Button Clicked')}>My Troubleshoot Button</button>
I am using the Advanced Routing with the ParamsMatchers in my application.
If I create a parameter file with a specific name it will result in a TypeError for the generated client.
Hopefully there is an explanation for this. For now the workaround seems to be avoiding this specific filename ;)
Reproduction

Create a new application with sveltekit
Add a folder src/params
Create an empty file "cookiepolicy.ts"
Add a default match function (ParamMatcher)

import type { ParamMatcher } from '@sveltejs/kit';

export const match: ParamMatcher = (param) => {
	for (let i = 0; i < ['cookie-policy', 'cookies'].length; i++) {
		if (['cookie-policy', 'cookies'][i] === param) {
			return true;
		}
	}
	return false;
}

Start the application and look into the browser console

Logs
Browser console error:

Uncaught (in promise) TypeError: error loading dynamically imported module:
http://localhost:5173/@fs/home/user/ < redacted > /my-app-button-clicking-troubleshooting/.svelte-kit/generated/client/app.js

System Info
System:
    OS: Linux 6.7 Arch Linux
    CPU: (16) x64 AMD
    Memory: 41.73 GB / 62.72 GB
    Container: Yes
    Shell: 5.9 - /usr/bin/zsh
  Binaries:
    Node: 21.6.1 - /usr/bin/node
    Yarn: 1.22.21 - /usr/bin/yarn
    npm: 10.4.0 - /usr/bin/npm
  Browsers:
    Firefox: 122.0.1 (64-bit)

Severity
annoyance
Additional Information
No response

As of writing this issue, I have just discovered that a browser extension is blocking the "cookiepolicy" page.
If you have the same issue check your browser ;)


fix prunable true

What are you trying to accomplish with this PR?
...
prunable is hardcoded as true
How is this accomplished?
...check if nil first
What could go wrong?
...
Deletes all resources other than the one deploying

We've decided to make Custom Resource pruning opt-in only. The change you're proposing would  make CR pruning opt-out not opt-in. I'm gong to close this PR but if there is more you'd like to discuss feel free to re-open/comment.


Not all PDB files are included in the distribution

This is to note an issue with PDB files on Windows.
With the switch to use gn, PDB files now have short file names like base_cc.pdb and stub_cc.pdb, and since the generated .lib files include object file from multiple libraries, one generated .lib may include multiple PDB files with same names.
In order to make PDB files work with debugger, they have to be placed within the same directory with the corresponding .lib file, so PDB files with same names will be overwritten. And because paths to PDB files are hardcoded in object files, we can not rename them after they are generated.
In the end certain PDB files are missing when building Electron, it might affected debugging, and triggers lots of warnings in the linking stage.
One way to fix this is to make gn include paths in the generated PDB file name, so base_cc.pdb becomes ui_base_base_cc.pdb and base_base_cc.pdb. However I can't find a way to do that, in the toolchain configuration only expansions can be used in variables, I don't know how to dynamically change the name, anyone interested in solving this can take a look at:
https://cs.chromium.org/chromium/src/build/toolchain/win/BUILD.gn?type=cs$&l=155

@juturu The PDB files are in their own sub directories so adding them manually to debugger would be extremely tedious, and I'm not sure if even that's possible.
Or you can build libcc on your own machine and then build electron with it, the paths to PDBs are hardcoded in object files so debugger should be able to find the correct PDB files. (I haven't tried this though)

Or you can build libcc on your own machine and then build electron with it, the paths to PDBs are hardcoded in object files so debugger should be able to find the correct PDB files. (I haven't tried this though)

It should work. I see no linking warnings when I build Electron with locally built libcc.

I've figured out a way to prefix the PDB names with a path as suggested by @zcbenz (obj/ui/base/base_cc.pdb -> obj/ui/base/obj_ui_base_base_cc.pdb), this is done before invoking the compiler. I've still got a bunch of testing to do though.

This discussion is apparently only about the static library (aka release) build.
It is known that in that build we don't use the .lib files produced by gn targets, but create our own by assembling various objects files, which are not necessarily the same set as the ones which go into the regular gn target .lib files. The discussed .pdb files which you're attempting to distribute correspond to the regular gn targets, not our .libs.
I therefore see it as sub-optimal (although it might work) to try to collect these PDBs and use them. Wouldn't it be better to do something along the lines mentioned in this SO response? I.e. include the debugging information in the object files and that way have it also embedded in the .libs we create for Electron? Then the symbols would presumably be transferred to node.dll.pdb produced at link time and no extra PDBs would be necessary.

I've opened PR #338 to patch the build toolchain to rename PDBs. I like the sound of @alespergl suggestion, however the docs for /Z7 do mention this:

For distributors of third-party libraries, there is an advantage to not having a .pdb file. However, the .obj files for the precompiled headers are necessary during the link phase, and debugging. If there is only type information (and no code) in the .pch object files, you will also have to compile with /Yl (Inject PCH Reference for Debug Library).

I guess there's only one way to find out if it'll work or not :)

Hey there,
It's been a long time coming but the libchromiumcontent repository is being archived as it is no longer used in the Electron build system (🎉 this is a good thing).
If your issue is still relevant to Electron in it's current build system (please verify first) then you should probably raise a similar issue on electron/electron.
Thanks 😄


231 (230.3) Emerging Release 🌤 ⛱ 🏎 💨

Critical Changes
Changes
Issues Closed
New Metadata
Deleted Metadata
Definition of Done
Refer to Definition of Done to see any additional details for the items below:

[ ] Any net new LWC work has JEST test coverage 50% or above
[ ] Default Sa11y tests pass for all LWC components
[ ] 🔒 Secure both Front-end (LWC) & back-end (Apex) as necessary
[ ] 🔑 Grant users access in Permission Sets (Object, Field, Apex Class) as necessary
[ ] Link the pull request and work item by PR comment and Chatter post respectively, e.g. GUS: W-0000000: Work Name
[ ] Make sure that ACs are updated (if any gaps)
[ ] All acceptance criteria have been met

[ ] Developer
[ ] Code Reviewer

[ ] Pull Request contains draft release notes
[ ] Labels, help text, and customer facing messages are reviewed by Docs
[ ] QE story level testing completed

WI is closed.  There were no changes in feature/231


False positives in relation to overloaded methods

When some class, which is forbidden, is used in an overloading of a method, that is called in the project, forbidden-apis incorrectly reports this as a violation. For example, you could check out this commit: https://github.com/metamx/druid/commit/f670482b21aa3c05c7444a0ee523321ad7a6f6dd, then uncomment those two lines: https://github.com/metamx/druid/blob/f670482b21aa3c05c7444a0ee523321ad7a6f6dd/codestyle/druid-forbidden-apis.txt#L4-L5, and try mvn clean compile test-compile from the root project directory.

I haven't looked at the commit/repository yet, but as far as I remember, this is wanted behaviour:
If you override a method thats forbidden, we treat that as a forbidden call if you call the overridden method, because you are just implementing the interface/API in a different way, but code is still calling a signature that's forbidden. With virtual methods the target of the call is not 100% clear at compile time, so this is IMHO correct behaviour. You can debate about it, but back in 2012 when we implemented forbiddenapis for the first time, this was a decission we took.
Could you give a short example of the setup?

It's not about method override, it's about overload

The two lines in your forbiddenapis signatures forbid 2 classes. This means that usage of this class anywhere in your code is forbidden:

if its a method parameter
if you subclass / implement that interface

In the given case (the Suppliers which are functional interfaces), I'd suggest to just forbid the methods.

In any case, I will checkout your project later and try to figure out what's exactly going on. Currently I am just guessing! I will come back latest on the weekend as I am on travel at the moment.

OK, I analyzed the problem:
You are using Guava 17 to compile the project. ByteSource unfortunately still implements InputSupplier (which it no longer does in Guava 18). Because of the described setup above, the type ByteSource is then also disallowed to be used in code.
The anonymous class declares a constructor taking the ByteSource from the outer method. And therefor it complains, as ByteSource implements the forbidden interface. This is a corner case where it is questionable: Maybe we should only check superclasses/interfaces when calling methods not when using types. But I have no idea about side effects and other implications here.
One workaround would be to instead use a Java 8 lambda, but that's just a hack. The issue here is that Guava is still using a deprecated class in its own code.
The other workaround would be to just disallow the specific (functional) method instead of the whole class.

A lambda would have same issue, as the lambda$XY method would also take ByteSource. So my only suggestion is to only disallow the method not the whole functional interface.

BTW: When building your project on Windows (which I do), CheckStyle complains about missing line endings at end of files. Maybe an issue with windows CRLF vs. LF. I am using LF in my Git config, no CRLF. I disabled CheckStyle when building, with phase=none.

@uschindler thanks, forbidding interface methods looks like the most reasonable solution.


Fix NPE in AbstractStreamMessageDuplicator

Fix NPE in AbstractStreamMessageDuplicator
Motivation:
StreamMessageDuplicator feed null to its Subscriber. (related with #1446)
Modifications:

Assign the elements to a local variable in the method get(index) in SignalQueue so that the reference is not changed during the get operation
Add some assert statements which produce useful information for debugging purpose

Result:

Fewer bugs

Thanks, @minwoox !


testing bot

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@37bc6ba). Click here to learn what that means.
The diff coverage is 100%.

@@            Coverage Diff            @@
##             master      #24   +/-   ##
=========================================
  Coverage          ?   58.82%
=========================================
  Files             ?        3
  Lines             ?       34
  Branches          ?        1
=========================================
  Hits              ?       20
  Misses            ?       14
  Partials          ?        0

Impacted Files
Coverage Δ

src/index.ts
100% <100%> (ø)

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 37bc6ba...11a7d93. Read the comment docs.


AAE-21850 Skip branch name check for release PR

Checklist

Jira Reference (also in PR title):
README updated after adding/changing behaviour of an action
Proposed version increment for release:

[ ] Patch (bugfix)
[ ] Minor (new feature)
[ ] Major (breaking changes)

External PR link where changes has been tested:

Description

I'm starting to think that instead of adding so many exceptions to this list, since the "upstream" and "release" use cases are very specific to the single monorepo, maybe "whitelist-branches" should be used instead here, see doc at https://github.com/Alfresco/alfresco-build-tools?tab=readme-ov-file#enforce-pr-conventions
The only thing I'm not sure of is whether wildcards "upstream-" and "release-" would be handled correctly so that should be checked.
Overall I'd be in favor of keeping only "pr-*" in that line, that matches the generic dependabot use case (and was the original intent of this step).
WDYT please? cc @mauriziovitale @andrea-ligios


Unable to compress JPG - PNG working

Current behavior
Trying to compress a JPG, I always get the error: jpegoptim: invalid argument for option -d, --dest
It works with PNG files tho.
I'm using Mac OS Sonoma, and 0.0.10 version of DevToys
How to reproduce it (as minimally and precisely as possible)
Try to compress a JPG by drag and drop it on the area, in PNG/JPG Compressor tool, from Finder in Mac OS X Sonoma.
Expected behavior
The JPG to be compressed.
Screenshots

Workaround
No response
Affected platforms
macOS
Affected DevToys kind
DevToys (app with GUI)
DevToys Version
0.0.10
Relevant Assets/Logs
No response

Sorry, I posted this here instead of the MacOS version of DevToys. I'm closing it.


Using nodesExcludes of settings to filter nodes of non-local module

Sometimes we have to override existed node type with nodesExcludes for specific purpose. This requirement is not only for local nodes but non-local nodes.

Coverage decreased (-0.01%) to 87.532% when pulling 27eaa28ceb745a49c5ed1bff03cc07ada13c1935 on cfsghost:master into aafcfef3877e4b64f4edd853e9659af0a50fb79e on node-red:master.

Hi - please have a read of our contribution guide lines. We prefer to discuss features before PRs arrive.
In this instance, we specifically didn't exclude nodes provided by modules by their filename. Filenames are not unique and this could have unintended consequences.

Sorry about that, I will take time to read contribution guide lines.
Node-RED allow multiple node in one module, but there is no way to ignore one node. It will get big trouble on maintenance and development. Normally, we don't use nodesExcludes to filter node, once we use it that means something we must do for specific purpose.

I assume this is regarding the mongo issue you raised.
If you want your own mongo node you can use your own mongo node - just give it a different node type.
If there's an issue with the mongo node included in that particular package, please raise an issue and help improve it - https://github.com/ibmets/node-red-bluemix-nodes

I will commit code to them, it is common and important feature to create secure connection. Without it, Node-RED cannot access most of MongoDB instances on Bluemix. (AMQP has the same problem as well)
The problem is, i have to solve this problem before upstream merge my commits. Using different node type is not good solution, because it means we have many works to modify all of current flows on Node-RED then change it all back after upstream merged and released new code.


Add CI task to check for editorconfig compliance

Add CI task to check for editorconfig compliance

Yes please! The only thing is I don't see an editorconfig plugin for circleci so it seemed to me it will need to be hand rolled.

Going in a different direction with this


[DataFActory] Update

Generated from RestAPI PR: https://github.com/Azure/azure-rest-api-specs/pull/2056

Codecov Report

Merging #1656 into master will decrease coverage by 0.01%.
The diff coverage is 55.32%.

@@            Coverage Diff             @@
##           master    #1656      +/-   ##
==========================================
- Coverage   55.36%   55.35%   -0.02%
==========================================
  Files        4095     4188      +93
  Lines       98359    99521    +1162
==========================================
+ Hits        54459    55085     +626
- Misses      43900    44436     +536

Impacted Files
Coverage Δ

...ls/managed_integration_runtime_operation_result.py
45.45% <0%> (-4.55%)
:arrow_down:

...t/datafactory/models/integration_runtime_status.py
100% <100%> (ø)
:arrow_up:

...datafactory/operations/activity_runs_operations.py
87.5% <100%> (+0.32%)
:arrow_up:

...ctory/azure/mgmt/datafactory/models/blob_source.py
100% <100%> (ø)
:arrow_up:

...mgmt-datafactory/azure/mgmt/datafactory/version.py
100% <100%> (ø)
:arrow_up:

...zure/mgmt/datafactory/models/azure_blob_dataset.py
100% <100%> (ø)
:arrow_up:

...tafactory/azure/mgmt/datafactory/models/factory.py
100% <100%> (ø)
:arrow_up:

...y/models/self_hosted_integration_runtime_status.py
100% <100%> (ø)
:arrow_up:

...tory/azure/mgmt/datafactory/operations/__init__.py
100% <100%> (ø)
:arrow_up:

...tory/azure/mgmt/datafactory/models/pipeline_run.py
100% <100%> (ø)
:arrow_up:

... and 346 more

Continue to review full report at Codecov.

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

Changes look good.
We also need to update the ADF SDK version to 0.3.0 to match our .Net SDK version, also because this release for ADF has client breaking changes. I will submit a PR for that after this one is merged.


Datepicker popup: how to customize CSS?

Guys,
I haven't been able to find documentation or examples on two things:
a) How does one replace a built-in NGUI template? Just one, not write all of them.
b) How does one customize the CSS for the datepicker popup? I tried adding a style for the datepicker-popup-wrap but that didn't seem to be copied over by $compile. Never done this before.

I think this ticket should be reopened. In version 0.13.0, there is still no hook for applying css styles based on a css attribute to the datepicker wrapper. I believe this hook should be at the level of the ul.dropdown-menu. Otherwise, as @georgiosd has mentioned, you have to make another wrapping div div with a custom class.

I researched how to change the look and feel of the popup without alteting every other objects on the form. It wasn't evident but there is the plunker I used to make tests on how to change the CSS:
http://plnkr.co/edit/VtrLrmubFFOhELbRXy3J?p=preview

You can try different colors and see what does what. All I wanted was more contrast between available and unavailable dates. However, you can change many of those dates. Here is a (somewhat ugly) example that shows how things can be changed:

I'm with @mg1075 - it seems like such an overkill to override the pretty involved popup.html template just to add a custom class to the container (and compromise future upgradeability in the process). I can attach through CSS input[datepicker-popup] + .dropdown-menu, but again that locks me into never using append-to-body.

I guess you can:
A: add to the wrap directive and add class - you can make it more flexible by reading said class off an attribute
angular.module('ui.bootstrap.datepicker')
.directive('datepickerPopupWrap', function() {
    link: function(scope, element, attr, ngModel) {
      return element.addClass('datepicker');
    }
});

B: tie the styling through css (which will not work with append-to-body)
input[datepicker-popup] + .dropdown-menu
I'm with @mg1075 - seems strange that the recommended solution is to override the whole template. Copy a pretty involved template, threaten upgradability - all just add a custom css class?

Can't you just use a CSS attribute selector, e.g. ul[uib-datepicker-popup-wrap] ?

Styling the datepicker (and most uib components) is always a battle because it is built with tables and buttons, so it inherits all the styling for those elements. it would be nice if it included its own scoped stylesheet or config.


Sketch Metrics Effect

We should add a Metrics effect to the SDK. This effect should be able to update counts (number of times a message type appears) and the amount of time an action takes. Additionally, we would want to be able to log metrics (similar to console logging):
data MsgType =
  MsgEcho | MsgInfo | MsgSetOption | MsgQuery | MsgCheckTx | MsgFlush | MsgInitChain | MsgBeginBlock | MsgDeliverTx | MsgEndBlock | MsgCommit
  deriving (Eq, Ord, Show)

data Severity =
  Debug | Info | Warning | Error | Exception
  deriving (Eq, Ord)

data Metrics m a where
  -- | Increments the count of a specific message
  IncCount :: MsgType -> Metrics m ()
  -- | Times an action
  WithTimer :: m a -> Metrics m a
  -- | Log metrics
  Log :: Severity -> Text -> Metrics m ()

see WIP: https://github.com/f-o-a-m/hs-abci/tree/carl/middleware-stats-and-scribes


Possible to use variables?  Where is the config stored?

A few questions or suggestions for you.  I'll probably add some more as I find them if it's OK with you @PauliusKu
BTW I finally got this sort of working with our DBs running in docker containers.  Pretty neat stuff!  Looking forward to seeing how this evolves.
Questions

When we run DBs in WSL it's often faster to connect via the WSL ip address rather than localhost.  The problem with that is each of our engineers will have a different WSL ip address.  Would it be possible to use a variable in the host name field?
Where are the connection settings stored?  Is it possible to have the config in the repo so it can be shared amongst engineers?
Connections across the network are pretty slow.  Does this extension happen to use any caching of the schema?  If not we would find that incredibly useful.

Suggestions

In the OpenEdge Explorer: Databases view:

The delete button should give a warning message before actually deleting.  Something like "Delete connection  ()?".  It's too easy to hit this by accident.
It would be nice to have a refresh button for individual connections rather than all connections only.

In the Tables view it would be nice to see the list of tables from all DBs rather than just the selected DB.  It would make filtering much more useful when we don't know which DB has a given table.  Something like <dbname>.<tablename> rather than just <tablename>.
For the provided settings it seems they all start with ProBro and generally use camel case.  From what I can see all the other settings we use for various built-ins and extensions use all lower case, at least for the leading portion.  Might be a good idea to use probro or pro-bro for consistency.
When creating multiple DBs in a group they sort by the order the DBs were added.  Would be nice if this could be re-arranged.
Similar to #393 it would be cool if we could disable connections somehow.  Maybe right click in the **OpoenEdge Explorer: Databases" view.

Viewing the Edit Connection screen for any of the connections imported from openedge-build.json shows a blank screen.  A read-only screen showing the settings used would be cool.

Also, should this say openedge-project.json?  I'm not actually sure what openedge-build.json is.

When using windows and configuring "terminal.integrated.defaultProfile.windows": "Git Bash", we get all sorts of errors.  This is where I was having a lot of trouble getting this working before.  When using Git Bash I believe the extension is having a difficult time with the path separator because it uses / instead of \.
This right-click menu looks weird.  DataBases instead of Databases, and a few blank translations.

Hi @kenherring, thanks for your effort.
Answering your questions:

I think it would be possible to implement this. The question is where to put these variables.
Connections are stored in default vscode storage. If you want to update connections often, you should use openedge-project.json for that.
We didn't have a look into it. We'll check what performance benefits it could provide.

Regarding your suggestions I created separate tickets:

Delete button warning -
Individual refresh button -
Full list of tables. I think we might try to implement that via multi db select where you could select multiple DBs and see combined list of tables -
Settings naming consistency -
Connections rearrangement -
Disable connection button -
Read only screen for imported connections -
Fix description naming from openedge-build.json to openedge-project.json
Git bash terminal issues - could you elaborate more on these problems you encountered?
Missing index and field view names in right click menu

Thanks again for your input 👍

Thanks for the update @PauliusKu .

Connections are stored in default vscode storage. If you want to update connections often, you should use openedge-project.json for that.

Thanks.  The use case I was thinking of is that all developers on a project are using the same config and don't want to use openedge-project.json for some reason.  Using the vscode default storage doesn't allow for uploading the config as a file to the repo.  Storing the config directly in the repo would be a worthwhile change to improve portability.
Thanks again!  Looking forward to testing out future updates.

@kenherring

Storing the config directly in the repo would be a worthwhile change to improve portability

what format do you have in mind here? Should it be config.df?


The integration dont load the sensors

Logger: homeassistant.components.sensor
Source: custom_components/toyota/sensor.py:41
Integration: Sensor (documentation, issues)
First occurred: 9:21:02 PM (2 occurrences)
Last logged: 9:30:03 PM
Error while setting up toyota platform for sensor
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 249, in _async_setup_platform
await asyncio.shield(task)
File "/config/custom_components/toyota/sensor.py", line 41, in async_setup_entry
for index, _ in enumerate(coordinator.data):
TypeError: 'NoneType' object is not iterable

Duplicate of #101


reduce unnecessary transfers to gpu, spread split operation load to cpus

It seems we are transferring the batch over to every GPU and then letting them slice out the data they'll use. I've experienced speed gains in my application by making the following modification: Have the batch slicing operation done on the host side using multiple cpus, and then each GPU can pull its own relevant slice of data.
what do you think ?

If this PR is only about changes in multi_gpu_util, please revert changes related to SeparableConv3D.

Yes it was just about the multi-gpu training, my bad. Thanks on the comments on the 3d cond.
I will create another PR.


Support casts

Object variable = 10

// 1. Standard
Int castedVariable = (Int) variable
// 2. Using as
Int castedVariable = variable as Int

2


Attempts to connect to http://localhost:8545 even when providing a remote ETH node.

When instantiating the yearn sdk and passing in a JsonRpcProvider to a remote node, the sdk is still attempting to connect to a node at localhost:8545.

Could you please post the code of how you are instantiating the Yearn SDK object?

We instantiate it in a few of our packages, but each time follows this pattern.
const network = 1 // 1 for mainnet const provider = new JsonRpcProvider(process.env.REACT_APP_ETHEREUM_NODE_URL) export const yearnSdk = new Yearn(network, { provider, disableAllowlist: true })
REACT_APP_ETHEREUM_NODE_URL is defined and a correct URL to our eth node.
We instantiate it in this repo https://github.com/shapeshift/lib, which has packages used in our web repo here: https://github.com/shapeshift/web
When we deploy it to the cloud here https://app.shapeshift.com, you can see in the console there are CSP errors of trying to connect to localhost:8545 (not seen locally because localhost is part of self in local dev). The best we've tracked it down is in the yearn sdk, in trying to connect to a node on localhost.

Found an issue in our libraries where env was injected to our dependencies during local development, but not on the production build. Closing this issue as it was not an issue in the yearn-sdk.


Naive Bayes Classifier

Documentation on Naive Bayes Classifier along with its use cases.

Hello. I am a GSSoC'22 contributor. I would like to contribute on this issue. I'm a beginner in open source. Can you assign me this please?

Hey thank you so much! Can you please explain what exactly I need to do? And until when?

you have 6 days to work on the given problem statement. You have to create documentation along with examples!

Okay thank you.

I need to upload a doc file or ipynb?

ipynb

Hello, I have made a sample. Included an example of Gaussian NB.
Should I do for Multinomial NB and Bernoulli NB?

Hello. Should I open a pull request?
I have made a documentation.

Hello, I had made the project many days back, but did not get any response from the mentors.
I have made a pull request. If possible, please check it.

Please check my PR

I need to create a new PR?

No change files in same PR

Kindly check.

Do check it now.

The documentation is okay right?
Will my PR be merged?
I have been assigned a new issue, can I work on that?

Okay thank you

The pull request is merged, should I un-assign myself?

I want to contribute on this issue please assign it to me under gssoc24

Hi @pratishthaa,
I'm really excited about the project and would love to be a part of it. Drawing from my experience with similar projects in the past, I'm confident that I can bring valuable insights and contribute effectively. If possible, I'd appreciate being assigned to the project. Looking forward to your response. Thank you!

Hi @pratishthaa
Please assign the issue to me, i have recently worked on classification problems, I will be able to make a good documentation with illustrations along with proper explanation and its comparison to other classification algorithms.

Hi @pratishthaa  .  I am a student currently exploring and applying various ML algorithms .  I would like to contribute. Kindly assign me the issue

Hi,
I am GSSOC'24 Contributor and I would like to work on this project

I want to contribute to this issue. I have done several projects before regarding same. Kindly assign me the issue.

I want to contribute to this issue can you assign it to me


Move MemoryOperatorError enum values out of global scope

https://github.com/MillzyDev/Dobby/commit/0bf954e3a299e37f38558238b2a57f7ff78bc341 - Moved EarlyGlobals.cmake include to after CMAKE project declaration. The default value for CMAKE_SYSTEM_PROCESSOR is not assigned until after the project is declared. This resulted in a fatal error case, as CMAKE_SYSTEM_PROCESSOR had no value.

https://github.com/MillzyDev/Dobby/commit/ae7c1a43f8bb9b93ea919669dbef1b1b807d12c9 - Added a non-typedef name to the MemoryOperationError enum. Identifiers such as kNone are common and presents naming conflicts with local-scoped constexpr values and other enums (see image). As far as I could find, this change did not result in any compilation errors afterwards.

oh wtf why are old commits there

You didn't pull from upstream after a merge I guess.

i could've sworn i did, anyway

Want to fix it or nah?


NAS-126889 / 23.10.2 / Add missing information to AD debug (by anodos325)

We were missing kerberos information here.
Original PR: https://github.com/truenas/ixdiagnose/pull/153
Jira URL: https://ixsystems.atlassian.net/browse/NAS-126889

This PR has been merged and conversations have been locked.
If you would like to discuss more about this issue please use our forums or raise a Jira ticket.


signInWithIdToken error: Unacceptable audience in id_token

Bug report
Describe the bug
I have implemented native way of sign in with Apple (without safari window). Everything was working fine but after a while I could not manage to log in with auth.signInWithIdToken method.
Additional context
Log that I have found
{"component":"api","error":"invalid request: Unacceptable audience in id_token","level":"info","method":"POST","msg":"invalid request: Unacceptable audience in id_token","path":"/token","referer":"app.happin://","remote_addr":"<IP_ADDRESS>","time":"2023-08-23T13:12:25Z","timestamp":"2023-08-23T13:12:24Z"}

The way I get the token:
extension OnboardingViewModel: ASAuthorizationControllerDelegate {
    func authorizationController(controller: ASAuthorizationController, didCompleteWithAuthorization authorization: ASAuthorization) {
        switch authorization.credential {
        case let appleIdCredential as ASAuthorizationAppleIDCredential:
            guard let tokenData = appleIdCredential.identityToken else {
                alert = defaultAppleError
                return
            }

            let tokenString = String(decoding: tokenData, as: UTF8.self)
            authenticateWithToken(token: tokenString)
            break
        default:
            break
        }
    }

    func authorizationController(controller: ASAuthorizationController, didCompleteWithError error: Error) {
        alert = defaultAppleError
    }

}

The way I make a call:
    func authenticate(token: String) async throws -> UserProfileSelectModel? {
        let session = try await sbManager.client
            .auth
            .signInWithIdToken(credentials: .init(provider: .apple, idToken: token))

        sbManager.session = session
        print("✅ - User is authenticated with AppleID, expires in: \(session.expiresIn)")

        return try? await fetchUserProfile(id: session.user.id)
    }

@_spi was added to this call, nerfing the entire native Sign in with Apple flow.  No offense, but using OAuth to perform a native function build by Apple on their own devices is not only highly janky, but suspect to be blocked by Apple themselves in the near future.

@tobi404 your approach of using signInWithIdToken is the right approach. It sounds like you're missing the step of setting up the App ID in the Apple provider configuration in the Supabase dashboard under Authorized Client IDs.

Hi @tobi404 I'm closing this issue, but feel free to re-open it if what Thor mentioned didn't work.
Thanks.


task priority

how can i asssign priority to task

Using the decorator itself, eg
@background(schedule={'run_at': 0, 'priority':settings.TASK_LOW_PRIORITY}, remove_existing_tasks=True)

assuming TASK_LOW_PRIORITY is defined in your project's settings.py.


Lokalise: Translations update

This pull request was initiated by Lokalise (user Peter Murray) at 2021-03-12 15:53:02

yarn run v1.22.4
$ eslint .
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.


Added components for Contact Form and Image

Don't forget to sing your code commits going forward.


chore(master): release 1.5.15

:robot: I have created a release beep boop
1.5.15 (2023-10-11)
Miscellaneous

deps: update traefik docker tag to v2.10.5 (816b9c4)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/wayofdev/docker-shared-services/releases/tag/v1.5.15 :sunflower:


Scaffolding a technical documentation website

This PR adds the following:

[x] A scaffold of a technical documentation website built using Docusaurus, which generates react-based single-page application built from markdown;
[x] A GitHub action to build and publish the documentation website to GitHub pages.

Thank you, @mwalker174, for the review. It seems SVG files were not tracked on git-lfs, so I opened https://github.com/broadinstitute/gatk-sv/pull/479 to fix that. After https://github.com/broadinstitute/gatk-sv/pull/479 is merged, I will update this PR to track the SVG files on git-lfs and will merge this PR then.

@mwalker174 I added the SVG files to git-lfs, and updated the action to checkout these files when building/deploying the website.


Adding Role admin check to the role-admin branch

ISSUE
The role_store.cairo code allows for granting and revoking of roles. The only role allowed to do this, is the ROLE_ADMIN, therefore it is important that if the contract has only a single account of role ROLE_ADMIN then it should not be that the role is revoked, because:

The _revoke_role removes the role from roles if there is no members as seen here

 if self.get_role_member_count(role_key).is_zero() {
                    let role_index = self._find_role_index(role_key);
                    self.roles.write(role_index, Zeroable::zero());
                }

Meaning, that if we only have a single account as ROLE_ADMIN and revoke, it then, that role would be deleted and therefore future granting and revocation of roles would not be possible hence any future change is not possible.
Mitigation
With the aforementioned issue, I recommend we change the revoke_role () function as follows:
     fn revoke_role(ref self: ContractState, account: ContractAddress, role_key: felt252) {
            // Check that the caller has the admin role.
            self._assert_only_role(get_caller_address(), role::ROLE_ADMIN);
            // check that the are more than 1 RoleAdmin
            if role_key == role::ROLE_ADMIN {
                assert(self.get_role_member_count(role_key) > 1, RoleError::UNAUTHORIZED_CHANGE);
            }
            // Revoke the role.
            self._revoke_role(account, role_key);
        }

We add a new check, such that if the role being changes (role_key) is == to ROLE_ADMIN we assert that there are more than 1  accounts with ROLE_ADMIN then proceed, to avoid a scenario where we revoke and delete entirerly the ROLE_ADMIN as explained above
Code Changes

I have added new piece of code to perform the check on role_store.cairo contract as follows

  fn revoke_role(ref self: ContractState, account: ContractAddress, role_key: felt252) {
            // Check that the caller has the admin role.
            self._assert_only_role(get_caller_address(), role::ROLE_ADMIN);
            // check that the are more than 1 RoleAdmin
            if role_key == role::ROLE_ADMIN {
                assert(self.get_role_member_count(role_key) > 1, RoleError::UNAUTHORIZED_CHANGE);
            }
            // Revoke the role.
            self._revoke_role(account, role_key);
        }

I have added a new test case to test this new scenario in test_role_store.cairo as follows:

#[test]
#[should_panic]
fn given_normal_conditions_when_revoke_role_on_1_ROLE_ADMIN_panics() {
    let role_store = setup();

    // Use the address that has been used to deploy role_store.
    start_prank(role_store.contract_address, admin());
    // assert that there is only one role ROLE_ADMIN present
    assert(role_store.get_role_member_count(ROLE_ADMIN) == 1, 'members count != 1');

    // Check that the account address has the admin role.
    assert(role_store.has_role(admin(), ROLE_ADMIN), 'Invalid role');
    // Revoke role_admin should panic.
    role_store.revoke_role(admin(), ROLE_ADMIN);

}

In errors.cairo I have defined another error UNAUTHORIZED_CHANGE as follows

const UNAUTHORIZED_CHANGE: felt252 = 'unauthorized_change';

to be emitted anytime there is revocation of ROLE_ADMIN from the only ROLE_ADMIN account remaining.

Also need to fix formatting scarb fmt

Done!
Kindly have  a look again.


feat: Zenodo remote provider for transparent storage on and retrieval from Zenodo

This PR adds Zenodo remote provider to upload and download files from Zenodo https://zenodo.org.

Access token with write scope is required.
Uploads files to pre-existing depositions based on deposition id.
When deposition id is not provided, creates a new deposition.
Publishing of a deposition + adding all relevant metadata must be done 'manually'.
Files can be downloaded with this remote provider only from user's own depositions (HTTP remote provider can be used to download files from other public Zenodo uploads).
Zenodo sandbox https://sandbox.zenodo.org can be used for testing purposes, needs separate sandbox account and access token.
Uploads are limited to 100MB with current API (Zenodo says that new API with 50G limit is in the works).

Have been using this remote provider for my project for some months now.

Fixed missing definition (7167696). Test fails now because of missing access token.

Zenodo says that their UI and REST API responses were designed with having in mind uploads of a total of 20-30 files. Should this be mentioned in documentation?

Yes, please.

Finalizing this inside of an upstream branch, since I don't know whether the tests will properly work in a fork.


JDL Compiler front-end Architecture & Implementation.

Introduction
This issue is meant for discussion of the existing compiler architecture and implementation,
It's short comings and alternative approaches to resolve these short comings.
Existing Issues.
Root Issue
The root issue is that the existing solution solves the wrong problem.
The solution solves the problem of a compiler for code generation
Not a compiler that can also providing editor services.
Examples of missing requirements:

Display multiple syntax errors, not just the first one.
Content assist suggestions.
Reproduce the original input text, (example for formatting JDL source code).

I recommend viewing this 30mins video on Modern Compiler Construction by Anders Hejlsberg for more details.
Secondary Issue
The other issue is that there is not enough separation of concerns in the existing implementation
Specifically separating the syntactic analysis  phase (parsing) and everything else (Ast Building).
A small code snippet from the existing code clearly demonstrates this:
//Entities
entityDecl
  = jd:comment? SPACE* ENTITY SPACE* e:ENTITY_NAME SPACE* tableName:entityTableNameDecl? SPACE* eb:entityBody? SPACE*  {
    return { name: e, tableName: tableName ? tableName: e, body: eb, javadoc: jd };
  }
/ ENTITY SPACE* e:ENTITY_NAME SPACE* eb:entityBody? { return { name: e, body: eb, javadoc: '' }; }

Can you tell at a glance:

What is this snippet is the grammar?
What in structure (AST) is built?

Alternative Approach
There would be two main differences:

Adding another step to the process:
Instead of:

Lexing -> Parsing -> AST
We will do:
Lexing -> Parsing -> CST/Parse Tree -> AST.

This CST/Parse Tree structure will represents the original input, thus enabling the basis for these more advanced editor flows.

Replacing the Parsing library (peg.js) with one (Chevrotain) that supports other capabilities related to
supporting editor related flows such as error recovery and multiple start rules.

Poc Highlights.
Instead of writing too many words lets just point to references in a run-able POC.
This POC implements a small subset of the JDL grammar to demonstrates the proposed
architecture and tooling. There several things missing, for example:

Reconnecting Comments to the AST.
Saving position information on the AST.

But the existing content is more than enough to review and discuss.
Phases

Lexing Phase

Difference: Separate Lexing phase from parsing phase.

Can ignore Whitespace/Comments easily.
Can introduce ambiguities as parsing context is unavailable, for example different syntactic rules for
naming entities/fields/types/... cannot be applied as the names have common prefixes and the lexer does not have any information on the current context.

Parsing Phase

Difference: The parser only deals with syntactic analysis, there is no code inside the parser
To create an AST. Instead the parser automatically creates a CST/Parse Tree which can later
be consumed for different use cases (separation of concerns mentioned earlier).
Difference: Many capabilities obtained for "free" due to using Chevrotain.

Automatic error recovery.
Multiple Start rules.
Automatic Parse Tree construction.
Syntactic Content Assist / AutoComplete.
Syntax Diagrams

Ast Building Phase

Difference: Separated from the Parsing Phase (separation of concerns).
Can be modified to build ASTs from partially valid CSTs.

Bonus Phase

Formatter

This works directly on the CST/Parse Tree, which shows another example of separation of concerns
as different "end users" can implement different parser related logic without modifying the parser
itself.

The solution solves the problem of a compiler for code generation

The point wasn't to have a compiler, but only a parser.

Display multiple syntax errors, not just the first one

That's one of the issues I have with PegJS.

Content assist suggestions

The project doesn't handle this point.

Reproduce the original input text, (example for formatting JDL source code)

What's the point in doing this?
I don't understand your second issue.

Parser vs compiler's front-end

The point wasn't to have a compiler, but only a parser.

This is a matter of semantics, some refer to the lexing + parsing + ast creation + semantic checks
as a "compiler front-end", but the exact terms do not really matter as long as we agree on the scope.
Content-Assist

The project doesn't handle this point.

Yes indeed it does not, which is why there is logic duplication in the JDL-studio project
related to lex/parsing for content assist.

https://github.com/jhipster/jdl-studio/blob/gh-pages/js/codemirror/codemirror.jdl-mode.js

So if the grammar changes, for example in the context of enriching the grammar that was discussed recently, that duplicate logic may also have to be modified.
I would also be surprised if this duplicated logic matches perfectly with the original grammar.
Original Text reproduction.

What's the point in doing this?

Lets say you want to build a linter for JDL
The linter would warn about too many spaces before a comma
or missing newline when opening an entity's block.
How would you implement this using the existing data structure output from the parser?
Do you know the exact position of every single token after parsing?
This full textual information would be needed for editor related functionalities such as
code formatting / linting / styling.
Another example would be refactoring.
Lets assume you want to refactor the name of a JDL constant.
This would require first finding all the usages of that constant which is easy.
But secondly it would require knowing those usages exact offsets to perform the replacements.
Once again we come back to needing information on the original text, not just the parser's AST output.

I don't understand your second issue.

I will try to emphasize this second issue once I fill the "alternative approach" section.
Code samples may speak louder than words here 😄

Pinging @MathieuAA @deepu105 😄

What do you think of this proposal?

The good?
The bad?

Is this relevant for the JHipster Core project?

If so how do we proceed?

Since @MathieuAA knows much better about the current parser I'll leave the decision to him. My personal opinion is that this seems more readable and maintainable than PegJS but a little more work initially to migrate everything I guess

@deepu105 I've finally finished testing and playing with everything, and I think this is the way to go.
@bd82 your work is really astounding, and I can't emphasize that enough.
I guess the next step is cutting loose ends (the big'ol PegJS parser) and eventually cleaning things up.

@bd82 @MathieuAA just one question currently I use the output json from PegJS parser for JDL studio, with this will the json structure change?

with this will the json structure change?

I think it should not change, otherwise the scope of changes would be too large to safely handle.
The #3 phase (Ast building) should build an identical data structure to what the Peg parser outputs now, so everything post parsing stays the same.
The difficult part is to ensure this actually happens without unintended changes...

I guess the next step is cutting loose ends (the big'ol PegJS parser) and eventually cleaning things up.

I could probably help by migrating the the grammar (Phases 1 & 2).
The Ast building phase should probably be done by someone already familiar with the existing AST.

Just a small update.
I am hoping to start working on the grammar conversion (Phase 2) this weekend.

This is getting messy, here's what I'm going to do:

put everything in the master branch into another branch
maybe remove the app parsing branch (for the time being)
make the dev branch the new master
make the app parsing work with PegJS
finally have a working release
migrate to the other system when everything is cleaned up

Hi @MathieuAA
I've recently finished version 1.0.0 of Chevrotain, so more free time...
So I hope to invest some extra time to push this ahead, such as implementing the rest of the grammar myself.
However I can only minimize the amount of work needed not complete it all.
(As I've done by implementing a draft of phase1 and most of phase 2)
Hopefully I can minimize it enough to fit in your own free time constraints
😄 .

I still have some cleaning up to do (both in the internal project and in the app generation with PegJS), and I don't think the migration to chevrotain will be a priority. In my opinion, my initial mistake was not to 100% finish the app generation (and release it) before beginning the work needed for the chevrotain system.
I'm clearly not going to let that happen again, and I'm going to release a working app generation with PegJS first.
After that, the new parsing system will be the top priority.

The more incremental approach seems best 👍
I will try to push migration issue a little farther in the upcoming new "side" branch.
Once the higher priority tasks are finished, ping me if additional help is needed for the migration.

Alright!

I think we can close this issue as merged the initial implementation to master
and will hopefully soon finish handling the leftover issues.

yes


makefile is recompiling main.o and tbb libs when it shouldn't

Summary:
In running both CmdStan and CmdStanR, successive calls to compile
different stan programs, using all default compiler options,
appear to sometimes trigger a rebuild when they shouldn't.
Description:
Still investigating.
Reproducible Steps:
Please report steps to reproduce the issue. If it's not possible to reproduce, please include a description of how you discovered the issue.
If you have a reproducible example, please include it.
Current Output:
The current output. Knowing what is the current behavior is useful.
Expected Output:
Describe what you expect the output to be. Knowing the correct behavior is also very useful.
Additional Information:
Provide any additional information here.
Current Version:
v2.23.0

I tried a couple models (one in cmdstan and one in cmdstanr) and didn't get this.
Can you try to get this to happen again with your stansummary branch? I was getting some unnecessary compiling in the ODE development, but the cmdstan I was using there was quite out of date so I'd rather reproduce a problem with something new.

just realized that cmdstanr was also using out-of-date CmdStan - path was set to 2.23.0 release.
will try on 2.24.0-rc

Isn't this the same as #885?

closing this as I haven't been able to reproduce this problem via successive recompiles of Stan programs.


Web integration

Describe the solution you'd like
Assuming a multi-platform application and in line with #67, It would be great to have a JavaScript/TypeScript SDK for the web version.

Hi @adpinola  and thank you for reaching us. Also related: #2422


Techcomm includes still reference the non-pubid URNs

Expected Behavior
Includes in techcomm.v2_0 rng files should resolve to org.oasis-open.dita.v2_0 rng files via catalog.xml
Actual Behavior
The resolver will fail to resolve includes like:
<include href="urn:oasis:names:tc:dita:rng:topicMod.rng:2.0">

Possible Solution
Update techcomm.v2_0 equivalent to #4040
Steps to Reproduce
Just an example with trang and the resolver. I am not yet sure if this impacts DITA-OT use of jing.

cp lib/xml-resolver-1.2.jar . resolver.jar
java -jar trang.jar -C plugins/org.oasis-open.dita.techcomm.v2_0/catalog.xml  plugins/org.oasis-open.dita.techcomm.v2_0/rng/technicalContent/ditabase.rng trang-out/ditabase.rnc

Copy of the error message, log file or stack trace
fatal: exception "java.net.MalformedURLException" thrown: unknown protocol: urn
Environment

DITA-OT version: 4.0.2
Operating system and version: macOS
How did you run DITA-OT? Tested with external tool.
Transformation type: N/A

@robander The includes in https://github.com/oasis-tcs/dita-techcomm where never updated with the 'pubid' addition. I am not sure what the plan is?

Starting the update: https://github.com/oasis-tcs/dita-techcomm/pull/228


[CIP-0037] - Unambiguous name for ERC-20 on Celo chain

Unambiguous name for ERC-20 on Celo chain

Yes! Big +1 to this effort. I have already ran into issues trying to figure out how to message about standardized tokens in Celo Terminal. Calling them ERC20 directly is just going to create further confusion.
Some notes on actual name:

Does it need to have "-20" in it? I am guessing most people don't know or care what either "ERC" or "20" is, so not sure if the name needs to have "-20" in it.

Some other naming options to help with the discussion:

Celo Standard Tokens (short: CSTs)

Celo Core Tokens (or Core Celo Tokens, short: CCTs) can refer to CELO + cUSD + cEUR....

Celo Tokens (short: cTokens)

This can be confusing since cTokens sounds like it would just mean: cUSD/cEUR/...
This can also be confused with Compound cTokens

Celo Fungible Tokens (short: CFTs)

This can be useful since it paves way for CNFTs, for Celo Non-Fungible Token standard.

yes very much not set on any particular name.
like @zviadm suggested I also was thinking abut Celo Standard Token or Celo Token Standard but could see it getting confused with CELO native token.
I think the benefit of 20 is mostly because the implementations of the standard on other chains have it and it seems like a nice convention to stick with. but Its by no means required in my opinion.

I am in favor of keeping the naming convention as close to the original as possible, but clarifying that we're talking about Celo.   For example, ERC20 and ERC721 would be CRC20 and CRC721 respectively.  This approach is intuitive because it doesn't require a new user to learn a new naming convention.

Going to bring this up at the core dev call this week.


Fix/user home

Extracts the USER_HOME variable to make it changeable during tests
Uses new test setup for environment and linking tests
Fix function that works even though it should be broken.

Need to see that I will not use functions in the bash_env :(

Reverted root function usage in the env file. it is only used for Openshift and not important for testing.

Took too long to find the quotation error...


Potential security Vulnerability

suggestion Change it  so that this feature is deactivated after x minutes. Reactivate after a restart if no user exists.
completely deactivate all registrations
Moonlight/App/Services/UserService.cs

This will be at only one time true. If no user has been registered. After that it will be always false

Done in #271


Add test for error logging

Also drop mock test dependency as it's included in Python>=3.3

:+1:

:yum:


[BEAM-4393]: Copy root repo's LICENSE & NOTICE into shadowJar

r: @kennknowles
cc: @apilloud

LGTM! I verified that this fixes BEAM-4393.
Only one question: should this go in jar instead of shadowJar?

Hey @apilloud , my understanding so far is, we use shadowJar to rewrite Jar. How do you feel like? @lukecwik

I believe we run the jar rule to build a jar with only our code, then we run the shadowJar rule to bundle that jar with third party code. This only needs to be in shadowJar, but that leaves our code in jar without a LICENSE file.

That seems wrong. The shadowJar is the real thing and the "normal" jar is just an intermediate calculation.

I didn't find any Jar{} closure so far in https://github.com/apache/beam/blob/master/build_rules.gradle, which means, we possibly use the default configuration. I'm not sure whether we need LICENSE in Jar.

Yea, OK. I didn't mean this PR is wrong. It seems this PR does put the LICENSE in the actual thing we want to ship to users. I guess the rest has to do with the release process.

Merging in the interest of moving things slightly better. If our current release process is mostly right, then this PR fixes it.


[Event Change] Page 42 - "Sales Order" - OnValidateShipToOptionsOnAfterShipToAddressListGetRecord

Hi AL-Team,
can you please add the variable SalesHeader by var to the following Publisher?
 [IntegrationEvent(false, false)]
    // local procedure OnValidateShipToOptionsOnAfterShipToAddressListGetRecord(var ShipToAddress: Record "Ship-to Address")
    local procedure OnValidateShipToOptionsOnAfterShipToAddressListGetRecord(var SalesHeader: Record "Sales Header"; var ShipToAddress: Record "Ship-to Address")
    begin
    end;

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.


[feature request] add evaluation output for cross-validation

Currently the nlu evaluation script supports different evaluation metrics and outputs (which are very useful :+1:) solely for training- / test-data splits, and not for crossvalidation mode. Those are:

--confmat
--errors
--successes
--report
--histogram

This is partially documented here, but as an initial step the evaluate command should also warn about superfluous arguments, that can not be used, or even abort then.
Even more important would be to support those outputs also for crossvalidation mode. This seems straightforward to me:

--confmat: sum across all cv runs (or average for relative percentages)
--errors: combine across all runs
--successes: combine across all runs
--report: just format the output
--histogram: combine confidences and build histogram on that

It seems to be possible to reuse the functions for normal runs on the combined results of the cv runs.
Did I miss something that makes this more complicated or undesirable? Or is this on your roadmap anyways? Thanks for considering this.

@jstriebel this is definitely something that would make sense to do -- is this something you're willing to work on?

As I currently don't need it, it doesn't have a priority. If it comes up again next time, I will tackle this, though :+1:

Hey. I'm working on it. Will create a PR soon.

Ok, I've opened the PR. Please, check it out when you have a chance.


V2.1+: upgrade xmldom

TODO:
Upgrade xmldom (in it's own feature branch - called 'xmldom-upgrade') to either version that works ( ^0.5.1 || ^0.6.1 || >=0.7.0)
Once tested that nothing broke- push to /develo

p/

https://github.com/TreeMama/iSeaTree-React-Prototype/issues/256


Problem with Options Box rename

I am using arduino-cli   and ESP32-S3 D1 Mini
I was unable to change Options Box Label in your example CustomHTML.ino.
Even if I use the    #define CLEAR_OTIONS 1     the label did not changed.
I have to get rid of the config.json (actually I rename it) in order to see my new labels.
In config.json I have noticed that options labels seems to be saved EX:"param-box1": "Mes Options".
Exception are "Setup" and "Update&FS"
This is confusing.

Hi @AlainF-ing and thanks for your interest!
The behavior you encountered is normal: in order not to unnecessarily overwrite the file every time you restart, when the key is present the file is not touched.
This unfortunately has the drawback you encountered, but i prefer this way because in the end, it can only cause problems during the development phase of the project
Regarding the #define CLEAR_OTIONS, this is used only in the example customHTML.ino and not in customOptions.ino
If you look at the code, you can find this:
#if CLEAR_OPTIONS
  if (myWebServer.clearOptions())
    ESP.restart();
#endif

So, when you need to clear the config file the method to be used is clearOptions(), but of course if you use the /edit web page the result is the same.

Ok and thanks for your quick answer.
As a comment, I am a fan of the FSBrowser.ino on Little FS for ESP8266. For ESP32 this was a disappointment until I
found your library.
Very good work.

Thanks for your comment!
If you like this library, I would recommend you also to take a look at this version which, instead of the WebServer core library, is based on the ESPAsyncWebServer library.
ESPAsyncWebServer library and its dependencies are included locally in the sources, so you don't need to install anything else.
async-esp-fs-webserver and esp-fs-webserver can coexist without any problem or interference between them.
Even though I am trying to develop the two projects in parallel, I won't deny that there is more effort on the second one because it has better performance in terms of speed and responsiveness of the pages.


FE: Add Search Functionality to ACLs page

[x] Breaking change? (if so, please describe the impact and migration path for existing application instances)
No breaking changes.

What changes did you make? (Give an overview)
This PR introduces a search functionality in ACLs page that allows users to search by principal name. This feature was developed to improve the debugging process for users managing clusters with numerous ACLs, especially when clients encounter "authorization failed" errors. And in general this feature enables users to quickly locate specific ACL entries, saving time and making the debugging experience more efficient and user friendly.
Is there anything you'd like reviewers to focus on?
No. There are not many changes :)
How Has This Been Tested? (put an "x" (case-sensitive!) next to an item)

[ ] No need to
[x] Manually (please, describe, if necessary)
[ ] Unit checks
[ ] Integration checks
[ ] Covered by existing automation

This feature has been tested and deployed on production clustres with many acls and it works great :)
Checklist (put an "x" (case-sensitive!) next to all the items, otherwise the build will fail)

[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 (e.g. ENVIRONMENT VARIABLES)
[x] My changes generate no new warnings (e.g. Sonar is happy)
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[x] Any dependent changes have been merged

Check out Contributing and Code of Conduct
A visualization of the new feature:
https://github.com/user-attachments/assets/4b591910-3f4c-401d-9809-fcf9b0b129a0
A picture of a cute animal (not mandatory but encouraged)

Hi @Haarolean, just following up on my pull request to see if there are any updates or feedback. :)

can confirm that the principal search is working:

but it's still not enough)

Thanks dude! Why not enough? I believe limiting the search to 'principal name' makes sense for the intended use cases, such as quickly verifying whether a specific user is authorized or diagnosing authorization issues tied to a particular principal. Once filtered by principal name, users can further refine results by sorting by operation, for example. We’ve successfully deployed this functionality across hundreds of our clusters, and the feedback from clients has been extremely positive.

@polegkashti kafka/strimzi admin can already easily check acl by manifests for example.
i think this functionality is needed more for developers and users of given kafkausers. they don't always know the exact names of their principals.
that's why pattern search is also very important. they can find a topic and see who has access to it.

I don't mind expanding the search further, but we can do this in a separate issue, after a thorough analysis. @fallen-up would you mind raising a new issue describing the functionality you're interested in?

@polegkashti thanks for attaching the gif :)

@Haarolean +

@Haarolean Thanks for your approval. I appricate your work!


page reloading when clicking on logo and home

Hi, could you assign this to me, I would like to work on this.

@Pongy-jr sure. Make some changes and do pull requests.

is this issue resolved/assigned or can i fork and try?

@pavan-nambi  the logo in the footer has the same issue and others have been solved.


⚠ Bofrost.de has degraded performance

In 084e7c6, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1317 ms

Resolved: Bofrost.de performance has improved in 652e361 after 10 minutes.


CopyCustomResource | CREATE_FAILED | Response object is too long.

when i first deployed, a nested stack err'd with
CopyCustomResource | CREATE_FAILED | Response object is too long.
-- | -- | --

i successfully deployed after replacing www/ with www/index.html where index.html is just 'hi'.
i think CopyCustomResource was hitting the 4kb limit. I think it's trying to copy all of www/ in 1 go:
  CopyFunction:
    Type: AWS::Serverless::Function
    Properties:
      CodeUri: ../www
      Environment:
        Variables:
          BUCKET: !Ref S3BucketRoot
      Handler: witch.staticHandler
      Layers:
        - !Ref CopyLayerVersion
      Role: !GetAtt CopyRole.Arn
      Runtime: nodejs12.x
      Timeout: 300

but of course my www/ will have >4kb.
i was able to comment out CopyCustomResource and run an aws s3 sync outside cloudformation. But is there a way to do this inside cloudformation when www/ >4kb?

@ZacharyRSmith I have encountered the same issue. I agree with your assessment that CopyCustomResource was hitting the 4kb limit.
I believe that the issue is the number of files in the www folder (and sub folders). I do not believe that the total size of the files is the issue.
The response from the witch.staticHandler function includes a list of all of files that were copied.
It is my belief that nothing in this stack needs to know the filenames of the files from the www folder that were copied into the S3 bucket.
I will open a pull request with a preposed fix.


Bot user for dependabot to include in CODEOWNERS and allow automerge PRs

Given recent changed in CI such that dependabot's PRs get automatically enabled auto-merge and are approved by githubactions[bot] we have realized that in order for this to work dependabot would have to be added to CODEOWNERS (which is not possible as per this post: https://github.community/t/is-it-possible-to-add-github-apps-bot-to-codeowners/3146/2 by one of Github's maintainer) or the CODEOWNERS would need to be disabled for a repo (which we don't want to do).
This leaves us with one option: to introduce a bot user account for which we'll be able to create Personal Access Tokens giving us the permissions to auto merge the PRs.

Consensus: won't fix - this has inherent risks


Navigation Timeout Exceeded with page.setRequestInterception(true)

Steps to reproduce
Tell us about your environment:

Puppeteer version: 1.8.0
Platform / OS version: MacOS 10.13.4 High Sierra
URLs (if applicable):
Node.js version: 7.6.0
Chromium. ~/node_modules/puppeteer/.local-chromium/mac-588429 under version 71.0.3542.0

What steps will reproduce the problem?
const puppeteer = require("puppeteer");

(async() => {
	browser = await puppeteer.launch();
	page = await browser.newPage();
	await page.setRequestInterception(true);
	page.on("request", request => {
		console.log(request.url());
   		request.continue();
	});

	await page.goto("https://example.url", { timeout: 0, waitUntil: "networkidle0" });
})();

What is the expected result?
Requests continues successfully.
What happens instead?
https://fonts.gstatic.com/s/lato/v14/S6uyw4BMUTPHjxAwWyWtFCc.ttf
https://fonts.gstatic.com/s/lato/v14/S6u9w4BMUTPHh50XSwaPHA3q5d0.ttf
https://fonts.gstatic.com/s/lato/v14/S6u9w4BMUTPHh6UVSwaPHA3q5d0.ttf
https://example.url/j_spring_security_check
(node:85615) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): TimeoutError: Navigation Timeout Exceeded: 30000ms exceeded
(node:85615) DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
==
I've re-installed puppeteer a few times yesterday so I supposed I got the rolled back version of Chromium.
I've also tried --ignore-certificate-errors or --enable-features=NetworkService, but not much luck here.
Rolling back to 1.6.2 w/ earlier verison of chromium works, but then the fix to set pdf window size in 1.8.0 will not be included.

@aslushnikov
Hello, I'm experiencing the same issue at 1.8.0.
It seems puppeteer processes all request/response quite well, but domcontentloaded or load event is not fired.
Please, try these URLs with the code above.
http://m.todayhumor.co.kr/view.php?table=total&no=9408788
http://footsell.co.kr/product/detail.html?product_no=32952&cate_no=415&display_group=1
http://m.typemoon.net/plugin/mobile/board.php?bo_table=forum_neta&wr_id=3329

Hi @aslushnikov ,
thanks for replying.
With the suggested "ignoredHTTPSErrors: true" setting,
I'm still encountering hanging issue on.
https://dev-cb.netbase.com/cb/nb/j_spring_security_check
(node:52170) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): TimeoutError: Navigation Timeout Exceeded: 30000ms exceeded
(node:52170) DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
Could it be related to mac OS?

Hi @aslushnikov ,
after trying 1.10 , I think I found whats keeping us from reaching to the same page.
Thats is, the full script was not included in the ticket,
The skipped part, which I thought was irrelevant, I removed to keep it clean,
turned out could actually be the root cause of the stall.
Here is the full script:
const puppeteer = require("puppeteer");

(async() => {
  const browser = await puppeteer.launch({ignoreHTTPSErrors: true});
  const page = await browser.newPage();
  await page.setRequestInterception(true);
  page.on("request", request => {
    console.log(request.url());
    request.continue();
  });
    	await page.goto("https://example.url", { timeout: 0, waitUntil: "networkidle0" });
	await page.type("#j_username", "-");
	await page.type("#j_password", "-");
	await Promise.all([
    	page.click("#button"),
    	console.log("clicked to login"),
    	page.waitForNavigation({ waitUntil: "networkidle0" })
    ]);
})();

The code stuck and time out after the click event,
which triggers a login service call "j_spring_security_check" and gets stuck
clicked to login
https://example/j_spring_security_check
(node:6202) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): TimeoutError: Navigation Timeout Exceeded: 30000ms exceeded
(node:6202) DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

I managed to try a different case with service call when a login was not required, and got it through.
So I think the root cause was either spring security check or the service call triggered by click.
Hope to hear back from you.
Thanks.

I'm having same issue on 1.10.0
adding this snippet gives navigationTimeout error
page.setRequestInterception(true)
page.on("request", r => r.continue())

Related: https://github.com/GoogleChrome/puppeteer/issues/782#issuecomment-498712477
My question: how do you handle cases when a page requests multiple images to load for example and only one does not return response thus leading to 504 timeout?

Please, try these URLs with the code above.
http://m.todayhumor.co.kr/view.php?table=total&no=9408788
http://footsell.co.kr/product/detail.html?product_no=32952&cate_no=415&display_group=1
http://m.typemoon.net/plugin/mobile/board.php?bo_table=forum_neta&wr_id=3329

@batt842 all these URLs work with Puppeteer 1.17.0.
Everybody: request interception is getting better and better in recent Puppeteer versions. So please, give it chance!
If request interception still doesn't work for you in the latest Puppeteer version,  please file a new issue with a good repro we can play with!!


Update readme and add CREST intro and scopes

Added install instructions for linux/mac to readme and moved code into code blocks.
Added CREST introduction and info on public crest, walking from the root and advantages over XML.
Added info on available scopes and basic info on authentication (needs expanding)

There is a new CONTRIBUTORS file in the root of the project, you may want to merge that change into your fork and update that before I accept this PR.