Enable pushy for android only

I am getting errors in ios build so is there a way i can disable pushy from getting autolinked to ios. Since i am targeting android only as of now and pushy is working fine in android.

Any solution for this?

Hi @sohamad,
Please follow these steps to unlink the Pushy RN SDK from your iOS project:

Run the following command to unlink the ios native module from your project:

react-native unlink pushy-react-native

Edit the ios/Podfile file, remove any lines mentioning Pushy, and save the file.

Run the following command to uninstall the Cocoapods dependency:

cd ios && rm -rf Podfile.lock && pod install

Remove these two lines of code from your ios/app/AppDelegate.m file:

#import <PushyModule.h>
[PushyModule didFinishLaunchingWithOptions:launchOptions];

Rebuild your project and check whether the build error is resolved. If not, please copy and paste the exact build error so we can debug further.

Closing the issue due to lack of response, feel free to reply if you still need help with this.


Code Cleanness CI

Description
Code Cleanness CI that has specific parts for unused variables, values, dummy arguments, maybe-uninitialized
Fixes #467
Type of change

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Something else

Scope

[x] This PR comprises a set of related changes with a common goal

How Has This Been Tested?

Github Actions on the repository

Test Configuration:

What computers and compilers did you use to test this:
Github Actions

Checklist

[x] This PR does not introduce any repeated code (it follows the DRY principle)
[x] I cannot think of a way to condense this code and reduce any introduced additional line count

Thanks, @okBrian! I will look at this more closely soon. If @henryleberre thinks the PR looks good, then it's probably good.
Since you've already been doing a lot of CI work, I think it might be useful to look at some of these code "uncleanness" situations in the Fortran source code and squash some of those warnings that the CI shows. There are many, so I don't recommend doing all of them at once.

The PR should be working the difference is large I think because master doesn't have all warnings enabled on --debug build, so when I build with pr its adding a lot of warnings.

it looks like you need to rebase..

The PR should be working the difference is large I think because master doesn't have all warnings enabled on --debug build, so when I build with pr its adding a lot of warnings.

You would need this PR to build master with the warning flags for comparison purposes.
I suppose the problem is that you don't have the option to add at the moment those because they are not available in the current master branch CMakeLists.txt? If so, you can first make a small PR that enables them if a certain flag is used, which we can merge right away, then we can check how this one is working.

