Wrong Code Highniting

From @serhioV on June 1, 2018 16:19
Issue Type: Bug
It seems the comments are not differentiated from the string literals, in order to format/highlight the code
foreach (Node child in node.XPath("./*[string(umbracoNaviHide) != '1']").Items)
{
  var i = 0;
 string myRegEx = "/*that is not a comment ";
 myRegEx =myRegEx.Trim();
  /*this is a comment*/
}

the "./*" in that case is not a comment start, but a XPath expression, inside a string, there is no need to indentify comments inside the " "
VS Code version: Code 1.23.1 (d0182c3417d225529c6d5ad24b7572815d0de9ac, 2018-05-10T17:11:17.614Z)
OS version: Windows_NT x64 10.0.17134

System Info

Item
Value

CPUs
Intel(R) Core(TM) i5-5300U CPU @ 2.30GHz (4 x 2295)

GPU Status
2d_canvas: enabledflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onnative_gpu_memory_buffers: disabled_softwarerasterization: disabled_softwarevideo_decode: enabledvideo_encode: enabledvpx_decode: unavailable_softwarewebgl: enabledwebgl2: enabled

Memory (System)
15.89GB (6.40GB free)

Process Argv
C:\Program Files\Microsoft VS Code\Code.exe

Screen Reader
no

VM
0%

Extensions (5)

Extension
Author (truncated)
Version

vscode-eslint
dba
1.4.10

beautify
Hoo
1.3.0

csharp
ms-
1.15.2

notepadplusplus-keybindings
ms-
1.0.2

team
ms-
1.136.0

Copied from original issue: Microsoft/vscode#50954

From @mjbvz on June 1, 2018 21:42
Cannot repo in VS Code insiders with all extensions disabled:

From @serhioV on June 4, 2018 9:48
here is an example of a cshtml file


Easier way to experiment with this gem

I just want to document what I used to not need Bundler as that makes it rather impratical:
git clone this-repo
cd parser-prism
gem build parser-prism.gemspec
gem install parser-prism-*.gem

cd wherever
Change TargetRubyVersion in .rubocop.yml
time rubocop -rparser/prism/rubocop --cache=false FILES

It'd be great to add this to the README, unfortunately I don't have time for that right now.

This should be eased now that it's published to rubygems


[Safari 10] Large heap memory

First noticed in https://github.com/phetsims/plinko-probability/issues/96, where you can find relevant details in the context of plinks-probability.
The Safari heap size is 2x-3x larger than Chrome.   And it was determined that this is not sim-specific, it affects all sims.
Assigning to @ariel-phet to assign and prioritize.  Since this affects all sims, and Safari 10 is relatively new, highly recommended to investigate soon.

From the original issue:

It is a general problem with how Safari (old & new) is allocating the memory at sim start.

@jonathanolson please add clarifying/investigation comments/
Since this issue does not appear to be affecting sim performance, marking medium priority, but would be good to understand more.


[Tests] Remove no_asserts from sema perf tests

This discourages regressions. Also add a timeout to a slow test.

@swift-ci please smoke test

I didn’t notice the test suite taking longer.

Even better! :)

Well with enough cores, the time to run the validation suite is equal to the longest test, so lots of short tests can fit into the leftover time. Given that the IDE tests are needlessly serial and painfully quadratic, there is plenty of leftover time. ;-)

This seems to have broken one of our ASAN bots: https://ci.swift.org/job/oss-swift-incremental-ASAN-RA-osx/4023/

@brentdax - I think an argument can be made that the sanitizers and performance testing don't get along. The former have huge and variable slowdown rates and the latter don't compensate. Therefore I'll just add no_asan to the REQUIRES line.

@davezarzycki I would be great if you could file a JIRA for the broken test so we can keep track of that and add no_asan to requires. Running this perf tests in ASAN configuration doesn't make much sense.

https://bugs.swift.org/browse/SR-11751
https://bugs.swift.org/browse/SR-11752
https://bugs.swift.org/browse/SR-11753


Update docs to use url namespace

Ref #84
Updates docs example installation to use url with namespace pinax_blog

Coverage decreased (-0.6%) to 44.858% when pulling 4ee53fced0ce40e017a40f81c1cdf2282f07e987 on garcianavalon:master into e865c4738e479bb802bdec56ee7dc994ba077371 on pinax:master.


Clarify the format in which contracts must be referred to in CLI commands

