[types] Options accessed from module not extendable

The Module type has an options property whose type is NuxtOptions:
https://github.com/nuxt/nuxt.js/blob/f08f4efcde7bc174fd9b68a2a5a785d504659391/packages/types/config/module.d.ts#L24
Since it's NuxtOptions and not NuxtConfig, if a module extends NuxtConfig with an extra property, that won't be accessible type-wise from the module. For example:
declare module '@nuxt/types' {
  interface NuxtConfig {
    i18n?: Options
  }
}

/** @type {import('@nuxt/types').Module} */
export default function () {
  const moduleOptions = this.options.i18n  // `this.options.i18n` has type `any` here
}

Versions

nuxt: v2.15.2

See https://github.com/nuxt/nuxt.js/pull/9058#discussion_r602730487. In short, extend NuxtOptions and not NuxtConfig and you should be fine.

@danielroe @pi0 I've read #9058 and I haven't succeed to correctly understand what's going on 🙈
As far as I remember, modules need to extend NuxtOptions and not NuxtConfig.
And if I'm right, there was even a moment where NuxtConfig was a type and not an interface, and couldn't be extended.
The proper way is exactly what @danielroe mentioned in last comment, NuxtOptions should be extended.
Which will result on accessing this.options.foo through module definition but also have config key foo correctly typed.
Please point me out if there's something still wrong in types that I didn't get and should be fixed :)

I'd also say that the way to go is to extend NuxtOptions from the module's perspective.
NuxtConfig is still necessary and useful because it's needed if someone wants to annotate the config object in nuxt.config.js but I don't see why it should be recommended to extend NuxtConfig instead of NuxtOptions.

@kevinmarrec I agree. I think extending NuxtOptions is what we should be encouraging module authors to do (note: we should update the template which currently defaults to NuxtConfig).

Initially, we only had Configuration interface which was not considering options get normalized. This was leading to issue that internal typings was wrong because all nuxt.options keys was optional. Then we introduced NuxtOptions for internals (normalized by options.js) and NuxtConfig for nuxt.config interface with backward compatibility for Configuration interface.
Nuxt does not touches input options for custom keys and modules since modules are responsible to merge it with defaults and should not solely depend on this.options.moduleName without normalizing. In other words nuxt.options.i18n is not a trusted source without explicitly normalized by module into a new variable.
What I meant in https://github.com/nuxt/nuxt.js/pull/9058#discussion_r602729461 when sharing options is desired (like module A normalizing it's config back into nuxt.options for module B)
Nuxt kit will hopefully help on making it easier for defining modules and normalizing options but for time being, otherwise above is the case, please extend NuxtConfig for modules and not NuxtOptions otherwise it makes situation even harder to support all legacy cases.
I've reopened this issue to clarify this :)

Again, would like to talk about this.options.i18n rather than this.nuxt.options.i18n. Those are the same objects anyway, as you said, but this.options have proper types so it's clearer to reason about.

In other words nuxt.options.i18n is not a trusted source without explicitly normalized by module into a new variable.

I either don't understand what you are saying or I just don't agree with it.
I'll describe the obvious stuff that we all already know, just so that we are on the same page:
The module can get passed options in two ways (typically):

modules: [ ['nuxt-i18n', { /* options */ }] ]
i18n: { /* options */ }

In the first case, the module receives options through the argument passed to the default export.
In the second case, the module has to access them through this.options.i18n.
In both cases the i18n options are unresolved.
Now, in the second case the i18n types are missing because this.options is NuxtOptions and not NuxtConfig.
I agree that it should be NuxtOptions because the Nuxt options themselves are resolved but then the module must extend NuxtOptions or else the types its types won't be available to itself.
If you don't agree with that then please say what's the plan to address that going forward?
I guess you must have some idea since you have a strong opinion that the modules should only extend NuxtConfig but haven't mentioned any alternative that would solve the aforementioned problem.

Those are the same objects anyway, as you said, but this.options have proper types so it's clearer to reason about.

The reason is that nuxt typing are incomplete. Nuxt is not typed at all.

I agree that it should be NuxtOptions because the Nuxt options themselves are resolved but then the module must extend NuxtOptions or else its types won't be available to itself

The module should internally resolve options from input key(s) and inline options. It is not reliable outside the context of the module itself. Here is a proper usage:
interface I18nOptions {
 example: string
}

declare module '@nuxt/types' {
  interface Configuration {
    i18n?: Partial<I18nOptions>
  }
}

export default function (inlineOptions) {
  const moduleOptions: I18nOptions = defu(inlineOptions, this.options.i18n, {
    example: 'default'
  })

  // moduleOptions is properly typed and normalized
}

Or using jsdocs:
export default function (inlineOptions) {
  /** @type {import('../types').I18nOptions } */
  const moduleOptions:= defu(inlineOptions, this.options.i18n, {
    example: 'default'
  })
}

This is how it's done already.
My point was only about this.options.i18n missing types.
Your suggestion is now to extend the Configuration interface which yes, will work, but Configuration is deprecated so I want to be a good citizen and not use it anymore. Which leaves me with no proper way to do it if I'm not to extend NuxtOptions.

@rchl Updated reply (sorry it was a typo). indeed configuration is deprecated. And i18n not being available in nuxt.options is intended because it is not a nuxt option. What I'm trying to say is that module options should be resolved and typed internally.

That doesn't change the fact that:

this.options.i18n types are missing
the unresolved options are there

You can hide the fact that the types are missing by using defu or deepMerge or something, as it will accept any but technically the options are there but the types are not.
I'm not sure why you are saying that we shouldn't extend NuxtOptions in this case. Is it because of the compatibility problems associated with that? Would it be OK if we would somehow magically forget all the legacy types?
(Sorry about going on with that for so long. Maybe there is a bit of a language barrier or maybe I'm not communicating well enough...)


add external link support to AddNavigationNode

AddNavigationNode needs external link support as links that use _layouts folder such as a link to notebook or site settings cannot be added otherwise.

Hi @spdavid, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. Real humans will now evaluate your PR.

TTYL, MSBOT;

Thx David for this,
Challenge is however that since this is signature change, it would break any code using the current method. We can however address this pretty easily by adding default value for the isExternal. This means to update signature like follows:
public static void AddNavigationNode(this Web web, string nodeTitle, Uri nodeUri, string parentNodeTitle, NavigationType navigationType, bool isExternal = false)

Since this is pretty small fix to apply, we'll get this now included and I'll immediately update the signature with default value like above.
Thx for your contribution.


This plugin is no longer maintained. The developer recommends using Google reCAPTCHA instead.

Hi there - we have just received the update "This plugin is no longer maintained. The developer recommends using Google reCAPTCHA instead" but the link attached to "Google reCaptcha" links back to the same plugin? Is this a mistake and it is meant to be recommending a different Craft recaptcha plugin?

Hi @iamkeir
The new home for this plugin will be https://github.com/juban/craft-google-recaptcha now.
I will continue to support that plugin.
I've reached out the Craft support team in order to fix the issue you refer to migrate the current plugin to different account, but did not get an answer yet.
Sorry for that and thanks for your interest.

@juban that's even better news :) no problem at all


gwf: creating IC package very slow (version 0.6.1)

Hi All,
Since I've updated nlmod from 0.5.3 to 0.6.1 the progress of creating the IC package has become very slow (ca. 6-8 min vs a few seconds). I have tried presenting different sets of initial heads (i.e. all 1's, or the actual initial heads), but the outcome is the same.
Although I don't really see what changes from 0.5.3 to 0.6.1 could have an impact on this, I was wondering if anyone else has encountered issues with this?
Issue occurs during:
gwf = nlmod.gwf.ds_to_gwf(ds)

Thanks for posting this issue. I'm not sure but this might have to do with passing a DataArray to flopy instead of the actual underlying numpy array. We've run into bizarrely bad performance before related to that issue.
Does this issue also occur with one of the example notebooks? And can you post the versions of xarray, numpy and flopy for us?

I ran the IJmuiden notebook, results:
0.5.3 -> IC loading time ~14 sec.
0.6.1 -> IC loading time <<1 sec.

0.5.3:
Bottleneck==1.3.5
contextily==1.2.0
flopy==3.3.6
geopandas==0.12.1
geopy==2.3.0
hydropandas==0.8.0
imod==0.11.4
matplotlib==3.6.2
nlmod==0.5.3
numpy==1.23.4
pandas==1.5.3
Shapely==2.0.1
openpyxl==3.0.10
geocube==0.4.2
rioxarray==0.12.4

0.6.1:
Bottleneck==1.3.5
contextily==1.3.0
flopy==3.3.6
geopandas==0.12.1
geopy==2.3.0
hydropandas==0.8.0
imod==0.14.1
matplotlib==3.6.2
nlmod==0.6.1
numpy==1.23.4
pandas==1.5.3
Shapely==2.0.1
geocube==0.4.2
openpyxl==3.1.2
rioxarray==0.15.0

