404 - Failed to complete negotiation

Hi, firstly this is a fantastic library, we love the Swagger-like interface, really a huge benefit.
I'm having somewhat a strange issue.
When opening the signalr-dev page, everything loads as normal, I see the SignalR Hub methods. However, when I click "Connection to Hub", I receive:
Exception occurred:  Error: Failed to complete negotiation with the server: Error: Not Found: Status code '404' Either this is not a SignalR endpoint or there is a proxy blocking the connection.
When I log the full request log, I see the following URL being hit:
http://localhost:55073/signalr-dev/chat/negotiate
My hub is configured as:
app.MapHub<ChatHub>("chat");
It seems like the URL should exclude the "/signalr-dev" part of the path?
This did work fine the first time I started the app up, but clearly I changed something to break it in the meantime.
Any thoughts on either where my configuration could be wrong, or is there possibly some bug here?
Thanks

Thank you for your response. I will take your feedback into consideration.
If you have any further questions or concerns, please let me know.
Best regards, Jon Adams
Sent via Lindy https://lindy.ai
I don't think it's a bug; if there's an advantage to passing strings to
MapHub that don't start with /, I will consider an improvement.
—
Reply to this email directly, view it on GitHub
https://github.com/nenoNaninu/TypedSignalR.Client.DevTools/issues/82#issuecomment-2067696196,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACLVRKAEBI4JVVDAW3KENT3Y6J52HAVCNFSM6AAAAABGHPGK7GVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDANRXGY4TMMJZGY
.
You are receiving this because you authored the thread.Message ID:
@.***>


Fix #81

typo in Logger.lua

Sorry, I changed write to writeMsg without updating the calling codes.
However, we have to avoid write for a good (and interesting) reason. In parallel mode, each thread has its own context so we must share the global Logger instance. To move this instance inside each context, Torch uses serialization and attempts to call write on the object. But here write does not serialize the object and it fails.
I updated the calling codes in your branch.


Fix markdown formatting

Improves readability of streaming related combinator summary

Coverage remained the same at 87.653% when pulling 16f6740587f5e6cffd46fc5d4f583df16e054380 on khernyo:patch-1 into dee4a6bf27af9643e63ea0fcf221cbf6f554cb90 on Geal:master.

Thanks!


Can't change preset if one of selected images have selected other than others presets

Godot version:
3.1 f2cc969
OS/device including version:
Windows 10
Issue description:
When I have 3 images imported as Texture and 1 as image, then when I select all, I can't change Import options
Steps to reproduce:
https://streamable.com/zjiwn

Texture2D and Image have different settings, we'd need something similar to MultiNodeEdit to support that. Open a proposal if this is desired.


Fix invalid shape issue in random.uniform

This PR tries to address the issue raised in #34363 where
invalid shape passed to minval/maxval (expected to be 0-D)
does not raise an error.
The issue was that in most of the scenarios the shape was
checked inside the C++ kernel ops.
However, in one condition math_ops.add was used which will
implicitly do broadcast when necessarily.
This results in maxval/minval's shape getting carried.
This PR adds the shape check before math_ops.add, to make
sure the shape is guaranteed.
This PR fixes #34363.
Signed-off-by: Yong Tang<EMAIL_ADDRESS>

@yongtang Could you please check failed build errors? Thanks!

Thanks @alextp @gbaned for the review. The PR has been updated to fix the failed tests.

@yongtang Here is the internal error we are getting , can you please check this.

google3/third_party/py/six/init.py", line 737, in raise_from
raise value
InvalidArgumentError: Function invoked by the following node is not compilable: name: "__forward_call_512" op: "__forward_call_512" input: "dummy_input" input: "dummy_input" input: "dummy_input" input: "dummy_input" input: "dummy_input" input: "dummy_input" input: "dummy_input" input: "dummy_input" input: "dummy_input" attr { key: "_XlaCompile" value { b: true } } attr { key: "config_proto" value { s: "\n\007\n\003CPU\020\001\n\016\n\nTPU_SYSTEM\020\001\n\007\n\003TPU\020\002\n\007\n\003GPU\020\0002\002J\0008\001" } } attr { key: "executor_type" value { s: "" } }.
Uncompilable nodes:

Thanks @gbaned, the log is quite hard to interpret, I am wondering if there are any other information I could see? For example, can I get the code snippet that related to this error?

Thanks @gbaned, the log is quite hard to interpret, I am wondering if there are any other information I could see? For example, can I get the code snippet that related to this error?

The test breaks because EnsureShape is not implemented for XLA, and with your change we generate EnsureShape in graphs where we wouldn't before.  Can you please add an XLA kernel for EnsureShape (preferably in a separate PR)?  Let me know if you need help.

Thanks @sanjoy. I will take a look and add XLA EnsureShape kernel first.

@yongtang Any update on this PR, please. Thanks!

It has been 16 days with no activity and the awaiting response label was assigned. Is this PR still valid? Assigning the stalled label. Please comment to reassure me that this is still being worked on.

Sorry for the late reply. Was out of the office during the year end and was only back last week. I will update and work on XLA EnsureShape shortly.

@yongtang Any update on this PR, please. Thanks!

It has been 15 days with no activity and the awaiting response label was assigned. Is this PR still valid? Assigning the stalled label. Please comment to reassure me that this is still being worked on.

@yongtang Any update on this PR and can you please resolve conflicts? Thanks!

I'm going to go ahead and close this PR, because it seems to have stalled. If you're still interested in pursing this (and responding to my comments), please feel free to reopen!

Sorry for the long wait. I have created #38544 to fix the ensure_shape issue. Once the #38544 is merged, this PR will be re-opened for a final fix.


Fixed broken checkbox behavior

Fixes #2857, #2922, #3162, #3437.

Codecov Report

Merging #3482 into master will not change coverage.
The diff coverage is 100%.

@@          Coverage Diff           @@
##           master   #3482   +/-   ##
======================================
  Coverage     100%    100%
======================================
  Files          66      66
  Lines        1505    1505
======================================
  Hits         1505    1505

Impacted Files
Coverage Δ

src/events/getValue.js
100% <100%> (ø)
: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 95b6767...4661c10. Read the comment docs.

Published in v7.1.0.


ETag by destination

It seems that currently ETags are stored by URL download was made from. Problem is that Amazon URLs with authentication have one time keys generated, so URL is different every time, even the file is same, with same ETags. Would it be possible to add option to use a destination file for ETag dictionary key, not the source URL?

Can you give us an example for such a URL?
I just read the following StackOverflow question and the accepted answer:
https://stackoverflow.com/questions/2744975/how-do-i-deal-with-different-requests-that-map-to-the-same-response
They say that the server should do a redirect to a canonical resource. Does AWS do that? It is true that gradle-download-task uses the URL you specified in the build file, but if AWS redirects the client to a canonical URL, it would be probably be possible to use that as cache key.

It doesn't do a redirect.Here are examples:
https://s3.amazonaws.com/coronalabs-plugins/com.vungle/plugin.vungle/2018.3326/android/data.tgz?X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWRQLEPBER32H2UQ%2F20190626%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20190626T110730Z&X-Amz-SignedHeaders=host&X-Amz-Expires=2700&X-Amz-Signature=a8679ced8ab30eb14b574b7a2b354a664d8769f97fda27170309103634da79c8

https://s3.amazonaws.com/coronalabs-plugins/com.vungle/plugin.vungle/2018.3326/android/data.tgz?X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWRQLEPBER32H2UQ%2F20190626%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20190626T110504Z&X-Amz-SignedHeaders=host&X-Amz-Expires=2700&X-Amz-Signature=ad463692558d145c4ddb5932eea0fb2a2fb70704125a1a2978184e1bbfd28b13

They got two different GET parameters, same ETag.

These URLs contain temporary authentication tokens. Why do you want to insert them in your build script if they expire eventually?
Please have a look at the AWS documentation, in particular the page on signing and authenticating REST requests:
https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html
There are other ways to provide credentials than query parameters. For example, HTTP headers. This way, you could profit from static URLs as well as Etags.

I have existing backend and I'm writing my own non maven based plugins system for custom build system. I put in a workaround:
        with(DownloadAction(project)) {
            src(url)
            dest("$coronaAndroidPluginsCache/$plugin")
            val outputFile = outputFiles.first()
            if (existingTag != null && outputFile.exists()) {
                header("If-None-Match", existingTag)
            }
            responseInterceptor { response, _ ->
                val eTag = response.getFirstHeader("ETag")
                if (eTag != null) {
                    newETagMap[plugin] = eTag.value
                }
            }
            execute()
        }

It's Kotlin script, but seems readable.

Great. Sounds like the issue can be closed. Let me know if you have any other questions.


Add MOI wrapper for SAT solver

Adds an MOI wrapper to allow the use of the SAT solver through MOI (and hence through JuMP)

This is great, many thanks!


fix(automerge): Fix AutomergeDb memory leak

copilot:all

Current dependencies on/for this PR:

main

PR #4871   👈

This stack of pull requests is managed by Graphite.


after update serenity

after update,
I got the next error

Can someone help me ?

Try rebuilding project, reinstall all packages.


docs: add info about ngx-translate

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)
Not sure if this is the best place and way to inform users about it but the readme is usually the first place I personally tend to look for help on these kind of issues.

I think it better to add it as an example, similar to https://ngx-formly.github.io/ngx-formly/examples/advanced/i18n

Closing in favor of #1671


time format deprecated issue

Hi, i would like to reopen the issue thats going on in this thread.
https://github.com/chartjs/Chart.js/issues/6677
i found out that these warning pops out every 10milisec? when i use the below plugins.
【warnings poping out】
time scale: "time.format" is deprecated. Please use "time.parser" instead

since it pops out in high rate, the memory will be decreased, leading huge lag.
【plugins that makes warning】
①chart.js 2.9.3
②chart.js financial plugin
③chart.js streaming plugin 1.8.0
I have made a quick sample html here.
http://aifx2.sakura.ne.jp/realtimecharttest2.html
please kindly confirm.
<!DOCTYPE HTML>

<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">

I think you can work around this by setting the time.format to undefined.

FWIW - this fixed this issue for me, along with a bad stutter in animation.  This was with using the chart.js streaming plugin 1.8.0 (maybe this should be raised on that project too/instead?)
This issue only happened with using chartjs as an NPM module and rollup, but did not happen when using chartjs via head include.

this should be fixed.

Hey, i found the solution, just change the time.format to time.parser and it will fix your issue


Adds eslint support

This pull request adds eslint support in order to improve the quality of the code base. The following considerations went into creating the pull request

To enforce a consistent code style in the future, the https://github.com/airbnb/javascript style guide was chosen as a default because

Opendatacam never had a style definition of their own
The majority of the code seem to roughly follow the https://github.com/airbnb/javascript style anyway

Eslint is set up to check the frontend, backend & test code