We might need an additional flag other than --debug. In many cases I can imagine that users invoking --debug do not want to see all of these warnings! (though I'm open to other views @henryleberre @okBrian ?)

Honestly I am just not sure where else we would put warn all. I feel like making another flag to just show all warnings may be a bit awkward and I feel like grouping it under debug makes sense because you want to be warned of all potential things that could cause the error in your code. Even though you do get a lot of warnings you can grep through it to find a specific warning.

Honestly I am just not sure where else we would put warn all. I feel like making another flag to just show all warnings may be a bit awkward and I feel like grouping it under debug makes sense because you want to be warned of all potential things that could cause the error in your code. Even though you do get a lot of warnings you can grep through it to find a specific warning.

Fair enough. Other opinions, @wilfonba @henryleberre etc.?

Update: I just ran --debug from @okBrian's fork and think it's OK to leave these warnings in --debug

I think you need to pull from master @okBrian
From CI:
Difference is how many warnings were added or removed from master to pr, negative numbers are better since you are removing warnings
Unused Variable Count: 379, Difference: 377
Unused Dummy Argument: 185, Difference: 185
Unused Value: [24](https://github.com/MFlowCode/MFC/actions/runs/10707730293/job/29688381847?pr=594#step:11:25), Difference: 24
Maybe Uninitialized: 8, Difference: 7
Everything: 1485, Difference: 619

Honestly I am just not sure where else we would put warn all. I feel like making another flag to just show all warnings may be a bit awkward and I feel like grouping it under debug makes sense because you want to be warned of all potential things that could cause the error in your code. Even though you do get a lot of warnings you can grep through it to find a specific warning.

Fair enough. Other opinions, @wilfonba @henryleberre etc.?

I agree with @okBrian. I am also a little skeptical about the utility of this workflow but I am open to trying it. The approach I think makes more sense is to enable all the warnings that can be important (unused variable, use before declaration, etc..) in both Release/Debug and have the CI fail if there are any warnings. We would then require that there be no such warnings before merging a PR. Think of it like linting for Python code.

Honestly I am just not sure where else we would put warn all. I feel like making another flag to just show all warnings may be a bit awkward and I feel like grouping it under debug makes sense because you want to be warned of all potential things that could cause the error in your code. Even though you do get a lot of warnings you can grep through it to find a specific warning.

Fair enough. Other opinions, @wilfonba @henryleberre etc.?

I agree with @okBrian. I am also a little skeptical about the utility of this workflow but I am open to trying it. The approach I think makes more sense is to enable all the warnings that can be important (unused variable, use before declaration, etc..) in both Release/Debug and have the CI fail if there are any warnings. We would then require that there be no such warnings before merging a PR. Think of it like linting for Python code.

It is an interesting idea, but a problem could be that while we have a way of disabling linting checks locally in some Python code regions, which seems necessary for the toolchain, we don't have this for Fortran (and probably wouldn't want it?).
If you look at the output of @okBrian's PR CI 'cleanness' run, you'll see many warnings. Most are legitimate and should be cleaned up. But I worry that our use of metaprogramming and ifdefs results in warnings in some cases (e.g., GPU compilation, or only for simulation or pre_process) that cannot be 'cleaned.' I would need to look closer to verify this is wholly true (there is no way to remove the warning), but keep it in mind.

This looks "right" now. @okBrian can you confirm this to be working as you expect?
@henryleberre @okBrian how should we converge on failure/pass of the CI run? My current opinion is that 'cleanliness' CI should fail (non-zero stop code) if the diff in the # of warnings between pr and master is > 0. If this is the case, we can still merge, but we would at least be aware of it. Asserting the # warnings = 0 seems impossible to maintain (though not a bad target).

oh and @okBrian you still have 300 files changed in this PR. can you rebase (or whatever is needed) to sync your changes (backup your work if you do!)? alternatively you can open a new PR that has only the needed changes, unclear to me which is more work.

I am going to remake this PR since it'll probably be easiest way to fix the pr.


Add dcos cluster list subcommand.

Same features as in the current DC/OS CLI, I have just renamed CLUSTER ID by ID in the output as the command already states that we list clusters.
Also abstracts the table creation so that we use the same for all our commands.

run all integration tests


Better weighting distribution

use the following code to compare
var test = [0,1,2,3,4,5,6,7,8,9];

for(i = 0; i< 1000000; i++){
   rnd = this.game.rnd.weightedPick(test);
   if(rnd == 9)
       console.log(rnd);
}

Thanks, I can't merge your PR because it's against master not dev, but have made the change locally anyway.


clarification about required with readOnly and writeOnly

Hi All,
i need a confirmation that i understood correctly the behavior of required with readonly and writeonly.

required field X without  readonly and writeonly: the field X is mandatory in request and response
field X required and readOnly: the field x is mandatory in response but not in request
field X required and writeOnly: the field x is mandatory in request but non in response

as i wrote is correct ?

@GuillaumeUnice I'm fairly sure that table matches @tedepstein 's comment, and from a JSON Schema perspective, it also looks good.  Our wording is more lax, and assumes that in some cases, particularly a GET->modify->PUT cycle, it makes sense to allow but ignore read-only fields on the PUT.  It sounds like PUT isn't relevant to you, though.  If you're using POST to create, though, I agree with the SHOULD NOT.

@dario-frongillo, it looks to me like this issue is resolved, so I'll close it for now. If you feel the issue isn't really resolved, please feel free to reopen the issue and provide further comments.


Convert to words in sentence (space separated) option

It will be useful for Spock test method names.

Could you be more specific?

This is enhancement proposition to new converter:
eg:
"someWords" => "some words"
"some-words" => "some words"
"some_Words" => "some Words"

It already is possible in Toggle Case, so you want a new action into the menu?
Maybe I should change To camelCase (or to words) to To words (or to camelCase) and without capitalization...

Yes, "or to words" works but without decapitalization.
I think it should has decapitalization because capitalized letter only show parts.
But if you want have back compatibility it should be:
old "To camelCase (Or To Words)" // only label changed
new "To camelCase (or to words)" // with decapitalization


Unable to "keep lowest dice" - as in a roll with a disadvantage in D&D 5E

I want to be able to roll and keep n lowest rolls in this way
"2d20kl1" kl stands for keep low

Hi paviad, thanks for the feedback. I will add the keep lowest capability to the library shortly.

@paviad I have resolved this issue and provided notation changes to support keep lowest. The dice notation changed to p for drop x lowest dice (4d6p1), and l keeps lowest x dice (2d20l1).


New version: Surfshark.Surfshark version 5.8.0999 (<IP_ADDRESS>9)

Created by 🥟 Dumplings in workflow run #5836.

Log
Updated: <IP_ADDRESS>9 → <IP_ADDRESS>9
Submitting WinGet manifests
Creating manifests
Uploading manifests and making commits
Creating a pull request

Microsoft Reviewers: Open in CodeFlow

It seems that Policy 2.3 check is being applied randomly now.


Refine autonaming to have more intuitive behavior

Last name in an Expression wins, while the first Statement to name wins.
This is done via checking the _id of HasIds during autonaming and only
applying a name if the HasId was created in the scope of autonaming.
There is no change to .autoSeed or .suggestName behavior.
Behavior of chisel3-plugins from before this change is maintained. More precisely, assuming this PR is released with Chisel v3.4.1, if you use Chisel v3.4.1 with the v3.4.0 (or v3.4.0-RC3) plugin, you'll get the v3.4.0 behavior.
The bulk of the work here was making unapply continue to work because it previously worked via overriding names. Now, a signal will only be named by autoNameRecursively or autoNameRecursivelyProduct calls that wrap the Expression within which the Data is created.
Fixes https://github.com/freechipsproject/chisel3/issues/1603
Contributor Checklist

[x] Did you add Scaladoc to every public function/method?
[x] Did you add at least one test demonstrating the PR?
[x] Did you delete any extraneous printlns/debugging code?
[x] Did you specify the type of improvement?
[TODO] Did you add appropriate documentation in docs/src?
[x] Did you state the API impact?
[x] Did you specify the code generation impact?
[x] Did you request a desired merge strategy?
[x] Did you add text to be included in the Release Notes for this change?

Type of Improvement

bug fix
new feature/API

API Impact
This changes the naming behavior to what I've been calling "Outer Expression, First Statement" wins. For example:
  val width: Option[Int] = Some(8)
  val debug = width.map { w =>
    val foo = IO(Output(UInt(w.W))) // name: "debug_foo"
    val delay = RegNext(in) // name: "debug_delay"
    foo := delay
    foo
  } // name: "debug"
  val bar = debug // name: "bar"

Intuitively, the name of this port should be debug. It is useful that things built within the anonymous function should have debug as a prefix in addition to their val name (eg. debug_delay), but because foo is returned, the outer name should win (debug). It is also intuitive that debug wins over bar since debug is the name of the declaration rather than an alias.
Prior to this PR, the port would be named debug_foo and if it were a non-port, it would be named bar. This PR unifies the behavior of ports and non-ports into what is (in my opinion) more intuitive.
Backend Code Generation Impact
Change in naming algorithm
Desired Merge Strategy

Squash

Release Notes
Change naming priority to "Outer Expression, First Statement"
Reviewer Checklist (only modified by reviewer)

[ ] Did you add the appropriate labels?
[ ] Did you mark the proper milestone (3.2.x, 3.3.x, 3.4.0, 3.5.0) ?
[ ] Did you review?
[ ] Did you check whether all relevant Contributor checkboxes have been checked?
[ ] Did you mark as Please Merge?

👍 for the algorithm/behavior as documented in the comments

Marked DO NOT MERGE because I need to write docs and I'm seeing a handful of cases of worse names that I wouldn't expect so I need to dig into it.

I'm seeing a handful of cases of worse names that I wouldn't expect

In a randomish sampling, I found this behavior to be correct. In some cases a temporary name would get overridden to a better, non-temporary name; however, it could also result in overriding names in a bad way. For example:
class Example extends MultiIOModule {
  def extractBelow(from: UInt, idx: Int): UInt = {
    val x = from
    x(idx, 0)
  }

  val in  = IO(Input(UInt(16.W)))
  val out = IO(Output(UInt(16.W)))
  // If foo is a field of Example, reflective naming override hides the bug
  if (true) {
    val foo = Reg(UInt(16.W))
    foo := in
    out := extractBelow(foo, 15)
  }
}

With v3.4.0 gives:
circuit Example :
  module Example :
    input clock : Clock
    input reset : UInt<1>
    input in : UInt<16>
    output out : UInt<16>
    reg out_x : UInt<16>, clock with :
      reset => (UInt<1>("h0"), out_x)
    out_x <= in
    node _out_T = bits(out_x, 15, 0)
    out <= _out_T

(Scastie: https://scastie.scala-lang.org/T6mdGw3LQOSNc2yEyUMy5w)
See how the val x in the utility function (with prefix out from the :=) overrides the name? In this case, it's clearly not desirable. That being said, in other cases, this change turns some good names into temporaries. For example, a slight modification on the above:
class Example extends MultiIOModule {
  def extractBelow(from: UInt, idx: Int): UInt = {
    val x = from
    x(idx, 0)
  }

  val in  = IO(Input(UInt(16.W)))
  val out = IO(Output(UInt(16.W)))
  // If foo is a field of Example, reflective naming override hides the bug
  if (true) {
    val foo = Reg(UInt(16.W))
    foo := in
    out := extractBelow(foo +& 1.U, 15) // <---- difference here
  }
}

With v3.4.0 gives:
circuit Example :
  module Example :
    input clock : Clock
    input reset : UInt<1>
    input in : UInt<16>
    output out : UInt<16>
    reg foo : UInt<16>, clock with :
      reset => (UInt<1>("h0"), foo)
    foo <= in
    node out_x = add(foo, UInt<1>("h1"))
    node _out_T = bits(out_x, 15, 0)
    out <= _out_T

(Scastie: https://scastie.scala-lang.org/3FoJCFOmRUK5iYteYkkvjg)
In this case, it's nice that the sum gets the name out_x. With the change in this PR, instead you get:
circuit Example :
  module Example :
    input clock : Clock
    input reset : UInt<1>
    input in : UInt<16>
    output out : UInt<16>
    reg foo : UInt<16>, clock with :
      reset => (UInt<1>("h0"), foo)
    foo <= in
    node _out_T = add(foo, UInt<1>("h1"))
    node _out_T_1 = bits(_out_T, 15, 0)
    out <= _out_T_1

The loss of out_x is a bit unfortunate, but one could argue that this is more predicable since the Expression at the callsite does not have a name. If we prioritize predictability over "best possible names" then I think this is actually good.

@azidar I've done an initial updating of the docs, but I have not yet added a description of "Outer Expression, First Statement". I would appreciate review of the code and tests while I finish up the docs.


Visuals

Updates to diagrams in install guide. Consistent styling.

closing. tried to merge to master by mistake.


Clean up the library manifest

Remove all out-dated permissions.
Could we remove all permissions from the manifest? Do we need to merge them somehow?

linked issue: https://github.com/onepf/OpenIAB/issues/426


[AutoPR cosmos-db/resource-manager] CosmosDB add Availability Zone option for locations

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

(message created by the CI based on PR content)

Codecov Report

Merging #5521 into restapi_auto_cosmos-db/resource-manager will increase coverage by <.01%.
The diff coverage is 100%.

@@                             Coverage Diff                             @@
##           restapi_auto_cosmos-db/resource-manager    #5521      +/-   ##
===========================================================================
+ Coverage                                       49%      49%   +<.01%
===========================================================================
  Files                                         6508     6508
  Lines                                       182526   182527       +1
===========================================================================
+ Hits                                         89453    89454       +1
  Misses                                       93073    93073

Impacted Files
Coverage Δ

...osmosdb/azure/mgmt/cosmosdb/models/location_py3.py
100% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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

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


Convert exclusive systems in Bevy to ordinary systems wherever possible

I recently noticed that several exclusive systems in Bevy no longer need to be exclusive systems: change_window and play_queued_audio_system were the two I initially noticed. These were originally exclusive systems due to an inability to use NonSend resources in parallelizable systems: this limitation has since been removed.
These and any other similar cases should be converted to ordinary parallel systems (in the same stage) to improve the performance of Bevy's apps by reducing unnecessary blocking, and better communicate intent (we really don't need access to everything in the world).
bevy_mod_debug_dump may be able to assist you in grabbing a list of all of the systems to inspect. Or just search for uses of .exclusive_system in the code base using your IDE of choice.

Good call!

There are no instances of .exclusive_system() anymore since its no longer required, and I couldn't find any systems that accessed &mut World or used at_end/at_start without needing it.
This can probably be closed :)


Enhancement: Unified Roles Management

Description
Improved management of unified roles with the introduction of default enabled/disabled states and a new command for listing available roles.
It is important to note that a disabled role does not lose previously assigned permissions;
it only means that the role is not available for new assignments.
The following roles are now enabled by default:

UnifiedRoleViewerID
UnifiedRoleSpaceViewer
UnifiedRoleEditor
UnifiedRoleSpaceEditor
UnifiedRoleFileEditor
UnifiedRoleEditorLite
UnifiedRoleManager

The following roles are now disabled by default:

UnifiedRoleSecureViewer

To enable the UnifiedRoleSecureViewer role, you must provide a list of all available roles through one of the following methods:

Using the UNIFIED_ROLES_AVAILABLE_ROLES environment variable.
Setting the available_roles configuration value.

To enable a role, include the UID of the role in the list of available roles.
A new command has been introduced to simplify the process of finding out which UID belongs to which role. The command is:
$ ocis graph list-unified-roles

The output of this command includes the following information for each role:

uid: The unique identifier of the role.
Description: A short description of the role.
Enabled: Whether the role is enabled or not.

Caveats:
Role disabling 1
Let's imagine the following scenario:

The instance is used by a group of users.
User UA shares resource RA with user UB as editor.
After a while, the editor role is disabled by the administrator.

which leads to the following consequences:

The editor role is no longer available for new assignments.
The old share is still valid, and user UB can still edit resource RA.
The ui needs to show an indicator that the current role of resource RA is disabled.

we need to answer the following questions:

Is it ok that the old resource permissions stay intact after a role is disabled? (we should mention this in the documentation)
What should the ui display when a role is disabled? Should we list anything or is a "ROLE DISABLED" label enough?

WEB POC: https://github.com/owncloud/web/tree/disabled-unified-roles

ideas:

we could build a cli to remove disabled roles from shares and assign the next lower available role

screenshots:

role enabled:

role disabled:

Role disabling 2
With the current implementation, a disabled role is ignored in the system, like if it doesn't exist (the role, not the permissions).
This means that if a role is disabled, it is not possible to assign it, and it is not possible to check if that role is assigned.
It is also important to know that a disabled role won't be part of ANY api response, so if a share has a role assigned and that role is disabled, the user will not see that role in the response.
the same applies to requests (e.g. POST, PUT, ...), the role is considered not existing,
the validation fails if such a role is part of the request.
I talked to alex about this, and he said that he would prefer:

the role is still part of the @libre.graph.permissions.roles.allowedValues list (which is used by web to display the role dropdown), but is marked as disabled.

I'm not against that, its fairly simple change, but I'm not sure if it is the best approach because:

it will be confusing for the user to see a disabled role listed in the @libre.graph.permissions.roles.allowedValues list.
I think (not confirmed) it's harder to handle a disabled role compared to not handle a not existing role.

Tasks:

[X] Add CLI to obtain available roles
[X] Add CLI to identify enabled//disabled roles
[X] Add Config to enable roles
[X] Add Config validation for: unknown roles
[x] Add Unit tests
[x] FixMe comments, need to bring some light into the dark
[x] API: do not accept "invite" calls with role ids which are not configured
[x] Enable "Secure Viewer" in the CI ENV
[ ] Answer Caveats
[ ] Add Documentation and raise ticket

Related Issue

Fixes https://github.com/owncloud/ocis/issues/9698

How Has This Been Tested?

unit tests
acceptance tests

Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[X] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Technical debt
[ ] Tests only (no source changes)

@AlexAndBear, @JammingBen, @kulmann, @butonic, @tbsbdr FYI:
the task could lead to some side-effects, please read my description above, specially the caveats (role disabling 1 & 2).
I'm on vacation tomorrow, i will be back on monday, happy to get your feedback.

the role is still part of the @libre.graph.permissions.roles.allowedValues list (which is used by web to display the role dropdown), but is marked as disabled.

I don't like that. The sole purpose if this field is to indicate which roles can be used for sharing. Since a disabled role can't be used though, it would be very confusing.
Still, we need to somehow inform the user about the permissions of a disabled role. Simply naming it "Disabled role" won't be enough I think. Is there a way to get this kind of information? Web is querying all graph permissions globally via /graph/v1beta1/roleManagement/permissions/roleDefinitions. Maybe change that endpoint to deliver all roles (activated & deactivated) and include a new property deactivated? Then Web could simply check against that list if the role of a given share is disabled or not.
Also, note that https://github.com/owncloud/ocis/pull/9765 adds to more role definitions for OCM. I guess those will be deactivated by default? In this case we need to add this to the OCM documentation. And we need to think about the case when OCM is enabled without the OCM roles. Which basically means that no OCM shares can be created.

Sorry for the accidental close - merging https://github.com/owncloud/web/pull/11387 caused this because of the GitHub "fixes" keyword.

@fschade with regards to documentation:

There is a ocis page this fits for documenting CLI stuff and can be found in ocis/REAMDE.md. This page contains all CLI commands that are not part of a service. In admin docs, we have a page that collects all commands, gives a brief overview and either references the respective service or directs to an own page describing the command if not part of a service. Pls start adding CLI related content in that readme.
As role management is as far I have read part of the graph service, start documenting the functionality in the services/graph/README.md.

I will help you of course and when set take care for the admin docs part as usual 😄


Correct activity request code

Change activity request code to IMAGE_PICKER_REQUEST in currentActivity.startActivityForResult(chooserIntent, IMAGE_PICKER_REQUEST);

Thank you for your pull request and welcome to our community. We require contributors to sign our Contributor License Agreement, and we don't seem to have you on file. In order for us to review and merge your code, please sign up at https://code.facebook.com/cla - and if you have received this in error or have any questions, please drop us a line at<EMAIL_ADDRESS>Thanks!

By analyzing the blame information on this pull request, we identified @satya164 and @alvinthen to be potential reviewers.

@facebook-github-bot shipit

@anshulagarwal06 Can you please sign the CLA so that I can accept your PR?

@satya164 : CLA Signed . you can accept PR

@anshulagarwal06 updated the pull request.

@facebook-github-bot shipit

Thanks for importing. If you are an FB employee go to Phabricator to review.


Add Null Checks

Enemies:

Check for missing ScanNodeProperties

Would have crashed Terminal_Start
An enemy can now also have multiple game objects with ScanNodeProperties

Check if EnemyType enemy of RegisterEnemy is null

Throw ArgumentNullException

Check if enemyPrefab is null

Throw NullReferenceException
Would also have crashed Terminal_Start

Check if an EnemyAICollisionDetect Script's mainScript reference is null

Print an error as a warning, as this will result in errors during gameplay
This is a really common mistake, so having this check will be useful

NetworkPrefabs:

Check if prefab of RegisterNetworkPrefab is null

Throw ArgumentNullException

I just tested with a bunch of enemy mods, everything seems to work as expected.


BMP280 SPI Init

Hi,
Could you write for me some example of initialize BMP280 and read temperature and pressure value ?
I try to use your support file but my code didn't work :/

Hi, Could you please let us know what problem you are facing in the code?
Are you able to read the chip-id of bmp280 sensor by using  bmp280_init() ?

We are closing this issue since we don't get feedback for long time,


Add cross-cluster validity of tokens for the same role

Currently switching clusters leads to authentication requests over and over again. This could be improved by allowing cross-cluster validity of tokens for the same role. So when authenticated once as role default, the token is valid for all clusters and no reauth is necessary switching clusters.
AC:

Auth only necessary once per role for all clusters and not per role per cluster
Be backward compatible so the current flow for devs doesn’t break
Do not do this for -admin roles

Coverage increased (+0.6%) to 37.553% when pulling 13b668a353f57f084df289a81bf1b27f12fdf3e0 on feat/cross-cluster-login into ed247db06979fe5f41ae99f315e03a6af8d6d0eb on main.

Please note that client-go-credential-plugins waits for the command to finish executing (see https://github.com/kubernetes/client-go/blob/3ac142e26bc61901240b68cc2c39561d2e6f672a/plugin/pkg/client/auth/exec/exec.go#L435) which means the user has to wait for all tokens to be cached/saved.
Another approach will be to fork a detached process that takes care of the other tokens. This will require another use-case that abstract getAllClustersAuthInformation into a new command.
I did some (manual) tests and found the current approach to be fast enough (to not really make a difference) therefore I would suggest sticking with this approach for now and if needed try the other one in the future.


vulcan ignoring new nodes

I'm having some trouble with random instances of vulcan deciding to ignore new servers. Most of the instances see the new server and start serving traffic to it but some instances display a message like the this:
Jun  3 20:07:12.280: WARN PID:1 [etcd.go:425] Ignore 'set /vulcand/backends/b1/servers/svr-123 1641052', error: 100: Key not found (/vulcand/backends/b1/servers/svr-123) [1641353]

That vulcan instance will now never serve traffic to that server (unless you restart vulcan). If I use etcdctl from that same machine the key returns the expected value though.
I haven't tested these ideas (not sure how yet) but could it be an issue with etcd2?
Maybe etcd2 proxy mode? (each vulcan instance connects to the etcd2 proxy on localhost).
If it was some sync issue with etcd2 you'd think the local proxy wouldn't know about the existence of the key before the key actually exists, right?

So presumably vctl top displays what vulcan knows and vctl server ls displays what's actually in etcd.
2015-06-05 21:20:35 Every 1 seconds. Top 20 entries

[Frontend]
Id      Route                                                    R/sec     50ile[ms]     95ile[ms]     99ile[ms]     Status codes %     Net. errors %
app     Host("example.com") && PathRegexp("/.*")     0.0       4.25          5.76          5.76                              0.00

[Servers]
Id                  URL                       Reqs/sec     50ile[ms]     95ile[ms]     99ile[ms]     Status codes %     Net. errors %     Messages
svc-2461679-4     http://<IP_ADDRESS>:80     0.1          3.94          114.17        114.17        302: 100.00         0.00
svc-2461679-1     http://<IP_ADDRESS>:80     0.0          4.96          48.64         48.64                             0.00

root@2cb6dccec140:/go/src/app# vctl server ls -b baldr

[Servers]
Id                  URL
svc-2461679-1     http://<IP_ADDRESS>:80
svc-2461679-2     http://<IP_ADDRESS>:80
svc-2461679-3     http://<IP_ADDRESS>:80
svc-2461679-4     http://<IP_ADDRESS>:80

I just found a much worse variation of this:
root@2cb6dccec140:/go/src/app# vctl top --refresh 0 -b svc

[Servers]
Id                  URL                         Reqs/sec     50ile[ms]     95ile[ms]     99ile[ms]     Status codes %     Net. errors %      Messages
svc-2c33285-1     http://<IP_ADDRESS>:3003     0.1          3014.66       3014.66       3014.66       502: 100.00         100.00     [(1) 50.00 quantile latency stands out (2) Error rate stands out]
svc-2c33285-3     http://<IP_ADDRESS>:3003     0.1          4.89          5.60          5.60          401: 100.00         0.00
svc-2c33285-4     http://<IP_ADDRESS>:3003     0.1          4.86          6.08          6.08          401: 100.00         0.00
svc-2c33285-2     http://<IP_ADDRESS>:3003     0.0          4.48          6.01          6.01                              0.00

root@2cb6dccec140:/go/src/app# vctl server ls -b svc

[Servers]
Id                  URL
svc-2c33285-1     http://<IP_ADDRESS>:3003
svc-2c33285-2     http://<IP_ADDRESS>:3003
svc-2c33285-3     http://<IP_ADDRESS>:3003
svc-2c33285-4     http://<IP_ADDRESS>:3003

@klizhentas this seems like a pretty major bug in the way vulcan handles state, any ideas?

@philk do you have any logs? you can turn info logging with tctl and send it to me, I will take a look
http://vulcanproxy.com/proxy.html#log-control

@klizhentas Here are some logs from a system that had the issue during a deploy. Our deploy process currently is through fleet by bringing up 4 new instances, waiting, then terminating the old instances. Registration is handled by the dumbest / easiest thing that I could think of which is:
ExecStart=/usr/bin/docker exec vulcan vctl server upsert --id %p-%i -b %p --url http://${DOCKER_IP}:80

Each of our instances has a vulcan container running. Out of 4 instances, 2 failed with logs like this:
Jun 10 20:54:13.293: INFO PID:1 [etcd.go:422] set /vulcand/backends/baldr/servers/baldr-8feea17-1 8209993
Jun 10 20:54:13.294: WARN PID:610 [etcd.go:425] Ignore 'set /vulcand/backends/baldr/servers/baldr-8feea17-1 8209993', error: 100: Key not found (/vulcand/backends/baldr/servers/baldr-8feea17-1) [8213857]
Jun 10 20:54:13.295: WARN PID:1 [etcd.go:425] Ignore 'set /vulcand/backends/baldr/servers/baldr-8feea17-1 8209993', error: 100: Key not found (/vulcand/backends/baldr/servers/baldr-8feea17-1) [8213857]
Jun 10 20:54:18.239: INFO PID:1 [etcd.go:422] set /vulcand/backends/baldr/servers/baldr-8feea17-3 8213857
Jun 10 20:54:18.240: INFO PID:1 [etcd.go:429] ServerUpserted(backendKey=baldr, server=HTTPServer(baldr-8feea17-3, http://<IP_ADDRESS>:80, <nil>))
Jun 10 20:54:18.240: INFO PID:1 [mux.go:497] mux(0, shutting down) UpsertServer baldr HTTPServer(baldr-8feea17-3, http://<IP_ADDRESS>:80, <nil>)
Jun 10 20:54:18.241: INFO PID:1 [frontend.go:74] mux(0, shutting down) add http://<IP_ADDRESS>:80
Jun 10 20:54:18.440: INFO PID:1 [etcd.go:422] set /vulcand/backends/baldr/servers/baldr-8feea17-4 8213933
Jun 10 20:54:18.442: INFO PID:1 [etcd.go:429] ServerUpserted(backendKey=baldr, server=HTTPServer(baldr-8feea17-4, http://<IP_ADDRESS>:80, <nil>))
Jun 10 20:54:18.442: INFO PID:1 [mux.go:497] mux(0, shutting down) UpsertServer baldr HTTPServer(baldr-8feea17-4, http://<IP_ADDRESS>:80, <nil>)
Jun 10 20:54:18.442: INFO PID:1 [frontend.go:74] mux(0, shutting down) add http://<IP_ADDRESS>:80
Jun 10 20:54:26.638: INFO PID:1 [etcd.go:422] set /vulcand/backends/baldr/servers/baldr-8feea17-2 8213934
Jun 10 20:54:26.640: INFO PID:1 [etcd.go:429] ServerUpserted(backendKey=baldr, server=HTTPServer(baldr-8feea17-2, http://<IP_ADDRESS>:80, <nil>))
Jun 10 20:54:26.641: INFO PID:1 [mux.go:497] mux(0, shutting down) UpsertServer baldr HTTPServer(baldr-8feea17-2, http://<IP_ADDRESS>:80, <nil>)

The instances that had those messages don't show the servers in vctl top but do show the instances in vctl server ls

I think they key to the problem may lay in:
Jun 10 20:54:13.294: WARN PID:610 [etcd.go:425] Ignore 'set /vulcand/backends/baldr/servers/baldr-8feea17-1 8209993', error: 100: Key not found (/vulcand/backends/baldr/servers/baldr-8feea17-1) [8213857]
Jun 10 20:54:13.295: WARN PID:1 [etcd.go:425] Ignore 'set /vulcand/backends/baldr/servers/baldr-8feea17-1 8209993', error: 100: Key not found (/vulcand/backends/baldr/servers/baldr-8feea17-1) [8213857]

I would go and check if that causes it to skip the insert procedure. (It complains that backend baldr is not defined, so it does not insert servers for it

We've just now seen the reverse behavior, nodes that have been deleted from etcd are still showing up in vctl top and having traffic sent to them, which of course fails. There has to be some weird race condition we're triggering but I'll be damned if I can find it.

I've just merged a fix for bug that featured solar behavior, check out last commits/pr messages
Sent from my iPhone

On Jun 29, 2015, at 5:36 PM, Phil Kates<EMAIL_ADDRESS>wrote:
We've just now seen the reverse behavior, nodes that have been deleted from etcd are still showing up in vctl top and having traffic sent to them, which of course fails. There has to be some weird race condition we're triggering but I'll be damned if I can find it.
—
Reply to this email directly or view it on GitHub.

We haven't been able to reproduce this on the latest master so I'll close this. Thanks for the fix.


[$1000] Web- Public Room - App crashes on removing the user from room

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:

Go to web chrome and login with User A which needs to be a phone number and create a new workspace and invite User B
Create a room from User A and include the workspace that you created earlier.
Select public room and create a room
Now click on the room header and click on share code. Copy the URL.
Go to the normal chat with User B and send the link
From user B, login in another web chrome which also needs to be a phone number and click on the link that was received so that the room gets accessible
Now from User A, send a message and from user B also send a message on that room. Next From user A account, remove the user from the workspace.
Result: See that on User B account, app crashed.

Expected Result:
App should not crash on removing the user from room
Actual Result:
App crashes on removing the user from room
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: <IP_ADDRESS>
Reproducible in staging?: n/a
Reproducible in production?: n/a
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: Any additional supporting documentation
https://github.com/Expensify/App/assets/93399543/93693887-46ab-4ff3-bfdc-40445777313d
Expensify/Expensify Issue URL:
Issue reported by: @avi-shek-jha
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1685521307987259
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~01930f1bcb8d849f34
Upwork Job ID:<PHONE_NUMBER>363350528
Last Price Increase: 2023-06-06

I was able to reproduce this exactly as described:
https://github.com/Expensify/App/assets/28715117/16242194-c326-465a-be0c-338012a51718

Going to apply the external label and also assign a new BZ member to manage the ongoing proposals as I'm taking part in the 'Guide Experiment' over the next couple of months, so will be focused on our outsourced sales team and not participating in this team.

Duplicate of https://github.com/Expensify/App/issues/19360

Seems like the app crash issue has been solved. But still there's a second error that has arisen. When removed the user from the workspace, the chat page still remains and a removed User B is able to reply through the chat composer. The chat page should have been disappeared in a normal scenario like how announce channel gets disappeared if a user has been removed.

I posted in the other issue so we can confirm if this was something that should've been fixed there but wasn't (or if it was caused by that PR)

@avi-shek-jha I'm going to close this issue since what was originally reported here with the reproduction steps is no longer happening.
If you can reproduce what you described in the comment above, can you please create a new issue to report this as a new bug?
Feel free to reopen if you disagree


Updating the signature database

Hi
How can the signature database be updated in the running docker pod ?

Hi @adrian-pistoleanu, the signatures are updated at startup and regularly while the pod is running. You can trigger a refresh via docker exec calling freshclam inside the container.

@robaca starting the container only checks for new signatures, but it won't update the signature unless I call 'freshclam' from the container itself
I tried this docker compose with DockerDesktop
version: '3.8'

services:
  clamav-rest:
    image: ajilaag/clamav-rest:20240928
    container_name: clamav-rest
    ports:
      - "9000:9000"
      - "9443:9443"
    environment:
      - SIGNATURE_CHECKS=50
      - MAX_RECURSION=18

this is the result
2024-10-07 10:25:10 Starting clamav rest bridge
2024-10-07 10:25:10 Connecting to clamd on tcp://localhost:3310
2024-10-07 10:25:10 clamD not running, waiting times [1]
2024-10-07 10:25:10 ClamAV update process started at Mon Oct  7 10:25:10 2024
2024-10-07 10:25:10 daily database available for update (local version: 27410, remote version: 27419)
2024-10-07 10:25:11 LibClamAV Warning: **************************************************
2024-10-07 10:25:11 LibClamAV Warning: ***  The virus database is older than 7 days!  ***
2024-10-07 10:25:11 LibClamAV Warning: ***   Please update it as soon as possible.    ***
2024-10-07 10:25:11 LibClamAV Warning: **************************************************
2024-10-07 10:25:14 clamD not running, waiting times [2]
2024-10-07 10:25:16 Testing database: '/clamav/data/tmp.f51168b0b6/clamav-db24431d72909f58b5b9c6cd6ca2162b.tmp-daily.cld' ...
2024-10-07 10:25:18 clamD not running, waiting times [3]
2024-10-07 10:25:22 clamD not running, waiting times [4]
2024-10-07 10:25:26 clamD not running, waiting times [5]
2024-10-07 10:25:30 clamD not running, waiting times [6]
2024-10-07 10:25:34 clamD not running, waiting times [7]
2024-10-07 10:25:35 Database test passed.
2024-10-07 10:25:35 daily.cld updated (version: 27419, sigs: 2067197, f-level: 90, builder: raynman)
2024-10-07 10:25:35 main.cvd database is up-to-date (version: 62, sigs: 6647427, f-level: 90, builder: sigmgr)
2024-10-07 10:25:35 bytecode.cvd database is up-to-date (version: 335, sigs: 86, f-level: 90, builder: raynman)
2024-10-07 10:25:35 WARNING: Clamd was NOT notified: Can't connect to clamd through /run/clamav/clamd.sock: No such file or directory
2024-10-07 10:25:38 clamD not running, waiting times [8]
2024-10-07 10:25:42 clamD not running, waiting times [9]
2024-10-07 10:25:46 clamD not running, waiting times [10]
2024-10-07 10:25:50 clamD not running, waiting times [11]
2024-10-07 10:25:54 clamD not running, waiting times [12]
2024-10-07 10:25:57 Mon Oct  7 10:25:57 2024 -> Limits: Global time limit set to 120000 milliseconds.
2024-10-07 10:25:57 Mon Oct  7 10:25:57 2024 -> Limits: Global size limit set to 104857600 bytes.
2024-10-07 10:25:57 Mon Oct  7 10:25:57 2024 -> Limits: File size limit set to 26214400 bytes.
2024-10-07 10:25:57 Mon Oct  7 10:25:57 2024 -> Limits: Recursion level limit set to 18.
2024-10-07 10:25:57 Mon Oct  7 10:25:57 2024 -> Limits: Files limit set to 10000.
2024-10-07 10:25:57 Mon Oct  7 10:25:57 2024 -> Limits: MaxEmbeddedPE limit set to 10485760 bytes.
2024-10-07 10:25:57 Mon Oct  7 10:25:57 2024 -> Limits: MaxHTMLNormalize limit set to 10485760 bytes.
2024-10-07 10:25:57 Mon Oct  7 10:25:57 2024 -> Limits: MaxHTMLNoTags limit set to 2097152 bytes.
2024-10-07 10:25:57 Mon Oct  7 10:25:57 2024 -> Limits: MaxScriptNormalize limit set to 5242880 bytes.
2024-10-07 10:25:57 Mon Oct  7 10:25:57 2024 -> Limits: MaxZipTypeRcg limit set to 1048576 bytes.
2024-10-07 10:25:57 Mon Oct  7 10:25:57 2024 -> Limits: MaxPartitions limit set to 50.
2024-10-07 10:25:57 Mon Oct  7 10:25:57 2024 -> Limits: MaxIconsPE limit set to 100.
2024-10-07 10:25:57 Mon Oct  7 10:25:57 2024 -> Limits: MaxRecHWP3 limit set to 16.
2024-10-07 10:25:57 Mon Oct  7 10:25:57 2024 -> Limits: PCREMatchLimit limit set to 100000.
2024-10-07 10:25:57 Mon Oct  7 10:25:57 2024 -> Limits: PCRERecMatchLimit limit set to 2000.
2024-10-07 10:25:57 Mon Oct  7 10:25:57 2024 -> Limits: PCREMaxFileSize limit set to 104857600.
2024-10-07 10:25:57 Mon Oct  7 10:25:57 2024 -> Archive support enabled.
2024-10-07 10:25:57 Mon Oct  7 10:25:57 2024 -> AlertExceedsMax heuristic detection disabled.
2024-10-07 10:25:57 Mon Oct  7 10:25:57 2024 -> Heuristic alerts enabled.
2024-10-07 10:25:57 Mon Oct  7 10:25:57 2024 -> Portable Executable support enabled.
2024-10-07 10:25:57 Mon Oct  7 10:25:57 2024 -> ELF support enabled.
2024-10-07 10:25:57 Mon Oct  7 10:25:57 2024 -> Mail files support enabled.
2024-10-07 10:25:57 Mon Oct  7 10:25:57 2024 -> OLE2 support enabled.
2024-10-07 10:25:57 Mon Oct  7 10:25:57 2024 -> PDF support enabled.
2024-10-07 10:25:57 Mon Oct  7 10:25:57 2024 -> SWF support enabled.
2024-10-07 10:25:57 Mon Oct  7 10:25:57 2024 -> HTML support enabled.
2024-10-07 10:25:57 Mon Oct  7 10:25:57 2024 -> XMLDOCS support enabled.
2024-10-07 10:25:57 Mon Oct  7 10:25:57 2024 -> HWP3 support enabled.
2024-10-07 10:25:57 Mon Oct  7 10:25:57 2024 -> Self checking every 600 seconds.
2024-10-07 10:25:57 Mon Oct  7 10:25:57 2024 -> Set stacksize to 1048576
2024-10-07 10:25:58 Clamd version: "ClamAV 1.2.2/27410/Thu Sep 26 11:30:46 2024"
2024-10-07 10:25:58 Connected to clamd on tcp://localhost:3310
2024-10-07 10:41:49 Mon Oct  7 10:41:49 2024 -> SelfCheck: Database status OK.

calling http://localhost:9000/version
returns the old version
{
    "Clamav": "1.2.2",
    "Signature": "27410",
    "Signature_date": "Thu Sep 26 11:30:46 2024"
}

calling clamscan --version  inside the container returns the same
/ $ clamscan --version
ClamAV 1.2.2/27410/Thu Sep 26 11:30:46 2024


bbscope freezing on Bugcrowd

When bbscope encouters a Bugcrowd program with 2FA requirement, it freezes.
I go installed the latest version today.

To reproduce:
Disable 2FA or use cookies for account without 2FA.
Command used:
bbscope bc -t "token" -b -o tu

Thanks for the issue, i'm checking this right now

Okay.

Hi there,
does the latest update fix this issue for you?
Thanks


"Invalid id: Administrative" error

Error received by user when creating a program enrollment record.

**lurch: add

Tracking W-010115

An external user also noticed this: https://powerofus.force.com/_ui/core/chatter/groups/GroupProfilePage?g=0F980000000D6uj&fId=0D58000002eq5tx

Fixed by pushing 1.8 (https://github.com/SalesforceFoundation/HEDAP/releases/tag/rel%2F1.8) to all orgs. The fix was already in the code base, but we needed to rev the version number.


Zoom while contained inside

Heya,
Trying a few things out - but looks like there is an error somewhere
<Panzoom @ref="_panzoom"<EMAIL_ADDRESS>OnWheel="@OnWheel" PanzoomOptions="@(new PanzoomOptions {Canvas = true, Contain = Contain.Inside})">     <img src="@selectedImageUrl" class="img-fluid" alt="Selected Job Image"<EMAIL_ADDRESS></Panzoom>
I wanted to zoom in - while containing the image inside the div.
Throws this error -
Exception thrown: 'Microsoft.JSInterop.JSException' in System.Private.CoreLib.dll
Kind of a bit logic, because when you zoom in - you go out of bounds - but is there a way to keep the image inside of a div?
I'm using a modal to pop up the images and i want to keep the image inside the modal

PanzoomOptions="@(new PanzoomOptions {Canvas = true, DisableXAxis = true, DisableYAxis = true})"
Dose the trick


Getting 'detail' and 'resolution' right...

Hey there - this isn't really a bug, but more a request for help. I've been trying to get my head around the 'detail' parameter, and understanding how best to tweak the various parameters on tippecanoe to get "smoothing of features" at lower zoom levels to work well, but I think I'm either not understanding it, or just not quite getting my numbers right.
I took the land polygons from open street:
http://data.openstreetmapdata.com/land-polygons-split-3857.zip
Then converted the shp to geojson:
ogr2ogr -f "GeoJSON" land-polygons.json land-polygons-split-3857/land_polygons.shp -t_srs EPSG:4326
And then ran tippecanoe over that:
tippecanoe -P -z12 -Bg -rg -pt -as -pg -o test.mbtiles -Llndpol:land-polygons.json
Outcome:
https://api.mapbox.com/styles/v1/liebrand/cj6ezunxd220y2smxwxd9x85j.html?title=true&access_token=pk.eyJ1IjoibGllYnJhbmQiLCJhIjoiY2lld2FpcXpkMTJpbjkxbTNzZGU1YXl6OCJ9.akW57lx-2jkyO6IohS6yfA#3.39/50.27/-3.35
As you can see, there are lots a tiles that appear missing, which I'm guessing is because of the -as ?
But also, as you zoom out, the detail is far too great, rather than getting smooth coastlines, it's showing too much detail.
I'm guessing the default detail of 12 is too high? or at least for the lower zoom levels?

The detail at low zooms used to be 8, but this aggravated some bugs in software that wrongly assumed that tiles always had a resolution of 4096x4096 instead of checking the extent, so I changed the default to be 12 in every case to work around that.
I'll download your file and take a look.

Awesome, thanks!

I think your main problem is that -pt is counterproductive: instead of merging tiny polygons into placeholders, you are keeping them all as individual features, which then means there are too many features, so -as has to drop some of them, and sometimes it chooses badly. The output of
tippecanoe -P -zg -pg -o test.mbtiles -Llndpol:land-polygons.json

looks basically correct to me.
There is a limitation to how much simplification Tippecanoe can possibly do to the low-zoom coastlines because your features on the coasts are all small, and it can only reduce the number of points within each feature, not combine them together for simplification.
Lowering the low zoom detail with -D just looks bad, because then you can see the results of the tiny-polygon merging as individual squares instead of having them be lost into something smaller than a pixel.

I used to not have -pt and indeed things looked better, but at zoom 0, 1 and 2 things did get blocky. So I assumed that was caused by merging tiny polygons in to squares. I'll take -pt out and see if that looks better.
But good to get confirmed that -D should not really be needed to be changed.

Great! Please reopen if there are further problems.

I'm not sure I can reopen an issue, but it still doesn't look quite right. The end result is a much smaller mbtileset, which is nice. But as you zoom out, the world becomes extremely blocky:
https://api.mapbox.com/styles/v1/liebrand/cj6ezunxd220y2smxwxd9x85j.html?fresh=true&title=true&access_token=pk.eyJ1IjoibGllYnJhbmQiLCJhIjoiY2lld2FpcXpkMTJpbjkxbTNzZGU1YXl6OCJ9.akW57lx-2jkyO6IohS6yfA#0.92/0/26
Also, if you zoom in a little, it seems that the land to the east of the meridian line is treated different from the west (or maybe this is tile caching issue):
https://api.mapbox.com/styles/v1/liebrand/cj6ezunxd220y2smxwxd9x85j.html?fresh=true&title=true&access_token=pk.eyJ1IjoibGllYnJhbmQiLCJhIjoiY2lld2FpcXpkMTJpbjkxbTNzZGU1YXl6OCJ9.akW57lx-2jkyO6IohS6yfA#2.14/23.72/11.66
Also attaching a screenshot

Here is another example, using a different land layer in my dataset:
https://api.mapbox.com/styles/v1/liebrand/cj6hqndrd4m2s2qrs9aha2ipo.html?fresh=true&title=true&access_token=pk.eyJ1IjoibGllYnJhbmQiLCJhIjoiY2lld2FpcXpkMTJpbjkxbTNzZGU1YXl6OCJ9.akW57lx-2jkyO6IohS6yfA#4.38/50.654/-0.032
And screenshots of the UK zoomed out and in:

Are you using the exact same data and command line you sent me? And are you getting any warning messages about lowering detail or anything? Because what I get from
tippecanoe -P -zg -pg -o test.mbtiles -Llndpol:land-polygons.json

looks like this:

https://api.mapbox.com/styles/v1/enf/cj6i4tw3m501c2spgm32j6a2r.html?title=true&access_token=pk.eyJ1IjoiZW5mIiwiYSI6IkNJek92bnMifQ.xn2_Uj9RkYTGRuCGg4DXZQ#2.52/31.35/-40.26
You must be doing something different (more attributes?) that is causing your detail to drop to 8 or maybe even 7, making the tiny polygon placeholders visible.
If you do have more attributes that are making each feature take up more space, your only options are to have fewer features or to show them at lower resolution. If you have some features that have the same attributes, use --coalesce to combine each of them into a single feature at least.
I think --drop-smallest-as-needed is going to be the best thing for this data, since the coastal polygons that it is going to drop are the ones you are going to want to drop anyway to keep the interiors contiguous. It looks pretty reasonable to me, using an artificially lowered maximum tile size of 200,000:
tippecanoe -f -P -z11 --drop-smallest-as-needed -M200000 -o test.mbtiles -Llndpol:land-polygons.json

It drops 98% of the features at z0, but it still basically looks OK because they are tiny slivers of the coasts.

Aaahhh.... I have other layers, and they might indeed have a ton of attributes I don't need; causing the tile size to increase for no good reason.
Let me work on that and see if that helps. And if not, I'll use the drop smallest as needed.
I'll let you know how I get on

Sweet! Removing spurious unwanted attributes did the trick! Thanks for all your help!


Different Point Clouds

librealsense
2.44.0 RELEASE

OS
Windows

Name
Intel RealSense D455

Serial Number
046122251470

Firmware Version
<IP_ADDRESS>

Advanced Mode
YES

Camera Locked
YES

Usb Type Descriptor
3.2

Product Line
D400

Asic Serial Number
035223060937

Firmware Update Id
035223060937

Why do I get different point clouds (3D points) when I use the python wrapper, compared to when I use the realsense viewer to save the point cloud. I am not applying any post-processing filters in both these cases.
Is there anything going on in the backend other than applying the filters?

Hi @talhakhan13  If you are referring to the visual colourization of a Python point cloud compared to a RealSense Viewer one, the Viewer also applies depth colorization presets by default.  You can replicate these settings in a Python application by defining functions such as color preset and color scheme using the information in the link below.
https://github.com/IntelRealSense/librealsense/issues/7767#issuecomment-726704671

I was just referring to the 3D positions of the the points and the density of the cloud.

I note that you refer to using the Viewer to save the point cloud.  Are you exporting the point cloud to a ply point cloud file and finding that there is a difference to a ply exported by a Python script?

That is exactly the issue.

Thanks very much for the confirmation.  Would it be possible to post your Python ply export script here please?

I have been using the example script provided to script the point cloud.

In the quoted example script, the Binary export option is set to False and the Normals option is set to True.
https://github.com/IntelRealSense/librealsense/blob/master/wrappers/python/examples/export_ply_example.py#L40-L41
In the Export option of the Viewer's 3D point cloud mode though, the Binary and Normals options are set to the exact opposites by default though (Binary = true, Normals = false).

Does the ply output from Python look more like the Viewer's ply output if you set Binary to true and Normals to false in the script?

Hi @talhakhan13  Do you require further assistance with this case, please?  Thanks!

The output from does indeed look similar, I was just splitting hairs. I do not need further assistance with this. Thanks for the help!

You're very welcome @talhakhan13 - thanks very much for the update!


[Lake] Create LakeTabletsChannel on demand

What type of PR is this：

[ ] bug
[ ] feature
[ ] enhancement
[ ] refactor
[x] others

[FE PR Coverage check]
:heart_eyes: pass : 1 / 1 (100.00%)
file detail

path
covered line
new line
coverage

:large_blue_circle:
com/starrocks/planner/OlapTableSink.java
1
1
100.00%


closes issue #239 make argument for flask to bind to <IP_ADDRESS>

Overview
added -a (--all-addresses) flag to demo
Related Issue / Discussion
#239 (issue in pywps)
Additional Information
Contribution Agreement
(as per https://github.com/geopython/pywps/blob/master/CONTRIBUTING.rst#contributions-and-licensing)

[ ] I'd like to contribute [feature X|bugfix Y|docs|something else] to PyWPS. I confirm that my contributions to PyWPS will be compatible with the PyWPS license guidelines at the time of contribution.
[x] I have already previously agreed to the PyWPS Contributions and Licensing Guidelines

This is mainly necessary for Docker. Otherwise the host cant get the pywps content from the container


.helmignore contains environment specific values files

.helmignore should contain the environment specific values files like in this TRG.

Accepted the QG4 check as the repo does not contain env specific values files but please do this addition to the helmigore as soon as possible.

Hi @almadigabor this was added as part of https://github.com/eclipse-tractusx/item-relationship-service/pull/156


Don't use page admin title when editing rich text

When editing a rich text field and entering a link to a page whose Page type overrides get_admin_display_title, the custom admin display title is used both when browsing to select the page to link to and also when viewing the rich text editor.
The first behavior is consistent with how custom admin display titles are used throughout the admin, but the second behavior is not. The Wagtail user should be able to use the rich text field as a reasonable preview of what the rendered content will look like for the end user. To do this, the "real" page title should be used, not the admin one.
This commit alters the data that gets passed to the rich text editor so that its title is the real page title and not the admin one.
I wasn't really sure how best to define a test for this, if such a thing is even easily possible. It looks to me like the current implementation was part of a much larger set of changes around custom admin display titles.
Fixes #5131.

I think the test could just consist of fetching a listing containing a SimplePage or SingleEventPage (both of which have custom get_admin_display_title methods) and confirming that data-title="plain live title" is present in the output. (For bonus points, change the page's draft_title beforehand to confirm that we're not picking up that change...)
Verifying that the title from data-title is actually being picked up by Draftail probably requires more front-end test infrastructure than we currently have, and can reasonably be skipped I think.

@gasman regarding your comment mentioning "fetching a listing": the bug in #5131 doesn't render to, and my proposed fix here doesn't alter, the listing title that shows up in the page chooser and in page listing views -- those still use the get_admin_display_title, which does default to the draft title. #5131 and this only address the text that gets inserted as the default link text in the rich text editor.
Writing a test for just that is trickier because when the edit page is rendered, the HTML contains the hidden Draftail ContentState data, which is a bit harder to verify. In essence it'd be testing that an HTML template properly renders the template variable we pass it.

Yep, understood. The test should check for the presence of the data-title="plain live title" attribute on the <a> element - we aren't interested in the displayed title in the listing at that point (although having said that, if we don't already have a test to confirm that we're using get_admin_display_title as the displayed title here, it wouldn't be a bad idea to add one).
I agree that it's more trouble than it's worth to write an end-to-end test to verify that the title from the data-title attribute is correctly finding its way into the rich text field.

Thanks @gasman. Test added in a5abecd.

Thanks @chosak - merged in 52b01cda67435b9214be6d47555d7bb436dc3472.


How to transform a field, such as add a prefix/suffix?

👋 Hi, I learned about your project via your tweet.
This looks interesting. I have a use case where I need to copy some parent-child relationships from one org to another and perform a transform step to append a suffix to some text fields.
I didn't readily see how in the docs to perform a transform other than uppercase, lowercase, or strip.
Are there other transform capabilities to further change values?
Thanks

Doug, I've actually just been discussing with another user ways to add extensibility to Amaxa's transforms, which are currently (and more or less arbitrarily) limited to the four functions in transforms.py. I linked the issue above.
I don't think this is a big lift and I know multiple folks are interested in it so I would like to prioritize. Do you have any thoughts on the design linked above?
In the interim before that feature becomes part of mainline Amaxa, the use case you articulated would be very easy to patch in on a local virtual environment, and I'd be happy to help set that up. Drop me a line<EMAIL_ADDRESS>

@douglascayers I just merged in code that I think will hit this mark. It adds prefix and suffix transforms, as well as allowing for further extensibility in separate modules. Let me know if you think that'll help.

Wow, thanks for the quick update, @davidmreed! I was just reading the docs to set up my first export and came across the update that mentions the prefix/suffix transforms. At first I felt sheepish thinking "how did I miss this?!" then came back to check recent commits and lo and behold you were THAT fast. Thanks :)

@davidmreed What's the best way for me to get the latest updates? I currently installed https://github.com/davidmreed/amaxa/releases/tag/0.9.5 for macOS, as that's the latest release. Or should I use pip install amaxa? Thanks

@douglascayers  I haven't done an 0.9.6 release yet, so I'd recommend running off master in a virtual environment. Clone the repo, cd into it, then do
python3 -m venv venv
. venv/bin/activate
pip install poetry
poetry install

and that should get you running (so long as you have the venv activated, of course).
I'll get 0.9.6 out shortly. Let me know if you hit any snags!


Access array elements?

I have an array of gameobjects, with the generator, can I access objects by their name?
Like I have GameObject[] gameobjects; in some code
Lets say there is a gameobject called "lion" in this array.
And I access this object with gameobjects.lion ?

Lists and arrays can be accessed with IEnumerable. They can be enumerated with foreach and LINQ.
First() and FirstOrDefault() can be used to query GameObjects by name.
using System.Linq;
using UnityEngine;
using UniTyped;
using UniTyped.Editor;

[UniTyped]
public class SomeObject : MonoBehaviour
{
    public GameObject[] gameObjects;

#if UNITY_EDITOR
    private void M()
    {
        var view = new UniTyped.Generated.SomeObjectView();

        SerializedPropertyViewObjectReference<GameObject> lionElement =
            view.gameObjects.FirstOrDefault(element => element.Value.name == "lion");
        GameObject lion = lionElement.Value;
    }
#endif
}

I meant can I access it without using strings? Like accessing a property without findproperty, directly with a typed value. Maybe with some additional code to make it possible. Like gameobjects.lion or gameobjects.bird

Source generators basically run with script compilation so they shouldn't depend on dynamic change of data.
It is difficult to determine statically the names of GameObjects present in the array, and different instances of the target type could have differently named GameObjects.
Syntaxes such as gameObjects.lion can be executed with C#'s dynamic feature, but it provides no typed access and is essentially no different than using LINQ. (rather there is the cost of dynamic code generation)

Array won't change during runtime, I wanna generate this during compile time

Roslyn source generators must be able to run without an instance of the Unity editor because IDEs also run these generators separately. Since they must read Unity serialized data without any Unity editor APIs, the only way to do that is to parse serialized YAMLs through the file system.
The source generator will have to read all the serialized files related to the project to find serialized data. They can be stored in scene files, scriptable objects, and even in AssetBundles. Multiple assets may have different content of same serializable types and we must somehow determine which data to use to generate the code.
I think there are many problems to provide consistent ways to do that.
It is more appropriate to run self-implemented source generators on Unity with APIs such as AssetModificationProcessor. UniTyped is not appropriate because it is based on the roslyn source generator API.

Thank you very much. Finally, do you know any article or post that I can learn about it

This seems good example of code generation with AssetModificationProcessor.
Auto compile-time support for Unity Animation Parameters by Paul Marsh
https://pauliom.medium.com/auto-compile-time-support-for-unity-animation-parameters-e5edd0a6016e


add reset_password

Linked Issue(s)

closes #53

Description

[x] Feature

Adds password reset functionality, partially inheriting from confirmations.
Checklist

[x] I have read the Contributing Guide and Code of Conduct

OF NOTE: This comment: https://github.com/rails/rails/issues/20133#issuecomment-609942976
Apparently we should not be doing token lookup at all. Instead:
User.find(id: id)
ActiveSupport::SecurityUtils.secure_compare(user.token, token)

Well worth the rethink.


Upgrade d3 to v5

This project is really useful when I just want to make some small projects but don't want to mess up with all the automation tools like browserify, gulp, grunt ..etc.
Plus, I do need something to keep my code tidy and clean when project scaled up.
So I use this repo as a boilerplate and it was fantastic, no more HTML/CSS/js from scratch and I could keep my js code in separated modules instead of including them manually in HTML.
And Maybe it is the time now to upgrade the default d3 version to V5 for this boilerplate? V5 didn't change a lot from V4 but mainly implemented promise and we can even use await/async syntax.
With the help of Babel, we could also use the code in older browsers, no need to worry about supporting them.
I also set devtool to inline-source-map by default that one can easily debug their code out of the box.

Hey @wild-flame Thank you so much for the feedback and contribution. I am happy to know that this repo has helped you somehow :) I added comments in your PR, please review them and then we can merge :)

Hey @wild-flame, any follow-up on this?

HI, I split the file into webpack.prod.config.js for production(yarn build) and webpack.config.js for development(yarn start)

@wild-flame can you address those two things I commented so we can merge this?
thank you again for the PR


Syntax Error when trying to use Module Federation

Not really sure whether or not this is a bug, so not sure what type to use here.
I'm trying to enable module federation in my rather large enterprise app, however no matter what I do I get the following syntax error:

I can try to create a more minimal repro, but I think the most interesting parts of my webpack config are here:
entry: './www/js/app/index.js',

mode: 'development',

output: {
  path: buildRoot,
  publicPath: options.publicPath,
  filename: `${options.filenamePattern}.js`,
  chunkFilename: `${options.filenamePattern}.js`,
},

devServer: {
  contentBase: path.join(__dirname, 'dist'),
  port: 8080,
},

...
plugins: [

  new ModuleFederationPlugin({
    name: 'shell',
    library: {type: 'var', name: 'shell'},
    filename: 'remoteEntry.js',
    exposes: {
      './Alert': './www/js/app/components/alert',
    },
    remotes: {
      app2: 'app2@http://localhost:3003/remoteEntry.js',
    },
    shared: {
      react: {
        singleton: true,
        requiredVersion: deps.react,
      },
      'react-dom': {
        singleton: true,
        requiredVersion: deps['react-dom'],
      },

Any ideas on what this might be?
The issue only appears once I attempt to use one of the exported components from the remote, like this:
const RemoteButton = React.lazy(() => import("app2/Button"));

const Button = () => (
    <Suspense fallback="Loading Button">
        <RemoteButton text={"Remote button"} />
    </Suspense>
);

The issue was that we were using "wepack serve" instead of "webpack-cli serve". Strange that it worked at all perhaps...
Closing this.


Updated i18n example

Following the changes in https://github.com/Synphonyte/leptos-struct-table-macro/pull/8

Awesome! Thanks 👍🏼


recover Stamina by drinking water

          Is it possible to suggest something?

As an example, you can recover your Stamina by drinking water with the minecraft:potion.
Originally posted by @SrMast3r in https://github.com/Gauraaaaaaaa/Energizer/issues/14#issuecomment-2309136993

Hi!
I moved your suggestion to a new post so we can talk properly.
The Vigor potion already restores your Stamina and lets you run for a limited time without depleting your Stamina.
So, I'm wondering if just drinking water will be a little bit too powerful...
Let me know your thoughts! I'm open to any suggestions!


Model with relative path to the mesh not loading when included in another sdf file

Environment

OS Version:  Ubuntu 20.04
Source or binary build?
Source, Ignition Edifice, ign-common commit: ee5ba8e

Description

Expected behavior:
When using include tag to add model from another sdf file, model's mesh loads normally
Actual behavior:
When using include tag to add model from another sdf file, this model is not loading if 1) it has mesh and 2) mesh uri is relative to the file location

Steps to reproduce

Create an sdf file with include tag for other sdf

<?xml version="1.0" ?>
<sdf version="1.6">
   <world name="testworld">

      <include>
         <uri>RETAINER.sdf</uri>
         <pose>0 0 0 0 0 0</pose>
      </include>

   </world>
</sdf>

Create an sdf file with included model that use relative path to the mesh

<sdf version="1.6">
      <model name="RETAINER">
         <link name="B001">
            <visual name="visual">
               <geometry>
                  <mesh>
                     <uri>meshes/RETAINER_B001.dae</uri>
                  </mesh>
               </geometry>
            </visual>
         </link>
      </model>
</sdf>

Start ignition gazebo with main sdf file
ign gazebo -v 4 main.sdf

Output
Model not loading with errors:
[GUI] [Err] [SystemPaths.cc:467] Could not resolve file [RETAINER.sdf/meshes/RETAINER_B001.dae]
[GUI] [Err] [MeshManager.cc:172] Unable to find file[RETAINER.sdf/meshes/RETAINER_B001.dae]
[GUI] [Err] [MeshDescriptor.cc:56] Mesh manager can't find mesh named [RETAINER.sdf/meshes/RETAINER_B001.dae]
[GUI] [Err] [Ogre2MeshFactory.cc:524] Cannot load null mesh [RETAINER.sdf/meshes/RETAINER_B001.dae]
[GUI] [Err] [Ogre2MeshFactory.cc:103] Failed to get Ogre item for [RETAINER.sdf/meshes/RETAINER_B001.dae]
[GUI] [Err] [SceneManager.cc:373] Failed to load geometry for visual: visual

From the log it seems that included model uri is added to the path which fails path resolving for the mesh.
The same model in the main sdf file is working fine.
Here is files to reproduce an error:
example.zip

i am also having same problem


Update RocksDB from v5.14.2 to v5.17.2

Ultimately we want to set the TTL for level compaction. This option was
immutable in v5.14.2 and made mutable in v5.15.x. Since we can only set
this option dynamically with the C bindings (after opening the DB), we
must upgrade our version of RocksDB.
Connects #112

This change is

I forgot that I had not gotten LiveRamp/gorocksdb#5 merged and the dep here updated yet. I will add another commit to this PR once that happens and then re-add the reviewers for this PR.

The commits can be reviewed as one. I plan to merge squash this PR.


Unable to pass three np arrays

Can't get the following code running
import numpy as np

def my_function(x):
    return np.sum(x[0].T.dot(x[2] * x[0].dot(x[1])))

pw = pywren.ibm_cf_executor()
#pw.map(my_function, np.linspace(0.1, 100, 1000))
u = np.random.rand(1000,10000)
s = np.random.rand(10000,1000)
w = np.random.rand(1000,1000)

x=[u,s,w]
pw.call_async(my_function, x)
print(pw.get_result())

error is
PyWren v1.5.0 init for IBM Cloud Functions - Namespace<EMAIL_ADDRESS>- Region: eu_de
ExecutorID 6a28d5/12 | JobID A000 - Selected Runtime: ibmfunctions/action-python-v3.6 - 256MB

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-34-35f5f2b0ebbc> in <module>
     12
     13 x=[u,s,w]
---> 14 pw.call_async(my_function, x)
     15 print(pw.get_result())

/opt/conda/envs/Python36/lib/python3.6/site-packages/pywren_ibm_cloud/executor.py in call_async(self, func, data, extra_env, runtime_memory, timeout, include_modules, exclude_modules)
    140                              include_modules=include_modules,
    141                              exclude_modules=exclude_modules,
--> 142                              execution_timeout=timeout)
    143
    144         futures = self.invoker.run(job)

/opt/conda/envs/Python36/lib/python3.6/site-packages/pywren_ibm_cloud/job/job.py in create_map_job(config, internal_storage, executor_id, job_id, map_function, iterdata, runtime_meta, runtime_memory, extra_params, extra_env, obj_chunk_size, obj_chunk_number, invoke_pool_threads, include_modules, exclude_modules, execution_timeout)
     22     """
     23     map_func = map_function
---> 24     map_iterdata = utils.verify_args(map_function, iterdata, extra_params)
     25     new_invoke_pool_threads = invoke_pool_threads
     26     new_runtime_memory = runtime_memory

/opt/conda/envs/Python36/lib/python3.6/site-packages/pywren_ibm_cloud/utils.py in verify_args(func, iterdata, extra_params)
    362                                                                list(new_func_sig.parameters.keys())))
    363         elif type(elem) in (list, tuple):
--> 364             new_elem = dict(new_func_sig.bind(*list(elem)).arguments)
    365             new_data.append(new_elem)
    366         else:

/opt/conda/envs/Python36/lib/python3.6/inspect.py in bind(*args, **kwargs)
   2995         if the passed arguments can not be bound.
   2996         """
-> 2997         return args[0]._bind(args[1:], kwargs)
   2998
   2999     def bind_partial(*args, **kwargs):

/opt/conda/envs/Python36/lib/python3.6/inspect.py in _bind(self, args, kwargs, partial)
   2916                     param = next(parameters)
   2917                 except StopIteration:
-> 2918                     raise TypeError('too many positional arguments') from None
   2919                 else:
   2920                     if param.kind in (_VAR_KEYWORD, _KEYWORD_ONLY):

TypeError: too many positional arguments

@JosepSampe do you see what might be wrong?

@romeokienzler here we document parameters we pass to functions that we support for now..https://github.com/pywren/pywren-ibm-cloud/blob/master/docs/functions.md
but in your case, you need a single row from each of u, s, w to be passed to functions
and each row is about [0.08021613 0.00331199 0.10637344 ... 0.80978044 0.57661652 0.79281115]..
@JosepSampe any ideas?

@romeokienzler You need to enclose x within []: pw.call_async(my_function, [x])
Complete details on how to send parameters to functions are here: https://github.com/pywren/pywren-ibm-cloud/blob/master/docs/functions.md
Take into account you can only send 4MB of data through parameters, so in this example you should consider another way to do what you pretend.

Thanks a lot for your hints, this is the final working solution:
import pywren_ibm_cloud as pywren
import numpy as np

def my_function(x):
    return np.sum(x[0].T.dot(x[2] * x[0].dot(x[1])))

pw = pywren.ibm_cf_executor()
u = np.random.rand(100,1000)
s = np.random.rand(1000,100)
w = np.random.rand(100,100)

x=[u,s,w]
pw.call_async(my_function, [x])
print(pw.get_result())

This is already 1.4 MB, original was > 4 MB, so next step is pulling data from COS

@JosepSampe if we use COS to store those arrays, how it would work then? I am a bit unsure the right way of usage in this case and what data we want to store in COS: u, s, w as separate files?

The correct way to do this is to generate all the 3 matrices within a function in the cloud, and then run the np.sum(). For example you can use map_reduce():
import pywren_ibm_cloud as pywren
import numpy as np

def generate_matrix(rows, cols):
    return np.random.rand(rows, cols)

def my_function(results):
    x = results
    return np.sum(x[0].T.dot(x[2] * x[0].dot(x[1])))

pw = pywren.ibm_cf_executor(runtime_memory=512)
iterdata = [[1000, 10000], [10000, 1000], [1000, 1000]]
pw.map_reduce(generate_matrix, iterdata, my_function)
print(pw.get_result())

@romeokienzler ^^


refactor: simplify MultiDownshift code

PR checklist

[x] I have followed the "Committing and publishing" guidelines;
[x] I have added unit tests to cover my changes;
[x] I updated the documentation and examples accordingly;

Changes description
Simplifies the code removing constructor, un-needed explicit returns, making some types slightly clearer, and converting normal function methods into auto-bound arrow functions to make sure this is always the expected one
Affected packages

@quid/react-dropdown

It may make sense to release the multi downshift component as a standalone package, it may be useful to others 🤔

THis is an excellent idea.

It may make sense to release the multi downshift component as a standalone package, it may be useful to others 🤔

Downshift should work in a way it accepts multiple selections... Yeah btw, I totally agree.


Cannot read properties of undefined (reading 'el')

Hi, i have a very simple example with a new Vue app, easily reproduceable.
\
getting error Cannot read properties of undefined (reading 'el')
just run the app with npm dev and you will see the error in the browser.
Please see src/App.vue
CODE:
https://github.com/cory-baker/global-messaging

@cory-baker
In the file App.vue, you are using applyPureReactInVue in the wrong way. The correct way is as follows:
<template>
  <div class="chat-channel">
    <ChatChannelVue />
  </div>
</template>
<script setup>
import { applyPureReactInVue } from 'veaury'
import MyComponent from '../react_app/myComponent.jsx'
import { shallowRef, onMounted } from 'vue'

// let ChatChannelVue = shallowRef('')
const ChatChannelVue = applyPureReactInVue(MyComponent)

// onMounted(async () => {
//   ChatChannelVue.value = applyPureReactInVue(MyComponent)
// })
</script>

And it works fine!

thank you!!


Testing update of dependencies before merging

Codecov Report

Merging #115 into master will decrease coverage by 0.019%.
The diff coverage is n/a.

@@              Coverage Diff               @@
##              master      #115      +/-   ##
==============================================
- Coverage     19.971%   19.951%   -0.02%
- Complexity       180       199      +19
==============================================
  Files             17        18       +1
  Lines            706       832     +126
==============================================
+ Hits             141       166      +25
- Misses           565       666     +101

Impacted Files
Coverage Δ
Complexity Δ

site/models/QuestionForm.php
29.411% <0%> (-70.589%)
12% <0%> (+8%)

site/models/CheckinForm.php
62.295% <0%> (-37.705%)
14% <0%> (+4%)

common/models/UserOption.php
16.981% <0%> (-0.469%)
31% <0%> (ø)

common/models/Question.php
0% <0%> (ø)
7% <0%> (?)

common/models/User.php
21.951% <0%> (+0.707%)
53% <0%> (ø)
:x:

Continue to review full report at Codecov.

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


tests: kernel: critical: add output to support diagnostics

As implemented this test runs for 20 s with no output, which makes it difficult to identify the cause of failure.  Add output indicating progress, and emit diagnostics a particular failure observed on iMX and SAM E70 boards.
This relates to #20585 and #20603.

Tagged for 2.1 because (a) it's a test and (b) it helps us figure out whether things like #20585 have been fixed by a PR.


filter_ parsing error

When running version 1.6 the following filter definition works;
stream = ffmpeg.filter_(stream, 'crop', 'iw*.63:ih*.63:iw-(iw*.64):ih-(ih*.833)')
But if I run latest  f8409d4 I get a parsing error returned by ffmpeg;
[Parsed_crop_1 @ 0x4c86340] [Eval @ 0x7ffee8b86310] Invalid chars ':ih*.63:iw-(iw*.64):ih-(ih*.833)' at the end of expression 'iw*.63:ih*.63:iw-(iw*.64):ih-(ih*.833)'
Error when evaluating the expression 'iw*.63:ih*.63:iw-(iw*.64):ih-(ih*.833)'
You can see that FFMpeg is rejecting part of the string, I guess the escaping is broken?

Instead of joining arguments with :, pass each argument as its own string:
ffmpeg.filter_(stream, 'crop', 'iw*.63', 'ih*.63', 'iw-(iw*.64)', 'ih-(ih*.833)')
I'll try to think of a way to make this more obvious, (or maybe have a warning when : is included in a filter arg).


feat(settings.production.base): set GS_DEFAULT_ACL to publicRead

Types of changes
Thanks for sending a pull request! Please fill in the following content to let us know better about this change.
Please put an x in the box that applies

[x] New feature

Description
Describe what the change is
You don't need to explain HOW you change the code. Your code, including comments in the code should explicitly
self-describe enough about how you change the code.
Setting GS_DEFAULT_ACL to publicRead so that the return image URL would exclude the expiration period.
Expected behavior
The retrieved image url would not contain the expiration period.
Related Issue
closes #1107
More Information
Screenshots

有先測過這個真的有用嗎XD？

有喔我剛剛附錯圖了，如附圖

有先測過這個真的有用嗎XD？


CronJob on aws ec2

Is there any particularity when running a Cron Job in an AWS instance?
I ask because my Cron Job works locally, but it doesn't seem to run on my aws instance.
I identified that it is not running through logs, because there is no error either.
Note: It's a more lay question, because I don't know where to start looking for the problem. I googled a few things, but nothing I could identify as a solution or explanation.
A bit of code to show you how I'm doing it.
require("dotenv").config();

const {CronJob, ToadScheduler, SimpleIntervalJob, Task} = require('toad-scheduler');

module.exports={
    createNormalJob(name, callback, conf) {
        const task = new Task(name, callback);
        const job = new SimpleIntervalJob(conf, task);
        return job;
    },

    createCronJob(name, callback, conf) {
        const task = new Task(name, callback);
        const job = new CronJob(conf, task, {preventOverrun: true});
        return job;
    },

    createJobs() {
        const scheduler = new ToadScheduler()
        scheduler.addCronJob(this.createCronJob('sometext', someCallbackFunction, {cronExpression: '0 15 0,12 * * ?'}));
    }
}

Note: Simple Interval Jobs works fine in aws and locally, the problem is about Cron Jobs.

@itsManeka What's AWS in this context, EC2?
@Hexagon Any thoughts on what may cause croner to misbehave in cloud?

@itsManeka Can you tried using Croner barebones, something like
import { Cron } from "croner";

new Cron("*/5 * * * * *", () => {
	console.log('This will run every fifth second');
});

?

@itsManeka What's AWS in this context, EC2, lambdas, something else?
@Hexagon Any thoughts on what may cause croner to misbehave in cloud?

I wrote a program in node.js, create an ec2 instance in aws and I'm running this program inside that instance.
Just an app running on a server.

@itsManeka As a first test, can you try using Croner barebones, something like
import { Cron } from "croner";

new Cron("*/5 * * * * *", () => {
	console.log('This will run every fifth second');
});

?
Croner use setTimeout internally, so if simple interval jobs work, cron-jobs should work 😅
Btw, ? has a special meaning in croner/toad scheduler, it is replaced by current value. Just use * for wildcards, even in dayofmonth and dayofweek
And another question, is it one of these aws lambda thingies? https://ed4becky.org/clearing-up-settimeout-misconceptions-in-aws-lambdas/

@Hexagon thanks for the tips. I'll try to use the log tip in the app later and as soon as I find something I'll come back here to let you know what happened.
Over the ?, I used this site to help me generate the expression. I had the following results:
Using ?:

Using *:

My idea is to run the task every day at 12:15 and 00:15.
I don't know if this could be a bad implementation, but what I can say is that locally it's working. The problem is only occurring on the server.
About aws, it's nothing related to lambda, I'm just using an ec2 instance as a server for my app.

@Hexagon thanks for the tips. I'll try to use the log tip in the app later and as soon as I find something I'll come back here to let you know what happened.

Great!

Over the ?, I used this site to help me generate the expression. I had the following results:

Yeah, ? is a non-standard character that can mean different things in different implementation. See non-standard characters section of https://en.wikipedia.org/wiki/Cron
Croner uses the latter implementation.

My idea is to run the task every day at 12:15 and 00:15.

Yeah, "0 15 0,12 * * *" would do that... But oh, time zone problems maybe, do your aws server run a different time zone from local?

I don't know if this could be a bad implementation, but what I can say is that locally it's working. The problem is only occurring on the server.
About aws, it's nothing related to lambda, I'm just using an ec2 instance as a server for my app.

Ok, i think running croner standalone should clear things up.

Just bringing news:
The problem was solved, I updated the packages on the server and applied the correction in the cron expression as per your tips.
After that it started running ok.
I apologize for the inconvenience. This conversation, however, was very useful due to the tips on the cron expression.
About the time zone, I use a server in a region that uses the same time zone as mine, so I believe it won't be a problem.

Good to hear! 🎉


KitchenTabBar: Mark init() public

Mark init() public to allow presenting the tabor modaly.

Is the Default presentation type .Modal?

Thanks!!
Can you please explain why it should be presented modally by default ?

I'm still digging through the framework and learning more about it, but .Default seems to be a replace instead of a push. My goal with being able to present a TabBar from a button is to allow me to go back to that screen that presented the TabBar. Unless my understanding of .Default is wrong and it just adds a layer to the View Stack, .Modal wouldn't be required.

Merging this to address #68 anyway. 🚢
I will take a look about default presentation behavior. Looks like it is more general behavior issue than TabBar specific behavior.


Calculate arc length of the given angle

Example Problem: Given the radius of the circle, 4 and angle, 45. Calculate the arc length of the given angle.
Example Solution: Arc length = (angle/360) * 2πr
arc length = (45/360) * 2π4 = 3.14285
Further explanation: The arc length of an angle is the distance along the curve which makes the given angle.
Would you like to be assigned to this: Yes

Yes,I can do this.


GLTF import error

Hello, I'm trying to import model of the pilatus pc-6 but when I try to import any gltf file of this aircraft I have this error :
  File "Path\io_msfs_gltf.py", line 754, in execute
    import_msfs_gltf(context, ImportProperties.gltf_file, self.report,
  File "Path\io_msfs_gltf.py", line 619, in import_msfs_gltf
    materials = create_materials(gltf, bl_images, report,
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "Path\io_msfs_gltf.py", line 396, in create_materials
    setup_mat_nodes(bl_mat, gltf_mat, textures, images,
  File "Path\io_msfs_gltf.py", line 336, in setup_mat_nodes
    p_bsdf_node = tree.nodes['Principled BSDF']
                  ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^
KeyError: 'bpy_prop_collection[key]: key "Principled BSDF" not found'

The weird thing is that it's working with some aircraft like C208 and don't with some other.

If your blender is not in English, try to switch it to English. I have the same problem and this solved it.


[WFLY-16049] Update the OIDC tests so that they can run with Keycloak 17.0.0 and later

https://issues.redhat.com/browse/WFLY-16049

I've resolved the conflicts on this one.

Thanks, @fjuma


New hasPrimaryKey and hasForeignKey implementations for SQLite

Corrected implementations of SQLiteAdapter::hasPrimaryKey() and SQLiteAdapter::hasForeignKey(). They were changed in the following ways:

Avoids haphazard SQL scraping
Reports correctly on composite primary keys
Reports correctly on composite foreign keys
Reports correctly on subsets of composite keys
Fully case-insensitive
Fails noisily when a named constraint is queried

Fixes #1538 and  fixes #1539.

Thanks agains for such a great job!


Release maintenance<EMAIL_ADDRESS>and<EMAIL_ADDRESS>

Because of https://github.com/observablehq/plot/issues/430 we should probably release a maintenance version of d3-geo@2 based on https://github.com/d3/d3-geo/commit/54f8890a44826828bd29a81d0bc6dfba9e6786b4, and by way of consequence a maintenance version of d3@6.

We don’t need to publish a patch of d3, just of d3-geo, which I’ve done.


release: update v2.7.3 release notes

add bugifixes to v2.7.3 release
awating CVE notes from security

Fixes #49310

@stephanosio - any idea what is up with CI?


Discussion: integration with Rails 5.2 CSP feature

There have been several tentatives to merge this gem into Rails. CSP support has been merged and will be released in Rails 5.2: https://github.com/rails/rails/pull/31162
I gave a quick look at it and it does not replace this gem, but it seems a good idea to get the two work together, and maybe use the Raisl API. Any thoughts?

I haven't delved too deeply into what is on offer with the current Rails
DSL in 5.x other than the basic directives however that will be no good
for my monorail or GitHub considering both are running Rails < 5 (and I
can't imagine we are the only ones on older versions at this stage).
We're working on the 5.x migration however we have quite a bit of
custom code that needs to be ported. I'm also not really inclined to
backport this CSP patch to 3.x/4.x for the purpose of moving it into
this gem considering this is working as is.
However on the flip side to this, I remember @oreoshake not being
entirely happy with some of the inner workings of the CSP functionality
which this might be a prime time to look at deprecating in favour of the
Rails API. Forking the execution path into something like this:
if Rails.config.csp?
  # load up the secure_headers file for setting the inbuilt Rails API
  # and adjusting accordingly with a plan to deprecate this block
  # eventually...
else
  # require all the existing CSP files
end

One concern I have is that Rails hasn't really ever showed interest in
being on the front foot with things like CSP and that leaves those who
want to help by being early adopters of changes forced to carry around
monkey patches or custom forks when upstream proposals are made. Who
knows, perhaps this will get better once it's in Rails core :man_shrugging:
In it's current state, there is a fair bit of functionality lacking
(different UA behaviours, ability to have an enforced + report only
policy) which leads me to wanting to wait until the API matures a bit
more before throwing effort at supporting it. Depending on how quickly
we can get to Rails 5, this might be something I can fix.

My main reason for opening the discussion is that I remember https://github.com/rails/rails/issues/27583
This gem has definitely more features and will always be needed to people on Rails 5.2, but I feel it is worth it to discuss further/better integration with the future Rails versions.

secure_headers technically has little to do with rails at all, it's for rack applications.
I think the effort in rails/rails is great and something I want to encourage people to use. Yes, it lacks some features but in the long run it will be the better tool. The features it does lack are mostly insignificant (caching policies, dedup logic, browser console warning mitigation*). As for per-request customization, secure_headers has different but not necessarily better support.
secure_headers was always (mostly) driven by what my current employer's apps demand and therefor will never be better than what rails/rails does in the end. I'm surprised as many of y'all came along for this ride.
In an ideal world, this gem is obsoleted by rails and it goes on as a rack library. But as @jacobbednarz mentions, things will certainly be supported for some time (or at least until we upgrade to 5.2 :trollface:).
* browser console warnings and significant differences (frame vs child src values) between browsers are almost non-existent at this point

IOW I don't see the two intermixing, I see them diverging. I love being wrong so I'm not saying I wouldn't consider it!

Now that nonces are a part of vanilla rails, I think that's one more argument towards archiving this project. Until GitHub fully replaces secure_headers with the built-in features, I will keep this open. Once GitHub moves to the built-in support, I plan on archiving this project. As a policy I don't support libraries I don't use.


Don't enable 'Strict-Transport-Security' header when HTTPS_METHOD=noredirect

When HTTPS_METHOD=noredirect is enabled, objective is to serve both 'http' and 'https' without  any conflict/redirect.
So in this case, if we enable 'Strict-Transport-Security' header, browser won't load http, after visiting https page. So  'Strict-Transport-Security' header should be disabled when HTTPS_METHOD=noredirect is used.
add_header Strict-Transport-Security "max-age=31536000";
related to PR #298 @kamermans

Good point, I agree.  My main purpose was for machine-to-machine traffic, so it did not occur to me that HSTS should be disabled.  @jwilder what do you think?  @palamccc makes a good point that there's really no point in explicitly saying you don't want to auto-redirect to HTTPS just to have HSTS force your browser to auto-redirect to HTTPS :)

@jwilder - this PR can be closed - I implemented the fix last year and now users can also use HSTS=off.


Clarify docs for Next.js Edge runtime users

This might save others some time. Basically:

Using ws in Vercel Edge functions or Cloudflare Workers will fail.
These runtimes provide a native WebSocket implementation which should be used.
Dotenv isn't needed in some frameworks.

Hey there @rnbrady and thank you for the PR!
We generally try and separate as many concerns as possible in our docs. What I mean by that is that this is a DB page, not a runtime or framework page.
I think your information is still valuable. The fact that ws doesn't work on Vercel Edge Functions is important! But I think that information should be in other pages.
We have a Vercel Edge page and a Next.JS considerations page it might be worth linking to and/or updating instead of this page.
Does that make sense?

Oh dang, how did I miss that Vercel page. Thanks for the link.
Vercel aside, this page talks about edge environments and then gives a code example with a Nodejs dependency.
Best solution is probably to remove ws and dotenv from the code example.


x/build/cmd/golangbuild: possibility of false-negatives in detecting successful command execution

I spotted it's sometimes possible for a build to have steps with errors in the log, yet the exit code unexpectedly ended up being 0.
For example, in https://ci.chromium.org/b/8773129168948219089, unchecking "Hide Succeeded Steps" shows the "test golang.org/x/pkgsite module for android/amd64" build step as successful, yet clicking into its output log shows many cgo-related errors like:
 # golang.org/x/pkgsite/devtools/cmd/csphash.test
 loadinternal: cannot find runtime/cgo

It ends with "exiting with 0" as opposed to a non-zero exit code as usual (e.g., this failed step ends with "exiting with 1" as expected).
The problem may be directly in golangbuild itself or in one of the components it was invoking during that build step.
CC @golang/release, @mknyszek.

Looks like the bug is in an underlying component, the go command. I can reproduce on a Linux machine with:
$ go version
go version go1.21.0 linux/amd64
$ GOOS=android GOARCH=amd64 go test -json -c -o=/dev/null ./...
go: downloading gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c
go: downloading cloud.google.com/go/storage v1.18.2
go: downloading golang.org/x/net v0.13.0
[...]
{"Time":"2023-08-11T17:24:59.434296396Z","Action":"start","Package":"golang.org/x/pkgsite/cmd/frontend"}
{"Time":"2023-08-11T17:24:59.434426674Z","Action":"output","Package":"golang.org/x/pkgsite/cmd/frontend","Output":"?   \tgolang.org/x/pkgsite/cmd/frontend\t[no test files]\n"}
{"Time":"2023-08-11T17:24:59.434466057Z","Action":"skip","Package":"golang.org/x/pkgsite/cmd/frontend","Elapsed":0}
{"Time":"2023-08-11T17:24:59.434803653Z","Action":"start","Package":"golang.org/x/pkgsite/cmd/internal/cmdconfig"}
{"Time":"2023-08-11T17:24:59.43493743Z","Action":"output","Package":"golang.org/x/pkgsite/cmd/internal/cmdconfig","Output":"?   \tgolang.org/x/pkgsite/cmd/internal/cmdconfig\t[no test files]\n"}
[...]
# golang.org/x/pkgsite/internal/vuln.test
loadinternal: cannot find runtime/cgo
# golang.org/x/pkgsite/internal/worker.test
loadinternal: cannot find runtime/cgo
# golang.org/x/pkgsite/internal/testing/integration.test
loadinternal: cannot find runtime/cgo
~/go/src/golang.org/x/pkgsite$ echo $?
0

I'll narrow it down a bit more and file a separate bug for cmd/go.

We discussed this and plan to let the fix land in the affected component. Nothing to do in golangbuild.


Automatically issue !help command on new follows

Currently on every new follow, @michaeljolley mentions doing the !help command, promptly followed by him doing it himself. Rather than that, how about on every new follow, I guess the Twitch API would notify the bot and the bot can automatically issue the !help command

I like this.  To do it we'd need the bot to know about new follows, which is doesn't currently.