This issue has been fixed in the dev branch (#200). It's what I mentioned before. When a DataArray is passed to flopy, performance becomes extremely slow. In the lastest version of nlmod we ensure all data from the model dataset is passed to flopy as numpy arrays.
For now there are two workarounds:

Update nlmod to the develop version pip install git+https://github.com/ArtesiaWater/nlmod.git@dev
Pass the starting heads to the IC package as a numpy array.

I'll check with the rest whether we can create a new release soon to address this issue.

Fixed by new release v0.7.0, closing issue.


Location not being changed when the location is changed, its reading the same old data .

Please provide more information.


Allow translating locations through a sum of  consecutive mappings

This change is

crates/cairo-lang-filesystem/src/db.rs line 358 at r3 (raw file):
Previously, orizi wrote…
thanks - for the elaboration - are we sure we actually want to do this?
specifically - the new patch-builder basically almost never allows you to not have a containing span for all generated code - so the only thing that makes sense to me is to add some ordering to improve the lookups.
this currently seems to just hide possible issues from us actually finding them.

Yes, but we need this for procedural macros, rather than the compiler source plugins.
While it's true using PatchBuilder will be enough to ensure appropriate code mappings are created in the compiler, we want to be able to create code mappings even without the knowledge of real compiler AST. What we do know, is where does a single token in the returned Cairo code come from. This way, we want to keep the same behavior for compiler created code mappings, which will always translate by matching some span in code mappings list, while also using the knowledge about token origin to map errors if possible.


Linux file permissions and Undefined variable error

Laravel Version
11.2.0
PHP Version
8.2.16
Database Driver & Version
No response
Description
Many file permission errors appeared in the Linux section, I tried to do it by looking at the topic here, but it didn't work https://stackoverflow.com/questions/30639174/how-to-set-up-file-permissions-for-laravel .
First problem: The code is the same but gives an error on linux (could it be related to file permissions?)
Second problem: Do file permissions have to be so complicated? Or is it complicated because of my lack of knowledge? Is there an easy way?
The project works fine on my localhost (windows & xampp)

The SAME code I pulled from github gives Undefined variable error on linux.

Codes: https://github.com/duran004/news_laravel
file permissions

What should I do?
Steps To Reproduce
Codes: https://github.com/duran004/news_laravel

Hi there,
Thanks for reporting but it looks like this is a question which can be asked on a support channel. Please only use this issue tracker for reporting bugs with the library itself. If you have a question on how to use functionality provided by this repo you can try one of the following channels:

Laracasts Forums
Laravel.io Forums
StackOverflow
Discord
Larachat
IRC

However, this issue will not be locked and everyone is still free to discuss solutions to your problem!
Thanks.


Add insufficient blocks case to code validation

The insufficient blocks case is when the tutorial step requires more than one of the same type of block and the user has at least one of that type of block, but not all of the blocks. For example, in the picture below the user needs two "variables_set" blocks but only has one. Note: this example is a made-up tutorial step as I don't think we have any current tutorials that require more than one block of the same type in a single step.
Joey already added a check for insufficient blocks here: https://github.com/microsoft/pxt/blob/master/pxtblocks/code-validation/validateBlocksExist.ts#L27
This PR just uses that check to create the appropriate code validation message to the user.

We don't currently have a separate case for insufficient blocks that are disabled - it'll show the same message. For example:

(leaving a note here for other reviewers that we'll be looking at adding other authoring for specifying required blocks vs just from highlighting in a separate pr)


Collider doesn't inherit transform from parent

You can use this minimal repro code (server.rs):
use ambient_api::{
    components::core::{
        app::main_scene,
        camera::aspect_ratio_from_window,
        ecs::{children,parent,},
        physics::{cube_collider,visualize_collider,},
        primitives::{cube,quad,},
        transform::{lookat_target, translation, local_to_parent, local_to_world, },
    },
    concepts::{make_perspective_infinite_reverse_camera, make_transformable},
    prelude::*,
};

#[main]
pub fn main() {

    Entity::new()
        .with_merge(make_perspective_infinite_reverse_camera())
        .with(aspect_ratio_from_window(), EntityId::resources())
        .with_default(main_scene())
        .with(translation(), Vec3::ONE * 5.)
        .with(lookat_target(), vec3(0., 0., 0.))
        .spawn();

    let parent_position_only = Entity::new()
        .with(name(), "position only (parent)".to_string())
        .with_merge(make_transformable())
        .with(translation(), vec3(-2., 2., 0.))
        .with_default(local_to_world())
        .spawn();

    let child_mesh_and_collider = Entity::new()
        .with(name(), "mesh and collider (child)".to_string())
        .with_default(cube())
        .with(cube_collider(), Vec3::ONE)
        .with_default(visualize_collider())
        .with_default(local_to_parent())
        .spawn();

    entity::add_component(parent_position_only, children(), vec![child_mesh_and_collider]);
    entity::add_component(child_mesh_and_collider, parent(), parent_position_only);

}

A slightly more detailed implementation in latest push to my working repo here:
https://github.com/droqen/23-07Buck/blob/master/test02-parent-collider/src/server.rs

Hm, I think this might be one for @FredrikNoren. The issue is that the ECS <-> physics world sync systems work solely on changes to translation/rotation/scale, and don't account for the hierarchy. I'm not sure what the correct fix would be here, especially because there are nuances around how the hierarchy should be represented in the physics world.
I can think of five cases:

non-physics object is moved around, and a physics object is a child of it
a. Does the physics child get teleported, or is a force applied to move it to its new absolute position?
non-physics object stays still, but a physics object that is the child of it moves around
a. Does anything happen to the parent?
physics object is moved around, and a non-physics object is a child of it
physics object is moved around, with a physics object child that stays still
a. Does the child get to run its own physics, or is it chained to its relative position to the parent?
physics object stays still, with a physics object child that moves around
b. Does anything happen to the parent?

The only case that seems trivial to me is 3). The others have much weirder behaviour.
I'm inclined to suggest that we should only "allow" 3) - where attaching a visual representation to a physical representation might make sense - and force you to use physics constraints for the rest of them. I wonder what other game engines do when it comes to making their object hierarchy interface with their physics world.

I discussed this with the author of Godot Jolt, and he was kind enough to run some tests for me to determine Godot's behaviour.
Godot appears to do its best to give you "what you expect"; the physics engine operates entirely in worldspace coordinates, and it updates the local-to-parent transformations as appropriate to match what the physics engine calculated.
If you have two physics objects, one object parented to the other, the child will also be teleported when the parent is teleported. When they both fall, the child's local-to-parent transform will be updated to match what the physics engine computes for the global transforms.
If you move a child physically in the physics world, its global transform in the logical world is updated, and then the hierarchy system will update its local-to-parent.
I think this would be possible to implement, but hard to get right all the time. Let's discuss more when Fredrik's back.


Navigating to a new artist displays Works component but About tab is selected

@sarahscott - I can't reproduce this on the current version of master..

I’m guessing this might be due to you not rebuilding the Xcode project, but only reloading the JS.

Yeah I can't repro it on the fresh build; closing now!


Add ~thread decorator information to webhooks that don't have it

We have found that some webhook notifications to the controller (such as RFC 0160 Connections) do not have the ~thread decorator from the protocol being executed.  This is at minimum useful and in some cases required for the controller to track requests across many protocol instances. For the initial message of a protocol, the ~thread decorator is (often) not present in the message and so the id for the message must be included in the webhook data (the id of the first message becomes the thid of the protocol instance). The id could always be added to all of the webhooks as well.
The task is to review all webhooks related to protocol messages and add the ~thread decorator or id (for first messages of a protocol only) to all webhooks.

Controller writers -- such as @ianco , @burdettadam , @dbluhm -- how crucial do you think this change is?  Obvs we've not noted this previously, but it seems pretty important for a controller to know the context of a webhook received related to a running protocol instance.

If I'm not mistaken, we're currently using record IDs to correlate requests and webhooks, usually. However, it recently came to our attention that having more visibility and control of threading from the controller layer would better enable things like controller orchestrated "super-protocol" or "sub-protocol" flows. The included threading info would help ensure things are grouped and ordered in a coherent way for the recipient, especially when the recipient is behind a mediator or other networking scenarios where messages may arrive out of order.


track wether function is run as action or not

Title, could be useful to differentiate so you can pass errors regularly (which can be logged in a callback etc) except for in an action

Not going to do this


Scalable Polonius support on nightly

Metadata

Owner(s)
@lqd

Team(s)
types

Goal document
2024h2/Polonius

Summary
Improve the Nightly support for Polonius, next generation borrow checking, so that it can scale
Tasks and status

[ ] Design review (@nikomatsakis)
[ ] Implementation (@lqd, @amandasystems)
[ ] Standard reviews (types )

I can't modify the issue text, but the following is needed to fix the link:
[pc3]: https://blog.rust-lang.org/inside-rust/2023/10/06/polonius-update.html#background-on-polonius

This issue is intended for status updates only.
For general questions or comments, please contact the owner(s) directly.

Status update:

we've completed the first task of removing universe errors out of the main path and moving higher-ranked concerns out of the borrowck, in @amandasystems' PR #123720. During SCC construction, we now detect these constraints and rewrite them to regular constraints outliving 'static. We have possible improvements in mind that we can do in the future here, but we've also just started trying to remove placeholders, by replacing them with constraints again.

we've also made more progress on the location-sensitive analysis, though not as much as we'd like. By now we have a "localized" constraint graph to implement propagation in a flow-sensitive manner, with constraints from typeck and liveness, and have it hooked it up to the existing borrow checking in non-lexical scope and active loans computation. It's still buggy though: there are a couple hundred of UI test failures at the moment, including important cases that don't work yet. Some of these failures are due to the diagnostics subsystem not yet handling flow-sensitive concerns. The next immediate steps are to analyze and fix the test failures, and to help with this we're also expanding the existing NLL logging, MIR dumps, and visualizations.

and we've also started work on the item to use more of the polonius model in the borrow-checker, though we're still in the preparation phase to have an overview of what we want, need, and can change here. Currently, the gated location-insensitive analysis is mainly implemented in the borrowck dataflow analyses, but we want to expand this to replace code and data existing in both models, avoid duplicate work, and simplify the implementation. For example, we can either change components internals to do so, or have them generic enough to work with both models: this applies at least to region liveness, region values, SCC values, etc. We also want to do this unification while taking the location-sensitive requirements into account, as well as constraints that existing downstream code can't be impacted or changed too much for now (e.g. diagnostics).

Key developments:

We were able to fix a bunch of test failures due to some off-by-one errors (in both typeck and livenesss constraints) from the old "mid-points" that don't exist anymore.
We're still debugging the large number of test failures, and continued the design work on the unified debugging visualization to help with that. We're currently manually doing the tracing work, and after a few run-throughs within the team, should be able to automate it.
We've also focused on some examples that we want to accept but do not yet, in particular all the variations of issue #47680. Some adjustments to the active loans computation may be needed, and/or the locations where effects happen (which also relate to the mid-points item above), which was unexpected. It shouldn't be hard to fix though.
Amanda has continued cleaning up placeholders in the work-in-progress PR #130227.
There was no particular progress on using more of the polonius model within the borrowck,. We also had a bit less time than usual with me going to RustConf, and Amanda going to EuroRust and doing a presentation on polonius 🎉. We'll add a link to the recording once they're made available.

Here are the key developments for the last update of the year:

Amanda has made even more progress on removing placeholders, in particular on lazy constraints and early error reporting, as well as investigating issues with rewriting type tests. A few tests are still failing, and it seems error reporting and diagnostics will be hard to keep exactly as today. Unfortunately, what was devilishly marketed as hoped to be a straightforward refactor turned out to have a lot of hidden complexity
I've continued analyzing the test failures and fixing them. We're now at 6 failures of interest that still need investigation, and the rest are diagnostics changes.
I've also hit some kind of weakness in our initial approach: our unified naive reachability conflates the two different transitive closures we used to have. That should have been fine, and the problem didn't exist in our datalog implementation, but with backwards edges we can encounter kills when time-traveling (and they can be impactful). Who knew that time-traveling and spacetime reachability could be mind bending. We haven't fully thought things through just yet, but we can still model reachability as a two-step process anyways. The implementation has a conservative approximation for these cases, but it still was surprising. We'll need a bit more analysis.
even with the few test failures, we feel the prototype is working well enough that it's worthwhile to land. So I've spent most of the time cleaning it up and opening PRs: https://github.com/rust-lang/rust/pull/134268, https://github.com/rust-lang/rust/pull/134315, https://github.com/rust-lang/rust/pull/134378, https://github.com/rust-lang/rust/pull/134670, https://github.com/rust-lang/rust/pull/134914 have landed already. https://github.com/rust-lang/rust/pull/134920 and https://github.com/rust-lang/rust/pull/134980 are currently in review.
These last 2 actually complete end-to-end testing, and replace the location-insensitive analysis in-tree. With that, basically all of the progress done on the prototype, that we've been reporting here, should be available soon-ish. There's of course still a lot of work left to do, but it's still good a milestone.

(Happy Holidays and Happy New Year everyone!)


[Doc Bug][video-link-connectors]

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/webhooks-and-connectors/how-to/connectors-creating.md
93
7
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Docs Build status updates of commit b64a2eb:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/webhooks-and-connectors/how-to/connectors-creating.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Add Blazor Component for Tuples

ValueTuples are a value type and are thus passed by value. This is incompatible with the current recursive Get and Set value by field/property name methods.


rename the default branch

We should rename the default branch to main.
The tentative date is before December 31, 2021.
CI will be fixed as well. The disruption is expected to be nearly zero (just swithc the default branch in our local checkouts).

branch renamed to main


Add Following and Followers List with Navigation

Implement a feature that displays the list of users that a person is following and their followers. Users should be able to navigate to the profile of any user listed.

Fixed


ZTA metadata - help field

Too long labels break the layout. I think this information works better in a tooltip helper. WDYT?

sorry if this was discussed but curious if you considered HTML placeholder attribute?

@wojtekmach great call. @cristineguadelupe let's replace this by placeholder?

@wojtekmach great call. @cristineguadelupe let's replace this by placeholder?

Yep!


HADOOP-16848. Experimental directory marker optimization.

Optimizes directory marker operations through:-

Async create/clear
An option "fs.s3a.experimental.optimized.directory.operations"

That performs whatever optimisations to directory marker IO are considered
effective to reduce that I while still avoiding problems with missing markers
and/or markers not deleted.
Important

Work in progress
Experimental: use at own risk
Not for use against buckets whether other S3A releases are active
And not for use with data you value.

View it as a Proof of Concept to explore what we can do here.

Tested. Ireland
Tests failed; not looked into the details

some were clearly as the #of IOPs were less than the metrics' assertions
and rename() contract tests were failing with, as usual. nothing meaningful from rename() other than "false"

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
2m 33s
Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s
No case conflicting files found.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

+1 :green_heart:
test4tests
0m  0s
The patch appears to include 2 new or modified test files.

_ trunk Compile Tests _

+0 :ok:
mvndep
1m 36s
Maven dependency ordering for branch

+1 :green_heart:
mvninstall
26m  3s
trunk passed

+1 :green_heart:
compile
19m 33s
trunk passed

+1 :green_heart:
checkstyle
2m 52s
trunk passed

+1 :green_heart:
mvnsite
2m  6s
trunk passed

+1 :green_heart:
shadedclient
20m 51s
branch has no errors when building and testing our client artifacts.

+1 :green_heart:
javadoc
2m  1s
trunk passed

+0 :ok:
spotbugs
1m 13s
Used deprecated FindBugs config; considering switching to SpotBugs.

+1 :green_heart:
findbugs
3m 32s
trunk passed

_ Patch Compile Tests _

+0 :ok:
mvndep
0m 24s
Maven dependency ordering for patch

+1 :green_heart:
mvninstall
1m 28s
the patch passed

+1 :green_heart:
compile
17m 59s
the patch passed

+1 :green_heart:
javac
17m 59s
the patch passed

-0 :warning:
checkstyle
2m 57s
root: The patch generated 1 new + 25 unchanged - 0 fixed = 26 total (was 25)

+1 :green_heart:
mvnsite
2m 16s
the patch passed

+1 :green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

+1 :green_heart:
shadedclient
14m 26s
patch has no errors when building and testing our client artifacts.

+1 :green_heart:
javadoc
2m  4s
the patch passed

+1 :green_heart:
findbugs
3m 42s
the patch passed

_ Other Tests _

-1 :x:
unit
9m 24s
hadoop-common in the patch failed.

+1 :green_heart:
unit
1m 34s
hadoop-aws in the patch passed.

+1 :green_heart:
asflicense
0m 45s
The patch does not generate ASF License warnings.

138m  7s

Reason
Tests

Failed junit tests
hadoop.security.TestFixKerberosTicketOrder

hadoop.security.TestRaceWhenRelogin

Subsystem
Report/Notes

Docker
Client=19.03.5 Server=19.03.5 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-1834/1/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/1834

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle

uname
Linux dc58b925e539 4.15.0-74-generic #84-Ubuntu SMP Thu Dec 19 08:06:28 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
personality/hadoop.sh

git revision
trunk / 146ca0f

Default Java
1.8.0_232

checkstyle
https://builds.apache.org/job/hadoop-multibranch/job/PR-1834/1/artifact/out/diff-checkstyle-root.txt

unit
https://builds.apache.org/job/hadoop-multibranch/job/PR-1834/1/artifact/out/patch-unit-hadoop-common-project_hadoop-common.txt

Test Results
https://builds.apache.org/job/hadoop-multibranch/job/PR-1834/1/testReport/

Max. process+thread count
1334 (vs. ulimit of 5500)

modules
C: hadoop-common-project/hadoop-common hadoop-tools/hadoop-aws U: .

Console output
https://builds.apache.org/job/hadoop-multibranch/job/PR-1834/1/console

versions
git=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1

Powered by
Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
25m 15s
Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s
No case conflicting files found.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

+1 :green_heart:
test4tests
0m  0s
The patch appears to include 2 new or modified test files.

_ trunk Compile Tests _

+0 :ok:
mvndep
1m 13s
Maven dependency ordering for branch

+1 :green_heart:
mvninstall
18m 29s
trunk passed

+1 :green_heart:
compile
16m 47s
trunk passed

+1 :green_heart:
checkstyle
2m 33s
trunk passed

+1 :green_heart:
mvnsite
2m 14s
trunk passed

+1 :green_heart:
shadedclient
18m 49s
branch has no errors when building and testing our client artifacts.

+1 :green_heart:
javadoc
2m 19s
trunk passed

+0 :ok:
spotbugs
1m 10s
Used deprecated FindBugs config; considering switching to SpotBugs.

+1 :green_heart:
findbugs
3m  8s
trunk passed

_ Patch Compile Tests _

+0 :ok:
mvndep
0m 24s
Maven dependency ordering for patch

+1 :green_heart:
mvninstall
1m 19s
the patch passed

+1 :green_heart:
compile
15m 51s
the patch passed

+1 :green_heart:
javac
15m 51s
the patch passed

-0 :warning:
checkstyle
2m 36s
root: The patch generated 1 new + 25 unchanged - 0 fixed = 26 total (was 25)

+1 :green_heart:
mvnsite
2m 14s
the patch passed

+1 :green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

+1 :green_heart:
shadedclient
12m 49s
patch has no errors when building and testing our client artifacts.

+1 :green_heart:
javadoc
2m 13s
the patch passed

+1 :green_heart:
findbugs
3m 29s
the patch passed

_ Other Tests _

+1 :green_heart:
unit
9m  6s
hadoop-common in the patch passed.

+1 :green_heart:
unit
1m 39s
hadoop-aws in the patch passed.

+1 :green_heart:
asflicense
0m 54s
The patch does not generate ASF License warnings.

143m 46s

Subsystem
Report/Notes

Docker
Client=19.03.5 Server=19.03.5 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-1834/2/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/1834

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle

uname
Linux c84056736665 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
personality/hadoop.sh

git revision
trunk / 146ca0f

Default Java
1.8.0_242

checkstyle
https://builds.apache.org/job/hadoop-multibranch/job/PR-1834/2/artifact/out/diff-checkstyle-root.txt

Test Results
https://builds.apache.org/job/hadoop-multibranch/job/PR-1834/2/testReport/

Max. process+thread count
1444 (vs. ulimit of 5500)

modules
C: hadoop-common-project/hadoop-common hadoop-tools/hadoop-aws U: .

Console output
https://builds.apache.org/job/hadoop-multibranch/job/PR-1834/2/console

versions
git=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1

Powered by
Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

+0 :ok:
reexec
1m 54s
Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s
No case conflicting files found.

+1 :green_heart:
@author
0m  0s
The patch does not contain any @author tags.

-1 :x:
test4tests
0m  0s
The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.

_ trunk Compile Tests _

+1 :green_heart:
mvninstall
26m 32s
trunk passed

+1 :green_heart:
compile
0m 43s
trunk passed

+1 :green_heart:
checkstyle
0m 31s
trunk passed

+1 :green_heart:
mvnsite
0m 41s
trunk passed

+1 :green_heart:
shadedclient
18m 49s
branch has no errors when building and testing our client artifacts.

+1 :green_heart:
javadoc
0m 27s
trunk passed

+0 :ok:
spotbugs
1m  8s
Used deprecated FindBugs config; considering switching to SpotBugs.

+1 :green_heart:
findbugs
1m  5s
trunk passed

_ Patch Compile Tests _

+1 :green_heart:
mvninstall
0m 38s
the patch passed

+1 :green_heart:
compile
0m 32s
the patch passed

+1 :green_heart:
javac
0m 32s
the patch passed

-0 :warning:
checkstyle
0m 22s
hadoop-tools/hadoop-aws: The patch generated 1 new + 12 unchanged - 0 fixed = 13 total (was 12)

+1 :green_heart:
mvnsite
0m 38s
the patch passed

+1 :green_heart:
whitespace
0m  0s
The patch has no whitespace issues.

+1 :green_heart:
shadedclient
18m  8s
patch has no errors when building and testing our client artifacts.

+1 :green_heart:
javadoc
0m 28s
the patch passed

+1 :green_heart:
findbugs
1m 18s
the patch passed

_ Other Tests _

+1 :green_heart:
unit
1m 47s
hadoop-aws in the patch passed.

+1 :green_heart:
asflicense
0m 33s
The patch does not generate ASF License warnings.

76m 36s

Subsystem
Report/Notes

Docker
Client=19.03.6 Server=19.03.6 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-1834/3/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/1834

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle

uname
Linux 8ce8b8fb1c88 4.15.0-74-generic #84-Ubuntu SMP Thu Dec 19 08:06:28 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
personality/hadoop.sh

git revision
trunk / c75756f

Default Java
1.8.0_232

checkstyle
https://builds.apache.org/job/hadoop-multibranch/job/PR-1834/3/artifact/out/diff-checkstyle-hadoop-tools_hadoop-aws.txt

Test Results
https://builds.apache.org/job/hadoop-multibranch/job/PR-1834/3/testReport/

Max. process+thread count
337 (vs. ulimit of 5500)

modules
C: hadoop-tools/hadoop-aws U: hadoop-tools/hadoop-aws

Console output
https://builds.apache.org/job/hadoop-multibranch/job/PR-1834/3/console

versions
git=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1

Powered by
Apache Yetus 0.11.1 https://yetus.apache.org

This message was automatically generated.

superceded by #1861


[HOLD for payment 2023-10-09] [$500] Web - Task preview -  phone number contact is displayed @expensify.sms

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:

Login with new account
Create a WS
Invite user phone number account (user B) into WS
Open the announce rom
Click + on composer
Click assign task
Input title and click next
Assign above account B
Click confirm
Click From.... on header, Observe that on the task preview , the phone number contact is displayed with @expensify.sms in the end

Expected Result:
App should display phone number or the display name
Actual Result:
App display phone number with @expensify.sms in the end
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?: y
Reproducible in production?: y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://github.com/Expensify/App/assets/93399543/0fc81565-aeb9-42e2-b77b-d65ee2e96500
https://github.com/Expensify/App/assets/93399543/bd075017-3d7e-40cb-b087-bbb4111f754c
Expensify/Expensify Issue URL:
Issue reported by: @namhihi237
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1694333604061429
View all open jobs on GitHub

@sonialiap I was about to unassign you, since you seem to have been assigned in duplicity, but since I'm going OoO for 1 week I'll leave you assigned to it so that you can move this forward while I'm OoO. I'll then take it back once I'm online again.

@cubuspl42 what do you think of the above proposal?

@kbecciv How did you conclude the expected behavior?
I also started an internal thread to figure out the external behavior.

@cubuspl42 The expected result are correct. @expensify.sms should NOT be visible anywhere in the app.

not overdue

@cubuspl42 The expected result are correct. @expensify.sms should NOT be visible anywhere in the app.

You're probably right, but I still have a feeling that just replacing it with a raw number itself (keeping the "@") might not be appropriate either. Maybe this component was designed without taking phone numbers into consideration?... I'll try to figure that out, I'll let you know what I find out.

Assuming that the described expected result is actually expected here, the solution by @namhihi237 makes sense.
C+ reviewed 🎀 👀 🎀

@Julesssss Please let me know if you agree with the described expected result. I tried to get clarification in this thread, but got no responses.

Sorry @cubuspl42 I missed these comments somehow...
I agree the ordering of the contact|email condition should be reversed. But in addition, we need to avoid showing @expensify.sms in the app as Sonia mentioned above.
We usually do this on the backend, but given that this can happen optimistically we might need to introduce a function to newdot to strip out CONST.SMS.DOMAIN when displaying contacts.
That's the solution we should be looking for.

Ahhh, it's in the Str library... That explains why I couldn't find it existing anywhere already 😖
@namhihi237 your proposal seems good, but maybe we can also flip this condition? So that way we are using the display name by default.
const taskAssignee = LocalePhoneNumber.formatPhoneNumber(assigneeLogin) || assigneeDisplayName;

Yep, looks good to me.

@namhihi237 Just for clarity, the C+ review is followed by the internal engineer verification, and they could decide not to assign the contributor, even if the proposal got the C+ recommendation.
I'm just ensuring the process is clear here. You are assigned, so we can proceed to work on the PR.

The PR that introduced the bug has been identified. Link to the PR:

It seems that the bug was present in the relevant components since they were created

The offending PR has been commented on, pointing out the bug it caused and why, so the author and reviewers can learn from the mistake. Link to comment:

N/A

A discussion in #expensify-bugs has been started about whether any other steps should be taken (e.g. updating the PR review checklist) in order to catch this type of bug sooner. Link to discussion:

No need for additional discussion

Determine if we should create a regression test for this bug.

Up to the QA team

If we decide to create a regression test for the bug, please propose the regression test steps to ensure the same bug will not reach production again.

Create a new workspace
Invite a user, using their phone number account, into the workspace (for example: +84989402048)
Access the #announce room
Click the '+' symbol on the composer
Select the 'Assign Task' option
Enter the desired title and click 'Next'
Assign this task to the aforementioned user B
Confirm your actions by clicking 'Confirm'
Click on the header to go back to the parent report, and verify if the preview of the task does not include<EMAIL_ADDRESS>

Switching this to daily so that I can issue payment this week.

Payment summary:
@cubuspl42 - $500 + 50% bonus = $750
@namhihi237 - $500 + 50% bonus + $50 (reporting) = $800

@cubuspl42 @namhihi237 offers sent!

@namhihi237 - paid!

@cubuspl42 please accept the offer so that I can pay you!

@flaviadefaria Done ✅

Everyone has been paid so closing.


Data input hooks (WIP)

Work in progress for tracking and comments only
Changelog category:

New Feature

Changelog entry
Optional handlers for --input_format and data input --file

@auxten @laodouya perhaps --file could be attached to a FIFO named pipe as well? This way whatever the app pushes to the FIFO ahead of execution, could be processed by the query

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


[Bug] Windows Crashes after exactly 1 hour when signed in to Firebase

[REQUIRED] Please fill in the following fields:

Unity editor version: 2021.3.12f1
Firebase Unity SDK version: 8.8.0 (and still in 10.1.0)
Source you installed the SDK: .unitypackage
Problematic Firebase Component: Database, maybe in interplay with Auth
Other Firebase Components in use: only Auth & Database
Additional SDKs you are using: none
Platform you are using the Unity editor on: Mac & Windows
Platform you are targeting: Mac & Windows desktop
Scripting Runtime: IL2CPP, same behaviour in Mono though
Pre-built SDK from the website or open-source from this repo: pre-built from website

[REQUIRED] Please describe the issue here:
On Windows our software crashes exactly 1 hour after signing in to Firebase. This happens about 90% of the time on several test machines with the compiled App (both IL2CPP and Mono) and both with username/password login and resume session by token. Running content / scenes do not matter, it even crashes only being idle in main menu.
It also crashes the Unity editor, though it seems to happen less often than the compiled App, about 70% of the time.
The App runs totally fine being signed out (login screen at start) and also does not crash when there is no internet connection available (cable pulled, wifi deactivated) at the usual crash point after 1 hour runtime.
The Mac version is completely stable.
What I did try
As the crash timing is so exact, my first thought was that it is related to the ID token expiring. Thus I added code to manually refresh the ID token every 15 minutes. This did not fix the issue.
As the only other thing we do on Firebase right now is getting some data from the Realtime Database after login we also tried the workaround from this issue -> https://github.com/firebase/quickstart-unity/issues/1284 disabling Persistence. This also did not fix our crashes.
Steps to reproduce:
Have you been able to reproduce this issue with just the Firebase Unity quickstarts (this GitHub project)?
No, quickstarts has compiler errors in Unity 2021.3
What's the issue repro rate? (eg 100%, 1/5 etc)
90% compiled, 70% editor
What happened? How can we make the problem occur?
Download our software from https://get.infinite-realms.de/2022/Setup_IR-2022.0.5.exe - install - sign up & in - wait 1 hour
Relevant Code:
Stack Trace v8.8.0:
0x00007FFB96235440 (FirebaseCppApp-8_8_0) Firebase_App_CSharp_InitializePlayServicesInternal
0x00007FFB96252E76 (FirebaseCppApp-8_8_0) SWIGRegisterStringCallback_FirebaseAnalytics
0x00007FFB96428256 (FirebaseCppApp-8_8_0) SWIGRegisterStringCallback_StorageInternal
0x00007FFB96436E46 (FirebaseCppApp-8_8_0) SWIGRegisterStringCallback_StorageInternal
0x00007FFB9642B13C (FirebaseCppApp-8_8_0) SWIGRegisterStringCallback_StorageInternal
0x00007FFB96430CDC (FirebaseCppApp-8_8_0) SWIGRegisterStringCallback_StorageInternal
0x00007FFB96399991 (FirebaseCppApp-8_8_0) SWIGRegisterStringCallback_StorageInternal
0x00007FFB9639ADFA (FirebaseCppApp-8_8_0) SWIGRegisterStringCallback_StorageInternal
0x00007FFB96439082 (FirebaseCppApp-8_8_0) SWIGRegisterStringCallback_StorageInternal
0x00007FFB96437A05 (FirebaseCppApp-8_8_0) SWIGRegisterStringCallback_StorageInternal
0x00007FFB96438B14 (FirebaseCppApp-8_8_0) SWIGRegisterStringCallback_StorageInternal
0x00007FFB96568801 (FirebaseCppApp-8_8_0) SWIGRegisterStringCallback_StorageInternal
0x00007FFB96569E0A (FirebaseCppApp-8_8_0) SWIGRegisterStringCallback_StorageInternal
0x00007FFB96312BAF (FirebaseCppApp-8_8_0) SWIGRegisterStringCallback_StorageInternal
0x00007FFB962BFB28 (FirebaseCppApp-8_8_0) SWIGRegisterStringCallback_StorageInternal
0x00007FFB9673CC8D (FirebaseCppApp-8_8_0) SWIGRegisterStringCallback_StorageInternal
0x00007FFBEFE9244D (KERNEL32) BaseThreadInitThunk
0x00007FFBF094DFB8 (ntdll) RtlUserThreadStart

Weirdly FirebaseAnalytics shows up in the trace, although the module is not installed. We did try to install FirebaseAnalytics SDK afterwards because we thought maybe a call to the absent module caused the crash. This also did not fix the issue.
Stack Trace v10.1.0
PDB: 'C:\WINDOWS\system32\ncryptsslp.dll', fileVersion: 10.0.22621.1
  ERROR: SymGetSymFromAddr64, GetLastError: 'Es wurde versucht, auf eine unzulässige Adresse zuzugreifen.' (Address: 00007FFE15B38AEB)
0x00007FFE15B38AEB (FirebaseCppApp-10_1_0) (function-name not available)
0x00007FFE15C231F8 (FirebaseCppApp-10_1_0) uS::Node::getLoop
0x00007FFE15C3014D (FirebaseCppApp-10_1_0) uS::Node::getLoop
0x00007FFE15C24707 (FirebaseCppApp-10_1_0) uS::Node::getLoop
0x00007FFE15C289F5 (FirebaseCppApp-10_1_0) uS::Node::getLoop
0x00007FFE15C07828 (FirebaseCppApp-10_1_0) uS::Node::getLoop
0x00007FFE15C08B7A (FirebaseCppApp-10_1_0) uS::Node::getLoop
0x00007FFE15C323A0 (FirebaseCppApp-10_1_0) uS::Node::getLoop
0x00007FFE15C30D6A (FirebaseCppApp-10_1_0) uS::Node::getLoop
0x00007FFE15C31EBA (FirebaseCppApp-10_1_0) uS::Node::getLoop
0x00007FFE15C451BC (FirebaseCppApp-10_1_0) uS::Socket::write
0x00007FFE15C46EF3 (FirebaseCppApp-10_1_0) uWS::WebSocketState<0>::operator=
0x00007FFE15BA2964 (FirebaseCppApp-10_1_0) uS::Socket::freeMessage
0x00007FFE15BABEFF (FirebaseCppApp-10_1_0) uS::Socket::freeMessage
0x00007FFE85549363 (ucrtbase) recalloc
0x00007FFE874F244D (KERNEL32) BaseThreadInitThunk
0x00007FFE8814DFB8 (ntdll) RtlUserThreadStart

Login routines:
private IEnumerator Login(string email, string password)
        {
            var loginTask = Auth.SignInWithEmailAndPasswordAsync(email, password);

            yield return new WaitUntil(predicate: () => loginTask.IsCompleted);

            if (loginTask.Exception != null)
            {
                Debug.LogWarning(message: $"Failed to register task with {loginTask.Exception}");
            }
            else
            {
                User = loginTask.Result;

                if (User.IsEmailVerified)
                {
                    OnUserSignedIn?.Invoke();
                }
                else
                {
                    OpenVerificationMailPopup();
                }
            }
        }

private void TryResumeSession()
        {
            if (Auth.CurrentUser != null)
            {
                User = Auth.CurrentUser;

                if (User.IsEmailVerified)
                {
                    OnUserSignedIn?.Invoke();
                }
                else
                {
                    Logout();
                }
            }
        }

Realtime Database call example. We only do these after login. When offline and signed in via token the App loads settings from cache file instead of database:
        private IEnumerator LoadSettings()
        {
            // Abwarten bis der User eingelogged ist, vorher hat er keine Rechte auf der Datenbank
            yield return new WaitUntil(predicate: () => IsSignedIn());

            // Daten holen
            Task<DataSnapshot> databaseTask;
            var waitCount = 0;

            var versionName = Application.version.Replace('.', '-');
            databaseTask = DatabaseReference.Child("settings").Child(versionName).GetValueAsync();

            while (!databaseTask.IsCompleted)
            {
                if (databaseTask.Status == TaskStatus.WaitingForActivation)
                    waitCount++;

                // Fehler oder Timeout
                if (databaseTask.Exception != null || waitCount > 200)
                {
                    VersionSettings = ES3.Load<Dictionary<string, string>>("versionSettings", "firebase.pref");
                    SetOfflineMode();
                    break;
                }
                yield return null;
            }

            if (!OfflineMode)
            {
                // Datenbank verbunden, aktuelle Daten holen und abspeichern
                DataSnapshot snapshot = databaseTask.Result;
                VersionSettings = new Dictionary<string, string>();

                // Relevante Werte auslesen
                if (!VersionSettings.TryAdd("catalogRealms", snapshot.Child("catalog-realms").Value.ToString()))
                {
                    SetFatalError();
                    yield break;
                }
                if (!VersionSettings.TryAdd("catalogCore", snapshot.Child("catalog-core").Value.ToString()))
                {
                    SetFatalError();
                    yield break;
                }
                if (!VersionSettings.TryAdd("deprecated", snapshot.Child("deprecated").Value.ToString()))
                {
                    SetFatalError();
                    yield break;
                }

                // Version Settings für Offline-Modus cachen
                ES3.Save("versionSettings", VersionSettings, "firebase.pref");
            }

            OnSettingsLoaded?.Invoke();
        }

Attempt to fix the crash by manually refreshing ID token every 15 minutes:
        #region Token
        private void StartTokenRefreshTimer()
        {
            InvokeRepeating(nameof(TokenRefresh), 900, 900);
            OnUserSignedIn -= StartTokenRefreshTimer;
        }

        private void TokenRefresh()
        {
            Auth.CurrentUser.TokenAsync(true).ContinueWith(task => {
                if (task.IsCanceled) {
                    Debug.LogError("TokenAsync was canceled.");
                }
                else if (task.IsFaulted) {
                    Debug.LogError("TokenAsync encountered an error: " + task.Exception);
                }
            });
        }
        #endregion

HI @megavoid,
Thanks for reporting this issue. Unfortunately, we couldn't test using the .exe file you provided due to security reasons. It would be helpful if you could share the Unity project so that we can identify what's causing this behavior.
Additionally, could you share the error message when using the quickstart? This may be caused by a missing dependency in your implementation.

Hi @paulinon,
Thanks for responding. The Unity project is not public and cannot be shared. In the meantime I was able to fix the dependency issues with quickstart and am currently trying to reproduce the issue in that barebones project.

After 2 more days of research there is some good news and some bad news. Bad news first: I have not been able to replicate the issue using the auth and database quickstart templates separately.
My guess is that the issue is caused by the interplay of both the auth and database modules. I tried using the original database access code from our App in the database quickstart project without auth and it did not crash.
Good news is that I have found a workaround: After login our App makes three calls to the database module using GetValueAsync() on different RootReference children to load some settings. Once these have been completed I now call DatabaseReference.GoOffline();. This simple call prevents the App from crashing after the one hour delay.
I have also confirmed that the crash is being caused only with the database module being present. In one test I have simply ripped out all traces of the database module and replaced the required data with local constants. That worked perfectly fine without crashes.
I hope this in enough information to get a grip on the issue.

Hi @paulinon,
This is our Auth program flow, we are using a standard Unity Monobehaviour class:
private void Start()
        {
            Auth = null;
            User = null;

            TaskScheduler taskScheduler = TaskScheduler.FromCurrentSynchronizationContext();

            FirebaseApp.CheckAndFixDependenciesAsync().ContinueWith(task =>
            {
                dependencyStatus = task.Result;
                if (dependencyStatus == DependencyStatus.Available)
                {
                    InitializeFirebase();
                }
                else
                {
                    Debug.LogError("Firebase Error, could not resolve Dependencies: " + dependencyStatus);
                }
            }, taskScheduler);
        }

private void InitializeFirebase()
        {
            Auth = FirebaseAuth.DefaultInstance;

            DatabaseReference = FirebaseDatabase.DefaultInstance.RootReference;

            FirebaseDatabase.DefaultInstance.SetPersistenceEnabled(false);

            OnFirebaseReady?.Invoke();
        }

The OnFirebaseReady event calls this function:
private void FirebaseReady()
        {
            TryResumeSession();
            OnFirebaseReady -= FirebaseReady;
        }

private void TryResumeSession()
        {
            if (Auth.CurrentUser != null)
            {
                User = Auth.CurrentUser;

                if (User.IsEmailVerified)
                {
                    OnUserSignedIn?.Invoke();
                }
                else
                {
                    // Reset values and display login screen
                    Logout();
                }
            }
        }


Npcap support

Is it possible that Npcap can be supported as well in Pcap.Net?
Since WinPcap is not maintained any more, and Npcap seems to be its next, actively maintained, generation, and also as Wireshark team moved away from WinPcap and Wireshark 3.0 uses Npcap instead, it would be much easier to use just one library.
Npcap has a WinPcap compatibility mode but - as I can see it here - it doesn't work well with Pcap.Net.
In my case - on development machine - I can't successfully send an ARP packet - although there is no error, packet just doesn't get sent. On the other machine I have an error saying that NIC can't be set to promiscuous mode. But the same app has been working for years using WinPcap 4.1.3.

I totally agree. Npcap is full of useful features.

me,too

Same here. It would be great to have NPcap support in PcapDotNet 👍


VS Code can not access marketplace.visualstudio.com

I saw this error reported multiple times, but could not find a solution working for me. I don't use a proxy or vpn, there are no hostnames overridden in /etc/hosts, I am directly connected to the internet.
This problem persists for me since several weeks while no other applications show similar connection problems.

VSCode Version:

$ code-insiders --version
1.34.20-insider
57b550c559b945eb9d871dbf2b2e4cb9e31e2551
x64

OS Version:

$ lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 19.04
Release:	19.04
Codename:	disco

Steps to Reproduce:
$ sudo snap install --classic code-insiders

$ code-insiders --install-extension ms-python.python
Installing extensions...
getaddrinfo ENOTFOUND marketplace.visualstudio.com marketplace.visualstudio.com:443
Failed Installing Extensions: ms-python.python

Locally the address can be resolved:
$ ig marketplace.visualstudio.com +short
<IP_ADDRESS>

The marketplace is working fine including the search functionallity in my browsers and on the commandline:
$ curl -sfSL -o /dev/null -w '%{http_code}' 'https://marketplace.visualstudio.com'
200

$ curl -sfSL -o /dev/null -w '%{http_code}' 'marketplace.visualstudio.com/search?term=test&target=VSCode&category=All%20categories&sortBy=Relevance'
200

This error shows up with code-insiders and code. I also removed the apps and re-installed with the issue persisting:
snap remove code
rm -r ~/.vscode/
rm -r ~/.config/Code/
snap install --classic code

Current workaround: Installing downloaded vsix files from the markatplace within VSCode works.

Another finding: When I add the failing hostnames explicitly to /etc/hosts it works.
echo "<IP_ADDRESS> marketplace.visualstudio.com ms-python.gallery.vsassets.io ms-kubernetes-tools.gallery.vsassets.io" >> /etc/hosts

code-insiders --install-extension ms-python.python
code-insiders --install-extension ms-kubernetes-tools.vscode-kubernetes-tools

Does it work from within the VS Code UI?

No, does not work out of the box. After adding the hostname to /etc/hosts then it also works within the VS Code UI.

Can you point Chrome or Chromium at marketplace.visualstudio.com and see if that works?
What do you get for node -e 'require("dns").resolve("marketplace.visualstudio.com", console.log)'?

Accessing marketplace.visualstudio.com via Chromium works.
I don't have node installed locally, output by running node in a Docker container:
$ docker run -ti node:11-slim node -e 'require("dns").resolve("marketplace.visualstudio.com", console.log)'
null [ '<IP_ADDRESS>' ]

@joaomoreno Can you help me in understanding why we have connectivity issues whereas user could do it from curl?

Does this repro without snap?


Missing this week's 6 Hours of the Glen

As per title; the 6 Hours of the Glen events aren't showing up in the planner.

Sorted. Can anyone think of a decent way of notifying me to update it when they make changes to the schedule?


Modify resource-role.yaml to change cloudwatch to logs

In awsutility-cloudformation-commandrunner.json, change
"cloudwatch:CreateLogStream",
"cloudwatch:DescribeLogGroups",
"cloudwatch:PutMetricData

In the cloudwatch should be logs.

This was fixed and merged in PR 17 - https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-awsutilities-commandrunner/pull/17


Implement Terraform provider/module to manage pipelines automatically

Describe the feature
It would be great to have Terraform provider/module to manage pipelines automatically rather than managing in manually via UI (avoid click-ops).
Use Case
click-ops -> IaC
Proposed Solution
No response
Other Information
No response
Solution version used
1.0.1

+1 if this leads to general Terraform support


Inset Specification on X Axis to Fix Style Clashes

I noticed when using WireSpy with my personal starter kit ( with Flux), if I had styles on the body like min-h or max-w, it would clash and either not show completely or just be pushed over.
I don't know the exact style clashes, but I do know that setting the inset on the x axis fixes it. 😅
You can test with my starter kit in it's current state.

Thanks @joshcirre, I fixed this with some addition bugs related to this in #6 :)


Compute the set of clazzes of a ClazzpathUnit only once

The method getClazzes() in org.vafer.jdependency.ClazzpathUnit
actually builds a hash set and fills it up, each time it is called.
Here it was called once for each removable clazz.
Minimizing jars immediately becomes an order of magnitude faster.

Can you create an JIRA issue for this improvement?

Hi! Thanks for this quick feedback.
I created the following JIRA issue: https://issues.apache.org/jira/browse/MSHADE-205

Patch has been applied. Thanks for your contribution. This PR can be closed now.

Thank you very much!


Feature Request: Lets you add users to a list instead

Hello! Sky Follower Bridge has been pretty great so far, especially when there's so much I have to keep track of. Could I request an option to add users to a list rather than follow/block them? I actually add the mangaka I keep up with to a list instead of following them, so this would be really useful.

I would love this for helping me migrate curated lists from Twitter to bluesky. There's lots of wealth in Twitter lists that have accumulated over the years, containing lots of network knowledge, even greater now that lists can be used as feeds on bluesky :)
Helpful interface would be to enter a list web url, and have a new button appear beside Follow on Bluesky/Following on Bluesky, but for Add to list/Remove from list.
Bonus: This would also help people do successive migrations, because if a non-obvious match is already on a list, there's no need to scrutinize it again during migration (this is for the case where ppl on lists are not actually followed on bsky, which means "follow" status is not helpful when re-running bsky-follower-bridge to see who's be "vetted" already for import)