Therefore the node, react and jasmine environments are enabled
We enclude the react plugin to check the react code

As the code base is currently messy, no errors will be triggered, instead all violations are marked as warnings

The github workflow should highlight any style violations in new pull requests, allowing to gradually improve the codebase*
Over time as the code base improves we can enforce stricter rules

I can not test this before the pull request has been merged,.

okay 😁 , OpenDataCam getting fancy !


fix multi-monitor not working in windows with moveMouseSmooth

add signed support and virtual screen mapping to moveMouseSmooth. add small distance based delay modifier.

This PR is needed, as the issue still exists.


The release is lost after mirror synchronization

Description
我有一个clash-verge仓库的镜像,然后在镜像中发布了新版本,并上传了附件。
但是在一次同步镜像后,发布的新版本丢失了。同时我的附件也没有在页面中显示，但是文件和数据库中都有。
我得问题是：镜像仓库是否可以发布独立的版本，即便同步后也依然存在？如果不支持，那我该如何删除已经发布的版本，在数据库和附件目录中的产生的文件。
I had a mirror of the clash-verge repository, and then published the new version in the mirror and uploaded the attachment。 but after a synchronous mirror, the new version of the release was lost and my attachment was not displayed in the page but in the file and database
My question is: Can a mirror repository publish a separate version and still exist even after synchronization? If not, how do I delete the released version, the generated files in the database and attachment directory

Gitea Version
1.20.5
Can you reproduce the bug on the Gitea demo site?
Yes
Log Gist
No response
Screenshots
No response
Git Version
2.40.1
Operating System
Proxmox 8.0.2
How are you running Gitea?
Run in docker
Database
MySQL/MariaDB

I don't know if a method exists to a mirror repository publish a separate version and still exist even after synchronization.
As for delete the released version, the generated files in the database and attachment directory,  gitea admin repo-sync-releases will set all releases identical with pull-mirror upstream.

duplicate with https://github.com/go-gitea/gitea/issues/22066?

duplicate with #22066?

Yes, I will close this issue.

I don't know if a method exists to a mirror repository publish a separate version and still exist even after synchronization. As for delete the released version, the generated files in the database and attachment directory, gitea admin repo-sync-releases will set all releases identical with pull-mirror upstream.

Thank you for your reply. I will try to delete release files and database records.

I deleted files and records in the database and restarted Gitea in Docker, Gitea can still be used normally after restart


Node won't SYNC

I lost power and the node won't sync past block 39816185.    It will try to sync and then open back up with being on block 39816185 again.  I tried restarting the node, and the computer, deleting the node, and rekeying.  Do you have any suggestions?

Maybe something got corrupted when the power was lost. You could try completely uninstalling and then reinstalling the application. Depending on the OS, you may need to manually delete some folders. What OS are you running?

I am running IOS Sonoma 14.5.

Do you  happen to have an idea on what the file would be called for where the node information is saved?

There is another folder: /Users//Library/Application Support/Austs One-Click Node.
You can try uninstalling, deleting that folder, and trying again.

Thank you! I will give this a try.


CONTRIBUTING and README improvements

I fixed a couple of typos and changed some wording and formatting.

oh wow, i didn't really how many typos there were! thx for fixing it


Rasa X v0.34 not loading

Rasa version: 2.2.1
Rasa SDK version (if used & relevant): 2.2.0
Rasa X version (if used & relevant):  0.34.0
Python version: 3.8.5
Operating system (windows, osx, ...):Linux-5.4.0-58-generic-x86_64-with-glibc2.10
Issue: Rasa X v0.34 not loading
I have been using rasaX 0.32.2 and just tried updating no 0.34. I got the following error
Error (including full traceback):
Traceback (most recent call last):
  File "/home/sujee/anaconda3/envs/rasa2/lib/python3.8/site-packages/rasa/cli/x.py", line 493, in run_locally
    local.main(
TypeError: main() got an unexpected keyword argument 'domain_path'

Command or request that led to error:
# Here are my steps to reproduce

$  conda create -n rasa2  python=3.8

$  conda activate rasa2

$  pip3 install rasa-x --extra-index-url https://pypi.rasa.com/simple

$  conda list | grep -i rasa
rasa                      2.2.1                    pypi_0    pypi
rasa-sdk                  2.2.0                    pypi_0    pypi
rasa-x                    0.34.0                   pypi_0    pypi

# started a default project
$  rasa init

$  rasa train

$  rasa shell
# works fine on CLI

 # tried to launch rasa x
 $  rasa x

 # error
2020-12-18 11:06:09 DEBUG    git.cmd  - Popen(['git', 'version'], cwd=/home/sujee/tmp/test, universal_newlines=False, shell=None, istream=None)
2020-12-18 11:06:09 DEBUG    rasa.cli.utils  - Parameter 'endpoints' not set. Using default location 'endpoints.yml' instead.
Traceback (most recent call last):
  File "/home/sujee/anaconda3/envs/rasa2/lib/python3.8/site-packages/rasa/cli/x.py", line 493, in run_locally
local.main(
TypeError: main() got an unexpected keyword argument 'domain_path'

Content of configuration file (config.yml) (if relevant):
# Configuration for Rasa NLU.
# https://rasa.com/docs/rasa/nlu/components/
language: en

pipeline:
# # No configuration for the NLU pipeline was provided. The following default pipeline was used to train your model.
# # If you'd like to customize it, uncomment and adjust the pipeline.
# # See https://rasa.com/docs/rasa/tuning-your-model for more information.
#   - name: WhitespaceTokenizer
#   - name: RegexFeaturizer
#   - name: LexicalSyntacticFeaturizer
#   - name: CountVectorsFeaturizer
#   - name: CountVectorsFeaturizer
#     analyzer: char_wb
#     min_ngram: 1
#     max_ngram: 4
#   - name: DIETClassifier
#     epochs: 100
#   - name: EntitySynonymMapper
#   - name: ResponseSelector
#     epochs: 100
#   - name: FallbackClassifier
#     threshold: 0.3
#     ambiguity_threshold: 0.1

# Configuration for Rasa Core.
# https://rasa.com/docs/rasa/core/policies/
policies:
# # No configuration for policies was provided. The following default policies were used to train your model.
# # If you'd like to customize them, uncomment and adjust the policies.
# # See https://rasa.com/docs/rasa/policies for more information.
#   - name: MemoizationPolicy
#   - name: TEDPolicy
#     max_history: 5
#     epochs: 100
#   - name: RulePolicy

Content of domain file (domain.yml) (if relevant):
version: "2.0"

intents:
  - greet
  - goodbye
  - affirm
  - deny
  - mood_great
  - mood_unhappy
  - bot_challenge

responses:
  utter_greet:
  - text: "Hey! How are you?"

  utter_cheer_up:
  - text: "Here is something to cheer you up:"
    image: "https://i.imgur.com/nGF1K8f.jpg"

  utter_did_that_help:
  - text: "Did that help you?"

  utter_happy:
  - text: "Great, carry on!"

  utter_goodbye:
  - text: "Bye"

  utter_iamabot:
  - text: "I am a bot, powered by Rasa."

session_config:
  session_expiration_time: 60
  carry_over_slots_to_new_session: true

Thanks for the issue, @rctatman will get back to you about it soon!
You may find help in the docs and the forum, too 🤗

closing, looks like a duplicate of https://github.com/RasaHQ/rasa/issues/7592

Thanks for responding.
Hope to see a fix soon.  Because installing rasax 0.34 is actually pulling down rasa 2.2.1 as a dependency and installing it... only they seem not be compatible :-)


optimizing cpu performance

I used the "Get" function in my project, When the Get function is called many times, the cpu costs is too high, the more time to call, the more cpu to cost.
So I reviewed the code and found the ticker seems like unrelease when it have to be released, I added ticker.Stop() to fix this problom, and it's worked for me.

Do you mind rebasing?


[Threat Modeling] Assure that Connection is properly secured/encrypted

Acceptance Criteria

[ ]  Check TLS configuration of Gardener API
[ ] Enforce strict certificate validation in the Infrastructure Manager

Kyma Infrastructure Manager uses Gardener Kubeconfig to communicate with the Gardener API via an https protocol secured by a unique user and token.
Infrastructure Manager does not use certificates to establish communication with external services.


Bump to node16

Builds on top of #1 - upgraded all dependencies, added a Makefile for quick building, re-generated node_modules from scratch.

I see there's a competition going on..
https://github.com/emulator-wtf/setup-ew-cli/pull/1#issuecomment-1419961590
vs this PR

🚀


fix #357: allowing for null instance with builders

Addresses #357 by allowing null instance values in the builder constructors.

@shawkins: This will also need a rebase and conflict resolution.

This will also need a rebase and conflict resolution.

Should be good now.


Collation is wrong in alpine version

If you run this test:
CREATE TEMPORARY TABLE table1 (column1 TEXT);

INSERT INTO table1 VALUES
('Barn'),
('beef'),
('bémol'),
('Bœuf'),
('boulette'),
('Bubble');

SELECT * FROM table1 ORDER BY column1 COLLATE "en_US"; --Gives the expected order
SELECT * FROM table1 ORDER BY column1 COLLATE "C"; --Gives "wrong" order

First SELECT should gives this order:

Barn
beef
bémol
Bœuf
boulette
Bubble

But instead it gives (same result as COLLATE "C"):

Barn
Bubble
Bœuf
beef
boulette
bémol

Works fine in Jessie version.
It's probably because current musl library version (1.1.16) does not support LC_COLLATE, so despite settings LANG variable, sorting data will be bytewise (C). LC_COLLATE should be added to musl version 1.1.17.

👍

Any updates on this?
This case popped out in timescale/timescaledb#448.
@tianon

This sounds similar to #273 / #276 (which both still have an unknown root cause). :disappointed:
The next step for determining the root of the problem would be to install PostgreSQL from Alpine's repos and see if that also exhibits the problem (because if it does, that points more strongly at a musl issue rather than a PostgreSQL issue or even a Docker image specific issue).

Collation may be the root cause of #273 and #276, right? Different collation would make different index ordering.
That poses a disaster-scale problem: once musl supports LC_COLLATE, all Postgres indexes will break. One workaround: choose "C" collation.

Maybe relevant: official musl vs glibc Character sets and locale https://wiki.musl-libc.org/functional-differences-from-glibc.html#Character-sets-and-locale

We just ran into this also, anyone running the alpine image got the default "C" collation.

My entire development team spent the last 6 hours debugging why our unit tests were failing on some local installations and not others. It came down to: the unit tests were written against the Alpine image and expected results is a specific order and the non-Alpine image returned results in a different order.
I ask that the Docker hub page be updated to reflect this as I doubt that we are the only development team that has run into this. A note that "Alpine" will use "C" collation is almost all cases (at least from our testing) would be sufficient.

Great idea, I've filed https://github.com/docker-library/docs/pull/1778 :+1:

If you build PostgreSQL with ICU, then you can use ICU Collations instead. Since Alpine v3.16, install icu-data-full to get support for all locales.

Here's how you can get it working with the new postgres:15-alpine image.


Fix potential security risk

Brief Information
This pull request is in the type of:

[ ] bug fixing
[ ] new feature
[x] others

What does this PR do?
open new link by 'blank' has security risk
Check this artical
Fixed issues
Details
Before: What was the problem?
After: How is it fixed in this PR?
Usage
Are there any API changes?

[ ] The API has been changed.

Related test cases or examples to use the new APIs
NA.
Others
Merging options

[ ] Please squash the commits into a single one when merge.

Other information

Thanks @susiwen8 ! Can you encapsule the logic of open in a helper function module in https://github.com/apache/incubator-echarts/tree/master/src/util ?


tools/flow: various expressions not seen as dependency

What version of CUE are you using (cue version)?

$ cue version
cue version 0.4.0 darwin/amd64

What did you do?

package main

import (
	"encoding/json"
	"tool/file"
	"tool/cli"
)

command: example1: {
	task: find_files: file.Glob & {
		glob: "/etc/passwd"
	}
	_files: [
		if len(task.find_files.files) > 0 {task.find_files.files[0]},
		"/dev/null",
	]
	task: print_files: cli.Print & {
		text: "print_files: " + json.Marshal(_files)
	}
	task: print_first_file: cli.Print & {
		// only differ
		$before: [task.print_files]
		text: "print_first_file: " + _files[0]
	}
}

command: example2: {
	task: find_files: file.Glob & {
		glob: "/etc/passwd"
	}
	_files: [
		if len(task.find_files.files) > 0 {task.find_files.files[0]},
		"/dev/null",
	]
	task: print_files: cli.Print & {
		// only differ
		$before: [task.print_first_file]
		text: "print_files: " + json.Marshal(_files)
	}
	task: print_first_file: cli.Print & {
		text: "print_first_file: " + _files[0]
	}
}

What did you expect to see?
The result of print_files should be the first element of the result of print_files and the results of example1 and example2 should be the same except ordering.
$ cue example1
print_files: ["/etc/passwd","/dev/null"]
print_first_file: /etc/passwd
$ cue example2
print_first_file: /etc/passwd
print_files: ["/etc/passwd","/dev/null"]

What did you see instead?
The results are different.
$ cue example1
print_files: ["/etc/passwd","/dev/null"]
print_first_file: /etc/passwd
$ cue example2
print_first_file: /dev/null
print_files: ["/etc/passwd","/dev/null"]

If only evaluate print_first_file, it is also the unexpected result.
package main

import (
	"encoding/json"
	"tool/file"
	"tool/cli"
)

command: example3: {
	task: find_files: file.Glob & {
		glob: "/etc/passwd"
	}
	task: print_first_file: cli.Print & {
		text: "print_first_file: " + [
			if len(task.find_files.files) > 0 {task.find_files.files[0]},
			"/dev/null",
		][0]
	}
}

$ cue example3
print_first_file: /dev/null

You are hitting concurrency races from the DAG solver. You need to add $after: [task.find_files] in the print task to specify the dependency. cue does not seem to be able to infer it through the guard
Here is a working example:
package main

import (
        "tool/file"
        "tool/cli"
)

command: example: {
        find_files: file.Glob & {
                glob: "/etc/passwd"
        }
        print_first_file: cli.Print & {
                $after: [find_files]
                text: "print_first_file: " + [
                        if len(find_files.files) > 0 {find_files.files[0]},
                        "/dev/null",
                ][0]
        }
}

@mpvl should the tooling layer be able to infer potential dependencies across guards?

Analysis: it actually looks like the problem here specifically is that with the if clause in _files, the reference _files[0] in print_first_file is not seen as a dependency on _files, and hence the dependency on find_files is missed:
exec cue cmd example1
stdout 'print_files: \["hello\.txt","/dev/null"\]'
stdout 'print_first_file: hello\.txt'

-- x_tool.cue --
package main

import (
	"encoding/json"
	"tool/file"
	"tool/cli"
)

command: example1: {
	task: find_files: file.Glob & {
		glob: "hello.txt"
	}
	_files: [
		if len(task.find_files.files) > 0 {task.find_files.files[0]},
		"/dev/null",
	]
	task: print_files: cli.Print & {
		text: "print_files: " + json.Marshal(_files)
	}
	task: print_first_file: cli.Print & {
		text: "print_first_file: " + _files[0]
	}
}
-- hello.txt --

Drop the if clause and the dependency does get detected:
package main

import (
	"encoding/json"
	"tool/file"
	"tool/cli"
)

command: example1: {
	task: find_files: file.Glob & {
		glob: "hello.txt"
	}
	_files: [
		{task.find_files.files[0]},
		"/dev/null",
	]
	task: print_files: cli.Print & {
		text: "print_files: " + json.Marshal(_files)
	}
	task: print_first_file: cli.Print & {
		text: "print_first_file: " + _files[0]
	}
}

(but clearly this changes the sense of the example).

Yea, generally a dependency may only exists under certain conditions with guards and comprehensions.
The questions might be 1) how complicated can this become? and 2) how much of that complexity can/should cue handle before having a user be explicit?