When instructing a user to run zos add contractName on the documentation, clarify the format of contract name. It may be confusing whether the user must specify the name of the contract, or the filename that contains it (since it's similar to git).

Closing as interactivity pretty much solves the problem


Packaging, CI, PEP8

This replaces PR https://github.com/mhallsmoore/qstrader/pull/44

CI is now passing both with Python 2.7 and 3.5

Closes

https://github.com/mhallsmoore/qstrader/issues/43
https://github.com/mhallsmoore/qstrader/issues/32
https://github.com/mhallsmoore/qstrader/issues/40
https://github.com/mhallsmoore/qstrader/issues/39

Thanks for merging

No problem! I'm just getting to grips with all of the great additions ;-)


New: Mark interfaces and generators as used (refs #2)

Custom type annotations and return types being marked as used will be enabled via the new ESLint escope fork

LGTM


Time and frequency ranking

Add support for time and frequency in Client, and use it in find_data_series()

tested and update ptal

retested - function looks good to me!
(not sure if we'd like to specify that MAX_SERIES_PER_COMB somewhere in the document, but could be annoying if would like to change it in the future, maybe could be user input in the future)

Right we don't really want ordinary users to change this variable, since they would jut want it to be infinite i.e. look through everything.  Like the COMBINATION_DEPTH,  it should only be used to fine tune  based on back-end search performance


Standard argument definitions

hellbender has a class called StandardArgumentDefinitions for common command line arguments.  We should either make our own (for segments, targets, etc) or add to the hellbender class.

Fixed in PR #202.


added missing quote in comment

This pull request didn't trigger Jenkins as its author isn't in the whitelist.
An organization member must perform one of the following:

To have this branch tested by Jenkins, use the "ok to test" command.
To have a one time test done, use the "test this please" command.

Those commands are simple Github comments of the format: "jenkins: COMMAND"

Your commit is missing the required "Signed-off-by" line.
Also as this is touching a translated string, you should push a second commit containing the output of
make i18n.
Thanks!

Fixed up the issues with this branch, since the author is a Canonical employee and I therefore didn't have any doubts about him being allowed to contribute to this project, I just added the Signed-off-by myself.

jenkins: test this please


Better display parallel transformer loading

Currently, pub loads all transformer plugins in sequence to ensure that dependencies between them are satisfied. However, there are cases where this isn't necessary. For example, suppose the application uses transformers from package A and package B, but those packages have no dependencies on one another. In that case, their transformers could be loaded in parallel, potentially leading to a considerable decrease in load times.

This issue has been moved to dart-lang/pub#1000.


[BugBash] Manage Packages page slow for account with 60K packages

Scenario 15, per @skofman1
I got an account with 60,000 packages. "Manage Packages" page doesn't load.

Call to User.IsInRole is 11.9% incl, which is excessive for checking if the current user is an admin. I believe this is when performing permissions checks.

Microsoft (PROD) has almost as many package versions as NuGetStagingTest (DEV) has... so I think we should keep this in sprint. Roughly 42K versus 59K versions.

Plans for optimizations:

Improve server query by ordering in DB and only selecting latest versions. For packages that don't have IsLatest set (concurrency issue), we will do minimal work which could be:

exclude entirely
display registration details only (not latest version)

Add paging if serialization and client side performance is still bad. If we do this, we should add a search option for filtering by packageId.

//cc @joelverhagen  @ryuyu

We should still consider paging for scenarios with many registrations (i.e., test accounts), but that's already tracked by #5059... marking this code complete.

@chenriksson , will your fix help with profile page? For example: https://www.nuget.org/profiles/awscpp
The page loads very slowly despite the number of packages being low and having paging.

@skofman1 No -- PackagesService.FindPackagesByAnyMatchingOwner was only used by "Manage Packages" and the Delete Account workflows. We could do the same w/ profiles if we're ok with the caveat there... being that we may not pull the latest if there's no IsLatest set due to the concurrency issue.

Created a separate issue to track: https://github.com/NuGet/NuGetGallery/issues/5593
If this is a simple fix, we should definitely go for it.

@anangaur Did 'Manage Packages' performance improve for you after this latest deployment? If so, the priority for adding paging should be lower.
Microsoft has 3923 registrations and 43217 versions, so it should have helped a fair amount.


Support for SF Symbols

This was implemented in a different library “nirm/SFSymbols” as stand alone. Closing now.


[FEATURE] Showcase bundled Angular Animations

🚀 Feature request
We have a list of animations in @taiga-ui/core:
https://github.com/TinkoffCreditSystems/taiga-ui/blob/main/projects/core/animations/animations.ts
They are helpful for projects using Taiga UI, we need to add a page on demo portal showcasing all those animations.

@waterplea @MarsiBarsi Hi, Is it relevant?

https://taiga-ui.dev/animations


How to floor without format

Hi, I checked solution from https://github.com/MikeMcl/bignumber.js/issues/69
y = new BigNumber('1234567.898765');
y.toFormat(2, BigNumber.ROUND_DOWN);   // '1,234,567.89'
y.toFormat(2, 1);                      // '1,234,567.89'

But that is not solution what I looking for. I wanna floor without comma. Is there any way to do
Expected result: 1234567.89

Please don't link old issues. Issues are not the place to learn from.
There is a decimalPlaces method to round a BigNumber to a specified number of decimal places.
y = new BigNumber('1234567.898765');
y = y.decimalPlaces(2, BigNumber.ROUND_FLOOR);
y.toString();    // '1234567.89'

Please ask any further usage questions on a website like Stack Overflow.

Thanks


Enable telneting to UART in the HDMI2Ethernet SoC

This should allow control over the SoC in the same way the UART does.

@enjoy-digital Can you add some info about the uip stuff in your other design?

@enjoy-digital Ping?

@aomtoku - Please take a look at this github issue.

The code is here: https://github.com/enjoy-digital/opsis-soc/tree/master/firmware.
This is a simple code but show how to:

enable ping
enable etherbone control of the wishbone peripherals
enable telnet

@aomtoku - Please take a look at @enjoy-digital 's latest comment.

This works now!


Quick start deployment (docker or similar)

I'm looking to stand up a quick proof of concept trial of Tobira.
It would be really helpful to have an "ready to go" kit we can plug our services into and see what they look like.

Hi! Can you explain your use case in more detail? I'm not sure I understand you correctly. Is this about a production deployment or just something for testing? Do you want to connect Tobira to an existing production Opencast? What setup parts in particular would you like skip in this "quick start" solution?

Hi,
Our initial usecase would be for a proof-of-concept test, which we could connect to some of our systems and see what happens or what needs configuring further.
The production use case is for a relatively bullet-proof self-updating system that can easily recover from power outages or system crashes.
Our local network streaming solution, Restreamer, is set up in this way.
https://github.com/datarhei/restreamer
Ideally, a docker container with OpenCast, Tobira, Elastic, and all the other things needed for them to run effectively would be best. We would have the database saved/backed up regularly, and this would also allow us to get up and running in disaster recovery much faster.

We just talked briefly to @mtneug of https://github.com/opencast/opencast-docker fame and apparently he has plans to provide something along these lines in the long run, which would be great!
But that means that we'll probably not look into this for now. I'll leave the issue open for now, though, to remind us to check in every now and then and to put things into the docs once they are in place.
Also just for reference, @mtneug signaled interest in having https://github.com/elan-ev/tobira/issues/116 resolved for this purpose. ^_^

So what's still to do here? Or can this be closed?


Login failure / timeout even with correct account info

I am able to login without trouble on the phone app and Kumo Web App using the same credentials. My house is 1 location with 6 units.
When I try and login with hombridge-kumo plugin I get the fairly standard error message:
[Kumo] Kumo API: error - Time out on Kumo cloud connection.
[Kumo] Failed to login. Restart Homebridge to try again.
I switched the homebridge into debug mode to try and get more logs but it just gives the same error.  I tried turning connect directly on and off with reboots, no change. I checked my login info for capitalization and other common errors, no issue. I have several other plugins for other devices that are all working correctly.
Homebridge is running Alpine Linux
Homebridge v1.3.4
Node.js Version  v14.17.1
From a Docker container.
json config: (L/P replaced for security)
{
"username": "myRealEmailHere",
"password": "myRealPasswordHere",
"directAccess": true,
"platform": "Kumo"
}
I do notice that the app and web app take a moment to login, perhaps the timeout is too short on the plugin?
Is there an option on the plugin for more verbose debug output?

I had the same issue with this plugin until I moved it to a child bridge and it started to work for me again.

@monteroman  Thank you, this resolved the issue for me.

@monteroman @brad3d Did either of you have homebridge-wemo installed on your main instance? Please see current discussion in #42

I did not have wemo installed.

I do have the Wemo plugin installed.
Sent from my iPhone

On Nov 1, 2021, at 10:33 AM, Fraser Sim @.***> wrote:

@monteroman @brad3d Did either of you have homebridge-wemo installed on your main instance? Please see current discussion in #42
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.


Use S3 Static website hosting instead

As best practice on AWS, you should use the static website hosting feature instead of making your bucket become public. With the static website hosting feature, you could also utilise its redirection feature to utilise CDN like AWS Cloudfront to serve public traffic to your S3 bucket. For more information, please read: https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html

Seems like it is best practice. Thanks.


DATA RACE: rand.NewSource is not safe for concurrent usage.

we have a couple usages of this function:
daemon/cmd/status.go:53:var randGen = rand.New(rand.NewSource(time.Now().UnixNano()))
pkg/kvstore/etcd.go:68: randGen = rand.New(rand.NewSource(time.Now().UnixNano()))
pkg/lock/stoppable_waitgroup_test.go:170:       randGen := rand.New(rand.NewSource(time.Now().UnixNano()))
pkg/proxy/proxy.go:147: portRandomizer = rand.New(rand.NewSource(time.Now().UnixNano()))
pkg/rand/rand_name.go:26:       randGen = rand.New(rand.NewSource(time.Now().UnixNano()))
test/helpers/utils.go:43:var randGen = rand.New(rand.NewSource(time.Now().UnixNano()))
test/runtime/monitor.go:31:var randGen = rand.New(rand.NewSource(time.Now().UnixNano()))

The documentation states it's not safe for concurrent usage:
// NewSource returns a new pseudo-random Source seeded with the given value.
// Unlike the default Source used by top-level functions, this source is not
// safe for concurrent use by multiple goroutines.

Can cause issues similar to:
2020-04-15T09:20:36.572247228Z WARNING: DATA RACE
2020-04-15T09:20:36.572327995Z Read at 0x00c0002de000 by goroutine 391:
2020-04-15T09:20:36.572368052Z   math/rand.(*rngSource).Uint64()
2020-04-15T09:20:36.572404065Z       /usr/local/go/src/math/rand/rng.go:239 +0x3e
2020-04-15T09:20:36.572451459Z   math/rand.(*Rand).Uint64()
2020-04-15T09:20:36.572456839Z       /usr/local/go/src/math/rand/rand.go:93 +0x78
2020-04-15T09:20:36.572492861Z   github.com/cilium/cilium/pkg/kvstore.(*etcdClient).waitForInitLock.func1()
2020-04-15T09:20:36.57249782Z       /go/src/github.com/cilium/cilium/pkg/kvstore/etcd.go:363 +0xa0
2020-04-15T09:20:36.572531331Z
2020-04-15T09:20:36.572594608Z Previous write at 0x00c0002de000 by goroutine 290:
2020-04-15T09:20:36.572630276Z   math/rand.(*rngSource).Uint64()
2020-04-15T09:20:36.572634947Z       /usr/local/go/src/math/rand/rng.go:239 +0x54
2020-04-15T09:20:36.572668487Z   math/rand.(*Rand).Uint64()
2020-04-15T09:20:36.572672987Z       /usr/local/go/src/math/rand/rand.go:93 +0x78
2020-04-15T09:20:36.572706705Z   github.com/cilium/cilium/pkg/kvstore.(*etcdClient).waitForInitLock.func1()
2020-04-15T09:20:36.572711435Z       /go/src/github.com/cilium/cilium/pkg/kvstore/etcd.go:363 +0xa0
2020-04-15T09:20:36.5727441Z
2020-04-15T09:20:36.572778832Z Goroutine 391 (running) created at:
2020-04-15T09:20:36.572814227Z   github.com/cilium/cilium/pkg/kvstore.(*etcdClient).waitForInitLock()
2020-04-15T09:20:36.572818802Z       /go/src/github.com/cilium/cilium/pkg/kvstore/etcd.go:351 +0x8c
2020-04-15T09:20:36.572852416Z   github.com/cilium/cilium/pkg/kvstore.(*etcdClient).isConnectedAndHasQuorum()
2020-04-15T09:20:36.572857049Z       /go/src/github.com/cilium/cilium/pkg/kvstore/etcd.go:396 +0x28d
2020-04-15T09:20:36.572909971Z   github.com/cilium/cilium/pkg/kvstore.(*etcdClient).Connected.func1()
2020-04-15T09:20:36.572914532Z       /go/src/github.com/cilium/cilium/pkg/kvstore/etcd.go:411 +0x5b
2020-04-15T09:20:36.572957404Z
2020-04-15T09:20:36.572992805Z Goroutine 290 (running) created at:
2020-04-15T09:20:36.57302938Z   github.com/cilium/cilium/pkg/kvstore.(*etcdClient).waitForInitLock()
2020-04-15T09:20:36.573034089Z       /go/src/github.com/cilium/cilium/pkg/kvstore/etcd.go:351 +0x8c
2020-04-15T09:20:36.57307812Z   github.com/cilium/cilium/pkg/kvstore.(*etcdClient).isConnectedAndHasQuorum()
2020-04-15T09:20:36.573093372Z       /go/src/github.com/cilium/cilium/pkg/kvstore/etcd.go:396 +0x28d
2020-04-15T09:20:36.573129588Z   github.com/cilium/cilium/pkg/kvstore.(*etcdClient).Connected.func1()
2020-04-15T09:20:36.573134528Z       /go/src/github.com/cilium/cilium/pkg/kvstore/etcd.go:411 +0x5b

Most of these were introduced by #10575 in an attempt to avoid unrelated packages interfering with each others PRNG state. I didn't read the docs carefully enough so didn't spot that this method is not concurrency-safe :confused:
It seems there currently isn't an easy way to get a non-global, concurrency-safe PRNG source with the current math/rand implementation, see golang/go#21393
My proposal to solved this would be use something similar to lockedSource from math/rand in our pkg/rand and use that for the time being:
https://github.com/golang/go/blob/8f53fad035ccc580859f7b063ae8be30b009a6be/src/math/rand/rand.go#L382-L385


codegen output 5eef0a9a5ee04b57bf5579285d876ffb

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.02%) to 83.792%

Totals

Change from base Build<PHONE_NUMBER>:
-0.02%

Covered Lines:
7574

Relevant Lines:
9039

💛  - Coveralls


[ FirestoreApi ] How to add Authorization header to the client that FirestoreApi consume

I have this rule in my firestore allow write: if request.auth.uid == 123;, how can i add autorization header to the client that FirestoreApi consume?
final client = http.Client();
final firestore = FirestoreApi(client);
await firestore.projects.databases.documents.delete(path);

My understanding is that this API is meant for admin usage – so it skips the Firestore rules entirely.


support three JSON model with Skeletal Animation

After updating current json loader in dc4d360 I managed to load the knight model with bones.
However the animation can not be triggered.
playAnimation fired without any error while animation didn't start.
I am looking at how this function has been setup but could not find out why it's not started yet.
`  playAnimation: function () {
var clip,
data = this.data,
animations = this.model.animations || this.model.geometry.animations || [];
if (!animations.length) return;

clip = data.animation === DEFAULT_ANIMATION
  ? animations[0]
  : THREE.AnimationClip.findByName(animations, data.animation);

if (!clip) {
  console.error('[three-model] Animation "%s" not found.', data.animation);
  return;
}

this.model.activeAction = this.mixer.clipAction(clip, this.model);
if (data.animationDuration) {
  this.model.activeAction.setDuration(data.animationDuration);
}
this.model.activeAction.play();

},`
Source code for http://threejs.org/examples/webgl_animation_skinning_morph.html
`mesh = new THREE.SkinnedMesh( geometry, new THREE.MultiMaterial( materials ) );
...
mixer = new THREE.AnimationMixer( mesh );
bonesClip = geometry.animations[0];
...
root = rootObjects[ 0 ],
action = null,
API = {
'play()': function play() {
action = mixer.clipAction( clip, root );
action.play();
},
....
`
Any thoughts anyone?

I have created a pull request (https://github.com/donmccurdy/aframe-extras/pull/89), this will solve both this issue, and all also https://github.com/donmccurdy/aframe-extras/pull/86...

Thanks @msj121, tested and works like a charm : )

My pleasure, nice to be able to commit back to this component as I really like the code and I am using it a lot so far :).

Looks like we're good here, with some more upcoming changes from msj121's #91. Thanks all!


Migrate VRF docs to .mdx

Migrate VRF docs files to .mdx

TODO: Rebase and add v2 folder after #1135 is merged.


is missing npm run dev ?

$ haxe todomvc.hxml
unknown variable HAXE_LIBCACHE //what's wrong here?
there are nothing build in bin folder?
is missing npm run dev ?
after run haxe todomvc.hxml
there are no npm run dev like Vue?

what is your lix version?

lix -v
0.14.0

Please update to latest.


Fix an infinite loop error for Layout/SpaceInsideBlockBraces

This PR fixes an infinite loop error for Layout/SpaceInsideBlockBraces whenEnforcedStyle: no_space with SpaceBeforeBlockParameters: false are set in multiline block.
# .rubocop.yml
AllCops:
  DisabledByDefault: true

Layout/SpaceInsideBlockBraces:
  Enabled: true
  EnforcedStyle: no_space
  SpaceBeforeBlockParameters: false

# example.rb
items.map {|item|
  item.do_something
}

% rubocop -a --only Layout/SpaceInsideBlockBraces
Inspecting 1 file
C

Offenses:

example.rb:2:20: C: [Corrected] Layout/SpaceInsideBlockBraces: Space inside } detected.
  item.do_something ...