Request: Please consider supporting PF2.

Pathfinder 2e has a very strongly established rarity system for feats, items, class features and more. It would greatly benefit from such support available to inventory system,.

I contacted/discussed this with people in the PF2e channel and was told that item rarity ment little in general, and that in some cases this was already implemented. I would ask the devs to expand what they currently have there


Lookup credential tenant ID if not provided

This change adds a dependency on the latest version of rancher/machine and therefore needs to pull in https://github.com/rancher/aks-operator/pull/41 to get the latest wrangler and k8s dependencies.

Updates AKS dependencies to align with rancher/machine

Use rancher/machine FindTenantID to look up the tenant ID if not found in the cloud credential secret

https://github.com/rancher/rancher/issues/33097

I am putting the secret update back inside GetCachedTenantID, that's the only place it makes sense to put it since that's the part that knows whether the tenant ID was re-fetched. I'm also handling the potential conflict error there. The two callers we have always want this error ignored, so moving the error handling outside the function just duplicates work.

And added debug log


Add AI Daily Digest and a few fun GPTs.

Add AI daily digest (https://chat.openai.com/g/g-th685hNma-ai-daily-digest), which provides the latest AI news and research. Also add some fun GPTs: 20 Questions (https://chat.openai.com/g/g-tDUzfZTxo-20-questions), Celebrity Critter Creator (https://chat.openai.com/g/g-moHqu685w-celebrity-critter-creator), T or D (https://chat.openai.com/g/g-cUz6Adczm-t-or-d), and Zodiac Chuckler (https://chat.openai.com/g/g-Coph8tZoq-zodiac-chuckler). PR: https://github.com/Anil-matcha/Awesome-GPT-Store/pull/226

Please raise a pull request for the same


Problems with custom async validation

I'm using a custom async validation similar to the example
username: {
  type: String,
  regEx: /^[a-z0-9A-Z_]{3,15}$/,
  unique: true,
  custom: function () {
    if (Meteor.isClient && this.isSet) {
      Meteor.call("accountsIsUsernameAvailable", this.value, function (error, result) {
        if (!result) {
          Meteor.users.simpleSchema().namedContext("createUserForm").addInvalidKeys([{name: "username", type: "notUnique"}]);
        }
      });
    }
  }
}

No validation errors appear, even though result is false. The item is added to the collection without any errors.

Do I maybe have to add some kind of hook?

I get the same issue. I can actually see an error appear near the validated field but the form closes immediately afterwards without any errors.

You should make validation on the server too, the form is "valid" so the submitting can occur.

Ah ok, presumably it will wait on a response from any Meteor.call() invocations before allow the submission to succeed?

No, but it will be very fast... :)


