Refactor/env vars access

Which issue this PR addresses:

This PR corresponds to the task Identify and implement POC of the code to introduce Clean Architecture.
What this PR does / why we need it:

This PR does not represent the direct application of Clean Architecture as it would be very difficult due to the nature and complexity of the project.
I performed a presentation talking about key topics of these PR changes and about some principles that can help the Design of the project in the long term to have a shape more similar to Clean Architecture improving what we have today.
This -> PR is also part of the same task. Using both PRs I  presented key topics that move the direction of the design towards Clean Architecture.
This PR contains > 1 commit so it is easier to navigate and understand. The idea is to squash them when merging but right now I want it that way in case I need to refer to a particular step in the presentation I will conduct.
Test plan for issue:

Unit tests exist. I performed small steps in each commit to not mess up things.
Is there any documentation that needs to be updated for this PR?

N/A.

Detailed optional explanation:
Problems of using env vars everywhere

We couple our code to infrastructure details (runtime environment).
We can not provide different values without modifying the environment (as they are hardcoded).
Changing the name of an env variable affects multiple parts of the codebase (as the code is coupled to the name we use to identify that env var).
We can not write unit tests for those functions as one Unit Test should not touch the runtime environment (I/O, HTTP, file system, etc.) to work.
We loose control of the environment we set as we read/set/validate env variables in multiple places instead of centralising that in a single place.

The image below shows some ideas of the refactoring.

Code evolution walkthrough
We first try to extract the common parts to follow DRY principle.
After the commit  refactor: use env.ValidateVars() when possible with ID e202, we see in:

pkg/util/instancemetadata/dev.go
pkg/util/instancemetadata/prodfromenv.go
pkg/util/keyvault/uri.go
that we can't use the env package because we will have the following compile errors due to import cycle errors:

go build -tags aro,containers_image_openpgp ./...
package github.com/Azure/ARO-RP/cmd/aro
        imports github.com/Azure/ARO-RP/pkg/api/v20191231preview
        imports github.com/Azure/ARO-RP/pkg/api/validate
        imports github.com/Azure/ARO-RP/pkg/api/validate/dynamic
        imports github.com/Azure/ARO-RP/pkg/env
        imports github.com/Azure/ARO-RP/pkg/util/keyvault
        imports github.com/Azure/ARO-RP/pkg/env: import cycle not allowed
package github.com/Azure/ARO-RP/cmd/aro
        imports github.com/Azure/ARO-RP/pkg/api/v20191231preview
        imports github.com/Azure/ARO-RP/pkg/api/validate
        imports github.com/Azure/ARO-RP/pkg/api/validate/dynamic
        imports github.com/Azure/ARO-RP/pkg/env
        imports github.com/Azure/ARO-RP/pkg/util/keyvault
        imports github.com/Azure/ARO-RP/pkg/env: import cycle not allowed
make: *** [build-all] Error 1

Even though we have improved so far (we now apply the DRY principle), we can do better if instead of reading the env variables inside those packages, we directly inject the values from the outer level (main package, where the app is started).
In other words: whenever possible, just touch (read/write) env variables in the main package and inject those values down (in the methods call) to the corresponding packages (Dependencies Injection principle). By doing that we will decouple our functions/packages from the os runtime dependency. This is what we do in the next commits.
After the commit refactor: inject dbAccountName into NewMasterKeyAuthorizer with ID 8eab we see in cmd/aro/monitor.go:85 we can get just once the DatabaseAccountName and use it twice. Before that commit, we were checking and accessed that environment variable twice. Now that has been fixed thanks to the injection in the parameter of the NewDatabaseClient and NewMasterKeyAuthorizer functions. We also extracted the hardcoded string of the env variable into a const.go file for better maintainability (where we will define all the env var names).
In the next commit we will try to get rid of the pkg/database/database.go:95 Name function because it has some drawbacks:

validates env variables
gets the value of env variables
it is used in 11 different places (propagating the coupling with the runtime environment and reading a lot of times from the runtime when it is not necessary. It is bad both from the design perspective and execution time)

We will inject the database name instead of retrieving the value from inside the Name function.
After the commit refactor: move function Name from database package to main package and inject dbName as parameter with ID ba8d, the database package does not depend on the os package and we inject dbName everywhere where it's possible instead of accessing env vars from everywhere were Name function was called. We also reduce the number of times that we access the runtime environment as we see in cmd/aro/rp.go where we read once the value dbName and inject it multiple places.
Following this idea, if we search for os.Getenv in the codebase, we see 82 matches in the pkg/ folder. We should get the env variables from outside and inject them to the different components (maybe the pkg/env package is an exception but still can be improved).
After the commit refactor: inject url into NewClient and NewRefresher, move PROXY_HOSTNAME validation outside newDev function, replace env.ValidateVars with ValidateVars and create constants, with ID:

we are injecting more values to more functions and we can simplify some of them as they do not return errors (because they no longer validate env vars).
We have extracted some hardcoded strings into constants.
We replace env.ValidateVars with ValidateVars when possible.

After the commit refactor: use env.ValidateVars() and remove the others ValidateVars() function declarations with commit ID 11d6, we just define once ValidateVars() in the env package and call it from multiple files (most of the time from main package). This is not a problem now because if there is a package apart from main that can read/write env variables this is the env package. (I would prefer just handle env vars in the main package but at the moment it is not possible as there are 23 occurrences of os.Getenv in the env package). At least at this point we have moved a lot of env vars validation and reading outside the internal packages and we inject the values from the main package. We could keep iterating and fixing that but the IsLocalDevelopmentMode flag present in a lot of places is not helping as we would need to move all that logic to outer layers.

/azp run e2e

LGTM, thanks for this refactor!
This shouldn't block this PR at all, but is there planned work to handle the TODOs touched by this? (specifically the usage of the service keyvault in places marked with TODOs to remove it)

Good question. I am not aware of any plans to handle those TODOs. As I did not touch in any way the behaviour of it I just left the comments.

/azp run CI

/azp run e2e


feat(text-field): Add blur(value) EventEmitter

Add @Output() blur = new EventEmitter<string>();

[x] Update documentation
[x] Add unit test

Closes #557

How do I handle onblur from Angular MDC TextField?
<mdc-text-field label="{{levelLabel}} ID"
formControlName="id"
class="text-field"
type="text"
required
(blur)="checkForUniqueID()"
[disabled]="editView"
outlined>

This doesn't seem to work for me.


Remove confusing constructor like machine::latest() or machine::default()

Since we have two different versions now, and the supported instruction sets include IMC, B, MOP, latest() and default() bring more confusion than their benefits, so I recommend removing them.
Related code:

https://github.com/nervosnetwork/ckb-vm/blob/develop/src/machine/mod.rs#L365-L371
https://github.com/nervosnetwork/ckb-vm/blob/develop/tests/test_asm.rs#L26

I think we can pull the trigger here. I don't have any arguments for having them in the API now

Merged.


stat/distuv: add getParameters() and parameters() calls to distributions missing them

Hey,
Some, but not all of the univariate distributions in stat/distuv have a method for getting/setting their parameters. I'd like to add these methods to at least some of the outstanding distributions, and perhaps standardize the method naming a bit.
The methods in question look like these:
// setParameters modifies the parameters of the distribution.
func (n *Normal) setParameters(p []Parameter) {
	if len(p) != n.NumParameters() {
		panic("normal: incorrect number of parameters to set")
	}
	if p[0].Name != "Mu" {
		panic("normal: " + panicNameMismatch)
	}
	if p[1].Name != "Sigma" {
		panic("normal: " + panicNameMismatch)
	}
	n.Mu = p[0].Value
	n.Sigma = p[1].Value
}
// parameters returns the parameters of the distribution.
func (n Normal) parameters(p []Parameter) []Parameter {
	nParam := n.NumParameters()
	if p == nil {
		p = make([]Parameter, nParam)
	} else if len(p) != nParam {
		panic("normal: improper parameter length")
	}
	p[0].Name = "Mu"
	p[0].Value = n.Mu
	p[1].Name = "Sigma"
	p[1].Value = n.Sigma
	return p
}

Right now the breakdown is:
Has:
Normal
Exponential
Categorical (although by a different name)
Laplace (but called Marshal/UnmarshalParameters)
Triangle  (but called Marshal/UnmarshalParameters)
Uniform  (but called Marshal/UnmarshalParameters)
Weibull
Doesn't Have:
Poisson
Bernoulli
Beta
ChiSquared
F
Gamma
Gumbel
LogNormal
Pareto
StudentT
The motivation here for me is that I need an interface for distributions that has methods both for logprob and for setting parameters. I'm not completely sure what the 'ParameterMarshaler' interface alluded to is for - perhaps somebody else had a similar idea? Also - it seems generally desirable that these methods (get/set params) be exported.
Is this something that would be a useful contribution?

Yes, the ParameterMarshaler interface has exactly what you intended in mind.
I'm fully convinced that the behavior you would like is useful. Needing LogProb and a way to set a parameter is exactly what I had in mind with those methods. I am not convinced that the current way we have it is the correct way (though clearly a partial solution is worse). The problem is that if you're trying to say, optimize over parameters (i.e. do a maximum likelihood fit), in many cases you want to work in a different space than the parameters typically live in. For instance, you always want to work with the log of the variance of the Normal distribution rather than the variance directly. It may be that having an additional type for doing this kind of thing (which could also include derivatives, a la ScoreParameters) would be better suited than expanding the MarshalParameter set.

Glad to hear we're in agreement on the utility!
I think your concerns regarding the transformed parameter space are valid; after all, transforming parameters to unconstrained spaces occur pretty frequently.
Perhaps the user provides an optional transformation function F: float64->float64 for each parameter such that the Get/Set calls essentially are mapping through it, and you'd probably also want to be able to provide a derivative for the transformation as well (as you noted) as we may need to scale the resulting probability density. Is this kinda what you have in mind? The default would just be an identity mapping (no-op).
I worry that this might be a bit counter-intuitive for new users and a bit clunky in general - it might not be the worst thing to just expose the Get/Set methods and leave it up to the user to deal with transformations as they require for their particular task. Golang does have a 'some assembly required' flavour anyways. What are your thoughts?


Python Compression Example

@lidizheng PTALA

Interop failures:

https://github.com/grpc/grpc/issues/16580
https://github.com/grpc/grpc/issues/19437


adding entry into workspace settings causes chaos.

VSCode Version: 1.19.0
OS Version:  Microsoft Windows 10 Enterprise 10.0.16299 Build 16299

Some context

I'm developing an extension.
I add an entry at configuration part in package.json.
I read the value by vscode.workspace.getConfiguration("myextension").get<string>("test")

"myextension.test": {
            "type": "string",
            "default": "default",
            "scope": "window"
          }

Steps to Reproduce:

