Feature/supporting html mixed mode and interactive preview panel

Working on #10 , I have enabled:

html mixed mode in MarkupEditor, syntax highlighting working even for js script now
script tag are now retrieved in Preview component and evaluated through window.eval. Before markup is passed as Scrollable child in dangerouslySetInnerHtml all the script elements are removed.

Right now, this kind of code:
<label for="checkbox">Check</label>
<input
  id="checkbox"
  type="checkbox"
/>
<button id="btn">
  Accept
</button>

<button id="btn2">
Decline
</button>

<script>
  const btn = document.getElementById('btn');
  btn.addEventListener('click', () => {
    alert('click');
  });
</script>

<script>
  const btn2 = document.getElementById('btn2');
  btn2.addEventListener('click', () => {
    alert('click no');
  });
</script>

can be inserted by the user and the result is an interactive Preview panel.

Regarding the first comment, the one about the missed evaluation on page loading maybe I have some idea to fix it. I should try!

I should have fixed the issues you highlighted.
Regarding the problem that no script was evaluated on component mount, the problem was that useEffect runs before Scrollable children are rendered so I added a check on htmlRoot.current to make the effect runs again when children are rendered.
Furthermore I replaced usage of eval with new Function which should be a little safer.

I have moved try catch block inside the forEach function, because in the first version if a script failed all the scripts evaluation were be aborted. I added an alert to notify the user that he has inserted a failing script but it has just an idea!

I have prepared a fix to keep track of the already evaluated script, I could push it too if it's ok to you.

I am going to push it because I won't be able to do that during this morning, if that fix doesn't sound good to you I will turn it back!

Hi @smeijer ! I don't wanna to hurry you, but reading again my comments worry me that I haven't been so clear. I already pushed all the code I have for this feature and I would like to receive your thoughts.
(reading my comments made me wonder if you were still waiting for some code)

Hi @delca85.
I'll do my best to check it today. Thanks for the reminder 👍

@delca85, Thanks so much for your help!
I've added you as a :frog: collaborator on the project. Please make sure that you review the MAINTAINING.md and CONTRIBUTING.md files (specifically the bit about the commit messages and the git hooks) and familiarize yourself with the code of conduct (we're using the contributor covenant).
You might also want to watch the repo to be notified when someone files an issue/PR. Please continue to make PRs as you feel the need (you can make your branches directly on the repo rather than your fork if you want).
Thanks! And welcome to the team :tada:

Wow! Thank you @smeijer! I am really really happy and excited about it. I'll keep on doing my best to collaborate to this awesome project. 🎉 🥳


Fix #2153: Fix explore category lists

Description (required)
Fixes #2153 Subcategories / parent categories not loading
What changes did you make and why?
Used getFileName(node) instead of getMediaFromPage(node).getFilename()
This is because it is used as part of the check as to whether a node is a category or media file (L33), and when handling category nodes (L51).
When getMediaFromPage is called on a category node, it throws a NPE as it tries to find a media 'creator'.
It also doesn't make that much sense to have a category as a Media object, so this fixes that.
It also has the added benefit of being faster as not parsing all properties and generating a Media object.
I believe the issue was introduced in https://github.com/commons-app/apps-android-commons/commit/86e849683aeade551af1e71846d704b0955aebbc as the creator parsing was no longer null-safe.
Tests performed (required)
Tested 2.9.0-debug-fix-2153~4acf7501 (prod) on Galaxy Nexus (emulator) with API level 28.

Codecov Report

Merging #2155 into master will not change coverage.
The diff coverage is 0%.

@@          Coverage Diff           @@
##           master   #2155   +/-   ##
======================================
  Coverage    5.69%   5.69%
======================================
  Files         233     233
  Lines       11596   11596
  Branches     1076    1076
======================================
  Hits          660     660
  Misses      10881   10881
  Partials       55      55

Impacted Files
Coverage Δ

.../free/nrw/commons/category/CategoryImageUtils.java
0% <0%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Bug: Incorrect evaluation of master_user_options when master_user_arn is set

Description
In the current implementation, there seems to be a bug related to the evaluation of the master_user_options field when the master_user_arn is set to a non-null string. This results in master_user_arn being incorrectly evaluated to null.
Versions

Module version [Required]:
1.1.2

Terraform version:
1.6.6

Provider version(s):

+ provider registry.terraform.io/hashicorp/aws v5.48.0
+ provider registry.terraform.io/hashicorp/local v2.5.1
+ provider registry.terraform.io/hashicorp/null v3.2.2
+ provider registry.terraform.io/hashicorp/random v3.6.1
+ provider registry.terraform.io/hashicorp/tls v4.0.5

Reproduction Code [Required]
data "aws_iam_policy_document" "opensearch_assume_role" {
  statement {
    actions = [
      "sts:AssumeRole"
    ]

    principals {
      type        = "AWS"
      identifiers = ["arn:aws:iam::${data.aws_caller_identity.root.account_id}:root"]
    }
  }
}

resource "aws_iam_role" "opensearch_master" {
  name               = "OpenSearch_Master_staging01"
  assume_role_policy = data.aws_iam_policy_document.opensearch_assume_role.json
}

module "opensearch" {
  source  = "terraform-aws-modules/opensearch/aws"
  version = "1.1.2"

  advanced_security_options = {
    enabled                        = false
    anonymous_auth_enabled         = false
    internal_user_database_enabled = false

    master_user_options = {
      master_user_arn = aws_iam_role.opensearch_master.arn
    }
  }

  cluster_config = {
    instance_count           = 3
    dedicated_master_enabled = true
    dedicated_master_type    = "m6g.large.search"
    instance_type            = "r6g.large.search"

    zone_awareness_config = {
      availability_zone_count = 3
    }

    zone_awareness_enabled = true
  }

  domain_name = "staging01"

  engine_version = "OpenSearch_2.11"

  depends_on = [
    aws_iam_role.opensearch_master
  ]
}

Steps to reproduce the behavior:
Run terraform plan
Expected behavior
When var.advanced_security_options.master_user_options.master_user_arn is set, we should see that the arn is passed to the resource
Actual behavior
Running plan for the above code shows that no master_user_options are configured as part of aws_opensearch_domain. See resource reference
      + advanced_security_options {
          + anonymous_auth_enabled         = false
          + enabled                        = false
          + internal_user_database_enabled = false
        }

Additional context
Looking at the module I believe the issue is in this line in main.tf
master_user_arn      = try(master_user_options.value.master_user_arn, null) == null ? try(master_user_options.value.master_user_arn, data.aws_iam_session_context.current[0].issuer_arn) : null

My understanding is that if master_user_options.value.master_user_arn has a value the try will evaluate to true making the outcome of the ternary expression null

@bryantbiggs this is not stale and still exists in version 1.2.0. I saw you commenting on similar issues/PRs, so tagging you. This conditional needs to be flipped:
Current (if master_user_options.value.master_user_arn is null, set the value to master_user_options.value.master_user_arn, otherwise set it to null):
          master_user_arn      = try(master_user_options.value.master_user_arn, null) == null ? try(master_user_options.value.master_user_arn, data.aws_iam_session_context.current[0].issuer_arn) : null

Corrected (if master_user_options.value.master_user_arn is null, set the value to null, otherwise set it to master_user_options.value.master_user_arn):
          master_user_arn      = try(master_user_options.value.master_user_arn, null) == null ? null : try(master_user_options.value.master_user_arn, data.aws_iam_session_context.current[0].issuer_arn)

Here's a self contained example that triggers this issue:
provider "aws" {
  region = "eu-west-1"
}

module "vpc" {
  source  = "terraform-aws-modules/vpc/aws"
  version = "5.8.1"

  name = "os-vpc-test"
  cidr = "<IP_ADDRESS>/16"

  azs             = ["eu-west-1a", "eu-west-1b"]
  private_subnets = ["<IP_ADDRESS>/24", "<IP_ADDRESS>/24"]
  public_subnets  = ["<IP_ADDRESS>/24", "<IP_ADDRESS>/24"]

  enable_nat_gateway     = true
  single_nat_gateway     = true
  one_nat_gateway_per_az = false
}

module "opensearch" {
  source  = "terraform-aws-modules/opensearch/aws"
  version = "1.2.0"

  advanced_security_options = {
    enabled                        = true
    anonymous_auth_enabled         = false
    internal_user_database_enabled = true

    master_user_options = {
      master_user_name     = "example"
      master_user_password = "Barbarbarbar1!"
    }
  }

  auto_tune_options = {
    desired_state = "DISABLED"
  }

  cluster_config = {
    instance_count           = 2
    dedicated_master_enabled = false
    instance_type            = "t3.small.search"
  }

  domain_name = "test-os-master-user"

  engine_version = "OpenSearch_2.13"
}

Upon running terraform apply, I get this (some parts redacted):
Terraform will perform the following actions:

  # module.opensearch.aws_opensearch_domain.this[0] will be created
  + resource "aws_opensearch_domain" "this" {
      ...

      + advanced_security_options {
          + anonymous_auth_enabled         = false
          + enabled                        = true
          + internal_user_database_enabled = true

          + master_user_options {
              + master_user_arn      = "arn:aws:iam::000000000000:role/xxxxxxxxxx"
              + master_user_name     = "example"
              + master_user_password = (sensitive value)
            }
        }

        ...
    }

Plan: 1 to add, 0 to change, 0 to destroy.

Do you want to perform these actions?
  Terraform will perform the actions described above.
  Only 'yes' will be accepted to approve.

  Enter a value: yes