Workflow implemented -- July 29

Tools that implement multiple operations should also respond to the workflow parameter in the extended TRAPI schema.  This allows external callers, such as the workflow runner or another ARA to make a series of calls to compose operations provided by different tools into a complete workflow.
@dkoslicki @edeutsch can you provide links here to aid in implementation?  i.e. the specific form of the workflow specification?

I don't have anything specific at this point, but maybe a diff between our ARAX OpenAPI YAML without and with the operations stuff would be easiest for everyone. It sure would have for me!
We'll also have the TRAPI 1.2 template that will contain most of it.

At what point do we decide that we have enough that we should people: here, implement this?
At the Arch demo that @cbizon is planning?
If we're kinda stable by then, I suggest the diff as a show-and-tell item.


Adding an API

An API for automaticly converting plugins to phar might be a great idea for private plugins instances. Gicing an API may simplify us the task to implement new features.

I will take this..

Done, to be published. The documentetation for the RESTful API will come too..


Add support for extending the .dockercfg file

This PR does a couple of things:

makes loading of the .dockercfg file part of the DockerCli creation so
that we only need to load it once and not at lots of spots throughout
the code
moves the current auth stuff in the config struct down one level so that new
fields can be added w/o breaking the existing auth config logic
add testcases to verify that we can read .dockercfg files in the old
and new format - but always save in the new format