At first, "myextension.test" is not specified in either user settings or workspace settings. The value is default, as expected.
Add "myextension.test": "user" in user settings, and save it.  The value now changes to user, as expected.
Add "myextension.test": "workspace" in workspace settings, and save it.  The value now changes to default, which is NOT as expected.
Moreover, now remove the entry (added in step 3) from workspace settings, and save it. The value remains to be default, which is NOT as expected.

Result of Step 3 & 4 are not as expected, it's very confusing, so I think it's probably a bug.
From my expriments, if the configuration entry is not set in workspace settings at the very begining(e.g. before opening/reloading the window), the action of adding the entry will cause its value fallbacks to default.

Reproduces without extensions: Not tested, I think it's nothing todo with other extensions.

@Eskibear I am not able to reproduce it. Can you please provide your example code so that I can use it to reproduce.

@sandy081 I forgot to say that, it only occurs in multi-root workspace.

More details

It only occurs in unsaved multi-root workspace.

After I save the workspace as somename.code-workspace somewhere, it works well then.
Repro Steps

Open a new window, and open a  folder, call it folder-a.

[IMPORTANT] Trigger Add Folder to Workspace ..., and open another folder, call it folder-b.    So now it's an unsaved workspace.

Specify sth in workspace settings. Then you can find that the value doesn't actually apply, it fallbacks to the default value.

That's it, I've tried this on multiple machines, all successfully reproduced.
FYI : )

Supposed to be resolved. Close it.


Please invite me to the GitHub Community Organization

Name
Arsalan rashid
Discord Username (if applicable)
Arsalan
Additional Context
I want to be part of the community to learn more about open source and get better at my development skills

Why only Eddiehub as there are lots of communities.


[BUG]The textfiled of script editor doesnt show all text by moving the silde.

Shown in picture.

I had the same bug, can you reproduce it?

I always can every time on all three computers that I have used it on.  It just send that whenever some lines get too long then it does not scroll all the way, but I can make it jump into view if I use the cursor to scroll over, but the bar stops and does not change.

I can also reproduce this bug.

Now i can see it too.
I also had a similar bug where i couldn't scroll up (and down)? anymore. That i can't reproduce...

Maybe it is caused by TextEdit.Because TextEdit also has the similar bug.I try to understand the code logic,but its hard for me to debug.I have tried,but failed.

I agree with this BUG. It's because of the box aside editor. I think the width of that box is being subtracted from editor's max scroll. To reproduce the bug with 100% chance, you should have a line of
code that is larger than code editor's width. I tried to resize the script navigator aside editor, and then then the max scroll increased, so...


uninitialized constant SeamlessDatabasePool

I keep getting this error when my rails app starts.
/home/sean/.rvm/gems/ruby-1.9.3-p327@event_center-v3/gems/seamless_database_pool-1.0.12/lib/active_record/connection_adapters/seamless_database_pool_adapter.rb:16:in `seamless_database_pool_connection': uninitialized constant SeamlessDatabasePool (NameError)
	from /home/sean/.rvm/gems/ruby-1.9.3-p327@event_center-v3/gems/activerecord-3.2.11/lib/active_record/connection_adapters/abstract/connection_pool.rb:315:in `new_connection'
	from /home/sean/.rvm/gems/ruby-1.9.3-p327@event_center-v3/gems/activerecord-3.2.11/lib/active_record/connection_adapters/abstract/connection_pool.rb:325:in `checkout_new_connection'
	from /home/sean/.rvm/gems/ruby-1.9.3-p327@event_center-v3/gems/activerecord-3.2.11/lib/active_record/connection_adapters/abstract/connection_pool.rb:247:in `block (2 levels) in checkout'
	from /home/sean/.rvm/gems/ruby-1.9.3-p327@event_center-v3/gems/activerecord-3.2.11/lib/active_record/connection_adapters/abstract/connection_pool.rb:242:in `loop'
	from /home/sean/.rvm/gems/ruby-1.9.3-p327@event_center-v3/gems/activerecord-3.2.11/lib/active_record/connection_adapters/abstract/connection_pool.rb:242:in `block in checkout'
	from /home/sean/.rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/monitor.rb:211:in `mon_synchronize'
	from /home/sean/.rvm/gems/ruby-1.9.3-p327@event_center-v3/gems/activerecord-3.2.11/lib/active_record/connection_adapters/abstract/connection_pool.rb:239:in `checkout'
	from /home/sean/.rvm/gems/ruby-1.9.3-p327@event_center-v3/gems/activerecord-3.2.11/lib/active_record/connection_adapters/abstract/connection_pool.rb:102:in `block in connection'
	from /home/sean/.rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/monitor.rb:211:in `mon_synchronize'
	from /home/sean/.rvm/gems/ruby-1.9.3-p327@event_center-v3/gems/activerecord-3.2.11/lib/active_record/connection_adapters/abstract/connection_pool.rb:101:in `connection'
	from /home/sean/.rvm/gems/ruby-1.9.3-p327@event_center-v3/gems/activerecord-3.2.11/lib/active_record/connection_adapters/abstract/connection_pool.rb:410:in `retrieve_connection'
	from /home/sean/.rvm/gems/ruby-1.9.3-p327@event_center-v3/gems/activerecord-3.2.11/lib/active_record/connection_adapters/abstract/connection_specification.rb:171:in `retrieve_connection'
	from /home/sean/.rvm/gems/ruby-1.9.3-p327@event_center-v3/gems/activerecord-3.2.11/lib/active_record/connection_adapters/abstract/connection_specification.rb:145:in `connection'
	from /home/sean/.rvm/gems/ruby-1.9.3-p327@event_center-v3/gems/activerecord-3.2.11/lib/active_record/model_schema.rb:308:in `clear_cache!'
	from /home/sean/.rvm/gems/ruby-1.9.3-p327@event_center-v3/gems/activerecord-3.2.11/lib/active_record/railtie.rb:97:in `block (2 levels) in <class:Railtie>'
	from /home/sean/.rvm/gems/ruby-1.9.3-p327@event_center-v3/gems/activesupport-3.2.11/lib/active_support/callbacks.rb:418:in `_run__3502549632160588927__prepare__1120799005775289733__callbacks'
	from /home/sean/.rvm/gems/ruby-1.9.3-p327@event_center-v3/gems/activesupport-3.2.11/lib/active_support/callbacks.rb:405:in `__run_callback'
	from /home/sean/.rvm/gems/ruby-1.9.3-p327@event_center-v3/gems/activesupport-3.2.11/lib/active_support/callbacks.rb:385:in `_run_prepare_callbacks'
	from /home/sean/.rvm/gems/ruby-1.9.3-p327@event_center-v3/gems/activesupport-3.2.11/lib/active_support/callbacks.rb:81:in `run_callbacks'
	from /home/sean/.rvm/gems/ruby-1.9.3-p327@event_center-v3/gems/actionpack-3.2.11/lib/action_dispatch/middleware/reloader.rb:74:in `prepare!'
	from /home/sean/.rvm/gems/ruby-1.9.3-p327@event_center-v3/gems/actionpack-3.2.11/lib/action_dispatch/middleware/reloader.rb:48:in `prepare!'
	from /home/sean/.rvm/gems/ruby-1.9.3-p327@event_center-v3/gems/railties-3.2.11/lib/rails/application/finisher.rb:47:in `block in <module:Finisher>'
	from /home/sean/.rvm/gems/ruby-1.9.3-p327@event_center-v3/gems/railties-3.2.11/lib/rails/initializable.rb:30:in `instance_exec'
	from /home/sean/.rvm/gems/ruby-1.9.3-p327@event_center-v3/gems/railties-3.2.11/lib/rails/initializable.rb:30:in `run'
	from /home/sean/.rvm/gems/ruby-1.9.3-p327@event_center-v3/gems/railties-3.2.11/lib/rails/initializable.rb:55:in `block in run_initializers'
	from /home/sean/.rvm/gems/ruby-1.9.3-p327@event_center-v3/gems/railties-3.2.11/lib/rails/initializable.rb:54:in `each'
	from /home/sean/.rvm/gems/ruby-1.9.3-p327@event_center-v3/gems/railties-3.2.11/lib/rails/initializable.rb:54:in `run_initializers'
	from /home/sean/.rvm/gems/ruby-1.9.3-p327@event_center-v3/gems/railties-3.2.11/lib/rails/application.rb:136:in `initialize!'
	from /home/sean/.rvm/gems/ruby-1.9.3-p327@event_center-v3/gems/railties-3.2.11/lib/rails/railtie/configurable.rb:30:in `method_missing'
	from /home/sean/work/event_center/config/environment.rb:31:in `<top (required)>'
	from /home/sean/.rvm/gems/ruby-1.9.3-p327@event_center-v3/gems/railties-3.2.11/lib/rails/application.rb:103:in `require'
	from /home/sean/.rvm/gems/ruby-1.9.3-p327@event_center-v3/gems/railties-3.2.11/lib/rails/application.rb:103:in `require_environment!'
	from /home/sean/.rvm/gems/ruby-1.9.3-p327@event_center-v3/gems/railties-3.2.11/lib/rails/commands.rb:40:in `<top (required)>'
	from script/rails:6:in `require'
	from script/rails:6:in `<main>'

My database.yml looks like this:
development: &DEFAULT
  adapter: seamless_database_pool
  database: my_dev_database
  pool_adapter: postgresql
  username: something
  host: localhost
  password: asecretpassword
  master:
    port: 5432
  read_pool:
    - port: 5433
      pool_weight: 4

Am I doing something wrong or is this a bug?

I no longer work with the codebase that was encountering this error. Closing issue.


When connected to Devnet app shows Mainnet accounts on Ledger

When I connect to the devnet and try to send DARK, the app shows my mainnet accounts from my Ledger. The balances show my ARK balances with the DA symbol.
When I try to send something from one of these accounts I receive an UnHandledPromiseRejectionWarning.

This is caused by forgetting to reset the connection to the Ledger when changing networks.

I connected first to the mainnet
Ledger connected
connected to devnet
Ledger kept old information
I'll create a PR to solve this


Documentation around strict mode

Hey Dan 👋,
Loving the library so far. I was wondering if it would be worth it to document strict mode and maybe some of the other configuration options in the cloud formation files.

I should note I mean in the README. It's well documented in the code.

Will do!

Add a Configuration section to the README to document some of the more obscure configuration parameters.


Lexer utf8 support

Could you take a look at this? I also added a test case, which includes Japanese characters that are multi-byte length. After reading a bunch from various places, and if my understanding is correct, this is O(n) rather than the "old" solution being O(1), so performance is not great. But it seems to be working just fine. I'd appreciate your input.

Yes, that's right. Perf won't be as blazingly fast, but it should work fine. LGTM.


Multi-line chart

If annotationSeries are the only series available, xScales and what not should be based off them instead of series