The questions might be 1) how complicated can this become? and 2) how much of that complexity can/should cue handle before having a user be explicit?

I'm not clear, at least not with this example, that we are at that point yet. So for now I consider this a straightforward bug.

This comment seems relevant, I suspect this is more of a todo than a bug based on various comments around the code.
https://github.com/cue-lang/cue/blob/master/internal/core/dep/mixed.go#L26

@verdverm

@mpvl should the tooling layer be able to infer potential dependencies across guards?

yes

The problem is actually quite subtle. It is indeed related to the if, but not how people expect, probably.
The way dependency analysis works is that a dependency is considered "blocking" if the value it points to is incomplete.
The flow package uses "dynamic dependencies", meaning it tracks values dependency after repeated evaluation. This allows it to detect dynamically generated tasks.
However, because of this strategy it detects the dependency on _files[0] as non-blocking. After all, during dynamic evaluation the first value is present (namely the second syntactic entry), so the dependency can be satisfied.
So this is a case of working as intended, but not as desired.
I verified that, indeed, dependencies are tracked across ifs otherwise.
So for now this will require an explicit $after.
I'm very happy to hear about (well-worked-out) proposals on how dependency resolution could be improved. For instance, I could imagine using a conjunction of both dynamic and static dependencies. Note that the internal dep package implements three different dependency algorithms. The flow package only uses one of those.

@verdverm: number 1 is interesting. Currently flow does not support tasks nested in other tasks. This was deliberate as I wasn't yet fully clear on what the semantics of that would be. I probably would not have considered to cover this case, for instance. But that is something that could definitely be supported.
Regarding 2, can you give an example where that doesn't work? Not sure how flow handles incomplete errors, but I guess that could be supported. Seems a bit brittle, though.

@verdverm regarding making dep public. That is ultimately the plan. I'm mostly still figuring out what is a good API, though. For instance, there are currently three different ways of computing dependencies. Making an API public makes it hard to move and make changes and it currently isn't ready.

Opened #1535 as a feature request for another dimension where task dependencies can exist through references and across package boundaries.


Improvements

Actualize Ruby versions for Travis CI
Ruby 2.2 and 2.3 and below are not supported anymore.
Don't require system (bundled) gems
Use require_relative instead of require
Don't require files from installed gem.
Update dependencies, improve versions locks
Alpha-versions (0.x.y) should be locked on y (patch version),
because of x (minor version) update may brings breaking changes.
Fix tests for Users and Users Stats
Some profiles become private (closed), some was renamed.
Replace deprecated Fixnum with Integer
Remove Ruby warnings.

@bhaberer, I've made more updates and improvements! Are you interested in this gem? I can help to maintain, if you'd like.

@bhaberer thank you, here is just a friendly reminder!

@bhaberer and another one…

I have now failed specs, but I don't know how to fix them:
Failures:

  1) Steam::Player.recently_played_games returns the list of games
     Failure/Error: expect(p(result)).to have_key('games')
       expected #has_key?("games") to return true, got false
     # ./spec/steam/player_spec.rb:34:in `block (3 levels) in <top (required)>'

  2) Steam::Player.recently_played_games returns the recent playtime for games
     Failure/Error: expect(result['games'].first).to have_key('playtime_2weeks')

     NoMethodError:
       undefined method `first' for nil:NilClass
     # ./spec/steam/player_spec.rb:38:in `block (3 levels) in <top (required)>'

  3) Steam::Player.recently_played_games returns the full playtime for games
     Failure/Error: expect(result['games'].first).to have_key('playtime_forever')

     NoMethodError:
       undefined method `first' for nil:NilClass
     # ./spec/steam/player_spec.rb:42:in `block (3 levels) in <top (required)>'

Finished in 1 minute 51.05 seconds (files took 0.12711 seconds to load)
78 examples, 3 failures

Failed examples:

rspec ./spec/steam/player_spec.rb:33 # Steam::Player.recently_played_games returns the list of games
rspec ./spec/steam/player_spec.rb:37 # Steam::Player.recently_played_games returns the recent playtime for games
rspec ./spec/steam/player_spec.rb:41 # Steam::Player.recently_played_games returns the full playtime for games

In the future, we will need for cassettes, like VCR.

@bhaberer yet another friendly reminder.

@bhaberer when this "soon" will be? 😰

Sorry I'm the worst, I'll look at this now 😅

LGTM, I'll merge and package a new ver soon

Thank you!


feat(numericRefinementList)

Created a new PR, did some mess with the first one.

I updated the documentation (it will need a version of instant search which include this commit to actually work)
I changed link by label + radio button for the default template

I did 2 comments, but overall very nice @maxiloc :+1:

Wait what is docs/js/instantsearch.js?

Wait what is docs/js/instantsearch.js? It looks like a dist/ you commited.

Ah right, that was a temporary; need to be removed.

I rebased with the 3 fix

Looks..Like.. LGTM! :shipit: :rocket:

@redox I am good here, since you added comments I'll let you merge, again awesome feature :D

:+1:


Create pyproject.toml

This file includes the project dependencies. If you need to add a new package, you can include it in the [project.dependencies] section. Additionally, if you need to update the project name, author information, or version, you can modify them in the [project] section.
Installing dependencies: using the pyproject.toml file:
pip install -r <(python -c "from tomllib import load; print('\n'.join(load(open('pyproject.toml', 'rb'))['project']['dependencies']))")

You can also use the requirements.txt file :
pip install -r requirements.txt

close as solved by #15


Update Changelog link

Great framework, updating the readme to point to the right url.

Closed by #19


style: format project files with prettier