Next steps if this is accepted:

move the config file processing out from under 'registry' since it
not registry specific any more
see what additional fields might be needed - yes I have some in mind :-)

Signed-off-by: Doug Davis<EMAIL_ADDRESS>/cc @crosbymichael @nathanleclaire

/cc @dmcgowan

The code looks good, but will focus on getting the design review approved.  I am also +1 for getting it out of the registry directory, but is likely to happen soon.
I am curious what other use cases you see for using the .dockercfg file and whether separate files in a .docker directory would fit it better or worse?

@dmcgowan we have an immediate need to add new HTTP headers to the Docker CLI->daemon flows - mainly to carry auth tokens that were setup by 3rd party tooling.  So, I have a PR ready to go that will look for a "header" field in the .dockercfg file and have the cli blindly add those headers to all outgoing http messages.
I can also see including things like a "DockerHost" field so that other tooling, like Machine, can modify the user's DOCKER_HOST w/o resorting to tricks/hacks to get the env var modified.
I can move it out from under 'registry' very soon - I just didn't want to do too much within one PR as that tends to slow down the review process.  :-)
As for separate files... I'd prefer not to unless we run across a pretty big reason to split it. I think having all of the cli config fields in one spot will make it much easier for people to deal with - especially 3rd party tooling.

sounds good, +1 to design
also @icecrime @jfrazelle for design review

