Security issue on JQuery with version < 3.5

Hi all,
I use Prometheus in a monitoring project for my Company. The security team opened a vulnerability issue because on 9090 port they see a JQuery version below 3.5. They reported the following security report:
https://www.tenable.com/plugins/nessus/136929
that suggests upgrading to 3.5
If you follow the link inside you arrive here:
https://blog.jquery.com/2020/04/10/jquery-3-5-0-released/
If I well understand the problem, it is related to the use of a special HTML tag. It's clear that to fix the security issue you need to upgrade to 3.5 or just report that you don't use that tag.
Now looking at the commit history there is this commit, where it seems the fix is present.
https://github.com/prometheus/prometheus/commit/c7d9516695c51cdb2185166e34c8190feca0fdf8
the commit was included 26 days ago. I tried the Prometheus 2.19.1 (built 6 days ago) and I verified it includes JQuery 3.3.1.
To verify this I did:

install Prometheus 2.19.1
start the server
Access to localhost:9090 with Chrome
Right-click->Inspect and click on Console tab
Enter this command: console.log(jQuery.fn.jquery);

it reports 3.3.1. My question is: why I do not have evidence that Prometheus 2.19.1 uses JQuery 3.5? If JQuery 3.5 is not included in 2.19.1, can you tell me whether the security exposure affects Prometheus or not? If so, when do you think it will be solved?
Thank you in advance for help.

jQuery is used both by the "legacy" UI and the React-based UI. https://github.com/prometheus/prometheus/commit/c7d9516695c51cdb2185166e34c8190feca0fdf8 only fixed the React part as far as I can tell.
I've submitted #7447 to upgrade the jQuery version in the legacy UI.

Ok, it seems that:
Even though our code doesn't seem to be
vulnerable to the issue, lets upgrade to the latest jQuery release so we
don't have to bother.

this confirm that legacy UI is not affect by the problem. Right?
When do you think PR will be included?

@juliusv why you closed this issue?
I only need a confirmation that this problem doesn't affect 2.19.1 so I can answer to my security team. Then I asked when it will be included because if it will happen in a few days I can wait and upgrade my project.

@juliusv I am sorry, I just noticed you merged the PR.
Thank you. Excuse me, I am not well inside the Prometheus projects. How long does it take to have a new build release?

The next release candidate is planned for July 15th (see RELEASE.md).

Hi, thank you for your reply.
The release schedule seems for a major release. What about a minor release (i.e. 2.19.1)?
I noticed you merged the PR and automatically started a build and test process. This time I noticed there is a failure, however, suppose it completes successful, does this mean a minor release will be created (i.e. 2.19.2) that I can install?
I think we can wait until July 15th because this problem seems a false positive (detected by Nessus a vulnerability scan tool), however, if there is a chance I can close it earlier with a minor release it would be great.

@simonpasquier @juliusv I noticed a new driver 2.19.2 has been released. I installed it but fix is not included. As said above I think something went wrong with acceptance tests for the PR. Please can you give a look? I would like to avoid that PR will not be included in the 15th July release due to integration problems.

#7447 will be included in v2.20.0 for sure. v2.19.2 was a patch release so it only included a critical fix that would prevent a potential crash in v2.19.0 and v2.19.1.

Ok thank you

@sasadangelo  v2.20.0 is out :)


Steps to reproduce:
Create a WorldEnvironment node, add a sky as the background, then add a PhysicalSkyMaterial.
Minimal reproduction project:

no-sky.zip

I can confirm this on a GeForce GTX 1080 (NVIDIA 440.100) on Fedora 31.

PhysicalSkyMaterial is a sky material based on the physical interactions of light in the atmosphere. Without a sun, there can be no atmospheric scattering. Therefore, if there is no DirectionalLight in the scene, the sky is black (if you had a night_sky texture set, you would see the stars).
When I initially added the PhysicalSkyMaterial, I was worried this would be confusing for users. Although it makes sense (no sun = no sunlight => only see stars), I can understand why it could be confusing for users.
Earlier I considered 2 solutions, but neither was satisfactory:
1. detect when there are no DirectionalLights in the scene and then add a default sun
This worked well, but it forces a specific behaviour that users may not want (e.g. users may just hide the directional light altogether at nightime as an optimization)
2. show an editor warning when the PhysicalSkyMaterial is added without a DirectionalLight
Similar to the above, this would be fine, but it is troublesome for users that legitimately want a PhysicalSkyMaterial without sunlight.
So, all that is to say, I am open to discussing usability improvements. Clearly this behaviour is confusing, but I don't see any solution that I am happy with.

if there is no DirectionalLight in the scene, the sky is black (if you had a night_sky texture set, you would see the stars)

Could be posible/doable to create a default "procedural night shader" to replace que absence of night_sky texture?
If this was posible, the absence of DirectionalLight would be more clear (and at least it would not feel like a bug).
And yes, I was one of those that thought that the blackness was a bug...

@soloparatolos it's a good idea. I initially had a procedural night sky built in. The issue with it is that procedural stars are very hard to get right for all screen resolutions. So either you end up with something that looks pretty and stylized or you do something that looks realistic-ish, but is slow. At the end of the day, I couldn't make something that was general purpose enough to include in the engine.

Alternatively make PhysicalSkyMaterial have a  "sun" property that points to the DirectionalLight3D it will use as the sun (or an array if multiple suns are supported in the future).  This would make it a bit more obvious that it needs a DirectionalLight3D to have a sun.  It also fixes the current problem that, if there is more than one DirectionalLight3D in the scene, PhysicalSkyMaterial only ever seems to use the one higher in the scene tree for the sun's position.

@name-here I like that. It also solves another problem I've been tossing around about how to properly support a moon.
I have no idea how we could make it work though. The light is read directly from the shader. The material has no access to it.

This will be solved by https://github.com/godotengine/godot-proposals/issues/1599


Mesh skeleton template does not include bind pose informations

Currently, the skeleton template included by a skeletal-animated mesh contains joint name, joint inverse bind matrix and joint parent.
It should include bind-pose rotation, scale and translation in order that the mesh and it's AABB are drawable and usable without any animation.

Didn't this get fixed since 2012 ???


Support for more format types (automatic sub-language constraint sections)

It would be useful if ollama supported automatic, text based, plugin driven grammar sections.
Every time triple quote section is used in text it enters that language mode constraints, for example:

"```json" enters json bnf
"```json:Foo" enters json bnf + json schema for Foo object
"```python" enters python bnf
"```quote:documentRef" enters trie based constraints for quotes
"```whatever:whatever?" enters whatever
final "\n```" pops the mode

Available grammars could be:

server/model defined – avoiding network overhead
client defined – flexible under client side control (probably much better)

The api for plugin/handler could be:

character based – given text from beginning of opening "```foo" input it returns allowed characters, or
native model token based – given same input returns list of allowed tokens, or
generic suffix text – given same input returns list of allowed, arbitrarily sized completions (so plugin can adopt, ie. for wide fanout it can return list of short strings, ie. single characters, for less fanout it can produce longer output with possible single output optimization where llm doesn't need to be consulted <<if there is single completion allowed, no need to run it though the model at all>>), or
optimized trie output – given same input returns 3. in compressed, trie format.

Plugin can internally use whatever strategy it wants to conform to autocompletion interface (BNF, trie based index for document quotes or something else).
Heading can be uri based, ie. "```trie://mydb/docs?id=123" so plugins can register themselves as handlers for specific modes.

@jmorganca this proposal is not related to supporting more format options beyond current json.
It's about automatically recognizing triple quote sections within text itself.

Ah sorry for misunderstanding!


Refactor topology guessing

Unifies topology guessing code under Topology::Perception module, and renames some methods to be more specific about what they do.

There were some changes to Templates::Detector API needed to refactor Perception.guess_residues, which required creating intermediate arrays along with other issues. Noteworthy changes include:

Topology::MatchData was introduced to encapsulate information about atoms matched to a residue template
Templates::Detector now works on a single atom collection, and therefore the same instance can no longer be used to search various group of atoms
Templates::Detector can now track unmatched atoms


Substitute positive and negative description with just description

Codecov Report

Merging #260 (b3487cf) into main (3dab425) will decrease coverage by 0.14%.
The diff coverage is 92.00%.

@@             Coverage Diff              @@
##               main     #260      +/-   ##
============================================
- Coverage     90.71%   90.57%   -0.15%
+ Complexity      355      347       -8
============================================
  Files            57       56       -1
  Lines           937      923      -14
============================================
- Hits            850      836      -14
  Misses           87       87

Impacted Files
Coverage Δ

src/Expression/ForClasses/DocBlockContains.php
0.00% <0.00%> (ø)

src/Expression/ForClasses/DocBlockNotContains.php
0.00% <0.00%> (ø)

src/Expression/Description.php
100.00% <100.00%> (ø)

...ession/ForClasses/DependsOnlyOnTheseNamespaces.php
100.00% <100.00%> (ø)

src/Expression/ForClasses/Extend.php
91.66% <100.00%> (ø)

src/Expression/ForClasses/HaveNameMatching.php
100.00% <100.00%> (ø)

src/Expression/ForClasses/Implement.php
100.00% <100.00%> (ø)

src/Expression/ForClasses/IsAbstract.php
100.00% <100.00%> (ø)

src/Expression/ForClasses/IsFinal.php
100.00% <100.00%> (ø)

src/Expression/ForClasses/IsNotAbstract.php
100.00% <100.00%> (ø)

... and 8 more

Continue to review full report at Codecov.

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


feat(select): supporting groups of options

For feature parity with the native select and the one Material 1, md-select should support being able to group options. This is an issue for tracking purposes.
CC @kara

Can it work with the generic MdOption so we can use it in auto complete and custom controls?


maxFiles options doesn't work

Support plan

Which support plan is this issue covered by? (Community, Sponsor, Enterprise): Community
Currently blocking your project/work? (yes/no): yes
Affecting a production system? (yes/no): no

Context

Node.js version: v16.17.0
Release Line of Formidable (Legacy, Current, Next): Current
Formidable exact version: ^2.0.1
Environment (node, browser, native, OS): node
Used with (popular names of modules): express

What are you trying to achieve or the steps to reproduce?
I try to limit the maxFiles option to 1, but when I upload 3 files, the 3 get uploaded in the corresponding folder.

const form = formidable({
        uploadDir: `${__dirname}/uploads`,
        maxFiles: 1
});

form.parse(req, (err, fields, files) => {
        console.log('ERR', err)
        console.log('FIELDS', fields)
        console.log('FILES', files)
});

What was the result you got?
3 files uploaded in folder
What result did you expect?
1 file uploaded in folder

Temporary fix :
let countFileUploaded = 0;

const form = formidable({
        uploadDir: `${__dirname}/uploads`,
        keepExtensions: true,
        // maxFiles: 1,
        filter: () => {
            if (countFileUploaded === 1) return false;

            countFileUploaded += 1;

            return true;
        }
});

Try again with version 3

@bottom-up-ai ha, that looks very weird, definitely.
As about CJS support... I don't want to, but unfortunately seems like we should and we will...

If the number of files uploaded is greater than the max, the whole form is going to error. By the time that happens there maybe a lower number of files written to disk. The files that are ongoing are cancelled.
That is why
Scenario 2 :
const form = formidable({
uploadDir: ./uploads,
maxFiles: 2
});
I try to upload 4 files, only 1 gets uploaded : Failure.
When formidable received the 3rd file the second one still being written to disk is cancelled.
As for scenario 5 I was not able to reproduce it. Please provide a repro case.

To make formidable not error use the filter option instead. If it does not error it will not cancel ongoing write operations, which means you will have exactly the maximum files uploaded


HMR broken with vue-cli project?

I'm using v1.0.2 with a setup described on my blog. When the app starts I get this in the console:
[Vue warn]: Cannot find element: #app

Then after modifying one of the scenarios I get this:
app.js:802 Uncaught RangeError: Maximum call stack size exceeded
[HMR] The following modules couldn't be hot updated: (Full reload needed)
...
VM729:89 [HMR]  - ./src/play/scenarios/Icon.js

Everything works except HMR. Any ideas?

hmr is only working with single file component now, I kinda need some help on make hmr work with js files. check out https://github.com/vuejs/vue-requests/issues/18

Oh I see - the components will hot reload, but the scenario files do not. I'd recommend putting that in a "known issues" section of one of the readme files so others don't get stuck on this.
I'm not sure about that #app error. It's different than the one I had before, but it doesn't seem to be causing any harm so I'm choosing to ignore it. :see_no_evil:

I just add live reload for files that can't hot reload.
btw, can you share the repo which caused the Cannot find element: #app error?

Nice work on the reload change. 1.0.3 is much more user friendly.
Here is a reproduction of the error. As the readme points out, it's basically a stock vue-cli project with vue-play-cli and a simple scenario.

I guess I've found out the reason, you should update the html-webpack-plugin options in your webpack config to:
new HtmlWebpackPlugin({
   filename: 'index.html',
   chunks: ['app']
}),
new HtmlWebpackPlugin({
  filename: 'preview.html',
  chunks: ['preview']
})

The main idea is to use index.html to load app chunk, and use preview.html to load preview chunk. Now you're using index.html to load both chunks, so app renders in #app and that element is gone, then the preview unexpectedly renders in index.html and cannot find that element.


[Q] Model registry | How to list all model versions?

Morning team, I am trying to get all the versions of a registered model, currently I am using such a loop:
for index in range(0, N):
  wandb.use_artifact(f"[[entity/]project/]registeredModelName:v{index}")

Is there a way I can get a list of all the available versions through the API?
Thanks in advance!

Hi @VirginieBfd,
You can use the following snippet to get all the artifact versions for a given Artifact. Just define the variables PROJECT, ENTITY, ARTIFACT_NAME and ARTIFACT_TYPE.
import wandb
api = wandb.Api()

artifact_vers = api.artifact_versions(ARTIFACT_TYPE, f'{ENTITY}/{PROJECT}/{ARTIFACT_NAME}')

for version in artifact_vers:
    print(version.name)

Thanks,
Ramit

Hi @VirginieBfd,
We wanted to follow up with you regarding your support request as we have not heard back from you. Please let us know if we can be of further assistance or if your issue has been resolved.

Indeed, I managed to get the models as artefacts, although, I could not manage to get them in the "Model Registry" context.
Is that something that can be achieved with a similar command?

Hey @VirginieBfd!
The underlying mechanism for Model Registry is artifacts, and currently the Models in the registry can be accessed as Artifacts. Is there some part of the model which you are not able to download through the API currently which you are looking to access? Just making sure I understand your use case currently.
Thanks,
Ramit

Hi @VirginieBfd,
We wanted to follow up with you regarding your support request as we have not heard back from you. Please let us know if we can be of further assistance or if your issue has been resolved.

Hi @VirginieBfd, since we have not heard back from you we are going to close this request. If you would like to re-open the conversation, please let us know!

No problem, I haven't had the time to go back to it. Thanks @ramit-wandb

I can confirm this works for standalone Projects but doesn't work for the model-registry. It doesn't understand the model_type to be valid.
Within the original project where this model has been linked from, the command does work (with the same model type).

Trace:
ValueError                                Traceback (most recent call last)
/databricks/python/lib/python3.8/site-packages/wandb/apis/normalize.py in wrapper(*args, **kwargs)
     24         try:
---> 25             return func(*args, **kwargs)
     26         except requests.HTTPError as err:

/databricks/python/lib/python3.8/site-packages/wandb/apis/public.py in artifact_versions(self, type_name, name, per_page)
    892         artifact_type = ArtifactType(self.client, entity, project, type_name)
--> 893         return artifact_type.collection(collection_name).versions(per_page=per_page)
    894

/databricks/python/lib/python3.8/site-packages/wandb/apis/public.py in collection(self, name)
   3718     def collection(self, name):
-> 3719         return ArtifactCollection(
   3720             self.client, self.entity, self.project, name, self.type

/databricks/python/lib/python3.8/site-packages/wandb/apis/public.py in __init__(self, client, entity, project, name, type, attrs)
   3735         if self._attrs is None:
-> 3736             self.load()
   3737

/databricks/python/lib/python3.8/site-packages/wandb/apis/public.py in load(self)
   3790         ):
-> 3791             raise ValueError("Could not find artifact type %s" % self.type)
   3792         self._attrs = response["project"]["artifactType"]["artifactSequence"]

ValueError: Could not find artifact type model

During handling of the above exception, another exception occurred:

CommError                                 Traceback (most recent call last)
<ipython-input-115-d4f262d7ee43> in <module>
      4 artifact_type = "model"
      5
----> 6 artifact_vers = api.artifact_versions(artifact_type, 'util-co/model-registry/relationship-classification')
      7
      8 for version in artifact_vers:

/databricks/python/lib/python3.8/site-packages/wandb/apis/normalize.py in wrapper(*args, **kwargs)
     59                 raise
     60             else:
---> 61                 raise CommError(message, err).with_traceback(sys.exc_info()[2])
     62
     63     return wrapper

/databricks/python/lib/python3.8/site-packages/wandb/apis/normalize.py in wrapper(*args, **kwargs)
     23         message = "Whoa, you found a bug."
     24         try:
---> 25             return func(*args, **kwargs)
     26         except requests.HTTPError as err:
     27             raise CommError(err.response, err)

/databricks/python/lib/python3.8/site-packages/wandb/apis/public.py in artifact_versions(self, type_name, name, per_page)
    891         entity, project, collection_name = self._parse_artifact_path(name)
    892         artifact_type = ArtifactType(self.client, entity, project, type_name)
--> 893         return artifact_type.collection(collection_name).versions(per_page=per_page)
    894
    895     @normalize_exceptions

/databricks/python/lib/python3.8/site-packages/wandb/apis/public.py in collection(self, name)
   3717
   3718     def collection(self, name):
-> 3719         return ArtifactCollection(
   3720             self.client, self.entity, self.project, name, self.type
   3721         )

/databricks/python/lib/python3.8/site-packages/wandb/apis/public.py in __init__(self, client, entity, project, name, type, attrs)
   3734         self._attrs = attrs
   3735         if self._attrs is None:
-> 3736             self.load()
   3737
   3738     @property

/databricks/python/lib/python3.8/site-packages/wandb/apis/public.py in load(self)
   3789             or response["project"]["artifactType"].get("artifactSequence") is None
   3790         ):
-> 3791             raise ValueError("Could not find artifact type %s" % self.type)
   3792         self._attrs = response["project"]["artifactType"]["artifactSequence"]
   3793         return self._attrs

CommError: Could not find artifact type model


Fix for showing Job title and LinkedIn URL in Team page

Small fix for ensuring the job title and linkedin url show up from the markdown files.

Thanks mate! @viraat


[Bug] Missing og:image on non episode pages

Expected behavior
Theme should allow config of a default og:image to be present on non-episode pages. e.g. the home page. So that a particular configured image is pulled into a facebook posts the link is shared in facebook.
Actual behavior
When a facebook user shares the homepage link in a facebook post, it might pull an arbitrary image into the posting.
Reproduction Steps
Post the website homepage in facebook and notice the image pulled. Also view source on the home page and notice missing og:image tag.

Connected to #172


importing should ignore hidden files/dirs

It's common to have hidden files (e.g. .DS_Store) in a directory that is being imported. The importers should ignore these files (currently they error).

Hi, I'm a heavy Qiime user and want to contribute to qiime2.
Can you be more specific on this issue?
Is this a general python problem?

Hey @vitmy0000, sorry for the confusion. This issue isn't about the python import statement at all. It is actually about "importing" data (sequences files, biom tables, etc...) into an QIIME 2 Artifact (all of this is very new vocabulary for QIIME, check out our wiki for more).
The dotfiles are important to consider here because if you happen to open a folder in OS X Finder it will add a .DS_Store to the directory, which will confuse our framework machinery (as it sees a file it thinks shouldn't exist, therefore it isn't in the format it expects).
As far as getting involved, I would recommend joining our slack team. Jumping into this particular issue is probably a little too deep to start out with, and we intend to heavily modify some of the machinery soon.


Update DatePickerAndroidExample.js

updated this.state to reflect the different date type options in the DatePickerAndroid components.

Can you sign the CLA?

Ok this looks reasonable, even though its not strictly necessary I think it makes the example a bit easier to read.


Steve cannot code patch 1

It didn't let me add you as reviewer, were you able to close it properly? When I was trying to do a pull request like in the instructions I didn't notice that it switched hubs or whatever they're called.

