force:source:retrieve -x will not retrieve managed components next to wildcard asterisk

Summary
sfdx force:source:retrieve with a manifest will ignore managed components above or below wildcards.
Steps To Reproduce:
Repository to reproduce: dreamhouse-lwc

Install any managed package, if none present.
In a manifest file (like package.xml), for a managed component (eg. a prefixed ApexClass), add a members line for such a managed component alongside the wildcard line (<members>*</members>), as in the image below (members order is not relevant).
Run sfdx force:source:retrieve -x path/to/package.xml.

Expected result
sfdx should retrieve, as per manifest, both the managed component and all unmanaged components.
Actual result
sfdx retrieves only unmanaged components.
System Information
Using VisualStudio's Powershell v5.1.19041.1682.
{
"cliVersion": "sfdx-cli/7.163.0",
"architecture": "win32-x64",
"nodeVersion": "node-v16.16.0",
"pluginVersions": [
"@oclif/plugin-autocomplete 1.3.0 (core)",
"@oclif/plugin-commands 2.2.0 (core)",
"@oclif/plugin-help 5.1.12 (core)",
"@oclif/plugin-not-found 2.3.1 (core)",
"@oclif/plugin-plugins 2.1.0 (core)",
"@oclif/plugin-update 3.0.0 (core)",
"@oclif/plugin-version 1.1.1 (core)",
"@oclif/plugin-warn-if-update-available 2.0.4 (core)",
"@oclif/plugin-which 2.1.0 (core)",
"alias 2.1.0 (core)",
"apex 1.1.0 (core)",
"auth 2.2.3 (core)",
"community 2.0.0 (core)",
"config 1.4.17 (core)",
"custom-metadata 2.0.0 (core)",
"data 2.1.1 (core)",
"generator 2.0.2 (core)",
"info 2.0.1 (core)",
"limits 2.0.1 (core)",
"org 2.0.7 (core)",
"schema 2.1.1 (core)",
"signups 1.2.0 (core)",
"source 2.0.11 (core)",
"telemetry 2.0.0 (core)",
"templates 55.1.0 (core)",
"trust 2.0.3 (core)",
"user 2.1.0 (core)",
"@salesforce/sfdx-plugin-lwc-test 1.0.0 (core)",
"salesforce-alm 54.7.1 (core)"
],
"osVersion": "Windows_NT 10.0.19044"
}
Additional information
JFTR, retrieval with the Ant Migration Tool or workbench.developerforce.com works as expected.
Also, retrieval without a wildcard will fetch the managed components just fine, even alongside (also explicitely listed) unmanaged components.

@jh480 I read your original issue for vscode. I was wondering if you could try fetching the metadata using the sfdx force:mdapi:retrieve command? I would like to see if md retrieve works as expected.
Also, could you try the same using the most recent version of sfdx-cli 7.178.0?

@peternhale I tried both commands with sfdx-cli 7.178.0, both retrieve only the unmanaged components.
I thought for a minute that the ant library might be doing something extra, but at least workbench.developerforce.com can also get a hold of the unmanaged component.

@jh480 I don't believe it is possible to fetch managed package components from a org where the package is installed. I tried doing what your described outside of the CLI, using the metadata retrieve API directly. I get the same results as you, components from the package are not retrieved.
The only way I could get a managed package component was to modify it in a scratch org and the do a source pull.

@peternhale, for one, retrieving alongside wildcards actually works with Ant Migration Tool and Workbench; it's why I came to believe this to be a bug with the CLI.
Also, retrieval of managed components without wildcard works perfectly fine with both force:source:retrieve and force:mdapi:retrieve, even along with (also explicitely listed) unmanaged components.
This is actually how I currently work around this limitation, by explicitely listing every single component. The bother then is keeping the manifest up to date, as unmanaged components come and go much more quickly.

@jh480 - I reproduced what you are seeing.  However, the CLI is doing the correct thing.  This appears to be a server side issue.  When using the command sfdx force:mdapi:retrieve -k package.xml -r outputDir the CLI simply makes a request to the metadata API SOAP endpoint with the provided manifest and polls for the response, then writes the files from the response.  So my interpretation of the behavior is either:

With explicit unpackaged and managed package apex classes defined in a manifest the server is incorrectly sending both managed and unpackaged metadata.  Per the docs here: " contains the name of the server-side package. If no  exists, the package.xml defines a client-side unpackaged package."

-OR-

That doc is wrong/misleading and the wildcard unpackaged metadata usecase should be working.

The best course of action to get this fixed with that team (the server side team who owns this) is to open a support case with them.  I'll close this issue since there is nothing the CLI can do, but you can reference this with support for the new case.

@shetzel, how does this explain the discrepancy between the CLI and ant/Workbench?
Please see https://github.com/forcedotcom/source-deploy-retrieve/blob/main/src/collections/componentSet.ts#L392,
especially the comment "if the type doesn't support mixed wildcards and specific names, overwrite the names to be a wildcard".
As per https://github.com/forcedotcom/source-deploy-retrieve/blob/main/HANDBOOK.md#breaking-down-a-metadata-type-entry, supportsWildcardAndName supposedly is only defined true for CustomObject and DigitalExperienceBundle.
I know I may be making a few leaps here, but the zipped package.xml returned by sfdx force:mdapi:retrieve -k package.xml -r outputDir indeed has stripped out ApexClass members other than the wildcard, but CustomObject on the other hand is left as is defined per the package input. jftr, Workbench leaves both sections as is.

@jh480 - my mistake!  I was sure the force:mdapi:retrieve command did not use a ComponentSet from SDR and instead just used the exact manifest file directly.  I knew about that behavior but didn't think it applied in this case.  Simply adding supportsWildcardAndName to ApexClass in metadataRegistry.json provides the expected behavior.  I'll try to get that in to the release candidate this week.  Thanks for pointing that out and sorry for the bad information!

@shetzel, thank you, but it's not just ApexClass.
Checking my ant manifest, the most interesting to me are (those with moving/profile parts):

ApexClass
ApexPage
CustomApplication
CustomLabel (probably; I use this for managed and CustomLabels for unmanaged)
CustomMetadata
CustomObjectTranslation (unsure; wildcard suffices for everything mentioned in CustomObject)
CustomTab
Flow
FlowDefinition (technically redundant to Flow)
GlobalValueSet
GlobalValueSetTranslation
Layout
Letterhead
PathAssistant
QuickAction
RemoteSiteSetting (unchecked)
ReportType
SharingRules (probably; unsure)
Workflow

I'm very sure (most of) these support wildcard with managed components, but technically, there are likely more.
Though wether supportsWildcardAndName should get turned around to being generally permissive, I couldn't say.

@jh480 - thanks for the data.  This is all very useful.  The supportsWildcardAndName registry property was added with this PR 18 months ago.  The original intent was to support retrieving both CustomObjects and StandardObjects using a wildcard for CustomObjects and by name of specific StandardObjects.  This usecase is similar but different.  However, I think we can use the same registry property for this.  I have no idea what types support it.  I suspect it's the same list that supports wildcard usage, which is unfortunately not available from a describemetadata call (see this old issue).
I can start with the list you noted and see how our tests respond as a first step.  I'm concerned it might have unintended affects with deploy so testing this will be important.  I don't have an ETA for this work yet.