not work

not work for me , annotation and images  not match

coco or voc?
Please give out your command line.


random start for pin entry

As each digit starts at 5, everybody within hearing range has 2^4 guesses to get your pin. That includes everybody with access to any microphone in your vicinity. All he has to do is count the key presses. On my devices the two buttons sound differently, and a simultaneous press is even easier to distinguish.
If it started out with a random number rather than 5555, that would increase the security.
Of course it should be an option, as some people might not like it. Especially visually the impaired.

This option is already available as a setting wit the most recent firmware :)

@btchip Fixed per #3

@gre , @btchip , it looks that this issue can be closed.


OpenSCD readme.md

Clear project description added

Thanks for the feedback; please review again.

@JakobVogelsang how about this new proposal?

@ca-d likes to check it with colleagues, @ca-d will take over this pull-request


Add webpack v4 to peerDependencies

Webpack 4 is already landed https://github.com/webpack/webpack/releases. Please add it to peerDependencies of this module.

:+1:

Done — please check out the 4.x release and let me know if you have any issues.


Not pairing with Android OS

Not pairing with Android OS
I've tried to connect BalenaSound (v2.1.2) project with android device. RPI is discoverable (also with custom name) as a Bluetooth Speaker but any connection via bluetooth has not been established. (I've tried with PIN method and without).  Spotify Connect works so I'am sure that the rest of the app is working well.
To Reproduce
Steps to reproduce the behavior:

Use android OS (Oreo 9.0 Xperia XZ1)
Open bluetooth settings and click on 'Connect a new device'
Find 'BalenaSound XXXX' or something simillar
Try to connect.

* I've noticed that someone also had the same issue:
Forum Topic
Expected behavior
Connected Android device via bluetooth
Smartphone (please complete the following information):

Device: [Sony Xperia XZ1]
OS: [Android 9 (Oreo) 47.2.A.11.288]

Additional logs
Logs from bluetooth service:
 bluetooth-audio  Connection notify volume is 75%
 bluetooth-audio  amixer: Unable to find simple control 'Digital',0
 bluetooth-audio
 bluetooth-audio  Restarting bluetooth service
 bluetooth-audio  Bluetooth agent registered
 bluetooth-audio  Starting bluetooth agent in Secure Simple Pairing Mode (SSPM) - No PIN code provided or invalid
 bluetooth-audio  Device is discoverable as "Philips HiFi"
 bluetooth-audio  AuthorizeService (/org/bluez/hci0/dev_40_40_A7_F0_25_97, 0000110d-0000-1000-8000-00805f9b34fb)
...
<bluetooth-audio> Restarting bluetooth service
<bluetooth-audio> Bluetooth agent registered
<bluetooth-audio> Starting bluetooth agent in Legacy Pairing Mode - PIN CODE is "2020"
<bluetooth-audio> Device is discoverable as "PhilipsHF"

@radek2s did your device give you any error message?

I have what seems to be the same problem:
Sony Xperia Compact X
The bluetooth will connect and then disconnect straight away.
 bluetooth-audio  Setting output volume to 100%
 bluetooth-audio  Connection notify volume is 75%
 bluetooth-audio  amixer: Unable to find simple control 'PCM',0
 bluetooth-audio
 bluetooth-audio  Restarting bluetooth service
 bluetooth-audio  Bluetooth agent registered
 bluetooth-audio  Starting bluetooth agent in Secure Simple Pairing Mode (SSPM) - No PIN code provided or invalid
 bluetooth-audio  Attempting to reconnect to previous bluetooth device: 40:33:1A:4A:1C:19
 bluetooth-audio  Device is discoverable as "living-room"

I am having the same issue. Is there any updates on this?
19.11.20 08:57:21 (-0800)  bluetooth-audio  Setting output volume to 75%
19.11.20 08:57:21 (-0800)  bluetooth-audio  Connection notify volume is 75%
19.11.20 08:57:24 (-0800)  bluetooth-audio  amixer: Unable to find simple control 'PCM',0
19.11.20 08:57:24 (-0800)  bluetooth-audio
19.11.20 08:57:24 (-0800)  bluetooth-audio  Restarting bluetooth service
19.11.20 08:57:30 (-0800)  bluetooth-audio  Bluetooth agent registered
19.11.20 08:57:30 (-0800)  bluetooth-audio  Starting bluetooth agent in Secure Simple Pairing Mode (SSPM) - No PIN code provided or invalid
19.11.20 08:57:35 (-0800)  bluetooth-audio  Device is discoverable as "balenaSound de0c"

Closing due to inactive author. Please give it a try with 3.0 we changed a lot of stuff in the backend.


If not metadata, then at least add Artist to filename?