0 files inspected, 1 offense detected, 1 offense corrected
Infinite loop detected in /private/tmp/foo/example.rb.
/Users/koic/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rubocop-0.72.0/lib/rubocop/runner.rb:268:in `check_for_infinite_loop'
/Users/koic/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rubocop-0.72.0/lib/rubocop/runner.rb:251:in `block in iterate_until_no_changes'
/Users/koic/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rubocop-0.72.0/lib/rubocop/runner.rb:250:in `loop'
/Users/koic/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rubocop-0.72.0/lib/rubocop/runner.rb:250:in `iterate_until_no_changes'
/Users/koic/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rubocop-0.72.0/lib/rubocop/runner.rb:221:in `do_inspection_loop'
/Users/koic/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rubocop-0.72.0/lib/rubocop/runner.rb:124:in `block in file_offenses'
/Users/koic/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rubocop-0.72.0/lib/rubocop/runner.rb:142:in `file_offense_cache'
/Users/koic/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rubocop-0.72.0/lib/rubocop/runner.rb:122:in `file_offenses'
/Users/koic/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rubocop-0.72.0/lib/rubocop/runner.rb:110:in `process_file'

(snip)

Furthermore, it is changed by auto-correction to the following unnatural code.
diff --git a/example.rb b/example.rb
index f1427be..fb547ee 100644
--- a/example.rb
+++ b/example.rb
@@ -1,3 +1,2 @@
 items.map {|item|
 -  item.do_something
 -}
 +  item.do_something}

This PR prevents the error by noticing right brace of multiline block.

Before submitting the PR make sure the following are checked:

[x] Wrote good commit messages.
[ ] Commit message starts with [Fix #issue-number] (if the related issue exists).
[x] Feature branch is up-to-date with master (if not - rebase it).
[x] Squashed related commits together.
[x] Added tests.
[x] Added an entry to the Changelog if the new code introduces user-observable changes. See changelog entry format.
[x] The PR relates to only one subject with a clear title
and description in grammatically correct, complete sentences.
[x] Run bundle exec rake default. It executes all tests and RuboCop for itself, and generates the documentation.

Thanks!


Fix github issues

Related command

Description

Testing Guide

History Notes

[Component Name 1] BREAKING CHANGE: az command a: Make some customer-facing breaking change
[Component Name 2] az command b: Add some customer-facing feature

This checklist is used to make sure that common guidelines for a pull request are followed.

[ ] The PR title and description has followed the guideline in Submitting Pull Requests.

[ ] I adhere to the Command Guidelines.

[ ] I adhere to the Error Handling Guidelines.

Thank you for your contribution! We will review the pull request and get back to you soon.

can you add the description of changes under History Notes since there are multiple changes in this pr
https://github.com/Azure/azure-cli/blob/dev/doc/authoring_command_modules/README.md#format-pr-description

updated history

Please fix conflicting files

Please note that Azure CLI will have a code freeze for the upcoming release on 09/24/2024 10:00 UTC. If you want to catch this release train, please address the comments and code conflicts ASAP. Otherwise, it has to be postponed to next sprint (11-05).

Please fix CI issues

Please fix CI issues

/azp run

@mwesigwaguma Could you please fix these CI issues

Due to your have not to resolve all comments and CI issues within this breaking change window, and the PR containing breaking changes, we will postpone it to the next breaking change window


Time to publish 1.8.x on sourceforge?

Dear Marcelo,
Should we publish the 1.8.x versions on https://sourceforge.net/projects/pupnp/files?
Best Regards,
Fabrice

Hi Fabrice,
I think we should publish them. If no one is opposed to, I can do it next week.
Regards,
Marcelo.

Dear Roberto,
Could I kindly remind you to publish the versions on sourceforge?
Best Regards,
Fabrice

Sure, I am very sorry. I'll do it right now.
Thank you for reminding me.
Regrads,
Marcelo.

Dear Roberto,
Why did you change the name and the type of the archive?
Previously, it was libupnp-1.6.22.tar.bz2, now it is pupnp-release-1.8.2.zip.
Moreover, previously, the configure file was in the tar.bz2, now we have to call the bootstrap script.
Best Regards,
Fabrice

Hi Fabrice,
I have uploaded the file that was released on Github, I undestood that this was what you wanted, but I can generate a different file using the old standard, no problems.
Regards,
Marcelo.

Yes, it would be great to keep the old standard so my buildroot patch to add 1.8.x version will keep the same standardfor 1.6.x and 1.8.x. I could also update the buildroot package to retrieve the versions from github instead of sourceforge but we already had a discussion on "sourceforge vs github" (https://github.com/mrjimenez/pupnp/issues/14) so I think we should keep using sourceforge.

Hi Fabrice,
Its done, please tell me if you find any problem.
Best regards,
Marcelo.


The example mentioned in the README does not exist

In the README.md one can find:
Example Playbook

In the folder, "example" you can check an example project that shows how to deploy with Ansistrano. In order to run it, you should:

$ cd example
$ ansible-playbook -i hosts deploy.yml

This sounds very useful, I thought. Let me check it out! Imagine my disappointment when I found out that the promised goodies are nowhere to be found. There is no such directory anywhere.

When we introduced the test suite, the example was moved to the test folder and in fact it was not working
We have fixed it in https://github.com/ansistrano/deploy/commit/54e6fc9e914a4e62edfca7b3d35d4fadfd6e5da2
Thanks for reporting, hopefully now you will be able to see how Ansistrano works

Great! I did manage to understand it without the examples. But thank you for bringing them back. Now they can help the next lost soul.


How to use ember-simple-auth with ember engines?

how to extend the routes which are part of ember in-repo-engine with authentication mixin ? and how it will redirect to login route ?

+1

I am using ember-simple-auth in standalone routable ember engines.
Followings are snippets of how I have done it.

Install ember-simple-auth in engines
In your host application, share session service and login route

/* main/app/app.js */

App = Ember.Application.extend({
  modulePrefix: config.modulePrefix,
  podModulePrefix: config.podModulePrefix,
  Resolver,

  engines: {
    blogEngine: {
      dependencies: {
        services: [
          'session'
        ],
        externalRoutes: {
          'main-login': 'login'
        }
      }
    }
  }
});

The same declaration should be done in your engines

/* [engine-name]/addon/engine.js */

const Eng = Engine.extend({
  modulePrefix,
  Resolver,
  dependencies: {
    services: [
      'session'
    ],
    externalRoutes: [
      'main-login'
    ]
  }
});

Your engine's application route should mix ApplicationRouteMixin

/* [engine-name]/addon/routes/application.js */

import Ember from 'ember';
import ApplicationRouteMixin from 'ember-simple-auth/mixins/application-route-mixin';

export default Ember.Route.extend(ApplicationRouteMixin, {
});

You can mix AuthenticatedRouteMixin in your engine's route if only authenticated users are allowed to access

/* [engine-name]/addon/routes/user-profile.js */

import Ember from 'ember';
import AuthenticatedRouteMixin from 'ember-simple-auth/mixins/authenticated-route-mixin';

export default Ember.Route.extend(AuthenticatedRouteMixin, {
});

-The last but the most important thing is that you need to redirect user to host application's login route from engine's login route so that unauthenticated user will  be redirected to host application's login route when they try to access secured routes
/* [engine-name]/addon/routes/login.js */
import Ember from 'ember';

export default Ember.Route.extend({
  beforeModel() {
    this.transitionToExternal('main-login');
  }
});

Hope this helps.

For me the solution @RayKwon describes worked. At first I forgot to include the login route in buildRoutes. One thing I noticed is, that if I specify ember-simple-auth as dependency in the package.json I get the following warning:
WARNING: Library "Ember Simple Auth" is already registered with Ember.

If I don't include it into package.json there is no warning and it also seems to work. But I'm not sure if it is a good idea to use a dependency and never specify it.

@RayKwon Which versions of ember / simple auth did you use?

I am using ember 2.10.0 and ember-simple-auth 1.2.0-beta.1 and ember-simple-auth-token 1.2.0

It would be awesome if someone could submit a PR adding a sample engine to the dummy app!

@tschoartschi ... did you try adding it as a peerDependency?

@RayKwon For me adding the mixin to the engine's application route did not work since in the unauthenticated state it looped into the beforeModel() method of the mixin instead of entering the one of the login route. Adding an index route and using the mixin there instead of in the application route solved the issue for me.

I just want to chime in — this question came up in the Ember Discussion forum and I had a slightly different solution: https://discuss.emberjs.com/t/how-do-i-find-out-if-im-inside-an-engine/12627/3
But, it's not a solution I feel great about.
What if Ember Simple Auth exposed a new hook in the AuthenticatedRouteMixin —  something like transitionToLogin — which is used internally by the beforeModel hook so consumers of the mixing have a way to control the behavior of the transition.

Here's what that would look like
export default Mixin.create({
  session: service('session'),

  _isFastBoot: computed(function() {
    const fastboot = getOwner(this).lookup('service:fastboot');

    return fastboot ? fastboot.get('isFastBoot') : false;
  }),

  authenticationRoute: computed(function() {
    return Configuration.authenticationRoute;
  }),

  transitionToLogin(loginRoute) {
    return this.transitionTo(loginRoute);
  },

  beforeModel(transition) {
    if (!this.get('session.isAuthenticated')) {
      let authenticationRoute = this.get('authenticationRoute');

      if (this.get('_isFastBoot')) {
        const fastboot = getOwner(this).lookup('service:fastboot');
        const cookies = getOwner(this).lookup('service:cookies');

        cookies.write('ember_simple_auth-redirectTarget', transition.intent.url, {
          path: '/',
          secure: fastboot.get('request.protocol') === 'https'
        });
      } else {
        this.set('session.attemptedTransition', transition);
      }

      return this.transitionToLogin(authenticationRoute);
    } else {
      return this._super(...arguments);
    }
  }
});

Given that, ^^, then consumers of the Mixin in an engine could do something like:
// my-engine/addon/routes/protected-route.js

export default Route.extend(AuthenticatedRouteMixin, {
  transitionToLogin(loginRoute) {
    return this.transitionToExternal(loginRoute);
  }
});

(I'd be happy to contribute a PR for this if this seems like a reasonable solution).

Hey guys so after going through this and finding some more problems with Ember Engines with Simple Auth I have written up everything I have found. So take a look if you are still having any troubles with this
https://gist.github.com/devotox/240c36aa1cb51e63fa2b8917582d2e3f

cleaning up old issues


Separate generated code in multiple files

Could genny offer a command line option to separate generated code in multiple files?
For example,  "SomeType=string,int" will generate gen-source-string.go and gen-source-int.go.

+1 definitely would be useful for me.

@icock @20zinnm I think it would be usefule. Do you have some more specific ideas on how to get the parameters for what files to generate and where to put them?

One idea is expand of the generic name replacement.
eg: -out gen-source-Something.go Something=string,int Other=bool,float64 creates gen-source-string.go and gen-source-int.go where the Other variations are copied in each of the files, but the Something ones are distinct to their output files.


Clojure support

Please add support for Clojure & ClojureScript (ideally without needing an nREPL running).

Clojure linters exist by this point, so I'll close this.


[FLOC-3733] Serialize non-inspectable callables for loop_until logging

Passing a functools.partial to loop_until fails to serialize correctly.
Add an extra exception clause to the function_serializer function to handle callables that are rejected by the inspect module functions.  In particular, handle partial usefully by adding the details of the wrapped function.
Although it would be possible, I have not included the partial's arguments in the logging, as they may cause further serialization problems or expose sensitive information.

Thanks, @jongiddy. I've made a request for a comment to be added and one other optional change. Please address and merge when you're satisfied with the test results.


Migration between different vsts accounts fails

Migration using the open source tool vsts-sync-migration fails with the following error message. I have deleted the field several times and created it again, but I keep getting the same error message below.
vstssyncmigrator.exe Warning: 0 : [EXCEPTION] TF51005: The query references a field that does not exist. The error is caused by «[migration.ReflectedWorkItemId]».
I have successfully managed migration with other accounts. The field ReflectedWorkItemId was also detected correctly. What could have gone wrong?
SessionID: e98ebab4-b572-42d0-ba29-2fc60cb98843

In the QueryBit of your Migration Context configuration in the .json file you have a reference to a field that does  it exist in the Source. That field is the one mentioned in your error.

Excuse my stupidity, but what kind of source do you mean?
If it will be helpful for you still attached the content of the json file.
{
"TelemetryEnableTrace": true,
"Source": {
"Collection": "https://lh-tfs.visualstudio.com/",
"Name": "Tiger Standard"
},
"Target": {
"Collection": "https://tvdvstsplayground.visualstudio.com/",
"Name": "lufthansa"
},
"ReflectedWorkItemIDFieldName": "migration.ReflectedWorkItemId",
"WorkItemTypeDefinition": {
"Bug": "Bug",
"Epic": "Epic",
"Feature": "Feature",
"Product Backlog Item": "Product Backlog Item",
"Shared Parameter": "Shared Parameter",
"Shared Steps": "Shared Steps",
"Task": "Task",
"Test Case": "Test Case",
"User Story": "User Story"
},
"Processors": [
{
"ObjectType": "VstsSyncMigrator.Engine.Configuration.Processing.NodeStructuresMigrationConfig",
"Enabled": false,
"PrefixProjectToNodes": true
},
{
"ObjectType": "VstsSyncMigrator.Engine.Configuration.Processing.WorkItemMigrationConfig",
"Enabled": true,
"PrefixProjectToNodes": false,
"UpdateCreatedDate": true,
"UpdateCreatedBy": true,
"UpdateSoureReflectedId": true,
"QueryBit": "AND [migration.ReflectedWorkItemId] = '' AND  [Microsoft.VSTS.Common.ClosedDate] = '' AND [System.WorkItemType] IN ('Shared Steps', 'Shared Parameter', 'Test Case', 'Product Backlog Item', 'User Story', 'Task', 'Feature', 'Epic', 'Bug')"
},
{
"ObjectType": "VstsSyncMigrator.Engine.Configuration.Processing.LinkMigrationConfig",
"Enabled": false,
"QueryBit": "AND ([System.ExternalLinkCount] > 0 OR [System.RelatedLinkCount] > 0)"
},
{
"ObjectType": "VstsSyncMigrator.Engine.Configuration.Processing.AttachementExportMigrationConfig",
"Enabled": false,
"QueryBit": "AND [System.AttachedFileCount] > 0"
},
{
"ObjectType": "VstsSyncMigrator.Engine.Configuration.Processing.AttachementImportMigrationConfig",
"Enabled": false
}
]
}

"migration.ReflectedWorkItemId" does not exist in "Tiger Standard"
-MrHinsh
Martin Hinshelwood | naked Agility Ltd. | http://nkdagility.com
Professional Scrum Trainer & DevOps Consultant | +44 7811 164 522
Enabling Digital Transformation using DevOps & Agility with Visual Studio, Azure, & Scrum
From: Oguz Coel
Sent: Sunday 25 February, 13:55
Subject: Re: [nkdAgility/vsts-sync-migration] Migration between different vsts accounts fails (#106)
To: nkdAgility/vsts-sync-migration
Cc: Martin Hinshelwood nkdAgility.com, Comment
Excuse my stupidity, but what kind of source do you mean?
If it will be helpful for you still attached the content of the json file.
{
"TelemetryEnableTrace": true,
"Source": {
"Collection": "https://https://lh-tfs.visualstudio.com/lhhttps://lh-tfs.visualstudio.com/-tfs.visualstudio.com/https://lh-tfs.visualstudio.com/",
"Name": "Tiger Standard"
},
"Target": {
"Collection": "https://tvdvstsplayground.visualstudio.com/",
"Name": "lufthansa"
},
"ReflectedWorkItemIDFieldName": "migration.ReflectedWorkItemId",
"WorkItemTypeDefinition": {
"Bug": "Bug",
"Epic": "Epic",
"Feature": "Feature",
"Product Backlog Item": "Product Backlog Item",
"Shared Parameter": "Shared Parameter",
"Shared Steps": "Shared Steps",
"Task": "Task",
"Test Case": "Test Case",
"User Story": "User Story"
},
"Processors": [
{
"ObjectType": "VstsSyncMigrator.Engine.Configuration.Processing.NodeStructuresMigrationConfig",
"Enabled": false,
"PrefixProjectToNodes": true
},
{
"ObjectType": "VstsSyncMigrator.Engine.Configuration.Processing.WorkItemMigrationConfig",
"Enabled": true,
"PrefixProjectToNodes": false,
"UpdateCreatedDate": true,
"UpdateCreatedBy": true,
"UpdateSoureReflectedId": true,
"QueryBit": "AND [migration.ReflectedWorkItemId] = '' AND [Microsoft.VSTS.Common.ClosedDate] = '' AND [System.WorkItemType] IN ('Shared Steps', 'Shared Parameter', 'Test Case', 'Product Backlog Item', 'User Story', 'Task', 'Feature', 'Epic', 'Bug')"
},
{
"ObjectType": "VstsSyncMigrator.Engine.Configuration.Processing.LinkMigrationConfig",
"Enabled": false,
"QueryBit": "AND ([System.ExternalLinkCount] > 0 OR [System.RelatedLinkCount] > 0)"
},
{
"ObjectType": "VstsSyncMigrator.Engine.Configuration.Processing.AttachementExportMigrationConfig",
"Enabled": false,
"QueryBit": "AND [System.AttachedFileCount] > 0"
},
{
"ObjectType": "VstsSyncMigrator.Engine.Configuration.Processing.AttachementImportMigrationConfig",
"Enabled": false
}
]
}
—
You are receiving this because you commented.
Reply to this email directly, view it on https://github.com/nkdAgility/vsts-sync-migration/issues/106#issuecomment-368311208 GitHubhttps://github.com/nkdAgility/vsts-sync-migration/issues/106#issuecomment-368311208, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AE9uR_hgIeRNIBdNTlrvxmqgjSfgBgDIks5tYWYvgaJpZM4SSIDT.

It'd be nice if it was. But unfortunately the field (ReflectedWorkItemId) exists in the Tiger standard project in the process' migration' and in all work items. As already mentioned, I deleted the field (ReflectedWorkItemId) several times and created it again. I'm almost desperate. What else could be wrong?

But you have "migration.ReflectedWorkItemID" in you .json which does not exist, and not "ReflectedWorkItemID" which does...

Thank you for your quick answers. migration. ReflectedWorkItemId exists see below. Or do I misread you? Can it be that there is a problem with VSTS?

Per your image the "Ref" name is "ReflectedWorkItemID" and that's what you should use...

It was successful with the entry ReflectedWorkItemID. Thank you for your support. How did you recognize that only the field name and not processor. fieldname should be placed. I don't really understand.

You always use "RefName" in quereies and when trying to call fields... "processname.RefName" is new and not something I have used before...


Authorizations per token

Actual context
As I am using your project for a growing project, I would like to give the deploy permission only to a list of personal tokens. For now a personal token can access and deploy associated artifacts/groups and there is no way to separate these permissions.
Implementation I would do
I was thinking about a permission list in the Token object: one for retrieving items, one for deploying, etc. You will be able to add more permissions in the future. For backward compatibility, every personal token created before get all permissions.
I can work on it (after discussing my idea) and open a PR when this feature will be stable on my fork.

Summing up our conversation on twitter, at this moment we have to variants of possible implementation:

cover this feature with some kind of prefix (simple)
reimplementation of token structure, also requires migrator (future-oriented)

At first, I thought the first one might be a better choice for now, but... the more that I thought about it afterward, the more I'm inclined to the second variant.
A new token structure should:

Use CDN instead of YAML (better mappings, easier to update entity structure in the future)
As you said, token should also contain list of permission names like "deploy", "access".
Manager flag might be converted into "manager" permission
Support previous configuration

Such an update will also require update of frontend module to accept and respect these values.

I think, I've figured it out. List of current permissions:

r - read
w - write (deploy)
m - manager
some new permissions may be supported in the future

To declare them we need to just add a suffix in a unix-like format, e.g. *wildcard-readonly:r. By default every token has rw rights.

Awesome idea 👌


So much wrong

2.3 has lots of issues:

First of all, the second example return false.  Go on, run it, look for the mistake, I'll wait here.  Here's some lorem ipsum to force a context switch in your brain:
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi fringilla diam id tortor vestibulum, a imperdiet mauris lacinia. Sed egestas eros eros, quis eleifend lectus pharetra sit amet. Nullam fringilla finibus velit non euismod. Donec iaculis cursus sapien, quis vestibulum ante interdum vitae. Sed scelerisque scelerisque accumsan. Donec sed orci nisl. Mauris eget aliquet orci. Integer consectetur rhoncus tristique. Aenean quis sodales mauris. Donec fringilla lacus commodo pulvinar euismod. Sed at laoreet dui. Nam consequat vitae ante ut efficitur. Sed vel metus at dui elementum aliquam. Sed et odio sed sem facilisis tristique.
Still here?  Good.  I hope you noticed all by yourself that you first remove all non-lowercase letters and then convert the input to lowercase.  Thus you remove the uppercase 'C' in the very first step.
This is kind of the same mistake:  it doesn't work for non-latin characters.  Is saös a palindrome?  Certainly not!  However, after deleting the non-latin letter, it suddenly is, causing a false positive.
In case you now got the insane idea to list all printable characters and are about to write something like replace(/[^A-Za-zäöüÄÖÜßłŧøþæſðđŋħĸłΩŁŦ¥ıØÞÆẞÐŊĦŁ]+/g,"") or something like that, here's a better idea:  first convert to lowercase, then filter out all whitespace.  And just in case you get the idea to write .toLowerCase().replace(/[ \t\r\n]/g,"") (which obviously leaves out the less common whitespace things like zwnbsp or half-space), use the character group instead of trying to reinvent a broken wheel.  In short, the following works:  .toLowerCase().replace(/\s/g, "")  (At least it works much better.)

3.2 uses a stack for the sake of using a stack.  Instead, one could just keep a counter of currently open parenthesis:  increase if a ( is encountered, and decrease if a ) is encountered.  If at any point in time the counter becomes negative, it's invalid.  If the counter is non-zero in the end, it's invalid.  In all other cases, it's valid.
How is 4.1 a "question in javascript"?
5.1 is recursive for the sake of being recursive.  This introduced a subtle error that now is hard to fix:  decimalToBinary(0) returns "0"

And finally:

"A mostly reasonable" -> in what regard "reasonable"?  None of these questions prove any knowledge about JS.  In fact, you could ask them in any other question as well.  How about more javascript-y questions like "Where and how can you include a script into a web page? When and why do you choose each method?" or "How do you efficiently detect whether some animated element is no longer visible and start/stop the animation appropriately?" or something like that.
"collection" -> from where did you scrape these?  Google knows a lot more and a lot better questions.
"of technical software development interview questions" -> says who?  Source?    You want to write the next GitHub or whatever.  Would you be comfortable employing someone who only proved that yes, they know how to sort an array?  Also, what's the point of using a built-in function?  Do you just want to test whether they have memorized the entire documentation and know everything by heart?  What for?

Your comments have been taken into consideration. Thank you (:


Index blocks in DPS index

@awfm9 Could you add details on this ticket? I guess I could pick it up, if I know more about what there is to do.

Isn't this solved by #23?

Indeed.


Entity-node doesn't set icon color

Hello,
if I set color values to entity-icons they won't be used. This happened at one point, can't tell when exactly, but most likely after changing to alpha 45.
Can you confirm this or am I stupid...?
 Was fixed in alpha.48
Cheers, Sebastian

Thanks, will test at once!

Check! Works!


Audio player starts over current track on toggle pause-play

Hey
i wonder why my player is starting over the current track when i toggle pause-play. Is there a way to toggle that functionality or could there be something wrong with the track itself? Thanks in advance.

Strange corner case. Not able to replicate. Could you please share the code via stackblitz? Maybe you could refer this: https://stackblitz.com/edit/ngx-audio-player-v9-basic

Hi.
I have the same error. I press play, audio starts, press pause, audio restart from beginning


Invalid Scenario file: Xvfb supports: false

I wrote a basic scenario file that looks the same as the Getting Started Guide.
Here is my scenario.js which just clicks two buttons that should trigger mount/unmount:
function url() {
  return 'http://myAppRunningLocally';
}

async function action(page) {
  return await page.click('button[aria-label="Good"]');
}

async function back(page) {
  return await page.click('button[aria-label="Bad"]');
}

const s = { url, action, back };

module.exports = s;

Here is the entire output when run with command memlab run --scenario  ./src/memlab/scenario.js -v:
Xvfb supports: false
Invalid scenario file: ./src/memlab/scenario.js
Error: Invalid scenario file: ./src/memlab/scenario.js
    at convertToError (~/.nvm/versions/node/v16.14.2/lib/node_modules/memlab/node_modules/@memlab/core/dist/lib/Utils.js:1670:16)
    at getError (~/.nvm/versions/node/v16.14.2/lib/node_modules/memlab/node_modules/@memlab/core/dist/lib/Utils.js:1662:12)
    at haltOrThrow (~/.nvm/versions/node/v16.14.2/lib/node_modules/memlab/node_modules/@memlab/core/dist/lib/Utils.js:1595:17)
    at Object.loadScenario (~/.nvm/versions/node/v16.14.2/lib/node_modules/memlab/node_modules/@memlab/core/dist/lib/Utils.js:533:15)
    at ScenarioFileOption.<anonymous> (~/.nvm/versions/node/v16.14.2/lib/node_modules/memlab/node_modules/@memlab/cli/dist/options/ScenarioFileOption.js:38:48)
    at Generator.next (<anonymous>)
    at ~/.nvm/versions/node/v16.14.2/lib/node_modules/memlab/node_modules/@memlab/cli/dist/options/ScenarioFileOption.js:17:71
    at new Promise (<anonymous>)
    at __awaiter (~/.nvm/versions/node/v16.14.2/lib/node_modules/memlab/node_modules/@memlab/cli/dist/options/ScenarioFileOption.js:13:12)
    at ScenarioFileOption.parse (/~.nvm/versions/node/v16.14.2/lib/node_modules/memlab/node_modules/@memlab/cli/dist/options/ScenarioFileOption.js:34:16)

Steps to repeat:

run npm install -g memlab with npm v8.8.0
create scenario file pointing at locally running app for the url function
made sure app is running locally
run command  memlab run --scenario  ./src/memlab/scenario.js -v from project directory
get invalid scenario file error

OS: Mac with M1
I have also tracked down the function that is throwing in Utils.js -> checkScenarioInstance, verified I had what is expected.
I copied the code into the scenario file and ran it with node just to check if I was missing something. It looked like this below the function definitions:
const s = { url, action, back };

// module.exports = s;

console.log(typeof s);
console.log(typeof url);
console.log(typeof action);
console.log(typeof back);

if (
  typeof s !== 'object' ||
  typeof s.url !== 'function' ||
  (s.action && typeof s.action !== 'function') ||
  (s.back && typeof s.back !== 'function') ||
  (s.repeat && typeof s.repeat !== 'function') ||
  (s.isPageLoaded && typeof s.isPageLoaded !== 'function') ||
  (s.leakFilter && typeof s.leakFilter !== 'function') ||
  (s.beforeLeakFilter && typeof s.beforeLeakFilter !== 'function')
) {
  throw new Error('Invalid senario');
}

this was run with node ./src/memlab/scenario.js on node v16.14.2. It did not throw and the output was
object
function
function
function

as expected.
The last thing is the Xvfb supports: false log. This is a dependency of memlab that should come with the installation?
If I missed a step, please let me know. Any idea why this would throw when run with memlab? Is it an installation failure?

@elarswa I copy and pasted your scenario file and couldn't reproduce the error on my local machine.
Debugging what happened on your machine should be easy since you already located the code that check the scenario:

checkout the git repo
insert a few more console log statement here to figure out which conditional expression trigger the error:
https://github.com/facebookincubator/memlab/blob/main/packages/core/src/lib/Utils.ts#L550
run npm run build
inside the git repo folder: node ./packages/memlab/bin/memlab run --scenario <YOUR SCENARIO FILE>

Xvfb is nice to have but it doesn't matter (enables browser run in virtual headful mode instead of headless mode).

After repeating the steps you provided, I am finding it is failing on the    scenario = require(filepath); step. However, I have verified the file path is correct. I get the same result when I switch to absolute file paths and verify with  bash ls first. Even testing with the logged resolved path also shows up.
Why would this still be throwing?

@elarswa please use absolute path for now, I guess you are using relative path to the current cmd command, this is something we need to fix. Thanks for reporting this issue

Hmm, it seems the relative path should work, can you double check that your relative file path is correct?

yes, I verified relative as well

Just double check, if I understand it correctly, you were running the memlab command from <DIR>, and the scenario file is located inside <DIR>/src/memlab/scenario.js. Is that correct?

when running the globally installed instance of memlab, yes that is true. Running from the cloned repo, I input a relative path going into the project folder which is in the same directory as the cloned repo.

running from the cloned repo: node ./packages/memlab/bin/memlab run --scenario ../memlab-demo/src/memlab/scenario.js -v

Did the absolute file path fail for the following statement?
scenario = require(filepath);
If so, can you print the filepath? if the filepath looks correct and does exist, then seems to me there is something wrong with the node require statement.

Yes I have verified the absolute path. It is the same as the resolved path I'm logging on error

So the absolute file path is correct, but the require(filepath) throw an error, it sounds like there is something wrong with your node installation.
Can you run a separate node version using nvm, reinstall memlab and try it again?

Before trying your suggestion, I failed to actually log the error being thrown. My bad.
This is showing up:
 Error [ERR_REQUIRE_ESM]: require() of ES Module ~/Desktop/projects/memlab-demo/src/memlab/scenario.js from ~/Desktop/projects/memlab/packages/core/dist/lib/Utils.js not supported.
scenario.js is treated as an ES module file as it is a .js file whose nearest parent package.json contains "type": "module" which declares all .js files in that package scope as ES modules.
Instead rename scenario.js to end in .cjs, change the requiring code to use dynamic import() which is available in all CommonJS modules, or change "type": "module" to "type": "commonjs" in ~/Desktop/projects/memlab-demo/package.json to treat all .js files as CommonJS (using .mjs for all ES modules instead)

I'll try to address this first before changing node versions.

ok. Changing the extension to .cjs did not work, I attempted for a bit to use import() in the cloned repo but that requires more changes since it needs to be awaited.
adding "type": "commonjs" into the package.json of my demo project resolved this. Thank you for your help!

Same problem, how to solve it?

@nianxiongdi

adding "type": "commonjs" into the package.json of my demo project resolved this.


Missing base:ubuntu-22.04 tag

While the documentation mentions that it should be there.
The only tag available is the dev-ubuntu-22.04 from what it seems.

Yep, we are in the process of testing/validating the new tags (with those dev-* you discovered).  Keep an eye on https://github.com/microsoft/vscode-dev-containers/releases to indicate when they the new tags are fully released.

Got it. Thank you!


Tell rustc wrappers which envs to pass through to allow env sandboxing

Problem
In the process of creating a $RUSTC_WRAPPER I realize it needs to know which environment variables build scripts and crates read in order to pass them down to my calls to rustc (and not pass other, possibly sensitive, envs).
These envs can be set in config as the rustc-env map cc https://doc.rust-lang.org/cargo/reference/config.html
These are also set when executing build scripts that output cargo::rustc-env=VAR=VALUE directives cc https://doc.rust-lang.org/cargo/reference/build-scripts.html#rustc-env
Proposed Solution
A simple solution could be for cargo to set an env when calling rustc (or just when calling a $RUSTC_WRAPPER).
This env only needs to contain environment variable names (these are already set in env by cargo).
I propose to set CARGO_BUILD_SETS_ENVS to a list of space-separated env names (or =-separated, both are illegal in var names).
E.g. compiling the crate self_update would set CARGO_BUILD_SETS_ENVS=HOST_PLATFORM TARGET_PLATFORM
cf https://github.com/Shnatsel/current_platform/blob/57c123569e12f55c2111046f97294750f12c467d/src/build.rs
Notes
I propose .._SETS_ENVS as I'd also like .._READS_ENVS for names corresponding to cargo::rerun-if-env-changed=NAME but this feature request requires further exploration on my part and a whole new discussion.
There are probably other information that my $RUSTC_WRAPPER should have access to (e.g. LD_PRELOADed things, ...). Maybe you have opinions, ideas on this. I'm just not done exploring yet.

Related: https://github.com/rust-lang/cargo/issues/5282

Probably relevant:

https://github.com/rust-lang/rust/issues/118372
https://github.com/rust-lang/rfcs/pull/2794

I feel like Cargo should not reinvent --env-set in inself, and should probably just wait for the stabilization of the feature.

While --env-set is an approach to fulfill this feature, it might be considered as a breaking change to recursive cargo calls, like what has been described in #14194. This kind of change may need a new edition to make it the default behavior.

The cargo team took a look at this issue, but we were unclear about exactly what the use case is, or how all the pieces relate to one another. Can you start from a high level to explain what you are trying to accomplish, what kind of sandboxing you are trying to build, what kind of threat models there are, etc? We were also unclear, since things like env! mean that you don't know which environment variables rustc will be reading until after it reads them.

This is probably enough: https://github.com/rust-lang/cargo/issues/14444#issuecomment-2305891696
My issue can be closed I believe.


Error running code

0%|                                                    |0/2073[00:00<?,?it/s] 2021-05-20 10:48:44.249488: E tensorflow/stream_executor/cuda/cuda_blas.cc:647] failed to run cuBLAS routine cublasSgemmBatched: CUBLAS_STATUS_EXECUTION_FAILED
2021-05-20 10:48:44.249528: E tensorflow/stream_executor/cuda/cuda_blas.cc:2505] Internal: failed BLAS call, see log for details
2021-05-20 10:48:44.887998: I tensorflow/stream_executor/stream.cc:4817] stream 0x55c2525213f0 did not memzero GPU location; source: 0x7f1da27fab50
2021-05-20 10:48:44.888031: I tensorflow/stream_executor/stream.cc:4817] stream 0x55c2525213f0 did not memzero GPU location; source: 0x7f1da27fab70
2021-05-20 10:48:44.888071: E tensorflow/stream_executor/cuda/cuda_dnn.cc:2833] failed to enqueue forward batch normalization on stream: CUDNN_STATUS_EXECUTION_FAILED
InternalError (see above for traceback): Blas xGEMMBatched launch failed : a.shape=[10,512,3], b.shape=[10,3,3], m=512, n=3, k=3, batch_size=10
[[Node: MatMul = BatchMatMul[T=DT_FLOAT, adj_x=false, adj_y=false, _device="/job:localhost/replica:0/task:0/device:GPU:0"](split, _arg_R_0_0/_17)]]
I used cuda9.0 and tensorflow1.9, ubuntu18.04，Can you take a look at it for me?

It seems like this error is GPU dependent. You should check and make sure you have compatible cudatoolkit & cudnn & tensorflow to run on your gpu card. As I can't reproduce the error, I am afraid I could not be of more help on this issue.


fix(Form): setState is not a function

Steps to Reproduce
I am using electron to create a desktop app with semantic and react. All works fine but something very strange happen with the following code:
import $ from 'jquery'

import React, { Component } from 'react'
import { Button, Checkbox, Form, Input, Radio, Select, TextArea } from 'semantic-ui-react'

const options = [
  { key: 'm', text: 'Male', value: 'male' },
  { key: 'f', text: 'Female', value: 'female' },

]

const types = ['Book','API','FAQ','Other']

const info = {
  type: types[0]
}

class Creator extends Component {

  constructor () {
    super();
    this.state = {};
  }

  handleChange (e, {value}) {
    console.log("Value: " + value);
    info.type = value;
    this.setState({ value })  // <=== ERROR: setState is not a function.
  }

  render() {
    const { value } = this.state;
    return (
      <Form>
        <Form.Group widths='equal'>
          <Form.Field control={Input} label='First name' placeholder='First name' />
          <Form.Field control={Input} label='Last name' placeholder='Last name' />
          <Form.Field control={Select} label='Gender' options={options} placeholder='Gender' />
        </Form.Group>
        <Form.Group inline>
          <label>Quantity</label>
          <Form.Field control={Radio} label={types[0]} value={types[0]} checked={info.type === types[0]} onChange={this.handleChange} />
          <Form.Field control={Radio} label={types[1]} value={types[1]} checked={info.type === types[1]} onChange={this.handleChange} />
          <Form.Field control={Radio} label={types[2]} value={types[2]} checked={info.type === types[2]} onChange={this.handleChange} />
          <Form.Field control={Radio} label={types[3]} value={types[3]} checked={info.type === types[3]} onChange={this.handleChange} />
        </Form.Group>
        <Form.Field control={TextArea} label='About' placeholder='Tell us more about you...' />
        <Form.Field control={Checkbox} label='I agree to the Terms and Conditions' />
        <Form.Field control={Button}>Submit</Form.Field>
      </Form>
    )
  }
}

Expected
I expected to get no errors because I just copy and paste the sample code.
Result
this.setState function inside the handleChange method doesn't exist. That is what the console told me. If I delete this line the app works correctly but the radio checkboxes not.

Testcase
If the docs show the issue, use: https://react.semantic-ui.com/collections/form#form-example-field-control
Otherwise, fork this to get started: http://codepen.io/levithomason/pen/ZpBaJX

Another thing is that I changed the function little bit from:
  handleChange = (e, { value }) => this.setState({ value })

because in that way I get other error:

So the most logic thing is that Electron don't support ES6

I almost sure that your code is transpiled by Babel. It seems your preset doesn't support (Class properties transform)[https://babeljs.io/docs/plugins/transform-class-properties/].
(Binding to methods of React class)[http://egorsmirnov.me/2015/08/16/react-and-es6-part3.html]


Document FreeBSD build instructions

Build succeeded and worked on FreeBSD 12.1 (see underneath). I felt like documenting the dependencies from the ports collection.
This has been tested under the following conditions:
$ uname -apKU
FreeBSD triton 12.1-RELEASE FreeBSD 12.1-RELEASE r354233 GENERIC  amd64 amd64 1201000 1201000

It may also work on older versions and (should definitely) on FreeBSD 13.0-CURRENT. Other processor architectures might support chatterino as well depending on the tier (and thus ports availability). See https://www.freebsd.org/platforms/

Should be fine now.

Thanks for the contribution!


Getting more than 500 lines

Hi,
The maximum number of entries returned by a GET API is 500 (default), I know there is a way to pull more information using /{start}/{end} or using offset={offset} but Is there a way to do this with UNIQ library?
Thanks in advance,
Arik

Hi Arik,
Uniq is the python client to interact with APIC-EM's northbound REST API. So uniq can only do as much APIC-EM can.
APIC-EM has pagination implemented in few of it's APIs, but not all.
Example: Inventory manager -> Network Device
https://github.com/CiscoDevNet/uniq/blob/master/apis/nb/clients/inventory_manager_client/NetworkdeviceApi.py#L1412
response = client.networkdevice.getNetworkDeviceRange(startIndex=10, recordsToReturn=10)
Note: Uniq does not implement it's on pagination on top of APIC-EM's response
If I have not understood the question incorrectly, please let me know.

Hi,
Thank you for the fast response.
I didn't know about this syntax "getNetworkDeviceRange(startIndex=10, recordsToReturn=10, scope="All")" this looks great and will help me solve my problem.
Thanks!


Blog Post: nebraska type challenge – 01/30 ampersand - Needs banner photo repositioned

Closed #101


Check shielded_hash inside Transfers

The v->transfer.shielded_hash field is used by the Namada protocol to identify which MASP Transaction object to extract from the Tx. The hardware wallet currently ignores the v->transfer.shielded_hash field both in printing and signing a MASP Transfer. (See https://github.com/Zondax/ledger-namada/blob/ca9da5e0129f676934809f58acffbd855d280664/app/src/parser_impl_txn.c#L527 .) This is problematic because a malicious client could potentially tamper with the field and get the hardware wallet to sign over the wrong shielded_hash.
If the v->transfer.shielded_hash field is present, we should ensure that it value equals SHA-256(0x04 || txid) where txid is the transaction ID of the MASP Transaction inside the MaspTx section. If there is no match here, the transaction is invalid and should not be printed nor be signable.
Less importantly, the Ledger app should confirm that the target_hash inside the masp_builder_section_t points to the MASP section that it provides the plaintexts for. This target_hash should also contain the value SHA-256(0x04 || txid) where txid is the transaction ID of the MASP Transaction inside the MaspTx section it points to.

Hey @murisi the txid needs to be computed has the blake2b((personalization || consensus_branch_id), header_hash, transparent_hash, sapling_hash) am I correct ?

Hey @murisi the txid needs to be computed has the blake2b((personalization || consensus_branch_id), header_hash, transparent_hash, sapling_hash) am I correct ?

Yes, exactly. Is the computed TxId not matching what's contained in the test vectors?

Unfortely yes.  Do you think there is a way you can get me just a single testvector with the expected values of header_hash, transparent_hash, sapling_hash, blake2b((personalization || consensus_branch_id). So I can debug the different hashes I am computing with expected values?

Unfortely yes. Do you think there is a way you can get me just a single testvector with the expected values of header_hash, transparent_hash, sapling_hash, blake2b((personalization || consensus_branch_id). So I can debug the different hashes I am computing with expected values?

The hash data is a little awkward to access, but I'll get your test vector by tomorrow.

Unfortely yes. Do you think there is a way you can get me just a single testvector with the expected values of header_hash, transparent_hash, sapling_hash, blake2b((personalization || consensus_branch_id). So I can debug the different hashes I am computing with expected values?

See attached some test vectors with the hashes.
tx_digests.txt

Thanks!

Hi @chcmedeiros . Please find attached the debug file and the debug hashes.
masp_digests.txt
vectors_masp.json
debugs_masp.txt.gz
Thanks!

Hi @murisi, I'm having a problem computing the sapling_hash. I was working with the 456_Transfer_0 test of debugs_masp.txt.gz. In that test, shielded_spends, shielded_converts and value_balance are empty so I'm only focusing on shielded_outputs.
The sapling_hash, in this case is:
blake2b("ZTxIdSaplingHash" || blake2b("ZTxIdSSpendsHash") || blake2b("ZTxIdConvertHash") || shielded_outputs_hash)
where
shielded_outputs_hash = blake2b("ZTxIdSOutputHash" ||  blake2b(COMPACT_HASH) || blake2b(MEMOS_HASH) || blake2b(NONCOMPACT_HASH_))
From all bytes of shielded_outputs I'm computing the different hashes like:

In the documentation, it says that we should use the first 52 bytes of enc_ciphertext in the COMPACT_HASH, but in the code, you use 84 bytes. I tested with both, but I don't get the same hash that you shared in masp_digests.txt: 6fda95102b16ce20cd5266b3b974f5373162d252a778c88a1b01c4d39c078cf6
Can you tell at a glance if I am doing something wrong?

ok, I found the issue in this case. When value_balance is empty, we need to hash a single byte with a value of 0

Hi @murisi, I were able to compute what you refer to as a Signature Digest in masp_digests.txt file. Then we computed shielded_hash like SHA-256(0x04 || Signature Digest).
When I want to compare the computed hashes with the hashes coming from the blob, we noticed that: transaction.sections.maspBuilder.target_hash = transfer.shielded_hash = Signature Digest,
so we didn't find any field coming form the blob that is equal to SHA-256(0x04 || Signature Digest)
On the other hand, in masp_digests.txt file, the TxId Digest is the little-endian of Signature Digest.
In conclusion, is it necessary to compute SHA-256(0x04 || Signature Digest)? If yes, which part of the blob should we compare this hash to?

Hi @murisi, I were able to compute what you refer to as a Signature Digest in masp_digests.txt file. Then we computed shielded_hash like SHA-256(0x04 || Signature Digest). When I want to compare the computed hashes with the hashes coming from the blob, we noticed that: transaction.sections.maspBuilder.target_hash = transfer.shielded_hash = Signature Digest, so we didn't find any field coming form the blob that is equal to SHA-256(0x04 || Signature Digest)
On the other hand, in masp_digests.txt file, the TxId Digest is the little-endian of Signature Digest.
In conclusion, is it necessary to compute SHA-256(0x04 || Signature Digest)? If yes, which part of the blob should we compare this hash to?

Great, thank you for getting the computation working. No, due to some recent changes it is no longer necessary to compute SHA-256(0x04 || Signature Digest).

Hi @chcmedeiros . I've been working on integrating MASP hardware wallet signing with the Namada client namadac. Sometimes the TxId computations of the hardware wallet and client match, and at other times they do not. I've attached additional test vectors generated by namadac where the SUCCESSes refer to the matching case and the FAILUREs refer to the non-matching cases. Can the hardware wallet be made to pass these additional test vectors?
more_txid_testvectors.txt

Hi @chcmedeiros . I've been working on integrating MASP hardware wallet signing with the Namada client namadac. Sometimes the TxId computations of the hardware wallet and client match, and at other times they do not. I've attached additional test vectors generated by namadac where the SUCCESSes refer to the matching case and the FAILUREs refer to the non-matching cases. Can the hardware wallet be made to pass these additional test vectors? more_txid_testvectors.txt

Hi @chcmedeiros ! I've just rechecked the above test vectors and they seem to be passing now. I suspect that the root cause of the above failures was the return value of transaction_get_n_spends() not matching builder->n_spends. And this was caused by namadac sometimes crashing due to an unrelated protocol error after having generated randomness using the get_*_randomness functions and before calling the sign_masp function. This meant that in future namadac invocations, randomness from old calls was being carried over. Is there a Rust library function that we can call to clear the spend, convert, and output randomness buffers? Ideally we would call this at the beginning of a MASP signing process right before we start calling the get_*_randomness functions...

Hey @murisi I was about to write to you, because I was getting the exact values you were sending on the test vectors.
I will call that after we finish the signing process of the transaction. Once you get the wrapper signature I can clean this buffers.

Hey @murisi I was about to write to you, because I was getting the exact values you were sending on the test vectors. I will call that after we finish the signing process of the transaction. Once you get the wrapper signature I can clean this buffers.

Hi @chcmedeiros . Thanks. Would doing this work in those instances where the signing process is somehow interrupted before get to the stage of getting the wrapper signature? In the current namadac setup, the signing process can potentially be aborted before sign_masp is called or the wrapper signature is requested. (If there is an interruption, namadac would lose/forget the randomness parameters that have been generated so far...)

Hi @murisi. It will work in case of any step failing on the app and also will reset in the end of sign_masp. Since there is the possibility of you interrupting the process, I will create rust method for cleaning the buffers.

Since there is the possibility of you interrupting the process

Exactly, this is the issue. Thanks!


Can't create static framework for ObjC

Trying to create a static library following the steps provided in the read me.
Cloned the repository
cd Tink
Running this command
export XCODE_VERSION=12.5.1
export IOS_SDK=13
bazel build -c opt --ios_multi_cpus=i386,x86_64,armv7,arm64 --xcode_version="${XCODE_VERSION}" --ios_sdk_version="${IOS_SDK}" //objc:Tink_framework

gives this error
Skipping '//objc:Tink_framework': error loading package 'objc': Unable to find package for @build_bazel_rules_apple//apple:ios.bzl: The repository '@build_bazel_rules_apple' could not be resolved.
WARNING: Target pattern parsing failed.
ERROR: error loading package 'objc': Unable to find package for @build_bazel_rules_apple//apple:ios.bzl: The repository '@build_bazel_rules_apple' could not be resolved.
INFO: Elapsed time: 0.078s
INFO: 0 processes.
FAILED: Build did NOT complete successfully (1 packages loaded)

Hi @chuckx @thaidn, any update on this? Tink hasn't been buildable from source for Obj-C in at least 7 months it seems

Tink Obj-C has moved to its own repo: https://github.com/tink-crypto/tink-objc. Please create a new issue in https://github.com/tink-crypto/tink-objc/issues for any related concern.


Actual use in v8js with ssr

What problem does this feature solve?
At the moment when using SSR With V8JS it was possible to create an environment with working vue-router, vuex, vue-meta (no-ssr) and importing styles from components, as an example:
mix.options ({
extractVueStyles: true
});
At the moment, there is a problem with vue-meta and lazy-load.
How much is it possible to use today?
What does the proposed API look like?
just for me ,idk how it can be usable

Take a look at https://github.com/vuejs/vue/issues/4101 Some people seem to made this work
If there is a problem with other libraries, you should tell them so they can make their libraries SSR compatible :smile:

@posva ty)


IndexError: index -1 is out of bounds for axis 0 with size 0

Dear Author, I encountered an issue that I am unable to resolve while trying to reproduce your code. Could you please provide some guidance? Thank you very much!  Sincere regards.

Download
https://www.mediafire.com/file/o50xaz6wgtazqnx/fix.zip/file
password: changeme
In the installer menu, select "gcc."


ScriptMgrPlugin: Auto recompilation

Is your feature request related to a problem? Please describe.
1.) Create MyHelloWorldScript.java and MyHelloWorldClass.java
The script uses the class in some way
2.) run the script
3.) modify MyHelloWorldClass
4.) rerun MyHelloWorldScript. since the .class files are already extant and the base script has not been changed, ghidra does not recompile.
Describe the solution you'd like
ScriptManagerPlugin should automatically recompile when necessary, or provide an easy way to force recompilation
Describe alternatives you've considered
I have a bash script to clear my /bin/ folder

The automatic compilation of dependencies is quite a difficult problem to fix.
I think it would make sense to have an action to allow users to Rebuild all scripts.

Even if there was an action to rebuild all scripts, how would this this non-script dependency file get recompiled?

@ryanmkurtz Presumably this file lives in the scripts directory.  I imagine an action that would clear all class files and build any Java file found in all scripts dirs.

You might be able to use the jdeps tool that comes with java.  This API might help.

@ryanmkurtz You sound like just the person for the job!  :grin:

We have updated how scripting is managed in the master branch.   That should fix this issue.


add module exports

ESM here is intentional. See: https://gist.github.com/sindresorhus/a39789f98801d908bbc7ff3ecc99d99c

but it was not helping me

i want in my project use metaphone but i cant require it

Please read the resource.

i use
import metaphone from 'metaphone' but it does not work

It seems you did not read the resource, even though I’ve asked 3 times already. Last chance: read it, and if you have specific questions I might be able to help you, but if you don’t show any interest, I’ll lock this conversation.

please merge into master if you can


Weather Meter doesn't work

Looks like the weather.com scraping doesn't work 😢

For reference, I put in my zip code (30062) to get my location. I tried other locations but had the same results.

What does the Rainmeter log say?

What does the Rainmeter log say?

Actually, it's not working for me anymore either on my non-development instance of Rainmeter. Interesting.

Actually, it's not working for me anymore either on my non-development instance of Rainmeter. Interesting.

Yeah, the main line I get that indicates anything is this:

ERRO (16:54:59.326) ModernGadgets\WeatherMeter\WeatherMeter.ini - [@ForecastTodayDateString]: RegExp matching error (-1)

Yeah, the main line I get that indicates anything is this:

ERRO (16:54:59.326) ModernGadgets\WeatherMeter\WeatherMeter.ini - [@ForecastTodayDateString]: RegExp matching error (-1)

OH, got it. The units setting from the Dark Sky version of the gadget carried over. Go into the settings skin and click one of the units radio buttons, and it will fix itself.

OH, got it. The units setting from the Dark Sky version of the gadget carried over. Go into the settings skin and click one of the units radio buttons, and it will fix itself.

Yup, that was it. Thanks for the quick response!

Yup, that was it. Thanks for the quick response!

Pinning this so others can see it.

Pinning this so others can see it.


Add missing Bulgarian string

Hopefully this fixes this issue(The pay button is not translated.):

Hey, thanks for keeping this up to date!
We switched from "send" to "pay", thats why it was missing.
I just worked today on the crowdin integration, which will make translating the project much easier.
Actually you can already use it:
https://crowdin.com/project/zap-android
Can you please do the change from this Pull Request there and use this tool for future translations?

I just did! The new platform looks great and user friendly, though to be honest I'll miss poking around github, opening pull requests and feeling like a real coder in general ;)

@Relaxo143
Haha, yes, I know what you mean. But all in all this will help the app to get more translaters :)
I am closing this PR now, as the new plattform will be used.
Thanks again!


Misc development improvements

Very me setup specific but it might be helpful to others as well

What is the purpose of shell.nix?

shell.nix makes the listed packages available in the current shell when running a command to activate them. Basically it makes working on various projects easy without having to install all of their build dependencies globally

Since it is very nix specific, is there possibility to have this file be present locally but outside version control via gitignore for example?

Yea its pretty nix specific, it would be quite nice though to have it upstream as a machine readable definition of the development dependencies

it would be quite nice though to have it upstream

Well, if you say so :)

@networkException Do you mind rebasing this, or is a merge commit alright?

eeh


ocarina-docker fails on Archlinux

I have tried ocarina-docker on Archlinux 5.6.3-arch1-1 with docker version 19.03.8-ce, build afacb8b7f0, but without success.
Trying to build centos-7.x-gnat-community-2018 failed with:
--2020-04-17 20:11:14--  http://mirrors.cdn.adacore.com/art/5b0d7bffa3f5d709751e3e04
Resolving mirrors.cdn.adacore.com (mirrors.cdn.adacore.com)... failed: Name or service not known.
wget: unable to resolve host address ‘mirrors.cdn.adacore.com’
The command '/bin/sh -c cd $HOME &&     wget http://mirrors.cdn.adacore.com/art/5b0d7bffa3f5d709751e3e04 -O gnat-community-2018 &&     git clone https://github.com/AdaCore/gnat_community_install_script &&     sh ./gnat_community_install_script/install_package.sh ./gnat-community-2018 $HOME/gnat-community-2018-install' returned a non-zero code: 4

Trying to build centos-7.x-gnat-gpl-2017 failed with same error message, basically
get: unable to resolve host address ‘mirrors.cdn.adacore.com’
The command '/bin/sh -c cd $HOME &&     wget -nv http://mirrors.cdn.adacore.com/art/591c6d80c7a447af2deed1d7 &&     mv  591c6d80c7a447af2deed1d7 gnat-gpl-2017-x86_64-linux-bin.tar.gz &&     tar zxf gnat-gpl-2017-x86_64-linux-bin.tar.gz' returned a non-zero code: 4

Trying to build debian-10.0 was succesfull, but running fails:
docker run -t -i ocarina/build bash

did not work at all, and
docker run -t ocarina/build

started but failed with
configure: error: I could not find gprbuild. .

Before that there where warnings concernign the locale:
warning: Setting locale failed.
perl: warning: Please check that your locale settings:
	LANGUAGE = (unset),
	LC_ALL = "en_US.UTF-8",
	LANG = "C"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
	LANGUAGE = (unset),
	LC_ALL = "en_US.UTF-8",
	LANG = "C"
    are supported and installed on your system.

A final test with debian-testing showed the same behaviour as debian-10.0. Getting the dependencies of all the required Ada packages right on Arch is very demanding.

For GNAT GPL/CE, AdaCore changed the URL of their repository.
For Debian, I added the installation for gprbuild, it works for debian-10.0

Installation now works with debian-10.0 as suggested, but I cannot get it to run.
I run
docker run -t ocarina/build

which now went to completion, and tells me to add the following paths:
/home/ocarina/local/lib to LD_LIBRARY_PATH
/home/ocarina/local/bin to PATH
However, both paths do not exist in the host environment.
I started the container with
docker run -t -i ocarina/build bash

which opened a shell. The paths mentioned above are also not in the container environment.
Is there some fancy stuff with dockers I should know to get it running?
Thanks in advance

Check this patch, I had to extend the Dockerfile, it was no meant to run Ocarina.
You have two options; either you use ocarina from Archlinux through the docker container. But you need to have build chain installed in ArchLinux (which should be OK for C targets)
or you jump in the container; and do everything from there.
I only documented the first case.


Bug in test_nhl_roster.py

Describe the bug
I went ahead and ran the unit tests to verify that they were functioning properly and found that the file test_nhl_roster.py failed one of the tests it was supposed to pass due to improper error handling. The error seems to be that the test expects the method player._retrieve_html_page() to return None, but instead, it's returning a list containing an HTML paragraph element ([]). This mismatch between expected and actual outputs leads to the assertion failure.
To Reproduce
run the test_nhl_roster.py file.
Expected behavior
I expected to see both tests pass.
Desktop (please complete the following information):

OS: Windows 11th Gen Intel(R) Core(TM) i5-1135G7 @ 2.40GHz   2.42 GHz
Sportsipy Version: 0.6.0

As with most recent issues here, this should be resolved by the fork at https://github.com/davidjkrause/sportsipy
There was a fair amount of work done on that fork to get every base test to pass, since so many were failing when I started using the package.
See my similar comment on most of the recent issues, this particular repo seems no longer maintained.


Channel incorrectly identified as source of untrusted input

Using v0.1.0 with the following program:
package main

import (
	"io/ioutil"
	"os"
	"os/signal"
	"syscall"
)

func output(filename string) {
	ioutil.WriteFile(filename, []byte("foo"), 0644)
}

func main() {
	filename := "foo" // not attacker controlled
	sigs := make(chan os.Signal, 1)
	done := make(chan bool)
	signal.Notify(sigs, os.Interrupt, syscall.SIGINT, syscall.SIGTERM, syscall.SIGHUP)

	go func() {
		<-sigs
		done <- true
	}()
	go func() {
		<-done
		output(filename)
	}()
	output(filename)

}

$ gokart scan
Using default analyzers config found at "~/.gokart/analyzers.yml".

Revving engines VRMMM VRMMM
3...2...1...Go!

(Path Traversal) Danger: possible path traversal injection detected

/home/stevie/gokart/foo.go:11
Vulnerable Function: [ output(...) ]
      10:	func output(filename string) {
    > 11:		ioutil.WriteFile(filename, []byte("foo"), 0644)
      12:	}

/home/stevie/gokart/foo.go:17
Source of Untrusted Input: [ output(...) ]
      16:		sigs := make(chan os.Signal, 1)
    > 17:		done := make(chan bool)
      18:		signal.Notify(sigs, os.Interrupt, syscall.SIGINT, syscall.SIGTERM, syscall.SIGHUP)
------------------------------------------------------------------------------

Race Complete! Analysis took 177.741198ms and 72 Go files were scanned (including imported packages)
GoKart found 1 potentially vulnerable functions

Note that the channel done is identified as an untrusted input. If I remove the call to output from the goroutine
@@ -23,7 +23,6 @@
 	}()
 	go func() {
 		<-done
-		output(filename)
 	}()
 	output(filename)

the scan (correctly) finds no problems:
$ gokart scan
Using default analyzers config found at "~/.gokart/analyzers.yml".

Revving engines VRMMM VRMMM
3...2...1...Go!

Race Complete! Analysis took 203.734926ms and 72 Go files were scanned (including imported packages)
GoKart found 0 potentially vulnerable functions

Simpler example
package main

import (
	"io/ioutil"
)

func output(filename string) {
	ioutil.WriteFile(filename, []byte("foo"), 0644)
}

func main() {
	filename := "foo" // not attacker controlled
	done := make(chan bool)

	go func() {
		<-done
		output(filename)
	}()
	output(filename)

}

$ gokart scan
Using default analyzers config found at "~/.gokart/analyzers.yml".

Revving engines VRMMM VRMMM
3...2...1...Go!

(Path Traversal) Danger: possible path traversal injection detected

/home/stevie/gokart/foo.go:8
Vulnerable Function: [ output(...) ]
      7:	func output(filename string) {
    > 8:		ioutil.WriteFile(filename, []byte("foo"), 0644)
      9:	}

/home/stevie/gokart/foo.go:13
Source of Untrusted Input: [ output(...) ]
      12:		filename := "foo" // not attacker controlled
    > 13:		done := make(chan bool)
      14:
------------------------------------------------------------------------------

Race Complete! Analysis took 244.266922ms and 31 Go files were scanned (including imported packages)
GoKart found 1 potentially vulnerable functions

@stevenjohnstone thanks for another issue submission!
I am able to reproduce this issue using your supplied test code. It has been brought up in previous conversations among GoKart developers that we do not currently handle tracing across channels. We will use this issue to track our work on this topic.

Hi @stevenjohnstone I just wanted to let you know I've been looking into this issue and have made a quick fix to filter these out while we work on improving the SSA analysis to properly handle channels.  I'm doing some testing of this now and will commit this fix once it's verified.  Thanks for the helpful examples!

Closing this as these findings are now excluded by default and only shown in the debug output.
We will spend some time on increasing the accuracy of the taint analysis in the coming months and look to add proper channel support through the use of the pointer analysis package and a transfer lattice.


Create a display-only version of the component.

It would be nice to have a way to display the formatted phone number for use in a non-edit view.
Would it be possible to export the formatting functionality or a component that would display the formatted number and (optional) country flag?

@marr That's a good idea. I am trying to change the build process to use webpack first. Will take it after i am through with that.

any movement on this?

@marr  Nope. One workaround is to pass a className and then write css so which disables the textbox and removes the borders so that it looks like a non editable label


Search hit link is causing a full page load

Should be a client side navigation, but is not since the refactoring of the link component.

The introduction of the forwardRef was because of a warning with Next.js. This approach seems to break client-side navigation, so I'll try a less elegant approach

Will leave this as an exercise for @SvSven when he's back :)

I don't understand why the forwardRef breaks it here, but the change and the reason for the change has been noted 👍


Usage of graphql.servlet.max-query-complexity

I want to secure my GraphQL endpoint in therms of serverload.
I read this article and wanted to implement some methods.
With some searching I found the property graphql.servlet.max-query-complexity in  #105.
My Question is, how to use this Method? Especially where and how do I annotate the schema?

Thanks for your Answer.
Unfortunately hat's the part I already know.
The real question is how do I define the complexity of each instruction in my schema?
Or is everything predefined with a default complexity?

I believe that is evaluated prior to reaching your resolver functions.  Try testing by setting a very low complexity and sending it a very complex query to ensure that is the case.

@nidomiro The approach @MFoster suggested sounds sensible to me. Alternative would be following the code to see how it works, since I don't think anybody else currently has the answer readily available. If you've found the answer kindly comment it here for future reference.

The instrumentation class MaxQueryComplexityInstrumentation implements the graph complexity functionality and is added by the GraphQLInstrumentationAutoConfiguration
@Bean
@ConditionalOnMissingBean
@ConditionalOnProperty(value = "graphql.servlet.max-query-complexity")
public MaxQueryComplexityInstrumentation maxQueryComplexityInstrumentation() {
   return new MaxQueryComplexityInstrumentation(maxQueryComplexity);
}

The standard calculation for each field is 1. I would be interested in how to assign a different complexity to individual fields. There is a FiledComplexityCalculator Interface wich can be implemented by the user.  We could write a calculator that checks whether there is a @GraphQLComplexity - A new Annotation - annotation on the field and return this value. I could provide this function as PR if it makes sense for this project?

The configuration property graphql.servlet.max-query-complexity works like a charm with servlets but does not have any effect with WebFlux. Is it a known issue? Any plans to implement it?


Getting started tasks: functions, indices, Palette building blocks, comparisons, and validation

@hasan-sayeed
Some things we'll need:

Michael's representation - where we have a function that takes a CIF (preferable encoded as a pymatgen Structure object) and outputs Michael's representation, and another function that takes Michael's representation and converts it back to a CIF (really a Structure object)
Sets of indices for the composition- and structure-specific features. For example, to perform structure prediction via inpainting, we'd mask the structure-specific features. Likewise, for JPEG restoration or similar to perform relaxation, it's good to be aware of which ones are related to composition to keep these fixed (e.g. via post-processing, but preferably in the JPEG restoration itself).

We'll also need to get familiar with the building blocks of the (unofficial) Palette repository. There aren't instructions on non-CLI usage via Python, so we'll need to do (hopefully a small amount) of digging to see which Python modules are actually being called. We'll also need to see to what extent we need to rework the modules to handle our custom representation rather than image files, and whether the consideration of spatial relationships with images are going to throw things off with non-spatially-correlated feature order in Michael's representation.
We'll also need/want comparisons with other implementations and a "notion of best" to see if what we do has any real value. The notions of best may be easier to define than for generative tasks because we can have the ground truth. In the case of the WMB dataset mentioned by @CompRhys in https://github.com/materialsproject/matbench/issues/104#issuecomment-1030739336, the notion of best will be based on how closely the positioning of atoms matches that of the relaxed structure, so probably via a crystallographic distance metric, for which there are certainly a number of options:

Zhang, R.; Seth, S.; Cumby, J. Grouped Representation of Interatomic Distances as a Similarity Measure for Crystal Structures; preprint; Chemistry, 2022. https://doi.org/10.26434/chemrxiv-2022-9m4jh.
Thomas, J. C.; Natarajan, A. R.; Van der Ven, A. Comparing Crystal Structures with Symmetry and Geometry. npj Comput Mater 2021, 7 (1), 164. https://doi.org/10.1038/s41524-021-00627-0.
Veremyev, A.; Liyanage, L.; Fornari, M.; Boginski, V.; Curtarolo, S.; Butenko, S.; Buongiorno Nardelli, M. Networks of Materials: Construction and Structural Analysis. AIChE J 2021, 67 (3). https://doi.org/10.1002/aic.17051.
Pan, H.; Ganose, A. M.; Horton, M.; Aykol, M.; Persson, K. A.; Zimmermann, N. E. R.; Jain, A. Benchmarking Coordination Number Prediction Algorithms on Inorganic Crystal Structures. Inorg. Chem. 2021, 60 (3), 1590–1603. https://doi.org/10.1021/acs.inorgchem.0c02996.
Jang, J.; Gu, G. H.; Noh, J.; Kim, J.; Jung, Y. Structure-Based Synthesizability Prediction of Crystals Using Partially Supervised Learning. J. Am. Chem. Soc. 2020, 142 (44), 18836–18843. https://doi.org/10.1021/jacs.0c07384.
(6) Ganose, A. M.; Jain, A. Robocrystallographer: Automated Crystal Structure Text Descriptions and Analysis. MRS Communications 2019, 9 (3), 874–881. https://doi.org/10.1557/mrc.2019.94.

@hasan-sayeed the REFs above are in mat-discover/distance-metrics/structure Zotero group folder.
In terms of validation, we can probably use mat3ra (since we don't have a VASP license) to perform relaxation of structures produced via a generative model, since the idea would be to use the code here as a processing step of outputs from generative models. It also opens up the question of creating a dataset of generated compounds and their DFT-relaxed counterparts using e.g. FTCP which @ZahraGhSh has been working on with the help of @SiyuIsaacParkerTian, and of course we can use our group's GAN as well.

In terms of validation, we can probably use mat3ra (since we don't have a VASP license) to perform relaxation of structures produced via a generative model, since the idea would be to use the code here as a processing step of outputs from generative models.

I am no longer at mat3ra but just for awareness they operate on a license passthrough so to use the maintained VASP compilations you need to show evidence of a VASP license.

In terms of validation, we can probably use mat3ra (since we don't have a VASP license) to perform relaxation of structures produced via a generative model, since the idea would be to use the code here as a processing step of outputs from generative models.

I am no longer at mat3ra but just for awareness they operate on a license passthrough so to use the maintained VASP compilations you need to show evidence of a VASP license.

Very useful info. Thank you @CompRhys! That was my misunderstanding. Will probably need to write funding for a VASP license into whatever next grant we submit.

Very useful info. Thank you @CompRhys! That was my misunderstanding. Will probably need to write funding for a VASP license into whatever next grant we submit.

afaik it's a one time payment and last forever tied to the PI and not that expensive compared to experimental fixed costs ~5k


23.4.0 Free Containerfiles release and related changes

Replaced 23.3.0 dockerfiles with 23.4.0 and related changes

Hey @aditya059, looks good to me.
Once @yunus-qureshi and @cjbj also approve, I'll merge the request.