@shetzel No worries.
fyi, the API's listMetadata will return managed Layout, QuickAction, CustomMetadata & GlobalValueSetTranslation components without the necessary namespace prefixes, you'll have to add them manually.
(#1697)

with https://github.com/forcedotcom/source-deploy-retrieve/pull/894 we've hopefully fixed the issue. This has made it's way through our nightly/latest-rc process, and should now be available under the latest tag

Looking good, thanks a bunch!


Model serving signature with SparseTensor input feature

This is a bug report.

System information

Have I written custom code (as opposed to using a stock example script
provided in TensorFlow): Yes
OS Platform and Distribution (e.g., Linux Ubuntu 16.04): MacOSX 11.5.2, GCP Linux hosted instance
TensorFlow installed from (source or binary): TFX 1.0.0 docker image on Linux; on OSX installed binary with pip
TensorFlow version (use command below): 2.5.0
Python version: 3.8.1 and 3.8.5 (Mac), 3.7 (Linux)
Bazel version (if compiling from source): N/A
GCC/Compiler version (if compiling from source): N/A
CUDA/cuDNN version: N/A CPU only
GPU model and memory: N/A
Exact command to reproduce: N/A

Describe the problem
When saving the model signature function with sparse tensor input, (generated from get_concrete_function or tf.function(input_signatures=...) decorator), the recovered model signature no longer accepts sparse tensor as inputs. Here is an example script:
import tensorflow as tf

# Mock a model
input_x = tf.keras.Input(1)
output_y = tf.keras.layers.Dense(1)(input_x)
model = tf.keras.Model(input_x, output_y)

def _get_serving_signature(model):
    @tf.function
    def my_func(x, y):
        x_out = tf.cast(tf.sparse.to_indicator(x, 5), tf.int64)
        return {"x": x_out, "y": y}

    return my_func

# Get the concrete func
concrete_func = _get_serving_signature(model).get_concrete_function(
        x=tf.SparseTensorSpec(shape=[None, None], dtype=tf.int64),
        y=tf.TensorSpec(shape=[None, 1], dtype=tf.int64),
    )

# Store this function inside the model
model.my_func = concrete_func

# Build the signature dict
signatures = { "default": concrete_func}

# save the model
model.save("./serving_dir", save_format="tf", signatures=signatures)

# Load the model back
model2 = tf.keras.models.load_model("./serving_dir")

# Make up some data
x = tf.ragged.constant([[1, 3], [2, 3, 1], [2]], dtype=tf.int64).to_sparse()
y = tf.expand_dims(tf.constant([1, 2, 1], dtype=tf.int64), axis=1)

# Make inference on saved my_func
out_func_attr = model2.my_func(x=x, y=y)

# Make inference using signature
out_signature = model2.signatures["default"](x, y)

During saving of the model, a warning message appears:
WARNING:absl:Function `my_func` contains input name(s) x with unsupported characters which will be renamed to x_2 in the SavedModel.

Calling the saved function as a model attribute returns the correct output
out_func_attr = model2.my_func(x=x, y=y)

{'y': <tf.Tensor: shape=(3, 1), dtype=int64, numpy=
  array([[1],
        [2],
        [1]])>,
  'x': <tf.Tensor: shape=(3, 5), dtype=int64, numpy=
  array([[0, 1, 0, 1, 0],
        [0, 1, 1, 1, 0],
        [0, 0, 1, 0, 0]])>}

Make inference using signature
out_signature = model2.signatures["default"](x, y)

returns the following error:
Traceback (most recent call last):

  File "/Users/edward/opt/anaconda3/lib/python3.8/site-packages/tensorflow/python/eager/function.py", line 1724, in _call_impl
return self._call_with_flat_signature(args, kwargs,

  File "/Users/edward/opt/anaconda3/lib/python3.8/site-packages/tensorflow/python/eager/function.py", line 1748, in _call_with_flat_signature
raise TypeError(

TypeError: signature_wrapper(x, x_1, x_2, y) takes 0 positional arguments but 2 were given

During handling of the above exception, another exception occurred:

Traceback (most recent call last):

  File "/Users/edward/Desktop/sparse_serving.py", line 61, in <module>
    out_signature = model2.signatures["default"](x, y)

  File "/Users/edward/opt/anaconda3/lib/python3.8/site-packages/tensorflow/python/eager/function.py", line 1711, in __call__
    return self._call_impl(args, kwargs)

  File "/Users/edward/opt/anaconda3/lib/python3.8/site-packages/tensorflow/python/eager/function.py", line 1727, in _call_impl
    raise structured_err

  File "/Users/edward/opt/anaconda3/lib/python3.8/site-packages/tensorflow/python/eager/function.py", line 1720, in _call_impl
    return self._call_with_structured_signature(args, kwargs,

  File "/Users/edward/opt/anaconda3/lib/python3.8/site-packages/tensorflow/python/eager/function.py", line 1798, in _call_with_structured_signature
    self._structured_signature_check_missing_args(args, kwargs)

  File "/Users/edward/opt/anaconda3/lib/python3.8/site-packages/tensorflow/python/eager/function.py", line 1817, in _structured_signature_check_missing_args
    raise TypeError("{} missing required arguments: {}".format(

TypeError: signature_wrapper(*, x_2, y, x_1, x) missing required arguments: x, x_1, x_2, y

The saved function attribute model2.my_func is
 <ConcreteFunction my_func(x, y) at 0x7F9D824BBF10>

which is expected.
The signature model2.signatures["default"]  is a
<ConcreteFunction signature_wrapper(*, x_2, y, x_1, x) at 0x7F9D824C5A90>

which is incorrect.
One can also easily modify the above script and verify him/herself that, if x is a dense tensor, with TensorSpec rather than SparseTensorSpec, the serving signature no longer has this problem.

Hi, this is a problem that we are aware of. The current recommendation is switching to saving the function with the model instead of using the signatures argument (which is there mainly for TensorFlow Serving interfacing).
For example:
model = ...

# Before
model.save(..., signatures={"default": serving_fn})

# After
model.serving_fn = serving_fn
model.save(...)

When loading, you can access the serving_fn directly from the model.

@sapphire008,
Could you please take a look at the comment from the developer and try to test in the latest stable version 2.10. Thank you!

Confirming that this is still an issue as of 2.10.0. Workaround above is not acceptable since TF Serving will not be able to serve a function stored this way.

Confirming that this is still an issue as of 2.10.0. Workaround above is not acceptable since TF Serving will not be able to serve a function stored this way. Please reopen this issue @tilakrayal.

Hi, this is a problem that we are aware of. The current recommendation is switching to saving the function with the model instead of using the signatures argument (which is there mainly for TensorFlow Serving interfacing).
For example:
model = ...

# Before
model.save(..., signatures={"default": serving_fn})

# After
model.serving_fn = serving_fn
model.save(...)

When loading, you can access the serving_fn directly from the model.

The need is mainly for saving the serving with the serving signatures during production. This workaround does not help with the use case in production.

Hi,
Thank you for opening this issue. Since this issue has been open for a long time, the code/debug information for this issue may not be relevant with the current state of the code base.
The Tensorflow team is constantly improving the framework by fixing bugs and adding new features. We suggest you try the latest TensorFlow version with the latest compatible hardware configuration which could potentially resolve the issue. If you are still facing the issue, please create a new GitHub issue with your latest findings, with all the debugging information which could help us investigate.
Please follow the release notes to stay up to date with the latest developments which are happening in the Tensorflow space.


Kickassanime not working again

Source information
Kickassanime english 13.32
Source language
English
Steps to reproduce
Trying to play any anime doesn't work and it was just fixed earlier
Expected behavior
Should play the video
Actual behavior
Not playing any anime and keeps saying not able to load
Aniyomi version
App version: 0.14.5-6453
Android version
Android 11
Other details
No response
Acknowledgements

[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open or closed issue.
[X] I have written a short but informative title.
[X] I have updated the app to version <IP_ADDRESS>.
[X] I have updated all installed extensions.
[X] I have tried the troubleshooting guide.
[X] If this is an issue with the app itself, I should be opening an issue in the app repository.
[X] I will fill out all of the requested information in this form.

The extension works just fine for me. Please check that you have enabled all hosts in extension settings. Also, can you give an example of a show that doesn't work?


Query causes server panic

On 0.9.4, the following sample code in the python client reliably causes the server to crash with "panic: runtime error: index out of range"
import time
from influxdb import InfluxDBClient

# populate with fake data
points = []
for i in range(10):
    base_time = int(time.time()*1000000000)
    points.append({'measurement': 'foo',
                   'tags': {'bar':'baz'},
                   'time': base_time,
                   'fields':{
                        'm1' : base_time,
                        'm2' : base_time+1000,
                    }
                  })
client.write_points(points)

# Query crashes server
r = client.query('select m1 - m2 from foo');

@myurko2, thanks for pointing this out. Closing in favor of https://github.com/influxdb/influxdb/issues/4046.


Future Test Refactoring

Follow-up from https://github.com/rollkit/rollkit/pull/963

[ ] Some test helpers are copy-pasted across multiple test files such as https://github.com/rollkit/rollkit/blob/main/da/test/da_test.go#L247. These can be moved to a common rollkit/test package. There are other functions like this in node/full_client_test.go, such as getRandomTx(...) and getRandomBytes(...), and getRPC(...) in rpc/json/service_test.go.
[ ] Create a constant for blocktime for usage in testing
[ ] streamline this common pattern with a new helper:

fullNode, _ := createNode(ctx, 0, false, true, false, keys, t)
	lightNode, _ := createNode(ctx, 1, false, true, true, keys, t)
	fullNode.(*FullNode).dalc = dalc
	fullNode.(*FullNode).blockManager.SetDALC(dalc)

Hi @Manav-Aggarwal & @S1nus, ser this looks like a big task and somewhat related to #1320, as well as other issues. I have past experience writing tests for distributed systems in Golang. I would like to contribute to this issue. Could you please direct me on where to start? I'd like to pick this up piece by piece and start working on it.

Hey @AryanGodara, thanks for offering to contribute on this! I revisited this and seems like a lot of the first part of this issue was done in https://github.com/rollkit/rollkit/pull/1306.
For the first step, I would find any other places where test helpers are copy-pasted and can be moved to a utils file as done in the above PR.

Create a constant for blocktime for usage in testing
Regarding this, I don't think this relevant anymore, tagging @gupadhyaya to confirm.

streamline this common pattern with a new helper
this should be pretty apparent from the description itself, you'll see that pattern in a bunch of places in the codebase so if you find a way to refactor it into a helper that can used cleanly across the codebase, that'd be great as a step too.

I have untagged this as part of vA since the majority of the de-duplication seems to have been covered by https://github.com/rollkit/rollkit/pull/1306.

Hey @AryanGodara, thanks for offering to contribute on this! I revisited this and seems like a lot of the first part of this issue was done in https://github.com/rollkit/rollkit/pull/1306.
For the first step, I would find any other places where test helpers are copy-pasted and can be moved to a utils file as done in the above PR.

Create a constant for blocktime for usage in testing

Regarding this, I don't think this relevant anymore, tagging @gupadhyaya to confirm.

streamline this common pattern with a new helper

this should be pretty apparent from the description itself, you'll see that pattern in a bunch of places in the codebase so if you find a way to refactor it into a helper that can used cleanly across the codebase, that'd be great as a step too.
I have untagged this as part of vA since the majority of the de-duplication seems to have been covered by https://github.com/rollkit/rollkit/pull/1306.

Thanks for the prompt reply @Manav-Aggarwal !! I'll get to this asap, and open a draft PR when I make progress?

@Manav-Aggarwal , I've been looking into these three functions
// GetRandomBlock returns a block with random data
func GetRandomBlock(height uint64, nTxs int) *Block {
	block, _ := GetRandomBlockWithKey(height, nTxs, nil)
	return block
}

func GetRandomBlockWithProposer(height uint64, nTxs int, proposerAddr []byte) *Block {
	block, _ := GetRandomBlockWithKey(height, nTxs, nil)
	block.SignedHeader.ProposerAddress = proposerAddr

	return block
}

// GetRandomBlockWithKey returns a block with random data and a signing key
func GetRandomBlockWithKey(height uint64, nTxs int, privKey ed25519.PrivKey) (*Block, ed25519.PrivKey) {...}

Each just calls GetRandomBlockWithKey
We can just have one GetRandomBlock, and call it as we wish; even make the signedKey an optional variable, or simply pass nil when we don't want to pass in a key explicitly.
All in all, it seems that this is a bit redundant code (to have multiple functions doing the same thing), imo.

Other than this, I went through your previous discussions on assert.New vs assert.Method with testing.t as parameter; I too believe the second approach is better and something I've always used as well. So, I'll update those in the same PR as well, if it's okay

So, I saw that you had already done a great optimization since Go doesn't allow default values, and using the (...) variadic pattern isn't viable here.
So, I looked up alternatives, and thought we could use a config struct, with Functional Options wrapping. So, it'll be just one function, that looks like this:-
// BlockOption is a functional option for creating a block.
type BlockOption func(*BlockOptions)

// BlockOptions is a set of options for creating a block.
type BlockOptions struct {
	privKey      ed25519.PrivKey
	proposerAddr []byte
}

// WithPrivKey sets a private key for signing the block.
func WithPrivKey(privKey ed25519.PrivKey) BlockOption {
	return func(opts *BlockOptions) {
		opts.privKey = privKey
	}
}

// WithProposerAddress sets the proposer address for the block.
func WithProposerAddress(proposerAddr []byte) BlockOption {
	return func(opts *BlockOptions) {
		opts.proposerAddr = proposerAddr
	}
}

// GetRandomBlock returns a block with random data and the given height
func GetRandomBlock(height uint64, nTxs int, options ...BlockOption) (*Block, ed25519.PrivKey) {
	blockOpts := BlockOptions{}
	for _, option := range options {
		option(&blockOpts)
	}

	block := getBlockDataWith(nTxs)
	dataHash, err := block.Data.Hash()
	if err != nil {
		panic(err)
	}

	signedHeader, privKey, err := GetRandomSignedHeaderWith(height, dataHash, blockOpts.privKey)
	if err != nil {
		panic(err)
	}
	block.SignedHeader = *signedHeader

	if blockOpts.proposerAddr != nil {
		block.SignedHeader.ProposerAddress = blockOpts.proposerAddr
	}

	return block, privKey
}

@Manav-Aggarwal Accordin to this comment, do we still want the require.New() to be removed from all tests and shift to require.Method() approach (same with assert).
Because rn, it's a mix of both these approaches, in different functions, and maybe we can stick to one approach?

Done in https://github.com/rollkit/rollkit/pull/1545


Error when building users-service and inventory-service

/users-service/node_modules/@types/chai-json-schema/index.d.ts(28,36): error TS2694: Namespace 'Chai' has no exported member 'ChaiPlugin'.

What's your OS and nodejs version?

I have replicated this error, a fix should come out soon

Thank you for respond, this is not the only error when I build the source code, I'm using win10 1903 and nodeJS <IP_ADDRESS>, hope everything will be fine on next release, thank you for the great work.

Fixed in https://github.com/L-Leite/cso2-users-service/commit/9bbd207 and https://github.com/L-Leite/cso2-inventory-service/commit/f5b8e10c92ff60148e151bf2b98a8cc804672238
I'm working on updating webapp and the master server to use these new versions, since their API changed


Microsoft.Data.SqlClient.SqlException: 'Could not find stored procedure 'FoundationConfiguration_List'.'

Describe the bug
Microsoft.Data.SqlClient.SqlException: 'Could not find stored procedure 'FoundationConfiguration_List'.'
To Reproduce
i have installed foundation code in visual studio 2022 and created database through below commands

dotnet-episerver create-cms-database Foundation.csproj -S servername -U sa -P "sa"
dotnet-episerver create-commerce-database Foundation.csproj -S servername -U sa -P "sa"

when i run the solution locally on my machine i m getting below errors , dont know whow to resolve this
error : Microsoft.Data.SqlClient.SqlException: 'Could not find stored procedure 'FoundationConfiguration_List'.'
Please help

Have you executed the setup.cmd file (or setup.sh file) located in the root of the Foundation project? This file does different things, but one of the tasks is to create database elements.

Hi, have same issue, i used setup.cmd and resetup.cmd multiple times but still same issue


fix(GUI): update notifier transformRequest error on unstable connection

Etcher checks what is the latest version by making an HTTP request to S3
in order to see if it should present the update notifier modal at
startup.
If the user is on an unstable connection, the request might timeout,
leading to a weird error message being presented to the user:
{
  "data": null,
  "status": -1,
  "config": {
    "method": "GET",
    "transformRequest": [null],
    "transformResponse": [null],
    "url": "https://resin-production-downloads.s3.amazonaws.com",
    "headers": {
      "Accept": "application/json, text/plain, */*"
    }
  },
  "statusText": ""
}

To solve the error, we tweak UpdateNotifierService.getLatestVersion()
to resolve the current version if there was a problem making the request
(e.g: the response didn't come through at all), which after some
experimentation, we can check by comparing the status property with
-1.
This error happens in all operating systems, and currently is trending
on TrackJS.
Change-Type: patch
Changelog-Entry: Fix transformRequest error at startup when on an unstable connection.
Signed-off-by: Juan Cruz Viotti<EMAIL_ADDRESS>

Does this also cover the case of Etcher being run on a computer with no network connection at all? (yes kids, such things do exist!) Or is that already covered by some other error-flow?

Does this also cover the case of Etcher being run on a computer with no network connection at all? (yes kids, such things do exist!) Or is that already covered by some other error-flow?

Amazing catch. I never tested Etcher without internet connection, and that also triggers the transformRequest bug. I'll update the PR message to reflect this as well.

So what happens when TrackJS isn't able to log that Etcher doesn't have an internet connection...? :rofl:

I confirm the TrackJS module reacts fine to those cases!


The hippocampal formation: cortex or subcortex?

The issue
tl;dr The Allen Institute ontology classifies hippocampus as part of cortex, not subcortex, which could cause problems for matching some microarray samples to ROIs.

When users provide a file or dataframe to the atlas_info parameter in abagen.get_expression_data() they are required to specify a broad structural class for each region in their atlas (in a column labelled 'structure' in the file/dataframe). The current options for this structural class include:

cortex,
subcortex,
cerebellum,
brainstem,
white matter, and
other (i.e., ventricles and such)

We match these designations with the information from the Allen ontology such that samples that don't fall directly within a region in the atlas aren't incorrectly assigned to regions in atlas across hemispheric / structural boundaries.
That is, if one of the samples from the Allen Institute is labelled as having come from the left hemisphere subcortex we make sure to only assign it to a region in the user-specified atlas labelled as belonging to the left hemisphere subcortex. This impacts only a minority of samples (i.e., we don't currently check whether this is the case for those samples having coordinates directly within a region in the atlas), but a significant minority, nonetheless.
While matching these designations seems like a reasonable approach in most cases, the one point of contention that a general user might have is that the Allen Institute ontology classifies the hippocampal formation (including the subiculum, dentate gyrus, and CA1-4) as part of "cortex" rather than "subcortex".  Specifically, their ontology specifies:
brain
└─ gray matter
   └─ telencephalon
      └─ cerebral cortex
         └─ limbic lobe
            └─ hippocampal formation

Thus, if a researcher provides an atlas where they label all their hippocampal ROIs as "subcortex" they're liable to get vastly different results than if they label all their hippocampal ROIs as "cortex."
While I have it on good authority that the hippocampus is often considered part of "allocortex," I'm hesitant to add this as a permissible structural class to abagen since it seems quite a bit more specific than the current (rather broad) structural designations listed above (1-6).
Proposed solution
I genuinely don't know! It would be great to allow either specification for the hippocampus (i.e., "cortex" or "subcortex"), but the current framework for getting these structural classes from the Allen ontology doesn't allow for this hedging. I can think about how to modify it for this one instance in particular, but in the interim it would be great to come up with alternatives.
One option that might be worthwhile is to simply allow users to specify either (or both) of the expected 'hemisphere' and 'structure' information in atlas_info and just use whatever is available. Then, users who have hippocampal ROIs can refrain from specifying the 'structure' for their ROIs and we'll do our best to ensure samples simply don't cross hemispheric boundaries. This isn't necessarily ideal because there's the possibility that samples will get incorrectly assigned across e.g., cortical/subcortical boundaries for regions that aren't the hippocampus (but we might still consider this option outside of the current problem!).
Alternatively (and perhaps most immediately appealing), we can add a warning on the documentation about this designation and inform users to specify that their hippocampal ROIs are part of "cortex" (not "subcortex") when they provide atlas_info.

Alright, so here's what we're going to do to force hippocampus to be counted as part of subcortex:

Modify the abagen.samples.ONTOLOGY object to include the hippocampal formation structure code and label it as subcortex.
Modify abagen.samples._get_struct() such that if a path contains multiple IDs present in the ONTOLOGY object it selects the structure corresponding to the ID that occurs latest in the structure path.

An example
>>> ONTOLOGY = Recoder(
    (('4008', 'cerebral cortex', 'cortex'),
     ('4275', 'cerebral nuclei', 'subcortex'),
     ('4391', 'diencephalon', 'subcortex'),
     ('9001', 'mesencephalon', 'subcortex'),
     ('4696', 'cerebellum', 'cerebellum'),
     ('9131', 'pons', 'brainstem'),
     ('9512', 'myelencephalon', 'brainstem'),
     ('9218', 'white matter', 'white matter'),
     ('9352', 'sulci & spaces', 'other'),
     ('4219', 'hippocampal formation', 'subcortex')),
    fields=('id', 'name', 'structure')
)

>>> path = '/4005/4006/4007/4008/4219/4249/12896/4251/'
>>> abagen.samples._get_struct(path)
'subcortex'

Note that the path object contains both ids '4008' (corresponding to cerebral cortex) and '4219' (corresponding to the hippocampal formation) which are both present in ONTOLOGY; however, since '4219' occurs later in the path, we select that ID and grba the relevant structure (i.e., 'subcortex').
We should be able to accomplish this by modifying the _get_struct() function to sort the matching ids by a key, where the key=lambda x: path.index(x), and then use the last id in the sorted list.


[Discussion] Beamer Flutter's Favorite 👏👏🎉🎉

Good job @slovnicki thanks to your work Beamer in now Flutter Favorite 👏🎉

I have not seen any news about this event, but it seems Beamer has been added to Flutter's favorite recently.
So now, for navigation 2.0, go_router and beamer are the only two Flutter favorite packages ?

@dleurs Package routemaster is also a Flutter Favorite. The Navigator 2.0 routing packages beamer, go_router and routemaster got their Flutter Favorite badge when Flutter 2.8 was released Dec 9, 2021, for reference see:
https://medium.com/flutter/whats-new-in-flutter-2-8-d085b763d181


Add authentication provider field in the token

Why do you need the auth_provider in the token?

Hi @butonic, the goal with this is to be able to know from the token payload how the user was authenticated. We need this as we have some auth mechanism (like the machine type) that allows to impersonate the user and today you cannot differentiate if the token was generated by the physical user or because of an impersonation without scrapping logs. This helps for auditing purposes.

@butonic please review as I'll like this one to be part of the new release for OCIS.

@butonic

Hi @butonic, the goal with this is to be able to know from the token payload how the user was authenticated. We need this as we have some auth mechanism (like the machine type) that allows to impersonate the user and today you cannot differentiate if the token was generated by the physical user or because of an impersonation without scrapping logs. This helps for auditing purposes.
Hm, especially for impersonating users I would expect the identities of both: the impersonator and the user. That way every service can log both identities in an audit log. Furthermore, in the web ui you may want to show that the user is being impersonated, which also requires both identities in the token ... or a second token.
The auth_type value is just the driver used to authenticate: basic, bearer and so on.
This will require aggregating logs via spans.

What do you think about putting both identities in the token?

@labkode What do you think about putting both identities in the token?

I agree with this. We already have the user object in the token and I think that should indicate whether an admin is impersonating some other user. Maybe we can have a custom Id.OpaqueId for such cases, and also indicate this in the UserType field?

Sounds good, but probably modifying the UserType with a custom one can
break something in the code, because this should be the one of the
impersonated user. Why don't we do the same you proposed, but using the
User.Opaque field, in which insert the user that impersonate?
On Tue, 21 Sep 2021, 10:29 Ishank Arora, @.***> wrote:

@labkode https://github.com/labkode What do you think about putting
both identities in the token?
I agree with this. We already have the user object in the token and I
think that should indicate whether an admin is impersonating some other
user. Maybe we can have a custom Id.OpaqueId for such cases, and also
indicate this in the UserType field?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/cs3org/reva/pull/2031#issuecomment-923756632, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AJQYQQKHS5KSAO3JOFBOFNTUDA64ZANCNFSM5DGVEZVA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.


fix: ticker dispose problem while enable passing false

Exception:
Looking up a deactivated widget's ancestor is unsafe. At this point the state of the widget's element tree is no longer stable. To safely refer to a widget's ancestor in its dispose() method, save a reference to the ancestor by calling dependOnInheritedWidgetOfExactType() in the widget's didChangeDependencies() method.
StatefulElement#04b6c(DEFUNCT)(no widget, state: _OverscrollPopState#dc799(ticker inactive))
** We are preventing unnecessary ticker creation with this PR.

@SalihCanBinboga Need to check didUpdateWidget in case widget.enable is changed.
Anyway, I fixed it different way, you can have a look at latest code.
Thank you.

@SalihCanBinboga Need to check didUpdateWidget in case widget.enable is changed. Anyway, I fixed it different way, you can have a look at latest code. Thank you.

Hey, first of all thank you quick answering and at the initState stage, if the animation controller is not created when enabled is false, it will prevent the creation of a ticker, which in turn will avoid unnecessary memory usage when the screen is opened. Initializing it based on the enabled check will be more beneficial for performance. Therefore, I recommend preventing unnecessary initialization. @luunc

@SalihCanBinboga , I understand your concern. However, can you try setting enable from false to true and move the widget around to pop a route to see what may happen? That might be a bigger bug.


Release volley for 1.3.20-ga

Description
Artifacts and version markdowns for the release of 1.3.20 today (12.10.2024)
By submitting this pull request, I confirm that my contribution is made under the terms of the BSD-3-Clause License.

thanks @nateynateynate

Release delayed. Don't fire until release day!


Release 0.53.0

Target release date is the end of January 2023

releasing to get the fix for #4284 out.


New Game Released - SC2KRender

https://store.steampowered.com/app/1527140/SC2KRender/
Also here's the GitHub: https://github.com/alekasm/SC2KRender

Thanks so much!
https://github.com/microsoft/DirectXTK/wiki/Game-Gallery


New IP Addresses

Hi,
We have see a number of new IP addresses from App Insights that aren't in this list, is this due to be updated?
<IP_ADDRESS>
<IP_ADDRESS>
<IP_ADDRESS>
<IP_ADDRESS>
<IP_ADDRESS>
<IP_ADDRESS>
<IP_ADDRESS>
<IP_ADDRESS>
<IP_ADDRESS>
<IP_ADDRESS>
<IP_ADDRESS>
<IP_ADDRESS>
<IP_ADDRESS>
<IP_ADDRESS>
<IP_ADDRESS>
Thanks,
David

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 3942b937-b212-3ceb-d356-450b7f598f68
Version Independent ID: 8b015b42-cf02-3942-3cc3-6e0f977d191a
Content: IP addresses used by Application Insights and Log Analytics
Content Source: articles/application-insights/app-insights-ip-addresses.md
Service: application-insights
GitHub Login: @mrbullwinkle
Microsoft Alias: mbullwin

@davidhendrickmb thank you for your question. Yes, the team who owns that infrastructure was doing some updates yesterday. We are working with them to better coordinate this in the future. Once we have the final list of IPs from that team today we will update the doc.

@davidhendrickmb, @HQX-TBrown, thank you both for the feedback and for highlighting the negative impact of the current workflow when changes like these happen. I have taken your feedback directly to the PMs who own this functionality and to the SRE team that manages the underlying infrastructure. They received similar feedback from a number of other customers through various other channels this past week. I know the engineering team is looking at the model traffic manager has put in place whereby IP changes to a static doc are no longer required and IP address ranges can be queried on-demand so that customers can build their own unique whitelist automation/notification systems rather than wait on the inevitable lag between changes to the infrastructure and the docs. I don't know if this is the path they will ultimately take, but they are definitely looking for a solution and understand that that the process needs to change. Traffic manager example:
Traffic Manager Docs
https://azuretrafficmanagerdata.blob.core.windows.net/probes/azure/probe-ip-ranges.json

#please-close

Thanks for the updates @mrbullwinkle

@mrbullwinkle is there a JSON file with the availability test IP addresses?
Thanks again,
David

@davidhendrickmb unfortunately not yet, but that is one of the possibilities we are asking the engineering team to look at adding.

@davidhendrickmb We will now proceed to close this thread. If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.

@mrbullwinkle
The following Powershell should list all TrafficManagers ip adresses, but 1 that is in the url is missing: ((Get-AzNetworkServiceTag -Location WestEurope).Values | Where-Object { $_.name -eq 'AzureTrafficManager' } | Select-Object properties).properties.addressPrefixes
According to the url https://azuretrafficmanagerdata.blob.core.windows.net/probes/azure/probe-ip-ranges.json, the ip address '<IP_ADDRESS>/32' should be returned, but this is not the case:
I know that the official source is this: https://www.microsoft.com/en-us/download/confirmation.aspx?id=56519 and the IP is not there, but the url wasn't updated.
Is there any way for you to reach the url owner and request an update?


HTML

#HTML
##User story
As a bootcamp student I'll be sure to be organized
Acceptance criteria
When I visit Github, then I visit four boxes

HTML BEGINNER CODE done


IP Addresses not formated as text

Get-NetIPAddress -AddressFamily IPv4 | Select-Object IPAddress,InterfaceAlias,ifIndex,PrefixLength| Export-Excel -Path 'C:\Temp\IPAddresses.xlsx' -WorkSheetname 'IPAddresses' -Show
If you try this you'll see that the ip-address is shown as number

I'm not positive if I'm seeing what you're getting. It may have been fixed recently.

I use the lastet Module Version (Excel is in German!?)

I think it is related to the difference in the number separator character, I am seeing the same as solaf in a Danish version of Excel.

prima that works well

Thanks @Claustn. Nice workaround.


Autoplay ads

There's a way to start advertising video automatically? without the click ?
normal "autoplay" in video tag doesn't work.
Thank you

You can auto-play the video by executing the code in the samples' click listener automatically instead of on click. For example, to modify the advanced sample to play automatically, I'd change the following:

Remove the following:

// Start ads when the video player is clicked, but only the first time it's
// clicked.
this.clickedOnce = false;
this.player.on('click', this.bind(this, function() {
    if (!this.clickedOnce) {
      this.init();
      this.clickedOnce = true;
    }
}));

After calling this.player.ima(...), call this.init.

The advanced code doesn't have that exact code? Has it been updated?
I have it setup using the simple example, how would I go about auto-playing the video and the ima sdk?

The changes would be similar for the simple sample - currently it's set up in ads.js to respond to a click with calls to the ima plugin. You can just remove the part where it's waiting for a click, and make those calls on page load. Currently the code looks like this:
// Initialize the ad container when the video player is clicked, but only the
// first time it's clicked.
var startEvent = 'click';
if (navigator.userAgent.match(/iPhone/i) ||
    navigator.userAgent.match(/iPad/i) ||
    navigator.userAgent.match(/Android/i)) {
  startEvent = 'tap';
}

player.one(startEvent, function() {
    player.ima.initializeAdDisplayContainer();
    player.ima.requestAds();
    player.play();
});

You want to body of the click listener to run on page load instead of on click, so get rid of all the code in the above snippet except for the body of the listener. All of the code in the above snippet would now be replaced by this:
player.ima.initializeAdDisplayContainer();
player.ima.requestAds();
player.play();

Now instead of waiting for a click, it will just run on page load. Note that this will not work on mobile devices - those devices require the video player to be initialized as the result of a user action, so you would need to call initializeAdDisplayContainer as the result of a click or tap.
If you just want the simple sample to work you can stop reading now :) Below I clear up the confusion with the advanced sample code provided above.
Sorry for the confusion with the previous snippet - I was looking at an older version of the advanced sample. That code in the large snippet has been replaced by the following:
  // Start ads when the video player is clicked, but only the first time it's
  // clicked.
  var startEvent = 'click';
  if (navigator.userAgent.match(/iPhone/i) ||
      navigator.userAgent.match(/iPad/i) ||
      navigator.userAgent.match(/Android/i)) {
    startEvent = 'tap';
  }
  this.player.one(startEvent, this.bind(this, this.init));

Thanks! makes total sense now!

Hi!,autoplay not work on my demo.
can you please!, checked the issue:
Link:  http://5th-angle.esy.es/dfp-mat/test-autoplay.php

Were you able to take advantage of the snippets I posted further up this issue? It looks like your code is unchanged, and for auto-play to work you'll need to make the changes I mentioned above.

Hi!,still the same.
link: http://5th-angle.esy.es/dfp-mat/autoplay.php
not sure what part i need to changed on ads.js

It looks like you still haven't made the changes listed above - you still have the code to start the video in an event handler, which you don't want. You'll need to modify your code as outlined  here.

Closing for lack of response - if you still need help let me know!


Fix boot event.

Should be type not action, not spotted as in this one scenario (not
using the hook) deployment was typed any.

I tested the event locally as it won't be triggered on the review branch.


Get-CyAPI -Console  returns 401 error

I can acquire the access token and auth token with a python script; but when I run Get-CyAPI -Console  I get this error:
Get-CyAPI : Could not get valid API token.
At C:\Program Files\WindowsPowerShell\Modules\CyCLI\CyAPI.ps1:155 char:17

            Get-CyAPI @args

            ~~~~~~~~~~~~~~~

CategoryInfo          : NotSpecified: (:) [Write-Error], WriteErrorException
FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException,Get-CyAPI

The remote server returned an error: (401) Unauthorized.
Any help would be greatly appreciated.

Please provide the full command you are using to create the console
account, and then to use get-cyapi. Replace the confidential bits with
people placeholders of course. Make sure you follow the instructions.
On Fri, Jun 7, 2019, 19:08 3133780X<EMAIL_ADDRESS>wrote:

I can acquire the access token and auth token with a python script; but
when I run Get-CyAPI -Console I get this error:
Get-CyAPI : Could not get valid API token.
At C:\Program Files\WindowsPowerShell\Modules\CyCLI\CyAPI.ps1:155 char:17

           Get-CyAPI @args

           ~~~~~~~~~~~~~~~

CategoryInfo : NotSpecified: (:) [Write-Error], WriteErrorException

FullyQualifiedErrorId :
Microsoft.PowerShell.Commands.WriteErrorException,Get-CyAPI

The remote server returned an error: (401) Unauthorized.
Any help would be greatly appreciated.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/jan-tee/cycli/issues/13?email_source=notifications&email_token=ADNF6VVEA5SWPWP3ZCEKV53PZKIZTA5CNFSM4HVY2J5KYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4GYJSADQ,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADNF6VTVOLVDUMXRRHTG6WDPZKIZTANCNFSM4HVY2J5A
.

I am using this command and filling in our company specific details:
New-CyConsoleConfig
I then fill in the tenantID, APIid, APIsecret, etc.
This creates the consoled.json file with everything populated except for the "Token": "" parameter.
At this point I ran Get-CyAPI -Console
This is when I receive the 401 error fully detailed above.

Are you running Get-CyAPI with the same user ID? That's required because the credentials are protected using DPAPI

New-CyConsoleConfig attempts to connect. It apparently succeeds, or it would give you an exception...?

To my knowledge I am not supplying any specific user ID or credential set for any of these commands except for the API/tenant/secret credentials required for interacting with the Cylance API.
The New-CyConsoleConfig command appears to succeed; although all I can see it doing is taking my input and creating the consoles.json file from those inputs.
Please forgive my ignorance. This is my first foray into Cylance and the realm of its API.

I am talking about the Windows user that runs the Powershell commands.
New-Cy... writes an entry that can only be traf by the same Windows user.
On Fri, Jun 7, 2019, 19:44 3133780X<EMAIL_ADDRESS>wrote:

To my knowledge I am not supplying any specific user ID or credential set
for any of these commands except for the API/tenant/secret credentials
required for interacting with the Cylance API.
The New-CyConsoleConfig command appears to succeed; although all I can see
it doing is taking my input and creating the consoles.json file from those
inputs.
Please forgive my ignorance. This is my first foray into Cylance and the
realm of its API.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/jan-tee/cycli/issues/13?email_source=notifications&email_token=ADNF6VWZY3O5UST5KHQVS7DPZKM6ZA5CNFSM4HVY2J5KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODXGQQ6Q#issuecomment-499976314,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADNF6VU7VFHEXDSKRDQR2ZTPZKM6ZANCNFSM4HVY2J5A
.

Yes, this is all being done in the same profile on the same machine logged on as the same windows user.

Then it is very strange. Can you please remove the consoles.json, return both commands, and use -Verbose as an option, record the output, remove all confidential info, and provide the output?

COMMAND 1:
PS C:\Users\PROFILE> New-CyConsoleConfig -Verbose
cmdlet New-CyConsoleConfig at command pipeline position 1
Supply values for the following parameters:
Console:
APIId:
APITenantId:
COMMAND 2:
PS C:\Users\PROFILE\Documents\Scripts\cycli-0.5.4> Get-CyAPI -Console CONSOLE_ID
ConvertTo-Base64UrlEncoding : The term 'ConvertTo-Base64UrlEncoding' is not recognized as the name of a cmdlet, function,
script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is
correct and try again.
At C:\Users\PROFILE\Documents\Scripts\cycli-0.5.4\CyCrypto.ps1:72 char:10

$h = ConvertTo-Base64UrlEncoding $h_json

     ~~~~~~~~~~~~~~~~~~~~~~~~~~~

CategoryInfo          : ObjectNotFound: (ConvertTo-Base64UrlEncoding:String) [], CommandNotFoundException
FullyQualifiedErrorId : CommandNotFoundException

ConvertTo-Base64UrlEncoding : The term 'ConvertTo-Base64UrlEncoding' is not recognized as the name of a cmdlet, function,
script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is
correct and try again.
At C:\Users\PROFILE\Documents\Scripts\cycli-0.5.4\CyCrypto.ps1:73 char:10

$p = ConvertTo-Base64UrlEncoding $p_json

     ~~~~~~~~~~~~~~~~~~~~~~~~~~~

CategoryInfo          : ObjectNotFound: (ConvertTo-Base64UrlEncoding:String) [], CommandNotFoundException
FullyQualifiedErrorId : CommandNotFoundException

ConvertTo-Base64UrlEncoding : The term 'ConvertTo-Base64UrlEncoding' is not recognized as the name of a cmdlet, function,
script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is
correct and try again.
At C:\Users\PROFILE\Documents\Scripts\cycli-0.5.4\CyCrypto.ps1:15 char:5

ConvertTo-Base64UrlEncoding $signatureBytes

~~~~~~~~~~~~~~~~~~~~~~~~~~~

CategoryInfo          : ObjectNotFound: (ConvertTo-Base64UrlEncoding:String) [], CommandNotFoundException
FullyQualifiedErrorId : CommandNotFoundException

Get-CyAPI : Could not get valid API token.
At C:\Users\PROFILE\Documents\Scripts\cycli-0.5.4\CyAPI.ps1:155 char:17

            Get-CyAPI @args

            ~~~~~~~~~~~~~~~

CategoryInfo          : NotSpecified: (:) [Write-Error], WriteErrorException
FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException,Get-CyAPI

The remote server returned an error: (401) Unauthorized.

Why are you using an ancient version and not installing from
Powershellgallery...?
Please have a look at the README
On Fri, Jun 7, 2019, 20:01 3133780X<EMAIL_ADDRESS>wrote:

COMMAND 1:
PS C:\Users\PROFILE> New-CyConsoleConfig -Verbose
cmdlet New-CyConsoleConfig at command pipeline position 1
Supply values for the following parameters:
Console:
APIId:
APITenantId:
COMMAND 2:
PS C:\Users\PROFILE\Documents\Scripts\cycli-0.5.4> Get-CyAPI -Console
CONSOLE_ID
ConvertTo-Base64UrlEncoding : The term 'ConvertTo-Base64UrlEncoding' is
not recognized as the name of a cmdlet, function,
script file, or operable program. Check the spelling of the name, or if a
path was included, verify that the path is
correct and try again.
At C:\Users\PROFILE\Documents\Scripts\cycli-0.5.4\CyCrypto.ps1:72 char:10

$h = ConvertTo-Base64UrlEncoding $h_json

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~

CategoryInfo : ObjectNotFound: (ConvertTo-Base64UrlEncoding:String)
[], CommandNotFoundException

FullyQualifiedErrorId : CommandNotFoundException

ConvertTo-Base64UrlEncoding : The term 'ConvertTo-Base64UrlEncoding' is
not recognized as the name of a cmdlet, function,
script file, or operable program. Check the spelling of the name, or if a
path was included, verify that the path is
correct and try again.
At C:\Users\PROFILE\Documents\Scripts\cycli-0.5.4\CyCrypto.ps1:73 char:10

$p = ConvertTo-Base64UrlEncoding $p_json

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~

CategoryInfo : ObjectNotFound: (ConvertTo-Base64UrlEncoding:String)
[], CommandNotFoundException

FullyQualifiedErrorId : CommandNotFoundException

ConvertTo-Base64UrlEncoding : The term 'ConvertTo-Base64UrlEncoding' is
not recognized as the name of a cmdlet, function,
script file, or operable program. Check the spelling of the name, or if a
path was included, verify that the path is
correct and try again.
At C:\Users\PROFILE\Documents\Scripts\cycli-0.5.4\CyCrypto.ps1:15 char:5

ConvertTo-Base64UrlEncoding $signatureBytes

- CategoryInfo : ObjectNotFound: (ConvertTo-Base64UrlEncoding:String)
   [], CommandNotFoundException
   - FullyQualifiedErrorId : CommandNotFoundException

Get-CyAPI : Could not get valid API token.
At C:\Users\PROFILE\Documents\Scripts\cycli-0.5.4\CyAPI.ps1:155 char:17

-

            Get-CyAPI @args

-

            ~~~~~~~~~~~~~~~

- CategoryInfo : NotSpecified: (:) [Write-Error], WriteErrorException
   - FullyQualifiedErrorId :
   Microsoft.PowerShell.Commands.WriteErrorException,Get-CyAPI

The remote server returned an error: (401) Unauthorized.

—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<https://github.com/jan-tee/cycli/issues/13?email_source=notifications&email_token=ADNF6VV34TXFI7NXKSBWTZLPZKO6DA5CNFSM4HVY2J5KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODXGR6RA#issuecomment-499982148>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ADNF6VRSTBSU4UDRM7RNKL3PZKO6DANCNFSM4HVY2J5A>
.

The only version under releases is the version I pulled down. I do not see where in the README it mentions another method of pulling down another version from another source.

You can't miss it in the readme, on this site, under code. When you open
GitHub.com/jan-tee/CyCLI/ it is the page that is displayed, same for all
GitHub repos. It has detailed instructions and also links to a repository
with examples.
The old release on the released page is from a time when installing from
GitHub was recommended.
I will remove it to prevent others from having the same issue. There are
2000+ downloads from Powershellgallery though, it's the preferred method
and the README documents that too.
On Fri, Jun 7, 2019, 20:12 3133780X<EMAIL_ADDRESS>wrote:

The only version under releases is the version I pulled down. I do not see
where in the README it mentions another method of pulling down another
version from another source.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/jan-tee/cycli/issues/13?email_source=notifications&email_token=ADNF6VWRT4ISQFPXZT7KPRTPZKQHPA5CNFSM4HVY2J5KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODXGS3QQ#issuecomment-499985858,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADNF6VQ5NF5J6KYGIQH7C43PZKQHPANCNFSM4HVY2J5A
.

I now have the current version and am receiving this error:
Get-CyAPI : System.Net.WebException: The remote server returned an error: (401) Unauthorized.
at Microsoft.PowerShell.Commands.WebRequestPSCmdlet.GetResponse(WebRequest request)
at Microsoft.PowerShell.Commands.WebRequestPSCmdlet.ProcessRecord()
At C:\Program Files\WindowsPowerShell\Modules\CyCLI\0.9.7\CyAPI.ps1:180 char:17

            Get-CyAPI @rest

            ~~~~~~~~~~~~~~~

CategoryInfo          : NotSpecified: (:) [Write-Error], WriteErrorException
FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException,Get-CyAPI

Get-CyAPI : Could not obtain valid API token. This may mean that (a) your API credentials are incorrect or (b) your API
auth URL is incorrect (use Get-Help Get-CyAPI to get a list of URLs), and your code is attempting to authenticate to the
wrong global API instance, or (c) the time or time zone on your device is set incorrectly.
At C:\Program Files\WindowsPowerShell\Modules\CyCLI\0.9.7\CyAPI.ps1:180 char:17

            Get-CyAPI @rest

            ~~~~~~~~~~~~~~~

CategoryInfo          : NotSpecified: (:) [Write-Error], WriteErrorException
FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException,Get-CyAPI

The remote server returned an error: (401) Unauthorized.
At C:\Program Files\WindowsPowerShell\Modules\CyCLI\0.9.7\CyAPI.ps1:143 char:21

                throw $_.Exception

                ~~~~~~~~~~~~~~~~~~

CategoryInfo          : OperationStopped: (:) [], WebException
FullyQualifiedErrorId : The remote server returned an error: (401) Unauthorized.

If I attempt to authenticate via the Cylance provided python script using the same details, it is successful.

That's great but not really indicative of the cause.
You must be missing something. Most likely the -Region parameter for the
console. Did you remove the old consoles.json and recreate it?
On Fri, Jun 7, 2019, 20:42 3133780X<EMAIL_ADDRESS>wrote:

If I attempt to authenticate via the Cylance provided python script using
the same details, it is successful.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/jan-tee/cycli/issues/13?email_source=notifications&email_token=ADNF6VUYCDFZ5XXPCCRWVPLPZKTXRA5CNFSM4HVY2J5KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODXGVJCI#issuecomment-499995785,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADNF6VSWNAETMZEE5DR4KGDPZKTXRANCNFSM4HVY2J5A
.

that was part of the problem. I recreated the consoles.json file and it asked for the -Region parameter. I entered us. This was the resulting error:
Get-CyAPI : System.Net.WebException: The remote server returned an error: (401) Unauthorized.
at Microsoft.PowerShell.Commands.WebRequestPSCmdlet.GetResponse(WebRequest request)
at Microsoft.PowerShell.Commands.WebRequestPSCmdlet.ProcessRecord()
At C:\Program Files\WindowsPowerShell\Modules\CyCLI\0.9.7\CyHelper.ps1:164 char:21

...     $null = Get-CyAPI -APIId $APIId -APISecret $APISecret -APITenantI ...

            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

CategoryInfo          : NotSpecified: (:) [Write-Error], WriteErrorException
FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException,Get-CyAPI

Get-CyAPI : Could not obtain valid API token. This may mean that (a) your API credentials are incorrect or (b)
your API auth URL is incorrect (use Get-Help Get-CyAPI to get a list of URLs), and your code is attempting to
authenticate to the wrong global API instance, or (c) the time or time zone on your device is set incorrectly.
At C:\Program Files\WindowsPowerShell\Modules\CyCLI\0.9.7\CyHelper.ps1:164 char:21

...     $null = Get-CyAPI -APIId $APIId -APISecret $APISecret -APITenantI ...

            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

CategoryInfo          : NotSpecified: (:) [Write-Error], WriteErrorException
FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException,Get-CyAPI

The remote server returned an error: (401) Unauthorized.

Are you using the App ID or Tenant ID as the Console ID after setting up consoles.json? If so, that's incorrect. This is a user set-able value  you select when you run New-ConsoleConfig

Thanks for your reply Plloi. I am not using the App/Tenant ID as the Console ID. My app/tenant IDs are acquired from out cylance portal; and the console ID is https://login.cylance.com/Login

That might actually be causing a problem, try using a simple name for the console ID like CompanyNameCylanceAPI. The Console ID is just use to identify a configured console by CyCLI and it's value doesn't have to be anything specific.

The console id is a user-settable value used to identify your console. From the README:

The Console argument throughout the module is a string that you can use to reference a set of credentials, so you do not have to remember/reference it yourself. An added advantage is that credentials are stored protected by DPAPI and you do not need to worry about accidentally sharing them when sharing your scripts.

In the output you only supplied the output of Get-CyAPI, not the output of the New-CyConsoleConfig command. Please run both with -verbose as the argument, redact any secrets, and send it again.
Please keep in mind that the secret cannot be supplied as a STRING, only as a SecureString, if you intend to pass it as a variable. If you provide it interactively you can copy/paste a string, it will be converted automatically.

This is the README that also links to examples: https://github.com/jan-tee/cycli

Thank you for clarifying my misunderstanding regarding the consoleID.
When I run the New-CyConsoleConfig command with -Verbose I get the following output as listed above:
PS C:\Users\PROFILE> New-CyConsoleConfig -Verbose
cmdlet New-CyConsoleConfig at command pipeline position 1
Supply values for the following parameters:
Console:
APIId:
APITenantId:
There are no error messages or any other output indicative of any issue. I am able to enter in all parameters and I get a pop up to enter the APISecret into. I am guessing this is entering the APISecret in according to the required format.

Yes, and if there is no error message and you are using a reasonably
current release (like the official one from Powershellgallery, like you are
based on the thread in this ticket) then that also means it connected to
the console and saved the entry. When you now run get-cyapi
to use the entry, it should work just fine.
On Mon, Jun 10, 2019, 16:27 3133780X<EMAIL_ADDRESS>wrote:

Thank you for clarifying my misunderstanding regarding the consoleID.
When I run the New-CyConsoleConfig command with -Verbose I get the
following output as listed above:
PS C:\Users\PROFILE> New-CyConsoleConfig -Verbose
cmdlet New-CyConsoleConfig at command pipeline position 1
Supply values for the following parameters:
Console:
APIId:
APITenantId:
There are no error messages or any other output indicative of any issue. I
am able to enter in all parameters and I get a pop up to enter the
APISecret into. I am guessing this is entering the APISecret in according
to the required format.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/jan-tee/cycli/issues/13?email_source=notifications&email_token=ADNF6VSNFFJ2GTEP73RWPJ3PZZXGVA5CNFSM4HVY2J5KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODXKGOGQ#issuecomment-500459290,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADNF6VR7BSESKWZRI77MC53PZZXGVANCNFSM4HVY2J5A
.

It looks like I am getting the tokens in that output; but there is also an error message. When I ran it again it appeared to work and the subsequent Get-CyAPI -Console  command looks now to have executed without errors. I am running my first API script now and it has not yet thrown an error. So, I think I am in good shape. Thank you both so much for your patience and assistance in this!


A callback to next() of beforeRouteEnter executed before mounted()

Version
3.4.6+
Reproduction link
https://codesandbox.io/s/vue-router-346-bgn2c
Steps to reproduce

Open "Page 1" from the header

What is expected?
The right order of the executions of callback in next() of beforeRouteEnter and mounted.
What is actually happening?
The order of the executions of callback in next() of beforeRouteEnter and mounted are different in different version of view-router

#3402

Here is a reproduction link to the same sandbox with vue-router 3.4.5

This is likely to be related to https://github.com/vuejs/vue-router/pull/2875.
The behavior is still correct as one shouldn't rely on the ordering among created/mounted (component lifecycle hooks) and navigation hooks like beforeRouteEnter() because the order is not guaranteed and dependant of features like transitions, keep alive and other combinations and therefore, unreliable.
The only thing that is part of the API, and that can be made clearer in docs, is that the component renders once (DOM updates triggered) before calling the next callbacks.

Please note that the same example app has completely different behaviour relates to the vue-router version. Unfortunately same thing happened in our company's application. It's a pity that the issue was closed immediately :(


Running java cell using Ganymede kernel does not complete

Environment data

VS Code version:
Version: 1.66.0-insider (user setup)
Commit: 521a3d858570ebc9ce9d5602802f4525a02e045c
Date: 2022-03-29T07:31:54.286Z
Electron: 17.2.0
Chromium: 98.0.4758.109
Node.js: 16.13.0
V8: <IP_ADDRESS>-electron.0
OS: Windows_NT x64 10.0.19042

Jupyter Extension version (available under the Extensions sidebar): v2022.4.100090100

Python Extension version (available under the Extensions sidebar): v2022.5.10881003

OS (Windows | Mac | Linux distro) and version: Windows_NT x64 10.0.19042

Python and/or Anaconda version: Python 3.10,0. Anaconda 4.12.0

Type of virtual environment used:  N/A

Jupyter server running: Local

Java version
openjdk version "17.0.2" 2022-01-18
OpenJDK Runtime Environment Temurin-17.0.2+8 (build 17.0.2+8)
OpenJDK 64-Bit Server VM Temurin-17.0.2+8 (build 17.0.2+8, mixed mode, sharing)

Expected behaviour
Run notebook cell and display output
Actual behaviour
Starts running, but never completes
Steps to reproduce:
Download and install Ganymede kernel from https://github.com/allen-ball/ganymede.
(The Ganymede kernel works with JupyterLab.)
In VSCode:

create new Jupyter notebook
choose Java as cell language
choose Ganymede as kernel
write simple Java statement: System.out.println("hi");
run cell
-> it keeps running forever...

Output indicates that the kernel gets started by VSCode and is ready for work - but apparently never receives any.
BTW, other Java kernels work well with VSCode, e.g., IJava https://github.com/SpencerPark/IJava
Logs

Output for Jupyter in the Output panel (View→Output, change the drop-down the upper-right of the Output panel to Jupyter)

Output attached as a file because it's too large for inline:
JupyterOutput.txt

Thanks for the issue.
I haven't tried it yet but my initial guess is this:
erbose 08:40:00: Did not get a response for requestKernelInfo
Warn 08:40:00: Didn't get response for requestKernelInfo after 3003ms.

This likely means the ganymede kernel isn't handling the request kernel info message (or it's requiring something in the parameters that we're not passing)

Ah the root cause is that the ganymede kernel never returns session status. Jupyter works fine in this scenario but we currently require it.
https://github.com/microsoft/vscode-jupyter/blob/308bce616d06bacf5f2df4312453cc457c36815d/src/kernels/common/baseJupyterSession.node.ts#L304
The connectionStatus says 'connected' so maybe we can just use that instead of the kernel status (like we do for remote kernels)

Brilliant - the change solved the problem.
Thank you for the quick response.

/verified


9-Calendar-Styling-Is-A-Bit-Wrong

Describe
Styling is wrong, need improvements.
To Reproduce
Steps to reproduce the behavior:

Start Front-End
Click on "Events" button
See "Calendar" component

Expected behavior
Like in the pictures
Screenshots
How it is now:

How it should be:

Desktop (please complete the following information):

OS: [Windows 12]
Browser: Firefox]
Version: [Version 118.0.2 64 bit]

Smartphone (please complete the following information):

Device: [e.g. iPhone6]
OS: [e.g. iOS8.1]
Browser [e.g. stock browser, safari]
Version [e.g. 22]

Additional context
Add any other context about the problem here.

Done


Add --fail-no-examples option: fail if no RSpec examples

I added a new command line option: --fail-no-examples. It defaults to false, so default behavior is not changed. But, if this option is set and there are no RSpec examples to be run, exit status will be 1 (so far it was always 0).
Motivation
We use RSpec rake task on CI. Having updated RSpec from 3.3.0 to 3.5.0, there was some change in that rake task code. Without changing anything, the rake task resulted in running 0 examples and exit status was 0. Jobs were passed on CI, but I'd prefer if they were not.

Having updated RSpec from 3.3.0 to 3.5.0, there was some change in that rake task code.

Was there a regression in our rake task?  If so, it'd be good for us to know about it so we can fix it.
Anyhow, if we're going to add this, I think it would be better to add it to RSpec::Core::Configuration (so it can be set via RSpec.configure) rather than adding it as a CLI option.  We intentionally limit what config options are exposed via the CLI.  If we exposed everything, rspec --help would be an overwhelming wall of text.  We just want options that are the main ones users commonly want to run differently in a one-off manner.  This sounds like an option that you'd want to permanently set for your CI environment, not something for a one-off run.  If we added it to RSpec.configure, you could set it in your CI environment like so:
# spec/spec_helper.rb
RSpec.configure do |c|
  if ENV['CI']
    c.fail_if_no_examples = true
  end
end

# .rspec
--require spec_helper

(The latter is necessary to ensure spec_helper.rb is always loaded. Simply requiring it from spec files won't help if no spec files are loaded!)
Thoughts?

Yes, you are right, I want to set this option permanently and setting it by RSpec::Core::Configuration is enough. I'm going to rebase this PR so that there is no CLI option, only RSpec::Core::Configuration one.
As it comes for rake task potential regression, I opened an issue: https://github.com/rspec/rspec-core/issues/2303 .

I've just rebased this PR. The option is named: fail_if_no_examples (as @myronmarston wrote in usage example) and added better tests, but let me know if not enough. I tried to test exit status in unit tests, but it always resulted in ruby errors (my fault), so I left exit status tested only in integration tests (cucumber).
And thanks for that comment on .rspec file, I understood that later.

I updated the PR with your remarks.

@xmik this is looking really close and is very well done!

Thanks @myronmarston and @JonRowe for all the remarks. I incorporated them. It's nice to see that you care for RSpec and keep the code clean. Let me know if you want me to squash commits or correct something else.

Let me know if you want me to squash commits or correct something else.

Please do squash it, then I'll gladly merge it :).

 s/if there are 0 examples/if there are no examples/ incorporated and commits squashed.

Thanks @xmik


Fork PR not triggering CI check

Happening all the time in Bitraise.
Some recent PR's

#1543
#1550
#1589

I assume that's a security precaution as otherwise forks can read environment variables.

Worth noting that most providers have an option to enable/disable it, so maybe one for Ryan to make the decision on? (Especially since the env vars have been public more times than anyone cares to admit 😂)

Trying to wrap my head around where this isn't working. I don't share secrets w/ PRs, but even if that's the case why aren't PRs triggering a workflow that fails unit tests? @viktorbenei any tips on what I'm missing?

@rnystrom I'm off today, happy to help tomorrow if that's OK or feel free to ping our support!

Actually I'd suggest you to check this troubleshooting guide first http://devcenter.bitrise.io/webhooks/troubleshooting/
Bitrise returns the exact reason why it did not start a build, which you can see in github repo webhook settings, as well as on Bitrise (activity page).
If that wouldn't help just let me know 😉


Establish commands and command grammar

This needs addition on the server side and the VS code client and new code for the grammar

This was intended for things like pushing code and running it. However this is better handled via native IDE mechanisms (build project, run project etc.). For doing this on the SBGPLA this we need a command line tool, like this https://github.com/kaushik-work/sb-run


[v3] Checkbox / Toggle onChange not working (React)

This is a (multiple allowed):

[x] bug

[ ] enhancement

[ ] feature-discussion (RFC)

Framework7 Version: v3 Beta 11

Platform and Target: Web (React)

Can someone confirm that im not doing something stuipd?
Example Code
`export class ToggleReduxForm extends Component {
constructor(props) {
super(props);
}
onChange(){
console.log("changed")
}
onClick(){
console.log("clicked")
}
render() {
return (

);
}
}`

Use onToggleChange event instead

Thank you! Just need to read the docs eh!
Will become a pateron on soon! Thanks for the great work!


React-dates incompatibility or any lib using momentjs

Issue Type

[X] Bug (https://github.com/mxstbr/react-boilerplate/blob/master/.github/CONTRIBUTING.md#bug-reports)
[ ] Feature (https://github.com/mxstbr/react-boilerplate/blob/master/.github/CONTRIBUTING.md#feature-requests)

Description
Hello, I'm trying to implement the react-dates package in one of my projects but I always get the error "Uncaught (in promise) TypeError: (0 , _moment2.default) is not a function" even in the simplest setup.
My guess is something related to the way we load the dependencies (momentjs in this case) but I was unable to go further in my investigations because I still learning how the webpack loads the modules specially using DLL.
Steps to reproduce
This happens even with a clean setup, you can see the error happening here: https://github.com/akiokio/react-boilerlate-error-react-dates
I made this repo using the react-boilerplate and just running the install commands here: https://github.com/airbnb/react-dates
or

Clone this repo
Run npm run setup, npm run clean as aways
Run the react dates setup script: ( export PKG=react-dates; npm info "$PKG" peerDependencies --json | command sed 's/[\{\},]//g ; s/: /@/g; s/ *//g' | xargs npm install --save "$PKG" )
Open the homepage container (app/containers/HomePage/index.js) and import the react dates component: import SingleDatePicker from 'react-dates';
Done, now open the homepage and look the error in the console.

Versions

Node/NPM: node: v6.2.2 npm: 3.9.5
Browser: Any

Closing this issue, the problem was related to the momentjs version 2.1.0 update. More info here: https://github.com/moment/moment/#port-to-ecmascript-6-version-2100
To fix in the react-boilerplate project: Add an alias from 'moment' to 'moment/moment.js'.
Reason: With the update (es5 -> es6) the guys over moment changed the library path.
Actual code on webpack.base.babel.js:
resolve: {     modules: ['app', 'node_modules'],     alias: { moment: 'moment/moment.js' },     extensions: [       '',       '.js',       '.jsx',       '.react.js',     ],     mainFields: [       'jsnext:main',       'main',     ],   },
** I pasted the whole dict entry to be easier to  newcomers like me :)
** PS. I posted the fix on the github project too if you guys want to see the whole code but keep in mind I just showing the component so the css is missing 👍

@akiokio Thanks for this. I was having this issue and couldn't seem to find the fix.

Any workaround?

I posted the steps here: https://github.com/mxstbr/react-boilerplate/issues/1152#issuecomment-256547900

With the latest versions is not working, keeps appearing the same error.
webpack.base.babel.js have changed from the version that @akiokio implemented the solution, not sure if this would affect.
Thanks.


[hardhat + ethers-v6]Fallback to BaseContract when using hre.ethers.getContractFactory.attach

I'm trying to migrate hardhat to newer version with the use of ethers-v6, and then find a minor issue below (v6):

      const create2DeployerFactory = await hre.ethers.getContractFactory('Create2Deployer', signer)
      const fallbackToBaseContract = create2DeployerFactory.attach(create2DeployerAddress)

      // excepted
      const noFallback = Create2Deployer__factory.connect(create2DeployerAddress, signer)

and v5 behavior:

With typehint I notice that exact contract type fallbacks to BaseContract in v6, differing from v5, which infers the actual type of contract
This could use Type Assertion as ActualContract, or directly use AcutalContract__Factory as workarounds, but should be nice if fixed in attach.

Sometimes contract name is fixed but not specified, eg: use const contractName = 'ActualContract' thus use getContractFactory
to obtain contract instead of directly using ActualContract__Factory is a need.
In the sence, contract name could be anything depending on which contract I want to deploy.
Currently i'm heavily using the type assertion approach by getContractFactory.attach and those stuck the migration process. Any fix/workaround could be appreciated :)

Nvm, just found hre.ethers.getContractAt as a substitution :)