I noticed the project include prettier dependency in dev, but some project files are not formated, so I create a PR to format these files.
Including extra spaces in empty lines in plugin.js.
Thanks for reviewing.

Thank you for this!


Mailgun Adapter Configuration

I'm sorry, if I'm doing something wrong, but I've been fighting with this for two hours now, and I'm not able to make out what the actual problem is.
I'm trying to use the Mailgun adapter, just like it's done in the example in the documentation. I'm absolutely positive that the credentials are correct, since I am using them in another app, but with Chris McCord's Mailgun client and they work, of cource.
Whenever I try to use them with the Bamboo Mailgun adapter, however, I'm getting HTTP errors (301: moved permanently).
Is it a known bug? Am I an idiot? Can anybody confirm or refute that error?

Hi @odiumediae, I don't personally use that adapter so I'm not sure. This is the first I've heard about an issue with the Mailgun adapter. I would try StackOverflow or the Elixir Slack room.
Also, maybe @princemaple knows something about it since he was the primary author of the Mailgun adapter

What did you set as the domain?
301s appear mostly when there's an error in the URL.
And we build the URL from base uri and domain config. Base uri is hard coded, so I'd assume it's your domain.

Hi @paulcsmith, and thank you for replying.
Also thank you, @princemaple. I did set the exact domain given in the Mailgun backend, with the protocol (https). I tried it without the protocol, and leaving out the domain (https://api.mailgun.net). Whatever I try, it just won't work. I'm working from a local machine, by the way (but as I understand it should work anyway).
I appreciate any help, here.

The domain is supposed to be the one that you have put into mailgun and you want to send emails from, e.g. "yourdomain.com", and yes without the protocol.

@princemaple: I don't know how I could miss that while looking at the source. My mistake was keeping the v3/ part of the URI in my domain environment variable.
Thank you very much for your help, and I'm honestly sorry for having wasted your time with this rather simple problem. I must have had blinders on.

No worries @odiumediae , everyone has this kind of moments every now and then.

I had the same problem. I think it this should be pointed in the docs


Plan out data gathering fallback

In the event that search engine APIs are not a viable means of gathering results (for cost or logistical reasons), we will need a fallback to gather data about sites.
Building a full-blown search engine is out of our immediate scope, but it may be feasible to build a really dumb web crawler to spider through a site looking for data file urls.
This ticket is for discussion of what information the spider will need to retain in order to report results.

We've decided to roll with Bing for the time being.  Deferring this to a later date.


[DevEnv] Coding Guidelines for Developers

/kind feature
/kind development environment improvement
What happened:
Provide clear coding guideline and process on development

File Naming
Folder Naming (if any)
Style Guide - Source Code
+anything else?

Please refer to CONTRIBUTING.md.


Remove fpga-source submodule

We don't need to use submodules to track fairwaves stuff since it's not a moving target, and it's nice to not have to download it when we download all the other submodules.
We still have the make -C software fairwaves target to download all the fairwaves stuff, if you need it for local development.

Woops, this should have been deleted. Thanks!


remove unnecessary policy condition

I don't think this fixes the notification issue, but it cleans it up a bit.


Quantum extension is using deprecated CLIError() type

Per recommendation of the core Az CLI team, we'll be updating this type per the new guidelines here:
https://github.com/Azure/azure-cli/blob/dev/doc/error_handling_guidelines.md

route to service team

This issue has been resolved by PR #3997


NameError: uninitialized constant Flipper::Adapters::Redis

Rails 3.2 seems to have issues with using the gem
NameError: uninitialized constant Flipper::Adapters::Redis

Flipper.configure do |config|
  config.default do
    # pick an adapter, this uses memory, any will do
    adapter = Flipper::Adapters::Redis.new

    # pass adapter to handy DSL instance
    Flipper.new(adapter)
  end
end

previously we used flipper 0.7 and our code looked like this
require 'flipper/adapters/redis'
$flipper = Flipper.new(Flipper::Adapters::Redis.new(Redis.new))

this should work aswell but somehow the adapter class (and the required file) aren't found anymore. does it has to do with the gem structure?

What gems are in your Gemfile? Is flipper-redis?
On Tue, Nov 14, 2017 at 12:52 AM krtschmr<EMAIL_ADDRESS>wrote:

Rails 3.2 seems to have issues with using the gem
NameError: uninitialized constant Flipper::Adapters::Redis
Flipper.configure do |config|
config.default do
# pick an adapter, this uses memory, any will do
adapter = Flipper::Adapters::Redis.new
# pass adapter to handy DSL instance
Flipper.new(adapter)

end
end
previously we used flipper 0.7 and our code looked like this
require 'flipper/adapters/redis'
$flipper = Flipper.new(Flipper::Adapters::Redis.new(Redis.new))
this should work aswell but somehow the adapter class (and the required
file) aren't found anymore. does it has to do with the gem structure?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/jnunemaker/flipper/issues/303, or mute the thread
https://github.com/notifications/unsubscribe-auth/AAAA68cr41rLLDb28EFi-AFY05DurFwyks5s2SqJgaJpZM4Qc1m8
.

Closing this to keep things tidy here, but happy to continue to help when you get a chance to respond.

didn't had time to fix  it so far, but it's on. my boss said sidekiq-branch is not important, so this might be in the future a thing again (happened when i wanted to switch from resque to sidekiq, so i had to use some redis gem and stuff)
have a nice day

No problem! Let me know if you ever get back to it.


Update README.md

remove grammatical mistakes

I am a GSSOC participant. Can I work on this issue

I'm a GSSoC participant. I would like to work on this issue.

Implemented successfully


docs(webpki-roots): simplify usage example

copy-pasting the main usage example produces a clippy warning suggesting this instead

CI failure is unrelated. Looks like there was an upstream data update between yesterday's cron run and this branch's run. We'll fix that separately.

CI failure is unrelated.

Ah, my mistake. It is related since the example is sourced from the template in the tooling it needs to be updated as well. @robjtede Can you update this place as well: https://github.com/rustls/webpki-roots/blob/7edc9159d7829e72f5409ce13b66881d60b40ffe/webpki-roots/tests/codegen.rs#L142-L145

Thanks!


Install the Kubernetes Command Line Tool

Tutorials: https://developers.sap.com/tutorials/cp-kyma-download-cli.html
add this to Prerequisites:
https://developers.sap.com/tutorials/cp-kyma-getting-started.html

Hello,
Thanks for the feedback. This change will be reflected in the next update which will be made available in the next coming weeks.
Regards,
Jamie


docs(ngComponentRouter): incorrect installation instructions on the module's API page

The 'Installation' part here is totally misleading:
https://docs.angularjs.org/api/ngComponentRouter

Yeah, that's auto generated ...

Is ngComponentRouter as documented there though (aside from the installation instructions), actually accurate? I've been using https://github.com/rvl/bower-angular-component-router for the time-being, but should I expect to be able to use ngComponentRouter as documented here anytime soon? And if at all possible, do you anticipate it to be available at any particular milestone, such as 1.5.4 or 1.5.5?

should I expect to be able to use ngComponentRouter as documented here anytime soon

@OlenDavis, you should be able to use it like this already. If you have found any issues/inconsistencies, please do report them.
That said, the router is still far from final (so changes are to be expected in the near future) and we are still figuring out the best way to distribute it for ng1. Right now it is a separate package on npm (@angular/router).

Installation instructions for component router are confusing and incomplete... on IE11 component router does not work at all, something about missing shims ?
I know it's been developped as part of angular2 but it should be part of the distribution of angular 1.5.x
(e.g. https://code.angularjs.org/1.5.3/)

@rekna1 - All respect to the Angular team, I second your comment. Anything we can do to help at least put some extra content in documentation, I'd like to know. I'm not sure where the code belongs, but I understand both components and the router are tracking development in ng2. That said, it seems like the inclusion of components in ng1 would have been better left until the router was ready for release. The fact that they're both fully documented in 1.5.x docs (guide and API) suggests they're both in release, not "still far from final."
BTW, without cloning master, building ng2 completely, and then running gulp buildRouter.dev, https://www.npmjs.com/package/ngcomponentrouter may give you a more recent version than npm install @angular/router. Not sure which of those three approaches is best at the moment.

So could anyone from the angular team please comment on this? Since the docs of angular 1.5 describe component router, as if it is complete and functional:

is the component router officially released?
how do we install a stable version?
what about the missing shims (I think it is es6-shim that is needed)

Just to be clear, pop open the source and you'll see it's far from complete. I wish there could be some more meta-documentation about timeline, and you're right that it's really difficult to know the actual released version, because the source code is tied in with ng2 but the documentation is in ng1. You'd expect the router to be at version 1.5.3, but it's actually at 0.2.0 or something, at the moment.

We are still figuring out the best strategy to version and distribute the ngComponentRouter for ng1.
In the meanwhile, the installation instructions have been updated with fad6c7c.

Now that the version 2 rcs are out, I had to use this to install:
npm install<EMAIL_ADDRESS>
I couldn't find any packages in the new rcs that looked like angular_1_router.js

@zilkey, you should probably be using v0.2.0 (the guide has been updated and I just updated the API docs (but it will take some time to propagate)).


Changing From MSSQL to PostreSQL Fails to Resolve Tenant

Hi @AndrewTriesToCode, I know this could be pretty simple setting on my end, but I have this rather weird behaviour. I developed a demo app with the package and initially used SQL for the database. Everything worked as expected, but when I tried to shift to NpSql, I experienced a behaviour that prevented me from using the app. I can generate migrations and apply them to the database successfully, including seeding the data to db. However, when I try to make a query from Swagger with the tenant Id added as query param, every time, it gives me the error of 'Object reference not set to an instance of an object.' because the tenant is null. I have tried finding out where the issue could be but I don't seem to resolve this problem. Here is the code for the project I am working with. Thank you in advance.

In AddInfrastructureServices you are calling AddMultitenancyServices before you call AddPersistenceService (which adds the IOptions for Database settings)

In AddInfrastructureServices you are calling AddMultitenancyServices before you call AddPersistenceService (which adds the IOptions for Database settings)

Hi @RobinDavisNotts, I tried rearranging these as suggested but still hitting the same error. Seems this didn't work or what do you suggest?


.github: Improve mirror workflow

Add manual trigger
Run once a day
Use a fine-grained access PAT from a protected environment

IntegrationTests / integration-test: failed with https://github.com/cilium/cilium/issues/24491

Thanks for the triage Michi. This is only affecting the new workflow file and it's been approved, none of the remaining testing should impact this so I'll go ahead and merge now.


Visualization of the Orientation

Hi, Very nice work to follow. I wonder how to visualize the orientation like this figure?

Thank you so much for your contributions.

Thanks you so much.

Thank you so much!


[KARAF-5901] Add Aries JAXRS Whiteboard example

Waiting Aries JAXRS Whiteboard 1.0.3 release to update and merge.


Add NoInfer<T> intrinsic represented as special substitution type

This PR adds official support for a NoInfer<T> marker type that blocks inferences to the contained type. The PR supersedes #52968, but borrows as much as possible from that PR (lots of thanks for your work, @Andarist).
The PR represents NoInfer<T> types as special substitution types (types with kind TypeFlags.Substitution) having constraint type unknown, a pattern that otherwise never occurs. This representation ensures that we maximally leverage our existing infrastructure for erasing marker types when appropriate, and that we minimally disrupt the tooling ecosystem (because we're not introducing a new kind of type).
Other than blocking inference, NoInfer<T> markers have no effect on T. Indeed, T and NoInfer<T> are considered identical types in all other contexts.
Some examples:
declare function foo1<T extends string>(a: T, b: NoInfer<T>): void
declare function foo2<T extends string>(a: T, b: NoInfer<T>[]): void
declare function foo3<T extends string>(a: T, b: NoInfer<T[]>): void
declare function foo4<T extends string>(a: T, b: { x: NoInfer<T> }): void
declare function foo5<T extends string>(a: T, b: NoInfer<{ x: T }>): void

foo1('foo', 'foo') // ok
foo1('foo', 'bar') // error
foo2('foo', ['bar']) // error
foo3('foo', ['bar']) // error
foo4('foo', { x: 'bar' }) // error
foo5('foo', { x: 'bar' }) // error

Above, inferences to the type of b are blocked by the NoInfer<T> marker, thus causing errors to be reported when the argument types differ. Without the NoInfer<T> markers, inference simply produces the union "foo" | "bar".
Fixes #14829.

@typescript-bot pack this

@typescript-bot test top100
@typescript-bot user test this
@typescript-bot run dt
@typescript-bot perf test this faster

Without the NoInfer<T> markers, inference simply produces the union "foo" | "bar".

Huh, so it does... here I had thought TS never inferred cross-candidate unions, but apparently there are cases when it does?

Unions can be formed under the same constrained primitive family. That's why my TS Congress talk had to disavow knowledge of primitive types.

Tests and performance all look unaffected.

Some examples:
declare function foo1<T extends string>(a: T, b: NoInfer<T>): void
declare function foo2<T extends string>(a: T, b: NoInfer<T>[]): void
declare function foo3<T extends string>(a: T, b: NoInfer<T[]>): void
declare function foo4<T extends string>(a: T, b: { x: NoInfer<T> }): void
declare function foo5<T extends string>(a: T, b: NoInfer<{ x: T }>): void

foo1('foo', 'foo') // ok
foo1('foo', 'bar') // error
foo2('foo', ['bar']) // error
foo3('foo', ['bar']) // error
foo4('foo', { x: 'bar' }) // error
foo5('foo', { x: 'bar' }) // error

All these cases can be addressed by using the constraint T&U as follows:
declare function foo1<T extends string, U>(a: T, b: T&U): void
declare function foo2<T extends string, U>(a: T, b: T&U): void
declare function foo3<T extends string, U>(a: T, b: (T&U)[]): void
declare function foo4<T extends string, U>(a: T, b: { x: T&U }): void
declare function foo5<T extends string, U>(a: T, b: { x: T&U }): void

foo1('foo', 'foo') // ok
foo1('foo', 'bar') // error
foo2('foo', ['bar']) // error
foo3('foo', ['bar']) // error
foo4('foo', { x: 'bar' }) // error
foo5('foo', { x: 'bar' }) // error

playground
T&U is fairly obvious and logical constraint to add.  It is not a trick.  Do you have any stronger cases?
So far it doesn't seem to me like a bug fix, it seems like perhaps a performance optimization, because you are explicitly shutting down inference, which could only shorten processing time.

As the library author, I don't want to introduce an extra generic type parameter to do this - this affects my public interface. NoInfer that is used within the signature isn't.

As the library author, I don't want to introduce an extra generic type parameter to do this - this affects my public interface. NoInfer that is used within the signature isn't.

"Performance", "Convenience", "Simplification" are worthwhile qualities.  However, based on the test cases, I still wouldn't call it a bug fix.

The only mention of this being a "fix" (that I can find) is in the closing reference to the original issue. I don't think it's worthwhile at all to bikeshed if that reference is using "fixes XXX" or "closes XXX".

The opening line of the issue being closed:  #14829

We keep getting bugs like this and I keep not finding the original so I'm making a new one so we can find it.

As far as I can see, more test cases, especially ones that highlight the utility of this feature, would only serve to highlight it's utility and serve as instruction on what can be done now it is there.  Again, thank you for your hard work.

We keep getting bugs like this and I keep not finding the original so I'm making a new one so we can find it.

I read "bug" here as a synonym for "bug-tracker issue"; in other words, "People keep posting GitHub issues requesting this feature so I'm making this as the canonical issue to bikeshed it."
btw I think the T & U trick only works because the T there, being part of an intersection, is considered a lower-priority inference site than the one at a.  That seems like an implementation detail to me and I'm not sure I'd want to rely on it.

We keep getting bugs like this and I keep not finding the original so I'm making a new one so we can find it.

I read "bug" here as a synonym for "bug-tracker issue"; in other words, "People keep posting GitHub issues requesting this feature so I'm making this as the canonical issue to bikeshed it."
btw I think the T & U trick only works because the T there, being part of an intersection, is considered a lower-priority inference site than the one at a. That seems like an implementation detail to me and I'm not sure I'd want to rely on it.

Yes you are right, it was a trick, so I changed it to extends. The original post also had a comment [that noted that extends could be used(https://github.com/microsoft/TypeScript/issues/14829#issuecomment-288902999), and that was countered by a different example, but that is also easy to write as a feed forward inference generic, as appended above.
I am convinced NoInfer will be more convenient, simpler, and faster.  I'm curious whether there are cases it would indispensable.

Without NoInfer
function f<T,U>(a:T, b: U){
    f(b,a);
//  ^? function f<U, T>(a: U, b: T): void
}

What will the call the internal call to f look like in
function f<T,U>(a:T, b: NoInfer<T>){
    f(b,a);
//  ^? function f<?>(a:?, b: ?): void
}

Will it be able to infer the type for T in the inner call?
Does NoInfer get automatically stripped by
type UnNoInfer<N> = N extends NoInfer<infer T> ? T : never

?

@Andarist
Does your mean that your plan is that the programmer must manually strip the NoInfer in the implementation of a function with NoInfer parameters, before using it where it might be inappropriate (and presumably trigger a new type of diagnostic), i.e. using it as an argument for a parameter the will be inferred?  That would be tedious.
It might be better just to auto-strip all NoInfer types automatically and immediately - or to put it another way, NoInfer would be a transient state.  Specifically,

NoInfer would only be allowed as an attribute for call parameter types, not for stand alone types.
Inference would take place as coded in this pull, detecting on entry to inferFromTypes.
In the function implementation, flow would have to access a parameter's type with an extra level of indirection ensure the NoInfer is removed.

@craigphicks

Inside function f what are typeof a, typeof b, and what does the inner f resolve to?

typeof a resolves to T and typeof b resolves to NoInfer<T>. Thus, in the inner call to f, the inferred type argument is NoInfer<T>.

Does NoInfer get stripped by

No, the NoInfer<infer TN> blocks inferences to TN, so the conditional type resolves to unknown.

It might be better just to auto-strip all NoInfer types automatically and immediately - or to put it another way, NoInfer would be a transient state, or perhaps even a token noinfer, sibling to infer.

It's not that simple. NoInfer<T> can occur in nested positions, e.g. { a: T, b: NoInfer<T> }, so we would have to exhaustively traverse types to find all NoInfer<T> occurrences and erase them--which in turn would produce new structural types that cause more work for the type checker. And recursive types would be a major headache. It's simply not feasible to do at depth, and it would be odd to only do shallow erasure.

@ahejlsberg
Is there any way a NoInfer type in flow could ever unintentionally result in a target parameter being inferred as as a NoInfer, which then creates a problem in the form of user-unexpected result or an error?
For example a function type
declare function<T>(a: T): (a:T):T

could be resolved to f<NoInfer<T>>(a: NoInfer<T>): NoInfer<T>? (Which I guess would result in a diagnostic error?).

Could we get a new TS playground for this? It would make it easier and faster to tinker with edge cases :p

I have been summoned to summon TypeScript Bot.
@typescript-bot pack this

My gut feeling is that the infer vs noinfer attribute belongs to the call, rather than to the argument to the call.
Therefore it would be better to specify like this:
declare type F<T, Arg0 extends {a: infer T, b: (x: noinfer T)=> noinfer T}> = (a: Arg0) => Arg0;

Perhaps the noinfer on the return type is not necessary, I'm not sure.
We could also put infer on a parent so that it's children are never searched.
declare type F<T, Arg0 extends {a: infer T, [Symbol.iterator]: noinfer any}> = (a: Arg0) => Arg0;

[surprised]     Jake Bailey reacted to your message:

From: TypeScript Bot @.>
Sent: Monday, December 18, 2023 8:06:25 PM
To: microsoft/TypeScript @.>
Cc: Subscribed @.***>
Subject: Re: [microsoft/TypeScript] Add NoInfer<T> intrinsic represented as special substitution type (PR #56794)
Hey @DanielRosenwasserhttps://github.com/DanielRosenwasser, I've packed this into an installable tgzhttps://typescript.visualstudio.com/cf7ac146-d525-443c-b23c-0d58337efebc/_apis/build/builds/159134/artifacts?artifactName=tgz&fileId=B8324752B810A78A78AD8A90EDD001B4CF0393014CE0810C88CFCE3F0DEB2DF202&fileName=/typescript-5.4.0-insiders.20231218.tgz. You can install it for testing by referencing it in your package.json like so:
{
"devDependencies": {
"typescript": "https://typescript.visualstudio.com/cf7ac146-d525-443c-b23c-0d58337efebc/_apis/build/builds/159134/artifacts?artifactName=tgz&fileId=B8324752B810A78A78AD8A90EDD001B4CF0393014CE0810C88CFCE3F0DEB2DF202&fileName=/typescript-5.4.0-insiders.20231218.tgz"
}
}
and then running npm install.
—
Reply to this email directly, view it on GitHubhttps://github.com/microsoft/TypeScript/pull/56794#issuecomment-1861507196, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABIYECRUGSRSEN6BMAB5PZTYKCO4DAVCNFSM6AAAAABAWZCOTOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNRRGUYDOMJZGY.
You are receiving this because you are subscribed to this thread.Message ID: @.***>

[0]     Jake Bailey reacted to your message:

From: TypeScript Bot @.>
Sent: Monday, December 18, 2023 8:06:25 PM
To: microsoft/TypeScript @.>
Cc: Subscribed @.***>
Subject: Re: [microsoft/TypeScript] Add NoInfer<T> intrinsic represented as special substitution type (PR #56794)
Hey @DanielRosenwasserhttps://github.com/DanielRosenwasser, I've packed this into an installable tgzhttps://typescript.visualstudio.com/cf7ac146-d525-443c-b23c-0d58337efebc/_apis/build/builds/159134/artifacts?artifactName=tgz&fileId=B8324752B810A78A78AD8A90EDD001B4CF0393014CE0810C88CFCE3F0DEB2DF202&fileName=/typescript-5.4.0-insiders.20231218.tgz. You can install it for testing by referencing it in your package.json like so:
{
"devDependencies": {
"typescript": "https://typescript.visualstudio.com/cf7ac146-d525-443c-b23c-0d58337efebc/_apis/build/builds/159134/artifacts?artifactName=tgz&fileId=B8324752B810A78A78AD8A90EDD001B4CF0393014CE0810C88CFCE3F0DEB2DF202&fileName=/typescript-5.4.0-insiders.20231218.tgz"
}
}
and then running npm install.
—
Reply to this email directly, view it on GitHubhttps://github.com/microsoft/TypeScript/pull/56794#issuecomment-1861507196, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABIYECRUGSRSEN6BMAB5PZTYKCO4DAVCNFSM6AAAAABAWZCOTOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNRRGUYDOMJZGY.
You are receiving this because you are subscribed to this thread.Message ID: @.***>

Case from 2.8 release documentation + NoInfer
type Bar<T> = T extends { a: (x: infer U) => void; b: (x: NoInfer< infer U>) => void }
  ? U
  : never;
type T20 = Bar<{ a: (x: string) => void; b: (x: string) => void }>; // string
type T21 = Bar<{ a: (x: string) => void; b: (x: number) => void }>; // 5.3.2: string & number => NoInfer: never (expecting string)

In the NoInfer version, T21 is never but was expecting string.

@typescript-bot pack this

I'm surprised not to see more examples where the type is infered from the returned value. Here is a (simplified) real world example of a code I faced where it was unpossible to catch errors without the Noinfer keyworld :
// TS <5.4

function getValue<T = string>(): T {
  return undefined as T;
}

function getNumberInline(): number {
  return getValue(); // no error, T in inferred as number (weird behavior)
}

function getNumberUsingVariable(): number{

const value = getValue(); // error, T takes the default string value
  return value;
}

// TS >=5.4

function getValueNoInfer<T = string>(): NoInfer<T> {
  return undefined as T;
}

function getNumberInlineNoInfer(): number {
  return getValueNoInfer(); // error, T takes the default string value
}

function getNumberUsingVariableNoInfer(): number{

const value = getValueNoInfer(); // error, T takes the default string value
  return value;
}

It would be nice if the following pattern could work:
declare function create<T>(fn: (get: () => NoInfer<T>) => T): T

create(get => ({
    id: 123,
    getId() {
        return get().id
    }
}))

Right now T is inferred as unknown.
If I understand NoInfer<T> correctly, it should give a hint to a compiler to not try to infer get-parameter type and instead infer T from type of returned object.

@dhmk083 shouldn't you write:
declare function create<T>(fn: (get: () => NoInfer<T>) => T): T

const get = ()=> ({
    id: 123,
    getId() {
        return get().id
    }
})

create(get)

@dhmk083 currently, TS can't defer this sufficiently enough, it has to assign the contextual type for get before it even looks into your function. To do that it instantiates the type of this parameter and all of the type parameters in its scope (and T is its outer type parameter).
It's probably not impossible to improve this by deferring the instantiation of those parameter types that are only observable by the return types. I don't feel that it's particularly related to NoInfer though.


Update to latest traceviewer-* dependencies

We recently published updated version of "traceviewer-react-components" and "traceviewer-base", which themselves use updated versions of "timeline-chart" and "tsp-typescript-client". This commit updates the version range of related dependencies, requested in this repo, so that the latest versions are picked-up.

Thanks for the review!


Chef 12.0.3 Cookbook Upload Environment Pinning Failure

Zendesk 3165
OS Versions
Ubuntu 12.04
Mac OSX 7.5+
Reproduction
The following command succeeds on both platforms with Chef 11.16.4 and fails on both platforms with Chef 12.0.3
knife cookbook upload COOKBOOKNAME -E ENVIRONMENTNAME

with the following stacktrace
knife cookbook upload junk -E production -VV
INFO: Using configuration from /home/vagrant/.chef/knife.rb
/opt/chef/embedded/apps/chef/lib/chef/knife/cookbook_upload.rb:200:in `environment': uninitialized constant Chef::Knife::CookbookUpload::Environment (NameError)
    from /opt/chef/embedded/apps/chef/lib/chef/knife/cookbook_upload.rb:226:in `assert_environment_valid!'
    from /opt/chef/embedded/apps/chef/lib/chef/knife/cookbook_upload.rb:95:in `run'
    from /opt/chef/embedded/apps/chef/lib/chef/knife.rb:417:in `block in run_with_pretty_exceptions'
    from /opt/chef/embedded/apps/chef/lib/chef/local_mode.rb:38:in `with_server_connectivity'
    from /opt/chef/embedded/apps/chef/lib/chef/knife.rb:416:in `run_with_pretty_exceptions'
    from /opt/chef/embedded/apps/chef/lib/chef/knife.rb:213:in `run'
    from /opt/chef/embedded/apps/chef/lib/chef/application/knife.rb:139:in `run'
    from /opt/chef/embedded/apps/chef/bin/knife:25:in `<top (required)>'
    from /usr/bin/knife:40:in `load'
    from /usr/bin/knife:40:in `<main>'

Workaround
If I change the environment method in /opt/chef/embedded/apps/chef/lib/chef/knife/cookbook_upload.rb like this
      def environment
        @environment ||= config[:environment] ? ::Chef::Environment.load(config[:environment]) : nil
      end

and the /opt/chef/embedded/apps/chef/lib/chef/knife.rb requires like this
require 'chef/rest'
require 'chef/environment'
require 'pp'

It seems to work ok.
There may be a better way to do this?

Customer reports back that this solved the issue.

work around not working, still getting the same error.

This needs replication to determine if it still exists as a problem in Chef 15

Tested it with the latest chef-15 seems it working fine we can close this issue.
Steps followed:
#> knife -v
Chef Infra Client: 15.4.1

#> knife environment create production
Created production

#> knife cookbook upload starter -E production -VV
INFO: Using configuration from /chef-workstation/.chef/config.rb
Uploading starter        [1.0.13]
INFO: Validating ruby files
INFO: Validating templates
INFO: Syntax OK
INFO: Saving starter
INFO: Uploading files
INFO: Upload complete!
Uploaded 1 cookbook.


Publicity / Public Relations / PR when ready

An open source IDE written in TypeScript for TypeScript

move to TypeStrong
http://discuss.codemirror.net/
Microsoft/TypeScript/issues
atom-typescript gitter
twitter
https://www.reddit.com/r/typescript/ ?

Also https://twitter.com/basarat/status/654457986543255552?cn=cmVwbHk%3D&refsrc=email
Web sections

Editor features ... all the keyboard goodness you already know from sublime text (list them all out)
Syntax Highlighter ... not just another slow and buggy TextMate grammar. The same syntax tokenizer that your typescript compiler uses
Code analysis ... dependency viewer.
Multi window, multi client

Most of the PR has happened slowly anyways.


3.3.0 release as package on ubuntu

When do you plan on releasing version 3.3.0 as a package that can be installed via apt-get ? I have installed 3.2.1 via the package manager and I believe I am encountering the same issues described here : https://github.com/glfw/glfw/issues/747.

I'm afraid it's up to the package maintainers over at Debian and/or Ubuntu to pull the release from here and package it for their distributions.
I recommend trying to compile it yourself, if for nothing more than the learning opportunity; it's really quite easy compared to many other open-source projects I've come across!

makes sense, ill try and compile it then!


Incorrect repo blog link

The "About" repo link shows file-loaders

But the blog link should be data-loaders?
https://rerun.io/blog/data-loaders

Fixed, thanks


Support messages from IPC

TOOLBAG_PATH can be used to override toolbagrc path
If you fork an instance with toolbag you can send commands to the forked process

The client landed in 996261df45952f8673f308d60cc5da97348bc299. The reporter landed in ca817b8e25b1b3bcecd5f7a8dc77130e49f7c957. In the middle of the commits, I made the command interface pluggable. @geek can you verify that I didn't break your stuff?


Support for <, <=, >, >= operator with ASOF join.

It would be useful, for example, if we want to join previous entity state to current state.
CREATE TABLE states (
    entity_id UUID
    state INT8
    timestamp DateTime
)

SELECT state AS cur_state, prev_state FROM states ASOF JOIN states AS prev_states ON states.entity_id = prev_states.entity_id AND states.timestamp > prev_states.timestamp ORDER BY timestamp DESC LIMIT 10;

+1. Need this functionality.

How to implement:

Add less and greater logic here https://github.com/yandex/ClickHouse/blob/master/dbms/src/Interpreters/CollectJoinOnKeysVisitor.cpp#L72
Save kind of comparison it is here https://github.com/yandex/ClickHouse/blob/master/dbms/src/Interpreters/CollectJoinOnKeysVisitor.cpp#L81
Passthrough the kind of comparison into AnalyzedJoin (it would be avaliable in Join class as field)
Change hardcoded >= logic depending on saved comparison type here https://github.com/yandex/ClickHouse/blob/master/dbms/src/Interpreters/RowRefs.cpp#L75
Make tests for corner cases.

At the point 4 upper_bound is >=, lower_bound would be equal to <=. For strict comparison we need "upper_bound/lower_bound but not equal" logic.

#7282


RSDK-3334 : Guarantee a Big-endian copy to buffer

WARNING: Any clients that were using the intel realsense server before: this will potentially change its behavior!
Initially, we just dumped the data from the intel realsense into the response buffer, not caring about the endian-ness of the data. This change will make sure that the uint16 data always gets written in a big-endian way.
The speed of the write does slow down, but it is still at 30 FPS for a 640 x 480 depth image.
old speed:
s:0.025845050811767578, FPS: 38.692127451523035, avg FPS: 37.996134879542005
new speed (with guarateed big endian encoding):
s:0.03178262710571289, FPS: 31.463730064663256, avg FPS: 29.92082769928897
Did a test in python to see the image drawn, and the weird artifacts go away

@bhaney why does this always need to be big-endian? Does the client always expect that?

@bhaney why does this always need to be big-endian? Does the client always expect that?

Yes, the Go and python SDK clients are assuming a big-endian encoding of the data when they decode the raw depth image.


Add '--optimize-sqlite' command

When rendering maps based on very complex sqlite queries performance can tank. It's reasonable to materialize sqlite queries as fresh databases to improve rendering speed. To do this we'd need to:

Add a optimize-sqlite command that would depend on projects being milled
detected sqlite datasources in project definitions with "complex" queries
Create a new materialized-DBNAME.sqlite database
Run the complex query, and write the results into the new database.
Replace the complex query in the project definition with a simple tablename.

@dhcole The optimize-sqlite branch should handle everything here. Can you help me test it against the maps you're building before I merge it in?


Fix crashes at shutdown due to references to stale debug control registry.

Adds reference count for references to registry.  The registry is deleted only when the reference count goes to zero.

I think I have to make changes to make sure the registry mutex isn't used after it's destroyed.

[approve ci autest]


Create a page "Conformance criteria for external issuers who want to join the cert-manager org"

As discussed on 24 March 2021, we want to be formalizing our requirements for an external issuer to become "certified" (not sure the term is right). I was thinking about following HashiCorp's idea of having a Conformance tests page that lists how to run the conformance tests in order to have their external Terraform provider listed onto the Terraform Registry.
As far as I know, the only external issuer that runs our conformance tests suite is the sample-external-issuer. Unfortunately, the way we run the conformance tests for it is highly tied to the cert-manager codebase. The sample issuer is set up in setup-e2e-deps.sh:
echo "Installing sample-external-issuer into the cluster..."
"${SCRIPT_ROOT}/addon/sample-external-issuer/install.sh"

and the code for the actual conformance test is in external.go:
var _ = framework.ConformanceDescribe("Certificates", func() {
	unsupportedFeatures := featureset.NewFeatureSet(
		featureset.DurationFeature,
		featureset.KeyUsagesFeature,
		featureset.SaveCAToSecret,
	)

	issuerBuilder := newIssuerBuilder("Issuer")
	(&certificates.Suite{
		Name:                "External Issuer",
		CreateIssuerFunc:    issuerBuilder.create,
		UnsupportedFeatures: unsupportedFeatures,
	}).Define()

	clusterIssuerBuilder := newIssuerBuilder("ClusterIssuer")
	(&certificates.Suite{
		Name:                "External ClusterIssuer",
		CreateIssuerFunc:    clusterIssuerBuilder.create,
		DeleteIssuerFunc:    clusterIssuerBuilder.delete,
		UnsupportedFeatures: unsupportedFeatures,
	}).Define()
})

The goal of this issue is to discuss a new "Conformance tests" page that will be added to https://cert-manager.io/docs/contributing/external-issuers/.
cc @irbekrm

Accepting Third-Party Code into the cert-manager Organization
Example header for document:
The cert-manager project welcomes external contributions and has benefited greatly from thousands
of commits from hundreds of different contributors. Most code is committed through pull requests
to a specific repo, whether that be the main cert-manager repository or one of the associated
repos such as the website.

Some contributions aren't as well suited to that kind of workflow. This document aims to address
such contributions and provide a framework for sustainable contributions which can be tested and
relied upon going forwards.

Requirements
We need to decide which of these must be included. I've marked them with either VITAL, IMPORTANT or MAYBE based on my own evaluation, but which ones we actually include could change based on what the team thinks.

VITAL: Must be licensed appropriately, both for the code itself and any dependencies it has
VITAL: Must conform to CNCF standards / due diligence requirements
VITAL: Must have a sponsor by an existing maintainer
IMPORTANT: Must pass cert-manager conformance tests
IMPORTANT: Must provide a point-of-contact for questions about the project valid for at least 3 months after acceptance [1]
IMPORTANT: Must be a defined extension type (DNS solver, custom issuer, HTTP solver), or else justify why it doesn't belong in the main repos
IMPORTANT: Must have a similar level of code quality to cert-manager itself (enforced by tooling)
IMPORTANT: Must have a non-trivial test suite, both unit tests and end-to-end tests
IMPORTANT: Must adopt the cert-manager security policy and link back to the policy, as in e.g. the istio-csr SECURITY.md
MAYBE: Must have DCO signoffs for all commits in place to ensure the code can legally be donated, or else must have a positive DCO affirmation made by each contributor prior to donation
MAYBE: Must be written in Go
MAYBE: Must have boilerplate headers added to source files?

[1] We don't anticipate this would be used much, but it is important to be able to reach someone if required
Notes
Micah Hausler reached out to @caniszczyk in an email about donation and licensing, which is super helpful. See here
CoreDNS Process
GOVERNANCE.md
The CoreDNS organization is open to receive new sub-projects under its umbrella. To accept a project into the CoreDNS organization, it has to meet the following criteria:

Must be licensed under the terms of the Apache License v2.0
Must be related to one or more scopes of the CoreDNS ecosystem:
CoreDNS project artifacts (website, deployments, CI, etc)

External plugins
Other DNS related processing
Must be supported by a Maintainer not associated or affiliated with the author(s) of the sub-projects

The submission process starts as a Pull Request or Issue on the coredns/coredns repository with the required information mentioned above. Once a project is accepted, it's considered a CNCF sub-project under the umbrella of CoreDNS.
Envoy Process
GOVERNANCE.md links to EXTENSION_POLICY.md.
All extensions contained in the main Envoy repository will be held to the same quality bar as the core Envoy code. This includes coding style, code reviews, test coverage, etc. In the future we may consider creating a sandbox repository for extensions that are not compiled/tested by default and held to a lower quality standard, but that is out of scope currently.
containerd Process
GOVERNANCE.md
The containerd process defines a distinction between "core" and "non-core" subprojects.
Kubernetes Process
kubernetes-repositories.md

Looks good to me!
Is it worth adding workflow to requirements? (i.e code must be committed via code reviews & pull requests). You do mention it in the top level comment though.

Must have a similar level of code quality to cert-manager itself (enforced by tooling)

Does the tooling bit also include that there would have to be some sort of CI set up so there is automated testing on each PR?
Another somewhat code-related thing might be properly versioned/tested releases with an automated release process?
Do you think it is worth also adding something about what are some good reasons why it would make sense for a project to be donated/accepted? (i.e as in the case of AWS issuer to make it easier for the AWS folks to contribute).
Also, would we expect that some community involvement can be predicted? (i.e that it's not a project with just a single maintainer/contributor)?

Thank you @SgtCoDFish for the third-party code donation page!! Closing now.


Date gets converted to String for SimpleSchema.oneOf(String, Number, Date)

Hello and thanks for this great module,
I have this use of SimpleSchema.oneOf:
new SimpleSchema({
   ...
     'myField': {
        type: Array,
        defaultValue: [],
        optional: true,
    },

     'myField.$': {
        type: Object,
    },

    'myField.$.value': {
        type: SimpleSchema.oneOf(String, Number, Date),
    },
});

When I do MyCollection.insert({ myField: [{ value: new Date() }] }), that date value gets saved as a String in the database (value: 'Fri Aug 03 2018 12:52:42 GMT+0300 (EEST)'). However, if I do SimpleSchema.oneOf(Date, Number, String), it get's correctly inserted in the database, as a Date object.
I guess it's a bug. I thought it should save the date value as Date no matter the order inside SimpleSchema.oneOf. RIght?
Thanks!

The input value seems to be converted to the first argument of SimpleSchema.oneOf, because I see now that for SimpleSchema.oneOf(Date, Number, String), a Number gets saved as a date inside the DB. 29 gets saved as 1970-01-01T00:00:00.029Z.

Currently we are facing the same problem. In our case it can be a String or a Number. But instead that SimpleSchema is looking if the value is a Number it will directly convert it to a String because its the first in our "oneOf" rule.

I did some tests to see if validate mutates input, which all passed:

Tests
describe('SimpleSchema', function () {
  describe('oneOf', function () {
    it('allows any listed type, and doesn't mutate input', function () {
      const schema = new SimpleSchema({
        foo: SimpleSchema.oneOf(String, Number, Date),
      });

      const test1 = { foo: 1 };
      expect(function test1func () {
        schema.validate(test1);
      }).toNotThrow();
      expect(test1.foo).toBeA('number');

      const test2 = { foo: 'bar' };
      expect(function test2func () {
        schema.validate(test2);
      }).toNotThrow();
      expect(test2.foo).toBeA('string');

      const test3 = { foo: new Date() };
      expect(function test2func () {
        schema.validate(test3);
      }).toNotThrow();
      expect(test3.foo instanceof Date).toBe(true);

      const test4 = { foo: false };
      expect(function test3func () {
        schema.validate(test4);
      }).toThrow();
      expect(test4.foo).toBeA('boolean');
    });
  });
});

I'm going to guess it's because Collection2 also "cleans" the input to match the expected type before validation.
So looking at the cleaning function:
https://github.com/aldeed/simple-schema-js/blob/master/package/lib/clean.js#L77
You can see it pulls the first type definition off the group.
Easiest way around it without a PR and update is to set the default cleaning options on the schema to not autoconvert values:
new SimpleSchema({
    'myField': {
        type: Array,
        defaultValue: [],
        optional: true,
    },

     'myField.$': {
        type: Object,
    },

    'myField.$.value': {
        type: SimpleSchema.oneOf(String, Number, Date),
    },
}, {
    clean: { autoConvert: false }
});

But to fix this properly, the function in clean.js probably needs to check if it's a valid type before converting it the the first option in a oneOf group

Autoconvert is part of oneOf that hasn't been implemented yet. Hoping to get oneOf out of experimental status soon.

Published the fix in 1.5.5


GitHub Issue #159: use error reporting

This is a PR based on PR https://github.com/rollbar/rollbar-php/pull/159 with test coverage for issue #156

LGTM
The codacy issue on this is wrong due to the @dataprovider usage in the test.


run_setup_test default value false not working

We have notice that run_setup_test default value which is false on documentation is not working. Every time we run our pipeline that uses terraform, setup tests is still being run on fivetran. Even trying to define it to false even though it is already the default value shows that this setup tests is still running.
Do note that this happened if the connector was already set-up and if we re-run the connector for any configuration changes, it will run a setup test(even if the value was forced to false). But for the setup first creation, it will run as expected.

Hi,
Just to add, we are coordinating this with fivetran support and upon their checking on API call logs on the PATCH request, the payload has "setupTests": true. Which means that even though by default this should be false base on your documentation here, and we trying to define the run_setup_test = false, what the payload the terraform is giving on the PATCH request has "setupTests": true.

We have published fix with v0.7.2-pre, please check it out:
https://registry.terraform.io/providers/fivetran/fivetran/latest


[stable/prometheus-operator] Upgrade dependencies

Is this a new chart
No.
What this PR does / why we need it:
Profit from better logging in Grafana.
Which issue this PR fixes
./.
Special notes for your reviewer:
./.
Checklist

[x] DCO signed
[x] Chart Version bumped
[x] Variables are documented in the README.md
[x] Title of the PR starts with chart name (e.g. [stable/mychartname])

/assign @vsliouniaev
Do you have any idea why the linter complains about Error: requirements.lock is out of sync with requirements.yaml. That means that helm dependency update can't be used, right?!

It means that your lock file doesn't correspond to the dependencies file. I believe you would get the same error from helm lint

/ok-to-test

@vsliouniaev I error occurs after running helm dependency update in stable/prometheus-operator. The result are the changes of this PR. I assume that the result should be correct and thus I don't understand the complaint by the lint-charts check. helm lint doesn't complain about anything.

As soon as #21619 is merged, I'll try to reproduce with the helm version used in the linter job.

Could you please bump the chart version? Looks like the test cluster has been fixed

@vsliouniaev I rebased the PR on master. The linter error is still raised. If I run helm lint with the same helm version that is used in the CI job, i.e.
docker run -it -v $(pwd)/charts:/mnt --entrypoint sh alpine/helm:2.15.2

and then
cd stable/prometheus-operator && helm lint

I get
# helm lint
==> Linting .
Lint OK

1 chart(s) linted, no failures

I have no idea why the CI job is failing. Do have any advise?

The versions have been updated meanwhile.


Research options for sharing streams (cache) between browser contexts

Closing as discussed, please re open if this is not correct.


crashes Ionic 5 app

Bug Report
as per Ionic docs i have:
import { Device } from '@ionic-native/device/ngx';
constructor(private device: Device) { }
...
console.log('Device UUID is: ' + this.device.uuid);
adding the constructor declaration gives:
app.component.html:13 ERROR NullInjectorError: StaticInjectorError(AppModule)[Device]:
StaticInjectorError(Platform: core)[Device]:
NullInjectorError: No provider for Device!
Problem
What is expected to happen?
What does actually happen?
Information

Command or Code

Environment, Platform, Device

running with:
ionic cordova run browser -l
Version information
ionic info:
Ionic:
Ionic CLI                     : 6.11.6 (C:\Program Files\nodejs\node_modules@ionic\cli)
Ionic Framework               : @ionic/angular 5.1.1
@angular-devkit/build-angular : 0.901.6
@angular-devkit/schematics    : 9.1.6
@angular/cli                  : 9.1.6
@ionic/angular-toolkit        : 2.2.0
Capacitor:
Capacitor CLI   : 2.1.0
@capacitor/core : 2.1.0
Cordova:
Cordova CLI       : 10.0.0
Cordova Platforms : 6.0.0, android 8.1.0, browser
Cordova Plugins   : cordova-plugin-ionic-keyboard 2.2.0, cordova-plugin-ionic-webview 4.2.1, (and 11 other plugins)
Utility:
cordova-res : not installed
native-run  : 1.0.0
System:
Android SDK Tools : 26.1.1 (C:\android-sdk)
NodeJS            : v12.18.2 (C:\Program Files\nodejs\node.exe)
npm               : 6.14.5
OS                : Windows 7
version of this plugin<EMAIL_ADDRESS>Checklist

[X] I searched for existing GitHub issues
[X] I updated all Cordova tooling to most recent version
[X] I included all the necessary information above

This appears to be an issue with ionic, and not with the apache plugin. I think the best place to seek help for this is at https://github.com/ionic-team/ionic-native/issues


Move certain product target tests earlier during manifest loading

This is required for the implementation of the binary targets proposal to check that library products don't declare a type when referencing only binary targets: we firs need to check that all product targets reference an existing target.

@swift-ci please smoke test


libserdes: init at 6.1.1

Motivation for this change
Add libserdes library, which provides Avro and Schema Registry support for C and C++ applications.
Kafkacat can use this for deserializing Avro messages and I intend to submit a PR adding this and Avro libraries as a dependency to the kafkacat derivation, should this one be accepted.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
21.11 Release Notes

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

[x] Fits CONTRIBUTING.md.

Builds happily, macos 10.15, nixos x86_64. Looks sensible.

Bumped version due to a new release (only a tiny little bugfix).


Elixir: symmetrical credential exchange

Currently Ockam.Services.API.CredentialExchange only supprots accepting credentials from remote nodes but cannot present it's own credentials, so it cannot be used with present_credential_mutual API.
It can support symmetrical exchange by handling actions/present_mutual API from present_credential_mutual in https://github.com/build-trust/ockam/blob/develop/implementations/rust/ockam/ockam_identity/src/credential/identity.rs
The API is similar to actions/present with a difference that response body should contain a credential (binary) in the same format as the request body.
Current supported API: https://github.com/build-trust/ockam/blob/develop/documentation/reference/api/credential_exchange.md
More on credentials: https://github.com/build-trust/ockam/blob/develop/documentation/architecture/authorization/credential_authorization.md

Requesting credential from the credential authority is out of scope for this issue.
In order to present credentials Ockam.Services.API.CredentialExchange worker needs to posess the credential binary. It can be added using GenServer.call to the worker.

Credential exchange is done at secure channel handshake


Dump beam info after number of turns on CPU or store beam parameters only

Hi,
How it's possible to do this in order to decrease GPU memory usage and still have some info about the beam?
For now, I did it in PyHEADTAIL way:
pyht_beam <= context.nparray_from_context_array(particles.*)
bunch_monitor.dump(pyht_beam)

Hello,
you find here some information on how to save/load particles in different ways:
https://xsuite.readthedocs.io/en/latest/particlesmanip.html#saving-and-loading-particles-objects-to-from-dictionary-or-file
Does it help for your case?

Hi,
Yes, it's  quite straightforward solution.
And then during tracking I can simply append one data frame to another.
Thanks!


Why are there 2 doc repos?

Can we combine the 2 doc repos that exist? https://github.com/tinkerbell/tinkerbell.org and https://github.com/tinkerbell/tinkerbell-docs

https://github.com/tinkerbell/tinkerbell-docs is now archived. All content lives in this repo.


Malformed header cause failure

HTTP normal headers:
header1: value1 \r\n
header2: value2 \r\n

So, if we set a malformed value, for example a\nb\nc:
Fuel.get("https://www.google.com/").header("sample" to "a\nb\nc").responseString { request, response, result ->
 result.failure {
   it.printStackTrace()
}
}

we get:
Exception : Illegal character(s) in message header value: a
b
c
    at com.github.kittinunf.fuel.toolbox.HttpClient.executeRequest(HttpClient.kt:69)
    at com.github.kittinunf.fuel.core.requests.TaskRequest.call(TaskRequest.kt:17)
    at com.github.kittinunf.fuel.core.requests.AsyncTaskRequest.call(AsyncTaskRequest.kt:13)
    at com.github.kittinunf.fuel.core.requests.AsyncTaskRequest.call(AsyncTaskRequest.kt:6)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at com.github.kittinunf.fuel.core.FuelManager$executor$2$1$1.run(FuelManager.kt:43)
    at java.lang.Thread.run(Thread.java:745)

Is this a bug? What should be the outcome of this, if the user supplies a malformed header?

Is that being said, which is the correct way to set wellformed headers for a GET request?

@yoavst , I have raised a small pr with this issue as a unit test. I feel that the current behaviour is correct. If you want to to be handled differently please specify how and I will address this in my current pr. if not I would suggest we close? @kittinunf


Fix code formatting in docstrings for a few functions

Reference Issue

What does this implement/fix? Explain your changes.
Format code in docstrings as code blocks by adding  >>> before lines of code
Any other comments?
I noticed this issue in the documentation for the MolsMatrixToGridImage code I submitted (scroll down to EXAMPLES), then discovered that other docstrings had similar issues, so I addressed the couple that I found.

In their current state, the code blocks are not presented as code blocks, but as run-on paragraphs:

I proposed using >>> because the code blocks displayed as such, for example for GetAtomPairFingerprintAsBitVect:

are formatted with >>> :
  >>> from rdkit import Chem
  >>> m = Chem.MolFromSmiles('CCC')
  >>> v = [pyScorePair(m.GetAtomWithIdx(0), m.GetAtomWithIdx(1), 1),
  ...      pyScorePair(m.GetAtomWithIdx(0), m.GetAtomWithIdx(2), 2),
  ...     ]
  >>> v.sort()
  >>> fp = GetAtomPairFingerprintAsBitVect(m)
  >>> list(fp.GetOnBits()) == v
  True

And as shown in the documentation screenshot above, when you select the code with the mouse the >>> are excluded (they are not within the blue highlighting). I verified that the >>> are excluded when you then copy and paste the selected code.
If the preference is to format code blocks that are not doctest-like (showing both input and output) without using >>>, perhaps triple backticks ``` around code blocks would work? I searched for triple backticks ``` and didn't find any in the RDKit codebase that produce documentation pages, so I can't cite any example of that working, but it's the usual way to format code blocks.
P.S. In the code block above, GitHub adds a Copy button  which we might also want to add to the RDKit documentation to facilitate copying blocks of code. I believe the sphinx-copybutton extension achieves that. I can take that on if it's something we want to add.

In their current state, the code blocks in that documentation page are not presented as code blocks, but as run-on paragraphs:

The solution to this is apparently to end the line above with two colons: https://stackoverflow.com/a/64452858
I tested this with a couple of doc strings and that seems to work.

Thanks for researching that. I'll try using two colons, ideally after Documentation preview builds on CI #6849 is in place so I can check that I formatted the code blocks correctly--an easy mistake to make is to format a first code block correctly but not a second code block, for example in ExplainPairScore.


stripe-cli: 1.7.9 -> 1.7.10

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/stripe-cli/versions.
meta.description for stripe-cli is: "A command-line tool for Stripe"
meta.homepage for stripe-cli is: "https://stripe.com/docs/stripe-cli"
meta.changelog for stripe-cli is: ""
Updates performed

Golang update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
Warning: no invocation of /nix/store/yrrah0n8hk7bsn0r2bxrmva5m3034ldq-stripe-cli-1.7.10/bin/stripe had a zero exit code or showed the expected version
0 of 1 passed binary check by having a zero exit code.
0 of 1 passed binary check by having the new version present in output.
found 1.7.10 in filename of file in /nix/store/yrrah0n8hk7bsn0r2bxrmva5m3034ldq-stripe-cli-1.7.10

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

1 package rebuild(s)

1 x86_64-linux rebuild(s)
1 x86_64-darwin rebuild(s)

First fifty rebuilds by attrpath
stripe-cli

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/yrrah0n8hk7bsn0r2bxrmva5m3034ldq-stripe-cli-1.7.10 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A stripe-cli https://github.com/r-ryantm/nixpkgs/archive/534dee7daf31e35bdde762303e2c64a549002073.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/yrrah0n8hk7bsn0r2bxrmva5m3034ldq-stripe-cli-1.7.10
ls -la /nix/store/yrrah0n8hk7bsn0r2bxrmva5m3034ldq-stripe-cli-1.7.10/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

stripe-cli

Maintainer pings
cc @RaghavSood @kalbasit for testing.

Result of nixpkgs-review pr 156934 run on x86_64-darwin 1

1 package built:

stripe-cli