Allow loading model from memory

Ctranslate2 supports this via the files argument (e.g. from result of requests)(https://opennmt.net/CTranslate2/python/ctranslate2.models.Whisper.html#ctranslate2.models.Whisper.init):
files – Load model files from the memory. This argument is a dictionary mapping file names to file contents as file-like or bytes objects. If this is set, model_path acts as an identifier for this model.

Can this be enabled in faster-whisper? Right now I'm manually overriding the WhisperModel.__init__ (https://github.com/SYSTRAN/faster-whisper/blob/91c8307aa6b305dcaf12fc112b0187ee0d512b00/faster_whisper/transcribe.py#L140) to pass this argument to ctranslate2 but it'd be great if this is supported natively.
On a related note, maybe using *args, **kwargs so that we can access new features (e.g. flash_attention=True) in the future?

@George0828Zhang , hello. Tks for your idea. I created a new PR to implement this.

@George0828Zhang , hello. Tks for your idea. I created a new PR to implement this.

Though I appreciate the quick actions, this PR did not fully solve this issue. There's still the tokenizer and preprocesser that needed to be handled. Here's what I'm using, feel free to add to the PR and let's hope it gets merged soon.
import json
import os
from inspect import signature
from typing import List, Optional, Union
import ctranslate2
import tokenizers
from faster_whisper.feature_extractor import FeatureExtractor
from faster_whisper.utils import download_model, get_logger

class MyWhisper(WhisperModel):
    def __init__(
        self,
        model_size_or_path: str,
        device: str = "auto",
        device_index: Union[int, List[int]] = 0,
        compute_type: str = "default",
        cpu_threads: int = 0,
        num_workers: int = 1,
        download_root: Optional[str] = None,
        local_files_only: bool = False,
        files: object = None,
        **kwargs
    ):
        """
        """
        self.logger = get_logger()

        tokenizer_bytes, preprocessor_bytes = None, None
        if files:
            model_path = model_size_or_path
            tokenizer_bytes = files.pop("tokenizer.json", None)
            preprocessor_bytes = files.pop("preprocessor_config.json", None)
        elif os.path.isdir(model_size_or_path):
            model_path = model_size_or_path
        else:
            model_path = download_model(
                model_size_or_path,
                local_files_only=local_files_only,
                cache_dir=download_root,
            )

        self.model = ctranslate2.models.Whisper(
            model_path,
            device=device,
            device_index=device_index,
            compute_type=compute_type,
            intra_threads=cpu_threads,
            inter_threads=num_workers,
            files=files,
            **kwargs
        )

        tokenizer_file = os.path.join(model_path, "tokenizer.json")
        if tokenizer_bytes:
            self.hf_tokenizer = tokenizers.Tokenizer.from_buffer(tokenizer_bytes)
        elif os.path.isfile(tokenizer_file):
            self.hf_tokenizer = tokenizers.Tokenizer.from_file(tokenizer_file)
        else:
            self.hf_tokenizer = tokenizers.Tokenizer.from_pretrained(
                "openai/whisper-tiny" + ("" if self.model.is_multilingual else ".en")
            )
        self.feat_kwargs = self._get_feature_kwargs(model_path, preprocessor_bytes)
        self.feature_extractor = FeatureExtractor(**self.feat_kwargs)
        self.num_samples_per_token = self.feature_extractor.hop_length * 2
        self.frames_per_second = (
            self.feature_extractor.sampling_rate // self.feature_extractor.hop_length
        )
        self.tokens_per_second = (
            self.feature_extractor.sampling_rate // self.num_samples_per_token
        )
        self.input_stride = 2
        self.time_precision = 0.02
        self.max_length = 448

    def _get_feature_kwargs(self, model_path, preprocessor_bytes=None) -> dict:
        preprocessor_config_file = os.path.join(model_path, "preprocessor_config.json")
        config = {}
        if preprocessor_bytes or os.path.isfile(preprocessor_config_file):
            try:
                if preprocessor_bytes:
                    config = json.loads(preprocessor_bytes)
                else:
                    with open(preprocessor_config_file, "r", encoding="utf-8") as json_file:
                        config = json.load(json_file)
                valid_keys = signature(FeatureExtractor.__init__).parameters.keys()
                config = {k: v for k, v in config.items() if k in valid_keys}
            except json.JSONDecodeError as e:
                self.logger.warning(
                    "Could not load preprocessor_config.json: %s", str(e)
                )

        return config

@George0828Zhang , I think that if you want to handle tokenizer and preprocessor with other initialization data, you could edit tokenizer.json and preprocessor_config.json files in your custom FW model instead of default files after conversion.

@trungkienbkhn I'm not "handl[ing] tokenizer and preprocessor with other initialization data", I'm not modifying anything in any way. I'm loading these files from memory (rather than disk), i.e. a dictionary like so:
files={
    "config.json":  open("config.json", "rb").read(),
    "tokenizer.json": open("tokenizer.json", "rb").read(),
    "model.bin": open("model.bin", "rb").read(),
    "vocabulary.txt": open("vocabulary.txt", "rb").read(),
    # preprocessor_config.json is optional
}

Naively passing this dict to the underlying ctranslate2.models.Whisper DOES NOT WORK.
You might ask: Why read it like these? Why not pass the path, or let whisper download it?
Well, this is specifically for the use case where the service 1. has no public internet access and 2. the model files are stored on LAN and 3. the local storage is limited.
I provided what does work, so it's not really an issue.

@George0828Zhang , okay I updated my PR.

Since the PR got merged, I'm closing this. Thanks.


crypto/x509: AKID and issuer SKID are not checked to match

What version of Go are you using (go version)?
go1.14.6
Does this issue reproduce with the latest release?
Yes
What operating system and processor architecture are you using (go env)?
It reproduces on the playground.
What did you do?
https://play.golang.org/p/SBdIYeRXuOB verification succeeds for this certificate chain where the AIK keyid on the leaf certificate does not match the issuer ID.
What did you expect to see?
OpenSSL verify rejects this certificate chain due to the AIK KeyId and Issuer ID mismatch.
This can be verified with: openssl verify -CAfile ca.pem passing.pem
where ca.pem and passing.pem are the same x.509 certs that are in the playground example.
I expected Go x.509 Verify to also fail the chain.
What did you see instead?
Go x.509 Verify succeeds

cc @FiloSottile @katiehockman

The spec does not require a match, we can check what the other good verifiers do (Chrome and moz::pkix) and match that.

Chromium allows mismatches, but during chain building prioritizes potential issuers with matching SKID/AKID above those with mismatches (see https://source.chromium.org/chromium/chromium/src/+/master:net/cert/internal/path_builder.cc;l=113?q=subject_key_identifier&ss=chromium%2Fchromium%2Fsrc&start=11). A similar approach to this is suggested in https://go-review.googlesource.com/c/go/+/232993.
Mozilla::pkix just ignores SKID/AKID matching entirely.

With https://go-review.googlesource.com/c/go/+/232993 landed this is now expected behavior and matches what Chromium does.

See also #30079


Fix: Remove tha artifact_name argument from ds.log_to_mlflow()

This PR makes it so the users can no longer supply the artifact_name argument to the ds.log_to_mlflow() function.

Changes after first review:

Datasource.log_to_mlflow marked as deprecated, send users to QueryResult.log_to_mlflow
Add QueryResult.log_to_mlflow function that logs the QueryResult to MLflow with a log_ prefix
Change the docs of the related to functions refer to the QueryResult function and not the Datasource one
Changes to datasources.get_from_mlflow:

Now returns a dictionary of {artifact_path: Datasource}
If artifact_name is specified, only loads this artifact, but still returning a dictionary
If artifact_name is not specified, list all artifacts in mlflow, and loads any artifact ending with .dagshub.dataset.json as another datasource
Set the as_of of every loaded Datasource to be the timestamp in the artifact, even if there was no as_of specified in the original query.


Submodule expansion in compiled schema

It would be convenient to compile a set of module- and submodule-yang-files in one bundle. E.g. by supplying both kinds to the yang.schema.Context or similar.
As part of including the submodule into the target parent module, a prefix translation might be needed to handle the case of a submodule that declares a belongs-to local prefix that differs from that of its parent.

I have a first basic and naive implementation merged now. It treats submodules a little differently from modules and before we start compiling all the other stuff we merge the content from submodules into modules.
Do you have an example of a module & submodule that uses different prefix just so I can test with something for this prefix translation stuff?

tailf-ncs.yang might be a good test since it includes quite alot of varied submodules
E.g. tailf-ncs-high-availability.yang could be modified by replacing the ncs prefix usage, but is only allowed to be redistributed in without modification.

@ddjoh I think this is done, right? At least good enough to make tailf-ncs.yang compile, right?


Task command surround by single quite (') lead to syntax error on VSC 1.64.0

Does this issue occur when all extensions are disabled?: Yes/No
Yes

VS Code Version: 1.64.0
OS Version: Windows 10 Pro 64-bit

Steps to Reproduce:

Using the custom task.json to run task

"version": "2.0.0",
    "tasks": [
        {
            "label": "Run File - Robot Pure (CMD)",
            "windows": {
                "command": "${workspaceFolder}\\.venv\\Scripts\\activate && python -m robot",

            },
            "linux": {
                "command": "source ${workspaceFolder}/.venv/bin/activate && python -m robot"
            },
            "args": [
                "--loglevel", "TRACE:INFO",
                "--outputdir", "report",
                "${file}"
            ],
            "type": "shell",
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "presentation": {
                "reveal": "always",
                "panel": "new",
                "focus": true
            },
            "options": {
                "cwd": "${workspaceFolder}",
                "env": {
                    "PYTHONIOENCODING": "UTF-8",
                    "PYTHONPATH": "${workspaceFolder}",
                    "PATH": "${workspaceFolder}/.venv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:"
                }
            }
        },
]

The task run successfully on VSC 1.63.2
But failed on VSC 1.64.0 and got syntax error

File name, directory name or volume label syntax is incorrect

Investigating the commands VSC executed, and find the difference below
VSC 1.63.2:
The command surround by Double Quotes on 1.63.2  which can be run successfully
The terminal process "C:\WINDOWS\System32\cmd.exe /d /c "...\.venv\Scripts\activate && python -m robot" --loglevel TRACE:INFO --outputdir report Test.robot"

VSC 1.64.0:
The command surround by Single Quotes on 1.64.0 which caused syntax error
The terminal process "C:\WINDOWS\System32\cmd.exe /d /c '...\.venv\Scripts\activate && python -m robot' --loglevel TRACE:INFO --outputdir report Test.robot"

Duplicate of https://github.com/microsoft/vscode/issues/142196


insecure default

In config file example and readme
insecure2.test: 9002
But it actually redirect to https. For me is preferred to have HTTP default.

Great catch, I'll update the docs to make it clear that without an explicit http:// prefix, every alias is secure.
I understand your preference for a secure default but I fundamentally disagree and will keep secure aliases the default.
Sorry again for the misleading docs. If you'd like to use an insecure alias, you'll have to do
http://insecure2.test: 9002

Fixed by #19


Dart Analyzer should warning us if a class with observable fields lacks the Observable mixin

This issue was originally filed by @Emasoft

If we want the fields of our model class observable we not only need the @observable annotation but also the Observable mixin:
 class Name extends Object with Observable
  {
    @observable String first = '';
    @observable String last = '';
    Name( this.first, this.last );
  }
But the Dart Analyzer doesn't rise an error, a warning or even an hint if we forgot to add the Observable mixin, like this:
 class Name extends Object
  {
    @observable String first = '';
    @observable String last = '';
    Name( this.first, this.last );
  }
Please make the Dart Analyzer to rise both an hint (with an auto-refactor option) and a warning when this happens.

The Dart SDK does not contain any Observable nor @observable. The discontinued observe package provided these. But it has been discontinued, and these hints will not be added.


Test on same node versions as metalsmith/metalsmith

This requires transpiling our es6 before testing, and running the tests on the build results instead of the es6 code. It also means we should add a prepublish script for npm, and that we change the entry point for this lib to the build results.
Closes #63
Closes #62

@doodzik What do you think? Unfortunately I don't have a solution for running eslint on travis as well with these versions of node. It doesn't work on node < 4, and enabling it conditionally is a bit of a hassle. I'd say we accept the regression in testing and open up a separate issue for running eslint on travis.

I think it doesn't need to be an issue if eslint doesn't work on node 4, but still on the higher versions. Because we are testing the styling of the code and not the implementation on a platform.

I think it doesn't need to be an issue if eslint doesn't work on node 4, but still on the higher versions. Because we are testing the styling of the code and not the implementation on a platform.

Oh yeah definitely, but the problem is that I couldn't really find a good way of automatically running eslint on travis, but excluding incompatible node versions from running it. Otherwise it'll break the build on 0.12. If I could run eslint only on the latest node version that would be perfect.

can we run eslint only on one node version?
This would remove the headache a little.

Not through the .travis.yml I think (you set the node versions you want to test on, and it runs the tasks on all versions).
Maybe with something like https://www.npmjs.com/package/check-node-version. I couldn't get it to work in this PR, but with some fiddling around it should be possible.


PCF DEV startup issue

Hi, I installed PCF DEV on Windows following the instructions mentioned in https://docs.pivotal.io/pcf-dev/install-windows.html
I see the following error where i ran the command cf dev start
PS C:> cf dev start
Using existing image.
Allocating 3801 MB out of 7603 MB total system memory (3812 MB free).
Importing VM...
Starting VM...
←[31;1mFAILED←[0m
Error: failed to start VM: failed to execute 'C:\Program Files\Oracle\VirtualBox\VBoxManage startvm pcfdev-v0.548.0 --t
pe headless': exit status 1: Waiting for VM "pcfdev-v0.548.0" to power on...
VM "pcfdev-v0.548.0" has been successfully started.
FYI the version of Oracle Virtual Box installed is Version 5.0.14 r105127
I am using Window 7
What could be the root cause of the issue?

Sorry for the delay!
Could you try upgrading to Virtualbox 5.1.x and re-running cf dev start?

Closing due to inactivity.


Annotate zerver/lib/queue.py and zerver/lib/event_queue.py

Thanks @cpdean for working on this! It seemed that you were too busy to finish this, so I completed it so that your work is merged.

Automated message from Dropbox CLA bot
@sharmaeklavya2, it looks like you've already signed the Dropbox CLA. Thanks!

Merged, thanks @sharmaeklavya2 and @cpdean!


Invalid offense/autocorrect for Style/RedundantLineContinuation

Expected behavior
Not to flag the Style/RedundantLineContinuation offense.
Actual behavior
Offense is flagged and incorrectly autocorrected.
Steps to reproduce the problem
Input:
expect(cart).to include \
  plan: 'plan',
  coupon: nil,
  item: nil

This is flagged as:
Style/RedundantLineContinuation: Redundant line continuation.
        expect(cart).to include \ ...

Output after autocorrecting:
expect(cart).to include
  plan: 'plan',
  coupon: nil,
  item: nil

Which is no longer valid Ruby code.
RuboCop version
$ [bundle exec] rubocop -V
1.61.0 (using Parser <IP_ADDRESS>, rubocop-ast 1.30.0, running on ruby 3.1.4) [arm64-darwin22]
  - rubocop-factory_bot 2.25.1
  - rubocop-performance 1.20.2
  - rubocop-rails 2.23.1
  - rubocop-rspec 2.26.1

cc @koic, it’s probably related to #12678.


Add k8s fake client w/ standard API + extensions interfaces

e.g., so we have clients that can invoke both .ReplicationControllers() and .Deployments() in tests

i have done something similar for secrets https://github.com/deis/registry-token-refresher/blob/master/pkg/k8s/secrets.go


Request Hangs When Setting Body

Request Version:
"request": "^2.81.0",
"request-promise-native": "^1.0.3",
Node Version: 7.8.0
During a Unit Test, I'm using request-promise-native to activate a server method that I'm developing. The request is performed as below:
it("should return 400 when the body doesn't comply with the schema", () => {
	let options: request.RequestPromiseOptions = {
		method: "POST",
		resolveWithFullResponse: true,
		// body: { error: "invalid body" },
		json: true,
	};

	return request("http://localhost:9999/mockpost", options).should.eventually.have.property("statusCode", 400);
});

If I uncomment the body line, the test times out. I've debugged the lib and stepped into the code, but couldn't find the issue - certainly isn't something as simple as stringifying the body.
One thing of note is that the same node process is hosting the server and the client, which may be causing the mess. (of course, request's own tests does that without any problem).

Hey @HeavyStorm , this is a difficult question since I can’t debug it myself.
Are you able to debug/monitor your server to see if it actually responds in time? If you can answer that you’ll know if the issue is that the server doesn’t respond or the client doesn’t handle the response properly. Let me know what you find out.

@analog-nico I messed up, it was a server side problem. It did concern the body but I only found out after a few attempts. ashamed
Thanks for answering so quickly!

No problem buddy. I am glad you found the cause!


test_cache build failure

On the latest develop branch on ROCm 3.5 I am seeing this issue when building
$ make -j test_cache
[  0%] Built target addkernels
[ 96%] Built target MIOpen
[100%] Building CXX object test/CMakeFiles/test_cache.dir/cache.cpp.o
/home/dlowell/MIOpen/test/cache.cpp:135:22: error: no member named 'GetCacheFile' in namespace 'miopen'
    auto p = miopen::GetCacheFile("gfx", "base", "args", false);
             ~~~~~~~~^
/home/dlowell/MIOpen/test/cache.cpp:141:25: error: no member named 'GetCacheFile' in namespace 'miopen'
    auto p    = miopen::GetCacheFile("gfx", "base", "args", true);
                ~~~~~~~~^
2 errors generated when compiling for gfx906.
test/CMakeFiles/test_cache.dir/build.make:62: recipe for target 'test/CMakeFiles/test_cache.dir/cache.cpp.o' failed
make[3]: *** [test/CMakeFiles/test_cache.dir/cache.cpp.o] Error 1
CMakeFiles/Makefile2:7590: recipe for target 'test/CMakeFiles/test_cache.dir/all' failed
make[2]: *** [test/CMakeFiles/test_cache.dir/all] Error 2
CMakeFiles/Makefile2:7597: recipe for target 'test/CMakeFiles/test_cache.dir/rule' failed
make[1]: *** [test/CMakeFiles/test_cache.dir/rule] Error 2
Makefile:2953: recipe for target 'test_cache' failed
make: *** [test_cache] Error 2

This happens on both backends. Checking multiple systems.

False alarm.

This is a bug that I've introduced when switched from sqlite binary cache to file based one. Needs to be fixed, but not urgent.

Fixed by #297


CUDA not found in docker image

I pulled the official docker image but after installing all the dependencies, I'm getting torch.cuda.is_available() = False.
Do you have further instructions to use the Docker image?

I encountered the same problem and the command nvidia-smi didn’t work in docker. I solved this by installing the NVIDIA Container Toolkit and adding the parameter --gpus all when running docker. If you haven’t installed it, you can refer to this issue, and the installation guide


Fix GF Copyright plugin configuration

Build of SAAJ API fails:
'[ERROR] Failed to execute goal org.glassfish.copyright:glassfish-copyright-maven-plugin:1.42:copyright (default) on project javax.xml.soap-api: IOException while checking copyrights: Cannot run program "svn": error=2, No such file or directory -> [Help 1]'
Even woprkaround  mvn clean install -Dcopyright.scm=git does not work.
Fix: Add proper <scm> tag into plugin configuration
Also update plugin to latest version.

Fixed by: https://github.com/eclipse-ee4j/saaj-api/pull/6

PR https://github.com/eclipse-ee4j/saaj-api/pull/6 is merged into master. Closing this issue.


Update F# XML documentation (removed extraneous stars)

Summary
Removed extraneous stars (bad formatting).

Hi @saul, I'm your friendly neighborhood .NET Foundation Pull Request Bot (You can call me DNFBOT). Thanks for your contribution!

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. Real humans will now evaluate your PR.

TTYL, DNFBOT;

For some reason the bot isn't giving links to the article on our staging server anymore, but here's what it looks like when rendered:

In other words, it looks good to me!  Thanks, @saul.


Handle unknown name of Nvidia driver

As described in #8, the installation script fails when lspci indicates that an Nvidia driver is attached but does not reference the driver's name according to the expected regex.  Tested these changes on Ubuntu 18.04 with an attached T4.

Hi @timeemit
Thank you for the PR. I would be willing to approve and merge this PR, but first you'd need to sign the CLA that the automatic check is mentioning: https://cla.developers.google.com/
Without this, I cannot merge your code into this repository.

I have decided to just replace the device recognition logic to use the device codes, instead of the device names provided by lspci. This way the script will be working fine even with outdated device lists.


Should we just reuse existing

We have https://github.com/bids-standard/bids-schema/tree/main/versions which we are yet to automate (iirc), but may be we should just make it into bids-standard/releases repo and have all releases related info (schema, PDFs) in it?

This repo exists so that we can have an easy automation of publishing spec PDF files (via Zenodo --> DOI).
If we had a big "releases" repo, we'd have one DOI (per release) for several resources -- I think it would be preferable to have a specific DOI for each specific resource (PDF, schema, html spec, ...)

See also:

https://github.com/bids-standard/bids-specification/issues/1554
https://github.com/bids-standard/bids-specification/pull/1652


Improve error handling and oter misc. updates

This PR improves error handling and logging when running importers.
It also does a few unrelated misc. updates:

disable some doctests doctrings that are not doctests
add a setup.py
move pytest.ini config to setup.cfg
convert and clean doc and readme to ReST

Signed-off-by: Philippe Ombredanne<EMAIL_ADDRESS>

This is one  failing test
In [1]: from  vulnerabilities import models

In [2]: from  vulnerabilities.data_source import Advisory

In [3]: from vulnerabilities.import_runner import _get_or_create_vulnerability

In [4]: adv1 = Advisory(summary="foobar", impacted_package_urls=[],resolved_package_urls=[],cve_id="12")

In [5]: adv2 = Advisory(summary="foobar", impacted_package_urls=[],resolved_package_urls=[],cve_id="13")

In [6]: adv3 = Advisory(summary="foobar", impacted_package_urls=[],resolved_package_urls=[],cve_id="")

In [7]: _get_or_create_vulnerability(adv1)
Out[7]: (<Vulnerability: 12>, True)

In [8]: _get_or_create_vulnerability(adv2)
Out[8]: (<Vulnerability: 13>, True)

In [9]: _get_or_create_vulnerability(adv3)
---------------------------------------------------------------------------
MultipleObjectsReturned                   Traceback (most recent call last)
<ipython-input-9-cde82b468fba> in <module>
----> 1 _get_or_create_vulnerability(adv3)

~/coding/development/vulnerablecode/vulnerabilities/import_runner.py in _get_or_create_vulnerability(advisory)
    250         return models.Vulnerability.objects.create(), True
    251
--> 252     vuln, created = models.Vulnerability.objects.get_or_create(**query_kwargs)
    253
    254     # Eventually we only want to keep summary from NVD and ignore other descriptions.

~/coding/development/vulnerablecode/venv/lib/python3.8/site-packages/django/db/models/manager.py in manager_method(self, *args, **kwargs)
     80         def create_method(name, method):
     81             def manager_method(self, *args, **kwargs):
---> 82                 return getattr(self.get_queryset(), name)(*args, **kwargs)
     83             manager_method.__name__ = method.__name__
     84             manager_method.__doc__ = method.__doc__

~/coding/development/vulnerablecode/venv/lib/python3.8/site-packages/django/db/models/query.py in get_or_create(self, defaults, **kwargs)
    557         self._for_write = True
    558         try:
--> 559             return self.get(**kwargs), False
    560         except self.model.DoesNotExist:
    561             params = self._extract_model_params(defaults, **kwargs)

~/coding/development/vulnerablecode/venv/lib/python3.8/site-packages/django/db/models/query.py in get(self, *args, **kwargs)
    417                 self.model._meta.object_name
    418             )
--> 419         raise self.model.MultipleObjectsReturned(
    420             'get() returned more than one %s -- it returned %s!' % (
    421                 self.model._meta.object_name,

MultipleObjectsReturned: get() returned more than one Vulnerability -- it returned 2!


Register undo redo command

Register Undo/Redo commands when using Edit Menu to undo/redo at cell level.
This PR fixes #17821

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

1 of 9 (11.11%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.005%) to 41.708%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/sql/workbench/contrib/notebook/browser/notebook.component.ts
1
9
11.11%

Totals

Change from base Build<PHONE_NUMBER>:
-0.005%

Covered Lines:
27331

Relevant Lines:
59448

💛  - Coveralls


Spuriously decodes URL path

I was getting inconsistent behavior between htcat and curl and after applying the following instrumentation:
diff --git a/http.go b/http.go
index 297694a..dfd5024 100644
--- a/http.go
+++ b/http.go
@@ -5,6 +5,7 @@ import (
        "fmt"
        "io"
        "net/http"
+       "net/http/httputil"
        "net/url"
        "strconv"
        "sync"
@@ -53,6 +54,13 @@ func (cat *HtCat) startup(parallelism int) {
                return
        }

+       reqStr, err := httputil.DumpRequestOut(&req, true)
+       if err != nil {
+               fmt.Println(err)
+       }
+
+       fmt.Printf("%v\n", string(reqStr))
+
        // Check for non-200 OK response codes from the startup-GET.
        if resp.StatusCode != 200 {
                err = HttpStatusError{

I tracked it down to differences in how percent-encoded entities are treated in htcat and curl. Here is a request made with the instrumented htcat:
maciek@mothra:~$ ./htcat http://example.com/foo%2Bbar
GET /foo+bar HTTP/1.1
Host: example.com
User-Agent: Go 1.1 package http
Accept-Encoding: gzip

2015/08/11 15:00:44 aborting: could not write to output stream: Expected HTTP Status 200, received: "404 Not Found"

and here is the same URL requested with curl:
maciek@mothra:~$ curl -I -v http://example.com/foo%2Bbar
* Hostname was NOT found in DNS cache
*   Trying <IP_ADDRESS>...
* Connected to example.com (<IP_ADDRESS>) port 80 (#0)
> HEAD /foo%2Bbar HTTP/1.1
> User-Agent: curl/7.38.0
> Host: example.com
> Accept: */*
>
...

Note that curl uses the path "/foo%2Bbar" whereas htcat appears to have decoded that percent-encoding to "/foo+bar".
I'm not positive which behavior is correct but it seems like they should be consistent, and my money's on curl here. Thoughts?

This is a consequence of url.Parse.

I think you're right, though. The user input should be respected.


Python token highlighting is off

See<EMAIL_ADDRESS>

It seems related to https://app.asana.com/0/87040567695724/143652758316943
Works properly on my local instance


Use Measurement's indentifier in logging.

This allows to clearly identify logs if we have two, distinct instances of the same measurement.
/assign @mm4tt

Can we have both measurementName and identifier? I think there is a value in ability to search by either of them

/lgtm

Can we have both measurementName and identifier? I think there is a value in ability to search by either of them

We could, but in all cases but one they are same values. And in the case where they are different (APIResponsivenessPrometheues) Identifier contains name of the measurement so grepping still works.
Plus you always get name of the file, from which logging was invoked.


[es-dev-server] - Watch restrictions not configured correctly.

Running the es-dev-server throws the following error in the command line.
  Serving files from '/home/daniel/apps/empty-test'.
  Opening browser on '/demo/'
  Using history API fallback, redirecting non-file requests to '/demo/index.html'
(node:13099) UnhandledPromiseRejectionWarning: Error: ENOSPC: System limit for number of file watchers reached, watch '/home/daniel/apps/empty-test/demo/index.html'

Steps to reproduce

npm init @open-wc
Choose Scaffold a new project
.... choose a new component and all optional selections.
npm run start (or npm start or yarn start)

Once this happens your changes are never seen and you have to end the execution of the dev server and re-load to see your changes to your code.
It should work out of the box and I believe it did a few weeks ago when I was running watch before.

For whatever reason it is working now again. Must have been something on my local.


KinematicBody2D performance degradation

Godot version:
3.0.3 rc1+ possibly sooner.
OS/device including version:
Ubuntu Linux
Issue description:
move_and_collide** / move_and_slide take longer and longer to execute until fps drop to 1.

When the rotation of the body is at a multiple of 90 degrees the performance goes back to normal,
The closer to a 45 degree angle the body rotates. the slower it gets.
The performance degradation also seems to be a function of how far the body is from its origin.

Steps to reproduce:
After significant debugging I've nailed it down to only occurring when:

the KinematicBody2D has 2 collision shapes and one of them is disabled.
I used a one Capsule and only CollisionPolygon2D but it may not matter.  If both shapes on or both shapes are off the performance is not impacted.

Yes this occurs in master, I kept recompiling over the week hoping it was some bug that was already known.
Degradation wasn't the best choice of words. Basically once you get in the pathological case, the time for each move_and_collide increases on each iteration until the project eventually chugs at less than 1 fps. Even in the worst case rotating back to a 90 degree angle "unsticks it" and rotation back immediate stops it again.
If I had to guess it would be that some calculation is still taking the disabled shape into account and maybe thinks its still located at the origin?
I only recently started disabling a collision shape so I'm uncertain how far back this might go.

If you can provide a zipped project that reproduces the issue, that would greatly help with debugging. Making sure that you free nodes (queue_free()) when you want to get rid of them, if you just remove them from the tree remove_child() the memory is not freed.

Sure thing, I've attached a project.Use arrow keys to turn and move, if you fly in any direction for 5-10 seconds and are rotated in certain ways your performance should fall off a cliff. Flying back to origin or rotating to a multiple of 90 degree's should improve it.
I'm not destroying shapes, I'm just disabling one.
reproduce_issue.zip

Confirmed. The problem seens to be in move_and_collide and move_and_slide.


Migrate critical code paths to use Rust Result error handling

Fixes #138
Migrate critical code paths to use Rust Result error handling instead of .unwrap() or .expect().

src/bill/mod.rs

Replace .unwrap() with Result error handling in bill_from_byte_array and read_keys_from_bill_file.

src/bill/quotes.rs

Replace .unwrap() with Result error handling in read_quotes_map, write_quotes_map, get_quote_from_map, and add_bitcredit_token_in_quotes_map.

src/blockchain/block.rs

Replace .unwrap() with Result error handling in multiple functions, including get_nodes_from_block, get_history_label, and verifier.

src/blockchain/chain.rs

Replace .unwrap() with Result error handling in get_latest_bill, waiting_for_payment, check_if_payment_deadline_has_passed and check_if_last_sell_block_is_paid.

src/blockchain/mod.rs

Replace .unwrap() with Result error handling in start_blockchain_for_new_bill and encrypted_hash_data_from_bill.

src/external/bitcoin.rs

Replace .unwrap() with Result error handling in get_address_to_pay.

src/external/mint.rs

Replace .unwrap() with Result error handling in accept_mint_bitcredit, check_bitcredit_quote, client_accept_bitcredit_quote and request_to_mint_bitcredit.

I hope that this is what you were after with issue #138.
Apologies in advanced for any sloppy syntax, I'm still learning the ropes to Rust.

@Nathan-Bransby-NMT can you write smth in #138. Because then you will be participant and I can assign task to you

Using anyhow with context is a really good solution for one off errors 👍 . It would be nice to have some more details for the context messages to actually relate to the affected code path like: Failed to send get_address_info request.

@tompro Let me know if this is what you were after.

One thing though, could you please revert your changes for the files in the src/blockchain/ module? That part is currently actively being changed and refactored and these changes would just lead to unnecessary conflicts.

@zupzup reverted 👍🏻


Added AoT compilation spiel

In recent versions, AOT is enabled by default in production builds.

Are you making the phrasing change then? Or want me to do? You haven't elaborated.

Closing as inactive.


fix http otel trace propagation

Description

This PR adds proper otel trace context propagation to the grpc-gateway http server that open fga runs.
Previously, the grpc-gateway http server was not propagating the trace context to the grpc server, which caused the trace context to be lost when the request was forwarded to the grpc server.
This resolves the issue opened in https://github.com/openfga/openfga/pull/1024
References

Review Checklist

[x] I have clicked on "allow edits by maintainers".
[ ] I have added documentation for new/changed functionality in this PR or in a PR to openfga.dev [Provide a link to any relevant PRs in the references section above]
[x] The correct base branch is being used, if not main
[ ] I have added tests to validate that the change in functionality is working as expected

Hi, is it possible to get a review on this please?

Sorry for the delay @Zach-Johnson - we'll take a look

@Zach-Johnson would you please provide a sample snippet used to demonstrate before/after?

Sure, @jon-whit -
main.go
package main

import (
	"context"
	"log"
	"net/http"
	"time"

	openfga "github.com/openfga/go-sdk"
	"go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp"
	"go.opentelemetry.io/otel/propagation"
	"go.opentelemetry.io/otel"
	"go.opentelemetry.io/otel/attribute"
	"go.opentelemetry.io/otel/exporters/otlp/otlptrace"
	"go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc"
	"go.opentelemetry.io/otel/sdk/resource"
	sdktrace "go.opentelemetry.io/otel/sdk/trace"
)

func main() {
	cleanup := initTracerAuto()
	defer cleanup(context.Background())

	fgaClient := openfga.NewAPIClient(&openfga.Configuration{
		HTTPClient: &http.Client{Timeout: 10 * time.Second, Transport: otelhttp.NewTransport(http.DefaultTransport)},
		ApiUrl:     "http://localhost:8080",
	})

	trace := otel.GetTracerProvider().Tracer("trace")
	ctx := context.Background()
	ctx, span := trace.Start(ctx, "example")
	_, _, err := fgaClient.OpenFgaApi.ListStores(ctx).Execute()
	if err != nil {
		log.Fatalln("failed", err)
	}
	defer span.End()
}

func initTracerAuto() func(context.Context) error {
	exporter, err := otlptrace.New(
		context.Background(),
		otlptracegrpc.NewClient(
			otlptracegrpc.WithInsecure(),
			otlptracegrpc.WithEndpoint("localhost:4317"),
		),
	)
	if err != nil {
		log.Fatalln("failed", err)
	}

	resources, err := resource.New(
		context.Background(),
		resource.WithAttributes(
			attribute.String("service.name", "otel-otlp-go-service"),
			attribute.String("application", "otel-otlp-go-app"),
		),
	)
	if err != nil {
		log.Fatalln("failed", err)
	}

	otel.SetTracerProvider(
		sdktrace.NewTracerProvider(
			sdktrace.WithSampler(sdktrace.AlwaysSample()),
			sdktrace.WithSpanProcessor(sdktrace.NewBatchSpanProcessor(exporter)),
			sdktrace.WithSyncer(exporter),
			sdktrace.WithResource(resources),
		),
	)

	otel.SetTextMapPropagator(
		propagation.NewCompositeTextMapPropagator(
			propagation.TraceContext{},
			propagation.Baggage{},
		),
	)

	return exporter.Shutdown
}

Then set up jaeger:
docker run --rm --name jaeger \
  -e COLLECTOR_ZIPKIN_HOST_PORT=:9411 \
  -p 6831:6831/udp \
  -p 6832:6832/udp \
  -p 5778:5778 \
  -p 16686:16686 \
  -p 4317:4317 \
  -p 4318:4318 \
  -p 14250:14250 \
  -p 14268:14268 \
  -p 14269:14269 \
  -p 9411:9411 \
  jaegertracing/all-in-one:1.57

And openfga:
go run ./cmd/openfga/ run --log-level debug --trace-enabled --trace-otlp-endpoint localhost:4317 --trace-sample-ratio 1.0

Then run the example program:
go run .

Pull up localhost:16686 to see the jaeger dash, the spans from the example will be connected to the openfga spans with this fix:

For comparison, this is how it looks on main:


Enable serialization of byte slices

Add three types to facilitate serializing a byte slice as hex. The idea for this code is copied from rust-bitcoin::serde_utils.
Make the tersely named type use lowercase and add explicit lower and upper versions as we do for the serialize functions.

Based on discussion in https://github.com/rust-bitcoin/hex-conservative/pull/92


Avoid coercing to numpy in as_shared_dtypes

Solves the problem in https://github.com/pydata/xarray/pull/8712#issuecomment-1929037299

[ ] Closes #xxxx
[ ] Tests added
[ ] User visible changes (including notable bug fixes) are documented in whats-new.rst
[ ] New functions/methods are listed in api.rst

Testing this is confusing me - I want to add an xr.Variable.concat to test_dataset.py::TestDataset:test_lazy_load_duckarray but the existing DuckArrayWrapper class does a funny trick where it defines __array_namespace__ but doesn't actually implement the xp namespace...

class does a funny trick where it defines array_namespace but doesn't actually implement the xp namespace...

It's faking to get past the checks in as_compatible_data.

It's faking to get past the checks in as_compatible_data.

Yep, but doing it this way (instead of e.g. defining __array_function__) is violating the contract the array API represents, so I'm finding that get_array_namespace gets called on it (and causes errors after not finding the namespace). I haven't gotten to the bottom of this yet though.


Fix navmesh baking

same as https://github.com/godotengine/godot/pull/57411 yet adapted for master

Thanks!


Add new page for configuring DataDog with WSO2 MI

Description:
$subject

This was added to MI 4.2.0 docs via https://github.com/wso2/docs-mi/pull/282. We need to test and port it to MI 4.3.0 docs

This page is available in the MI 4.2.0 doc space and can be accessed from this link.
Currently, only the VM deployment section is available. Need to document the steps for the Docker deployment too.

This was added to MI 4.2.0 docs via #282. We need to test and port it to MI 4.3.0 docs

The MI 4.2.0 docs are incomplete. Even though we have added the setup guide, we haven't published any Dashboards to view the analytics data. Hence for a new user, it will be a barrier to use this.


Fail when installing mssql-tools18_<IP_ADDRESS>-1_amd64.deb

Describe the issue
We are trying to install mssql-tools18 from different locations. Install in an docker build fails.
When did the issue occur?
Using Kubernetes Gitlab Runner.
If applicable, what package did you attempt to install, and from which repo?
mssql-tools18
deb [arch=amd64,armhf,arm64] https://packages.microsoft.com/debian/11/prod bullseye main
Steps to Reproduce

DockerFile containing
RUN curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
RUN curl https://packages.microsoft.com/config/debian/11/prod.list | tee /etc/apt/sources.list.d/msprod.list
RUN apt update
RUN ACCEPT_EULA=Y apt -y install mssql-tools18
RUN ACCEPT_EULA=Y apt -y install unixodbc-dev
RUN ACCEPT_EULA=Y apt -y install msodbcsql18
for
RUN ACCEPT_EULA=Y apt -y install mssql-tools18
we get something like

[ 9/13] RUN ACCEPT_EULA=Y apt -y install mssql-tools18:
31.19 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
31.19 Need to get 222 kB of archives.
31.19 After this operation, 0 B of additional disk space will be used.
31.19 Ign:1 https://packages.microsoft.com/debian/11/prod bullseye/main amd64 mssql-tools18 amd64 <IP_ADDRESS>-1
62.24 Ign:1 https://packages.microsoft.com/debian/11/prod bullseye/main amd64 mssql-tools18 amd64 <IP_ADDRESS>-1
94.31 Ign:1 https://packages.microsoft.com/debian/11/prod bullseye/main amd64 mssql-tools18 amd64 <IP_ADDRESS>-1
128.4 Err:1 https://packages.microsoft.com/debian/11/prod bullseye/main amd64 mssql-tools18 amd64 <IP_ADDRESS>-1
128.4   Could not wait for server fd - select (11: Resource temporarily unavailable) [IP: <IP_ADDRESS> 443]
128.4 E: Failed to fetch https://pmc-geofence.trafficmanager.net/debian/11/prod/pool/main/m/mssql-tools18/mssql-tools18_<IP_ADDRESS>-1_amd64.deb?geofence=true  Could not wait for server fd - select (11: Resource temporarily unavailable) [IP: <IP_ADDRESS> 443]
128.4 E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?

for
RUN wget https://pmc-geofence.trafficmanager.net/
we get timeouts like

0.040 --2024-04-03 13:43:18--  https://pmc-geofence.trafficmanager.net/
0.049 Resolving pmc-geofence.trafficmanager.net (pmc-geofence.trafficmanager.net)... <IP_ADDRESS>
0.096 Connecting to pmc-geofence.trafficmanager.net (pmc-geofence.trafficmanager.net)|<IP_ADDRESS>|:443... connected.

Actual Result
Fail like above
unixodbc-dev and msodbcsql18 are installed
Expected Result
Installation of Package ssql-tools18
When I use another system I get a different IP for pmc-geofence.trafficmanager.net and everything works.
Screenshots

Additional context

Is this issue intermittent or can you not connect to pmc-geofence.trafficmanager.net at all? Can you maybe paste the output of curl -v https://pmc-geofence.trafficmanager.net/?

@hannesrd note that mssql packages are delivered via geofence (which is required for legal/tax reasons). If you have network restrictions in-place, they may block your access to the geofence infrastructure. The curl -v output would likely clarify that.

#12 [ 4/21] RUN curl -v https://pmc-geofence.trafficmanager.net/
#12 0.073   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
#12 0.073                                  Dload  Upload   Total   Spent    Left  Speed
0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0*   Trying <IP_ADDRESS>:443...
0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0* Connected to pmc-geofence.trafficmanager.net (<IP_ADDRESS>) port 443 (#0)
#12 0.135 * ALPN: offers h2,http/1.1
#12 0.135 } [5 bytes data]
#12 0.135 * TLSv1.3 (OUT), TLS handshake, Client hello (1):
#12 0.135 } [512 bytes data]
#12 0.161 *  CAfile: /etc/ssl/certs/ca-certificates.crt
#12 0.161 *  CApath: /etc/ssl/certs
0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0
0     0    0     0    0     0      0      0 --:--:--  0:00:02 --:--:--     0
0     0    0     0    0     0      0      0 --:--:--  0:00:03 --:--:--     0
.....
0     0    0     0    0     0      0      0 --:--:--  0:02:00 --:--:--     0
0     0    0     0    0     0      0      0 --:--:--  0:02:01 --:--:--     0

Recv failure: Connection reset by peer
#12 122.1 * OpenSSL SSL_connect: Connection reset by peer in connection to pmc-geofence.trafficmanager.net:443
0     0    0     0    0     0      0      0 --:--:--  0:02:02 --:--:--     0
#12 122.1 * Closing connection 0
#12 122.1 curl: (35) Recv failure: Connection reset by peer
#12 ERROR: process "/bin/sh -c curl -v https://pmc-geofence.trafficmanager.net/" did not complete successfully: exit code: 35

I don't get why it is possible from other locations in our network.
We are using gitlab-runner in kubernetes.

@daviddavis @mbearup I forgot to tag you. Informations are pasted in last comment.

@hannesrd I'm at a bit of a loss here.

I'm able to reach this IP without issue.

$ curl -H "Host: pmc-geofence.trafficmanager.net" http://<IP_ADDRESS>/

<title>Index of /</title>

Index of /

alma/

HTTPS works too (have to use /etc/hosts trick to satisfy TLS)

$ ping pmc-geofence.trafficmanager.net
PING pmc-geofence.trafficmanager.net (<IP_ADDRESS>) 56(84) bytes of data.
64 bytes from pmc-geofence.trafficmanager.net (<IP_ADDRESS>): icmp_seq=1 ttl=101 time=152 ms
...
$ curl https://pmc-geofence.trafficmanager.net/

<title>Index of /</title>

Index of /

...

We have a WAF enabled, but it would emit known error codes (403 or 429) if it was blocking your traffic. To my knowledge, there's no scenario where the WAF would drop a connection in this manner.
Since this is a connection failure, it's unlikely to appear in our access or WAF logs. You could try requesting a unique URL (i.e. /foo), which would help us find your request in the logs, but if the connection isn't successfully established, I suspect nothing will be logged.
You could try hitting this endpoint via HTTP (i.e. curl http://pmc-geofence.trafficmanager.net/). It's possible the failure is centered around the TLS handshake, so using HTTP may reveal more information.
You could try targeting a different App Gateway (i.e. curl -v -H "Host: pmc-geofence.trafficmanager.net" http://<IP_ADDRESS>/). I suspect this will fail the same way, but could rule out any issues with a specific AppGateway.

@mbearup thanks for the hints!
I ran today
curl -v -H "Host: pmc-geofence.trafficmanager.net" http://<IP_ADDRESS>/test1-linux-package-repositories-issues-127
test1 from the Kubernetes-Worker-Node -> OK
curl -v -H "Host: pmc-geofence.trafficmanager.net" http://<IP_ADDRESS>/test2-linux-package-repositories-issues-127
test2 from the  Gitlab Build Container -> failed , it's Docker in Docker, I don't get why this URL failed.
Are there any Issues from other Cloud oder Docker-Users? Like:
https://developercommunity.visualstudio.com/t/Packages-for-mssql-tools-report-403/10613043?sort=newest
https://github.com/microsoft/linux-package-repositories/issues/119
https://github.com/microsoft/msphpsql/issues/1505

So I guess we seem to have a problem with this container-configuration.
curl to other websites like github works
http
curl http://pmc-geofence.trafficmanager.net/

[ 4/22] RUN curl http://pmc-geofence.trafficmanager.net/

0.073   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
0.073                                  Dload  Upload   Total   Spent    Left  Speed
0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0
0     0    0     0    0     0      0      0 --:--:--  0:00:02 --:--:--     0
0     0    0     0    0     0      0      0 --:--:--  0:00:03 --:--:--     0
...
0     0    0     0    0     0      0      0 --:--:--  0:02:11 --:--:--     0
0     0    0     0    0     0      0      0 --:--:--  0:02:12 --:--:--     0
0     0    0     0    0     0      0      0 --:--:--  0:02:13 --:--:--     0
0     0    0     0    0     0      0      0 --:--:--  0:02:14 --:--:--     0
0     0    0     0    0     0      0      0 --:--:--  0:02:15 --:--:--     0
135.2 curl: (56) Recv failure: Connection reset by peer
ERROR: process "/bin/sh -c curl http://pmc-geofence.trafficmanager.net/" did not complete successfully: exit code: 56

importing cache manifest from registry-gitlab.relaxdays.de/team-devops/gtiops/ci-cd-workshop/test-apt:c93305f8f2736caad936ea3b6ca5023b82c84b92:

other host
curl -v -H "Host: pmc-geofence.trafficmanager.net" http://<IP_ADDRESS>/

[ 4/22] RUN curl -v -H "Host: pmc-geofence.trafficmanager.net" http://<IP_ADDRESS>/
0.075   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
0.075                                  Dload  Upload   Total   Spent    Left  Speed
0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0*   Trying <IP_ADDRESS>:80...
0.107 * Connected to <IP_ADDRESS> (<IP_ADDRESS>) port 80 (#0)
0.107 > GET / HTTP/1.1
0.107 > Host: pmc-geofence.trafficmanager.net
0.107 > User-Agent: curl/7.88.1
0.107 > Accept: /
0.107 >
0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0
0     0    0     0    0     0      0      0 --:--:--  0:00:02 --:--:--     0
0     0    0     0    0     0      0      0 --:--:--  0:00:03 --:--:--     0
...
0     0    0     0    0     0      0      0 --:--:--  0:02:13 --:--:--     0
0     0    0     0    0     0      0      0 --:--:--  0:02:14 --:--:--     0

Recv failure: Connection reset by peer
0     0    0     0    0     0      0      0 --:--:--  0:02:15 --:--:--     0
135.3 * Closing connection 0
135.3 curl: (56) Recv failure: Connection reset by peer
ERROR: process "/bin/sh -c curl -v -H "Host: pmc-geofence.trafficmanager.net" http://<IP_ADDRESS>/" did not complete successfully: exit code: 56

importing cache manifest from registry-gitlab.relaxdays.de/team-devops/gtiops/ci-cd-workshop/test-apt:d560b6d5f697025c6936ecd4b7a4f4d6c3ce132f:

@mbearup @daviddavis  We made a tcp-dump on the hosting node and are curios about MTU-Warnings. Log attached
tcpdump.txt

@hannesrd regarding the other issues you linked above, all of those are HTTP 403 errors. As I mentioned earlier, that's a symptom of the WAF blocking requests. Since you're getting TCP connection failure, it's a different symptom.
Which is a relevant point ... for your test requests, surprisingly I see both in our logs. However, we did emit 403s for these urls (test1 and test2).  So perhaps this was a poor test case.
We could try again with a different test url (i.e. /ubuntu/test1). However, this does provide useful information: your client seems to have experienced a connection failure, but the App Gateway did receive and respond to the request. And both the test1 and test2 requests came from the same IP, so I think we can rule out other requestors.

Looking at other requests from the same IP, I see two...
One was at 2024-04-09T07:43:10Z and successful (200)
The other was at 2024-04-09T07:42:46Z and was aborted prematurely by the client (ERRORINFO_CLIENT_CLOSED_REQUEST)
Also attaching the output of my test/tcpdump. My VM is set for MTU 1500 (which is fairly standard, in Azure and elsewhere) and I received no MTU fragmentation messages.
tcpdump-1500.txt

@hannesrd I can only conclude that this is a local networking issue (perhaps related to docker-in-docker), Per the above, we support an MTU of 1500, and our service is receiving your requests. Something else seems to be interfering with the connection. Apologies that we can't provide more clarity here.

@mbearup thanks for the investigation on your side! This helped us very much. I see the issue is closed, but let me write down our results for who may find them:
MTU was the issue. The docker-in-docker container had 1500 while the outer container had 1450. I'm not sure why this was only a problem with this endpoint.
I found it out bei setting "RUN ifconfig" in my Dockerfile. You may also check for different  payloads like

RUN ping -M do -s 1401 -c 1 <IP_ADDRESS>

I tried several fixes by configuring the MTU in den gitlab-runner toml. Didn't change anything.
The solution was by setting it in the gitlab-ci.yaml.

build:
services:

name: docker:20.10.12-dind
command:

"--tls=false"
"--host=tcp://<IP_ADDRESS>:2375"
"--mtu=1450"

Source Bug: https://www.civo.com/learn/fixing-networking-for-docker
Source Solution: https://gitlab.com/gitlab-org/gitlab/-/issues/27716#note_628181430
So: Fixed for me. We will include this in our template.


tcp_proxy: logs consistently

moving the lone ENVOY_LOG in tcp proxy session to ENVOY_CONN_LOG
Risk Level: low
Testing: tests pass
Docs Changes: n/a
Release Notes: n/a

cc @rgs1 fixing at least one of the logs which confused me today :-)


when I try to unzip the UCF101 RBG file, a problem occured

After download the dataset and run 'cat ucf101_jpegs_256.zip* > ucf101_jpegs_256.zip', I try to unzip the file, use the command 'unzip ucf101_jpegs_256.zip', but a problem occured, 'jpegs_256/v_TrampolineJumping_g09_c05/frame000020.jpg  bad CRC 5860d5eb  (should be b9b7fa4a)', is the picture damaged?

Thanks for the tip that you have to merge files. That wasn't clear in the README. When I tried unzipping the files the command ran without any issues. I think you should try again @ljmiao and I hope this time it should run without any errors for you. Thank you!

I was just wondering how to unzip each UCF101 RGB file and the command really helps a lot. Now I can unzip them.Thanks a lot!

感谢您提供合并文件的提示。这在 README 中没有明确说明。当我尝试解压缩文件时，命令运行没有任何问题。我认为您应该再试一次，我希望这次它应该运行而不会对您造成任何错误。谢谢！

I cannot download the processed UCF-101 RGB frame, could you please provide it?


Schema

Although I appreciate your creativity with the pictures of your table, we want to set up our schema with the table markdown generator: https://www.tablesgenerator.com/markdown_tables
Once you do, Let's add the column for description where we specify the details for the given column like null constrains & indexing. Below each table we need to specify which columns are index in the same format as bluebird: https://github.com/appacademy/bluebird/wiki/schema
*Remember to use back ticks for table names and column names.

I agree. The image doesn't showcase my knowledge of Markdown. I have completely renewed the Schema page.
- svg images
+ Markdown tables

+ description column, having null constrains and indexing.
+ under table specification of references and index.

+ backticks on column names.


[BIOMAGE-2454] Batch differential expression within samples broken

Description

Details
URL to issue
https://biomage.atlassian.net/browse/BIOMAGE-2454
Link to staging deployment URL (or set N/A)
N/A
Links to any PRs or resources related to this PR

Integration test branch
master

Merge checklist
Your changes will be ready for merging after all of the steps below have been completed.

Code updates
Have best practices and ongoing refactors being observed in this PR

[ ] Migrated any selector / reducer used to the new format.

Manual/unit testing

[ ] Tested changes using InfraMock locally or no tests required for change, e.g. Kubernetes chart updates.
[ ] Validated that current unit tests for code work as expected and are sufficient for code coverage or no unit tests required for change, e.g. documentation update.
[ ] Unit tests written or no unit tests required for change, e.g. documentation update.

Integration testing
You must check the box below to run integration tests on the latest commit on your PR branch.
Integration tests have to pass before the PR can be merged. Without checking the box, your PR
will not pass the required status checks for merging.

[ ] Started end-to-end tests on the latest commit.

Documentation updates

[ ] Relevant Github READMEs updated or no GitHub README updates required.
[ ] Relevant Wiki pages created/updated or no Wiki updates required.

Optional

[ ] Staging environment is unstaged before merging.
[ ] Photo of a cute animal attached to this PR.

There were two issues:

I missed a case where the comparison option was passed to the worker in the pattern / it should be passed without the rootCluster
The third option in Batch differential expression, the requests should be passed, using "within" option. The "between" was crashing the worker so changing it passed.

Turns out all the requests are 'within', so the function that we have checkCanRunDiffExpr should just accept them without checking right? Therefore we dont need those alerts. When I had the alerts in the UI, all the comparisons returned by the worker were there and I didnt see any errored ones.


Cosmos does not parse BigQuery connections correctly

Hi there!
I might be mistaken, but it looks like there is an issue with cosmos version 0.7.4 around parsing of BiqQuery connection information.
Looking at the code here, the mapping of parameters from airflow connection to seems to expect dataset as a top level parameter in connection json.
airflow_param_mapping = {
        "project": "extra.project",
        "dataset": "dataset",
        "keyfile": "extra.key_path",
    }

However, based on the documentation of apache-airflow-providers-google here, dataset can not appear  as a top level parameter in connection json.
To verify this further, if I try to set dataset as a top level parameter in connection json, I get error as shown below:
$ airflow connections add 'my_cosmos_connection' --conn-json '{
	"conn_type": "google-cloud-platform",
	"dataset": "my_dataset",
	"extra": {
		"project": "my_gcp_project",
		"num_retries": "5",
		"key_path": "/path/to/key.json"
	}
}'
...
...
...
TypeError: __init__() got an unexpected keyword argument 'dataset'

Hence, if I am not missing something, I think the mapping of dataset parameter should be with extra.dataset and this should be modified at the line which I linked above. I could make this work, after making the suggested change locally.
If this sounds good, I can try and submit a PR.

@MonideepDe yes - good catch, that's right! Do you want to open a PR?

Thanks @jlaneve. I would submit a PR soon!


Fix/go back reverts to default location

Hey Team!
This is the fix for the bug in #39
For some strange reason, the current useDefaultCoords & useDefaultPlaceName wasn't working as intended, so I have simplified the logic a bit. Open to your thoughts!
I have also added DEFAULT_LOCATION to utils so can be updated, depending on what we want our initial location to be when the site gets loaded.

brilliant, will review tomorrow (as in today)

Thank you @tausani-ah-chong. I've given it a test and i think it's better than what we have now.
I actually have an idea of how we can improve even further.

Thank you @tausani-ah-chong. I've given it a test and i think it's better than what we have now.
I actually have an idea of how we can improve even further.

Awesome keen to know what the improvement is!

@tausani-ah-chong sorry today been hectic. here is what i think the improvement is.
What if we store lat, lng and placeName state in URL search params? And when we setCoords or setPlaceName, we push to history api directly, without extra state, and then we don't need to have all those unnecessary useEffects. Make URL search params The Single Source of Truth.
so if we need to change lat, lng or placeName ANYWHERE we do window.history.pushState
thoughts?

@noway Yeah thats sounds good! My only concern is just for the initial/default location, when a user goes to the site with no params in the URL. Or could this be stored as the initial state in useState?

I'd just do something a long the lines of 'location = param location if it is set, otherwise use the default location'.

@tausani-ah-chong we could treat undefined lat/lng as Auckland CBD. That would be pretty neat. So useSearchParams could return {lat: undefined, lng: undefined, placeName: undefined}, and then we could have "processSearchParams" function and it would replace undefineds with Auckland CBD coordinates.

so that way we can avoid useState and keep all "state" in URL. let me know if it makes sense! :-)

Nice! Yes this makes sense


The function eicu_data in utils/utils_data.py is undefined

I found that the eicu_data function in utils/utils_data.py is not defined. Could you please provide the code for this function? If you cannot upload it due to data privacy concerns, could you describe its functionality in detail so that I can reproduce its results? Thank you.

Thanks for your interests. Because of the clinic data privacy concerns, we were informed not to share any features or other information about the dataset, so we removed the specific definition about the function. For the use of this dataset, it doesn't have any special designs compared to other tabular data. Firstly, we split the data with the hospital_ids, and filled the missing values with the mean； then we randomly select several hospitals. (More implementation details could be found in the paper "Benchmarking machine learning models on eicu critical care dataset.")

Thanks for your interests. Because of the clinic data privacy concerns, we were informed not to share any features or other information about the dataset, so we removed the specific definition about the function. For the use of this dataset, it doesn't have any special designs compared to other tabular data. Firstly, we split the data with the hospital_ids, and filled the missing values with the mean； then we randomly select several hospitals. (More implementation details could be found in the paper "Benchmarking machine learning models on eicu critical care dataset.")

Could you pls hospitals id of those 10 selected? Are they chosen randomly or according to a certain logic?


kms: address asymmetric keys feedback from bdhess

https://github.com/GoogleCloudPlatform/golang-samples/pull/563#discussion_r211395914

sha384 for EC P-384

P224 was dropped from the API

/cc @bdhess

added a PR with the fixes (@bdhess)

Is this fixed?

Yes (#584)


change: Added a positive case without 1 unit coin available

All the current positive test cases include 1 unit coin in available coins and it's could be confusing.
This commit proposes a new test case that is positive but not includes 1 unit coin in the input.

Thanks a lot @weapp! :tada:


Add an Exception template and check DefaultFrom usage

Add an Action Exception template to the writer. The aim is to use the "await _writeEmail.Exception(ex).SendAsync();" method directly after having set the action for it in the builder.
Similarly, check the following:

Add DefaultFrom method missing in IEmailWriter interface. The aim is to use "await _writeEmail.To("test@localhost").SendAsync();" method directly without using the From method.

@staoran would you want to look at doing this? The implementation would be similar to the custom authentication function.

I don't quite understand, the Exception(ex) method accepts a delegate? Used to handle exceptions?

However this made me think of a more flexible implementation, but more complex to implement.
We can define an interface, and then inherit this interface to implement the sending logic. Then use it like this:
await _writeEmail.SendAsync();
public class MySend : IWriter
{
private readonly IServiceScope _serviceScope;
private readonly MailSenderOptions _mailOptions;
public WriteToMail(IServiceScopeFactory scopeFactory)
{
    _serviceScope = scopeFactory.CreateScope();
    _mailOptions = _serviceScope.ServiceProvider.GetRequiredService<IOptions<MailSenderOptions>>().Value;
}

public IEmailWriter Write(IEmailWriter emailWriter)
{
return emailWriter
.From(_mailOptions.DefaultFrom, _mailOptions.DefaultFromName)
.To(_mailOptions.DefaultTo)
.Subject(_mailOptions.DefaultSubject)
.BodyText(logMsg.Exception.ToString());
}
}

Maybe this is a bit over-engineered, but it is really flexible and easy to reuse.

Here's the existing way of setting and reusing default values:
var email = smtpSender.WriteEmail
<EMAIL_ADDRESS>    .Subject("Hello World")
    .TryAttach("CompanyLogo.png");
await email.Copy().To("person1@example.com").SendAsync();
await email.Copy().To("person2@example.com").SendAsync();

Now I'm starting to think I should add a SaveAsDefault() method instead that stores EmailWriterOptions. This would negate the need for emailWriter.DefaultFrom as usage would be:
var email = smtpSender.WriteEmail
<EMAIL_ADDRESS>    .Subject("Hello World")
    .TryAttach("CompanyLogo.png")
    .SaveAsDefault();
await email.To("person1@example.com").SendAsync();
await email.To("person2@example.com").SendAsync();

If you think SaveAsDefault() is a good idea do you want to try implementing it? You could copy the email template model from MailKitSimplified.Generic or MailKitSimplified.Email.

I did a preliminary test, and MailboxAddress cannot be a configuration item.
Cannot create instance of type 'MimeKit.MailboxAddress' because it has multiple public parameterized constructors.
Maybe we need to add a new class to inherit it.

This should help. I've added it and used it with SaveAsDefault, see what you think. Other properties like the email body could be added.
    public static class MimeMessageConverter
    {
        public static MimeMessage CopyAsTemplate(this MimeMessage original)
        {
            var copy = new MimeMessage();
            if (original.From.Count > 0)
                copy.From.AddRange(original.From);
            if (original.To.Count > 0)
                copy.To.AddRange(original.To);
            if (original.ReplyTo.Count > 0)
                copy.ReplyTo.AddRange(original.ReplyTo);
            if (original.Cc.Count > 0)
                copy.Cc.AddRange(original.Cc);
            if (original.Bcc.Count > 0)
                copy.Bcc.AddRange(original.Bcc);
            if (original.Sender != null)
                copy.Sender = original.Sender;
            copy.Subject = original.Subject;
            return copy;
        }
    }

I did a preliminary test, and MailboxAddress cannot be a configuration item.

I see what you mean now, the configuration builder needs an empty constructor in order to be viable. A while back I made MailKitSimplified.Generic with something like this in mind, but there's a few things I want to change about it now that some time has passed. I have an uncommitted branch where I'm cleaning it up but in the meantime the existing generic email template in MailKitSimplified.Generic should work for this.

The easiest way to achieve what you want would be to add a template file path option, then if it's not null use it like this: MimeKit.MimeMessage.Load(file.FullName);

Good morning.
Thanks for your effort, I'll try it out.

Project restricted 8.0 syntax.

Thanks for picking up on that, I've made DownloadAllAttachmentsAsync compatible with netstandard2.0 now, but still haven't tested it properly so let me know how it goes.

I had a look yesterday and fixed a couple things, but looks like I made a syntax error right before pushing the changes. This works now (once I fix the last last-minute build syntax error):
var template = smtpSender.WriteEmail
<EMAIL_ADDRESS>    .Subject("Hello World")
    .SaveTemplate();
await template.To("person1@example.com").SendAsync();
await template.To("person2@example.com").SendAsync();
await template.SaveTemplateAsync(emlFilePath);
var writer = await smtpSender.WithTemplateAsync(emlFilePath);
await writer.To("person3@example.com").SendAsync();

I've merged what's there so far as it should all be usable, it needs more comments and unit tests but it'll do for now. Open a new ticket if you've got any other ideas :)


Add PySAT support, add .solve(), make .models() lazy

Add PySAT support. This is an optional dependency. If installed it's used by default for satisfiability and solving, except for very small sentences. The overhead is low and it seems reliable.
It's not used by default for model enumeration, because PySAT's implementation is naive and ends up slower than the native solver in many cases.
Resolves #10.
Add a general configuration system. It uses a few more weird Python tricks than ideal, but I think it ended up pretty robust and pleasant to work with.
Implement .solve(). Resolves #15.
Make all implementations of model enumeration lazy. The one for DNNF ended up nicer than before, but the one for d-DNNF uses some more awful Python tricks that I'm not entirely happy with.
Remove the Builder class. It didn't actually solve the problem it was supposed to.
Various other tweaks and fixes.

When/right before releasing 0.3.0 the README should be updated to recommend pip install nnf[pysat], to pull in PySAT.
If we do it too soon then the instructions people find on Github don't work yet and if we do it after then the outdated instructions will end up on PyPI.

I think I'm about ready to pull the trigger on 0.3.0. Any last-minute changes you wanted to throw in?

No, looks good to me.

Hope it was done right, but we should be all set.


docs should clarify implementation direction

Is this React components that have hacked-in d3
-or-
Is this fully rendered React components with only d3 utility data functions (no d3 rendering)
This make a lot of difference when delaing with server side rendering since having pure react rendering makes everything simpler; no dom emulation nonsense involved.

@srcspider  Thanks for asking. Couldn't agree more with you that these 2 make a lot of differences and we are also trying our best to render our components purely with React.
If you look at our code, most of our components are rendered by React but we do have some problems to achieve the same thing for component like axes(xAxis and yAxis). However, we do realise this issue. if you look at our roadmap, we're going to implement pure React component for axes. At that time, d3 will be only used for its data functions(no d3 rendering).
We are happy to accept PR regarding to this issue.

Hey @yang-wei I've just about finished the React axes, so no need for PR there.  At that point, project will be purely React rendered.

Ahh @esbullington that is cool !

exciting... I can't wait to try it.

@yang-wei awesome!
One other nit pick. at the moment the package is depending on the entire d3, but if you're rendering in react then you may, depending on what you're rendering, potentially only really need d3 scales (sometimes d3 svg utilities). In fact depending on what you're trying to do you don't even need ALL the scale functions. The source for d3 has them nicely separated into files so technically it should be feasible to include exactly what's required... ie.
var d3 = {
	scale: {
		linear: require('d3/src/scale/linear')
	}
};

SimpleBarChart = React.createClass({
    // ...

Sadly as I found out while trying to  achieve that in my own test code, the way d3 source works is a bit annoying in that while at a glance it might look like it's using es6 or something (not that being forced to use a transpiler on it would be that great of a prospect) it's actually using a 3rd-party file concatenation library (https://www.npmjs.com/package/smash) to concat files together that happens to also use the import keyword... ugh!
It's not particularly hard to write scripts to convert the whole import logic to require logic, so that it would actually also work with webpack module dedup-ing (I assume concatting everything would mess with it), but it's more of a "how do you do this in a auto-maintainable way" problem. There seems to be some movement in that direction already https://github.com/mbostock/d3/issues/2220 with the main so hopefully the problem solves itself.

Thanks for your comments.  As you point out, this last issue is out of our control, although we'll happily work with whatever solution Mike comes up with for d3.  If they choose to stick with SMASH, I may create a build with only the parts we need.  Otherwise, if they adopt commonjs, I'll be sure to only require relevant modules.
Your original comment will be addressed with pure React axes in the next release (I opened #126 to track this specifically).   So I'm going ahead and closing this issue.


Revert "Merge pull request #58 from harryzhu626/main"

This PR unbreaks main by undoing an accidental change.
This reverts commit 753960e8e2189c10d8028f608ba10b707e16e310, reversing changes made to 9d14604a6645d1e6e472826fc697d1f91fd29c00.

Closed in favor of #61


update: fix wrong color assignment

I believe the color lime should be brighter than the color green
/* ... */

while (!WindowShouldClose()) {
    BeginDrawing();

    {
        ClearBackground(BLACK);

        DrawText("color_green", 40, 40, 80, GREEN);
        DrawText("color_lime", 40, 140, 80, LIME);
        DrawText("color_dark_green", 40, 240, 80, DARKGREEN);
    }

    EndDrawing();
}

/* ... */

Sorry, colors do not follow a Pantone rule, I selected them for my needs. I want GREEN to be brighter than LIME.
You can define your own colors if you need different ones.


test: a5-a13 lazy loaded route

Codecov Report

Merging #1326 (c325aef) into master (5c91a6d) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##            master     #1326   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files          219       219
  Lines         4122      4122
  Branches       878       878
=========================================
  Hits          4122      4122

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 5c91a6d...c325aef. Read the comment docs.

v12.5.1 has been released and contains a fix for the issue. Feel free to reopen the issue or to submit a new one if you meet any problems.


alter SessionStickiness strategy save cookie with cache

Pull Request Test Coverage Report for Build 1317

20 of 43 (46.51%)  changed or added relevant lines in 3 files are covered.
18 unchanged lines in 7 files lost coverage.
Overall coverage increased (+0.3%) to 63.635%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

core/handler/loadbalance_handler.go
0
1
0.0%

core/registry/cache.go
18
24
75.0%

core/rest_invoker.go
2
18
11.11%

Files with Coverage Reduction
New Missed Lines
%

core/registry/pilot/util.go
2
53.66%

core/loadbalancer/randam.go
2
64.29%

core/server/options.go
2
50.0%

core/config/key_generator.go
3
28.85%

core/handler/tracing_handler.go
3
30.59%

core/registry/registrator.go
3
63.06%

tracing/zipkin/collector.go
3
72.73%

Totals

Change from base Build 1315:
0.3%

Covered Lines:
5059

Relevant Lines:
7950

💛  - Coveralls


data set handler and changes to DataSet and DataSetDB

Please review it in conjunction with https://github.com/umr-dbs/wave/pull/98
https://trello.com/c/4xHXR84E

Pull Request Test Coverage Report for Build 560715301

93 of 111 (83.78%)  changed or added relevant lines in 6 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.04%) to 81.3%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

services/src/datasets/in_memory.rs
14
17
82.35%

services/src/datasets/storage.rs
4
7
57.14%

services/src/contexts/in_memory.rs
21
25
84.0%

services/src/datasets/listing.rs
4
12
33.33%

Totals

Change from base Build 558245131:
0.04%

Covered Lines:
13482

Relevant Lines:
16583

💛  - Coveralls

 Dataset-API bauen


Could I submit a PR that skips lag embedding for multivariate series

Hello, I've been using a modified version of your code to calculate fractal dimension, lyapunov exponents, etc based on a custom embedding method. Would this be something valuable to include in the main repo? If so, I can put together a PR.
The basic structure is pretty simple: if the passed time series appears to be multivariate, then skip creating a lagged embedding.
Thanks very much for this amazing library.

Hi, @williamgilpin . Thank you very much for your offer! :heart:  I would very much appreciate this pull request. I think this would also open up the algorithms to be used with multivariate data in general, not just with a custom embedding. I considered doing this myself for some time, but I currently have almost no time at all for developing nolds.
If you want to do this, I would be very glad if you could

base your PR on the dev branch, since there is quite a bit of work currently sitting there that is almost finished and I would like to avoid conflicts with these changes.
mention the option to pass multivariate data in the docstring of the algorithms (I think it would suffice to add a note to the main data parameter).
and add a small test case in https://github.com/CSchoel/nolds/blob/dev/nolds/test_measures.py that uses the new feature.

I will check your PR as fast as I can, but as already mentioned I currently have very little time for nolds, since I am only a few months away from finishing my PhD thesis. So I apologize in advance if it should take longer.

Great! I will start putting something together. I will make sure to base and periodically check the  dev branch to avoid any conflicts. Best of luck with finishing your PhD!!


Output buffer doesn't contain effects

Hi, everyone! I more a musician rathen than programmer, so please be gentle xD
What I'm trying to achieve is applying audio effects to a file and get the result as AudioBuffer and do stuff with it. (Render as wav or play it with Sampler). Until now I tried using Tone.Offline and did everything according to the example from docs, but unfortunately, all I get in the end is only a buffer (thus original file) with no effects. So, my question is it actually possible to apply effects to an audio file and get it as a buffer which contains them?
I know about MediaRecorder. but unfortunately it works only with streaming and I want to do this behind scenes with recorder.js and its worker. Maybe I don't understand something, please kindly point me to it :) I suppose AudioNode itself is the thing that contains all the audio effects and stuff, so the logical question would be - is it possible to convert an AudioNode to a buffer/wav?

Without seeing the code, it's hard for me to debug. My guess is that maybe the source is not connected through the effect, but might be connected directly toMaster which would bypass the effect entirely.
Try something like this: https://jsfiddle.net/yotammann/kf9401cs/


Terraform hooks for windows

Sorry for a newbie question.. Is there any way to make these run in Windows as all the hooks are shell scripts . ?.

Hi
You can use Docker, WSL/WSL2 or stuff that was used before Win10 become live.
If you VS Code guy, I highly recommend you start using WSL2

403 means that you did not set up access correctly. Check this doc, it's should help. Maybe you forgot to install/configure  AZ CLI etc. inside WSL.
When you say "internet not working" do you mean that ping google.com and ping <IP_ADDRESS> both do not work?
If works only the last command - you fail in DNS resolution, as I know, it's a common WSL issue. Here is the fix:
https://gist.github.com/coltenkrauter/608cfe02319ce60facd76373249b8ca6
In my personal case, it works fine :D
➜ cat /etc/wsl.conf
[automount]
enabled = true
options = "metadata,umask=011"

Think about WSL as about isolated environment, e.g. Virtual Machine, that can have access to files, etc. on the host machine, but has no idea about software and its settings in Windows.
So you need to set up all needed stuff inside WSL as on the Remote Linux server. You can simply connect to it via VS Code Remote WSL ext and Windows Terminal

403 means that you did not set up access correctly. Check this doc, it's should help. Maybe you forgot to install/configure AZ CLI etc. inside WSL.
When you say "internet not working" do you mean that ping google.com and ping <IP_ADDRESS> both do not work? If works only the last command - you fail in DNS resolution, as I know, it's a common WSL issue. Here is the fix: https://gist.github.com/coltenkrauter/608cfe02319ce60facd76373249b8ca6
In my personal case, it works fine :D
➜ cat /etc/wsl.conf
[automount]
enabled = true
options = "metadata,umask=011"

For WSL1, I have setup the access correctly. The remote backend for Terraform on Azure is only accessible via Azure VPN ( protected via  Firewall and accessed through Private endpoint ). In windows Storage account endpoint is resolved correctly and request goes from a private IP ( issued via Azure VPN ) and not from Public IP. But from WSL request goes via Public IP rather than private . Hence the issue of 403 . I added my public IP in storage Firewall and tf init started working
And for WSL2 issue . The thing is network architecture has been changed from WSL1 to 2 . In WSL1 network adapter used Bridged mode however in WSL2 it's NATt'd . Think of it like a Adapter on a VM which is local to it and has no internet access. And yes i tried the below steps which u listed already and many more but didn't work (including resetting the complete IP stack in windows, re-installed wsl etc )

Think about WSL as about isolated environment, e.g. Virtual Machine, that can have access to files, etc. on the host machine, but has no idea about software and its settings in Windows.
So you need to set up all needed stuff inside WSL as on the Remote Linux server. You can simply connect to it via VS Code Remote WSL ext and Windows Terminal

Yes, I reverted back to WSL1 . Got the terraform init working and now tflint is working as expected . Thank you so much. And yes m using the VS code extension as well :) .
I may end up opening a seperate issue with Azure Support as to why WSL is not able to resolve private endpoints when connected to Azure VPN.


withItems mangles strings with percent signs

In argo 2.6.3, when providing a string with a percent sign to withItems, it's mangled to add extra content that seems like it's in the style of Go format strings (this might be a red herring though).
Minimal reproduction, the single percent string procudes $!(NOVERB) while the double percent produces a single percent sign.
apiVersion: argoproj.io/v1alpha1
kind: Workflow
metadata:
  generateName: hello-world-
spec:
  entrypoint: test
  templates:
  - name: test
    steps:
      - - name: whalesay
          template: whalesay
          arguments:
            parameters:
              - name: words
                value: "{{item}}"
          withItems:
            - "this is a percent sign: %" # prints "this is a percent sign: %!(NOVERB)"
            - "this is two percent signs: %%" # prints "this is two percent signs: %"
  - name: whalesay
    inputs:
      parameters:
        - name: words
    container:
      image: docker/whalesay:latest
      command: [echo]
      args: ["{{inputs.parameters.words}}"]

Environment:

Kubernetes version :

serverVersion:
  buildDate: "2020-02-07T01:31:02Z"
  compiler: gc
  gitCommit: 502bfb383169b124d87848f89e17a04b9fc1f6f0
  gitTreeState: clean
  gitVersion: v1.14.9-eks-502bfb
  goVersion: go1.12.12
  major: "1"
  minor: 14+
  platform: linux/amd64

Message from the maintainers:
If you are impacted by this bug please add a 👍 reaction to this issue! We often sort issues this way to know what to prioritize.

Does this work in earlier versions?

It works in 2.4.2 and 2.4.3

@TRManderson I spent some time trying to look into this, but it seems like the issue is within the libraries that we use to do our YAML unmarsahlling. Best I can do right now is to suggest that you escape your percentage signs with another percentage sign. I.e. %% = %, %%%%= %%. You seem to have already been on the right track here.

Going to close this, but feel free to chime in if you think this isn't resolved properly


Demos broken on pixel 6

Demos are broken on Pixel 6 specifically. The material ball seems unaffected. v0.0.2 seemed to work so some feature after #117 must have broken it. These are the PR commits to test:

Matte 53bbd10
Texture Materials 32a4595
HDR CDF 91ad32d
Ray Jitter c8c8490
Ray Jitter 2 84bb906
Blur Generator 008ce71
Transmissive MIS 202175a
Transparent BG e80053f
Adjust alpha ray offset 6524a9b

Related tweet:
https://twitter.com/garrettkjohnson/status/1526364743862128641

From @setpixel:

4fc62182d4fe03c834515de388d0af7a6fb8ea24
thats the commit that breaks it on the pixel


Vulnerability roundup 85: zeromq-3.2.5: 1 advisory

search, files

[ ] CVE-2014-9721 (nixos-20.03, nixos-unstable)

Scanned versions: nixos-20.03: a84b797b28e; nixos-unstable: 22c98819ccd. May contain false positives.

According to this comment https://github.com/zeromq/zeromq4-x/commit/b6e3e0f601e2c1ec1f3aac880ed6a3fe63043e51#commitcomment-11520547, zeromq3 should not be affected. Nontheless, this is a very old version and there are only two packages depends on it:

rzmq (apparently supports 4.x but is broken since 2016)
jzmq (support 3.x and looks unmaintained)

jzmq is only needed by apache stom but the dependecy as since been dropped: see https://issues.apache.org/jira/browse/STORM-1?jql=text ~ "jzmq".
@edwtjo @vizanto can you update apache so we can get rid of jzmq?


Introduce meta tag.

I approved PR too soon: build is failing, -Werror:
/home/travis/build/kadena-io/pact/src/Pact/Compile.hs:147:3: warning: [-Wincomplete-patterns]
    Pattern match(es) are non-exhaustive
    In a case alternative: Patterns not matched: (_:_)

Whoops - that warning will be fixed on newer GHCs when we can use the {-# complete MetaBodyExp, [] #-} pragma, but for now fixed by changing to catch-all pattern.


Display Three Campaign Signup Cards

TASK
Show three campaigns on last slide of onboarding. Once the mockup is ready, I'll add it to this ticket.

@deadlybutter - mockups, still waiting on updated copy. https://cloud.githubusercontent.com/assets/1865372/18595537/2acfda54-7c13-11e6-9570-49a9a22567d4.png

Also @jessleenyc in the future can we link to the issue Luke was working in rather than the png itself?

@deadlybutter absolutely! do you want the png link also or just the link to the issue?
#7039

Just the issue is fine! :D

Note: Only remaining task here is styling. Markup is on the page!


Vacant 1.1.2

this pr doesn't edit the main data files

It doesn't? I see Vacant's data file having changes in it, but is it missing something? Do you mean the character.js? Vacant should already be in there from before.

export/dataFormatted.js

Ok hopefully that fixed it


Never enable USE_SECTRANSP on macOS 10.7

Hey,
Is it possible to introduce a way to never force USE_SECTRANSP to build curl on macOS 10.7 or anything before 10.8?
Right now it can't be linked agains such old system because curl uses CCDigestGetOutputSizeFromRef which was iintroduced at 10.8, and a usual way to build it (via configure script) detects that system is too old, and simple disabled this feature.
Thanks!

Seems somewhat reasonable, though I'm not sure the best way of doing this. Detecting based on the version of the host system might work, but that doesn't necessarily tell you the version of macOS you want to target (you might be building on a newer macOS build machine, but want to target macOS 10.4+ for example).
I'm not actually seeing CCDigestGetOutputSizeFromRef being used by the latest version of curl. Maybe you could share your error message and the version of curl you are using?
Also, if we didn't set USE_SECTRANSP, what would you expect to happen instead? Would we use OpenSSL?

@sagebind I have this errors:
:info:destroot             "_Curl_ssl_sectransp", referenced from:
:info:destroot                 _Curl_ssl in libcurl_sys-1cf6183c18262091.rlib(vtls.o)
:info:destroot                 _available_backends in libcurl_sys-1cf6183c18262091.rlib(vtls.o)
:info:destroot           ld: symbol(s) not found for architecture x86_64
:info:destroot           clang: error: linker command failed with exit code 1 (use -v to see invocation)

and as soon as I relaceUSE_SECTRANSP to USE_SECTRANSP_DISABLED here https://github.com/alexcrichton/curl-rust/blob/8de2e0595cb0744584b76536fe667e9c3156f8ee/curl-sys/build.rs#L292 it is linked against OpenSSL :)

Wired, the only way how can I reproduce this issue is building rust.


wacom tablet

Hi
I recently bought this book and now I want to buy a Wacom tablet (without a screen).
Is the following one compatible with Blender?
Or is a tablet without a screen not really usefull for Blender? I want to use it for grease pencile and for model sculpting.
Can I do this with this specific tablet?
https://www.wacom.com/en-us/products/pen-tablets/one-by-wacom

Hello, yes that tablet will be compatible.
Using a tablet with a built-in screen can be helpful, but personally I do all of my sculpting on a tablet that doesn't have a screen. All of the examples in this book were made on a similar Wacom tablet to the one you linked above.

Can you tell me what Wacom model you have exactly?

I have the "Wacom Intuos Pro medium", I also bought the "Wacom Texture Sheet medium standard" because the paper style texture that originally came with the tablet was so rough that it was grinding away the nibs on my stylus.
This made the total cost of the tablet a little over $400 USD. You're probably better off buying the "One By Wacom"  because it's only about $100 USD, and it looks like it's just as good.


Fix/205 combined score

@chris-lawton will require your FE eye

That's fine - let's get it merged and then I'll style separately.


Fixed reading the schema version from read-only realms

I added a test case demonstrating the issue, and a proposed fix for the issue.
Let me know if I should apply a different fix or make any changes

Unconditionally opening it in readOnly mode could result in incorrect results and/or crashes if the file is being modified by another process at the same time (or another thread, but that at least is solvable and would require doing very weird things anyway), so I think it needs to be a parameter. Maybe it should just take an RLMRealmConfiguration? Presumably if you're calling this method you're going to be creating a config object anyway, but half of the config properties aren't applicable.

That makes sense. I was worried about the consequences of opening a realm in readonly mode without the user specifying it. I'm not sure which would option would be best, but I like the idea of the schema version check taking an RLMConfiguration.

@conradev, is there an issue that this fixes? If we're going to take an entirely different approach to fixing this it'd be good to close out this pull request in favor of an issue tracking the problem we're trying to fix.

We ship a Demo realm inside of the Workflow bundle (and because it is in the bundle it can only be opened as read-only). I want to check the schema version of this realm before deciding to open it, in case it is too new.

Sorry, I meant a GitHub issue filed against the realm-cocoa repository.

Ah, yes, I see, there isn't to my knowledge

Closing due to inactivity.


Fixed .callout text- and link-colors

.callout text color now uses foreground() with previously unused $callout-font-color-alt and is now aware of its background-color.
.callout links now consider $callout-link-tint and are also aware of its background-color. $callout-link-tint is mentioned in Sass Reference and in _settings.scss but wasn't used at all!

closing and reopening to skip travis build failure (Failed at the<EMAIL_ADDRESS>install script 'node install.js'.)

I concur on using .callout-link rather than a.  Curious what @andycochran @brettsmason and @JeremyEnglert think about the question on lightness of links inside callouts.

It would be a pain to have to apply a class to every link inside callouts just to fix their color.
This reminds me of a previous issue: Headers used to have an explicit color. We switched to $header-color: inherit; so that nested components with different background/font colors wouldn't need to each declare specific header colors.
But this is more complicated with links. The nature of cascade works against us here. Since we're applying a specific color to links, a component which needs a different link color must have a rule with more specificity for its links. And this new rule will cascade to all components within. So, if a further-nested component needs a different link color, it must have a rule with even more specificity for its links. And links continue to require greater and greater specificity for each level of nesting.
I'd suggest that we support setting a link color for callouts and note in the docs that "because of the nature of cascade, callouts with nested components require app-specific styling to reset those components' link colors."

What about using explicit descendant selectors? For example, link colors could be defined for particular descendants in a callout.
@mixin callout-style($color: $callout-background) {
  …
  & > a:not(.button),
  & > p a:not(.button) {
    …
  }
  …
}

This way, nested component won't be effected. No classes necessary.

@andycochran

It would be a pain to have to apply a class to every link inside callouts just to fix their color.

This is a well-know problem in BEM, resolved by the Scope classes.
With the solution you propose, links that are direct childs are affected, but links inside a grid (or any other invisible component or utility) are not. Explicit descendant selectors > does not resolve the problem, it moves it.
Also, it keep a specificity of 0002 and does not resolve:

a:not(.button) does not ensure that button (or similar components) links are not changed. Buttons can be declared in an other class.

Good point, @ncoden. I'd like to withdraw my off-the-cuff descendant selectors suggestion.
I suppose we have to make a choice, decide which is a bigger problem:
Option A: Callout Link Classes
Pro: Nested components aren't effected by callout link colors.
Con: Callout links require a specific class to get the appropriate color.
Option B: No Link Classes
Pro: All links in callouts are automatically colored appropriately.
Con: Nested components require app-specific styles.
How common is it to include nested components in callouts? I've never needed to. But I very often have links in my callouts, and I'd hate to have to apply classes to those. If the primary function of callouts is an alert or block of text/links, I'd like to avoid over-engineering a solution that enables callouts to be used for [any unspecified purpose].

Option C:

Callout Scope Modifier (.callout.callout-links or more strictly .callout.callout--s-links a )
Callout Link Classes (.callout .callout-link or more stricly .callout .callout__link)

✓ Pro: Nested components can being not effected by callout link colors.
✓ Pro: All links in callouts can be automatically colored appropriately.

How to make the best Sass approach ever ? Take BEM, SMACSS, ITCSS and mix everything !

Can we update this PR to work with the new color-pick-contrast() function and @ncoden's suggestions?

Beyond using the BEM element to apply properties precisely, my suggestions introduce a new concept to keep the component simple : scoping modifiers.

With scoping modifier for a simple use case: .callout-links a (or .callout--s-links)

This is a callout.

  Link with a color for the callout context
  An other link

With callout link elements to apply properties precisely: .callout-link (or .callout__link)

This is a callout.

  Link with a color for the callout context

    Link with its own color

@kball I would have your opinion on this.

I think this concept of a scoping modifier is a potentially a really nice way to walk the balance between control and brevity/ease of use.  For folks doing simple things, they can use the scoping modifier and it will "just work" (TM).  For folks who want more control, are building complex nesting things, or big apps, they can apply the link element classes.  I dig it.
Can we look at some other cases where we might use this concept and see if there are any gotchas lurking?

@kball Almost everywhere I yelled against properties applied from the parent. We don't have a high specificity because it's cool to have unmaintainable stuff, but because it permits to have easily usable components (as long as you have a basic usage).
Everywhere there is properties applied from a parent (grid, menu, dropdown, top-bar...), we could switch to a set of modifiers + a scoping modifier.

Sorry, i somewhat dropped out of that thread/PR! But i believe you resolve the issue to everybodies satisfaction. 👍
Please don't forget the text color in Callouts!
The reason i stumbled upon this problem is, that we use Callouts in combination with .success, .warning and .alert for messages to the user. In addition we also set $callout-background-fade to 0% to stay within our defined color palette and not genereate various shades of a color.  But with a dark red for $foundation-palette(alert) the usual blackish $callout-font-color is very hard to read, if at all! And $callout-font-color-alt - which should resolve that problem - wasn't used at all. The same goes for the link color in Callouts.
To make things more complicated, we offer a SaaS application which is customized via _settings.scss for our customers. Therefore we rely on the fact, that the colors configured there result in a usable/readable CSS file without black text on black backgrounds for example.

Based on the above conversation, I think we should close this PR and replace it with the scoping-modifiers approach mentioned here: https://github.com/zurb/foundation-sites/pull/9098#issuecomment-264612857
@wolfgang-demeter do you want to take a pass on this? Or @ncoden do you?

Going to close this based on the above discussion, but would still love it if someone could take a pass on scoping modifiers