module.opensearch.aws_opensearch_domain.this[0]: Creating...
╷
│ Error: creating OpenSearch Domain: ValidationException: You must provide either a master username or a master user ARN but not together.
│
│   with module.opensearch.aws_opensearch_domain.this[0],
│   on .terraform/modules/opensearch/main.tf line 29, in resource "aws_opensearch_domain" "this":
│   29: resource "aws_opensearch_domain" "this" {
│
╵

Modifying the module directly with the suggestion in the comment above fixes the issue and creates the cluster correctly.

Got the same issue that described above. It also exists in version 1.2.1.

@bryantbiggs I have the same issue too

same here

same here


fix JOBs bug and error message in metadata reading

Load image using a with syntax to avoid Warning message
Fix type when calling get_tilepos

@reillytilbury you probably want to merge this into alpha and dev branch at the same time


[Images] [6/N] Fix image dtype docs.

This PR fixes the DataType.image() dtype docs in a few places.

Docs look good on my end, merging!


WIP: Add installer

Resolves #2

After the make step in the install, there is a problem with the ssl module not being able to be build on LXPLUS:
Python build finished successfully!
The necessary bits to build these optional modules were not found:
_ssl
To find the necessary bits, look in setup.py in detect_modules() for the module's name.

The following modules found by detect_modules() in setup.py, have been
built by the Makefile instead, as configured by the Setup files:
_abc                  atexit                pwd
time

Could not build the ssl module!
Python requires an OpenSSL 1.0.2 or 1.1 compatible libssl with X509_VERIFY_PARAM_set1_host().
LibreSSL 2.6.4 and earlier do not provide the necessary APIs, https://github.com/libressl-portable/portable/issues/381

Additionally, during make altinstall
there is a write permissions error
if test "no-framework" = "no-framework" ; then \
		/usr/bin/install -c python /usr/local/bin/python3.7m; \
	else \
		/usr/bin/install -c -s Mac/pythonw /usr/local/bin/python3.7m; \
	fi
/usr/bin/install: cannot create regular file `/usr/local/bin/python3.7m': Permission denied
make: *** [altbininstall] Error 1

c.f. @dguest's download-and-build.sh script for more on setting ssl correctly.


Feature : Adding arrow button to quickly move to the top

Feature Details:
I have an idea of adding a arrow button for quickly moving to the top without scrolling
Code of Conduct
I agree to follow this project's Code of Conduct

Please assign this issue to me.
@Anushkabh

I feel i can work on this issue as i have already completed full stack web development and i have many more ideas how we can make it  more user friendly and attractibve as well following the project's code of conduct


Add callback for rubocop/ast

Loading the version first also gives an opportunity for rubocop/ast to react.
Removing handling of rubocop-ast <1.0 in gemspec no longer needed
See also: rubocop-hq/rubocop-ast#123

@bbatsov sounds ok to you?
I need to make a fix to rubocop-ast for # that affects rubocop before #8787, so ideally we'd merge this PR, release, and then I can merge rubocop-hq/rubocop-ast#123 and rubocop-hq/rubocop-ast#120, and release rubocop-ast, then I'll merge rubocop-hq/rubocop-ast#114, release that too, then merge the new pattern compiler and release that 😅

Wow! That's quite the dependency tree! 😆 I'll merge this now and cut 0.91.2.


Confusing error message when a speed hasn't been given

I've seen this a handful of times now. Here's the traceback you get when you construct a SingleDoFLinearSystem and give a coordinate but not a speed:
---------------------------------------------------------------------------
IndexError                                Traceback (most recent call last)
<ipython-input-7-fd8087bf5ba0> in <module>()
----> 1 sys.free_response(1)

~/src/resonance/resonance/system.py in free_response(self, final_time, initial_time, sample_rate, **kwargs)
    553         times = self._calc_times(final_time, initial_time, sample_rate)
    554
--> 555         pos, vel, acc = self._generate_state_trajectories(times, **kwargs)
    556
    557         self.result = self._state_traj_to_dataframe(times, pos, vel, acc)

~/src/resonance/resonance/linear_systems.py in _generate_state_trajectories(self, times)
    336         sol_func = self._solution_func()
    337
--> 338         return sol_func(times)
    339
    340     def period(self):

~/src/resonance/resonance/linear_systems.py in _no_damping_solution(self, time)
    202
    203         x0 = list(self.coordinates.values())[0]
--> 204         v0 = list(self.speeds.values())[0]
    205
    206         c1 = v0 / wn

IndexError: list index out of range

Perhaps catching this and giving a more direct error message would be helpful.

This may be more annoying to catch than I thought since there are quite a few different places this would need to be checked (free response, forced response, linear/nonlinear, etc.). I'm not seeing a single location to check, but maybe it makes sense to have all of the methods that actually do any simulation run a "check system" function at the top.
Maybe kill two birds here and automatically add a speed for each coordinate -- I know that's marked as a TODO in the code.

A check system method sounds good. Probably several things could move in there. Not sure I want to automatically create speeds anymore. That was the original idea, but I moved away from it. If you don't make the speeds explicit it becomes odd discussing setting initial conditions for them.

Closed by #144


fix docs path for publishing

Follow up to #161

Next try after fix: https://github.com/apache/incubator-pekko/actions/runs/4145469199


RSVP not returning status code as expected?

Using example from

var RSVP = require('rsvp');
var XMLHttpRequest = require("xmlhttprequest").XMLHttpRequest;

function getJSON(url) {
  return new RSVP.Promise(function(resolve, reject){
    var xhr = new XMLHttpRequest();

    xhr.open('PUT', url);
    xhr.onreadystatechange = handler;
    xhr.responseType = 'json';
    xhr.setRequestHeader('Accept', 'application/json');
    xhr.send();

    function handler() {
      if (this.readyState === this.DONE) {
        if (this.status === 204) {
          resolve(this.response);
        } else {
          reject(new Error('getJSON: `' + url + '` failed with status: [' + this.status + ']'));
        }
      }
    };
  });
}

getJSON('/posts.json').then(function(json) {
  // on fulfillment
}, function(reason) {
  // on rejection
});

Reason is :  [Error: getJSON: https://myURL failed with status: [0]]

Are you running this in Node.js or the browser?

Hi @fivetanley
Inside Node.js (MeteorJS) server side.
OK I forgot to install
meteor npm install --save xmlhttprequest

and then include as
var XMLHttpRequest = require("xmlhttprequest").XMLHttpRequest;

I expect 204 but but now
Reason is :  [Error: getJSON: myURL failed with status: [0]]

sorry I changed the title as it is status code not returning as expected?

[ReferenceError: XMLHttpRequest is not defined

in your description also seems out of date, can you make sure to update the description to be as reproducible as possible and we can help you out:)

still doesn't seem RSVP related. Going to close this unless someone can demonstrate it is RSVP related.


As a Sourcegraph employee, I should have a way (eg. dummy accounts) to QA the PLG paid flows

Flows that I'd like for us to easily replicate here for QA purposes: https://docs.google.com/document/d/15wnVMbZAlU8DOXJKSWlPREaYz0Cuf-8pltips-BetsY/edit#heading=h.get2v7tig82w

Assigning to myself.
We probably won't have the ability to create "dummy accounts", but the work to do here is to document and test various test cards from Stripe (https://stripe.com/docs/testing) for validating error cases.

What's missing here is:

A config for samsHostname and sscBaseUrl on the https://cody-services-dev.sgdev.dev/ site.
Update https://accounts.sgdev.org/cody/subscription to give the user a way to go back to /cody/manage
Enable the feature flags for a few test users to allow them to test
Clients have dotcom's URL hard-coded, so we won't be able to test end-to-end including the clients, but it shouldn't be a problem: client teams can test with the test users we've provided.

→ adding these to a task list above

@chrsmith, do you think we can close everything else but the nav bar (second task above) today? Are we missing something else than listed?

There's lots of testing to do. So I think we should keep this ticket open, but as far as "there being a way", it should be working end-to-end on https://cody-services.sgdev.dev.
Quick Cody PLG Testing Guide
https://cody-services.sgdev.dev has the use-ssc-for-cody-subscription flag flipped globally. So when you view https://cody-services-dev.sgdev.dev/cody/manage, you are seeing your subscription data from dotcom combined with the SSC backend.
⚠ Clicking "Manage" will take you to accounts.sourcegraph.com. Your subscription information for Cody-services.sgdev.dev is actually at https://accounts.sgdev.org. So you will need to be aware of this, and navigate to the other domain after you click the button in the UI.
On the SSC frontend dev instance (accounts.sgdev.org), you can use test payment methods as described in Stripe's docs. (https://stripe.com/docs/testing)
The expected behavior is that we offer a free trial until 2/15.

NOTE: This is currently broken, and we have the free trial end on 2/10 by mistake. This will be fixed once https://github.com/sourcegraph/accounts.sourcegraph.com/pull/437 gets merged and deployed.

In order to test dunning and payment functionality, you will need to provide some overrides for the SSC frontend. In particular, within your JavaScript console, set:
window.localStorage.setItem('sourcegraph.debug.always-show-new-signup', 'true')
window.localStorage.setItem('sourcegraph.cody.offer-cody-pro-free-trial', 'false')
``

After you refresh your browser, the SSC frontend will no longer offer a free trial. And the billing interval will be daily. (But you'll still need to wait 24h to automatically get charged for validating error cases unfortunately.)

If you are successful in creating a new Cody Pro trial, and want to go through the flow again, you can use the following command:

```js
window.localStorage.setItem('sourcegraph.debug.always-show-new-signup', 'true')

This will prompt you to sign up for a new Cody Pro subscription, even if you already have one.
⚠ This is going to do weird things on the backend, so be warned. e.g. you'll have multiple Stripe subscriptions active. So you may receive multiple emails, etc.

@chrsmith on the instructions above there's a typo in the URL, it should be https://cody-services-dev.sgdev.dev/


unbrotli?

Would it be possible to achieve/implement the same thing as what gunzip module does, in regards with Brotli?
Just some idea how gunzip can be immediately useful first:
Say, you proxy a site with NGINX, and overwrite Accept-Encoding with gzip in order for the upstream to always return compress data
Then the value of proxy_buffers can be greatly reduced because you always know the response is rather small, essentially reducing RAM usage.
And with gunzip applied in NGINX, you still get to serve the clients who requested non-compressed resource.
We can't do the same trick with Brotli, as there is no equivalent module which would auto-decompress upstream response for clients which indicate their preference in no compression.
E.g. for a Magento 2 page which emits 512K worth of HTML, which compresses to under 50K with Brotli:
location / {
    proxy_pass foo;
    proxy_set_header Accept-Encoding br;
    unbrotli on;
    proxy_buffers 12 4k;
    proxy_http_version 1.1;
}

instead of:
location / {
    proxy_pass foo;
    proxy_buffers 128 4k; # has to be set high because we don't know if upstream returns compressed/not
    proxy_http_version 1.1;
}

Sure, it implies delivering uncompressed response to gzip clients, but that may be OK to same folks (myself included), considering the vast support of Brotli in browsers nowadays.

Will take a look, how it is done in gunzip. Perhaps it requires collaboration with nginx developers... Something we've never succeeded before =(

Seems to be just another filter -> doable.

Will create issue in upstream repo.


Remove 'Increase video or image size on the page' check

Description
This check flags images that aren't full size and is pretty limiting to design implementations so the design team has recommended we remove this check.
Implementation suggestions

Let's just remove the check from the array that decides what checks to run and leave the actual code for the check intact just in case we want it later.

Acceptance Criteria

Image/video size is no longer flagged in checklist no matter how small the image or video is.

Verified in QA


CFP:   restart the cilium components with helm post-upgrade hook

Cilium Feature Proposal
I personally have spent hours of troubleshooting after the cilium's upgrade. It turns out the root cause of the issue is I didn't restart the cilium after the helm upgrade. I have also seen other users ran into the this type of issue for long time.
When we use the helm to upgrade cilium, the cilium may or may not restart itself. I suggest that we should have a post upgrade job to restart all cilium components.
The argument could be a mandatory post upgrade restart could cause some unnecessary disruption. However, I think the
pros of restart outweigh the cons since people should expect there can be some disruption when upgrading their CNI.
Describe the feature you'd like
Include any specific requirements you need
(Optional) Describe your proposed solution
Once the CFP is close to being finalized, please add it as a PR to the design-cfps repo for final approval.

Thanks for opening this CFP @liyihuang. I can see how that is pretty frustrating.
However, this would be a significant behavior change, so it will need a similar amount of work put into proving why it's a better option. This would require a full CFP, using the template in the design-cfps repo, explaining why changing things is a better idea than leaving them how they are, and how we should deal with the behavior change on upgrade (I expect we would need a way to revert the old behavior at a minimum, to lessen the impact). Anyone wanting to solve this in the way you suggest will need to do something like this, sadly.
If that's too much, we could also accept a PR to add a callout to the Upgrade Guide to suggest manual restarts after upgrading if anything is not working.

thanks for pointing out the doc. This is my first CFP for cilium project. I will look into it how to do it properly. To be honest, I'm thinking we should do both(add the a callout and a change)

As suggested in the weekly meeting by Sebastian we currently have an existing option: rollOutCiliumPods/ $component.rollOutPods Helm value (disabled by default).
We shouldn't make this the default behavior since that's not the expectation that users have when using helm upgrade. For example, if the user modifies configmap value and all pods are restarted immediately, which might cause DoS in the entire cluster if that new value was not accepted by Cilium and then we would make all Cilium pods to be in crashloopbackoff.
I think a potential solution would be https://github.com/cilium/cilium/issues/27972

thanks. I didn't know we have the rollOutCiliumPods  option before. I was thinking we can have
post-upgrade from  https://helm.sh/docs/topics/charts_hooks/#the-available-hooks to perform necessary restart after a helm upgrade and have a bool to control it. https://github.com/cilium/cilium/issues/27972 is a good solution from for people to notice or we can have some notes for helm upgrade to remind people to restart the pod
btw, I personally dont think hot reload is a good idea since we have lots of flags and people need to remember it or have a dictionary to look it up.

I agree that #27972 is probably a better solution - does that mean we should close this one out @liyihuang?


Arm64 Architecture Missing

I rely on Swift-NIO in my app. I'm installing it via the Swift Package Manager in Xcode 12.2 on Big Sur 11.0.1 running on a 13" M1 MacBook Pro.
When I attempt to build, Xcode informs me that it can't find the arm64 architecture for Swift-NIO:

Xcode auto-builds packages as they're downloaded, I guess, so I don't have any manual control over the build settings (that I'm aware of; I'm fairly new to SPM). Here are the packages I have installed in this project:

Since this is an Apple-provided framework, I had assumed arm64 support would be in place. I'm sure I've simply screwed something up, but I'd appreciate a tip on how to fix this. Thanks!

SwiftNIO is shipped as source-only: we don’t ship binaries. Our source supports arm64, but whether or not the arm64 version is available is not up to us: your software needs to build it locally.
How is your build system set up? Are you targetting both architectures? It may be worth clearing out your DerivedData folder and performing a complete rebuild.

As you also commented on the forums I’m going to close this to centralise conversation there.


Allow passing user_id as launch parameter

When running multiple robots at the same time connecting to the same LexBot you need a unique UserID for each. If Lex receives two commands at the same time from the same LexBot + UserID combination it
throws an error. So this allows specifying the UserID on launch.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Add a change to allow setting the user_id with the environment variable AWS_LEX_USER_ID when running the integration tests.


white background when addLongPressReorderable: true

if List items have no background or have transparent backgrounds, adding the addLongPressReorderable option will introduce a white background for the list items.
example using
class Item extends StatelessWidget {
@override
Widget build(BuildContext context) {
return AnimatedContainer(
height:  height,
duration: const Duration(milliseconds: 500),
decoration: const BoxDecoration(
color: Colors.transparent,
),
child: Text("hello"),
);
}
Have I missed some option to style the reorder item widget?
in addition: When adding a reorderModel  the addLongPressReorderable flag is supurflous: the longpress functionaliy is there anyway.

Found solution: setting the App theme canvasColor to transparent does the trick.

OK


Modify "join_cluster" to key off of "known_servers". Fixes #31.

The existing implementation of join_cluster relies upon num_peers, which doesn't exist anymore. Modify join_cluster to use known_servers instead.
I tested this with a set of 3 Vagrant boxes running puppet. Before join_cluster runs, I see:
$ consul info | grep known
  known_servers = 0

And after join_cluster runs I see:
$ consul info | grep known
known_servers = 1

$ consul members
Node               Address               Status  Type    Build  Protocol
vi-cobbler11       <IP_ADDRESS>:8301  alive   client  0.4.1  2
vi-devops-consul9  <IP_ADDRESS>:8301  alive   server  0.4.1  2
vi-cobbler10       <IP_ADDRESS>:8301  alive   client  0.4.1  2

join_cluster is now deprecated. This kind of output manipulation is a little much.
Maybe someone ambitious will just add something to consul's output like "cluster status: joined" to make it way easier to parse or something.
Till then I'm leaving this as an exercise to the implementer.


Library refs break when project name contains a dot

In latest Fable (0.4.4), I'm experiencing a problem when building a project that references another project. If the project being referenced has a dot in the name, then Fable is generating incorrect paths in the require calls. Before upgrading Fable, I did not have the issue.
Imagine you have a solution with three F# projects:Library, Library.Another, and Main. Main references both Library and Library.Another. Now assume the two library projects have already been compiled by Fable to out/library and out/library-another.
Now, if you compile the Main project using this fableconfig.json...
{
  "module": "commonjs",
  "outDir": "out/main",
  "projFile": "Test/Main/Main.fsproj",
  "refs": {
    "Library": "../library",
    "Library.Another": "../library-another"
  }
}

...you will get incorrect require calls in the generated output whenever a module from the Library.Another project is referenced (modules referenced from Library work fine). For example:
var _SomeModule = require("../library/SomeModule");

var _AnotherModule = require("../library-another/Library.Another/AnotherModule");

The first require call works as expected. However, the second require call has Library.Another/ in its path for some reason, which causes a runtime error when trying to resolve the reference.
A similar problem occurs when using the AMD module system.
Note: In my case, the references from Main to the libraries are project references made within the same solution (as opposed to an external DLL) -- not sure if that makes a difference or not.

Hmm, I'm not sure the dot is the problem because we have a similar reference in the project containing the tests. Is your project public or can you upload a minimal project structure which can reproduce the problem? Is by any chance your directory structure similar to the one below?
/Main/Main.fsproj
/Library/Library.fsproj
         SomeModule.fs
/Library.Another.fsproj
/Library.Another/AnotherModule.fs

Thanks for the report!

My project isn't public, but I created a quick repo with similar structure to show the problem I'm having:
https://github.com/funlambda/fable-project-ref-example
If you clone it and run build-and-run.sh, you should see the module ref run-time error. The problematic path is in out/main/Program.js:
var _AnotherModule = require("../library-another/Library.Another/AnotherModule");

Thanks for taking the time to prepare the structure to reproduce the issue! It was indeed the dot :) I've released<EMAIL_ADDRESS>with the fix. Could you give it a try?

Works perfectly now -- thanks for the fix and the insanely fast turnaround!


Mutation, Composition, and Utility Generators

Opening this WIP PR so I can get feedback on the implementation as I work on it.
Reference Issue: #100
Currently, I've only added the Checkerboard and Constant Generator modules while I worked out the type system and implementation. It ended up similar to Aatch's ValueSourceN trait, without the N portion as I pass that though the function implementation instead. I have not figured out how to implement Aatch's ValueSource with associated Input and Output types yet. Hints would be helpful, since this would make it much simpler to implement dimension-agnostic modules like Select or Constant, as Aatch proposed.
My intention is to give every generator/modifier/mutator the Module trait, thereby allowing composition through the use of Modules.
The foundation of all the modules I plan to implement is based on libnoise.
For a minimal implementation, I'll add the following modules:

[x] Checkerboard
[x] Constant
[x] Cylinders
[x] Perlin
[x] Select

Modules to be included in later PRs:
Simple Generators:

OpenSimplex
Simplex (2D only, 3D and up is covered by patent)
Spheres
Voronoi

Fractal Generators:

Billow
Multifractal
Ridged Multifractal

Combiners:

Add
Max
Min
Multiply
Power

Modifier Modules:

Abs
Clamp
Curve
Exponent
Invert
ScaleBias
Terrace

Selector Modules:

Blend

Transformer Modules:

Displace
RotatePoint
ScalePoint
TransformPoint
Turbulence

Miscellaneous Modules:

Cache

I'm open to other module suggestions, as well. There's probably a bunch more that'd fit under Fractal Generators, since there's a lot of ways to combine perlin noise in octaves.

cc @Aatch

I'm definitely going to need to figure out how to get a dimension-agnostic type system working, since after thinking about it, the following modules don't care about the dimension, since they only work with the value. It would suck to have to write out the same functions for every dimension in these modules, instead of making them generic.

Constant
All Combiner Modules
All Modifier Modules
All Selector Modules
Cache

The generators (except Constant), and the transformers care about the dimension of the point, since they either use the point or they modify the point.

As a tip: import num::Zero or num::One, and then you can do T::zero() or T::one() respectively. I kind of prefer that to cast::<_, T>(0.0).

Major thanks to @Aatch for helping me figure out the type signature to use for the Select module.
The select example shows blending between the two source modules, and uses the checkerboard as the control module.

At this point, this PR is no longer WIP.

On further consideration, this should remain a WIP until all the little details are ironed out and I have a chance to squash all the commits down to a smaller set.

Rebased to current master, and modified select to take references so that the input modules can be reused.

I can now consider this no longer a WIP. The minimal implementation of the proposed API discussed in #100 is completed, and functions as I want it to in regards to generating and composing the noise modules.

I would like to merge this asap. It's been open for far too long - probably my own fault... wondering if we could put this behind a feature flag for now - like experimental or something...

Changed Module to NoiseModule, so it's a bit more distinctive.

Here is the part of the Cargo docs relating to features: http://doc.crates.io/manifest.html#the-features-section
Still not happy with the NoiseModule name, but let's just merge this. I'll make some issues for the other things.


Error: Cannot find module 'upath'

when i upgrade my node version to 10.0.0, boom ↓
any idea?
ENV
$ node -v
v10.0.0
$ npm -v
6.0.0

DETAIL
10:46:33 webpack.1   | Error: Cannot find module 'upath'
10:46:33 webpack.1   |     at Function.Module._resolveFilename (internal/modules/cjs/loader.js:571:15)
10:46:33 webpack.1   |     at Function.Module._load (internal/modules/cjs/loader.js:497:25)
10:46:33 webpack.1   |     at Module.require (internal/modules/cjs/loader.js:626:17)
10:46:33 webpack.1   |     at require (/Users/developer/Documents/Sources/server/node_modules/v8-compile-cache/v8-compile-cache.js:159:20)
10:46:33 webpack.1   |     at Object.<anonymous> (/Users/developer/Documents/Sources/server/node_modules/chokidar/index.js:13:13)
10:46:33 webpack.1   |     at Module._compile (/Users/developer/Documents/Sources/server/node_modules/v8-compile-cache/v8-compile-cache.js:178:30)
10:46:33 webpack.1   |     at Object.Module._extensions..js (internal/modules/cjs/loader.js:689:10)
10:46:33 webpack.1   |     at Module.load (internal/modules/cjs/loader.js:589:32)
10:46:33 webpack.1   |     at tryModuleLoad (internal/modules/cjs/loader.js:528:12)
10:46:33 webpack.1   |     at Function.Module._load (internal/modules/cjs/loader.js:520:3)
10:46:33 webpack.1   |     at Module.require (internal/modules/cjs/loader.js:626:17)
10:46:33 webpack.1   |     at require (/Users/developer/Documents/Sources/server/node_modules/v8-compile-cache/v8-compile-cache.js:159:20)
10:46:33 webpack.1   |     at Object.<anonymous> (/Users/developer/Documents/Sources/server/node_modules/watchpack/lib/DirectoryWatcher.js:9:16)
10:46:33 webpack.1   |     at Module._compile (/Users/developer/Documents/Sources/server/node_modules/v8-compile-cache/v8-compile-cache.js:178:30)
10:46:33 webpack.1   |     at Object.Module._extensions..js (internal/modules/cjs/loader.js:689:10)
10:46:33 webpack.1   |     at Module.load (internal/modules/cjs/loader.js:589:32)
10:46:33 webpack.1   |     at tryModuleLoad (internal/modules/cjs/loader.js:528:12)
10:46:33 webpack.1   |     at Function.Module._load (internal/modules/cjs/loader.js:520:3)
10:46:33 webpack.1   |     at Module.require (internal/modules/cjs/loader.js:626:17)
10:46:33 webpack.1   |     at require (/Users/developer/Documents/Sources/server/node_modules/v8-compile-cache/v8-compile-cache.js:159:20)
10:46:33 webpack.1   |     at WatcherManager.getDirectoryWatcher (/Users/developer/Documents/Sources/server/node_modules/watchpack/lib/watcherManager.js:14:25)
10:46:33 webpack.1   |     at WatcherManager.watchFile (/Users/developer/Documents/Sources/server/node_modules/watchpack/lib/watcherManager.js:28:14)
10:46:33 webpack.1   |     at Watchpack.<anonymous> (/Users/developer/Documents/Sources/server/node_modules/watchpack/lib/watchpack.js:38:49)
10:46:33 webpack.1   |     at Array.map (<anonymous>)
10:46:33 webpack.1   |     at Watchpack.watch (/Users/developer/Documents/Sources/server/node_modules/watchpack/lib/watchpack.js:37:28)
10:46:33 webpack.1   |     at NodeWatchFileSystem.watch (/Users/developer/Documents/Sources/server/node_modules/webpack/lib/node/NodeWatchFileSystem.js:53:16)
10:46:33 webpack.1   |     at Watching.watch (/Users/developer/Documents/Sources/server/node_modules/webpack/lib/Watching.js:115:48)
10:46:33 webpack.1   |     at compiler.hooks.done.callAsync (/Users/developer/Documents/Sources/server/node_modules/webpack/lib/Watching.js:102:10)
10:46:33 webpack.1   |     at AsyncSeriesHook.eval [as callAsync] (eval at create (/Users/developer/Documents/Sources/server/node_modules/tapable/lib/HookCodeFactory.js:24:12), <anonymous>:6:1)
10:46:33 webpack.1   |     at AsyncSeriesHook.lazyCompileHook [as _callAsync] (/Users/developer/Documents/Sources/server/node_modules/tapable/lib/Hook.js:35:21)
10:46:33 webpack.1   | npm ERR! code ELIFECYCLE
10:46:33 webpack.1   | npm ERR! errno 1

@geminiyellow
maybe https://github.com/airbnb/enzyme/issues/1637#issuecomment-397327562

Not related to this library

你怎么解决的？

我也遇到同样的问题了


[WIP] Add non-trivial shrinkers

This PR should be closed, but only after we recover trimBlockTree and deliver it in another PR. Refer to https://github.com/IntersectMBO/ouroboros-consensus/pull/856 for new work on shrinking.

Superseded by https://github.com/IntersectMBO/ouroboros-consensus/pull/881 apart from the notion of honest peer alertness. The commits are too old to be reused easily anyways.


Add pytest sugar for nicer test output

I am not sure how well this works in CI but it gives much better output locally. So perhaps it also help here?

Hmn travis makes a mess of the output and pipelines does not use it. So lets just stick with installing this locally if you like


Optimised images in repository

Optimised all images in the repository using the ImgBot app from the GitHub Marketplace.

Details

File
Before
After
Percent reduction

/img/pack-v3.png
116.51kb
113.81kb
2.32%

/img/pack-v4.png
163.22kb
160.47kb
1.68%

Total :
279.72kb
274.27kb
1.95%

According to optipng, these images are already optimized, and the changes here are marginal. But thank you for the suggestion.


threshold input doesn't seem to actually reject a PR

Describe a bug
I'm running the GH action on jest report json files generated in a separate step like so:
      - name: Report coverage
        uses: ArtiomTr/jest-coverage-report-action@v2
        with:
          annotations: failed-tests
          skip-step: all
          coverage-file: report.json
          base-coverage-file: base-report.json
          threshold: 45

In the comment posted by jest-coverage-report-action, I see that it does indeed report that the coverage doesn't meet the threshold, but I can't find any indication of the PR being rejected, nor can I spot any code in the GH action that does it. How is this supposed to work?
Expected behavior
On coverage falling below the threshold, I'm expecting a failed status check that can be used together with Github's branch protection required status checks, but it looks like all steps in the workflow have succeeded.
Details

Action version: v2

OS, where your action is running (windows, linux): linux

action.yml file
      - name: Report coverage
        uses: ArtiomTr/jest-coverage-report-action@v2
        with:
          annotations: failed-tests
          skip-step: all
          coverage-file: report.json
          base-coverage-file: base-report.json
          threshold: 45

Screenshots

Additional context

Since I'am using vitest, I conducted the test from the lowest version where json reporter can be used.
In versions that meet this, we have verified that the guard only works in v2.0-rc.4.

action.yml file

name: Test Coverage Report

on:
  pull_request:
    branches: '**'

jobs:
  CI:
    permissions:
      checks: write
      pull-requests: write
      contents: write
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v3

      - name: Checkout
        uses: actions/checkout@v3
        with:
          ref: ${{ github.base_ref }}
          path: base

      - uses: actions/setup-node@v3
        with:
          node-version: 18

      - name: Test base coverage report
        working-directory: base
        run: |
          yarn
          yarn test:coverage --reporter json --outputFile ./coverage/report.json || true && node ./__tests__/save-coverage-file.js

      - name: Test coverage report
        run: |
          yarn
          yarn test:coverage --reporter json --outputFile ./coverage/report.json || true && node ./__tests__/save-coverage-file.js

      - name: Test coverage report
        uses<EMAIL_ADDRESS>        with:
          github-token: ${{ github.token }}
          skip-step: all
          threshold: 50
          coverage-file: ./coverage/report.json
          base-coverage-file: ./base/coverage/report.json

I can see the report well, so it's the most ideal version I'm currently using...

I hope it will improve in the upper version as well.

First, I considered using both versions together temporarily to use more mature annotations.
      - name: Test coverage report
        uses: ArtiomTr/jest-coverage-report-action@v2
        with:
          github-token: ${{ github.token }}
          skip-step: all
          threshold: 60
          coverage-file: ./coverage/report.json
          base-coverage-file: ./coverage/base-report.json

      - name: Test coverage report
        uses<EMAIL_ADDRESS>        with:
          github-token: ${{ github.token }}
          skip-step: all
          threshold: 60
          coverage-file: ./coverage/report.json
          base-coverage-file: ./coverage/base-report.json
          annotations: none
          output: report-markdown

Hello @hyperair and @momenthana :wave:,
The threshold parameter is deprecated, in favour of the coverageThreshold configuration option.

Since I'am using vitest, I conducted the test from the lowest version where json reporter can be used. In versions that meet this, I've verified that the guard only works in v2.0-rc.4.

This action is aiming to provide the best experience for jest, the vitest isn't supported. It just happens that they're compatible since vitest also uses istanbul for collecting coverage. However, I think you still can specify thresholds for vitest via coverage.lines, coverage.functions, coverage.branches and coverage.statements. Action would not handle them gracefully, but PR will be rejected if they don't pass.

Hey @ArtiomTr, thanks for the reply. I guess we can close this issue then

@momenthana, there were many requests to support vitest (#319, #244), so I decided to create separate action - vitest-report-action. Can't promise that it will be shipped soon, but still, you can track the progress there.


Feature request: allow upload image of item

Hi, would be great if not only the camera can be used to capture an image of the product, but also using images available on my phone already.
Thanks

No problem, at beginning I decided to add two button, one for take camera and the other for upload image. But in my way, I buy new food and record them in my app directly, so the upload button is not very frequent to use then I removed it;   it's not difficult to turn it back.^_^
BTW, in which situation would you upload existing image rather than just take a photo?

No problem, at beginning I decided to add two button, one for take camera and the other for upload image. But in my way, I buy new food and record them in my app directly, so the upload button is not very frequent to use then I removed it; it's not difficult to turn it back.^_^

Thanks. Does it have to be two buttons? Would be a nicer UX if it is just one button, when I tap it a pop-up asks me to either open camera or open gallery?

BTW, in which situation would you upload existing image rather than just take a photo?

It's mainly because I do not like the look of my foods on camera. I prefer clean stock images from the app of the supermarket I go to (ah.nl).


Timestamp columns

Setting up columns with "created at" and "updated at" timestamps is now fully supported.

Documented at https://support.getgrist.com/timestamps/


Concernings regarding, /baltop , command.

Well, I was playing around with my friends on one of my SpongeForge servers until I discovered something strange. When you write, /baltop , you can see all the players money but at the orange text where it says TOP BALANCES you have forgot to make an: ":" at the end of TOP BALANCES. Just so you know. :D

I intentionally designed the plugin this way, but you can add a colon if you want by modifying the command.baltop.head message in the messages.conf file.


Kinopoisk

DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE

[X] I understand that I will be blocked if I remove or skip any mandatory* field

Checklist

[X] I'm reporting a broken site
[X] I've verified that I'm running yt-dlp version 2023.01.06 (update instructions) or later (specify commit)
[X] I've checked that all provided URLs are playable in a browser with the same IP and same login details
[X] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[X] I've searched the bugtracker for similar issues including closed ones. DO NOT post duplicates
[X] I've read the guidelines for opening an issue
[X] I've read about sharing account credentials and I'm willing to share it if required

Region
France
Provide a description that is worded well enough to be understood
It seems that downloading trailers from Kinopoisk doesn't work.
These two URLs return an error, see below.
https://www.kinopoisk.ru/film/4370148/video/185663/
https://widgets.kinopoisk.ru/discovery/film/4370148/trailer/185663?noAd=1&embedId=&hidden=&muted=&loop=0&autoplay=1&from=&extraTrailers=&onlyPlayer=1 (I got this link from Firefox by copying the iframe URL)
I was able to download with VideoDownload Helper 6.3.1 (legacy) in Pale Moon 29.
There's nothing complicated there, no encryption.
Just, a few ts fragments. The quality is from 360p to 1080p.
Provide verbose output that clearly demonstrates the problem

[X] Run your yt-dlp command with -vU flag added (yt-dlp -vU <your command line>)
[X] Copy the WHOLE output (starting with [debug] Command-line config) and insert it below

Complete Verbose Output
1:

denis@systemp:~$ python3.8 /home/denis/yt-dlp -vU 'https://www.kinopoisk.ru/film/4370148/video/185663/'
[debug] Command-line config: ['-vU', 'https://www.kinopoisk.ru/film/4370148/video/185663/']
[debug] Encodings: locale UTF-8, fs utf-8, pref UTF-8, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version 2023.01.06 [6becd25] (zip)
[debug] Python 3.8.3 (CPython i686 32bit) - Linux-4.4.0-140-generic-i686-with-glibc2.17 (OpenSSL 1.0.2g  1 Mar 2016, glibc 2.23)
[debug] exe versions: ffmpeg 4.3.1 (fdk), ffprobe 4.3.1, rtmpdump 2.4
[debug] Optional libraries: certifi-2020.06.20, mutagen-1.31, sqlite3-2.6.0
[debug] Proxy map: {}
[debug] Loaded 1760 extractors
[debug] Fetching release info: https://api.github.com/repos/yt-dlp/yt-dlp/releases/latest
Latest version: 2023.01.06, Current version: 2023.01.06
yt-dlp is up to date (2023.01.06)
[debug] Using fake IP <IP_ADDRESS> (RU) as X-Forwarded-For
[KinoPoisk] Extracting URL: https://www.kinopoisk.ru/film/4370148/video/185663/
[KinoPoisk] 4370148: Downloading webpage
ERROR: [KinoPoisk] 4370148: Unable to download webpage: <urlopen error [Errno -2] Name or service not known> (caused by URLError(gaierror(-2, 'Name or service not known')))
  File "/home/denis/yt-dlp/yt_dlp/extractor/common.py", line 680, in extract
    ie_result = self._real_extract(url)
  File "/home/denis/yt-dlp/yt_dlp/extractor/kinopoisk.py", line 31, in _real_extract
    webpage = self._download_webpage(
  File "/home/denis/yt-dlp/yt_dlp/extractor/common.py", line 1083, in _download_webpage
    return self.__download_webpage(url_or_request, video_id, note, errnote, None, fatal, *args, **kwargs)
  File "/home/denis/yt-dlp/yt_dlp/extractor/common.py", line 1034, in download_content
    res = getattr(self, download_handle.__name__)(url_or_request, video_id, **kwargs)
  File "/home/denis/yt-dlp/yt_dlp/extractor/common.py", line 868, in _download_webpage_handle
    urlh = self._request_webpage(url_or_request, video_id, note, errnote, fatal, data=data, headers=headers, query=query, expected_status=expected_status)
  File "/home/denis/yt-dlp/yt_dlp/extractor/common.py", line 825, in _request_webpage
    raise ExtractorError(errmsg, cause=err)

  File "/usr/lib/python3.8/urllib/request.py", line 1350, in do_open
    h.request(req.get_method(), req.selector, req.data, headers,
  File "/usr/lib/python3.8/http/client.py", line 1240, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/usr/lib/python3.8/http/client.py", line 1286, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "/usr/lib/python3.8/http/client.py", line 1235, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/usr/lib/python3.8/http/client.py", line 1006, in _send_output
    self.send(msg)
  File "/usr/lib/python3.8/http/client.py", line 946, in send
    self.connect()
  File "/usr/lib/python3.8/http/client.py", line 1402, in connect
    super().connect()
  File "/usr/lib/python3.8/http/client.py", line 917, in connect
    self.sock = self._create_connection(
  File "/usr/lib/python3.8/socket.py", line 787, in create_connection
    for res in getaddrinfo(host, port, 0, SOCK_STREAM):
  File "/usr/lib/python3.8/socket.py", line 918, in getaddrinfo
    for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
socket.gaierror: [Errno -2] Name or service not known

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/denis/yt-dlp/yt_dlp/extractor/common.py", line 807, in _request_webpage
    return self._downloader.urlopen(self._create_request(url_or_request, data, headers, query))
  File "/home/denis/yt-dlp/yt_dlp/YoutubeDL.py", line 3730, in urlopen
    return self._opener.open(req, timeout=self._socket_timeout)
  File "/usr/lib/python3.8/urllib/request.py", line 525, in open
    response = self._open(req, data)
  File "/usr/lib/python3.8/urllib/request.py", line 542, in _open
    result = self._call_chain(self.handle_open, protocol, protocol +
  File "/usr/lib/python3.8/urllib/request.py", line 502, in _call_chain
    result = func(*args)
  File "/home/denis/yt-dlp/yt_dlp/utils.py", line 1535, in https_open
    return self.do_open(
  File "/usr/lib/python3.8/urllib/request.py", line 1353, in do_open
    raise URLError(err)
urllib.error.URLError: <urlopen error [Errno -2] Name or service not known>

2:
denis@systemp:~$ python3.8 /home/denis/yt-dlp -vU 'https://widgets.kinopoisk.ru/discovery/film/4370148/trailer/185663?noAd=1&embedId=&hidden=&muted=&loop=0&autoplay=1&from=&extraTrailers=&onlyPlayer=1'
[debug] Command-line config: ['-vU', 'https://widgets.kinopoisk.ru/discovery/film/4370148/trailer/185663?noAd=1&embedId=&hidden=&muted=&loop=0&autoplay=1&from=&extraTrailers=&onlyPlayer=1']
[debug] Encodings: locale UTF-8, fs utf-8, pref UTF-8, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version 2023.01.06 [6becd25] (zip)
[debug] Python 3.8.3 (CPython i686 32bit) - Linux-4.4.0-140-generic-i686-with-glibc2.17 (OpenSSL 1.0.2g  1 Mar 2016, glibc 2.23)
[debug] exe versions: ffmpeg 4.3.1 (fdk), ffprobe 4.3.1, rtmpdump 2.4
[debug] Optional libraries: certifi-2020.06.20, mutagen-1.31, sqlite3-2.6.0
[debug] Proxy map: {}
[debug] Loaded 1760 extractors
[debug] Fetching release info: https://api.github.com/repos/yt-dlp/yt-dlp/releases/latest
Latest version: 2023.01.06, Current version: 2023.01.06
yt-dlp is up to date (2023.01.06)
[generic] Extracting URL: https://widgets.kinopoisk.ru/discovery/film/4370148/trailer/185663?noAd=1&embedId=&hidden=&muted=&loop=0&autoplay=1&from=&extraTrailers=&onlyPlayer=1
[generic] 185663?noAd=1&embedId=&hidden=&muted=&loop=0&autoplay=1&from=&extraTrailers=&onlyPlayer=1: Downloading webpage
WARNING: [generic] Falling back on generic information extractor
[generic] 185663?noAd=1&embedId=&hidden=&muted=&loop=0&autoplay=1&from=&extraTrailers=&onlyPlayer=1: Extracting information
[debug] Looking for embeds
ERROR: Unsupported URL: https://widgets.kinopoisk.ru/discovery/film/4370148/trailer/185663?noAd=1&embedId=&hidden=&muted=&loop=0&autoplay=1&from=&extraTrailers=&onlyPlayer=1
Traceback (most recent call last):
  File "/home/denis/yt-dlp/yt_dlp/YoutubeDL.py", line 1502, in wrapper
    return func(self, *args, **kwargs)
  File "/home/denis/yt-dlp/yt_dlp/YoutubeDL.py", line 1578, in __extract_info
    ie_result = ie.extract(url)
  File "/home/denis/yt-dlp/yt_dlp/extractor/common.py", line 680, in extract
    ie_result = self._real_extract(url)
  File "/home/denis/yt-dlp/yt_dlp/extractor/generic.py", line 2523, in _real_extract
    raise UnsupportedError(url)
yt_dlp.utils.UnsupportedError: Unsupported URL: https://widgets.kinopoisk.ru/discovery/film/4370148/trailer/185663?noAd=1&embedId=&hidden=&muted=&loop=0&autoplay=1&from=&extraTrailers=&onlyPlayer=1

There are two commercials before the trailer. Maybe that's the reason.
And to make the right mouse button above the video work in Firefox (to copy the iframe URL) you need to change dom.event.contextmenu.enabled parameter to false in about:config.
So adding support for widgets.kinopoisk.ru would also be good.

The extractor is making a request to an API subdomain that no longer exists. It will need to be rewritten. The iframe source from the example URL has some JSON that holds most of the information that the extractor currently looks for.

Also, the extractor doesn't know or care about the trailer that is actually being requested in the first URL (the film itself isn't available, only a ticket link).
The widgets.kinopoisk.ru link is an internal link that you wouldn't normally find in the site's pages, whereas the trailer link is actually on the film's page on the site https://www.kinopoisk.ru/film/4370148/. It would be easy enough to add an extractor class to redirect from the widgets URL but I wouldn't be in favour.

Related: https://github.com/ytdl-org/youtube-dl/issues/18896
Also: https://github.com/ytdl-org/youtube-dl/issues/27644

I understand. yt-dlp sends a request to a domain that doesn't exist https://ott-widget.kinopoisk.ru/v1/kp/?kpId=4370148
But even if I replace ott-widget.kinopoisk.ru with widgets.kinopoisk.ru in the source code https://github.com/yt-dlp/yt-dlp/blob/master/yt_dlp/extractor/kinopoisk.py then:

URL (not domain) https://widgets.kinopoisk.ru/v1/kp/?kpId=4370148 doesn't exist
yt-dlp sends a request where video_id (4370148) is the id of the movie, not the trailer (185663). Trailers are not counted. It is required to send two id's (https://www.kinopoisk.ru/film/4370148/video/185663/)

I was told that Internet Download Manager supports downloading.

It's not just the domain that's changed.
This procedure gets the trailer:

Download the webpage.
Check if the title is Oops!, which means the URL led to a bad page or, if /checkcaptcha? is in the page, a Captcha page.
Otherwise find the share URL from the video_src or twitter:player meta items.
Download the share page from the URL.
Find the discovery URL as the src of the <iframe> in that page.
Download the discovery page from the URL.
Get the discovery data by finding the content of the <script> element with attribute data-state, decoding its %-encoding and parsing as JSON.
The trailer media link is at .models.trailers.{trailer_id}.streamUrl along with other trailer-specific data; .models.trailers.film is an object containing details of the film being trailed.

If any page on the site actually hosts a playable feature (ie, not just a clip or trailer), the .models.films.{film_id} object might be populated, including media link(s).

dirkf it's difficult for me.
Here's an option: you can get a link to m3u8 using the hls stream detector extension, which you can then send to yt-dlp and yt-dlp will download the video.
Start playing the video on the page, select the desired quality, move the cursor to the beginning and copy the latest link to m3u8 from the extension.

What we need in order to test a new extractor is a page that plays a feature, and not just a trailer, in the site (so, not just linking to external sites).


mounted apps should only get relative urls

Can we implement something like https://github.com/koajs/mount for polka?

Hey,
If you are asking that app.use("/items", itemsApp) should make the itemsApp see URLs stripped of "/items" in the req.url, that already happens
If I misunderstood and it's something else, please let me know and I'll reopen. Thanks!


rtmp mp4 or flv type of steams do not work

        sources: [{
          type: 'rtmp/flv',
          src: 'rtmp://localhost/live/key'
        }

Why rtmp stream do not work at Vue.js 2.2.1?

Sorry. Now works fine. I'd problems with browser.


MSIRGB vs Mystic Light performance issues?

Just seeing if MSIRGB has any issues like I experience with MysticLight. MysticLight at this point is unuseable for me as it causes major performance issues. For example when playing a game I get constant dips in performance, when watching a youtube video It pauses and stutters and gives me a buzzing sound when active. If I close out the MysticLight service and LEDKeeper this all goes away. Just needing something that doesn't cause these issues.

I'm not aware of any if these issues with MSIRGB, but Mystic Light shouldn't cause that either.


Remove Celery self.request.chain hack

User Story - Business Need

[ ] Ticket is understood, and QA has been contacted (if the ticket has a QA label).

User Story(ies)
As a Notify developer,
I want to halt execution of a chain of Celery tasks the right way according to the documentation
So that the code doesn't inadvertently break in the future.
Additional Info and Resources

A Celery task in a chain only executes when the proceeding task successfully exists.  To terminate the chain early, one should raise a non-retryable exception.  However, our code base contains some sort of undocumented hack that terminates the chain using self.request.chain = None.
.../notification-api$ grep -rn -E "self\.request\.chain" .
./app/celery/lookup_va_profile_id_task.py:78:        self.request.chain = None
./app/celery/lookup_va_profile_id_task.py:91:        self.request.chain = None
./app/celery/lookup_recipient_communication_permissions_task.py:66:        self.request.chain = None
./app/celery/contact_information_tasks.py:67:        self.request.chain = None

Acceptance Criteria

[ ] Instances of self.request.chain = None removed, non-retryable exceptions raised where appropriate, and all unit tests pass

QA Considerations

Potential Dependencies

I ended up deleting 3 of 4 instances of self.request.chain as part of #1800.  Only the occurrence in lookup_recipient_communication_permissions_task.py remains.

Hey team! Please add your planning poker estimate with Zenhub @coreycarvalho @cris-oddball @EvanParish @k-macmillan @kalbfled @MackHalliday @mchlwellman

I'm working on a revision of #1800, and I ended up removing the last occurrence in lookup_recipient_communication_permissions_task.py.  This ticket is no longer necessary.


timeout

Hi
:mongodb, "0.4.7"
I was trying to increase of timeout, my conf:
config :myapp, Repo,
  adapter: Mongo.Ecto,
  database: "myapp_dev",
  pool: DBConnection.Poolboy,
  pool_size: 1,
  pool_timeout: 15_000,
  timeout: 15_000,
  connect_timeout_ms: 60_000,
  ownership_timeout: 15_000,
  connect_timeout: 60_000,
  handshake_timeout: 60_000

But it not produced any results:
[error] Mongo.Protocol (#PID<0.3632.1>) disconnected: ** (DBConnection.ConnectionError) client #PID<0.846.0> timed out because it checked out the connection for longer than 5000ms
[error] Task #PID<0.846.0> started from #PID<0.599.0> terminating
** (Mongo.Error) tcp recv: unknown POSIX error - :closed
    (mongodb) lib/mongo/cursor.ex:154: anonymous fn/5 in Enumerable.Mongo.AggregationCursor.start_fun/5

When I hardcoded(changed) default @timeout in 'deps/mongodb/lib/mongo.ex', all works.
What I do wrong?
Thx

You seem to be showing a config for the :mongodb_ecto package. Can you reproduce this if you just use this package (:mongodb) directly?

@ankhers What do you mean "use this package (:mongodb) directly" - ?

Like I said, you showed a configuration for using Ecto. This driver can
be used directly without needing Ecto. You can take a look at this
projects README for basic usage information. If you think you are
already using this driver directly, can you show me an example call that
is failing with your timeout issue?

Closing due to inactivity. Feel free to reopen the issue if you feel it is still an issue and you get me the information I asked for.


Document how SLSA levels are met by example pipelines

Current Behavior
With multiple example pipelines that exist today in FRSCA, there is no mapping on how they are meeting the various SLSA levels.

Expected Behavior
Document how the pipelines with the various tools and controls are meeting the SLSA levels. Which conditions are being met within each level and which are still missing.

This was also just discussed at the SLSA meeting today on June 9th, 2022. It would be useful to make sure to folks that it's clear how Frsca meets the various SLSA requirements and having also examples.
@cdwbrad SPIFFE/Spire should meet the requirements and the work I believe is mostly done to integrate Spire into Tekton Chains which would allow Frsca to achieve that higher level requirement.

@mlieberman85 That's good to hear.  Where are the SLSA meetings (incl. schedule & notes) tracked?

@cdwbrad https://github.com/slsa-framework/slsa


When buy a stamp the batchTTL stays on -1 even if the usable flag switch to true

When a stamp is bought the batchTTL never got updated with proper time to expire.
The usableflag is updated and change to true, but the batchTTL doesn't
Status shown on /health is
{
    "status": "ok",
    "version": "1.6.0-6ceadd35",
    "apiVersion": "3.0.1",
    "debugApiVersion": "2.0.1"
}

Thanks, in the end it turned out we have this already reported 😅 So closing for duplicate of #74


Use Google Chrome to visit Http3 Server

I run the example in /quic-go/example folder, my command is:
go run main.go -v -trace -qlog -tcp -bind=<IP_ADDRESS>:6121
When I use google chrome to visit https://<IP_ADDRESS>:6121/demo/echo, there is an error in chrome: certificate invalid;
quic server also has an error: http: TLS handshake error from <IP_ADDRESS>:50788: remote error: tls: unknow certificate.
I just want to use chrome to visit quic server.
Can anyone help me? thx

As the error message says, the certificate you're using is invalid.

ok, thx,I have solved this problem.


Comms plan

[x] Explore opportunities to promote - e.g. magazine articles, announcements, presentations at conferences etc.
[x] Draft the plan
[ ] Share draft comms plan with CFOB, OSME, IITB procurement, and IITB comms
[ ] Make revisions based on comments received
[ ] Connect with the ESDC public affairs and stakeholder relations team (they do the social media)

How to connect with the ESDC public affairs and stakeholder team: https://014gc.sharepoint.com/:w:/r/sites/GCDevEx/Shared Documents/Social Media - esdc channels.docx?d=w76654c348b714c029f6ab46b35ae39dc&csf=1&web=1&e=dWvrxA

From our business case about the comms plan:
Following approval of the pilot, a detailed communications plan will be developed.
Some initial thinking around communication activities includes the following:

Communications activities should ensure that diverse suppliers are aware of the micro-procurement pilot (e.g. Indigenous business organizations, women-led IT businesses, students).

Communication activities will be targeted at suppliers as well as clients within ESDC.

Communications activities targeted towards suppliers could include:

advertising on Buy and Sell (e.g. posting a news item)

posting an issue on the old GCDevEx repository

creating a twitter feed for ESDC micro-procurement opportunities.

Communications activities targeted towards ESDC could include:

a presentation at the IITB showcase

a message in the IITB newsletter

a message in the CFOB newsletter

Other communications pathways will be added to the communication plan as the project unfolds.

First draft of the plan is ready for review: https://014gc.sharepoint.com/:w:/r/sites/GCDevEx/Shared Documents/Change Management/Comms plan.docx?d=w5a934f345f384a4d8932496a9bb27513&csf=1&web=1&e=TBNbgk

Ready for review but moving to backlog until PPRC approval


Zodiac signs

Added two vectors of strings, Western Zodiacs and Chinese Zodiacs, as well as generator functions for each vector respectively.

Please resolve conflicts

Also give a star to repo to make it more popular :fire:

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:
:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.

Files
Coverage Δ

src/modules/person/PersonTest.cpp
100.00% <100.00%> (ø)

... and 1 file with indirect coverage changes
:loudspeaker: Thoughts on this report? Let us know!


Which CAM model has the lowest computation cost?

I would say that EigenCAM, since it's only one forward without a backward pass (with the extra step of the SVD), but need to benchmark that.
After that, GradCAM varients.
AblationCAM/ScoreCAM are the slowest.

Thanks a lot.


FR: Compatibility with ChatGPT Completions Model API

Hello,
First of all thank you so much for all of your hard work on making this tool as well as making it so easy for everyone else to use; you should definitely get a Ko-Fi/Buy Me a Coffee/Paypal donation link set up so people can show their appreciation.
Context
For the most part, I have found all of the key functionalities to work really well and as someone who was previously taking all of their notes in VS Code with Copilot integrated, I feel that this plugin is almost just as good as Copilot (for taking notes at least) which says a lot. However, and this may be due to the fact that I am using gpt-4o-mini, I have found that the completion suggestions given are usually irrelevant and while they are useful in the sense that it allows me to know what I'm not looking for, I feel like using VS Code Copilot was giving me way more relevant completion suggestions and that model is not even primarily trained on natural language.
I say all of this just because I feel it would be amazing if this tool could have the ChatGPT Completions models integrated into it; the main difference with those models compared to the Chat models that are currently functional is that the model is purely a "complete-the-sentence" type of model, which in my experience, leads to very relevant sentence completions a large percentage of the time. With these models, there is no prompt engineering capability, but I feel that they function more closely to VS Code Copilot and do tend to offer really good suggestions in my experience and are great for brainstorming, whereas I feel like the current implementation often gives stale suggestions or are just not relevant given the context. The other potential drawback with such completion models is that it might be difficult to implement the kind of prefix/suffic-context functionality you currently have integrated with the chat models, but it is still doable (might take a bit of pre-processing similar to the mask functionality you currently have implented.
The other nice thing about the completions models is that you can regenerate the completion relatively cheaply and get new ideas very quickly, whereas I've felt that the current implementation just gives me the same sort of output every time I send a suggestion request and due to the way the prompt engineering/pre-processing is set up, it can't for example complete half of a word or make a completion of a word based on some initial letters, which I have found to be a useful functionality for spelling/grammar and also just general brainstorming/ideation. If you haven't tried the completions models, I would highly recommend them, you can experiment with them yourself on the OpenAI playground: https://platform.openai.com/playground/complete
Implementation Details
In terms of actually intergrating this with your current codebase, I spent a decent chunk of time trying to understand your code flow, and because I am not an expert in TypeScript, it is still quite unclear if implementing this functionality would be possible or how we would go about doing that since it is a bit different from the Chat implementation you currently have.
I tknow at least in Python, the Chat vs. Completions models can be queried fairly easily using the following code:
Chat Model Query
import requests
import os

api_key = os.getenv("OPENAI_API_KEY")
url = "https://api.openai.com/v1/chat/completions"

headers = {
    "Authorization": f"Bearer {api_key}",
    "Content-Type": "application/json"
}

data = {
    "model": "gpt-3.5-turbo",
    "messages": [{"role": "user", "content": "Hello, how are you?"}]
}

response = requests.post(url, headers=headers, json=data)

Completions Model Query
import requests
import os

api_key = os.getenv("OPENAI_API_KEY")
url = "https://api.openai.com/v1/completions"

headers = {
    "Authorization": f"Bearer {api_key}",
    "Content-Type": "application/json"
}

data = {
    "model": "gpt-3.5-turbo-instruct",
    "prompt": "Write a tagline for an ice cream shop.",
    "max_tokens": 50
}

response = requests.post(url, headers=headers, json=data)

if response.status_code == 200:
    result = response.json()
    print(result['choices'][0]['text'])
else:
    print(f"Error: {response.status_code}, {response.text}")

Do you think something like this would be difficult to implement? In terms of prompt engineering, I was thinking the whole suffix functionality could be implemented by basically prepending some "Given: sentence should end with ' [suffix here] ', complete the following: [prefix here]". For example:
Given I will complete the sentence with "around the backyard. Later, he barked loudly at the postman."

The most likely completion for "The dog chased the" is: "The dog chased the

Doing a couple of experiments with the completions model (GPT 3.5 Turbo), I find it does a good job of completing the sentence, and it gives different outputs, ranging from 'squirrel', to 'ball', to 'tennis ball', to 'cat', etc.:

However, when I did this same experiment in Obsidian using the current plugin, the completion every single time was 'ball'. This completion isn't bad in this case, but if I wanted to do some brainstorming and get different model outputs, I feel that the current implementation is a bit too deterministic, even with the temperature parameter set to 1:

In my experience the GPT completions models are very good at capturing a variety of outputs and getting my gears turning whereas I just feel that the current plugin just outputs the same suggestion every time, almost as if it is a markov bot. If we could be taking advantage of the full GPT language model and using the completions model, especially while simultaneously adding some minimal prompt engineering like what I mentioned, I think this could be a great addition.
At the same time, I should also mention that my knowledge is limited as far how your plugin works; at the end of the day, all I really want is to have a bit more control over the length of the model output and the variety of the completions as well, both of which are offered when I use the completions model Playground. Also, in the quick experiment I described above, I was regenerating responses with your plugin by simply accepting a model suggestion, then deleting the completion, then re-querying the model using the Copilot auto completion: Predict command. I don't know if there is something under the hood that is caching previous outputs if they have the same prefix/suffix.
Regardless, I still think it would be nice to have the option to use the completions models instead of the chat models, as I think they do have some fundamental differences and I have personally found the Completions models to be more useful for writing up emails/messages/converting my thoughts into a more ordered structure (I've used it for helping me writing up this issue/feature request) without being inundated with irrelevant/over-filtered responses like I have experienced with the Chat functionality.
If you have any idea how this functionality could be best integrated into your codebase/what the TODO's would look like, I would be happy to learn a bit about TypeScript and help out. Thank you again for all of your hard work and I hope at least some of my feedback makes sense. Cheers!

First of all, thank you for the flattery and compliments. I really appreciate it.
I might indeed follow your suggestion for a Ko-Fi/Buy Me a Coffee/Paypal donation link. I also really appreciate all the work you put into this message. I'm really sorry I did not get back to you earlier but I was on a long vacation where I intentionally disconnected from the internet and electronics.
In your message, I identified the following questions and tried to answer as best as I can:
Q: Should we add support for the OpenAI completion API?
A: I don't think it is wise because the OpenAI completion API is considered legacy by OpenAI and will be phased out in the future. OpenAI is going all in on the chat API since it is easier to control and you can get the same results with the right prompt. (Interestingly, the completion models were just the same model, but instead, OpenAI formatted your request in the backend to take care of this prompt engineering.) So I don't think it is wise to add another client for completion models.
Q: The plugin always seems to generate the same response (e.g., "ball"), is this correct? Or is this due to caching?
A: Yes, you are correct, that is due to caching. You can disable this behavior in the settings under general > Cache completions. Afterward, if your temperature is high enough, you will get different results.
Q: At the end of the day, all I really want is to have a bit more control over the length of the model output and the variety of the completions as well.
A: You already have the ability to customize this as you see fit. All you have to do is go to the settings and enable Danger zone > advanced mode. This will show you the advanced settings. Now, you can change the system message, the few-shot examples, and much more. So you could use this to try out your own prompt or even implement a prefix-only-based solution. Additional documentation can be found here and here.
Q: Smaller models like gpt-4o-mini respond with mostly irrelevant completions, especially compared to Github Copilot.
A: I did notice this as well, especially with smaller open-source models via OLLAMA. My main hypothesis is that these smaller models have trouble with the complexity of the fill-in-the-middle task. One possible solution for this would be to add a prefix-only-based mode. But for this, we would at the very least need well-tested system prompts and few-shot examples for each of the contexts. The implementation is doable and I'm happy to give you pointers on how to implement it (or even help/do it if my time permits it). However, you should first validate the solution by customizing your settings and checking if it works well enough to your liking. Then, once we have those system prompts and few-shot examples, and they work well, we can talk further. Take a look at these testing scenarios: link
Q: It seems like the plugin can't, for example, complete half of a word or make a completion of a word based on some initial letters, which I have found to be a useful functionality for spelling/grammar and also just general brainstorming/ideation.
A: The plugin is capable of this, but due to the complexity of the fill-in-the-middle task, the model does not always perform well. Additionally, by default, smaller models do not trigger in the middle of a word. But you can enable this in the settings by adding an .*$ regex to the triggers (not ideal, but it works). The main reason for this was costs when I made this plugin, but since the completion prices have dropped so extensively in the last year, I might add an option to always trigger in the future.
I hope that answers your questions. Please let me know if you have any additional questions (or if I missed one).


Custom character skin issue

Describe your bug here.

Steps to reproduce this bug.
go to character editor, then chose your character sprites
Command Prompt/Terminal logs
No response
Have you modded the build?
Yes, using Mods
If you edited anything in this build, mention or summarize your changes.
No response
What is your platform?
Windows

i realized I needed to put the sprites inside the skin folder without any other folders


Rename Meeshkan to HMT in logs

I'm working on an HMT tutorial and realized that the logs still say Meeshkan is running or Starting Meeshkan on... so this PR updates that to HMT 💫
I also created a branch (rename-logs-from-main) that makes these changes to main in case you decide to make that the default.
If anyone has advice for fixing the failing CircleCI builds, that'd be great. I know I need to update the node version in order to install and run pyright but I'm not exactly sure where... 🤔

Nice, sorry for the delay!

If anyone has advice for fixing the failing CircleCI builds, that'd be great. I know I need to update the node version in order to install and run pyright but I'm not exactly sure where... 🤔

The node version used by CircleCI is in .circleci/config.yml - bumped it now in https://github.com/meeshkan/hmt/commit/93b31e603af3b71b1efaee063b4b28dc49cf357d.


using std::async on a WSL2 Ubuntu distro

Hi,
I've recently started using WSL2 with Ubuntu 18.04.
i wanted to see how it handles using threads, so i wrote a small example program that uses std::async.
specifically the line
auto ftr = std::async(std::launch::async, X(), 42);
where X() is a simple fanctor.
when i try to compile i get the following compilation error:
/usr/include/c++/7/thread:122: undefined reference to pthread_create
i also tried several other ways of using std::async, all resulted in the same compilation error.
I have g++ version 7.5 installed on the Ubuntu distro. The program runs fine on a stand-alone Ubuntu machine (and directly on windows for that matter).
so I'm assuming the problem is with WSL2, and a google search did not help.
any ideas?
Thanks,
Shalev.

Just add -lpthread to gcc command line.

Just add -lpthread to gcc command line.

nope - already tried that. like i said, this runs fine on a standalone Ubuntu machine, without any additional flags.

Just add -lpthread to gcc command line.

nope - already tried that. like i said, this runs fine on a standalone Ubuntu machine, without any additional flags.

So what's your complie cmd? g++ -lpthread xxx.cpp will fail with gcc 7.5, while g++ xxx.cpp -lpthread works fine.

Totally. My bad :)
Thanks!
although i still don't understand how it worked on a standalone Ubuntu
machine without the flag...
On Wed, Apr 29, 2020 at 5:35 AM LightMelodies<EMAIL_ADDRESS>wrote:

Just add -lpthread to gcc command line.
nope - already tried that. like i said, this runs fine on a standalone
Ubuntu machine, without any additional flags.
So what's your complie cmd? g++ -lpthread xxx.cpp will fail with gcc
7.5, while g++ xxx.cpp -lpthread works fine.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/microsoft/WSL/issues/5149#issuecomment-620959535, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/APL4YGFMO6KDLSMWEW4JU5TRO6G7BANCNFSM4MSYLJMA
.

Perhaps a different compiler version?


Is there a reason selectinload isn't a supported import currently?

Using these stubs I get a type error when I import from sqlalchemy.orm import selectinload saying it's not a valid import. Is there a reason for this? I know it's a relatively knew feature.
Thanks for making these stubs by the way!

I know it's a relatively new feature.

This is exactly the case. We are still missing stubs for some recent features. If you have some time you can try using stubgen (tool that comes with mypy) to generate the missing stubs (this typically require a bit of manual work on auto-generated stubs).

@ilevkivskyi Hi, can I be added as a collaborator to this repo? I made a local branch to fix this issue but I'm not allowed to push it.


Is OrbitDB a good option for a collaborative, crowd-sourced distributed metadata database for a file organizer with auto-tagging?

I would like to do a collaborative, crowd-sourced distributed database for a file organizer with auto-tagging where each user has a copy and changes are voted between the users and applied to all databases when they are approved. Is OrbitDB a good option for this or is there anything simpler?

Peerbit may be a better choice for that scale of collaboration.
However, the idea of "the application and not the user" doesn't really work in a p2p database since they are one in the same, no way to prevent a user from acting on behalf of "the application". So it sounds like you need a server for running "the application" part, or a smart contract.
Alternatively, you can look into Holochain which is more than a p2p database and allows thing such as not permitting writes unless they're signed with validity based on custom rules (such as "had enough votes") that are enforced by every peer.

I would recommend reaching out to the community to discuss your requirements in more detail.


Add missing features in React 0.61.5

I'm hitting a few issues in attempting to build React 0.61.5 with PodToBUILD on the following archive:
'https://github.com/facebook/react-native/archive/v0.61.5.zip'
The following situations are occurring which make this tricky to handle

Aliasing doesn't alias all subspecs, only the top level one. This requires manually aliasing right now.
Header namespaces are mixed up for a child pod. For example, RCTText and RCTImage.
There is a convention of importing pods into the Podfile from a subspec? e.g. pod 'React-Core/DevSupport', :path => "#{prefix}/"

There are also examples of where glob patterns are broken due to child build files:
e.g.
# Vendor/React/React-Core.podspec
'RCTTextHeaders'              => 'Libraries/Text/**/*.h',

While we currently are sticking a build file at
Vendor/React/Libraries/Text

Is 61.4 the latest react native that works in PodToBUILD then?

It looks the version used in the example is 0.63.1, so I'm assuming some of these things were fixed since then? I can't confirm it works fully though, as I can build the example, but I can't figure out how to depend on it. I am trying with the react native template project and cannot find the headers:
ios/HelloWorld/AppDelegate.h:7:9: fatal error: 'React/RCTBridgeDelegate.h' file not found
#import <React/RCTBridgeDelegate.h>

It looks the version used in the example is 0.63.1, so I'm assuming some of these things were fixed since then? I can't confirm it works fully though, as I can build the example, but I can't figure out how to depend on it. I am trying with the react native template project and cannot find the headers:
ios/HelloWorld/AppDelegate.h:7:9: fatal error: 'React/RCTBridgeDelegate.h' file not found
#import <React/RCTBridgeDelegate.h>


release 0.7.0

Update MSRV to 1.63
Warning of potential ABI compatibility issues
Update sys.rs to 6.10

I'm a bit concerned that arch check will break too much project, so I plan to vendor more arch. this won't be done this weekend anyway (because black wukong).


Server-closes-shortly-after-opened

React Native version:0.61.5

Steps To Reproduce
1.Craete a server
2.Start it: expo start

Describe what you expected to happen: Expected not to crash/ work perfectly
Snack, code example, screenshot, or link to a repository:

Duplicate of #27516


Support for VS2015 Update 3

Cannot compile the hello_world example from here using VS2015 Update 3 (version 14.0.25431.01, with C++ 19.00.24215.1).
The same example works fine with VS2017 (version 15.2 (26430.6) Release, with C++ 19.10.25019).
1>------ Build started: Project: test_smlAndVs2015, Configuration: Debug Win32 ------
1>  test_smlAndVs2015.cpp
1>d:\work\exploratory\test_smlandvs2015\test_smlandvs2015\boost\sml.hpp(1607): error C2039: 'state_machine': is not a member of 'boost::sml::v1_1_0::back::sm<boost::sml::v1_1_0::back::sm_policy<T>>'
1>          with
1>          [
1>              T=hello_world
1>          ]
1>  d:\work\exploratory\test_smlandvs2015\test_smlandvs2015\boost\sml.hpp(1199): note: see declaration of 'boost::sml::v1_1_0::back::sm<boost::sml::v1_1_0::back::sm_policy<T>>'
1>          with
1>          [
1>              T=hello_world
1>          ]
1>  d:\work\exploratory\test_smlandvs2015\test_smlandvs2015\test_smlandvs2015.cpp(71): note: see reference to class template instantiation 'boost::sml::v1_1_0::sm<hello_world,boost::sml::v1_1_0::Policies<>>' being compiled
1>  d:\work\exploratory\test_smlandvs2015\test_smlandvs2015\test_smlandvs2015.cpp(60): note: see reference to class template instantiation 'boost::sml::v1_1_0::front::state<T>' being compiled
1>          with
1>          [
1>              T=established
1>          ]
1>d:\work\exploratory\test_smlandvs2015\test_smlandvs2015\boost\sml.hpp(1607): error C2873: 'state_machine': symbol cannot be used in a using-declaration
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

Looks like VS2015 went broken on AppVeyor on 9 Apr 17 with this commit.

Fixed by https://github.com/boost-experimental/sml/commit/ca49165220feb55c5ae1903653b0db02e3c37fb5


Shipping Labels

What I'm trying to achieve
Shipping Label printing from the order dashboard
Describe a proposed solution
Goshippo integration linked to each order, or stamps.com, both have nice APIS
Other solutions I've tried and won't work
no solutions
Screenshots or mockups
https://i.imgur.com/M79bctE.png

Willing to donate up to 100$ BTC if someone is willing to add this to the project i really want to switch from WordPress, this is one feature thats major and not added that would make me switch.


⚠ T:Riza Docs has degraded performance

In 333273e, T:Riza Docs (https://docs.triza.dev) experienced degraded performance:

HTTP code: 200
Response time: 1657 ms

Resolved: T:Riza Docs performance has improved in 29a5d3b.


Adding tags to Docker image

Hi,
Would it be possible to add tags to your automated build image on Docker Hub?
I'm not sure how easy or difficult it is:
http://stackoverflow.com/questions/25328166/docker-hub-automated-build-tagging
But I'm stuck trying to workaround this issue:
https://github.com/sdelements/lets-chat/issues/607
If there were tags, I can just use an earlier working image.  But right now, everything is tagged as latest and overwrites the previous build.
Thank you for such an awesome product!

Hey @alininja,
Sorry for the delay, I've tagged 0.4.3 in docker. Let me know if it works for you.

Hi @hhaidar , thanks for adding the tag.  I'll try the container out the next time I'm pulling images.  Keep up the awesomeness! :smile:


Incompatible with aliased rm

I have in my zshrc:
alias rm='echo "This is not the command you are looking for."; false'
to prevent me absent mindedly using rm instead of trash-cli.
marker is incompatible with this alias.
Changing line 42 in marker.sh to \rm -f $tmp_file seems to fix it.

why not just alias rm to trash-cli?

I had a similar issue where my "rm" alias has a -v flag.
Sent a PR #77 to fix this.


[fix] #2225: Fix benchmarks

Signed-off-by: Ales Tsurko<EMAIL_ADDRESS>

Description of the Change
I've changed the waiting time (thread::sleep) for blocks to appear in WSV. The value is twice bigger, so I expect it will work on machines twice slower.

Issue
As described in the ticket, cargo bench panicked. It turned out the panic caused by too little time of waiting for blocks to appear in WSV.

Benefits
It should fix the bug.

Possible Drawbacks
The needed time may vary from machine to machine. As for now I don't know how everything works exactly, I can only guess that it's because of the time of blocks validation. So it may fail on slower machines, and then we need to increase the value again. Also, it slows down the benchmarks.

Usage Examples or Tests [optional]
None.

Alternate Designs [optional]
We may provide an optional config for benchmarks through an environment variable, for example, with the sleep time.

I can't reproduce the error in issue #2225. Is the panic message you find the same as the original issue?

Well, I have the warnings described in the issue, but they aren't the cause of the panic, which is actually the one you described below.

Apart from that, it seems that the tps-dev benchmark has indeed broken at some point since #1963. As of efa9a35, no matter how long I wait (at least in 32 seconds, I've confirmed that it fails. It's abnormal) the same number of blocks as the configuration are never applied to WSV:
thread 'main' panicked at 'The block is not yet in WSV. Need more sleep?', client/benches/tps/lib.rs:94:22

One possible cause is that the event counters are detecting more events than the actual number of blocks committed, and exiting prematurely

Hmm Then changing this value won't fix anything. Will investigate further then. Thanks!