Small fix in Github actions

Fix the gitignore github action.
Test with the external github action (remove before merge<EMAIL_ADDRESS>TODO:

[x] Before merging: in the repo https://github.com/mfem/github-actions merge branch v2.0-tweak into v2.0
[x] Before merging: switch back to<EMAIL_ADDRESS>
Edit: for the first bullet above, see https://github.com/mfem/github-actions/pull/5

PR
Author
Editor
Reviewers
Assignment
Approval
Merge

#2649
@v-dobrev
@tzanio
@tzanio + @jandrej
11/06/21
11/08/21
⌛due 11/15/21

This PR is now under review (see the table in the PR description). To help with the review process, please do not force push to the branch.

Merged in next for testing...

This PR just affects Github actions and the merge in next was tested successfully (see the green check on the left of the title here: ee528525), so I think it can be merged in master without waiting for the nightly tests.


Rox 11580 collector ci migration push images

Description
Trying to push the images created by Openshift CI to the appropriate repos.
Checklist

[x] Investigated and inspected CI test results
[ ] Updated documentation accordingly

Testing Performed
See above

/test test-scripts


How to make custom rules to require example of content and response?

Detailed description
Hello, there.
I'm working on custom rule set, I need to make rules that require examples for requestBody and response. I have question in this context - how to make a rule to check nested objects? I figured out that content and response objects (at rule definition) are related to this but how to check that nested application/json (or ideally any property) contains example or examples object? Or maybe there is another way to check that?
Context
I'm working on custom rule set, I need to make rules that require examples for requestBody and response. I have question in this context - described above.
I think such kind of check would be useful for other users.
Possible implementation
Your environment
Include as many relevant details about the environment you experienced the bug in and how to reproduce it.

Node Version: 10.14.1
Operating system and version (e.g. Ubuntu 16.04, Windows 7): Ubuntu 16.04
speccy version: 0.11.0

Just bump, any help would be appreciated, thanks.


Crash when LineChart is re-rendered

The app crashes when LineChart is re-rendered even without any changes to the graph (data, width, height, chartConfig are all same)
iOS crash
removedChildren count (0) was not what we expected (1)
Android crash
Trying to remove a view index above child count 2 view tag: 403
detail: View tag:403
 children(0): [
],
 indicesToRemove(1): [
2,
],
 tagsToDelete(1): [
307,
]

versions:
"react": "16.3.1",
"react-native": "^0.56.0",
"react-native-chart-kit": "^1.1.6",
"react-native-svg": "^7.0.2",
reproducible code
import React from 'react'
import { LineChart } from 'react-native-chart-kit'

const data = {
  labels: ['January', 'February', 'March', 'April', 'May', 'June'],
  datasets: [
    {
      data: [20, 45, 28, 80, 99, 43],
    },
  ],
}

export default class DailyRevenue extends React.Component {
  componentDidMount() {
    setTimeout(() => {
      this.setState({})
    }, 1000)
  }
  render() {
    return (
      <LineChart
        data={data}
        width={400}
        height={400}
        chartConfig={{
          backgroundColor: '#e26a00',
          backgroundGradientFrom: '#fb8c00',
          backgroundGradientTo: '#ffa726',
          color: (opacity = 1) => `rgba(255, 255, 255, ${opacity})`,
          style: {
            borderRadius: 16,
          },
        }}
      />
    )
  }
}

I just tried with "react-native-svg": "^6.4.1"
No longer crahses

I am facing the same issue but is not resolved even after changing version to 6.4.1
any other solution?
@bosung90

for me "react-native-svg": "6.3.1" works


Production fix

Fixes #
Describe the changes you have made in this PR -
Screenshots of the changes (If any) -

Coverage remained the same at 84.266% when pulling f11c75bbd9192cfbe7e58c0c6ec60119851bc32e on production-fix into 9e742d8acb65015538b2548d99d94d62f54f969c on master.


Show view message when there is no data to provide

Some views weren't able to display any data after the completion of the trace's analysis.
The problem was due to the fact that some provided models are empty server side because
they were no relevents trace events to display.
We choose to display a message indicating that there are no data to display in those cases
and update the state of the analysis client side. It will allow a better clarity of the user
experience.
Fixes #406
Signed-off-by: Jeff Godonou<EMAIL_ADDRESS>

I noticed a few bugs:
* when I click on a view that is not working (e.g. Event Matching Latency - Latency vs Time), the correct message is displayed but when I open another view that is working, I first see the message that was in the old view.

To reproduce :

* When I open the view that is not working (Event Matching Latency - Latency vs Time), close it and reopen it, the message is no longer visible.

To reproduce :

* When I refresh the page with the non-working view already open and open it again, the message is not visible.

To reproduce :

Thank you Jeff for your contribution.

Thanks to report that. I'll watch that.

I was able to reproduce certain bugs observed by @IbrahimFradj. I think it's possible that these weren't necessarily introduced by this feature.
Setup

Browser: Chrome (version 92.0.4515.131)
Trace: "apt"
The exceptional behaviour happens the first time the analysis results are requested from the server. To re-observe, close the trace in the server (right-click in "Opened Traces" --> "Delete Trace").

Bugs observed
1. On first open, "No data" message shows before "Analysis running"
For views with results to display (ex. CPU Usage, Disk I/O for trace "apt"):

The very first time they are opened, the  "Trace analysis complete. No related events found" message shows for a brief moment before the "Analysis running" spinner appears.
Apart from the very first open, this does not happen.

https://user-images.githubusercontent.com/28311615/129622211-860a634d-c4fe-4033-8312-2ed73b013513.mp4
2. Some views display "No data" message on first open, but then show results when opened again later

For the trace "apt", the views "Event Matching Latency", "Futex Contention Analysis", and "IRQ Analysis" all do this. For the trace "201-lttng-userspace-tracing", the "Ust Memory" view appears to do this.
I think this is what @IbrahimFradj was observing in the 2nd and 3rd case above.

This suggests that either:

The wrong indicator from the server is being used to show the "No data" message and the analysis isn't actually complete.
The results aren't actually available when the server says the analysis is complete.

https://user-images.githubusercontent.com/28311615/129623660-735a30f1-d254-4820-91f3-175f3f96f6fe.mp4
3. Some views don't display any data when their box is checked
For the trace "apt", the view "Event Matching Latency" appears to display nothing in the chart when the box is checked. Having an empty graph even though the chart and checkbox areas appears, suggests that the wrong thing is being used to determine whether or not an analysis found no relevant events.
https://user-images.githubusercontent.com/28311615/129625486-f314d370-d6a2-4453-a1f6-62b8c3af1300.mp4

Can we filter all the finicky XYs until they actually work?
Coming back to the root motivation for these changes #296, I seriously want to filter everything that is displayed as an XY Chart (except maybe CPU Usage and Disk I/O) and only make views available once they are complete (ex. Have y-axis labels), are tested, and can actually be used for analysis. I feel like we're trying to duct-tape views that weren't ready to be available as features in the first place. Since @jeffGodonou and @thefinaljob need XY Charts to be able to test their current features, I think filtering broken XY Charts should be done in September.

@IbrahimFradj:

When I open the view that is not working (Event Matching Latency - Latency vs Time), close it and reopen it, the message is no longer visible.
When I refresh the page with the non-working view already open and open it again, the message is not visible.

I think these two issues are the same. Both involve closing the view (either by clicking the x or by refreshing the tab).

@jeffGodonou Was it verified that the events required for the analysis were missing from the trace? Or did we assume that that was why the sever wasn't returning anything?

After some thought, it may be more accurate to show a different message like:
"Trace analysis complete. No results: Trace missing required events."
The message "Trace analysis complete. No related events found." says that no events relevant to the analysis were found. My guess is that this isn't necessarily true. If an analysis requires event types A and B, but only events B are present in the trace, the analysis results would be empty even if some of the relevant events are in the trace, right? @arfio Could you confirm/deny whether this how analyses behave?

It can behave like this, yes. It all depends on how the analysis is implemented. Most analysis will look at particular event types, to calculate latencies for example, or just to create a custom flame chart. In some cases, missing some event types is expected, in others it might break the analysis, or just not output anything. But I agree that  "Trace analysis complete. No results: Trace missing required events." is a more accurate statement than "Trace analysis complete. No related events found.". The latter statement can be misleading in some cases.

arfio: I agree that "Trace analysis complete. No results: Trace missing required events." is a more accurate statement than "Trace analysis complete. No related events found.". The latter statement can be misleading in some cases.

Ok! @jeffGodonou could you please:

[ ] Change the view message to "Trace analysis complete. No results: Trace missing required events."

arfio: It can behave like this, yes. It all depends on how the analysis is implemented. Most analysis will look at particular event types, to calculate latencies for example, or just to create a custom flame chart. In some cases, missing some event types is expected, in others it might break the analysis, or just not output anything.

Ok, so sometimes certain events are soft requirements.
It's interesting to note that sometimes analyses will fail if there are events missing. This could be relevant context for #460 since this means an analysis could fail even if it's not "broken".

I can't do a proper review since Gitpod isn't working right now, but looks good to me! Thanks for the update 🌿

I noticed that the message does not display with Event Matching Latency - Latency vs. Time and with Memory Latency vs. Time.
I also noticed that for the Memory Usage view, sometimes it displays with some traces and sometimes it doesn't display and gets stuck in Analysis running. (ex: with the apt trace it works but with ls-ust it doesn't)

It appears as a set back. Thank you for reporting this. I'll verify what happen with my last commit.


resize before upload

hi, how to resize pictures before upload using gm ?

Still relevant