ping @jfrazelle

ping @icecrime

As I've mentioned previously, I'd love to see ~/.dockercfg move out of ~ entirely (https://github.com/docker/docker/pull/10151#issuecomment-70601848, https://github.com/docker/docker/issues/10318#issuecomment-71276128 for two semi-recent examples of this discussion).

Adding more stuff to a mis-named file to make it less mis-named feels like stepping backwards, IMO. :wink:

@tianon couple of comments

not sure why you think .dockercfg is still misnamed if it includes more than the auth stuff.  If it becomes the general purpose docker config file then .dockercfg seems like a fine name to me.  But if someone wants to propose a new name I'll rename it - just need a suggestion.
if we want to move it (or split it into more files ) into ~/.docker/ I'm ok with that - just need one of the current maintainers ( @dmcgowan ? ) to chime in here.
as for a more advanced (git-like) config file manager... see https://github.com/duglin/docker/tree/Config  and https://gist.github.com/duglin/16560611876ce5f6adb7 ; I had one all ready to go (because I agree with you that we should offer some variants of an API to help modify our config files no matter how easy we think they are to edit) but there was resistance so I opted for a more focused solution.

Yes, even if we expand it, I still think the name is a mistake because it's so uncommon.  Looking at all the other "dot" files in my ~, it's an odd man out for sure.  There are lots of .*rc, *.conf, .[program]/, .config/..., even some .*config, but .*cfg is pretty rare.  Also, ~/.docker is established as a thing, so why not do our users a favor and "contain" ourselves in it? :smile: (bad pun just for @jfrazelle)

@dmcgowan you ok with the migration code I have moving it from ~/.dockercfg to ~/.docker/config  ?

As I first mentioned, I am in favor of a ~/.docker directory.  I had introduced this in a previous PR related to key management, but was never merged :disappointed:  Not sure if anything else is using it in master, I don't see anything else in their locally.  I still think its better to split the configs up into multiple files though within that directory.

Based on the recent comments, I think what I'm hearing is that there are a set of PRs that might be of interest:

a PR to move ~/.dockercfg to ~/.docker/auth_config  (or some other name)
a PR to create a ~/.docker/config file to store additional config options (for example, this new option I want to add that defines new HTTP headers, or potentially a DockerHost option if we find we want to put that into a config file.)
a PR to help 3rd party tooling modify these config files - per @tianon's comment.

Does this sound right?
If so, a few comments:

I have concern about splitting the config info across multiple files just from a management perspective.  I don't think the amount of data we have justifies the added complexity. Having to justify (or even think about) which option goes in which file (especially when a certain option might span multiple files/purposes) just adds to my complexity concern.  But I defer to you guys on this....
the last PR, about 3rd party tooling, is something I view as  longer term PR (meaning I'm not going to do it soon) due to the recent push-back I got on the idea, but I do really think its going to be important to help our users - especially if we do have options sprinkled across multiple config files.

@dmcgowan @tianon  @crosbymichael  thoughts?

IMO ~/.docker/config seems fine for now, and we can use the file migration as a nice "break the syntax" event to move the current contents into a sub-key :+1:
More generally, if there are things that are obviously completely separate (like auth credentials), then splitting them into a separate file makes sense, especially since you can then 600 that file and 666 other configuration files (similar to ~/.ssh/id_rsa versus ~/.ssh/config).

Considering the controversy around what is stored in .dockercfg today, I would advocate for keeping it in a separate file ~/.docker/auth_config and going forward when we have more sensible configuration to store we can use ~/.docker/config and build up tooling around it.  Ideally there would be a tool for the different configs that could be stored in ~/.docker.  For example we are currently experimenting with a namespace tool which would manipulate its own file and have a package for use inside the registry client. Having a requirement of storing all configs in a single file ~/.docker/config would be a burden for developing these external tools just so that there is only one file with configuration with a consistent format.

If my previous comment was not clear, that is a :+1: to @duglin's last comment

Thanks for the comments: pushing this to code review.

@icecrime sorry - I should have gone back to update this one.  With #12009 we'll be doing the first 2 bullets from https://github.com/docker/docker/pull/11759#issuecomment-88482515 - meaning migration and support extending the docker file.  I'd then like to follow it up with tooling to make it easier to modify that config file - either in this PR or a new one.  I can close this one if you'd prefer until then.

I guess this one could be closed then (sorry, there's really too many information and cross references for me to follow here).

Closing this one until #12009 is done and we decide if we want to add tooling to modify the config file.


Embassy won't boot if USB Hub is connected before power

If you have a powered usb hub plugged into the embassy before it has booted up. It will never boot. However, if you connect power to the embassy and then as soon as the ethernet lights come on, you plug in the hub, things will work. This points to the idea that there is probably an issue with the boot device priority in the presence of USB Hubs.

Looks like this is related to the USB Hub backpowering the Pi at a nonzero but insufficient amperage to get the thing to actually boot. I think we can close this as solved but it looks like usb hubs are out if the power pins are enabled on the upstream/male port of the hub. CC @dr-bonez

The only other consideration here is if we can find a way to disable, in the firmware, the Pi's ability to be powered off of it's main USBA ports.


optimized on_commit method

Do not lock search index if:

all the changed models are actually unregistered (not part of the whoosheer)
the appropriate index update method is missing from the whoosheer (e.g. update_xyz where update of xyz cannot in fact change search index)

In our system (COPR), search index update times are pretty high (around 1s) and we needed to avoid unnecessary index locks on operations like user login, where User model is changed (because his last login timestamp is changed) but our update_user in the Whoosheer did in fact nothing because username (only indexed attribute of User) cannot be changed. Also we wanted to avoid index locking when entirely different not indexed model was updated.
(Note that search index is locked when the writer instance is created.)

Very nice, thanks for the PR. Merging. I'll release new version ASAP.

Released as 0.2.2. Enjoy! https://pypi.python.org/pypi/flask-whooshee/0.2.2


unexpected token import if use of import with promise

Prerequisites

[x] Checked that your issue isn't already filed by cross referencing issues with the common mistake label
[x] Checked next-gen ES issues and syntax problems by using the same environment and/or transpiler configuration without Mocha to ensure it isn't just a feature that actually isn't supported in the environment in question or a bug in your code.
[x] 'Smoke tested' the code to be tested by running it outside the real test suite to get a better sense of whether the problem is in the code under test, your usage of Mocha, or Mocha itself
[x] Ensured that there is no discrepancy between the locally and globally installed versions of Mocha. You can find them with:
node node_modules/.bin/mocha --version(Local) and mocha --version(Global). We recommend avoiding the use of globally installed Mocha.

Description
Using a setup wit react and webpack 3, js/jsx is transpiled with babel preset es2015. Of course we use import to get the components, no problems so far. For code splitting we also use import with promises within functions. Running the test we now get the error "unexpected token import". Webpack itself runs without problems and creates the needed bundles.
Steps to Reproduce
no problems with usual import like
import React, { Component, PropTypes } from 'react';
problems occur with promises to split the code:
    importLayout() {
        import('./foobar/index').then(module => {
            this.setState({ foobar: module.default });
        });
    }

In earlier Versions of Webpack this was done with require.ensure
the testing-script in package.json contains
mocha --compilers js:babel-register
Expected behavior:
Mocha has no problems wit the regular import, there should'nt be problems with the promises neither
Actual behavior:
Syntax Error while testing "unexpected token import"
The test is interrupted
Reproduces how often:
always happening
Versions
If applicable, please specify:

The output of mocha --version and node node_modules/.bin/mocha --version: 3.5.3
The output of node --version: v8.4.0
The version and architecture of your operating system: Mac OSX Sierra
Your shell (bash, zsh, PowerShell, cmd, etc.): Darwin
Your browser and version (if running browser tests): Any Browser, e.g. latest Chrome
Any other third party Mocha related modules (with versions):
The code transpiler being used: 6.26.0 (babel-core 6.26.0)

Additional Information
Also tried with the latest version of Mocha without success

I could be wrong as I'm not an expert on it, but it seems far more likely to me that use of import as a function in that example is not being correctly transpiled than that the imported value being a promise would make any difference. You might try replacing import(...).then with import promise from ...; promise.then as a workaround if you can't find the right transpiler configuration.
Am I understanding correctly that this works in Webpack but not with Babel without Webpack? If so, that would point toward Babel configuration problems -- although alternatively you might try testing the modules bundled by Webpack instead of just running Mocha with Babel (this is more complex but may be a more realistic test case if the package is meant to be used in its bundled form).
Mocha has no ability to affect this. All it does is use require to load the transpiler; after that it's up to the transpiler to do its job.

The transpiler (babel) has no problems with it, Webpack has no problems with it - only Mocha does. The App itself runs properly...
import().then() can not be replaced by import from as the wanted behaviour is code splitting.

how are you executing Mocha?

also please provide a relevant test or harness

as mentioned above by a package.json script: mocha --compilers js:babel-register. The whole statement:
"test-with-coverage": "export NODE_PATH=./src:./tests && find ./src -name '*.spec.js' | xargs nyc --require babel-register --require babel-polyfill mocha --compilers js:babel-register --require ./tests/helpers.js --require ignore-styles -R spec"
Right now 138 test are running, usually without problems ;)
I do not think the tests are special, like so:
import React from 'react';
import myComponent from './myComponent.js';

describe('(Component) myComponent', () => {
    let props = {};

    beforeEach(() => {
        props = {
            ... some props
        };
    });

    it('should not show any error as default', () => {
        // act
        const container = shallow(<MyComponentView {...props} />);
        // do something

        //assert
        expect(...).to.have.length(0);
    });
});

As i said: everything is running, only if a add the function above i run into syntax errors.
thanks for your feedback, cheers jo

afaik import() is not recognized as a valid function name in Node.js even with the --experimental-modules flag unless babel knows to do something with it (and certainly the 2015 preset won't).  so you'll need to run tests against a bundle somehow.  best bet is read webpack docs about it; I'm not sure what's the best solution nowadays.

Whats about some kind of comment to tell mocha it should ignore the next lines?

the syntax error is coming out of the javascript runtime not mocha


Remove trailing spaces

Formatting issues will be solved with issue #38 or when we'll do a complete project format using clang-format... sorry...


Refactor encoder-related code into EncoderComponent

Allow users to create multiple encoders for each CameraComponent and StereoComponent

Add EncoderComponent
Ensure encoder compatible size when creating EncoderComponent
Remove encoders from CameraComponent and StereoComponent
Remove encoded output from NNComponent

Tested with multiple CameraComponent, StereoComponent, recording and replaying.

@OpeningNew also update all examples that use videoEnc funcitonality.


Review channel order in z-file

Since implementing the new mt_metadata-based Processing class, the z-files are now ordered:

Hx, Hy, Ex, Ey, Hz

But they used to be ordered

Hx, Hy, Hz, Ex, Ey

There doesn't seem to be a problem here, but there may be some hard coded assumptions about this ordering.
We should scrub the code for this possibility, and in general move the z-file writting out of tf_collection and use the method in mt_metadata.  Created enhancement request in mt_metadata for this https://github.com/kujaku11/mt_metadata/issues/84

z-files are now handled in mt_metadata and channel ordering is addressed.


Incorrect examples for az acr network-rule add

Describe the bug
When running the command az acr network-rule add --name <acr_name> --subnet <subnet_id>, it tells me that the subnet property is deprecated and it will be removed.
The documentation page, doesn't show these properties in the command description, but it uses them in the examples. It isn't very clear.
Another thing is the description of certain properties, they aren't very descriptive. In the same page, there's reference to the resource group, but it doesn't specify which resource group. Is it for the vnets? Is it for the container registry?
Related command
az acr network-rule add --name <acr_name> --subnet <subnet_id>
Errors
Argument 'subnet' has been deprecated and will be removed in a future release.
Issue script & Debug output
N/A
Expected behavior
N/A
Environment Summary
azure-cli                         2.51.0
core                              2.51.0
telemetry                          1.1.0
Dependencies:
msal                            1.24.0b1
azure-mgmt-resource             23.1.0b2
Python location '/opt/az/bin/python3'
Extensions directory '/home/vmadmin/.azure/cliextensions'
Python (Linux) 3.10.10 (main, Jul 27 2023, 07:10:25) [GCC 11.3.0]
Legal docs and information: aka.ms/AzureCliLegal
Your CLI is up-to-date.
Additional context
No response

Thank you for opening this issue, we will look into it.

@hugo-paredes The PR for the fix has been created and it will be merged soon. Thanks again for pointing this out, I am closing the issue based on this update, please let us know if there is something else that we can help you with.


Cache developer badges to a new model

Developers can now have up to two badged on their profile and more are coming soon. Before we add anything new I'd like a single place to reference and cache the existing ones.
A PR addressing this issue should:

[ ] Create a new Developers::Badge model and table
[ ] Cache the "recently active" status to this new model
[ ] Ensure the status is updated when appropriate
[ ] Migrate developers.source_contributor to the new table
[ ] Ensure the admin form works with the new modeling

I'd like to take this on!

All yours! Thank you!

Couple questions,
I'm thinking it would be creating a table like this
   create_table :developers_badges do |t|
     t.belongs_to :developer
     t.boolean :recently_active, null: false, defualt: false
     t.boolean :source_contributor, null: false, default: false
     t.timestamps
   end

Backfill the data, should this been done through a lib task?
Developer.all.find_each do |developer|
  developer.badge.create!(
    recently_active: developer.recently_active?
    source_contributor: developer.source_contribuitor?
  )
end

For updating the data, I was thinking of a cron job on a set period of time
Developer
  .joins(:developer_badge)
  .where(updated_at: >= Developer::RECENTLY_ACTIVE_LENGTH.ago)
  .update_all(recently_active: false)

Also would need to update them to be active, so I was thinking of maybe on ApplicationController updating it
Some sudo code but would like to get your feedback!

The table looks good to me. And I imagine we will need to add/update more fields in the future so the cron job also sounds like a good idea.
The backfill can live in the dedicated backfill task. And the cron job can be a different task perhaps - not sure the best spot for that yet. I think the job can be run once per day and still get us what we want.
I know it is pseudo code, but we also want to make sure we are updating the recently active field to true when necessary. This PR should ensure that those calls are in place if they aren't already.

We will also probably need to split this into 2 PRs. One to add the migrations and migrate the data. And a second to switch over to the new code path. Otherwise we might deploy without the data being backfilled yet.

Doing some Spring cleaning and this issue is pretty stale. I'm going to close it out for now. But feel free to open a PR if you have something ready!


python3Packages.sanic: skip tests on all archs

Motivation for this change
ZHF: https://github.com/NixOS/nixpkgs/issues/144627
Sanic is broken again, this time on x86_64-linux: https://hydra.nixos.org/build/158258224/nixlog/1.
Let's just disable the tests on all archs. This should avoid any surprises in the future.
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 146706 run on x86_64-linux 1

2 packages marked as broken and skipped:

python38Packages.pytest-sanic
python39Packages.pytest-sanic

13 packages built:

dyndnsc
python38Packages.entrance
python38Packages.entrance-with-router-features
python38Packages.json-logging
python38Packages.sanic
python38Packages.sanic-auth
python38Packages.sanic-testing
python39Packages.entrance
python39Packages.entrance-with-router-features
python39Packages.json-logging
python39Packages.sanic
python39Packages.sanic-auth
python39Packages.sanic-testing

CC @jonringer since it helped me on the last PR.

I'm still getting a lot of failures on macos 10.15:
builder for '/nix/store/rqz1bs1c21nv7srhgixgnaqrl5vqbbrr-python3.8-sanic-21.9.1.drv' failed with exit code 2; last 10 log lines:
           - tests/test_server_events.py:48 test_single_listener[after_server_stop]
           - tests/test_server_events.py:59 test_register_listener[after_server_start]
           - tests/test_server_events.py:59 test_register_listener[before_server_stop]
           - tests/test_server_events.py:59 test_register_listener[after_server_stop]
           - tests/test_server_events.py:74 test_all_listeners
           - tests/test_server_events.py:85 test_all_listeners_as_convenience
           - tests/test_server_events.py:97 test_trigger_before_events_create_server
           - tests/test_server_events.py:186 test_missing_startup_raises_exception
         2 error
        75 deselected

I'm still getting a lot of failures on macos 10.15:
builder for '/nix/store/rqz1bs1c21nv7srhgixgnaqrl5vqbbrr-python3.8-sanic-21.9.1.drv' failed with exit code 2; last 10 log lines:
           - tests/test_server_events.py:48 test_single_listener[after_server_stop]
           - tests/test_server_events.py:59 test_register_listener[after_server_start]
           - tests/test_server_events.py:59 test_register_listener[before_server_stop]
           - tests/test_server_events.py:59 test_register_listener[after_server_stop]
           - tests/test_server_events.py:74 test_all_listeners
           - tests/test_server_events.py:85 test_all_listeners_as_convenience
           - tests/test_server_events.py:97 test_trigger_before_events_create_server
           - tests/test_server_events.py:186 test_missing_startup_raises_exception
         2 error
        75 deselected

Failing for me too. I will just skip them...

Failing for me too. I will just skip them...

Actually, it is working fine. The issue was the use of nixpkgs-review (that builds the package in parallel resulting in many failed tests because of this issue). However building one of them each time works fine.
Can you try @risicle?

Confirmed. Don't know why I didn't think of this. Darwin's sandboxing inadequacy continues to cause pain.
I wonder whether a DYLD_INSERT_LIBRARIES interposing trick similar to libredirect (except intercepting network calls) might help this kind of situation. It would simply need to perform a pseudorandom remapping of port numbers based on a seed value specified in another environment variable.

@cole-h another


Upgrade org.testng:testng 7.7.1 -> 7.8.0

This PR contains the following updates:

Package
Type
Update
Change

org.testng:testng (source)
compile
minor
7.7.1 -> 7.8.0

Release Notes

testng-team/testng
v7.8.0: TestNG v7.8.0
Compare Source
What's Changed

XmlTest index is not set for test suites invoked with YAML by @sbaranov-parasoft in https://github.com/testng-team/testng/pull/2859
Listener's onAfterClass is called before @AfterClass configuration methods are executed. by @oliver-hughes in https://github.com/testng-team/testng/pull/2865
After upgrading to TestNG 7.5.0, setting ITestResult.status to FAILURE doesn't fail the test anymore by @juherr and @krmahadevan in https://github.com/testng-team/testng/pull/2872 and https://github.com/testng-team/testng/pull/2864
JUnitReportReporter should capture the test case output at the test case level by @JamesSassano in https://github.com/testng-team/testng/pull/2876
[Feature] Allow test classes to define "configfailurepolicy" at a per class level by @krmahadevan in https://github.com/testng-team/testng/pull/2869
TestNG.xml doesn't honour Parallel value of a clone by @krmahadevan in https://github.com/testng-team/testng/pull/2878
before configuration and before invocation should be 'SKIP' when beforeMethod is 'skip' @bobshie in https://github.com/testng-team/testng/pull/2881
Test listeners specified in parent testng.xml file are not included in testng-failed.xml file by @krmahadevan in https://github.com/testng-team/testng/pull/2882
Discrepancies with DataProvider and Retry of failed tests by @krmahadevan in https://github.com/testng-team/testng/pull/2885
Skipped Tests with DataProvider appear as failed by @jmoreira18 in https://github.com/testng-team/testng/pull/2889
testng-results xml reports config skips from base classes as ignored by @krmahadevan in https://github.com/testng-team/testng/pull/2887
Feature: Check that specific object present in List by @dbudim in https://github.com/testng-team/testng/pull/2902
Upgrade snakeyaml to 2.0 by @labianchin in https://github.com/testng-team/testng/pull/2903
[Feature] Not exception but warning if some (not all) of the given test names are not found in suite files. by @wenijinew in https://github.com/testng-team/testng/pull/2900
[Feature] Generate testng-results.xml per test suite by @krmahadevan in https://github.com/testng-team/testng/pull/2908

New Contributors

@sbaranov-parasoft made their first contribution in https://github.com/testng-team/testng/pull/2859
@oliver-hughes made their first contribution in https://github.com/testng-team/testng/pull/2865
@jmoreira18 made their first contribution in https://github.com/testng-team/testng/pull/2889
@Iuri1012 made their first contribution in https://github.com/testng-team/testng/pull/2894
@dbudim made their first contribution in https://github.com/testng-team/testng/pull/2902
@labianchin made their first contribution in https://github.com/testng-team/testng/pull/2903
@wenijinew made their first contribution in https://github.com/testng-team/testng/pull/2900

Full Changelog: https://github.com/testng-team/testng/compare/7.7.1...7.8.0

[ ] If you want to rebase/retry this PR, check this box

Suggested commit message:
Upgrade testng 7.7.1 -> 7.8.0

See:
- https://github.com/testng-team/testng/releases/tag/7.8.0
- https://github.com/testng-team/testng/compare/7.7.1...7.8.0

I'd say we would like to use TestNG as name for the dependency right?

Ah, indeed :+1:

Filed a PR internally.


[WIP]: Fix #4350: VSC can send textDocument/didChange incrementing version by any number.

Requires #4453 to finish

Looks good so far. Make sure to ping us when you remove the WIP marker.

@AlexanderSher said it can be merged