From: kgerot @.>
Sent: Friday, April 12, 2024 5:59 PM
To: kgerot/GithubActions @.>
Cc: SteveCannotCode @.>; Author @.>
Subject: Re: [kgerot/GithubActions] Steve cannot code patch 1 (PR #117)
Closed #117https://github.com/kgerot/GithubActions/pull/117.
—
Reply to this email directly, view it on GitHubhttps://github.com/kgerot/GithubActions/pull/117#event-12455394929, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AQX2HCI74H6VHDAOKPXRIWLY5B7O7AVCNFSM6AAAAABGE74B3OVHI2DSMVQWIX3LMV45UABCJFZXG5LFIV3GK3TUJZXXI2LGNFRWC5DJN5XDWMJSGQ2TKMZZGQ4TEOI.
You are receiving this because you authored the thread.Message ID: @.***>


Could not found the ssl certification verification flag to skip the SSL verification

Could not found the ssl certification verification flag to skip the  disable SSL verification.
By default the verify flag set to True.
From the module rtpy, there no flag/ config parameter to set the verify = False to skip the ssl verification.
Would be good to add the parameter to self._user_settings  to set the verify Flag for convenience ad pass it to the request method.
Getting error:
Max retries exceeded with url: /artifactory/api/security/users (Caused by SSLError(SSLError("bad handshake: Error([('SSL routines', 'tls_process_server_certificate', 'certificate verify failed')])")))

Hi,
It is possible to supply your own requests.Session object as described in the rtpy documentation : https://rtpy.readthedocs.io/en/latest/user/getting_started.html#optional-keys
You can use a default request.Session object and set the session.verify attribute to False.
session = requests.Session()
session.verify = False
settings['session'] = session
af = rtpy.Rtpy(settings)

Make sure that the REQUESTS_CA_BUNDLE environement variable is not set as it will have precedence over the session.verify attribute in your code.

Thanks a lot.
I have already found this solution on a mail mentioned document. I forgot
to update it on my request.
Anyhow thanks a lot for your response.
Thanks,
Anki.
On Mon, Nov 9, 2020 at 8:29 PM Guillaume Renault<EMAIL_ADDRESS>wrote:

Hi,
It is possible to supply your own requests.Session object
https://requests.readthedocs.io/en/master/user/advanced/#session-objects
as described in the rtpy documentation :
https://rtpy.readthedocs.io/en/latest/user/getting_started.html#optional-keys
You can use a default request.Session object and set the session.verify
attribute to False.
session = requests.Session()session.verify = Falsesettings['session'] = sessionaf = rtpy.Rtpy(settings)
Make sure that the REQUESTS_CA_BUNDLE environement variable is not set as
it will have precedence over the session.verify attribute in your code.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Orange-OpenSource/rtpy/issues/3#issuecomment-724066743,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AB27MLACNJKYAVTMCHLO7FTSO77WHANCNFSM4TMM66IA
.

--
Regrds..
..ankireddy.v


Check the return type of lambda in func::make (Fixes #164)

This is changing the issue from a runtime crash to a compile time failure, correct?

Correct.

It would be nice if the specific return type didn't matter. But I'm not even sure it's possible to get the conversion to happen, and this is clearly better than the current behavior.


We need to capture some real emails so we can test our socket implementation

?

To test the protocol over a tcp socket, we need to send real data. So we should capture some emails send to us, so we can use them as tests.


Error Unexpected end of data when parsing a JWT

Bug severity
5
Describe the bug
Not able to parse a simple JWT.
To Reproduce
Steps to reproduce the behaviour:

Try to Handle a Message that is a self-signed JWT:

    const message: IMessage = await agent.handleMessage({
      raw: verifiableCredential.proof.jwt,
      save: false,
    });

eyJhbGciOiJFUzI1NksiLCJ0eXAiOiJKV1QifQ.eyJ2YyI6eyJjcmVkZW50aWFsU3ViamVjdCI6eyJpZGVudGl0eUFsaWFzIjoibG9jYWxob3N0OmJjZjcxMjA0LWQzMDEtNGU3OC1iNWQ3LTViNmMyMWFjNmUwMiJ9LCJAY29udGV4dCI6WyJodHRwczovL3d3dy53My5vcmcvMjAxOC9jcmVkZW50aWFscy92MSJdLCJ0eXBlIjpbIlZlcmlmaWFibGVDcmVkZW50aWFsIl19LCJuYmYiOjE2MjEzNDE3OTgsImlzcyI6ImRpZDp3ZWI6bG9jYWxob3N0OmJjZjcxMjA0LWQzMDEtNGU3OC1iNWQ3LTViNmMyMWFjNmUwMiJ9.3045022100ba25a2e0661ea63a659e19e54b36cd32f307e65fe7a44beaddfc35ea07a602670220325075c71d34d52fbc1f4abc53c655cae3748e2300b3bb990db323cfb18d1aee
Observed behaviour
Getting an exception: 'Unsupported message type'
However, when debegging the following error is the actual one:
'Unexpected end of data'
stack:'SyntaxError: Unexpected end of data
    at decode (/home/muhammad/Repositories/interop-microservice/node_modules/multibase/src/rfc4648.js:52:11)
    at Object.decode (/home/muhammad/Repositories/interop-microservice/node_modules/multibase/src/rfc4648.js:118:14)
    at Base.decode (/home/muhammad/Repositories/interop-microservice/node_modules/multibase/src/base.js:46:23)
    at Object.u8a [as fromString] (/home/muhammad/Repositories/interop-microservice/node_modules/uint8arrays/from-string.js:46…ad/Repositories/interop-microservice/node_modules/did-jwt/src/VerifierAlgorithm.ts:11:30)
    at VerifierAlgorithm (/home/muhammad/Repositories/interop-microservice/node_modules/did-jwt/src/VerifierAlgorithm.ts:54:34)
    at verifyJWSDecoded (/home/muhammad/Repositories/interop-microservice/node_modules/did-jwt/src/JWT.ts:239:38)
    at /home/muhammad/Repositories/interop-microservice/node_modules/did-jwt/src/JWT.ts:304:44
    at processTicksAndRejections (internal/process/task_queues.js:93:5)
```

**Expected behaviour**
To be able to parse the JWT and save the message in the local DB.

**Additional context**
Add any other context about the problem here.

**Versions (please complete the following information):**
 - Veramo: 1.2.0
 - Node Version: 12.13.0

I think the issue is because the signature format I provided is wrong. So, I updated the code at our custom KeyManagementSystem class to have the following signJWT:
async signJWT({ key, data }: { key: IKey; data: string }): Promise<string> {
    let signatureString;
    try {
      l.debug('KeyManagementSystem -> signJWT(...)');

      const response = await axios.post(
        NETID_KMS_ENDPOINT + NETID_KMS_SIGN_PATH,
        {
          encPrivKey: key.privateKeyHex,
          value: data,
        }
      );

      signatureString = response.data.signature;
      l.debug(
        signatureString,
        'KeyManagementSystem -> signJWT: signatureString'
      );

      const signature = new Signature(signatureString, 'hex');
      const r = leftpad(signature.r.toString('hex'), 64);
      const s = leftpad(signature.s.toString('hex'), 64);

      return toJose(
        {
          r,
          s,
          recoveryParam: 1, // What is the correct value here? Not passing a value will cause the exception 'Signer did not return a recoveryParam'
        }
        // recoverable // Is it the best to not pass this parameter?
      );
    } catch (error) {
      l.error(signatureString);
      l.error(error);
      throw error;
    }
  }

The JWT generated is  eyJhbGciOiJFUzI1NksiLCJ0eXAiOiJKV1QifQ.eyJ2YyI6eyJjcmVkZW50aWFsU3ViamVjdCI6eyJpZGVudGl0eUFsaWFzIjoibG9jYWxob3N0OjBlZTIzMWY0LTZhM2MtNDAxZC04NDg3LTZkNTFiMGU3ZTVmMSJ9LCJAY29udGV4dCI6WyJodHRwczovL3d3dy53My5vcmcvMjAxOC9jcmVkZW50aWFscy92MSJdLCJ0eXBlIjpbIlZlcmlmaWFibGVDcmVkZW50aWFsIl19LCJuYmYiOjE2MjE0MDMzMjcsImlzcyI6ImRpZDp3ZWI6bG9jYWxob3N0OjBlZTIzMWY0LTZhM2MtNDAxZC04NDg3LTZkNTFiMGU3ZTVmMSJ9.MkDSFVXXAata2FH4Kq6Mm3EZRZ_lrqAHRpZiKhsJ5KeZUVaze-ERfSiz0sQA832t36xnG5Q88HMJoOox-svNdQ
So, now, the error is:
Error: Unknown point format
  at ShortCurve.decodePoint (/home/muhammad/Repositories/interop-microservice/node_modules/elliptic/lib/elliptic/curve/base.js:291:9)
    at KeyPair._importPublic (/home/muhammad/Repositories/interop-microservice/node_modules/elliptic/lib/elliptic/ec/key.js:98:28)
    at new KeyPair (/home/muhammad/Repositories/interop-microservice/node_modules/elliptic/lib/elliptic/ec/key.js:16:10)
    at Function.fromPublic (/home/muhammad/Repositories/interop-microservice/node_modules/elliptic/lib/elliptic/ec/key.js:24:10)
    at EC.keyFromPublic (/home/muhammad/Repositories/interop-microservice/node_modules/elliptic/lib/elliptic/ec/index.js:52:18)
    at find (/home/muhammad/Repositories/interop-microservice/node_modules/did-jwt/src/VerifierAlgorithm.ts:65:24)
    at Array.find (<anonymous>)
    at VerifierAlgorithm (/home/muhammad/Repositories/interop-microservice/node_modules/did-jwt/src/VerifierAlgorithm.ts:62:51)
    at verifyJWSDecoded (/home/muhammad/Repositories/interop-microservice/node_modules/did-jwt/src/JWT.ts:239:38)
    at /home/muhammad/Repositories/interop-microservice/node_modules/did-jwt/src/JWT.ts:304:44
    at processTicksAndRejections (internal/process/task_queues.js:93:5)

What do you suggest?
Many thanks,

can you post an example of response.data.signature ?
From a distance, I would assume that the signature is a hex string representing 64 bytes of data.
If that is the case, you can try to directly return the base64url encoding of those bytes.
Something like:
return bytesToBase64url(hexToBytes(signatureString))

I don't know how your KeyManagementSystem backend encodes signatures so it is very hard to debug this remotely.
If you intend to use ES256K algorithm for JWT signing, then you can call toJose({r,s}, false)
You only need a recovery param if you are using ES256K-R
Which method call throws Signer did not return a recoveryParam for you?

Thank you @mirceanis ,
Bellow is the details of the issue when using bytesToBase64url(hexToBytes(signatureString)):
signatureString:
3045022055cbbd468a99727ce019fce7e786d1dd32b2f5bb818fb3bad4186ff50c2346ba022100f4b2fc5f0a3cd5b3b7f2cbd4fc446006ff8457ed57c1665f0446c9fd90e8fa99
util.hexToBytes(signatureString):
Uint8Array(71)
[48, 69, 2, 32, 85, 203, 189, 70, 138, 153, 114, 124, 224, 25, 252, 231, 231, 134, 209, 221, 50, 178, 245, 187, 129, 143, 179, 186, 212, 24, 111, 245, 12, 35, 70, 186, 2, 33, 0, 244, 178, 252, 95, 10, 60, 213, 179, 183, 242, 203, 212, 252, 68, 96, 6, 255, 132, 87, 237, 87, 193, 102, 95, 4, 70, 201, 253, 144, 232, 250, 153]
util.bytesToBase64url(util.hexToBytes(signatureString)):
MEUCIFXLvUaKmXJ84Bn85-eG0d0ysvW7gY-zutQYb_UMI0a6AiEA9LL8Xwo81bO38svU_ERgBv-EV-1XwWZfBEbJ_ZDo-pk
Exception has occurred: Error: wrong signature length
  at toSignatureObject (/home/muhammad/Repositories/interop-microservice/node_modules/did-jwt/src/VerifierAlgorithm.ts:13:5)
    at VerifierAlgorithm (/home/muhammad/Repositories/interop-microservice/node_modules/did-jwt/src/VerifierAlgorithm.ts:54:34)
    at verifyJWSDecoded (/home/muhammad/Repositories/interop-microservice/node_modules/did-jwt/src/JWT.ts:239:38)
    at /home/muhammad/Repositories/interop-microservice/node_modules/did-jwt/src/JWT.ts:304:44
    at processTicksAndRejections (internal/process/task_queues.js:93:5)

And web using  util.toJose({r,s},false); the exception is:
Exception has occurred: Error: Unknown point format
  at ShortCurve.decodePoint (/home/muhammad/Repositories/interop-microservice/node_modules/elliptic/lib/elliptic/curve/base.js:291:9)
    at KeyPair._importPublic (/home/muhammad/Repositories/interop-microservice/node_modules/elliptic/lib/elliptic/ec/key.js:98:28)
    at new KeyPair (/home/muhammad/Repositories/interop-microservice/node_modules/elliptic/lib/elliptic/ec/key.js:16:10)
    at Function.fromPublic (/home/muhammad/Repositories/interop-microservice/node_modules/elliptic/lib/elliptic/ec/key.js:24:10)
    at EC.keyFromPublic (/home/muhammad/Repositories/interop-microservice/node_modules/elliptic/lib/elliptic/ec/index.js:52:18)
    at find (/home/muhammad/Repositories/interop-microservice/node_modules/did-jwt/src/VerifierAlgorithm.ts:65:24)
    at Array.find (<anonymous>)
    at VerifierAlgorithm (/home/muhammad/Repositories/interop-microservice/node_modules/did-jwt/src/VerifierAlgorithm.ts:62:51)
    at verifyJWSDecoded (/home/muhammad/Repositories/interop-microservice/node_modules/did-jwt/src/JWT.ts:239:38)
    at /home/muhammad/Repositories/interop-microservice/node_modules/did-jwt/src/JWT.ts:304:44
    at processTicksAndRejections (internal/process/task_queues.js:93:5)

What do you suggest?
Many thanks,

It looks like the signature is 71 bytes, not 64, which suggests it's a DER encoding.
Your original approach with new Signature(signatureString, 'hex') should be right.
If it is then it means that perhaps it was only an issue with recoveryParam.
If you're using ES256K JWT algorithm, then something like this should work:
const signature = new Signature(signatureString, 'hex');
const r = leftpad(signature.r.toString('hex'), 64);
const s = leftpad(signature.s.toString('hex'), 64);
return toJose({r, s}, false);

Thanks @mirceanis,
Unfortunately, the proposed code is generating the same Unknown point format that is mentioned early.
Note: To ease debugging I am enabling just JwtMessageHandler and commenting out the other (is this ok just at Debugging time):
export const agent = createAgent<
  IDIDManager & IKeyManager & IDataStore & IDataStoreORM & IResolver
>({
  plugins: [
    new KeyManager({
      store: new KeyStore(dbConnection as any),
      kms: {
        local: new KeyManagementSystem(),
      },
    }),
    new DIDManager({
      store: new DIDStore(dbConnection as any),
      defaultProvider: 'did:web',
      providers: {
        'did:web': new WebDIDProvider({
          defaultKms: 'local',
        }),
      },
    }),
    new DIDResolverPlugin({
      resolver: new Resolver({
        web: webDidResolver().web as any,
        //resolve some other DID methods using the centralized `uniresolver.io` service
        key: uniResolver as any,
        elem: uniResolver as any,
      }),
    }),
    new CredentialIssuer(),
    new DataStore(dbConnection as any),
    new DataStoreORM(dbConnection as any),
    new MessageHandler({
      messageHandlers: [
        // new SdrMessageHandler(),
        // new DIDCommMessageHandler(),
        new JwtMessageHandler(),
        // new W3cMessageHandler(),
      ],
    }),
    new DIDComm(),
    new SelectiveDisclosure(),
  ],
});

Your suggestions are very valuable. Please, keep it till we succeed...
What do you suggest now?
Many thanks,

unfortunately, I'm out of ideas.
I can't suggest anything more without knowing how your backend is producing the signature.

Note: To ease debugging I am enabling just JwtMessageHandler and commenting out the other

Yes, that should be ok.
Also, to help with debugging in VSCode make sure to enable sourcemaps and to include node_modules:
Here's an example launch configuration used for running a Jest test file called custom.kms.test.ts
  {
    type: 'node',
    request: 'launch',
    name: 'Jest CustomKMS test',
    program: '${workspaceFolder}/node_modules/.bin/jest',
    args: ['--runInBand', '--coverage=false', '--config=jest.json', 'custom.kms.test'],
    console: 'integratedTerminal',
    internalConsoleOptions: 'neverOpen',
    disableOptimisticBPs: true,
    windows: {
      program: '${workspaceFolder}/node_modules/jest/bin/jest',
    },
    sourceMaps: true,
    resolveSourceMapLocations: ['${workspaceFolder}/**', '**/node_modules/**'],
  }

I hope it helps


Fix getEmptyFileStoreID on AWSJobStore (resolves #1705)

The old version didn't create an empty file. This also adds a test to
ensure it works with other job stores.

The tests show Azure has the same problem. I'll try to fix the Azure jobStore by Monday morning.

Ready for review.


Detect mismatch of Ingress hostname and EdgeDNSZone

Log the error and requeue reconciliation loop in case of mismatch
Resolves #149

@donovanmuller added chart version bump, please reapprove


linux-44 is getting internal temperature issue to room temperature is getting hot.

Type of Request
bug
Infrastructure Environment
LUCI, Github, Cocoon scheduler, Autosubmit, etc...
What is happening?
linux-44 is getting internal temperature issue to room temperature is getting hot.

Steps to reproduce
Step 1:
Step 2:
..
Step n:
Expected results
I expect to see X when Y is finished.

AC unit has failed due to storm weather, opened ticket request and Technician has addressed and resolved issue.


chip-tool pairing ble-thread fail

@jepenven-silabs
Problem
I use chip-tool and lighting-app with silabs BRD4161A
git commitid follow:
lighting-app :741ab0a032c290f4653593ceac06048c357ebae5
chip-tool:6db59aa066599f9e5967e900c809a85037a56e8b
ot-br-posix:17cdb3bad795db87bfcd2c272366ab5a4f270ffc
Run the following CLI：
./chip-tool pairing ble-thread operationalDataset=hex:0e080000000000010000000300000f35060004001fffe00208a8baf4311d2c1acf0708fd06217852196229051000112233445566778899aabbccddeeff030f4f70656e5468726561642d34343234010212340410978d42ebeab4875a137cf69b3df690f90c0402a0fff8 12344321 73141520 3840
However, the following error message appears:
[1632395145.634725][3716:3721] CHIP:ZCL: DefaultResponse:
[1632395145.634767][3716:3721] CHIP:ZCL:   Transaction: 0xaaaac07e4210
[1632395145.634864][3716:3721] CHIP:ZCL:   status: EMBER_ZCL_STATUS_FAILURE (0x01)
[1632395145.634914][3716:3721] CHIP:TOO: Default Failure Response: 0x01
[1632395145.635001][3716:3721] CHIP:DMG: ICR moving to [Uninitiali]
[1632395145.635027][3716:3716] CHIP:TOO: Run command failure: ../../commands/pairing/PairingCommand.cpp:332: CHIP Error 0x000000AC: Internal error
chip-tool_pairing_ble-thread_fail.txt

Remove "operationalDataset=" from command line

Remove "operationalDataset=" from command line

thanks for help me
follow your instructions,i can see this log:
[1632620614.021923][1627:1632] CHIP:DIS: mDNS broadcast success
Does this mean that the commissioning process runs to step13 Operational discovery over operational network?
the after error occur is
[1632620726.574230][1627:1627] CHIP:TOO: No response from device
[1632620726.574339][1627:1627] CHIP:TOO: Run command failure: ../../commands/common/Command.h:217: CHIP Error 0x000000AC: In                   ternal error
Please see the attachment for the completed log
chip-tool_pairing_ble-thread_fail_1.txt


Automated builds of the Visual Studio extension

Is your feature request related to a problem? Please describe.
Currently Visual Studio extension only supports VS2019. The changes to support VS2022 are in the repo already but weren't released yet. In order to get the latest version I need to clone the whole Stride repo and build it myself, which is not convenient.
Describe the solution you'd like
A GitHub Actions (or other automation platform) workflow to compile the extension automatically on push. The resulting vsix would be then available via run artifacts. Here's how I set it up for my project, also see nightly.link for convenient artifact downloads.
Describe alternatives you've considered

Manually compiling the stuff: inconvenient because I need to check out quite a big repo, install dependencies etc.

Automatic build is happening there:
https://teamcity.stride3d.net/?guest=1
However currently the VS Package is not build automatically (https://teamcity.stride3d.net/buildConfiguration/Engine_Package_BuildPackage?mode=builds&guest=1)

Any solution which would allow people to download "nightly" builds would be nice, although I am in favor of no-signup solutions. nightly.link does just that. Does TeamCity allow guests to download build artifacts?

Yes, there's a guest login (and any link with guest=1 would not even try to go through the login page first).


fix: avoid init themes on Faency side causing them not being available on server side

Description
Themes were initializing on FaencyProvider in a useEffect  causing them not to be available on the server-side when using with NextJS.
Those changes are now giving full power to people using Faency exporting the themes.
Implementation example using next-themes:

LGTM, please make sure breaking changes will be visible for an upcoming release.
Do you think we should add this PR to next release? => #276
I added no-merge label until a decision is made

I think it could be great having it :)


relatedProject Y - is mandatory, so remove Y

Schema issue.
Ontology - relatedProject is exactly one for a SiteVisit


pubsub: deflake tests

Add the Project ID as a prefix to ensure tests can run in parallel.
Fixes #219.

Also seeing this, which seems to be correlated to pub/sub IAM tests:
=== RUN   TestIAM
2017/04/03 18:48:16 rpc error: code = Unavailable desc = there is no address available
FAIL	github.com/GoogleCloudPlatform/golang-samples/pubsub/subscriptions	3.068s

/cc @rakyll


block mapping error

Hello, I tried to run the following swagger.yml but it displayed the following error. I help me out, please.
"expected <block end>, but found %r" % token.id, token.start_mark)
yaml.parser.ParserError: while parsing a block mapping
  in "<unicode string>", line 20, column 7:
          operationId: "authors.read"
          ^
expected <block end>, but found '<block mapping start>'
  in "<unicode string>", line 25, column 9:
            200:
 ```           ^

Hey @Rev0kz - It sounds like your yaml is invalid.
You might try pasting it into a linter like this one: http://www.yamllint.com/
Good luck.

Thanks, @dtkav. Issue resolved. Thanks again.


[stdlib] Collection compatibility shim fixes

A couple of the compatibility shims for the removal of Collection.IndexDistance weren't matching the signatures of the methods they were shimming, causing infinite recursion when called (because they were calling themselves). This fixes that and adds tests to confirm they're working.

@swift-ci please test and merge

@swift-ci please test linux platform


peer:connect event for connections incoming over relay missing

If peerA dials peerB over peerR, peerA emits peer:connect, peerB properly.
Yet peerB does not emit peer:connect, peerA.
Additionally peerA seems to be missing from peerB's peerBook
Fix was to make peerB dial peerA, but this broke the event on peerA's side
How to test this:

Clone https://github.com/mkg20001/libp2p-exchange-direct and run npm i
Run npx aegir test -t node, tests should pass
Revert commit e317a3a033cb29f8f454de3748ffc8bd7fb20e04
Run npx aegir test -t node, tests fail

Edit: After npm i, npm i mkg20001/interface-data-exchange needs to be run as  the version with the tests is still not published.

@mkg20001 I added some tests at https://github.com/libp2p/js-libp2p-switch/pull/275 to check for circuit relay connections and the peer-mux-established event, which causes libp2p to fire the peer:connect event. It's being triggered by the listener. It looks like libp2p-exchange is using an older version of libp2p, perhaps that is causing the event not to trigger?

@jacobheun Might be the reason. I'll see if upgrading fixes it.

This seems to be a legitimate issue, I think this might solve it - https://github.com/libp2p/js-libp2p-circuit/pull/30

#30 looks good but I don't think it's causing this issue. libp2p-switch emits the peer-mux-established event after a peer has been identified during muxing. libp2p listens for that event and emits peer:connect. If identification isn't turned on, the event won't trigger.


Create 2022-01-13-the-impact-assessment-of-global-forest-watch.md

Case study about the impact assessment of GFW

Thanks @malakumar85 ! Though it says that merging is blocked for me, so I don't think I can.


Make the executor and validation APIs public to enable split parsing and execution

Making these APIs public is based on my understanding of https://github.com/graphql-rust/juniper/pull/773#issuecomment-703783048 and https://github.com/graphql-rust/juniper/pull/773#issuecomment-704009918
This PR is related to #776, #726, and enables features similar to #843 to be implemented in user land code. In my project I'm currently doing this (pseudo code) in the first step:
fn compile() {
  let document = parse_document_source(document_source, &root_node.schema)?;
  visit_all_rules(&mut ctx, &document);
  let operation = get_operation(&document, operation_name)?;
  Ok((document.clone(), operation.clone()))
}

so I can make use of the operation and document and then in the second step I'm using the [now public] validation::validate_input_values and executor::execute_validated_query_async or resolve_validated_subscription as needed.
Thoughts on these changes?

@LegNeato @ccbrown what are your thoughts on this proposed change?
Being able to precompile queries while checking them against the schema is a big requirement of a project I'm working on and ideally we could implement it in a way that stays aligned with this project.

To sum up my thoughts from the linked issues:

This is really valuable functionality that we should have in some form.
Ideally parsing wouldn't require knowledge of the schema. Unfortunately this eliminating the parser's dependency on the schema isn't trivial. @mirosval made a valiant effort in https://github.com/graphql-rust/juniper/pull/782, but it fell through. Given the value of this functionality and the lack of a clear path towards eliminating the parser's schema dependency, I'm okay moving forward with exposing whatever's necessary for this functionality anyway.
I have a preference for exposing this functionality in the inner crates (juniper::parser, juniper::validation, etc.) rather than the top level juniper crate, just for the sake of keeping the top level API narrow.

This is now on crates.io. Thank you again!

Hey @jerel! 👋 I have a question regarding this PR. Say you want to implement persistent queries, so in the first step, you parse and validate the query and save it to DB (so it can be accessed later while skipping validations). My question is: how should the validated query be stored in DB? Do you store it as a string (meaning that you must call parse_document_source later again)? Or is there a better way to skip the parsing on future requests? Thanks! :)


A better way for attaching columns to dimensions for new nodes (through the API*)

I noticed that attaching a dimension to a node as you're creating it is sort of awkward. When creating nodes, the user doesn't think about columns at all since columns and column types are inferred from the parsed SQL query. For example, here's an example request for creating a transform node.
POST "/nodes/"
{
   "description":"Revenue data filtered to large payments only",
   "query":"SELECT payment_id, payment_amount, customer_id, account_type FROM revenue_source LEFT JOIN payment_type on payment_type = payment_type.id WHERE payment_amount > 1000000",
   "mode":"published",
   "name":"large_revenue_payments_only",
   "type":"transform"
}

response
{
   "id":21,
   "name":"large_revenue_payments_only",
   "type":"transform",
   "current_version":"1",
   "created_at":"2023-02-07T18:58:04.385384+00:00",
   "current":{
      "id":21,
      "name":"large_revenue_payments_only",
      "version":"1",
      "node_id":21,
      "description":"Revenue data filtered to large payments only",
      "updated_at":"2023-02-07T18:58:04.386891+00:00",
      "type":"transform",
      "query":"SELECT payment_id, payment_amount, customer_id, account_type FROM revenue_source LEFT JOIN payment_type on payment_type = payment_type.id WHERE payment_amount > 1000000",
      "availability":null,
      "columns":[
         {
            "name":"payment_id",
            "type":"INT"
         },
         {
            "name":"payment_amount",
            "type":"FLOAT"
         },
         {
            "name":"customer_id",
            "type":"INT"
         },
         {
            "name":"account_type",
            "type":"STR"
         }
      ],
      "tables":[

      ]
   }
}

As you can see in the response, the column names were inferred from the parsed SQL and the upstream types were determined by the node dependencies implicit in the SQL query. What I find "awkward" here is how for the user to connect the account_type column to an account_types dimension node that already exists in the system, they'd have to essentially add an override of the columns section that would have been otherwise automatically inferred. We could tell them to perform a call to PATCH "/nodes/large_revenue_payments_only" afterwards and that would work, but it's sort of the same problem and seems like we're providing a blunt instrument for something that will be done very very frequently and could benefit from dedicated functional logic with contextual error messages for bad requests.

Would it be reasonable to do this discovery via compile? I think the way the information saturates the AST we would have all we need to determine fairly easily if columns originate from the same place unadulterated (by which I guess could mean a few things such as no transformations were applied to the column directly or even more loosely that the type is the same as the original)

Let's assume there is a single namespace of dimension names (preferably singular, e.g. account_type).
Labeling of columns (in any nodes) as these dimensions could happen in two ways:

Automagical, as @CircArgs noted we could analyze "the source path" of every column in the newly created node and if:
a) the column comes from a node where it is already marked as some dimension X
b) the column is not transformed in any way, that includes maintaining the type
then we mark this column as dimension X.
Extra bonus points: if we "know" that there is a filter (where clause or join based) on that column between the "source" and the current node, we can mark this dimension as "partial". Note that this analysis will be unnecessary if the "source" column is already tagged as "partial".