Hi @elwadi you can use Jimp to resize your photo in the server before saving or uploading it.
// ... skipped machine defs
var photo = await sails.uploadOne(inputs.photo)
Jimp.read(photo.fd)
  .then(resizePhoto => {
    return resizePhoto
      .resize(256, 256) // resize
      .quality(60) // set JPEG quality
      .greyscale() // set greyscale
      .write(photo.fd); // save
  })
  .catch(err => {
    console.error(err);
  });

Hopes this works :smile:

Thanks, navicstein, but this does not work.

INFO UPLOAD:::  [ UploadedFileMetadata {
    fd: '9b56ea7e-07cb-4824-9cd7-874bd00b046b.jpg',
    size: 807158,
    type: 'image/jpeg',
    filename: '13708285_10201910867009773_6315094867023335890_o.jpg',
    status: 'finished',
    field: 'file',
    extra: undefined,
    name: '13708285_10201910867009773_6315094867023335890_o.jpg' } ]

FD: 9b56ea7e-07cb-4824-9cd7-874bd00b046b.jpg

<- POST /api/v1/files/upload                  (2631ms 200)
 °
{ [Error: ENOENT: no such file or directory, open '9b56ea7e-07cb-4824-9cd7-874bd00b046b.jpg']
  errno: -2,
  code: 'ENOENT',
  syscall: 'open',
  path: '9b56ea7e-07cb-4824-9cd7-874bd00b046b.jpg',
  methodName: 'constructor' }

The photo uploads to S3, it is not in the .tmp directory as during development and, therefore, remotely Jimp cannot change it.
We need a way to somehow catch the original fd file of the photo before it puts Sails in .tmp


File Manager: Move editor's help to a separate file

Hi Ilja,
can you please move editor helptext to a file like for general help, e.g. help/editor.html ? Its a mess to have everyting in one line in lang file. BTW: where is the help displayed no ? on the edit window ...
theme_xhred_editor_help_content=
Find/Replace

 <colgroup> <col width="30%"> <col width="70%"> </colgroup>

Keypress	 Command

Ctrl + F	 Find

Ctrl + H	 Replace

Ctrl + ⇧ + R	 Replace all

Ctrl + G	 Find next

Ctrl + ⇧ +  G	 Find previous

Alt + G	 Jump to line

Text manipulation

 <colgroup> <col width="30%"> <col width="70%"> </colgroup>

Keypress	 Command

Ctrl + KU	 Transform to Uppercase

Ctrl + KL	 Transform to Lowercase

Editing

 <colgroup> <col width="30%"> <col width="70%"> </colgroup>

Keypress	 Command

Ctrl + Space	 Activate autocompletion

Ctrl + X	 Cut line

Ctrl + ⇧ + ↑	 Move line/selection up

Ctrl + ⇧ + ↓	 Move line/selection down

Ctrl + L	 Select line - Repeat to select next lines

Ctrl + D	 Select word - Repeat select others occurrences

Ctrl + M	 Jump to closing parentheses Repeat to jump to opening parentheses

Ctrl + ⇧ + M	 Select all contents of the current parentheses

Ctrl + ⇧ + K	 Delete Line

Ctrl + KK	 Delete from cursor to end of line

Ctrl + K + Backspace	 Delete from cursor to start of line

Ctrl + ⇧ + D	 Duplicate line(s)

Ctrl + J	 Join line below to the end of the current line

Ctrl + /	 Comment/un-comment current line

Ctrl + ⇧ + /	 Block comment current selection

Ctrl + Y	 Redo, or repeat last keyboard shortcut command

Ctrl + ⇧ + V	 Paste and indent correctly

Ctrl + Space	 Select next auto-complete suggestion

Ctrl + U	 soft undo; jumps to your last change before undoing change when repeated

found it, its in the dropdown, but I missed it because there is no Icon ;-)

BTW: is this correct:
Ctrl + H 	Replace
Ctrl + ⇧ + R 	Replace all

having Ctrl + R for Replace seems more consistent

Yes, even though keys are based on Sublime Text/Atom hotkeys, some of them were changed.
Maybe I will move it but not just right now.

From Atom hokeys inspired: this will also be nice:
Convert Tabs to Spaces: 	Ctrl + ⇧ + [
Convert Spaces to Tabs: 	Ctrl + ⇧ + ]

BTW: hope you can use my editor.*.html help files

hope you can use my editor.*.html help files

Not sure what you mean by work use?

in translation PR I created editor help files containing the already existing translations for editor short cuts. my hope is I have done it in the right way and you can use them for this enhancement proposal


feat: add kops 1.24 support

This PR adds kOps 1.24 support.

Anyone would be ok to test this ?
cc @argoyle ?

Of course, will test it tomorrow

Of course, will test it tomorrow

Thanks, I'll cut an alpha release tonight.

Just released v1.24.0-alpha.1.

@argoyle any chance you could give this a try ?

Sorry, other stuff got in the way yesterday and today was busy as well. Will hopefully find some time tomorrow.

Ok, tried it out now. Created a cluster using previous version of provider and tried to upgrade it and got this:
╷
│ Error: Plugin did not respond
│
│   with module.k8s.kops_cluster.k8s,
│   on ../../Opzkit/terraform-aws-k8s/k8s.tf line 20, in resource "kops_cluster" "k8s":
│   20: resource "kops_cluster" "k8s" {
│
│ The plugin encountered an error, and failed to respond to the plugin.(*GRPCProvider).UpgradeResourceState call. The plugin logs may contain more details.
╵

Stack trace from the terraform-provider-kops_v1.24.0-alpha.1 plugin:

panic: interface conversion: interface {} is string, not []interface {}

goroutine 29 [running]:
github.com/eddycharly/terraform-provider-kops/pkg/schemas/kops.ExpandResourceClusterSpec.func4.1(...)
	github.com/eddycharly/terraform-provider-kops/pkg/schemas/kops/Resource_ClusterSpec.generated.go:42
github.com/eddycharly/terraform-provider-kops/pkg/schemas/kops.ExpandResourceClusterSpec.func4({0x106787840?, 0x14000626200?})
	github.com/eddycharly/terraform-provider-kops/pkg/schemas/kops/Resource_ClusterSpec.generated.go:46 +0x110
github.com/eddycharly/terraform-provider-kops/pkg/schemas/kops.ExpandResourceClusterSpec(_)
	github.com/eddycharly/terraform-provider-kops/pkg/schemas/kops/Resource_ClusterSpec.generated.go:47 +0x150
github.com/eddycharly/terraform-provider-kops/pkg/schemas/resources.ExpandResourceCluster.func1(...)
	github.com/eddycharly/terraform-provider-kops/pkg/schemas/resources/Resource_Cluster.generated.go:143
github.com/eddycharly/terraform-provider-kops/pkg/schemas/resources.ExpandResourceCluster(_)
	github.com/eddycharly/terraform-provider-kops/pkg/schemas/resources/Resource_Cluster.generated.go:144 +0x48
github.com/eddycharly/terraform-provider-kops/pkg/schemas/resources.ResourceCluster.func3({0x0?, 0x0?}, 0x0?, {0x0?, 0x0?})
	github.com/eddycharly/terraform-provider-kops/pkg/schemas/resources/Resource_Cluster.generated.go:119 +0x30
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*GRPCProviderServer).upgradeJSONState(0x140006d0258, {0x10751c138, 0x14000b18990}, 0xd?, 0x105acfa10?, 0x14?)
	github.com/hashicorp/terraform-plugin-sdk/v2@v2.20.0/helper/schema/grpc_provider.go:449 +0xa4
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*GRPCProviderServer).UpgradeResourceState(0x140006d0258, {0x10751c138?, 0x14000b18870?}, 0x14000722a60)
	github.com/hashicorp/terraform-plugin-sdk/v2@v2.20.0/helper/schema/grpc_provider.go:325 +0x3b0
github.com/hashicorp/terraform-plugin-go/tfprotov5/tf5server.(*server).UpgradeResourceState(0x140007ac0a0, {0x10751c138?, 0x14000b07b30?}, 0x14000d32a50)
	github.com/hashicorp/terraform-plugin-go@v0.12.0/tfprotov5/tf5server/server.go:716 +0x224
github.com/hashicorp/terraform-plugin-go/tfprotov5/internal/tfplugin5._Provider_UpgradeResourceState_Handler({0x1072ca3a0?, 0x140007ac0a0}, {0x10751c138, 0x14000b07b30}, 0x14000e23b20, 0x0)
	github.com/hashicorp/terraform-plugin-go@v0.12.0/tfprotov5/internal/tfplugin5/tfplugin5_grpc.pb.go:313 +0x174
google.golang.org/grpc.(*Server).processUnaryRPC(0x14000392780, {0x107524630, 0x14000509520}, 0x140009a8900, 0x1400053f380, 0x109931100, 0x0)
	google.golang.org/grpc@v1.48.0/server.go:1295 +0x9d8
google.golang.org/grpc.(*Server).handleStream(0x14000392780, {0x107524630, 0x14000509520}, 0x140009a8900, 0x0)
	google.golang.org/grpc@v1.48.0/server.go:1636 +0x840
google.golang.org/grpc.(*Server).serveStreams.func1.2()
	google.golang.org/grpc@v1.48.0/server.go:932 +0x88
created by google.golang.org/grpc.(*Server).serveStreams.func1
	google.golang.org/grpc@v1.48.0/server.go:930 +0x298

Error: The terraform-provider-kops_v1.24.0-alpha.1 plugin crashed!

This is always indicative of a bug within the plugin. It would be immensely
helpful if you could report the crash with the plugin's maintainers so that it
can be fixed. The output above should help diagnose the issue.

Will try a fresh cluster directly with 1.24.0-alpha.1 as well.