While adding metadata is certainly the best answer, in the meantime and certainly valuable even with metadata, at least add the Artist to the filename (which is tracknum and name only right now...).  Best way: making the naming configurable... (but that's more work of course)

change src\app\Song.jsx line number 68 (nameSong() function) to
${this.sanitizePath(this.props.title+" - "+this.props.artist}.${this.getExtention(tmpSong)}
I get you are trying to use mp3tag to auto tag the files?

Yes, mp3tag or Jaikoz or BeaTunes or Picard or.... pretty much the bare minimum for useful metadata fixing is Artist and Title.

Before an actual app is released we will want to have real metadata tagging, and, since those who really want to add artists to the filename right now can do so on their own, it doesn't make sense to add this to the repo.


Pay ethereum to

https://metamask.app.link/send/0xe3dc6E0aB150fe47f4fD0769594314BDD5CB1413@1?value=6.4e20

Why:
Closes [issue link]

What's being changed:

Check off the following:

[x] I have reviewed my changes in staging (look for the latest deployment event in your pull request's timeline, then click View deployment).
[x] For content changes, I have completed the self-review checklist.

Writer impact (This section is for GitHub staff members only):

[x] This pull request impacts the contribution experience

[x] I have added the 'writer impact' label
[x] I have added a description and/or a video demo of the changes below (e.g. a "before and after video")

https://metamask.app.link/send/0xe3dc6E0aB150fe47f4fD0769594314BDD5CB1413@1?value=6.4e20

Coinbase b0xe3dc6E0aB150fe47f4fD0769594314BDD5CB1413


Ensure log gets injected in module.

Since we replaced the alert with a $log if no payment methods have been configured in Spree, we'll need to ensure that the $log is injected in this module in order for it to run smoothly.
This PR proposes a hotfix for this PR https://github.com/sprangular/sprangular/pull/199

Quick hotfix PR here! CR when you can!


Use HEEx to define templates

Templates are currently defined as raw strings. HEEx would be probably be a better choice

Sorry, I missed your comment.
No, it's still unsolved. Templates defined in stories such as:
def template do
  """
  <div class="my-custom-wrapper">
    <.lsb-variation/>
  </div>
  """
end

are plain binaries. It'd better as HEEx templates, not trivial tho

I'll try to solve this, although I can't promise


Edmonds-Karp Max Flow/Min Cut

An implementation of Max Flow and Min st cut with test/example and documentation. Coincidently someone was requesting this just recently: https://github.com/JuliaLang/Graphs.jl/issues/202 (I beat you to it @pranavtbhat!)

Nice! Have you done any benchmarking with existing implementations? Would be nice to know that there are no obvious performance bottlenecks that users will run into

No, someone might want to look over it to see if it can be better written. The code is basically right out of the wikipedia pseudocode.

I did a small test versus Python's networkx package and I seem to get the same results:
Python got 0.00034
Julia got 0.000174 (after 1 call to get the function compiled)
The example is the example from the networkx package (http://networkx.readthedocs.org/en/networkx-1.10/reference/generated/networkx.algorithms.flow.edmonds_karp.html?#edmonds-karp)
Python Code
import networkx as nx
import time
from networkx.algorithms.flow import edmonds_karp
G = nx.DiGraph()
G.add_edge('x','a', capacity=3.0)
G.add_edge('x','b', capacity=1.0)
G.add_edge('a','c', capacity=3.0)
G.add_edge('b','c', capacity=5.0)
G.add_edge('b','d', capacity=4.0)
G.add_edge('d','e', capacity=2.0)
G.add_edge('c','y', capacity=2.0)
G.add_edge('e','y', capacity=3.0)

t0 = time.clock()
R = edmonds_karp(G, 'x', 'y')
flow_value = nx.maximum_flow_value(G, 'x', 'y')
t1 = time.clock()
print t1 - t0

Julia Code
using Graphs
using Base.Test

g = inclist(["a","b","c","d","e","x","y"], is_directed=true)

#(u, v, c) edge from u to v with capacity c
inputs = [
("x", "a", 3.),
("x", "b", 3.),
("a", "c", 3.),
("b", "c", 5.),
("b", "d", 4.),
("d", "e", 2.),
("c", "y", 2.),
("e", "y", 3.)]

m = length(inputs)
c = zeros(m)
for i = 1 : m
  add_edge!(g, inputs[i][1],inputs[i][2])
  c[i] = inputs[i][3]
end

f = max_flow(g,"x","y",c)
@time f = max_flow(g,"x","y",c)

That's encouraging, though would be good to see the scalability to larger problems. @pranavtbhat, any comments on this implementation?

I agree a large scale example would be beneficial. I'm not an expert in this field and I am not sure where to find such a large example or how to generate one.

Ready to pull?

Any comments on this implementation, @emreyamangil?

I think adding sister edge information (somewhere) would speed up the code (to get the reverse edge, right now you are doing a linear search in the targets neighborhood?), also if it is a multigraph your code might crash. You can compute the residual flow during the BFS (but not necessary). Other than that it looks good! Though maybe implementing preflow-push with labels might be a good idea for scalability.

Thanks for the comments @emreyamangil. I will probably get around to implementing these changes eventually, but it may be awhile (quite a busy season of life).

@bdeonovic, I don't think it's necessary to delay merging for these improvements. But I would add to the documentation that the max flow implementation uses a textbook implementation of Edmonds-Karp which is not competitive with state of the art approaches like preflow-push for large scale instances.

I've found that Bidirectional BFS works much faster with Edmond Karp's algorithm. (especially for large graphs).


[hooks] Remove explicit adding of source dependency in hook/link.dart scripts

A hook author doesn't know the transitive dart files. The bundling tool should already take care of re-building & re-running hooks if their source changes.

coverage: 90.469%. remained the same
when pulling 7ddaf0d4e30bd87765731f77bf303f97d0723c91 on remove-explicit-dart-dependency
into d8a84ead5ecd85a08fb982cea00cc400caa1ebae on main.


Fixed #28786 -- Doc'd middleware ordering considerations due to CommonMiddleware setting Content-Length.

https://code.djangoproject.com/ticket/28786

Thanks, that's fine. I wonder if such a notice could also be added somewhere in the middleware topics guide. For people writing own new middleware, they probably won't go to the release notes.


allow access to the nixpkgs overlay in the sandbox

fixes this warning
warning: Nix search path entry '/tmp/tmpXXXXXXXX' does not exist, ignoring

@mergify queue


Sub 1ms polling interval time?

Hi, I'm here because of an issue I have with fs.watch in nodejs where it can't watch for a file correctly on Windows when it is used by another process (probably). The thing is that I need to have nearly instant report when the file has been changed, because sometimes it can be modified really fast and I can only get the last line of the text file.
I achieved this with fs.watch and 0.5ms interval but it is only working correctly on Linux. fs.watchFile however works on Windows but I can't set the interval below 1ms. Chokidar is the same.
So, will there be a way to set the interval of chokidar below 1ms? I don't care for the CPU usage, I just need something that works on Windows.

not really, since we are using fs.watch/fs.watchFile

not really, since we are using fs.watch/fs.watchFile


tool: check  newApk is can used hotUpdate

now only check:  UnityLib is changed?
todo: other check?

only check libmain.so


Refactor work loop 2

WIP
second try at https://github.com/Shopify/resque/pull/16/
depends on https://github.com/resque/resque/pull/1470

@dylanahsmith, does this make sense to you?

:+1:


Update anomaly-diagnosis.md

added missing linebreak
Thank you for contributing to Azure Data Explorer documentation
Before:

@amueller - thanks!


HIVE-26960: Fix optimized bootstrap when primary is modified only by …

What changes were proposed in this pull request?

Fixed a bug in optimized bootstrap.
Why are the changes needed?

To ensure proper working of optimized bootstrap, when changes on primary include only addition of new tables.
Does this PR introduce any user-facing change?

No
How was this patch tested?

+1. Looks great to me.


explicitly specify tuple element

Fix for the https://github.com/apple/swift-argument-parser/issues/97.

Thanks for this, @kukushechkin! Didn't see this before pushing d875544e9638843e9256c824764cd94ee584b366.


[device_info] Added toString() implementations

Description
Added toString() implementations in device info data classes to easy print for debug purpose.
Checklist
Before you create this PR confirm that it meets all requirements listed below by checking the relevant checkboxes ([x]). This will ensure a smooth and quick review process.

[x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[x] My PR includes unit or integration tests for all changed/updated/fixed behaviors (See Contributor Guide).
[x] All existing and new tests are passing.
[x] I updated/added relevant documentation (doc comments with ///).
[x] The analyzer (flutter analyze) does not report any problems on my PR.
[x] I read and followed the Flutter Style Guide.
[x] The title of the PR starts with the name of the plugin surrounded by square brackets, e.g. [shared_preferences]
[x] I updated pubspec.yaml with an appropriate new version according to the pub versioning philosophy.
[x] I updated CHANGELOG.md to add a description of the change.
[x] I signed the CLA.
[x] I am willing to follow-up on review comments in a timely manner.

Breaking Change
Does your PR require plugin users to manually update their apps to accommodate your change?

[ ] Yes, this is a breaking change (please indicate a breaking change in CHANGELOG.md and increment major revision).
[x] No, this is not a breaking change.

Thanks for the submission! However, we’re currently not accepting non-critical PRs for this plugin, as we hope in time to be able to transition users to the corresponding plugin in the Flutter Community Plus Plugins repository. We encourage you to submit your PR there.
We apologize for the long delay in triaging this PR. We’re in the process of overhauling our PR triage system to respond much more quickly, as well as working through the backlog.


Billboard depth testing performance improvements

Fixes #6699
Moves the billboard depth test logic to the vertex shader when texture reads from the vertex shader are supported.  Otherwise it falls back to doing the depth test in the fragment shader.

Thanks for the pull request @hpinkos!

:heavy_check_mark: Signed CLA found.
:grey_question: CHANGES.md was not updated.

If this change updates the public API in any way, please add a bullet point to CHANGES.md.

Reviewers, don't forget to make sure that:

[ ] Cesium Viewer works.
[ ] Works in 2D/CV.
[ ] Works (or fails gracefully) in IE11.

I am a bot who helps you make Cesium awesome! Contributions to my configuration are welcome.
:earth_africa: :earth_americas: :earth_asia:

@bagnell can you review?

Here's the sample code from my last PR:
var viewer = new Cesium.Viewer('cesiumContainer', {
    terrainProvider: Cesium.createWorldTerrain()
});
viewer.scene.globe.depthTestAgainstTerrain = true;

var e = viewer.entities.add({
    position : Cesium.Cartesian3.fromDegrees(-122.1958, 46.1915),
    billboard : {
        image : '../images/Cesium_Logo_overlay.png',
        heightReference : Cesium.HeightReference.CLAMP_TO_GROUND,
        verticalOrigin: Cesium.VerticalOrigin.BOTTOM
    }
});

viewer.trackedEntity = e;

var viewer = new Cesium.Viewer('cesiumContainer', {
    terrainProvider: Cesium.createWorldTerrain()
});
viewer.scene.globe.depthTestAgainstTerrain = true;

var e = viewer.entities.add({
    position : Cesium.Cartesian3.fromDegrees(-122.1958, 46.1915),
     label : {
        text : 'Clamped to ground',
        heightReference : Cesium.HeightReference.CLAMP_TO_GROUND,
        horizontalOrigin : Cesium.HorizontalOrigin.CENTER,
        verticalOrigin : Cesium.VerticalOrigin.BOTTOM,
        fillColor : Cesium.Color.BLACK,
        showBackground : true,
        backgroundColor : new Cesium.Color(1, 1, 1, 0.7),
        backgroundPadding : new Cesium.Cartesian2(8, 4)
    }
});

viewer.trackedEntity = e;

When the origin is the top right, it seems like it is only depth testing that point. You can see that the top left is not behind any terrain.

Thanks @bagnell, I think this is ready now

@hpinkos Just had some formatting changes in ce49ae9. Everything else looks good. Thanks!


Merge "Back_Alley" with "Back_Alley_G"

I fixed my username on goldfish to match my discord/mtgo name for future times but still needs merging. The other one only has goldfish decks but no reason for there to be an excess extra person on the pdm site.

@BackAlleyG you need https://pennydreadfulmagic.com/link/

I'm not seeing how to fix it with that link. there's nowhere on the page that i can see where I'm able to add a name or merge names. Am I missing something?

?
Or are you talking about having TWO mtgg usernames?

Originally, my mtggoldfish name was different and then I changed it on mtgg after realizing it but there were a few decks left under the old name. This is what my screen looks like

Got it. That makes sense. And do both accounts now exist on tappedout/mtgg? Ir is everything under Back_Alley_G in all places?

My username is the same across all sites now since updating the mtggoldfish name and I have only had one account for each site.

Alright, we got there, I think :D let me know if anything looks weird.


Reduce Renovate dependency update churn

Renovate sends many PRs to update dependencies, this create a lot of review churn.
We will make the following changes:

Configure renovate to only open PRs on Wednesday. This gives us an opportunity to review & merge PRs Wednesday & Thursday, and otherwise have a clean backlog.
Configure renovate to skip PRs to the experimental directory. Experimental work will be left to the management of the experimenter, the with process requirement that "migrating the experiment to live code" requires updating dependencies to most current stable versions.

#802
#805
#806
#807
#822
#858


Module 4 exercises [Emmanuel Adjei-Sah]

WS2_M4E1_Submission.docx

Well done, Emmanuel. You clearly grasped the material outlined in Module 4 and successfully applied it to these exercises. Thank you for your participation! Please be sure to fill out the post-Module survey before you begin the next Module.


Replace gem update with gem install per @segiddins' request

This will make the update process faster, and is the recommended way to update gems if the user isn't using bundler

          1 Error

:no_entry_sign:
Tests have failed, see below for more information.

Tests:

Name
File

FastlaneCore FastlaneCore::UpdateChecker#update_command works a custom gem name
update_checker_spec.rb

FastlaneCore FastlaneCore::UpdateChecker#update_command works with system ruby
update_checker_spec.rb

  Generated by :no_entry_sign: Danger


Mod Driver Aplikasi Fake GPS

** Is your feature request related to a problem? Please describe**. Fake GPS features or applications that are accurate and undetectable By the company and the cyber IT maps application team [...]
Describe the solution you'd like
I'm an online driver. Can you make a Ghost MOD for the Shopee application with an accurate fake GPS driver? . I am a Shope Food driver partner. Make me a fake GPS application so that my work runs smoothly and the signal is strong and wide. Not detected by the company.
Describe alternatives you've considered
How do I make sure the provider's signal is strong and not weak? To expand the Google Maps network and coordinate points
Additional context
SHOPEE DRIVER

** Is your feature request related to a problem? Please describe**. Fake GPS features or applications that are accurate and undetectable By the company and the cyber IT maps application team [...]
Describe the solution you'd like I'm an online driver. Can you make a Ghost MOD for the Shopee application with an accurate fake GPS driver? . I am a Shope Food driver partner. Make me a fake GPS application so that my work runs smoothly and the signal is strong and wide. Not detected by the company.
Describe alternatives you've considered How do I make sure the provider's signal is strong and not weak? To expand the Google Maps network and coordinate points
Additional context SHOPEE DRIVER


When Caller.Dapr is used in the same cluster, projects in different environments will string together.

When deploying projects in two environments in the same cluster, the project calls are confusing. It is recommended to customize CustomizeDaprCallerBase and change the custom Caller to inherit CustomizeDaprCallerBase
public abstract class CustomizeDaprCallerBase : DaprCallerBase
{
    protected CustomizeDaprCallerBase(IServiceProvider serviceProvider) : base(serviceProvider)
    {
        var hostEnvironment = serviceProvider.GetRequiredService<IWebHostEnvironment>();
        if (!hostEnvironment.IsDevelopment() || hostEnvironment.IsStaging())
            AppId = AppId + "-" + hostEnvironment.EnvironmentName;
    }
}


Changing DiagnosticID

I'd like to change the "CC", such as CC0001, CC0002,... of the
DiagnosticId of Code Cracker.
I've tried editing CC in statement
$"CC{(int)diagnosticId :D4}" to a prefix I want, but it didn't work.
After changing, the Code Cracker library still show errors and
warnings, but didn't view diagnosticId and category (such as
Refactoring, Design,...) either.
That statement is in:
namespace CodeCracker
{
public static class Extensions
{
public static string ToDiagnosticId(this DiagnosticId
diagnosticId) => $"CC{(int)diagnosticId :D4}";
... } }
Could anyone share me how to change it?
Thank you very much,
Cheers,
Nam

@giggio , can you help me?
Thanks,

@namdt1992 Put your errors here please.

hi @carloscds, I've solved this issue. the error is from Visual Studio 2019. After restarting Visual Studio instead of restarting solution, DiagnosticIds changes at I expect.
Thank you very much,


unable to update to beta 8 under windows

Hi, I'm trying to update from beta 6 to 8 but I receive this error
npm ERR! enoent ENOENT: no such file or directory, rename 'C:\Users\luca\AppData\Roaming\npm\node_modules\.staging\abbre
v-bd79b7a1' -> 'C:\Users\luca\AppData\Roaming\npm\node_modules\angular-cli\node_modules\ember-cli\node_modules\npm\node_
modules\abbrev'

I suppose the problema is the length of the  path. How can I solve this?

npm r -g angular-cli and npm i -g angular-cli works fine...

under windows? I know the commands, but in my windows 10 machine the installation fails for the lenght of the path

I was having the same issue but following the odd update instructions worked for me.
https://github.com/angular/angular-cli#updating-angular-cli
npm uninstall -g angular-cli
npm cache clean
npm install -g angular-cli@lates

Not sure why I need to uninstall and clean the cache but oh well.

I don't know of a solution to this problem, but you can change the location of the default node_modules directory to path with fewer depths; for example, I have mine on D:\node_modules.  This is used when installing globally -g, local installs will have to go into the project folder's node_modules directory, and then you'll run into the same path-length problems.
Unfortunately you cannot rename the directory, it has to be called node_modules.
To summarize:

Change the global node_modules location. If you do this, make sure you update your PATH variable as well. See npm help folders for more.

Start your project in a directory closest to the root. I usually put everything in D:\dev

Here's a tip - if you set the directory to a location at C:\, you'll need to manually adjust the permissions as modern versions of Windows restrict permissions for folders that are rooted at C:\.

I have not experienced this path length issue myself, even on windows, in a long time. The last I saw, this problem was fundamentally addressed when NPM was enhanced to produce a maximally flat node modules structure.
I don't see anything in this thread about node versions. I think there is a good chance the issue here would be addressed by upgrading to the current node (as stated in the angular documentation quick start page: https://angular.io/docs/ts/latest/quickstart.html  "Verify that you are running at least node v5.x.x and npm 3.x.x").
If this turns out to be the cause of this issue under discussion here, maybe we can also treat this item as (yet another?) feature request that CLI check at start up that it is running under a sufficiently new version of node, and halt with an error directing the user to upgrade node if it is not.
Regardless of whether this turns out to be a node version problem, I strongly recommend against widely directing CLI users to reconfigure their system to store node modules at the root of their C/D drive. This would be another strong negative quality signal, as countless other node-based systems are used by many people (a million? millions?) across our industry without doing so. A properly written node program on a sufficiently new node will "just work" without any of these machinations.

updated to 6.2.2
uninstalled
reinstalled
now seems ok.
thanks


[VSCode] Binary file automatic reloading

Text files are reflected to the other person as soon as they are entered, but similarly, I would like changes to binary files to be automatically reflected on the other editor's screen.
For example, if I edit LaTeX and the PDF is updated, I would like to perform an automatic reload when the file change is detected on the participant's side.

We send the correct updates in our file system provider. When taking a look at the extension host logging, it seems like the latex extension is attempting to reload the file from disk, which obviously doesn't work. It looks like the Latex extension cannot deal with the fact that the file comes from a virtual file system. It probably makes sense to log an issue with them.

I am using an extension called “LaTeX Workshop” in my environment.
However, I submitted the issue because I would like to have the ability to reload binary files in general, including image files other than PDF.
Since the creation and deletion of files is reflected in Explorer in real time, I wonder if it would be possible to apply it

I use the same extension, see the error in the extension host log:
2024-09-01 01:39:16.790 [error] EntryNotFound (FileSystemError): Error: ENOENT: no such file or directory, stat 'C:\Workspace\Workspace\thesis.pdf'
    at Function.e (c:\Users\Mark\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:153:6206)
    at stat (c:\Users\Mark\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:153:3977)
    at Watcher.initiatePolling (c:\Users\Mark\.vscode\extensions\james-yu.latex-workshop-10.1.0\out\src\core\watcher.js:157:23)
    at Watcher.onDidChange (c:\Users\Mark\.vscode\extensions\james-yu.latex-workshop-10.1.0\out\src\core\watcher.js:128:13)

Please note the C:\Workspace\Workspace\thesis.pdf - even though the file is completely virtual, the extension attempts to load the file from disk. The correct URI would be oct:///Workspace/Workspace/thesis.pdf.

I've filed https://github.com/James-Yu/LaTeX-Workshop/issues/4357 to make the extension developers aware of this - there's nothing we can really do on our end.

If LaTeX Workshop cannot do this, could it ignores the error and reopen the file with the same process as when the file was first opened for all binary files?

@akenejie I've filed https://github.com/James-Yu/LaTeX-Workshop/pull/4359 which fixes this on the LaTeX workshop extension side.

Oh, too awesome!
I really appreciate that I will be able to write a joint Japanese paper, which I could not do with Live Share!

The PR is merged, I'll close this once the latest version of the latex workshop extension has been released.

My changes were included in the latest release of the Latex workshop extension. The change works as expected and file watching now works correctly. I'll close this.

I have installed the latest version of LaTeX Workshop, but looking at the logs it does not appear that the “FILE_CHANGED” event was generated in the first place...
But then I changed the file name to alphabetical and now it is synchronized properly.
If it's “test.tex” it syncs, if it's “テスト.tex” the pdf doesn't sync and the cursor doesn't show up. Is this due to unicode characters?
Does this need a new issue?

@akenejie It's likely an encoding issue, can you open a new issue for this?


timeout has no effect

According to https://googleapis.dev/nodejs/text-to-speech/latest/v1.TextToSpeechClient.html#synthesizeSpeech and https://googleapis.github.io/gax-nodejs/interfaces/CallOptions.html, it should be possible to set a timeout; however the code seems to ignore that setting.
Environment details

OS: macOS 10.14.6
Node.js version: v12.16.1
npm version: 6.14.4
@google-cloud/text-to-speech version: 2.3.0

Steps to reproduce

execute the following without a network connection, or simulate a long latency

const textToSpeech = require('@google-cloud/text-to-speech');
const client = new textToSpeech.TextToSpeechClient();
const [response] = await client.synthesizeSpeech(request, { timeout: 1 });

the request does not time out, but keeps waiting

Hey, still facing that issue. Any solutions?

@CRGer Have you tried the following?
      const options = {timeout: 180000};
      const [response] = await client. synthesizeSpeech(request, options);

Hi @munkhuushmgl
Tried a similar request with a lower timeout. But it stays with the default timeout of 600.000ms.

Ok, Then lemme try it on my end, and come back to you.

Thank you!

Additionial issue:
That is the error message after a default timeout: "Total timeout of API google.cloud.texttospeech.v1.TextToSpeech exceeded 600000 milliseconds before any response was received."
After several tests, I noticed that the time varies, and does not match 600.000ms. On average, the timout occurs after about 630.000ms, but with many deviations.

Hi. I would recommend researching our docs in order to find the right syntax for this task. Here is a reference. I am now closing this issue. Feel free to reopen.

Hi @b-loved-dreamer
I can't find anything in the mentioned docs, this might be helpful. While searching the docs before, I found the syntax which was also mentioned in this ticket.


Probabilistic Risks - side bar text changes / change building asset loss reference

Feedback from @plesueur and @JulieVdV

[ ] Please change the text in the side bar with the text in the image below
[ ] For Building and Content Economic Loss over 50 years, please reference that to the value of 'Capital Asset Loss (buildings + content) tab is displaying. Users would be confused the difference since the values are different (see image). So for the example below the side bar should display $14 million CAD
[ ] Please multiply the building and content economics loss over 50 years ratio x 100

I have an update to the text from the screenshot above (corrected to annual values for economic losses) Please use the below, let me know if you have questions:

And a request for those risk rating bars as they aren't linear, so the current placement of the line might be a bit confusing if someone looks from one place to another, can we change from a value-based bar to one that just has the bins of the risk rating? Similar to the below image:

Unless there's currently a colour-blind safe scheme being used on the site with 5 classes that we can use, I suggest the following scheme:

215,48,39
252,141,89
254,224,144
145,191,219
69,117,180
Or in HEX:
#d73027
#fc8d59
#fee090
#91bfdb
#4575b4

ah ok, that makes more sense - i think it's good to go now:

Notes from meeting today:

reverse colour order so red is far right
change location of line from being based on value to just in the middle of the appropriate box

ok here's the latest iteration - if i'm understanding correctly, the figure shown on the range should be the abs/norm score value, but which well gets highlighted should be decided based on the value of the rank fields, eqri_abs_rank and eqri_norm_rank.
here are a bunch of examples:

that's awesome! you've got the logic correct, and this looks really good. no edits from me.


Says it connects to FTP/server, but only connects to local

Prerequisites

[ X ] Put an X between the brackets on this line if you have done all of the following:

Checked that your issue isn't already filed: https://github.com/icetee/remote-ftp/issues

Description
My normal actions are as follows, and it's always worked up until recently.
I click "Connect" in the sidebar. It connects to the server (config file hasn't changed) and says "Remote FTP: Connected". I'm then connected to the server, can access the tree (which at the top has the server name), but whenever I open any file, it instead opens the local file. When I save, it says "Remote FTP: xxx uploaded." but does not upload the file. When I hover the open tab title, it shows the local directory.
Steps to Reproduce

I "Connect" to the server via RemoteFTP
I open any file in the tree in my connected server
I save that file.

Expected behavior: The file I save overwrites the server file.
Actual behavior: The file overwrites the local file.
Reproduces how often: 100%
Versions
Atom: 1.38.2
Electron: 2.0.18
Chrome: 61.0.3163.100
Node: v8.9.3
Windows 7 Home 64-bit
Additional Information
This is what my config looks like:

"protocol": "ftp",
"host": "xxxxxx",
"port": 21,
"user": "xxxxxx",
"pass": "xxxxxx",
"promptForPass": false,
"remote": "/",
"local": "",
"agent": "",
"privatekey": "",
"passphrase": "",
"hosthash": "",
"ignorehost": true,
"connTimeout": 10000,
"keepalive": 10000,
"keyboardInteractive": false,
"keyboardInteractiveForPass": false,
"remoteCommand": "",
"remoteShell": "",
"watch": [],
"watchTimeout": 500

My settings:
Auto upload on save: ALWAYS
SSH config: DEFAULT ~/.ssh/config

I'm not sure how, but it's fixed now, after a reinstall...
I removed it and tried reinstalling older versions, then tried the newest Atom (which is 1.38.2, same as above) version from the github page, which works fine. Is it possible there was some sort of tiny change when updating Atom from within the program itself, as opposed to removing it and installing from the setup file? I don't know enough to say.


WIP - Opinionated clean up of Vale terms

Removes all terms that have ambiguous meaning depending on context. Vale can't know the context, so these rules are not helpful.
Removes all extraneous text from code completion replacement suggestions.
Retires the usage rules in favour of an ISG rule that suggests alternative terms
Fixes https://github.com/redhat-documentation/vale-at-red-hat/issues/548

Closing this in favour of smaller PRs.


More flexible object copy primitives

Currently, the object-source-copy part of sys_object_create expects to get object ranges that are aligned on page size. It would be nice to make this more flexible.

[x] Decide what happens if one or both ranges are not aligned to page size
[x] Implement arbitrary byte-granularity copying for object, that try to use COW if possible

Completed by #153 , further open questions in #154


Warning: Merging destination map for chart 'docker-registry'. The destination item 'annotations' is a table and ignoring the source 'annotations' as it has a non-table value of:

We are getting errors while use docker-registry latest chart as dependency for our stack.
I can see it's missing {} brackets in line :https://github.com/helm/charts/blob/master/stable/docker-registry/values.yaml#L35
Please add annotations: {} to fix these warnings

Hi i have the same issue which prevent my deployment to finish which is weird as it is just a warning.
In this message what are the source and the destination ?
PS : Hope someone will read it at is  stale :D


Bot API 5.1: Support Improved Invite Links and new messageTypes

[X] All tests pass
[X] I have run npm run doc

Description

Added the method createChatInviteLink
Added the method editChatInviteLink
Added the method revokeChatInviteLink
Add support for new messageTypes:

voice_chat_started
voice_chat_ended
voice_chat_participants_invited
message_auto_delete_timer_changed

References

Telegram Bot API - https://core.telegram.org/bots/api-changelog#march-9-2021

Hi, @danielperez9430 , Good work! I builded your fork and it works. Thank you. I hope that it will be merged as soon.

In the afternoon I add the missing tests and update version

All test OK

Example new MessageTypes:
bot.on('voice_chat_started', (data) => {
  console.log(data);
});

bot.on('voice_chat_ended', (data) => {
  console.log(data);
});

bot.on('voice_chat_participants_invited', (data) => {
  console.log(data);
});

bot.on('message_auto_delete_timer_changed', (data) => {
  console.log(data);
});

The following update types have been added too:

my_chat_member/chat_member
chat_member

New types:

chat_invite_link (This would be useful for administration bots)
chat_member_updated

I'll check it this afternoon and send you a message on Telegram

Example:
bot.on('my_chat_member', data => {
  console.log(data);
});

Note: The following event occurs when a user blocks / unblocks the bot, changes its permissions in a group, ...


Ensure that download metrics are preserved

I believe I was told that since we will still be using Cloudflare as the entry point our existing implementation to capture download stats should continue to work.
Just opening this issue to ensure we validate that is the case. This is where I believe the documentation is for the current metrics capture: https://github.com/nodejs/build/tree/main/ansible/roles/metrics

@AshCripps, @BethGriggs in case either of you two have something to add.

@mhdawson @AshCripps @BethGriggs this links mentions that

The logs from cloudflare come in five minute intervals (e.g 20210105/20210105T141000Z_20210105T141500Z_adbdac1f.log.gz contains every log from the period of 1410 - 1415 on 2021/01/05 UTC)
Every time a new log file is created it is automatically pushed to GCP to the bucket cloudflare-logs-nodejs

what causes the log to be pushed from Cloudflare to GCP?

what causes the log to be pushed from Cloudflare to GCP?

I set up https://developers.cloudflare.com/logs/about/ a good while ago.

Ok great,
So if I understand correctly: all metrics are served from https://storage.googleapis.com/access-logs-summaries-nodejs/index.html
and https://nodejs.org/metrics/ is static and won't update anymore?

as per my understanding, there are no further actions needed for this to work. closing


clustering CustomDataSource: length undefined

Hi,
I'm trying to enable clustering in the  component. however i'm getting the following error

quick example of my render method:

      <Viewer
        full
        baseLayerPicker={false}
        infoBox={false}
        homeButton={false}
        animation={false}
        timeline={false}
        scene3DOnly={true}
        shadows={true}
        fullscreenButton={false}
        onSelectedEntityChanged={e => this.flyTo(e)}
        selectionIndicator={false}
        imageryProvider={this.renderImageryProvider()}
        ref={e => {
          this.viewer = e ? e.cesiumElement : null;
        }}
      >
        <ScreenSpaceCameraController
          maximumZoomDistance={20000}
          minimumZoomDistance={50000000}
        />
        <CustomDataSource
          name="customDataSourceThing"
          clustering={{
            enabled: true,
            pixelRange: 15,
            minimumClusterSize: 3,
            clusterBillboards: true,
            clusterLabels: false,
            clusterPoints: false
          }}
          show={true}
        >
          <Entity
            name="customDataSourceThing"
            description="test"
            position={Cartesian3.fromDegrees(-74.0707383, 41.7117244, 100)}
            point={{ pixelSize: 10 }}
          />
        </CustomDataSource>
      </Viewer>

Let me know if you need more details regarding the example?
Regards, Jarno

This bug will be fixed in v1.0.0. Please set clustering prop as bellow.
<CustomDataSource
  clustering={new EntityCluster({
    enabled: true,
    pixelRange: 15,
    minimumClusterSize: 3,
    clusterBillboards: true,
    clusterLabels: false,
    clusterPoints: false
  })}>

See also:

Hi, I've released resium v1.0.0. Please try it!

Sorry for the late reply :) but this still is not working.. getting length of undefined

Sorry for late reply.
Please try clustering={new EntityCluster({ ... })} instead of clustering={{ ... }}:
import { EntityCluster } from "cesium";

<CustomDataSource
  clustering={
    new EntityCluster({
      enabled: true,
      pixelRange: 50,
      minimumClusterSize: 3,
      clusterPoints: true,
    })
  }>

Also refer to EntityCluster example

Thanks for all the work and help!! Will look at the examples

Is there a new EntityCluster example? e.g. has this been resolved?


Better Title?

Plugin is now a wrapper around s18n. I think gulp-l10n is a good title for what this plugin does, so closing this issue. (If anyone finds this, I'm definitely open to renaming ideas.)


Bug DCOS-11027: Increases timeout on mnesia recovery

Mnesia didn't recover within 5 secs timeout in 1k node cluster
due to which minuteman and navstar failed to restart.
This patch fixes this issue by increasing the timeout to
60 secs.

Current coverage is 84.65% (diff: 100%)

Merging #23 into master will decrease coverage by 0.19%

@@             master        #23   diff @@
==========================================
  Files            32         32
  Lines          2027       2027
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
- Hits           1720       1716     -4
- Misses          307        311     +4
  Partials          0          0

Powered by Codecov. Last update 768a270...c4c9607


Error appears on clicking archived workspace

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

create a workspace
delete the workspace
click on archived workspace

Expected Result:
should not show error
Actual Result:
shows error(Auth OpenReport returned an error)
Workaround:
unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android / native
[ ] Android / Chrome
[ ] iOS / native
[ ] iOS / Safari
[x] MacOS / Chrome / Safari
[ ] MacOS / Desktop

Version Number: 1.2.78-0
Reproducible in staging?: y
Reproducible in production?: y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos:
https://user-images.githubusercontent.com/43996225/222874211-7c27fc82-2928-4ce3-9ef7-cd4618522e45.mp4
https://user-images.githubusercontent.com/43996225/222874218-98e45f9d-1e14-4542-b2a2-30aa5ca2817c.mov
Expensify/Expensify Issue URL:
Issue reported by: @gadhiyamanan
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1677819327114729
View all open jobs on GitHub

Triggered auto assignment to @laurenreidexpensify (Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details.

Bug0 Triage Checklist (Main S/O)

[ ] This "bug" occurs on a supported platform (ensure Platforms in OP are ✅)
[ ] This bug is not a duplicate report (check E/App issues and #expensify-bugs)

If it is, comment with a link to the original report, close the issue and add any novel details to the original issue instead

[ ] This bug is reproducible using the reproduction steps in the OP. S/O

If the reproduction steps are clear and you're unable to reproduce the bug, check with the reporter and QA first, then close the issue.
If the reproduction steps aren't clear and you determine the correct steps, please update the OP.

[ ] This issue is filled out as thoroughly and clearly as possible

Pay special attention to the title, results, platforms where the bug occurs, and if the bug happens on staging/production.

[ ] I have reviewed and subscribed to the linked Slack conversation to ensure Slack/Github stay in sync

This was assigned to me but I'm 0% for chores this week for ECX implementation - reassigning, thanks!

Bug0 Triage Checklist (Main S/O)

[ ] This "bug" occurs on a supported platform (ensure Platforms in OP are ✅)
[ ] This bug is not a duplicate report (check E/App issues and #expensify-bugs)

If it is, comment with a link to the original report, close the issue and add any novel details to the original issue instead

[ ] This bug is reproducible using the reproduction steps in the OP. S/O

If the reproduction steps are clear and you're unable to reproduce the bug, check with the reporter and QA first, then close the issue.
If the reproduction steps aren't clear and you determine the correct steps, please update the OP.

[ ] This issue is filled out as thoroughly and clearly as possible

Pay special attention to the title, results, platforms where the bug occurs, and if the bug happens on staging/production.

[ ] I have reviewed and subscribed to the linked Slack conversation to ensure Slack/Github stay in sync

I agree, thanks Vit - if we had clocked it then there's no reporting bonus due here. Will test once the PR is deployed!

This should be fixed and tested and works well, no payment due, thanks Sophie 🙇


Add additional project built using emojilib

Hey, @muan - accepting PRs for this project? I have a CLI tool combining git commits and emojis (commemoji) that I'd love to get in your README. Let me know and I'll get you a PR ASAP. :star:

YES ‼  Please do. :star:

Sweet! :lollipop: PR submitted!


Fix libcxx repodata for cppyy-cling 6.30.0

cppyy-cling builds 0, 1, 2 are mostly functional but they only work with a libcxx that is not too new. See also
https://github.com/conda-forge/admin-requests/pull/1091 which marks builds 3-5 as broken. (Builds 6 & 7 are functional and have the correct constraints.)
Checklist

[x] Used a static YAML file for the patch if possible (instructions).
[x] Only wrote code directly into generate_patch_json.py if absolutely necessary. Didn't change it.
[x] Ran pre-commit run -a and ensured all files pass the linting checks.
[x] Ran python show_diff.py and posted the output as part of the PR.
[x] Modifications won't affect packages built in the future.

Output from show_diff.py looks mostly like I expected. I guess I've got nothing to do with those anyio changes.
================================================================================
================================================================================
linux-armv7l
================================================================================
================================================================================
win-32
================================================================================
================================================================================
osx-arm64
osx-arm64::cppyy-cling-6.30.0-py311h4ca21db_0.conda
osx-arm64::cppyy-cling-6.30.0-py310h59dd246_1.conda
osx-arm64::cppyy-cling-6.30.0-py312hee8bc9d_1.conda
osx-arm64::cppyy-cling-6.30.0-py312hee8bc9d_2.conda
osx-arm64::cppyy-cling-6.30.0-py310h59dd246_0.conda
osx-arm64::cppyy-cling-6.30.0-py39hd308395_0.conda
osx-arm64::cppyy-cling-6.30.0-py310h59dd246_2.conda
osx-arm64::cppyy-cling-6.30.0-py311h4ca21db_1.conda
osx-arm64::cppyy-cling-6.30.0-py38h9908e9a_0.conda
osx-arm64::cppyy-cling-6.30.0-py38h9908e9a_2.conda
osx-arm64::cppyy-cling-6.30.0-py39hd308395_1.conda
osx-arm64::cppyy-cling-6.30.0-py39hd308395_2.conda
osx-arm64::cppyy-cling-6.30.0-py312hee8bc9d_0.conda
osx-arm64::cppyy-cling-6.30.0-py311h4ca21db_2.conda
osx-arm64::cppyy-cling-6.30.0-py38h9908e9a_1.conda
-    "libcxx >=14.0.6",
+    "libcxx >=14.0.6,<18",
================================================================================
================================================================================
linux-ppc64le
================================================================================
================================================================================
linux-aarch64
================================================================================
================================================================================
noarch
noarch::anyio-4.6.0-pyhd8ed1ab_0.conda
-    "python >=3.9",
+    "python >=3.8",
================================================================================
================================================================================
win-64
================================================================================
================================================================================
osx-64
osx-64::cppyy-cling-6.30.0-py39h0bb4e67_0.conda
osx-64::cppyy-cling-6.30.0-py39h0bb4e67_2.conda
osx-64::cppyy-cling-6.30.0-py312hecaf9ea_0.conda
osx-64::cppyy-cling-6.30.0-py310h71e7e49_2.conda
osx-64::cppyy-cling-6.30.0-py39h78a5168_0.conda
osx-64::cppyy-cling-6.30.0-py39h78a5168_2.conda
osx-64::cppyy-cling-6.30.0-py311h0102fb6_1.conda
osx-64::cppyy-cling-6.30.0-py310h71e7e49_0.conda
osx-64::cppyy-cling-6.30.0-py311h0102fb6_0.conda
osx-64::cppyy-cling-6.30.0-py39h78a5168_1.conda
osx-64::cppyy-cling-6.30.0-py38hbcdfe3b_0.conda
osx-64::cppyy-cling-6.30.0-py311h0102fb6_2.conda
osx-64::cppyy-cling-6.30.0-py310h71e7e49_1.conda
osx-64::cppyy-cling-6.30.0-py38hbcdfe3b_1.conda
osx-64::cppyy-cling-6.30.0-py39h0bb4e67_1.conda
osx-64::cppyy-cling-6.30.0-py312hecaf9ea_2.conda
osx-64::cppyy-cling-6.30.0-py38hbcdfe3b_2.conda
osx-64::cppyy-cling-6.30.0-py312hecaf9ea_1.conda
-    "libcxx >=14.0.6",
+    "libcxx >=14.0.6,<18",
================================================================================
================================================================================
linux-64


Allow prereg splash page to load for django-osf

Purpose
Fix query for a user's nodes on which they are admins!
Changes

Update node query for getting a user's nodes, then filter by admin

Side effects
One query and a pairing down of results vs one modular ODM
Ticket
https://trello.com/c/tA2FBEWb/16-prereg-splash-page-leads-to-unable-to-resolve

@cwisecarver ready for a look over! Question tho -- should we be re-doing modular ODM queries when it's simple enough to do? Thought it was weird here to have a Django ORM query and then a Modular ODM one on the next line, but left it in the spirit of making as few changes as necessary. Thoughts?

@erinspace I'd say if you see one that's right next to what you're working on, doesn't hurt to change it. But I wouldn't kill yourself. We're going to have to go back through and rewrite/optimize them eventually so every little bit helps. Plus, it gets people in the habit of doing them and gives everyone some examples to learn from.

@cwisecarver ready for another look!

lgtm

Thanks @erinspace

Also checking with QA to see what can be Draft Registrations! Will update Node vs AbstractNode if necessary!

Checked with Amanda, can't make a registration from a registration so Node seems to work here!

Sweet! Thanks @erinspace


Use Column Aliases When Doing "Advanced Copy"

As it was reported in #18946 the users where not seeing the columns aliases when doing the "Advanced copy" of the results;
The problem was reported for MySQL and MariaDB, I also observed it personally with Postgres;
The example of the problem is as follows:

Having a query like

SELECT
	f.author as 'Author Name'
from
	family f

produces the following results in the UI:

When the users selects a few results and selected Advanced copy -> Copy as CSV (or Copy as TXT, etc.) the results are as follows:

"author"
"Griffiths-Jones SR, Mifsud W, Gardner PP"
"Griffiths-Jones SR, Mifsud W"

and the alias of the author column is not used.

This MR fixes this behavior for all the Advanced copies.
Cheers!

Thank you for contribution!

We passed the PR to our QA team for further testing.

@MashaKorax
Please check #34050 and #34963 cases also.

verified


linuxKernel.packages.linux_6_10.evdi: 1.14.5 -> 1.14.6

Description of changes
Changelog: https://github.com/DisplayLink/evdi/releases/tag/v1.14.6
Things done

Built on platform(s)

[X] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[X] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

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

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

#336389

I merged my PR without checking that an existing PR was available, sorry about that :(


podmanv2 load

enable podman load for v2
add reexec into main
add systemd build flag to v2 makefile
Signed-off-by: Brent Baude<EMAIL_ADDRESS>

/lgtm

/hold

/hold cancel

/lgtm

My previous comments are still open:

Load does not work and errors out with Error: error adding "" to image "@a187dde48cd289ac374ad8539930628314bc581a481cdb41409c9289419ddb72": repository name must have at least one component while v1 is working.
There is no image load command.

Please don't ask me to spend time reviewing if my reviews are not being addressed.


feat: add usage_model to metadata

and remove toggling usage model after upload
this shouldn't be merged until the upload api supports usage_model in
metadata

Yay!


How am I supposed to debug my code if all exceptions and errors are caught by Jasmine??

It's impossible to find bugs in my code when Jasmine catches all exceptions and errors and leaves me with nothing but a static stack trace. Can this be disabled somehow??

It's not currently configurable, no. I believe the original intent was that any code that raises an exception should also fail out your tests. If you know what's throwing and want to get an interactive stack, I imagine you might be able to get an error in the console by throwing a debugger right before the line that's throwing and running just that line.

Alright, thanks for the tip.

You can use the WebKit dev tools to break on all thrown exceptions. This isn't what you want but if you click the break on exceptions button again it will break on all exceptions, including those that are being caught. You might actually be surprised at the number of places raising exceptions!
Check out @paulirish's 5 minute Chrome Developer Tools video which is where I learned this:
http://www.youtube.com/watch?v=nOEw9iiopwI

Ooh, that's nice! Thanks @MarkBennett

Ok I'm running into this issue again big time. None of the suggestions given in this thread are of any help:

It only occurs in IE8, so @MarkBennett's WebKit tip doesn't apply;
I have not the slightest idea of where in my code the exception originates, because Jasmine does not give me anything but a plain text error message without any reference (Error: Unexpected call to method or property access.), so @ragaskar's advice doesn't bring me anything either.

Grrrrr… how are the guys at Pivotal dealing with this issue? I assume they are using Jasmine internally?

I've been using the 1.2.rc1 branch, which seems to do a better job at showing the stack trace, at least in most instances.

This issue is a pretty big blocker for me and I think it means we'll be switching to QUnit for the project I'm on. Tracking down errors is a pretty frustrating, multi-step process. In QUnit, we just check the "No try/catch" checkbox and the debugger jumps straight to the line where the exception was thrown. Really hard to beat.
If I submitted a pull request to fix this, what are the odds it would be accepted?

I'd say fairly high for acceptance. It would need to be an option/preference at the environment level (not just in-browser) so Node folks can use it.


MM-47302 Migrate /enterprise/extend_session tests to TypeScript

Summary
Migrate /enterprise/extend_session tests to TypeScript
Ticket Link
Fixes https://github.com/mattermost/mattermost-server/issues/21307
Jira: https://mattermost.atlassian.net/browse/MM-47302
Release Note
NONE

Hello @pikami,
Thanks for your pull request! A Core Committer will review your pull request soon. For code contributions, you can learn more about the review process here.

E2E tests not automatically triggered, because PR has no approval yet. Please ask a developer to review and then try again to attach the QA label.

/e2e-run

Hi @pikami we can add /e3e-test label after at least one Dev approval

/e2e-test

Successfully triggered e2e testing!
https://git.internal.mattermost.com/qa/cypress-ui-automation/-/pipelines/249500

/e2e-test

Successfully triggered e2e testing!
https://git.internal.mattermost.com/qa/cypress-ui-automation/-/pipelines/251683


Specify which versions have been tested

It would be good if the README specified which Cura versions have been tested as there is no way of knowing if this profile will work with all future versions.
It would also be good to know which printer firmware versions this was tested with.

Good point, will update it right away

Updated README, closing.


Fixes the 'max call stack size exceeded' for reading error message from nested schema

https://github.com/matteodelabre/mongoose-beautiful-unique-validation/issues/57

Test cases are passing with<EMAIL_ADDRESS>

Hi @matteodelabre,
Build was failed with below error.
WARNING: The following packages cannot be authenticated!
  mongodb-org-server
E: There were unauthenticated packages and -y was used without --allow-unauthenticated
apt-get.diagnostics
apt-get install failed
...
Reading package lists...
W: GPG error: http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.4 Release: The following signatures were invalid: KEYEXPIRED<PHONE_NUMBER>
W: The repository 'http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.4 Release' is not signed.
W: http://ppa.launchpad.net/couchdb/stable/ubuntu/dists/trusty/Release.gpg: Signature by key 15866BAFD9BCC4F3C1E0DFC7D69548E1C17EAB57 uses weak digest algorithm (SHA1)
The command "sudo -E apt-get -yq --no-install-suggests --no-install-recommends $(travis_apt_get_options) install mongodb-org-server" failed and exited with 100 during .

Can you rebuild it.


Allow to set meta

  register_exception StrongerParameters::InvalidParameter,
                     code:    :unprocessable_entity,
                     title: 'Validation Error',
                     status:  422,
                     message: ->(e) { e.message },
                     meta: ->(e) { { value: e.value, key: e.key } }

Output
{"errors"=>                                                                                |  ETA: ??:??:??
  [{"code"=>"unprocessable_entity",
    "status"=>"422",
    "title"=>"Validation Error",
    "detail"=>"Invalid parameter: name must be a string",
    "meta"=>{}}]}

Also it would be nice to have predefined exception handler for StrongerParameters::InvalidParameter

See the "custom exception handler" section of https://jsonapi-suite.github.io/jsonapi_errorable. You can override meta in your exception class. That said, not against a PR allowing this as an option to register_exception as well.
I agree we should have a predefined handler for StrongerParameters::InvalidParameter, though I think we need something in the response differentiating a validation error and an invalid parameter error. I'll get to this at some point, or maybe submit a PR?

Maybe someday, for now I can not decide what to choose: jsonapi-suite or jsonapi-resources
For example, can I use jsonapi_swagger_helpers already?

I removed support for swagger helpers because we supported so many query parameters "out of the box" the default swagger UI was unusable. We're working on an alternative (either an alternative UI or something else altogether).
FWIW, this library was created as a more Rails-y alternative to JR. It's more powerful, as it supports querying and saving nested resources. and has better support for non-AR use cases IMO. There are other reasons, like support for statistics and extra_fields, but those are the main ones. I'd recommend the tutorial and compare it with your JR experience. Definitely willing to support what people need, auto-documentation is next on the list.

Yes, the project is awesome and I believe that someday it will be as popular as jsonapi-resources, but the problem as old as time: be on my own or not :) Will see

P.S. because of the way stronger_parameters work (raise on log when stumbles upon invalid parameter) its impossible to assemble all errors and pass to render_errors in bundle
Will try to make friends of rectify and jsonapi-suite (perhaps)

Are you saying you want to combine model validation errors and strong_params errors? I think it is correct that these are separate error responses with a different status code, though I agree stronger_param errors should be jsonapi compliant.

Are you saying you want to combine model validation errors and strong_params errors?

no, substitute strong_params with something like Rectify form objects. Unlike strong params it will assemble errors like model validations, but they are conditional per actions
class AttachmentsController < ApplicationController
  before_action :authenticate_user!
  jsonapi resource: AttachmentResource
  jsonapi_form :attachment_that_allow_nestings, only: :create
  jsonapi_form :attachment, only: :update
  ....
end

# app/forms/...
class AttachmentThatAllowNestingsForm < JsonapiForm
  mimic Attachment # import validations from model
  attribute :file, File
  attribute :id, String # so, unlike stronger_params, if id was integer - coerce

  has_many :nestings, Array[Nesting]

  validates :file, :id, :presence => true
  validate :custom_valid

  def custom_valid
     ...
   end
end

That what I first thought, but now I think that I can get along with strong_resources, it has all things, and coercion I can make like this
# config/initializers/strong_resources.rb
strong_resource :person do
  attribute :id, :integer_or_string # to allow json id: 1 or id: '1', so rails model will coerce it for us anyway
end

do not pay attention, just thinking out loud )
I've joined pundit and jsonapi (in progress), take a look )


StreamController onPause invoked too late

If a listener is processing an event, as in the below example, web and VM do not invoke the onPause handler during sub.pause().
Is there any reason for delaying the pause?

Reproducible example
import 'dart:async';

void main() async {
  final result = <int>[];

  final c = StreamController<int>(
    onPause: () {
      result.add(0);
    },
  );
  final sub = c.stream.listen(null);
  sub.onData((data) {
    sub.pause();
    result.add(1);
  });
  c.add(1);
  await Future.delayed(Duration.zero);

  print(result); // Actual: [1, 0]
  // Expected: [0, 1]
}

Because of this issue, if we are doing heavy synchronous work in the listeners, pauses are delayed which can be wasteful.
Workarounds

await after pausing the subscription:

sub.onData((data) async {
    // Maybe sync work.
    sub.pause();
    await null;
    // onPause has now been invoked.
    // Maybe more sync work.
    // Maybe resume.
  });

Async for-in loop. As per the language spec, await pauses the stream. However, if we want fine-tuned control of the subscription, then an async for-in loop is not a workaround.

Proposal
If a controller's stream is not paused or cancelled, perhaps guarantee that calling StreamSubscription.pause invokes the controller's onPause handler.
In other words, if the last invoked stream controller handler is onListen or onResume, then upon calling StreamSubscription.pause, invoke onPause?

Is there any reason for delaying the pause?

Yes.
Mainly making the state management of the stream subscription consistent and manageable, and avoiding unnecessary busy work that has no effect. As much as possible, it tries to make delivery of events atomic.
The stream can only do one thing at a time, so while it's delivering an event, nothing else happens inside the stream. If that event handling code does a sequence of pauses and resumes, it doesn't actually matter to the stream until control comes back. That avoids doing a long sequence of onPause and onResume callbacks, which just end up in the same state as before.
The "if we are doing heavy synchronous work in the listeners, pauses are delayed". It usually doesn't matter that pauses are delayed during synchronous work, because nothing matters during synchronous work in single-threaded code.
There is nothing wasteful happening while other synchronous code is running, because nothing else happens. At least not in that isolate.
If the issue here is that the onPause is used to delay work that happens on another thread, then I can see the problem.

The whole point of onPause is to stop work somewhere. Somewhere could be another thread or a remote server. That's why this is an issue.
Would removing it be that difficult? None of those reasons for it are convincing.

Changing behavior is definitely possible, but also potentially breaking.
I'm willing to try, to see how much it breaks.


Installation: Added example for GoogleCloudStorage backend

Changes
docs: Added installation example for GoogleCloudStorage backend

I added all changes from this PR to my install guide rewrite: https://github.com/tektoncd/pipeline/pull/2104


Remove deprecated functionality targeted to 1.9

Since I've been lazy on CHANGES lately, I also updated it with info from recent pull requests. There's still one deprecated piece of functionality targeted at 1.9 (PolygonGraphics.positions), but removing it is more involved and I'll eventually open a separate pull for it.

Fixes #2452

Ready for another look.


KSP-64k Netkan Initial Commit

Accidentally modified my master when updating the NearFuture pack stuff. Undid the changes, should be untouched at this point.

Updated identifiers, removed unnecessary dependencies.

Seems some small part of changes to another file slipped in so I can't really work with this since my gitomancy level is too low.

@Felger There is still white-space changes to NetKAN/NearFutureElectrical.frozen - could you remove them?

Closing in favor of #1754, #1755, and #1756. Basically the same thing except using KS as the source.


How to track CPEs in ORT?

In addition to PURLs, from time to time there are inquiries to also track CPEs in ORT's data model, e.g. in order to let the advisor query vulnerability providers that only understand CPEs.
Open questions:

Should we track CPEs at all?
Should a CPE be a top-level Package-property like purl? Or should both be merged into an "external reference" concept similar to SpdxExternalReference?
Should the analyzer instead try to convert CPEs given in package metadata to PURL, e.g. via VulnerableCode like @pombredanne has mentioned?

As middle of 2019, UE instituted a regulation for automotive industry related to cibersecurity.
https://unece.org/sustainable-development/press/un-regulations-cybersecurity-and-software-updates-pave-way-mass-roll
Because of that, we need to track it down security related issues in our software anyway, and we are relying on CPE strins to track CVE advisories, as nothing else exists right now, and i don't see alternative initiatives.
So, even not tracking now, this questions will bite back again and again as Ort usage is increasing tenfold lately.

Some thoughts:
I like the idea of having external references, this seems to be pretty flexible. I assume we would then have an enumeration like ReferenceType, and packages would contain a Map from ReferenceType to String, correct?
If a package manager can provide the CPE directly (as may be the case for SPDX), it should do so. It would be possible to have a post-processing step to generate/retrieve missing CPEs using an external source. As this may slow down the analyzer step, this should probably be an optional step that can be enabled if this information is needed.

Some comments:

in general and IMHO tracking CPE is a good thing. For instance we track these as references in VulnerableCode.  They are far from great as identifiers especially for open source packages, but they have the merit to exist.
VulnerableCode was started in part because CPEs are weak when it comes to open source packages
Package URLs are an effective (emerging) alternative for  open source packages packages adopted in many places such as OWASP including more recently in the OSSF OSV schema and the CSAF Vex schema. So they are always a good choice IMHO.
VulnerableCode ends up being also a CPE<-> purl translator since we track both; we have a script that can effectively dump a translation between the two. You can see an example run in https://raw.githubusercontent.com/sbs2001/purl2cpe/master/2020.json

So from the comments on this ticket, the tendency seems to go into the direction of adding support for CPEs to ORT's data model. Shall I create a proposal PR how this could look like?

Shall I create a proposal PR how this could look like?

I would be fine with this, yes. Maybe we could start together.

HI @heliocastro  @sschuberth  is there any standard way for computing cpe id's. I personally feel each company is creating their own standard for computing the cpe id's
for example
https://github.com/oss-review-toolkit/ort/blob/e1932bac862adae31868069b2b5dd6b48c660d48/plugins/package-managers/spdx/src/funTest/assets/projects/synthetic/libs/zlib/package.spdx.yml#L19
above zlib cpe is coming from compress but the url shows it is taken from standard site
https://github.com/oss-review-toolkit/ort/blob/e1932bac862adae31868069b2b5dd6b48c660d48/plugins/package-managers/spdx/src/funTest/assets/projects/synthetic/libs/zlib/package.spdx.yml#L16
for which the actual cpe id computed from official nvd cpe site   is cpe:/a:zlib:zlib:1.2.11
In official-cpe-dictionary_v2.2.xml below we can see the actual
  <cpe-item name="cpe:/a:zlib:zlib:1.2.11">
    <title xml:lang="en-US">zlib 1.2.11</title>
    <references>
      <reference href="https://github.com/madler/zlib">Version</reference>
      <reference href="http://www.zlib.net/">Product</reference>
      <reference href="http://www.zlib.net/ChangeLog.txt">Version</reference>
    </references>
    <meta:item-metadata nvd-id="396307" status="FINAL" modification-date="2022-06-22T16:40:44.440Z"/>
  </cpe-item>

So that means the wrong cpe id will not show any vulnerabilities when compared with the nvd database.
is there any standard way to identify the cpe id for it to be really beneficial ?
Thanks

That's the problem with CPEs, there is no common standard to compute them. Actually, CPEs have to be registered, similar to license plates for vehicles. Which means you first have to look up whether there is an official CPE registered for the software product you want to query vulnerabilities for. Which in turn means you cannot look up vulnerabilities for a product which doesn't have a CPE... quite pointless if you ask me.


fixed but where os list was not clearing on submit

Fixded the bug whre out of stock list was not clearing upon saving


Add pydeck as a new plotting backend

References:

https://deckgl.readthedocs.io
https://github.com/agressin/pydeck_myTileLayer

This feature has been implemented. See notebook example https://leafmap.org/notebooks/29_pydeck
https://user-images.githubusercontent.com/5016453/137638490-8ffa1a2d-0971-4090-a49c-19ae315451f2.mp4