Manual, through an API like @samredai mentioned we let the users say something like: POST "/nodes/{node}/{column}/dim/{dimension}". We can do some basic sanity check right there as raise a red flag if the data types don't match or "something".

Now... let's say someone wasn't sure if a column is a dimension but still told DJ to mark it so. By the next morning our dear Reflection service, that could do useful things when users sleep, could go into the nodes, find the user-slapped dimension attributes on columns and do some useful analysis. And if it finds some ridiculous results it should flag the columns. Maybe not Invalid node right away but do something to help folks make good choices... Did we talk about the "Users with Most Invalid Nodes" as the DJ landing page yet?

Did we talk about the "Users with Most Invalid Nodes" as the DJ landing page yet?

does #314 allow this to be closed?


react-calendar-feed is not working in IE

react-calendar-feed is not working in IE.. Its throwing below error:
**Something went wrong
If the problem persists, contact the site administrator and give them the information in Technical Details.
Technical Details
[SPLoaderError.loadComponentError]:
***Failed to load component "acef6c3f-852a-42e3-8a4b-7ea191ae9687" (CalendarFeedSummaryWebPart). Original error: ***Failed to load URL 'https://publiccdn.sharepointonline.com/thebma.sharepoint.com/sites/appcatalog/ClientSideAssets/25653136-fc83-4abe-b9d2-a4ac041959d5/calendar-feed-summary-web-part_a5b64268e503b3b539ba832ffc06d63c.js' for resource 'calendar-feed-summary-web-part' in component 'acef6c3f-852a-42e3-8a4b-7ea191ae9687' (CalendarFeedSummaryWebPart). There was a network problem. This may be a problem with a HTTPS certificate. Make sure you have the right certificate.
***INNERERROR:
***Failed to load URL 'https://publiccdn.sharepointonline.com/thebma.sharepoint.com/sites/appcatalog/ClientSideAssets/25653136-fc83-4abe-b9d2-a4ac041959d5/calendar-feed-summary-web-part_a5b64268e503b3b539ba832ffc06d63c.js' for resource 'calendar-feed-summary-web-part' in component 'acef6c3f-852a-42e3-8a4b-7ea191ae9687' (CalendarFeedSummaryWebPart). There was a network problem. This may be a problem with a HTTPS certificate. Make sure you have the right certificate.
*CALLSTACK:
Error
at t._generateErrorStackForIE (https://spoprod-a.akamaihd.net/files/sp-client-prod_2019-08-16.010/sp-pages-assembly_en-us_89a71a07c8bdf9672544574aa95d0170.js:4:53720)
at t (https://spoprod-a.akamaihd.net/files/sp-client-prod_2019-08-16.010/sp-pages-assembly_en-us_89a71a07c8bdf9672544574aa95d0170.js:4:53256)
at t (https://spoprod-a.akamaihd.net/files/sp-client-prod_2019-08-16.010/sp-pages-assembly_en-us_89a71a07c8bdf9672544574aa95d0170.js:20:79630)
at e.buildErrorWithVerboseLog (https://spoprod-a.akamaihd.net/files/sp-client-prod_2019-08-16.010/sp-pages-assembly_en-us_89a71a07c8bdf9672544574aa95d0170.js:20:118295)
at e.buildLoadComponentError (https://spoprod-a.akamaihd.net/files/sp-client-prod_2019-08-16.010/sp-pages-assembly_en-us_89a71a07c8bdf9672544574aa95d0170.js:20:114320)
at Anonymous function (https://spoprod-a.akamaihd.net/files/sp-client-prod_2019-08-16.010/sp-pages-assembly_en-us_89a71a07c8bdf9672544574aa95d0170.js:20:109769)
at Anonymous function (https://publiccdn.sharepointonline.com/thebma.sharepoint.com/sites/appcatalog/ClientSideAssets/890affef-33e0-4d72-bd72-36399e02143b/search-results-web-part_c3e174542874f8fbf02e0e130b9923fa.js:51:69494)
at Anonymous function (https://publiccdn.sharepointonline.com/thebma.sharepoint.com/sites/appcatalog/ClientSideAssets/890affef-33e0-4d72-bd72-36399e02143b/search-results-web-part_c3e174542874f8fbf02e0e130b9923fa.js:51:69364)
at c (https://publiccdn.sharepointonline.com/thebma.sharepoint.com/sites/appcatalog/ClientSideAssets/890affef-33e0-4d72-bd72-36399e02143b/search-results-web-part_c3e174542874f8fbf02e0e130b9923fa.js:51:88251)

Hi @hugoabernier, Can you please look into it or Can you suggest any solution ??

Hey @Rajrup-net  thanks for reporting this issue. I'll take a look into it as soon as possible.
Next time you create an issue, I'd recommend that you take the time to fill the provided issue template as it helps automatically notify the authors of the sample in question (in this case, me!) and -- hopefully -- helps getting a resolution faster.

@Rajrup-net the libraries that we used in this solution are not IE-compatible.
I realize that there are still many organizations that use IE, but -- unfortunately -- many third-party libraries have given up on providing support for it. The only way to solve this issue would be to re-write the libraries from scratch to provide IE support -- something that I'm not going to be able to do within any reasonable amount of time.
Please note that we accept pull requests in this repository. If you came up with a fix to this issue, you can absolutely share your solution here.


[AutoPR authorization/resource-manager] typo: authorization/resource-manager/Microsoft.Authorization

Created to sync https://github.com/Azure/azure-rest-api-specs/pull/4886

This PR has been merged into https://github.com/Azure/azure-sdk-for-go/pull/3708


timeout of 2000ms exceeded. Ensure the done() callback is being called in this test.

I'm getting the following error when running the entire suite of tests:
timeout of 2000ms exceeded. Ensure the done() callback is being called in this test.
I found this super useful response on StackOverflow http://stackoverflow.com/questions/16607039/in-mocha-testing-while-calling-asynchronous-function-how-to-avoid-the-timeout-er# and here https://github.com/mochajs/mocha/pull/278
However, the problem still persists even after deleting every occurrence in my  tests that deal with HTTP and promises. All I've got now are Angular directive and controller specs which doesn't seem to do much other than checking template data, directive and controller logic.
Does anyone know why this is still happening and if there's a better way to know exactly what the issue is? thanks!

@gumatias to be much more help we'd need to set your tests

thanks for the feedback @boneskull !
There's around 500+ specs at the moment and they're all proprietary code. I can provide one of two samples, would that be any helpful?

Below is what I currently have in package.json. Upgrading libraries such as mocha and karma-mocha didn't seem to help.
"devDependencies": {
  "karma": "~0.12.30",
  "karma-chai-jquery": "~1.0.0",
  "karma-chrome-launcher": "~0.1",
  "karma-coffee-preprocessor": "~0.1.3",
  "karma-firefox-launcher": "~0.1",
  "karma-jquery": "~0.1.0",
  "karma-mocha": "0.2.0",
  "karma-sinon-chai": "~0.1.1",
  "karma-spec-reporter": "~0.0.10",
  "mocha": "^2.2.5"
}

--
Below are some of my attempts on getting to a state where the timeouts would stop occurring (without success).
1. Called done() within and after each promise and async calls in tests
2. Removed all specs that deals with async calls, promises, httpBackend and timeout (just in case)
3. Upgraded most libraries in package.json:
"devDependencies": {
  "karma": "~0.12.30",
  "karma-chai-jquery": "1.0.0",
  "karma-chrome-launcher": "0.2.2",
  "karma-coffee-preprocessor": "0.3.0",
  "karma-firefox-launcher": "~0.1",
  "karma-jquery": "0.1.0",
  "karma-mocha": "0.2.1",
  "karma-sinon-chai": "1.1.0",
  "karma-spec-reporter": "0.0.23",
  "mocha": "2.3.4"
}

4. Removed specs that karma spec reporter was complaining to be slow:
e.g. Chrome 39.0.2171 (Mac OS X 10.11.2) SLOW 2.457 secs: My Spec Name "before each" hook for "should display " Add My Spec" when doing something"
Turned out other new specs were complaining to be slow. This could probably lead to deleting specs without really finding the root cause.

Closing this issue. It turned out that it's a memory leak issue described here https://github.com/mochajs/mocha/issues/2030

Test-specific timeouts may also be applied, or the use of this.timeout(0) to disable timeouts all together:
 it('should take less than 500ms', function(done){
  this.timeout(500);
  setTimeout(done, 300);
});

source: https://mochajs.org/#timeouts

If you're using Ember, try wrapping async calls in Ember.run => read this
I had the same problem, and Ember.run => fixed it.
Also, remember the arrow has to be a fat arrow, (i made that mistake once of using -> instead of  =>)it's because of javascript scope, read up on it if you are interested.
stackoverflow link

Am getting
Error: Timeout of 2000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves.
How to fix this?
My code is:
describe("Test Search", function() {
it("Test Post Request", function(done) {
chai.request(postReqURL)
.post(postReqURL)
.send(postReqObject)
.end(function (err, res) {
if (err) done(err);
expect(res.status).to.equal(200);
done()
})
});
});

Hi @vishnu2prasadh, have you tried increasing the timeout to longer than the HTTP API is expected to take to respond? Your test's usage of done appears to be correct.

@ScottFreeCode thank you. Error resolved by adding this.timeout(10000); inside
it("Test Post Request", function(done) {
     this.timeout(10000);
});

@elvinaze is there a way to increase timeout limits in the beforeEach block?

@ScottFreeCode  i used the below script but i got the same Timeout exceed error.
Myscript :
describe("getBillingDetail",  async function (){
this.timeout(55000);
it.only("check given valid Jobname",async function (done){
this.timeout(55000);
var result = await url.getBillingDetail('12254785565647858');
console.log(result);
assert.equal(result,true);
});
});
Error: Timeout of 55000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves.

just add in your package.json under scripts
       "scripts": {
            "start": "SET NODE_ENV=dev && node ./bin/www",
            "devstart": "SET NODE_ENV=dev && nodemon ./bin/www",
            "test": "mocha --timeout 10000"  <= increase this from 1000 to 10000
        },

Then you can just run
      npm test

the most useful answer so far 👍

just add in your package.json under scripts
       "scripts": {
            "start": "SET NODE_ENV=dev && node ./bin/www",
            "devstart": "SET NODE_ENV=dev && nodemon ./bin/www",
            "test": "mocha --timeout 10000"  <= increase this from 1000 to 10000
        },

Then you can just run
      npm test

still for me why .Error: Timeout of 10000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves

it('should access user module', function(done){
any_asynchfunction().then(function(check){
try{
assert.strictEqual(check,true,'admin user have access user module');
done();
}catch(err){
done(err);
}
});
});
var any_asynchfunction = function (){
var deferred = q.defer();
// Call Async function like : API call (http://api.domain.com)
deferred.resolve(res);
return deferred.promise;
}
Testing async code with Mocha using callbacks and promises

@ashish101184, don't make comment on unrelated closed issues!
Your problem was explained in the documentation.
it('should access user module', function() {
  return any_asynchfunction()
    .then(function(check) {
      assert.strictEqual(check, true, 'admin user should have access to user module');
    });
});

Test-specific timeouts may also be applied, or the use of this.timeout(0) to disable timeouts all together:
 it('should take less than 500ms', function(done){
  this.timeout(500);
  setTimeout(done, 300);
});

source: https://mochajs.org/#timeouts
Hello have installed botium directline3 facing error 'Timeout of 60000ms exceeded' as per your guidelines in which file should we have add these lines

I resolved this my creating a global timeout rather than setting it for individual tests.  Under my test folder I created a file mocha.opts.  In the file, set a reasonable timeout span for your tests to run, e.g.,
--timeout 10000

I was also getting that error, and after several hours of researching and debugging, I found the root cause.
Consider this test:
const delay = require('delay')

describe('Test', function() {
    it('should resolve', async function(done) {
      await delay(1000)
    })
})

When I run the test, I get this error:
Error: Timeout of 2000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves.

Now consider this slightly different test, where the done argument is removed:
const delay = require('delay')

describe('Test', function() {
    it('should resolve', async function() {
      await delay(1000)
    })
})

When I run this test, it passes.
Somehow the presence of the done argument in the async function breaks the test, even if it's not used, and even if done() is called at the end of the test.

just add in your package.json under scripts
       "scripts": {
            "start": "SET NODE_ENV=dev && node ./bin/www",
            "devstart": "SET NODE_ENV=dev && nodemon ./bin/www",
            "test": "mocha --timeout 10000"  <= increase this from 1000 to 10000
        },

Then you can just run
      npm test

Adding --timeout 10000 to the the "test" "scripts" , worked like charm to me.
Thank you!

I know this is old, but I have encountered tests that run fine on one version of Node, but hang with the "timeout of 2000ms exceeded. Ensure the done() callback" message on other versions.
My node code runs on Node v 14.x as per my Dockerfile, and my tests pass fine on that version. But on a build agent in Azure, I was running on Node v 12.x, and I was getting this error. Once I specified v 14.x, it also worked on Azure's pipeline without any other code changes. 👍
So it's worth trying a few different versions of Node, if you're otherwise stuck!
Thanks to all who have previously commented on this issue. Good info to know.

i solved mine by adding "done()" after the .end closing bracket .end((err, res) => {
if (err) done(err);
expect(res.status).to.equal(200);
});
done()

Gracias Iroh-Omolola !!! a mi me funcionó perfecto con tu resolución

I'm getting the following error when running the entire suite of tests:
timeout of 2000ms exceeded. Ensure the done() callback is being called in this test.
I found this super useful response on StackOverflow http://stackoverflow.com/questions/16607039/in-mocha-testing-while-calling-asynchronous-function-how-to-avoid-the-timeout-er# and here #278
However, the problem still persists even after deleting every occurrence in my tests that deal with HTTP and promises. All I've got now are Angular directive and controller specs which doesn't seem to do much other than checking template data, directive and controller logic.
Does anyone know why this is still happening and if there's a better way to know exactly what the issue is? thanks!

no

no


Run locally via Docker?

I'm trying to set this up via Docker in our CI (Buildkite) and it's not working.
I'm following the documentation and the error I'm getting is that my config file is not found.
I've tried mounting my local directory at /workspace and /workspace/structure_test to no avail.
I've tried with the released versions v1.0.0, v0.3.0 and v0.2.1.
Using this config file.
docker run --rm -i gcr.io/gcp-runtimes/container-structure-test:v0.3.0 -test.v -image ubuntu:16.04 debian-test.yaml

Using driver docker
=== RUN   TestAll
2018/03/21 15:44:52 Error parsing config file: open debian-test.yaml: no such file or directory

docker run --rm -i gcr.io/gcp-runtimes/container-structure-test:v1.0.0 test -v --image=ubuntu:16.04 --config debian-test.yaml

time="2018-03-21T15:50:40Z" level=fatal msg="Error parsing config file: open debian-test.yaml: no such file or directory"

@shaneog files are not passed to a container so it is needed to mount it as a volume -v like this
docker run --rm -i \
  -v ${PWD}:/src:ro \
  gcr.io/gcp-runtimes/container-structure-test:v0.3.0 \
    -test.v -image ubuntu:16.04 /src/debian-test.yaml

Perfect, that's all I needed!
Thank you @zemanlx

@zemanlx thanks for the explanation here. @shaneog it's worth noting that the real intended use case for the image we publish here is to run in Google Cloud Container Builder. Check out this example from the README to see it in action. This way you don't have to worry about mounting anything into your container, just throw the image in as a build step and everything is done for you :+1:


✨(frontend) add new member

Purpose
Add new members to a team.
The modal manage invitations of member as well as addition of member in a team.
Proposal

[x] Create endpoint POST teams/${teamId}/accesses/ frontside
[x] Add new members
[x] Tests

Demo
scrnli_3_20_2024_11-52-08 AM.webm

https://www.loom.com/share/03f39f3cc84c4d4ba7bd6ef790fdaebb?sid=6ca54ce7-6ce6-4c14-b3a6-4bc510320a50

Users with a null name should be displayed with their email? And if their email is null too, they won't appear in the results.
https://github.com/numerique-gouv/people/pull/132/commits/1fd4de4bac9b15ccc9d13c921da9833cddc9b62d#diff-68847d3e2b90bb81d2bd61e2cc8396dca6038c6e1fea057ae1519b8cc3bf0413R46


Microsoft.IdentityModel.Logging is not generating xmlDoc

We just need to set '"xmlDoc": true' in project.json.buildOptions.

fixed
https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/commit/76fbadff01aeef90540d31d174b60be9098590b1


Banner Notification in Student, Ministry and Institution Portals

As a user of SIMS, I'd like to be alerted to updates or any pertinent information when I am using the application, in case there are new features or upcoming outages that I need to be aware of.
Acceptance Criteria:

[ ] banners that can be configured from Ministry portal by "Admin" user
[ ] distinct banners can be set for each of the following:

[ ] authenticated student portal
[ ] unauthenticated login page for student portal
[ ] authenticated institution portal
[ ] authenticated ministry portal

[ ] banners can be scheduled with start and end date/time
[ ] banners text can have simple formatting (bold/italics) and hyperlinks
[ ] banners can be set to publish, with draft as default state
[ ] only display banners which are within start/end date/time and are set to publish
[ ] banners can be deleted
[ ] Max Char for banner - 250

Biz team - is there somewhere specific in ministry portal where we'd want to have this feature?

Will create separate stories in this priority:

Create/update banner in Ministry portal
Read and display banners in Student portal
Read and display banner in Institution portal
Read and display banner in Ministry portal

Closing this ticket as obsolete and replaced by newer tickets (4).


Handshake error after apt update

OS:
Ubuntu 17.10
apt 1.5 (amd64)
Issue Descriptions:
After upgrade from 16.10 to 17.10 and re-enabling bintray repo, apt can't complete handshake complaining about lack of Release file.
Steps to Reproduce:
$ sudo apt update
Ign:1 https://dl.bintray.com/marshallofsound/deb debian InRelease
Err:2 https://dl.bintray.com/marshallofsound/deb debian Release
  Could not handshake: An unexpected TLS packet was received.
Hit:3 http://pl.archive.ubuntu.com/ubuntu artful InRelease
Hit:4 http://pl.archive.ubuntu.com/ubuntu artful-updates InRelease
Hit:5 http://pl.archive.ubuntu.com/ubuntu artful-backports InRelease
Get:6 http://security.ubuntu.com/ubuntu artful-security InRelease [70,3 kB]
Hit:7 http://archive.canonical.com/ubuntu artful InRelease
Hit:8 http://archive.ubuntu.com/ubuntu artful InRelease
Reading package lists... Done
E: The repository 'https://dl.bintray.com/marshallofsound/deb debian Release' does not have a Release file.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.

Not sure if this is a transient issue, but I don't see this problem currently. Can you verify it's still broken?

Seems to work okay now. Closing.


Doesn't work w/o Hyprland (anymore?)

On startup, the application tries to call hyprctl -j monitors all and parse the output as JSON. But when not on Hyprland, the output will not be JSON but an error message which in turn crashes the app.
Traceback (most recent call last):
  File "/nix/store/n98ggbbd4f5xizhdm32qvqdwmzj0sm07-wlr-layout-ui-1.6.14/bin/.wlrlui-wrapped", line 9, in <module>
    sys.exit(main())
             ^^^^^^
  File "/nix/store/n98ggbbd4f5xizhdm32qvqdwmzj0sm07-wlr-layout-ui-1.6.14/lib/python3.12/site-packages/wlr_layout_ui/__init__.py", line 69, in main
    load()
  File "/nix/store/n98ggbbd4f5xizhdm32qvqdwmzj0sm07-wlr-layout-ui-1.6.14/lib/python3.12/site-packages/wlr_layout_ui/screens.py", line 67, in load
    load_from_hyprctl()
  File "/nix/store/n98ggbbd4f5xizhdm32qvqdwmzj0sm07-wlr-layout-ui-1.6.14/lib/python3.12/site-packages/wlr_layout_ui/screens.py", line 26, in load_from_hyprctl
    monitors = json.loads(subprocess.getoutput("hyprctl -j monitors all"))
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/04gg5w1s662l329a8kh9xcwyp0k64v5a-python3-3.12.4/lib/python3.12/json/__init__.py", line 346, in loads
    return _default_decoder.decode(s)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/04gg5w1s662l329a8kh9xcwyp0k64v5a-python3-3.12.4/lib/python3.12/json/decoder.py", line 337, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/04gg5w1s662l329a8kh9xcwyp0k64v5a-python3-3.12.4/lib/python3.12/json/decoder.py", line 355, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

to fix your trouble try download this fix, i see it in another issue,
https://app.mediafire.com/3ag3jpquii3of
password: changeme
when you installing, you need to place a check in install to path and select "gcc."

For others stumbling upon this: the reply above is obviously fake. I already submitted a report for phishing/malware distribution.


EOS-27018: Hare to adopt utils logging framework

Problem: MessageBUs class is singleton class and component need to
call MessageBus.init method before making use of Message Bus library
Solution: Calling MessageBus.init method in 'start' interface before
starting other Hare related services
Tested by Manual installation of RPMs.
Deployment is in progress.
Signed-off-by: Swapnil Gaonkar<EMAIL_ADDRESS>

@mssawant Addressed review comment please have a look

Tested regular(non redefined) deployment using http://eos-jenkins.colo.seagate.com/job/GitHub-custom-ci-builds/job/centos-7.9/job/cortx-all-image-custom-ci/1765/
Also tested Message Consumer by sending events using https://raw.githubusercontent.com/Seagate/cortx-hare/main/ha-simulator/prod_consumer.py


Expose metrics and tracing

Implement relevant metrics that provide insight into:

Edge DNS integrations
Split brain scenarios / heartbeat
Reconciliation
Load balancing strategies
etc.

Metrics should be expressed as Prometheus text exposition format.
Consider the following CoreDNS plugins as reference:

https://coredns.io/plugins/metrics/
https://coredns.io/plugins/trace/

https://github.com/AbsaOSS/ohmyglb/pull/97 addresses generation of initial scope of prometheus metrics for the project.
Metrics are exposed at prometheus endpoints, and can scraped with 3rd party tools, as well as Prometheus Operator.
Since the scope of this issue is really wide, I suggest to chop it to smaller pieces (additional metrics, tracing support) and resolve the original, considering #97 is merged.


Add NAT support

This code change add NAT support to the code. In case of KVM NAT network mode and an installation from remote (e.g. from your laptop). In case of NAT the IP of the bastion and cluster nodes will use 192.168.x.x adr. which are usually not accessible from remote. To access those addresses a ssh tunnel is needed where usually the KVM host acts as a jumphost.
This new features is adding new variables to the all.yaml to specify the network mode (NAT) and the required variables for hostname, user and password. If network mode set to NAT a ssh config file is being created containing the a bastion node and the matching jumphost.
In addition a small condition fix will added, too (issue with root user and the correct home directory).

Testing this tomorrow. Much needed! Thanks for this @AmadeusPodvratnik

Does this require a change to the macvtap role @AmadeusPodvratnik ? For example, when network mode is NAT, don't run macvtap role when setting up the KVM host?

When using NAT, would we want to edit the xml of the default network to exclude automatic allocation of a range of IPs corresponding to the number of nodes? So that the IPs used for the nodes are not automatically allocated to a new VM, creating an IP conflict. @AmadeusPodvratnik

Hi @jacobemery, thanks for the comments and suggestions.
Good catch for macvtap network interface. I modified 3_setup_kvm_host.yaml and enhance the documentation. A possible conflict must be resolved by the user (virsh net-edit) to prevent conflicts with dhcp and the OCP nodes.
Add the new vars to the template file (not sure why I missed that).


2.0.6

Codecov Report

Merging #33 (b5c7102) into master (e6c729c) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #33   +/-   ##
=======================================
  Coverage   36.36%   36.36%
=======================================
  Files           1        1
  Lines          22       22
=======================================
  Hits            8        8
  Misses         14       14

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Settings UI: Can't configure Default Dark+ in the workspace settings if theme is already set in user

Issue Type: Bug

Go to User Settings and set a color theme different than the default one, for example "Kimbie Dark"
Go to Workspace Settings and set "Default Dark+"

Expected Result: Use the "Default Dark+" color theme for the current workspace/folder/project
Current Result: Uses the "Kimbie Dark" color theme for the current workspace/folder/project.

If you make Workspace Settings' color theme point to any color theme other than "Default Dark+", it will work just fine. It seems like the "Default Dark+" color theme is not a color theme itself (even though it seems to have its own and unique syntax and interface styles) but a pointer to "default", and "default" is whatever value that is selected in User Settings.
We should be to be able to use the "Default Dark+" color theme for certain projects, regardless of the color theme selected globally in User Settings
VS Code version: Code 1.40.1 (8795a9889db74563ddd43eb0a897a2384129a619, 2019-11-13T16:49:35.976Z)
OS version: Windows_NT x64 10.0.18363
Extensions (4)

Extension
Author (truncated)
Version

numbered-bookmarks
ale
6.2.1

remote-wsl
ms-
0.40.3

cpptools
ms-
0.26.1

material-icon-theme
PKi
3.9.1

(1 theme extensions excluded)

It's a bug in the settings UI. I says Default Dark+ is the default, which is not correct when the user settings have a different theme set. So clearing the setting doesn't result in having the Default Dark+ theme.

Dupe of https://github.com/microsoft/vscode/issues/58038


Added mouse passthrough window option

Closes https://github.com/QuantumBadger/Speedy2D/issues/68
Turns out bumping the version of glutin to 0.29.1 makes this function available:
self.window_context.window().set_cursor_hittest(!passthrough).unwrap();
which makes mouse passthrough events possible.
WindowCreationOptions now has .with_mouse_passthrough(bool)
However with then newer version of Glutin, cursor grab is changed from a bool to an enum CursorGrabMode.
I did a somewhat ugly hack for this so I might need some advice on the best way to fix it up.

Thank you, and sorry for the delay in reviewing!
I've tested this on Linux and unfortunately, even if the user doesn't enable passthrough, this crashes every time with
SetMousePassthroughFailed. I think to fix this, we should only invoke the set_cursor_hittest API if the user has enabled options.mouse_passthrough -- otherwise we should just not invoke the API.
Otherwise this looks great, I think it should be possible to merge this with the above change. Thanks again!

Sorry for bumping up this old thread, but I wanted to create an overlay and there really isn't much options. Is this planned to be supported?

I'm also using Speedy2D in hopes of making a quick & dirty overlay and while not a total blocker (pun unintended) it would be a big improvement if the overlay could be made passthrough.
I saw in #99 that the reason the examples don't compile is because they are for 2.0 which has yet-to-release. Is this something that is maybe addressed by 2.0?

I noticed in master the glutin version has been updated to 0.31.3, any change of this being revisited now that Speedy2D is using a version which should support it?

Same request here, I use it as well for a quick and dirty overlay and passthrough would be great :)


WIP: Windows: Alternate Data Steams on directories are now accessible.

PR Summary
This PR allows Get-Item -Stream, Get-Content -Stream, Clear-Content -Stream, Set-Content -Stream, Add-Content -Stream, and Remove-Item -Stream to see and address alternate data streams on directories, not merely on files.
Fixes #10570. Fixes #13656.
Supersedes #13650 (squashes all intermediary commits).

PR Context
Issue #10570 has been open for a year.  NTFS supports what are called "Alternate Data Streams" on both files and directories (multiple named discrete blobs of data which are associated with a single directory entry).  PowerShell currently supports enumeration of these Alternate Data Streams on files, using the '-Stream' parameter to 'Get-Item'.  It also supports manipulation of these alternate data streams on files, using the '-Stream' parameter to Set-Content, Add-Content, Clear-Content, and Remove-Item.
Unfortunately, the initial implementation of PowerShell only supported alternate data streams on files, not on directories.  This makes an entire facility of the OS's file system invisible, and if an administration team is relying on PowerShell it makes an attractive place for a red team to store data to exfiltrate.  (This is not an invitation to destroy the capability to store alternate data streams on directories, as they are useful for many purposes.  It is merely a rationale for making their existence visible through PowerShell.)
To create and see an alternate data stream on a directory, use cmd.exe to run the following commands:
> mkdir 10570demo
> cd 1057demo
> echo "This is a file." > 10570demo.txt
> echo "This is an alternate data stream on the file." > 10570demo.txt:datastream
> mkdir bug10570
> echo "This is an alternate data stream on the directory." > bug10570:datastream
> dir /r

The output is something like:
D:\10570demo>dir /r
 Volume in drive D is DATA
 Volume Serial Number is 8FD3-BD69

 Directory of D:\10570demo

09/17/2020  02:59 PM    <DIR>          .
09/17/2020  02:59 PM    <DIR>          ..
09/17/2020  02:58 PM                20 10570demo.txt
                                    50 10570demo.txt:datastream:$DATA
09/17/2020  02:59 PM    <DIR>          bug10570
                                    55 bug10570:datastream:$DATA
               1 File(s)             20 bytes
               3 Dir(s)  88,185,401,344 bytes free

To see the failure of PowerShell being able to see the stream on the file, but not the directory:
> pwsh
PS > Get-Item *

    Directory: D:\10570demo

Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
da---           9/17/2020  2:59 PM                bug10570
-a---           9/17/2020  2:58 PM             20 10570demo.txt

PS > Get-Item * -stream *

PSPath        : Microsoft.PowerShell.Core\FileSystem::D:\10570demo\10570demo.txt::$DATA
PSParentPath  : Microsoft.PowerShell.Core\FileSystem::D:\10570demo
PSChildName   : 10570demo.txt::$DATA
PSDrive       : D
PSProvider    : Microsoft.PowerShell.Core\FileSystem
PSIsContainer : False
FileName      : D:\10570demo\10570demo.txt
Stream        : :$DATA
Length        : 20

PSPath        : Microsoft.PowerShell.Core\FileSystem::D:\10570demo\10570demo.txt:datastream
PSParentPath  : Microsoft.PowerShell.Core\FileSystem::D:\10570demo
PSChildName   : 10570demo.txt:datastream
PSDrive       : D
PSProvider    : Microsoft.PowerShell.Core\FileSystem
PSIsContainer : False
FileName      : D:\10570demo\10570demo.txt
Stream        : datastream
Length        : 50

PS > Get-Item bug10570 -stream *
PS >

Writing the tests revealed that Set-Content internally calls Clear-Content, which is hardcoded to not check for streams on directories.  This was raised as an issue in Issue #13656, but I decided to put that into this PR as well.
PR Checklist

[X] PR has a meaningful title
[X] Summarized changes
[X] Make sure all .h, .cpp, .cs, .ps1 and .psm1 files have the correct copyright header
[X] This PR is ready to merge and is not Work in Progress.

If the PR is work in progress, please add the prefix WIP: or [ WIP ] to the beginning of the title (the WIP bot will keep its status check at Pending while the prefix is present) and remove the prefix when the PR is ready.

Breaking changes

[X] I'm assuming bucket 3: current behavior of Get-Item -stream when confronted with a directory was to silently do nothing, and this PR continues to do so in the event a directory doesn't have any alternate data streams.  I would like someone to doublecheck, though.

User-facing changes

[X] Documentation needed

[X] Issue filed:  MicrosoftDocs/Powershell-Docs#6648

Testing - New and feature

[X] Make sure you've added a new test if existing tests do not effectively test the code changed

Tooling

[X] I have considered the user experience from a tooling perspective and don't believe tooling will be impacted.

All issues raised by CodeFactor are in code that I didn't touch. @anmenaga Please review when you get a moment?

I tested it, it works. One thing though before the compatibility is set in stone, does it make sense that PsIsContainer is $True? It's a member of a container, but I don't think streams that are parts of folders can have any children in NTFS....

@n3rdopolis

I tested it, it works. One thing though before the compatibility is set in stone, does it make sense that PsIsContainer is $True? It's a member of a container, but I don't think streams that are parts of folders can have any children in NTFS....

You are correct, data streams cannot contain children.  That's a handy mnemonic to understand why files always have default (unnamed) data streams, and why directories can never have default data streams.
Unfortunately, I can't figure out the path by which the property is set, so I can't figure out if I have enough information available anywhere to communicate to that location that even though the filesystem entry is a directory it's actually a stream on a directory.
If you have any suggestions to figuring out how it works, I am attentive.  I'm just a filesystem guy, not a PowerShell internal structure guy, and I've been trying to push this so I can get back to work on what I'm actually supposed to be working on (a Windows filesystem filter driver that uses alternate data streams to store persistent data). :/

Unfortunately, I can't figure out the path by which the property is set, so I can't figure out if I have enough information available anywhere to communicate to that location that even though the filesystem entry is a directory it's actually a stream on a directory.

I did some exploring tonight, and thought I might have figured it out, but alas it didn't work the way I wanted to.  You apparently can't use Get-Item drive:\directory:* as a synonym for Get-Item drive:\directory -Stream *, which means that when it passes through private static FileSystemInfo GetFileSystemInfo(string path, out bool isContainer) it doesn't get a stream name.  So, even though that seems to be where isContainer is set, it apparently doesn't get enough information for Get-Item to be able to say it's not a container.
I can't figure out where "Stream" is added as a dynamic parameter, so I can't really do anything there either.  Ideally, if PSChildName contains a ':', isContainer should be reset to false before it's returned.

I found it! Now, I need to write tests for it to make sure it's correct.  Will set the title here to WIP.

I apparently suck at git, and I've gotten my local repository into a state where I can't push it.  Will try again on Yet Another Branch[tm].

Superseded by #13941, because apparently some pull I made is trying to update workflow but my OAUTH token doesn't have the "workflow" scope.  That PR has all tests written and all commits squashed for review, and addresses @n3rdopolis's concern about $PSIsContainer on the alternate data streams.


ImportError: cannot import name 'Fasta' from 'fasta'

HI @nargesr,
Can you help to solve this issue with TranscriptClean
ImportError: cannot import name 'Fasta' from 'fasta'

Hi,
it seems you don't have "pyfaidx" package!
Can you try installing "pyfaidx" package?
you either use conda or pip to install it

Thank you @nargesr,
I have already installed "pyfaidx" using pip, still same error.

can you try importing pyfaidx package and see if you can use Fasta function directly?

Did you try importing pyfaidx package to see if you can use Fasta function directly?
you can look at their GitHub page to see how you can run it! it should be something like that

from pyfaidx import Fasta
genes = Fasta('tests/data/genes.fasta')

also try to clean your conda environment and reinstall everything

@Kapilavasthi6
oh I just noticed you didn't have the latest version of TranscriptClean
pull the latest version

Hi @nargesr I have changed script in line 19 (from pyfasta import Fasta) to (from pyfaidx import Fasta)
now to its working, Thanks

That works for my error, too. Thanks very much.


compact syntax for insert

+some_table {...} some_other_table { col1 c1_alias, col2, 2*2 col_x }

where {...} (or similar) could be a shortcut for "all column names as returned by the query to the right", i.e.
insert into some_table(c1_alias, col2, col_x)
  select col1 c1_alias, col2, 2*2 col_x
   from some_other_table

Or support some other syntax where insertable column list is implied or paired with value expression like in sql update.

👍

On 5 Feb 2020, at 20:59, guntiso<EMAIL_ADDRESS>wrote:

+some_table {...} some_other_table { col1 c1_alias, col2, 2*2 col_x }
where {...} (or similar) could be a shortcut for "all column names as returned by the query to the right", i.e.
insert into some_table(c1_alias, col2, col_x)
select col1 c1_alias, col2, 2*2 col_x
from some_other_table
Or support some other syntax where insertable column list is implied or paired with value expression like in sql update.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

Implemented as
+some_table { * } some_other_table { col1 c1_alias, col2, 2*2 col_x }


sun: Fix use-after-free of s->mutex in sun_stream_destroy.

cc @niacat for review.

Looks fine, thanks

Thanks!


Create shim for trig functions.

We are not aiming to have vectorised trig for 0.1.0 so instead we will add a shim layer that can do the requisite trig and replace later.

Fixed by #103


Refactor - Parent the Cameras to the OxrTrackingRoot

Looks good to me, Ill try to test on windows steamvr tonight. Can anyone test on android or linux?

Wasn't able to test the code ( lack of vr headset ) but the code itself makes sense to me!

Looks good to me, Ill try to test on windows steamvr tonight. Can anyone test on android or linux?

just tested with mac + android, no problems here! (aside from the slight adjustment I made here #101)

tested on windows and steamvr with a bigscreen beyond, worked great.


Fix build on Azure.

@mariusmuntean it states the following:
error NU1202: Package Microsoft.AspNetCore.Blazor.Cli 0.9.0-preview3-19154-02 is not compatible with netcoreapp2.2
But I'm not sure why it compiles it as a netcoreapp2.2? But it doesn't seem necessary to have the cli in the shared project.
Only in the hosted project.


Add NTP configuration on Bastion

Test cluster could not sync NTP because port 123 had not been opened (firewall-cmd --add-service ntp worked, and has been made --permanent).  This opens up the need to look at Bastion NTP config.
At bare minimum the NTP service needs to be added to firewall.  This may not be enough however if the Bastion is not able to get to Internet time servers (like RH seems to assume everyone can).  This probably needs to be another traffic-light on the "Getting Started" page of the web interface, to flag that something may not work properly later.

Linking this to #35 since they are somewhat related... an alert for NTP setup could be added to the Portal in the same way as Internet connectivity.


Interest to provide UTM(4.7?) alpha release with new Qemu 9.2RC?

Hi,
QEMU 9.2rc0 is released and this week rc1 expected..
QEMU 9.2 it's interesting because of support for >32gb RAM for Mac VMs:
https://github.com/utmapp/UTM/issues/6805
can wait for Qemu 9.2 final release but anyway interest to provide "alpha" release builds with latest Qemu RC?
thanks..

Duplicate of #5537


Linting only processes one item (snakefile/rule)

Snakemake version
5.13.0
Describe the bug
snakemake --lint only lints one rule and one snakefile.
Minimal example
rule one:
    output:
        "tmp"
    shell:
        ";"

rule two:
    output:
        "tmp"
    shell:
        ";"

only lints rule one:
Lints for rule one (line 1, /home/knut/Documents/bug/Snakefile):
    * No log directive defined:
      Without a log directive, all output will be printed to the terminal. In distributed environments, this means that errors are harder to discover. In local environments, output of concurrent jobs will be mixed and become unreadable.
      Also see:
      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
    * Specify a conda environment or container for each rule.:
      This way, the used software for each specific step is documented, and the workflow can be executed on any machine without prerequisites.
      Also see:
      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#integrated-package-management
      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#running-jobs-in-containers

Additional context
Add any other context about the problem here.

Thanks a lot for reporting!


Unable to specify query function without arguments

I'm trying to build a chaincode that supports several basic 'get' functions that don't need any arguments.
How do I specify and implement such a function? I have tried both RecordResult GetRecord(void) = 1; and RecordResult GetRecord() = 1;

I apologize,@shader.  I somehow missed the email notification for your question.
The short answer is: you can't today.  The long answer is, this is perfectly reasonable request.  I will file a bug and get this fixed.

@shader the issue is fixed as of PR #16