Did you change the cloud_provider type ?

Before:
cloud_provider = "aws"
After:
  cloud_provider {
    aws {}
  }

Yes, I changed that. Creating a fresh cluster gives this for each of the instance groups:
│ Error: spec.image: Forbidden: image must be specified.
│
│   with module.k8s.kops_instance_group.masters["a"],
│   on ../../Opzkit/terraform-aws-k8s/k8s.tf line 196, in resource "kops_instance_group" "masters":
│  196: resource "kops_instance_group" "masters" {
│

Looks like the error comes from kOps, it's still optional in the provider.
Let me check id something changed on the kOps side.

I reproduced the issue, fixing. kOps has stricter validation.
This should have been catched by integration tests, i definitely need to run those tests in the CI.

v1.24.0-alpha.2 is being built, hopefully it will fix the issue :crossed_fingers:

Fresh cluster was better now. First apply failed after 20 minutes (my validate and rolling update timeout for updater), second apply showed this change for each instance group:
  # module.k8s.kops_instance_group.masters["a"] will be updated in-place
  ~ resource "kops_instance_group" "masters" {
        id                           = "k8s.xxx.se/master-eu-north-1a"
      - manager                      = "CloudGroup" -> null
        name                         = "master-eu-north-1a"
      ~ revision                     = 1 -> 2
        # (28 unchanged attributes hidden)

        # (2 unchanged blocks hidden)
    }

Had to edit the cluster autoscaler deployment to allow for spot-workers (since that is our regular setup in the Terraform modules we use) to get the cluster to become valid.
Will try an upgrade now.

Upgrade still fails with the first error I posted above (https://github.com/eddycharly/terraform-provider-kops/pull/657#issuecomment-1206359001)

Fresh cluster was better now. First apply failed after 20 minutes (my validate and rolling update timeout for updater), second apply showed this change for each instance group:

This is improving !
manager is new in 1.24, I needed to mark it as computed, fixing...

Had to edit the cluster autoscaler deployment to allow for spot-workers (since that is our regular setup in the Terraform modules we use) to get the cluster to become valid.

Was this working with 1.23 without editing the cluster autoscaler deployment ?

Upgrade still fails with the first error I posted above (https://github.com/eddycharly/terraform-provider-kops/pull/657#issuecomment-1206359001)

Humm, this happens because of the change in cloud_porivder, I need to find a way to migrate it correctly.

Cool, cluster autoscaler worked fine with spot instances in 1.23.x. It's a change in kOps that I've known about for a while but forgot about anyway. 😄

What did you have to change in the deployment to make autoscaler work ?

Ok, v1.24.0-alpha.3 is being built, it should fix the manager and upgrade issues :crossed_fingers:
Let me know how I can help with the autoscaler issue.

Running an upgrade now and it seems to run as expected now with alpha 3. Good job!
Regarding the autoscaler I just removed the affinity-block.

It's probably not a good idea to run the cluster on only spot-instances so we should probably look into reserved instances (at least as a base).

I’ll check but we should be able to use spot instances if we want to.


⚠ Bofrost.be has degraded performance

In db57d7e, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1328 ms

Resolved: Bofrost.be performance has improved in e4bd796.


Also allow unique/priority case keywords on if statements

This naively extends 00dba4c197b7e3b6c1d1f7b90ae7b1e6172b1e5f to also allow the keywords on if statements.
I'm wholeheartedly hoping the parallel_case attribute works just as well on if statements.

Thanks for the contribution @tux3. Would you be able to build a test for this please?

I don't think that actually does what it's supposed to to, because unique/unique0/priority on an if-else-if-else-if-...-else cascade should act on the whole cascade as if it's one big case statement, turning it into one big $pmux in case of unique/unique0, but what actually happens in this patch is that it only acts on the top-level mux afaict.

Ok, that sounds like something for later then =]


Kafkaspout couldn't be edited

We may not edit the Kafkaspout specifically on java code.
Researching first and if not we should make ourselves.

I just looked over Java Code Examples for storm.kafka.KafkaSpout but there is no edited KafkaSpout.

Or how about just make topology like this
trigger -> queue ⬊
status  -------------> scheduling

Okay, We gonna use Hashmap instead of Queue

Use Redis instead of concurrentHashmap


Fix python312Packages.cfn-lint (3 failing pytests)

The python312Packages.cfn-lint package is currently broken because of 3 failing pytests. Some tests are already ignored in the nixpkgs definition for this package, so I suppose we may as well ignore these 3 other tests.
This currently breaks python312Packages.tensorboardx which uses it as a dependency.
Reproducing:

Checkout the master branch of nixpkgs
Run nix build .#python312Packages.cfn-lint

No maintainer.
Things done
Added 3 tests to the ignore list.

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] 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
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.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.

Add a :+1: reaction to pull requests you find important.

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-ready-for-review/3032/4769

Temporary overlay for those who need it now:
(final: prev: {
  python312 = prev.python312.override {
    packageOverrides = final: prevPy: {

      # Temporary fix for python312Packages.cfn-lint (ignore some other tests that fail)
      cfn-lint = prevPy.cfn-lint.overridePythonAttrs (oldAttrs: {
        disabledTests = oldAttrs.disabledTests ++ [
          "test_quickstart_templates"
          "test_quickstart_templates_non_strict"
          "test_quickstart_templates_non_strict"
        ];
      });
    };
  };
  python312Packages = final.python312.pkgs;
})

An update to a later release (1.18.1) is in staging-nextnow.

An update to a later release (1.18.1) is in staging-nextnow.

Should I close this PR, then? I'll check for upcoming updates before submitting fixes next time.

Tests are passing in staging-next.

https://hydra.nixos.org/eval/1809707?filter=cfn-lint&compare=1809686&full=


The API version "2.3.45" does not match the Worker version "2.1.266

Attach (recommended) or Link to PDF file here:
Configuration:

Web browser and its version: 72.0.3626.121
Operating system and its version: Windows 10
PDF.js version:
Is a browser extension: No

Steps to reproduce the problem:

Followed the steps on readme
Installed pdfjs-dist as it was not included in node-modules

What is the expected behavior? (add screenshot)
What went wrong? (add screenshot)

When calling loadingTask.promise
Link to a viewer (if hosted on a site other than mozilla.github.io/pdf.js or as Firefox/Chrome extension):

pdfjs-dist is version 2.1.266, but the master branch clone is 2.3.45. Those two are incompatible. You should either only use pdfjs-dist or the master branch clone, but not a mix of both.

I have this issue as well, and I don't believe it has anything to do with what you're saying @timvandermeij  ....
"pdfjs-dist": "^2.4.456",
 pdfjs.GlobalWorkerOptions.workerSrc = '//mozilla.github.io/pdf.js/build/pdf.worker.js';
Please help. Working with PDFJS has been a nightmare.

Given the lack of enough details here, I'm going by what you wrote and it seems to have everything to do with what I wrote earlier because you're also mixing versions here! The error is pretty clear: you're installing pdfjs-dist version 2.4.456, but the worker you're linking to is version 2.6.140 as of writing. You should never directly link to mozilla.github.io/pdf.js since it changes on every push to master. It's not meant to be a CDN. The worker file is simply bundled in pdfjs-dist so there is not even a need to link to another source...

I appreciate the response--so what should I be referencing with pdfjs.GlobalWorkerOptions.workerSrc = ? Without it, it says
"Setting up fake worker failed: "Cannot read property 'WorkerMessageHandler' of undefined"." @timvandermeij

And when I add  pdfjs.GlobalWorkerOptions.workerSrc =  '../../../node_modules/pdfjs-dist/build/pdf.worker.js'; I get the same error...

Looking at the various examples, for example https://github.com/mozilla/pdf.js/blob/50bc4a18e8c564753365d927d5ec6a6d2cce3072/examples/components/pageviewer.js, that should be enough. Without a running example there is not much we can do to help since it may very well be caused by something else in your code. I'd suggest to try running the examples first, see if that works and go from there.

I know this issue is closed but I want to share my solution for those who have this problem.
Just clear your browser's cache [and cookies]

For me, I use CDN and found that pdfjsLib.GlobalWorkerOptions.workerSrc should be set to same version as pdf.min.js rather than //mozilla.github.io/pdf.js/build/pdf.worker.js in Examples
<script<EMAIL_ADDRESS><script>
...

// Loaded via <script> tag, create shortcut to access PDF.js exports.
var pdfjsLib = window['pdfjs-dist/build/pdf'];

// The workerSrc property shall be specified.
pdfjsLib.GlobalWorkerOptions.workerSrc =<EMAIL_ADDRESS>
...
</script>

Use the same source for both API and worker.
E.g., if your API (pdf.js) is from rawgit:

then set your worker to be from rawgit too:
window.pdfjsLib.GlobalWorkerOptions.workerSrc = '//rawgit.com/mozilla/pdf.js/gh-pages/build/pdf.worker.js';
This ensures the same version.

@hao-wang Please remove your suggestion, since it's really not a good idea nor supported in any way!

No one should be linking directly to the gh-pages branch, since it's not intended to be a CDN.
That branch changes with every merge, which means that all sorts of breakage may occur.
Users should be using official releases, as e.g. found at https://mozilla.github.io/pdf.js/getting_started/#download

You have the issue because you already have an instance for the pdfWorker created, I hade the same issue and I fixed it by adding this  globalThis.pdfjsWorker = null;  just before setting the workerSrc
Like this you will be able to create a new instance with your local file

Fix for any release. Now use pdfjs without CDN and no Worker version error anymore.
Goto: https://github.com/mozilla/pdf.js/releases
there are four files
pdfjs-2.16.105-dist.zip    5.5 MB
pdfjs-2.16.105-legacy-dist.zip    5.71 MB
Source code (zip)
Source code (tar.gz)

Download pdfjs-2.16.105-dist.zip file. Or download pdfjs-x.xx.xxx-dist.zip of the latest release.
Extract zip in any folder like /public/plugins/pdfjs-2.16.105-dist
Inside
pdfjs-2.16.105-dist.zip there are two folders (build, web)

├── pdfjs-2.16.105-dist
├── build
│   ├── pdf.js
│   └── pdf.sandbox.js
│   └── pdf.worker.js
├── web
│   ├── cmaps
│   └── images
│   └── locale
│   └── standared_fonts

We need to use js inside the build folder.

Now add pdf.worker.js path where you declared const pdfjsLib = window['pdfjs-dist/build/pdf'];
const pdfjsLib = window['pdfjs-dist/build/pdf'];

// The workerSrc property shall be specified.
pdfjsLib.GlobalWorkerOptions.workerSrc = '../../public/plugins/pdfjs-2.16.105-dist/build/pdf.worker.js';

So, now you will never face any conflict of versions. because pdf.js and pdf.worker.js are both available in pdfjs-dist directory. Or if you want to add pdfjs using CDN then check comment by chocoford.

Fix for any release. Now use pdfjs without CDN and no Worker version error anymore.
Goto: https://github.com/mozilla/pdf.js/releases
there are four files
pdfjs-2.16.105-dist.zip    5.5 MB
pdfjs-2.16.105-legacy-dist.zip    5.71 MB
Source code (zip)
Source code (tar.gz)

Download pdfjs-2.16.105-dist.zip file. Or download pdfjs-x.xx.xxx-dist.zip of the latest release.
Extract zip in any folder like /public/plugins/pdfjs-2.16.105-dist
Inside
pdfjs-2.16.105-dist.zip there are two folders (build, web)

├── pdfjs-2.16.105-dist
├── build
│   ├── pdf.js
│   └── pdf.sandbox.js
│   └── pdf.worker.js
├── web
│   ├── cmaps
│   └── images
│   └── locale
│   └── standared_fonts

We need to use js inside the build folder.

Now add pdf.worker.js path where you declared const pdfjsLib = window['pdfjs-dist/build/pdf'];
const pdfjsLib = window['pdfjs-dist/build/pdf'];

// The workerSrc property shall be specified.
pdfjsLib.GlobalWorkerOptions.workerSrc = '../../public/plugins/pdfjs-2.16.105-dist/build/pdf.worker.js';

So, now you will never face any conflict of versions. because pdf.js and pdf.worker.js are both available in pdfjs-dist directory. Or if you want to add pdfjs using CDN then check comment by chocoford.

Hi, I updated the source code following your instruction, but it can not solve my problem. Can you give me your example source code?

@hainguyenvan6799 Hi.
Here is my working Pdf.js project repo:  https://github.com/hassamulhaq/project-media

I had this issue in React, Check the worker url specified  in the worker component.
<Worker<EMAIL_ADDRESS>"pdfjs-dist": "^2.16.105",
mke sure its the same version as of package.json.  solved it for me .

I have tried to find a worker for 2 days.
Contradicting issues all the time.
react-pdf is a nightmare.

I have tried to find a worker for 2 days. Contradicting issues all the time. react-pdf is a nightmare.

see this answer, hope this helps you
https://github.com/mozilla/pdf.js/issues/17245#issuecomment-2090340040

pdfjs.GlobalWorkerOptions.workerSrc =<EMAIL_ADDRESS>"pdfjs-dist": "^2.16.105",
works for me


Badge request: FOSSA

FOSSA.io provides scanning of FOSS licenses of the project and its dependencies. It supports generating shields itself, but they're limited (no options like on shields.io). Example:
https://app.fossa.io/api/projects/git%2Bgithub.com%2FAthari%2FCsConsoleFormat.svg

https://app.fossa.io/api/projects/git%2Bgithub.com%2FAthari%2FCsConsoleFormat.svg?type=shield

There's API, but it's only available for paying Enterprise customers. However, the SVG badge itself can be parsed, I guess.

Hi! Thanks for the suggestion. Do they have a public API?

@paulmelnikow Like I said, they have:

Badge API which generates SVG containing all necessary data (I think it's either "passing" or "failing", haven't seen other statuses).
Actual API which is only available for "enterprise customers".

I emailed them asking about public API for data which is available in the form of the badge, but didn't receive a reply.

We do have code to parse the sbg badges.
For a user, would there be an advantage of our badge over theirs?

For a user, would there be an advantage of our badge over theirs?

A few minor customization options would be welcome for consistency's sake. I enjoy the flat-square style, which isn't available with FOSSA's existing badges.

This is a response that should result in a green/passing badge. But I've no idea which key is relevant and also haven't found a documentation. Have asked the support, will update the comment if I get an answer.
https://app.fossa.com/api/revisions/git%2Bgithub.com%2FAstrotomic%2Fstancy%245c224f48a8fe07f17d53af6450089fa7c93564a8

JSON Response
```json
{
    "loc":{
        "fetcher":"git",
        "package":"github.com/Astrotomic/stancy",
        "revision":"5c224f48a8fe07f17d53af6450089fa7c93564a8"
    },
    "licenses":[
        {
            "title":"MIT",
            "id":4877914,
            "licenseId":"MIT",
            "revisionId":"git+github.com/Astrotomic/stancy$5c224f48a8fe07f17d53af6450089fa7c93564a8",
            "licenseGroupId":3606614,
            "projectCorrectionId":null,
            "ignored":false,
            "url":null,
            "text":"MIT License\n\nCopyright (c) 2019 Tom Witkowski\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n",
            "copyright":"2019 Tom Witkowski",
            "file_count":4,
            "manual":false,
            "createdAt":"2019-09-24T21:42:06.050Z",
            "updatedAt":"2019-09-24T21:42:06.050Z"
        }
    ],
    "discoveredLicenses":[
],
"locator":"git+github.com/Astrotomic/stancy$5c224f48a8fe07f17d53af6450089fa7c93564a8",
"url":null,
"resolved":true,
"projectId":"git+github.com/Astrotomic/stancy",
"unsupported":false,
"source_type":"ComposerPackage",
"error":"",
"parent_locator":"git+github.com/Astrotomic/stancy$ee8619138a8d7422c765f0e256bebbe8769ec44a",
"attribution_file":null,
"transitive_excludes":[

],
"author":"GitHub<EMAIL_ADDRESS>"message":"does not work",
"revision_timestamp":"2019-09-24 21:37:31.000 +00:00",
"all_origin_paths":[
    "laravel-framework-372e0ad/src/Illuminate/Config/composer.json",
    "illuminate-bus-9ea8830/composer.json",
    "illuminate-mail-5cb31d1/composer.json",
    "spatie-laravel-sitemap-d234204/composer.json",
    "illuminate-events-3762761/composer.json",
    "illuminate-auth-1711604/composer.json",
    "spatie-sheets-14d900f/composer.json",
    "illuminate-database-bb4dc8d/composer.json",
    "illuminate-broadcasting-f5a970e/composer.json",
    "illuminate-pipeline-0d2193f/composer.json",
    "spatie-laravel-view-models-9eeaa79/composer.json",
    "illuminate-translation-897bb69/composer.json",
    "illuminate-filesystem-bf9ad9d/composer.json",
    "illuminate-console-db17810/composer.json",
    "illuminate-container-d6d5358/composer.json",
    "illuminate-queue-5e667f0/composer.json",
    "composer.json",
    "illuminate-session-5587614/composer.json",
    "illuminate-http-c78762e/composer.json",
    "illuminate-view-727708a/composer.json",
    "spatie-laravel-menu-999ceeb/composer.json",
    "spatie-laravel-export-c10aebb/composer.json",
    "."
],
"license_count":9,
"dependency_count":91,
"todo_count":7,
"unresolved_issue_count":0,
"dependency_cache_valid":"2019-09-24T21:42:54.777Z",
"dependency_cache_updated":"2019-09-24T21:42:54.777Z",
"package_cache_error":null,
"integration_hook_status":"COMPLETE",
"integration_hook_updated_at":"2019-09-24T21:42:48.667Z",
"link":null,
"declaredLicense":"MIT",
"latestRevisionScanId":1223236,
"createdAt":"2019-09-24T21:37:32.789Z",
"updatedAt":"2019-09-25T07:54:49.771Z",
"meta":[
    {
        "organizationId":1390,
        "revisionId":"git+github.com/Astrotomic/stancy$5c224f48a8fe07f17d53af6450089fa7c93564a8",
        "last_scan":"2019-09-24T21:42:43.780Z",
        "to_scan":null,
        "createdAt":"2019-09-24T21:42:35.038Z",
        "updatedAt":"2019-09-24T21:42:43.780Z"
    }
],
"project":{
    "title":"stancy",
    "description":"🚧 WIP",
    "locator":"git+github.com/Astrotomic/stancy",
    "url":"https://github.com/Astrotomic/stancy",
    "public":true,
    "browsing_access_level":"common",
    "browsing_access_depth":5,
    "transitive_excludes":[

    ],
    "project_scopes":[
        "compile",
        "runtime"
    ],
    "organizationId":1390,
    "bom_column_settings":[

    ],
    "default_branch":"master",
    "scan_mediated_dependencies":true,
    "require_mediated_dependencies":false,
    "authors":[
<EMAIL_ADDRESS>    ],
    "projectCorrection":null
},
"isSteady":true,
"revisionScans":[
    {
        "id":1223236,
        "scanned_at":"2019-09-24T21:42:43.532Z",
        "organizationId":1390,
        "revisionId":"git+github.com/Astrotomic/stancy$5c224f48a8fe07f17d53af6450089fa7c93564a8",
        "policyMeta":{
            "licensing":{
                "title":"Standard Bundle Distribution",
                "default_action":"APPROVE",
                "rules":[
                    {
                        "action":"APPROVE",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"Apache-1.1",
                        "notes":"Permissive license which is perfectly safe to use provided proper attribution is given and retained.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"FLAG",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"GPL-2.0-only",
                        "notes":"These packages contain code files that may require you to disclose your source code under a compatible license, unless they’re distributed and run as completely separate processes & packages.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"APPROVE",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"EPL-1.0",
                        "notes":"Safe if code isn’t modified and notice requirements are followed. Otherwise, you must state and disclose the source code of modifications/derivative works.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"APPROVE",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"ZPL-2.0",
                        "notes":"Permissive license which is perfectly safe to use provided proper attribution is given and retained.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"APPROVE",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"ZPL-1.1",
                        "notes":"Permissive license which is perfectly safe to use provided proper attribution is given and retained.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"FLAG",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"GPL-3.0-with-GCC-exception",
                        "notes":"Safe to include or link in an executable provided that source availability/attribution requirements are followed.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"FLAG",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"LGPL-2.1-only",
                        "notes":"Requires you to (effectively) disclose your source code if the library is statically linked to your project. Not triggered if dynamically linked or a separate process.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"APPROVE",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"UPL-1.0",
                        "notes":"A highly permissive license similar to the MIT License with added features including an explicit patent grant, clear ability to relicense (to commercial, proprietary, copyleft or etc...) and usable as a CLA.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"FLAG",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"GPL-2.0-with-classpath-exception",
                        "notes":"Safe to include or link in an executable provided that source availability/attribution requirements are followed.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"APPROVE",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"W3C",
                        "notes":"Permissive license which is perfectly safe to use provided proper attribution is given and retained.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"FLAG",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"GPL-3.0-only",
                        "notes":"These packages contain code files that may require you to disclose your source code under a compatible license, unless they’re distributed and run as completely separate processes & packages.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"APPROVE",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"Zlib",
                        "notes":"Permissive license which is perfectly safe to use provided proper attribution is given and retained.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"DENY",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"SimPL-2.0",
                        "notes":"SimPL requires you to disclose the source code of “derivative” works (similar to GPL). Due to the ambiguity of what triggers a “derivative” work, we by default deny SimPL.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"APPROVE",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"BSD-3-Clause",
                        "notes":null,
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"APPROVE",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"BSD-2-Clause",
                        "notes":"Permissive license which is perfectly safe to use provided proper attribution is given and retained.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"APPROVE",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"BSL-1.0",
                        "notes":"Permissive license which is perfectly safe to use provided proper attribution is given and retained.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"APPROVE",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"MPL-1.1",
                        "notes":"Safe if code isn’t modified and notice requirements are followed. Otherwise, you must state and disclose the source code of modifications/derivative works.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"APPROVE",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"ISC",
                        "notes":"Permissive license which is perfectly safe to use provided proper attribution is given and retained.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"FLAG",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"LGPL-3.0-only",
                        "notes":"Requires you to (effectively) disclose your source code if the library is statically linked to your project. Not triggered if dynamically linked or a separate process.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"FLAG",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"AGPL-3.0-only",
                        "notes":"These packages contain code files that may require you to disclose your source code under a compatible license, unless they’re distributed and run as completely separate processes & packages. AGPL also contains provisions requiring delivery of installation information for consumer devices (which may be inconsistent with use in closed systems).",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"APPROVE",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"Python-2.0",
                        "notes":"Permissive license which is perfectly safe to use provided proper attribution is given and retained.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"APPROVE",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"PDDL-1.0",
                        "notes":"Permissive license which is perfectly safe to use provided proper attribution is given and retained.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"FLAG",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"MS-RL",
                        "notes":"Safe if code isn’t modified and notice requirements are followed. Otherwise, you must state and disclose the source code of modifications/derivative works.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"APPROVE",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"CDDL-1.0",
                        "notes":"Safe if code isn’t modified and notice requirements are followed. Otherwise, you must state and disclose the source code of modifications/derivative works.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"FLAG",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"CPOL-1.02",
                        "notes":"You cannot use the package for “illegal, immoral or improper purposes” or “distribute the Executable Files or Source Code with any technological measures that control access or use of the Work in a manner inconsistent with the terms of this License” (which may be inconsistent with delivery in closed systems) and you must “ensure that anyone receiving such Executable Files and Source Code agrees that the terms of this License apply to such Executable Files and/or Source Code” (which requires an assent mechanism).",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"APPROVE",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"ZPL-2.1",
                        "notes":"Permissive license which is perfectly safe to use provided proper attribution is given and retained.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"APPROVE",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"AFL-3.0",
                        "notes":"Permissive license which is perfectly safe to use provided proper attribution is given and retained.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"APPROVE",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"MPL-2.0",
                        "notes":"Safe if code isn’t modified and notice requirements are followed. Otherwise, you must state and disclose the source code of modifications/derivative works.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"APPROVE",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"MIT",
                        "notes":"Permissive license which is perfectly safe to use provided proper attribution is given and retained.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"APPROVE",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"WTFPL",
                        "notes":"Permissive license which is perfectly safe to use provided proper attribution is given and retained.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"APPROVE",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"ClArtistic",
                        "notes":"Safe if code isn’t modified and notice requirements are followed. Otherwise, you must state and disclose the source code of modifications/derivative works.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"APPROVE",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"Artistic-2.0",
                        "notes":"Safe if code isn’t modified and notice requirements are followed. Otherwise, you must state and disclose the source code of modifications/derivative works.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"APPROVE",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"Artistic-2.0",
                        "notes":"Permissive license which is perfectly safe to use provided proper attribution is given and retained.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"FLAG",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"Artistic-1.0",
                        "notes":"Safe if code isn’t modified and notice requirements are followed. Otherwise, you must state and disclose the source code of modifications/derivative works.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    },
                    {
                        "action":"APPROVE",
                        "target":"license",
                        "targetId":null,
                        "licenseId":"Apache-2.0",
                        "notes":"Permissive license which is perfectly safe to use provided proper attribution is given and retained.",
                        "depthCondition":null,
                        "nameCondition":null,
                        "linkingCondition":null,
                        "minimumPriority":null,
                        "maximumPriority":null
                    }
                ]
            }
        },
        "createdAt":"2019-09-24T21:42:43.000Z",
        "updatedAt":"2019-09-24T21:42:43.000Z"
    }
],
"issues":[
    {
        "humanReadableType":"flagged project",
        "priorityString":"low",
        "type":"policy_flag",
        "resolved":false,
        "parents":[
            {
                "locator":"git+github.com/Astrotomic/stancy",
                "IssueProject":{
                    "resolved":true
                }
            }
        ],
        "RevisionScanIssue":{
            "revisionScanId":1223236,
            "issueId":240367,
            "createdAt":"2019-09-24T21:42:43.000Z",
            "updatedAt":"2019-09-24T21:42:43.000Z"
        }
    },
    {
        "humanReadableType":"flagged project",
        "priorityString":"low",
        "type":"policy_flag",
        "resolved":false,
        "parents":[
            {
                "locator":"git+github.com/Astrotomic/stancy",
                "IssueProject":{
                    "resolved":true
                }
            }
        ],
        "RevisionScanIssue":{
            "revisionScanId":1223236,
            "issueId":240368,
            "createdAt":"2019-09-24T21:42:43.000Z",
            "updatedAt":"2019-09-24T21:42:43.000Z"
        }
    }
],
"unresolved_issue_counts":{

},
"dependencies":[
    {
        "loc":{
            "fetcher":"comp",
            "package":"spatie/sheets",
            "revision":"1.3.3"
        },
        "licenses":[

        ],
        "discoveredLicenses":[

        ],
        "locator":"comp+spatie/sheets$1.3.3",
        "resolved":true,
        "parent_locator":"comp+spatie/sheets$1.3.2",
        "project":{
            "locator":"comp+spatie/sheets",
            "title":"spatie/sheets",
            "organizationId":null,
            "url":"https://github.com/spatie/sheets",
            "description":"Store & retrieve your static content in plain text files"
        },
        "Dependency":{
            "manual":false,
            "parent":"git+github.com/Astrotomic/stancy$5c224f48a8fe07f17d53af6450089fa7c93564a8",
            "child":"comp+spatie/sheets$1.3.3",
            "unresolved_locator":"comp+spatie/sheets$^1.3.3",
            "origin_paths":[
                "composer.json"
            ],
            "optional":false,
            "transitive_excludes":[

            ],
            "tags":[

            ],
            "is_submodule":false,
            "createdAt":"2019-09-24T21:42:05.859Z",
            "updatedAt":"2019-09-24T21:42:05.859Z"
        },
        "origin_paths":[
            "composer.json"
        ],
        "optional":false,
        "manual":false
    },
    {
        "loc":{
            "fetcher":"comp",
            "package":"spatie/schema-org",
            "revision":"2.3.0"
        },
        "licenses":[

        ],
        "discoveredLicenses":[

        ],
        "locator":"comp+spatie/schema-org$2.3.0",
        "resolved":true,
        "parent_locator":"comp+spatie/schema-org$2.2.1",
        "project":{
            "locator":"comp+spatie/schema-org",
            "title":"spatie/schema-org",
            "organizationId":null,
            "url":"https://github.com/spatie/schema-org",
            "description":"A fluent builder Schema.org types and ld+json generator"
        },
        "Dependency":{
            "manual":false,
            "parent":"git+github.com/Astrotomic/stancy$5c224f48a8fe07f17d53af6450089fa7c93564a8",
            "child":"comp+spatie/schema-org$2.3.0",
            "unresolved_locator":"comp+spatie/schema-org$^2.3",
            "origin_paths":[
                "composer.json"
            ],
            "optional":false,
            "transitive_excludes":[

            ],
            "tags":[

            ],
            "is_submodule":false,
            "createdAt":"2019-09-24T21:42:05.859Z",
            "updatedAt":"2019-09-24T21:42:05.859Z"
        },
        "origin_paths":[
            "composer.json"
        ],
        "optional":false,
        "manual":false
    },
    {
        "loc":{
            "fetcher":"comp",
            "package":"spatie/laravel-view-models",
            "revision":"1.2.0"
        },
        "licenses":[

        ],
        "discoveredLicenses":[

        ],
        "locator":"comp+spatie/laravel-view-models$1.2.0",
        "resolved":true,
        "parent_locator":"comp+spatie/laravel-view-models$1.1.1",
        "project":{
            "locator":"comp+spatie/laravel-view-models",
            "title":"spatie/laravel-view-models",
            "organizationId":null,
            "url":"https://github.com/spatie/laravel-view-models",
            "description":"View models in Laravel"
        },
        "Dependency":{
            "manual":false,
            "parent":"git+github.com/Astrotomic/stancy$5c224f48a8fe07f17d53af6450089fa7c93564a8",
            "child":"comp+spatie/laravel-view-models$1.2.0",
            "unresolved_locator":"comp+spatie/laravel-view-models$^1.2",
            "origin_paths":[
                "composer.json"
            ],
            "optional":false,
            "transitive_excludes":[

            ],
            "tags":[

            ],
            "is_submodule":false,
            "createdAt":"2019-09-24T21:42:05.859Z",
            "updatedAt":"2019-09-24T21:42:05.859Z"
        },
        "origin_paths":[
            "composer.json"
        ],
        "optional":false,
        "manual":false
    },
    {
        "loc":{
            "fetcher":"comp",
            "package":"spatie/laravel-sitemap",
            "revision":"5.5.0"
        },
        "licenses":[

        ],
        "discoveredLicenses":[

        ],
        "locator":"comp+spatie/laravel-sitemap$5.5.0",
        "resolved":true,
        "parent_locator":"comp+spatie/laravel-sitemap$5.4.0",
        "project":{
            "locator":"comp+spatie/laravel-sitemap",
            "title":"spatie/laravel-sitemap",
            "organizationId":null,
            "url":"https://github.com/spatie/laravel-sitemap",
            "description":"Create and generate sitemaps with ease"
        },
        "Dependency":{
            "manual":false,
            "parent":"git+github.com/Astrotomic/stancy$5c224f48a8fe07f17d53af6450089fa7c93564a8",
            "child":"comp+spatie/laravel-sitemap$5.5.0",
            "unresolved_locator":"comp+spatie/laravel-sitemap$^5.4",
            "origin_paths":[
                "composer.json"
            ],
            "optional":false,
            "transitive_excludes":[

            ],
            "tags":[

            ],
            "is_submodule":false,
            "createdAt":"2019-09-24T21:42:05.859Z",
            "updatedAt":"2019-09-24T21:42:05.859Z"
        },
        "origin_paths":[
            "composer.json"
        ],
        "optional":false,
        "manual":false
    },
    {
        "loc":{
            "fetcher":"comp",
            "package":"spatie/laravel-menu",
            "revision":"3.4.0"
        },
        "licenses":[

        ],
        "discoveredLicenses":[

        ],
        "locator":"comp+spatie/laravel-menu$3.4.0",
        "resolved":true,
        "parent_locator":"comp+spatie/laravel-menu$3.3.1",
        "project":{
            "locator":"comp+spatie/laravel-menu",
            "title":"spatie/laravel-menu",
            "organizationId":null,
            "url":"https://github.com/spatie/laravel-menu",
            "description":"Html menu generator for Laravel"
        },
        "Dependency":{
            "manual":false,
            "parent":"git+github.com/Astrotomic/stancy$5c224f48a8fe07f17d53af6450089fa7c93564a8",
            "child":"comp+spatie/laravel-menu$3.4.0",
            "unresolved_locator":"comp+spatie/laravel-menu$^3.4",
            "origin_paths":[
                "composer.json"
            ],
            "optional":false,
            "transitive_excludes":[

            ],
            "tags":[

            ],
            "is_submodule":false,
            "createdAt":"2019-09-24T21:42:05.858Z",
            "updatedAt":"2019-09-24T21:42:05.858Z"
        },
        "origin_paths":[
            "composer.json"
        ],
        "optional":false,
        "manual":false
    },
    {
        "loc":{
            "fetcher":"comp",
            "package":"spatie/laravel-feed",
            "revision":"2.4.1"
        },
        "licenses":[

        ],
        "discoveredLicenses":[

        ],
        "locator":"comp+spatie/laravel-feed$2.4.1",
        "resolved":true,
        "parent_locator":"comp+spatie/laravel-feed$2.4.0",
        "project":{
            "locator":"comp+spatie/laravel-feed",
            "title":"spatie/laravel-feed",
            "organizationId":null,
            "url":"https://github.com/spatie/laravel-feed",
            "description":"Generates rss feed"
        },
        "Dependency":{
            "manual":false,
            "parent":"git+github.com/Astrotomic/stancy$5c224f48a8fe07f17d53af6450089fa7c93564a8",
            "child":"comp+spatie/laravel-feed$2.4.1",
            "unresolved_locator":"comp+spatie/laravel-feed$^2.4",
            "origin_paths":[
                "composer.json"
            ],
            "optional":false,
            "transitive_excludes":[

            ],
            "tags":[

            ],
            "is_submodule":false,
            "createdAt":"2019-09-24T21:42:05.858Z",
            "updatedAt":"2019-09-24T21:42:05.858Z"
        },
        "origin_paths":[
            "composer.json"
        ],
        "optional":false,
        "manual":false
    },
    {
        "loc":{
            "fetcher":"comp",
            "package":"spatie/laravel-blade-x",
            "revision":"2.3.0"
        },
        "licenses":[

        ],
        "discoveredLicenses":[

        ],
        "locator":"comp+spatie/laravel-blade-x$2.3.0",
        "resolved":true,
        "parent_locator":"comp+spatie/laravel-blade-x$2.2.3",
        "project":{
            "locator":"comp+spatie/laravel-blade-x",
            "title":"spatie/laravel-blade-x",
            "organizationId":null,
            "url":"https://github.com/spatie/laravel-blade-x",
            "description":"Supercharged Blade components"
        },
        "Dependency":{
            "manual":false,
            "parent":"git+github.com/Astrotomic/stancy$5c224f48a8fe07f17d53af6450089fa7c93564a8",
            "child":"comp+spatie/laravel-blade-x$2.3.0",
            "unresolved_locator":"comp+spatie/laravel-blade-x$^2.3",
            "origin_paths":[
                "composer.json"
            ],
            "optional":false,
            "transitive_excludes":[

            ],
            "tags":[

            ],
            "is_submodule":false,
            "createdAt":"2019-09-24T21:42:05.858Z",
            "updatedAt":"2019-09-24T21:42:05.858Z"
        },
        "origin_paths":[
            "composer.json"
        ],
        "optional":false,
        "manual":false
    },
    {
        "loc":{
            "fetcher":"comp",
            "package":"spatie/laravel-export",
            "revision":"0.1.5"
        },
        "licenses":[

        ],
        "discoveredLicenses":[

        ],
        "locator":"comp+spatie/laravel-export$0.1.5",
        "resolved":true,
        "parent_locator":"comp+spatie/laravel-export$0.1.4",
        "project":{
            "locator":"comp+spatie/laravel-export",
            "title":"spatie/laravel-export",
            "organizationId":null,
            "url":"https://github.com/spatie/laravel-export",
            "description":"Create a static site bundle from a Laravel app"
        },
        "Dependency":{
            "manual":false,
            "parent":"git+github.com/Astrotomic/stancy$5c224f48a8fe07f17d53af6450089fa7c93564a8",
            "child":"comp+spatie/laravel-export$0.1.5",
            "unresolved_locator":"comp+spatie/laravel-export$^0.1.5",
            "origin_paths":[
                "composer.json"
            ],
            "optional":false,
            "transitive_excludes":[

            ],
            "tags":[

            ],
            "is_submodule":false,
            "createdAt":"2019-09-24T21:42:05.858Z",
            "updatedAt":"2019-09-24T21:42:05.858Z"
        },
        "origin_paths":[
            "composer.json"
        ],
        "optional":false,
        "manual":false
    },
    {
        "loc":{
            "fetcher":"comp",
            "package":"illuminate/support",
            "revision":"v6.0.4"
        },
        "licenses":[

        ],
        "discoveredLicenses":[

        ],
        "locator":"comp+illuminate/support$v6.0.4",
        "resolved":true,
        "parent_locator":"comp+illuminate/support$v6.0.3",
        "project":{
            "locator":"comp+illuminate/support",
            "title":"illuminate/support",
            "organizationId":null,
            "url":"https://laravel.com",
            "description":"The Illuminate Support package."
        },
        "Dependency":{
            "manual":false,
            "parent":"git+github.com/Astrotomic/stancy$5c224f48a8fe07f17d53af6450089fa7c93564a8",
            "child":"comp+illuminate/support$v6.0.4",
            "unresolved_locator":"comp+illuminate/support$^6.0",
            "origin_paths":[
                "composer.json"
            ],
            "optional":false,
            "transitive_excludes":[

            ],
            "tags":[

            ],
            "is_submodule":false,
            "createdAt":"2019-09-24T21:42:05.858Z",
            "updatedAt":"2019-09-24T21:42:05.858Z"
        },
        "origin_paths":[
            "composer.json"
        ],
        "optional":false,
        "manual":false
    },
    {
        "loc":{
            "fetcher":"comp",
            "package":"spatie/data-transfer-object",
            "revision":"1.9.0"
        },
        "licenses":[

        ],
        "discoveredLicenses":[

        ],
        "locator":"comp+spatie/data-transfer-object$1.9.0",
        "resolved":true,
        "parent_locator":"comp+spatie/data-transfer-object$1.8.0",
        "project":{
            "locator":"comp+spatie/data-transfer-object",
            "title":"spatie/data-transfer-object",
            "organizationId":null,
            "url":"https://github.com/spatie/data-transfer-object",
            "description":"Data transfer objects with batteries included"
        },
        "Dependency":{
            "manual":false,
            "parent":"git+github.com/Astrotomic/stancy$5c224f48a8fe07f17d53af6450089fa7c93564a8",
            "child":"comp+spatie/data-transfer-object$1.9.0",
            "unresolved_locator":"comp+spatie/data-transfer-object$^1.9",
            "origin_paths":[
                "composer.json"
            ],
            "optional":false,
            "transitive_excludes":[

            ],
            "tags":[

            ],
            "is_submodule":false,
            "createdAt":"2019-09-24T21:42:05.858Z",
            "updatedAt":"2019-09-24T21:42:05.858Z"
        },
        "origin_paths":[
            "composer.json"
        ],
        "optional":false,
        "manual":false
    }
]

}
</details>

I guess it's the unresolved_issue_count field that determines whether a scan is passing.
I'm willing to contribute a pr if this solution is acceptable.

FOSSA.io provides scanning of FOSS licenses of the project and its dependencies. It supports generating shields itself, but they're limited (no options like on shields.io). Example:
https://app.fossa.io/api/projects/git%2Bgithub.com%2FAthari%2FCsConsoleFormat.svg

https://app.fossa.io/api/projects/git%2Bgithub.com%2FAthari%2FCsConsoleFormat.svg?type=shield

There's API, but it's only available for paying Enterprise customers. However, the SVG badge itself can be parsed, I guess.

👋


Feature request - allow listening port to be changed using environment

We run multiple ES nodes on a single physical machine using --network host.  Only one of the nodes can bind to port 9600 at a time, so we need an easy way to change the listening port in our docker-compose file.  It would be nice if we could do something like this:
services:
  es00:
    image: amazon/opendistro-for-elasticsearch:0.8.0
    container_name: es00
    environment:
      - http.port=9200
      - node.data=true
      - node.master=false
      - plugin.performance-analyzer.webservice-listener-port=9600
    network_mode: host
  es01:
    image: amazon/opendistro-for-elasticsearch:0.8.0
    container_name: es01
    environment:
      - http.port=9201
      - node.data=true
      - node.master=false
      - plugin.performance-analyzer.webservice-listener-port=9601
    network_mode: host

Hi @MattCarothers,
Can you elaborate on your specific use case? Specifically, what's your use case for host network and ports?
Thanks

We run multiple ES nodes on multiple physical machines.  It's difficult to get ES nodes to communicate with each other through docker NAT, so we use --network host instead.  That means only one of the nodes can bind to port 9600.


Getting value BigNumeric is throwing error

Hello , Everyone
I'm using:
dot net core 5.0
Google.Apis.Bigquery.v2.Data;
Google.Cloud.BigQuery.V2;
I'm getting error only on types BIGNUMERIC, with other types its ok.
My code is:
PagedEnumerable<TableDataList, BigQueryRow> result = tabela.ListRows();
            foreach (BigQueryRow row in result)
            {

                Dictionary<string, object> dic = new();

                foreach (var col in row.Schema.Fields)
                {
                    //If I remove the comment below, the code will throw this error: 'Value BIGNUMERIC is undefined in BigQueryDbType Arg_ParamName_Name'
                    //if(col.Name != "Id")
                    dic.Add(col.Name, row[col.Name]);
                }

                string json = JsonConvert.SerializeObject(dic);
                BigTableViewModel vm = JsonConvert.DeserializeObject<BigTableViewModel>(json);

                listVM.Add(vm);
            }`

Amanda, can you look at this tomorrow?

(It's unclear why you're converting to JSON and back though, and it would help if you'd show the schema and the full stack trace - basically, we need to be able to reproduce the issue.)

My class :
public class BigTableViewModel
   {
       [Required]
       public long id { get; set; }

       [Required]
       [StringLength(3)]
       public string clientCode{ get; set; }

       [StringLength(255)]
       public string clientName{ get; set; }
}

And my schema is :

"schema": {
    "fields": [
      {
        "name": "Id",
        "type": "BIGNUMERIC",
        "mode": "REQUIRED"
      },
{
        "name": "clientCode",
        "type": "STRING",
        "mode": "REQUIRED"
      },
{
        "name": "clientName",
        "type": "STRING",
        "mode": "NULLABLE"
      }
    ]
  }

I can't check right now (on mobile and on vacation) but I suspect your type should just be NUMERIC rather than BIGNUMERIC. That's what the enum expects, at least.

Ah, I see BIGNUMERIC is an alias for BIGDECIMAL. I believe we don't support that at the moment.

Ok, I understand.
So, I have a question, the type Numeric is big as the type long on C#?

Numeric is significantly larger than long.

Thanks, I think its better for me.


refactor: use argpase as opposed to sys.argv

Currently the read_cmd_args function uses sys.argv to parse command line arguments. This comes with many improvements over traditional sys.argv such as auto-generated help and usage messages. Also, instead of returning a n-tuple from the read_cmd_args function we can return a indexable object.

Do you want to propose a PR for this @SauravMaheshkar ?  Then @BienfaitKI can see what you're suggesting would look like.  (It sounds like a good idea to me - the argparse package is a really useful one.)
Or maybe someone else would like to pick it up?  Being familiar with the use of argparse in Python will come in handy for many future projects.

Or maybe someone else would like to pick it up? Being familiar with the use of argparse in Python will come in handy for many future projects.

Sure will open a PR in a bit


Is material_icons from https://www.google.com/design/icons/? home-outline is missing

Hi, first, thanks a lot for this project.
In the Readme, it says this project it's inspired by react-native-vector-icons.
And then I checked https://github.com/oblador/react-native-vector-icons, it says MaterialIcons is from https://www.google.com/design/icons/.
Then I checked https://www.google.com/design/icons/, it redirects to https://material.io/tools/icons/.
Then I searched for home-outline icon, I found the result at https://material.io/tools/icons/?search=home&style=outline.
BUT from the latest project code flutter-icons/lib/material_icons.dart, I can not find home-outline at all.
Thanks.

Hi, I just figured out https://github.com/flutter-studio/flutter-icons/blob/master/fonts/MaterialIcons.ttf is from https://github.com/oblador/react-native-vector-icons/blob/master/Fonts/MaterialIcons.ttf which is from https://github.com/google/material-design-icons/blob/master/iconfont/MaterialIcons-Regular.ttf.
The three font files are identical. But I have no ideas why the official git repo has outdated font file which is different from the official https://material.io/tools/icons/ site. Weird.

OK..
I found https://github.com/google/material-design-icons/issues/927 and https://github.com/google/material-design-icons/issues/786.
I really like the current https://material.io/tools/icons... What a pity!


Add Support for Full Regex Filename Replacement

Why? So you can create test files for .vue files with a pattern something like file-name.vue -> file-name.vue.test.js
This requires changing the stock settings config to support a filename transformer and replacement.
e.g.
"createTestFile.nameTemplate": "{filename}.test"
would need to become
"createTestFile.namePattern": "(.*)"
"createTestFile.nameReplacePattern": "$1.test.js"

I'm downgrading this feature to only support replacing the filename extension location as the full regex support ends up being very complex, and potentially doesn't add much over simply specifying the extension location.
"createTestFile.namePattern": "{filename}_spec.{extension}"

An alternate future approach could include a custom pattern for mutation the extension or filename.
e.g.
"createTestFile.namePattern": "{filename}_spec.{extension}"
"createTestFile.extensionMaps": [
   {
      "pattern": "(.html)(.erb)",
      "replacement": "$1"
    }
]

Which would take a some_file.html.erb and return some_file_spec.html


add education menu

Add education tab to top-level menu.

Looks good and links are good, in Firefox and Chrome.


Add examples for interfacing with cairo-rs (Cleopatra)

@xJonathanLEI hi, i wonder if this will wrap cairo-rs and turn it into a Rust devnet, or is Cleopatra going to offer that API already?

Hi. I'm not sure if I'm understanding what you want correctly, but starknet-rs isn't a sequencer implementation, but rather a client library which interfaces with such an implementation. It's indeed possible to wrap cairo-rs (or any other Cairo VM implementation) to create a devnet or even a full sequencer, but I doubt starknet-rs would be of any help.

sorry, yes i am aware of the role of starknet-rs (i.e. ethers for starknet), I am wondering if cairo-rs is going to expose a devnet/node or if it can already do that, so that we won't have to rely on the Python starknet-devnet flask server

Closing this as it looks like nothing can be done from our side.


Can't upload cookbook with knife

Description
When I try to upload the berkshelf-api-server cookbook to my chef org after downloading it with berkshelf3 (knife cookbook upload berkshelf-2.0.0 -o ~/.berkshelf/cookbooks) I get an error: "ERROR: LoadError: cannot load such file -- berkshelf/api/version". This is because berkshelf-api gem is not installed. We're doing this outside of ChefDK in an rvm gemset with a tool that uses Chef::Cookbook::CookbookVersionLoader to do the heavy lifting for some orchestration of other "unchefly" things.
The big questions here are:

Are you aware of any issues this may be causing with other tools which are not berkshelf, like knife, and is it intentional?
Is it somehow philosophically wrong for our tool, which muchly parallels berks upload in this instance, to just read metadata.json even if a metadata.rb is there?
Should I be getting metadata.rb in addition to metadata.json when I download berkshelf-api-server from Supermarket with berkshelf?

Versions

berkshelf-api-server 2.0.0
berkshelf 3.1.3
Chef 11.6.2

Steps to reproduce

Create a new RVM gemset (deliberately work outside of ChefDK and don't install berkshelf-api)
Install berkshelf
Set up your Berksfile to have sources from "https://supermarket.getchef.com", "https://api.berkshelf.com", and metadata.
Download berkshelf-api-server 2.0.0 cookbook with berkshelf3; I made a wrapper cookbook which depends on berkshelf-api-server ~> 2.0.0.
Upload it to your favorite chef org using knife cookbook upload berkshelf-2.0.0 -o ~/.berkshelf/cookbooks

Expected Behavior
I expect knife cookbook upload to parse metadata (.rb or .json--I don't care but am curious to know what the official source of truth should be--is it .json?)
Actual Behavior
Knife fails to upload the cookbook because it cannot parse the version in ~/.berkshelf/cookbooks/berkshelf-api-server-2.0.0/metadata.rb
ERROR: LoadError: cannot load such file -- berkshelf/api/version
Workarounds
berks upload is a workaround for now. We generally don't like to shell out and want to implement finer control over which cookbooks get uploaded.
Another workaround is to install berkshelf-api gem but I fear this will get out of sync with what the version should really be in berkshelf-api-cookbook's metadata.rb.
A third workaround is to have our nifty ltitle tool just read the metadata.json and skip metadata.rb (but, is this wrong?).

Thanks!

I had the same error because 'name' in metadata.rb was different for cookbook. Name was ignored by knife 11, but knife 12 had this issue.


Provide bilingual versions of documents in Chinese and English

We're using readthedocs.org to publish the document of sphinx-intl. So Chinese document should be also published via readthedocs.org. Please let me know if you have a translated document. I'll connect your project as a Chinese version from official document.

See daobook/sphinx-intl: Sphinx utility that make it easy to translate and to apply translation. (中文) (github.com)
------------------ 原始邮件 ------------------
发件人: "Takeshi @.>;
发送时间: 2021年12月18日(星期六) 中午1:58
收件人: @.>;
抄送: @.>; "State @.>;
主题: Re: [sphinx-doc/sphinx-intl] Provide bilingual versions of documents in Chinese and English (PR #59)
We're using readthedocs.org to publish the document of sphinx-intl. So Chinese document should be also published via readthedocs.org. Please let me know if you have a translated document. I'll connect your project as a Chinese version from official document.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.
You are receiving this because you modified the open/close state.Message ID: @.***>

See https://github.com/daobook/sphinx-intl and https://daobook.github.io/sphinx-intl/zh-CN/

Could you publish it on readthedocs instead of GitHub Pages?

Read the docs integration has been completed.

Thanks!
Could you add me and @shimizukawa  as maintainers of the project on the readthedocs?
Usernames are tk0miya (https://readthedocs.org/profiles/tk0miya/) and shimizukawa (https://readthedocs.org/profiles/shimizukawa/)

Adding maintainers has been completed.

Thanks! I conneted your translations from https://sphinx-intl.readthedocs.io/en/master/.
"zh_CN" is added to the language select now!

Thank you for your contribution!


[Configuration] Make *_key_path config options not mandatory

Since we want to integrate different bridges of JW* libraries, the *_key_path options should not be mandatory anymore, because some of their libraries (especially https://github.com/spomky-labs/lexik-jose-bridge) doesn't need this to be configured.
@Spomky, you worked on this in #195 (partially), sorry for that, we will profit of this change to perform some checks (key files existence) via config validation. Let me know what do you think.

Looks good.
Just a question: is it relevant to check again the path in the KeyLoader class? It is already checked if the Configuration class.

Thank you for reviewing it.

It is already checked if the Configuration class.

I hesitated to remove this additional check and I understand it doesn't feel relevant, but I thought it is preferable to keep it, in order to prevent the case of this value is overridden by the end user or some other edge cases of this kind. WDYT?

OK it makes sense.


Add support for zarr 2 with / dimension separator

When I wrote this I didn't even know that was possible :(

Added with the PackedName refactor


fix: injected connector throws error after switching to a chain that was just added via 'wallet_addEthereumChain'.

Fixes the same issue encountered in #4227 and #4223 where the connector throws an error after switching to a chain that was just added via 'wallet_addEthereumChain' but for the injected connector.

Not able to reproduce this issue anymore. If you can supply a reproduction, happy to work on merging this.

@tmm hey, the issue is still there.
https://codesandbox.io/p/sandbox/wagmi-switchchain-forked-47mx8q
Steps

Make sure BSC is not added to MetaMask
Switch to Ethereum in MetaMask
Connect and try to switch to BSC

Code that fails
const switchedChain = await switchChain(config, {
  chainId: chain.id,
});
const client = await getConnectorClient(config, {
  chainId: switchedChain.id,
});

Error
The current chain of the connector (id: 56) does not match the connection's chain (id: 1). Current Chain ID: 56 Expected Chain ID: 1 Version<EMAIL_ADDRESS>

@chybisov thanks! made a small update.


Car shadow "fix" crashes game at launch

The file posted here doesn't work for me, if I replace the dinput8.dll the game won't start anymore. Win10/AMD APU on the latest release.

Does the latest action build from https://github.com/emoose/OutRun2006Tweaks/actions work? That should include the car shadow fix now
The earlier build did include a kinda janky attempt at adding the sega chant back, maybe that stopped it launching for you

Does the latest action build from https://github.com/emoose/OutRun2006Tweaks/actions work?

Sorry but I don't know what I have to do on that page. I downloaded an .EXE but it does nothing new (no car shadow).

The file at https://github.com/emoose/OutRun2006Tweaks/actions/runs/9902921831/artifacts/1693921743 should include a dll/ini, should include the car shadow fix

THANKYOU! Everything's fine now :-)

The perfect opacity for me is 1.5 - Shadow's a bit off if you look at the tires but I guess it's just how the car models were made.


Update process-update.js

Updates error message URL

Coverage remained the same at 79.894% when pulling b41883a9d5fdd40873b71baac7e0c5dbbfe581ff on gavenheim:patch-1 into 6b03dec1e53e147b73c20fe806a4a90f3d1db1f0 on glenjamin:master.

Coverage remained the same at 79.894% when pulling b41883a9d5fdd40873b71baac7e0c5dbbfe581ff on gavenheim:patch-1 into 6b03dec1e53e147b73c20fe806a4a90f3d1db1f0 on glenjamin:master.


sorting listEntries causes a 500 response

if you try to change the order of the elements in the List Entries by Arrived At you will get an error. this error will persist because that ordering rule is saved in the browser local storage.
Tested in a production db and in the demo db created with -seed

tested in demo and production and it works.


Use "combo" as default key name

combo key include public keys of both Soren, Dan and Harish and is added there
on all production, hp cloud.

please test this


Graph Showing Axis with huge number sometime not readable

Who is the bug affecting?

You can View the graph it is showing numbers from 500000 to 4000000 When such big numbers displayed on screen user take time to think over and required time to understand
My Question is Can we display numbers like 400K or 4M

What is affected by this bug?

When does this occur?

Where on the platform does it happen?

How do we replicate the issue?

Expected behavior (i.e. solution)

Other Comments

Hi @vyomtrainers , this is already possible with the library.
You just need to need call the ticksCallback function of your axis, and then format the values as you want. One quick example here:
<c-chart type="line" responsive="true">
  <c-dataset labels='["Item 1","Item 2","Item 3","Item 4", "Item 5","Item 6","Item 7"]'>
    <c-data label="Neutral" detail="[400000, 470000, 440000, 380000, 270000, 310000, 250000]" bordercolor='rgba(50, 150, 237, 1)'></c-data>
  </c-dataset>
  <c-cartesian-axis axis="y" ticks-callback={handleTicksCallback}></c-cartesian-axis>
</c-chart>

And then in your controller:
handleTicksCallback(value) {
  return Number(value).toLocaleString() + "€";
}


Add writable fs dot provider; method to receive uploaded files

Fixes #8

[x] Create file, make dir
[ ] Delete files & dirs
[x] File upload streams files to FS writer.
[ ] Pending upstream issue https://github.com/hack-pad/hackpadfs/issues/41 . Alternatives:

Switch to jarxorg/wfs
Don't use abstract FS at all, code against os files directly. I was thinking it would be nice to keep the same provider and allow users to override the target with alternative implementations (nfs, s3, sqlite fs, etc), but maybe this is too much of a stretch.

[ ] Add more tests, set up test runner to reset uploaded files

hey @infogulch
regarding fs aspect and also hurl and wasm, wanix is the best way I have found.
https://github.com/tractordev/wanix?tab=readme-ov-file#work-with-the-filesystem
https://github.com/tractordev/toolkit-go has the FS abstractions, that hack-pad never quite got working.

Thanks for the pointer, I'll check it out.

I came across this PR by chance, I saw that you, @gedw99, failed when you wanted to tag me, there is an extra space at @ taophp. But thanks for thinking of me 🤗