Don't fallback to tempdir when required directories exist.

What was the end-user problem that led to this PR?
When running Omnibus packaged software with updated bundler, a warning is displayed because the home folder is not owned by the user:
`/var/opt/gitlab` is not writable.
Bundler will use `/tmp/bundler/home/root' as your home directory temporarily.

There are valid reasons why this is desired, and I don't have control over it. What I can do is create the required folders used by bundler and provide them with the right permissions.
See https://github.com/bundler/bundler/issues/6546
What was your diagnosis of the problem?
In practice instead of asking for permission on a higher level, if required folders are present and they have the right permissions, we shouldn't fallback to warning + temp directory, we should just use what is provided.
What is your fix for the problem, implemented in this PR?
When home directory is not writable, but the required .gem and .bundle
are, we should use them instead of falling back to use tempdirs.
This creates a workaround for more restrictive setups using Omnibus
Docker or any hardened setup, to overcome the annoyances introduced by #4951.
Why did you choose this fix out of the possible options?
This allows for distributions, package maintainers, etc to provide an alternative while keeping their hardenings requirements.
When provided the required folders with the required ownership/permission, we should not bother by not having any write permissions on the $HOME directory.

@segiddins code now checks only .bundle directory

Is the ‘.bundle’ folder not defined anywhere in SharedHelpers or in Bundler? I’m concerned about having a hard coded string.

@colby-swandale There are other 3 relevant hard-coded '.bundle' strings in the same lib/bundler.rb:
https://github.com/brodock/bundler/blob/facf62525b61f675e2ec6f54099aa36102c254a9/lib/bundler.rb#L200
https://github.com/brodock/bundler/blob/facf62525b61f675e2ec6f54099aa36102c254a9/lib/bundler.rb#L245
https://github.com/brodock/bundler/blob/facf62525b61f675e2ec6f54099aa36102c254a9/lib/bundler.rb#L274

Thanks for finding that out, we will have to refactor that out in the future.

@colby-swandale done :)

Thanks! @bundlerbot r+


Redesign on-disk layout of the agent/server

Currently, the on disk layout in /var/lib/inmanta is quite confused. In iso8, this should be cleaned up

Hey team! Please add your planning poker estimate with Zenhub @arnaudsjs @hlloreda @Hugo-Inmanta @jptrindade


Fixes spacing & indentation issues which scrutinizer is complaining about.

I noticed in my previous PR that scrutinizer was complaining about some whitespace issues. These should get fixed by this PR.
Only whitespaces got changed, you can check this using: https://github.com/rosell-dk/webp-convert/pull/247/files?w=1

Only one warning left, it's complaning about the fact that we shouldn't align the comments on these lines: https://github.com/rosell-dk/webp-convert/blob/47232b3e85d05d933c1da23349ebb03ef8939e0c/src/Convert/Converters/Wpc.php#L52-L55
I didn't fix these for now, since I also like these alignments. But if they need fixing as well, I can still update my PR.

thanks :)


Allow implicit closure with capture of &self via member name notation

Given a code fragment like the following:
struct Test;

impl Test {
    fn generator(&self, value: &str) -> String {
        return format!("Hello, {}!", value);
    }

    fn evaluate_and_print<F>(&self, f: F)
        where F : (Fn(&str) -> String)
    {
        println!("{}", f("rustacean"));
    }

    pub fn test(&self) {
        self.evaluate_and_print(self.generator);
    }
}

fn main() {
    let t = Test;
    t.test();
}

Currently, this returns the following error:
error[E0615]: attempted to take value of method `generator` on type `&test`
  --> test.rs:15:38
   |
15 |         self.evaluate_and_print(self.generator);
   |                                      ^^^^^^^^^
   |
   = help: maybe a `()` to call it is missing?

error: aborting due to previous error

My proposal is for the syntax
        self.evaluate_and_print(self.generator);

to be interpreted as being equivalent to
        self.evaluate_and_print(move |x| self.generator(x));

and in the more general case
        fn foo(&self, p1, p2, ..., pn) -> { ... }
        ....
        self.evaluate_and_print(self.generator);

to be interpreted as being equivalent to
        fn foo(&self, p1, p2, ..., pn) -> { ... }
        ....
        self.foo(move |p1, p2, ..., pn| self.generator(p1, p2, ..., pn));

For a single variable as shown it is certainly not much of an obstacle, but in the case of multiple variables, evolving code, etc. it can quickly become a burden to have to revisit all invocations and convert them to closures. Additionally, the syntax is straightforward and the behavior is intuitive.

be aware this creates an ambiguity with fields that are callable, since fields and methods live in different namespaces.
fn print_func<F: FnOnce() -> &'static str>(f: F) {
    println!("{}", f());
}

struct Struct {
    generator: fn() -> &'static str,
}

impl Struct {
    fn new() -> Self {
        Struct {
            generator: || "Live from New Delhi!"
        }
    }

    fn generator(&self) -> fn() -> &'static str
    { || "Live from New York!" }
}

fn main() {
    let x = Struct::new();
    print_func(x.generator); // Currently prints "Live from New Delhi!"
}

Also I'm not sure about the move closure.
impl Struct {
    fn takes_ref(&self) { }
    fn takes_self(self) {
        do_a_thing(self.takes_ref); // exands to do_a_thing(move || self.takes_ref())
        do_a_thing(self.takes_ref); // error: 'self' already moved
    }
}

So I think it would have to be move conditionally based on whether or not the method being eta-expanded takes self.  This isn't a huge issue, but it defeats trying to describe it as a simple-to-understand syntactic transform.

cc https://github.com/rust-lang/rfcs/issues/1287 https://internals.rust-lang.org/t/pre-rfc-unify-bindings-to-callables/4677

Closing in favor of https://github.com/rust-lang/rfcs/issues/1287.


FIX: andReturn(), andThrow(), andCall() clear each other

Previously once spy.andCall() was set, spy.andThrow() and spy.andReturn() were essentially overridden because the called function set by spy.andCall() was not unset and a set thrown value or set return value was ignored.
This fix ensures each above call clears out the others' returned values/functions.

Thanks for the PR, but I think I'd prefer to warn (or maybe even throw) instead of just clearing out the value. This code doesn't doesn't actually make any sense.
createSpy().andReturn(...).andThrow(...)

Maybe I can explain better with an example. Forgive me if this is too contrived, but I'll try to illustrate a real use case.
import Foo from './foo'
import UsedByFoo from './used-by-foo'

describe('Foo', () => {
  beforeEach(() => {
    // set up UsedByFoo.someService() to return a new string based on the input
    // this keeps my tests DRY so I don't have to repeatedly use the following lines
    spyOn(UsedByFoo, 'someService').andCall((input) => {
      return input + ' response'
   })
  })
  afterEach(() => {
    // i want to clear out the call counter every time
    UsedByFoo.doSomething.reset()
  })
  it('mutate() called with [string] calls UsedByFoo.doSomething() with [string] and returns its result', () => {
    const result = Foo.mutate('bar')
    expect(result).toBe('bar result')
    expect(UsedByFoo.doSomething).toHaveBeenCalledWith('bar')
  })
  /*
    suppose several more tests similar to above
    now, i want to do a one-off test:
  */

  it('mutate() called with [string] and UsedByFoo.doSomething() returns falsy, it should throw', () => {
    /*
    currently, this test will fal.
    the .andCall() from the 'beforeEach()' will still be implemented
    of course i could add the following line:
      UsedByFoo.doSomething.andCall(null)
    and that would fix everything, but without digging into the source code of spy, I would have been scratching my head
    */
    UsedByFoo.doSomething.andReturn(false)
    expect(() => {
      Foo.mutate('bar')
    }).toThrow()
  })
})

Of course, there are many ways to workaround this, but it seems like the latest spy.andReturn() or spy.andThrow() should overwrite the previously set return responses.


[$250] When you copy text that has an apostrophe (eg, don't) and then "paste without formatting", it pastes don’t

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:

Send a message with a ' in it
Copy it (Command+C)
Paste it in newDot (Shift+Command+V)

Expected Result:
Text should be pasted without html
Actual Result:
When you copy text from NewDot on Chrome desktop that has an apostrophe (eg, don't) and then "paste without formatting" (ie, Shift+Command+V), it pastes in a weird way: don’t.  Incidentally, it pastes that way everywhere (ie, it did just now into Slack), so the problem must be at the time of copy -- it's putting it onto the clipboard in a weird way.  Also interesting, if I paste normally (ie, Command+V) into Slack, it pastes wrong: don’t, but if I paste normally into NewDot it pasts right.  I think it has something to do with us trying to preserve HTML formatting and transform it back to Markdown, or something
Workaround:
unknown
Platform:

Where is this issue occurring?

Desktop App

Version Number: 1.1.88-4
Reproducible in staging?: Y
Reproducible in production?: Y
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation

Expensify/Expensify Issue URL:
Issue reported by: @quinthar @iwiznia
Slack conversation: https://expensify.slack.com/archives/C01GTK53T8Q/p1660824818440579 https://expensify.slack.com/archives/C01GTK53T8Q/p1660298688922279
View all open jobs on GitHub

Looks like a straightforward external issue. Adding the labels.

https://www.upwork.com/jobs/~011945cb0d4454fc97
https://www.upwork.com/ab/applicants/1561713563518566400/job-details

Proposal
We need to decode the text from the clipboard if it's not text/html. We can use the Str.hmltDecode from expensify-common to decode the text.
https://github.com/Expensify/App/blob/e21736d87cc1ed95c1f64a54040ce242ced7ebc0/src/components/Composer/index.js#L311-L312
+            return;
        }

+        event.preventDefault();
+        const plainText = event.clipboardData.getData('text/plain');
+        try {
+            document.execCommand('insertText', false, Str.htmlDecode(plainText));
+            this.updateNumberOfLines();

+            this.textInput.blur();
+            this.textInput.focus();
+        } catch (e) {}

For growl notification showing when pasting the text, we can add more checks on the img tag with embeddedImages[0].src. When pasting the text with CMD+V, the text has an empty img tag.
https://github.com/Expensify/App/blob/e21736d87cc1ed95c1f64a54040ce242ced7ebc0/src/components/Composer/index.js#L281
+  if (embeddedImages.length > 0 && embeddedImages[0].src) {

Result
https://user-images.githubusercontent.com/25520267/187060703-087046f0-8901-4d6c-abdf-107c1b83e268.mov

@mananjadhav any thoughts on the above?

Please allow me a day to check.

@mananjadhav how are you getting on with this one?

Thanks for the being @kadiealexander, I was catching up on the slack conversation.
@mvtglobally Do we have any reproduction steps for the growl error message? I am able to reproduce this for encoded string but no growl message.
Meanwhile @chiragsalian, I checked @mollfpr's proposal here and it looks good to me.

@mananjadhav team is planning to move away from growls soon.
Don't have the steps to trigger it currently

Correct yes, no need to worry about the growl for now.
The proposal looks good to me too. I would like to offer some suggestions to the proposal.

Create a method called paste(text) that contains,

try {
    document.execCommand('insertText', false, text);
    this.updateNumberOfLines();

    // Pointer will go out of sight when a large paragraph is pasted on the web. Refocusing the input keeps the cursor in view.
    this.textInput.blur();
    this.textInput.focus();
// eslint-disable-next-line no-empty
} catch (e) {}

Then have your block call paste(Str.htmlDecode(plainText)) at the end.
Replace the same block in handlePaste to call paste(markdownText).

This way the same 8 lines of execCommand logic is not duplicated.
Rest LGTM, feel free to create the PR @mollfpr.

Thanks @chiragsalian

Reassigning as I'm ooo for the next 9 days.

@trjExpensify I just applied to the Upwork job, thanks!

Cool, offers are sent out to both you and @mananjadhav to accept! 👍

Haha, @mananjadhav, do you have a script running? Instant accepted! ;) Settled up!

Cool, @mollfpr also settled. We're done here - thanks everyone! 🎉

@trjExpensify  🤑


Generic AST traversal

There are quite a few changes here so I'll try to break them down as best I can:
Generally simplified the _bindings and _requirements modules
The _bindings and _requirements modules both perform AST traversal so they share a lot of behavior. By extracting the common functionality of both modules to a new module, named _visitor, I was able to significantly reduce the size of both modules.
Improved overall performance
My initial intention was to utilize existing functionality from the standard library ast module to simplify the AST traversal done in both the _bindings and _requirements modules. However, after running some primitive benchmarks and realizing an over 20% reduction in performance I decided to scrap the idea. Instead, I put together the _visitors module and implemented a high speed alternative to the ast.NodeVisitor class. Swapping out the previously used functools.singledispatch AST traversal approach for the _visitor.NodeVisitor resulted in performance improvements in the 10%-15% range.
Fixes
While making the above changes I ran into a few existing issues which I fixed:

Fixed bindings not being discovered in return statements (test case).
Fixed bindings not being discovered in exception handler type expressions (test case).
Fixed dict not resolving requirements from its keys (test case)
Fixed augmented assignment not resolving requirements from its target (test case)
Fixed annotated assignment not resolving requirements from its annotations (test case)
Fixed functions and lambdas not resolving requirements from their arguments and annotations (test case)
Enabled walrus tests for Python 3.8 (test case)
Fixed with statement not resolving requirements from its optional_vars (test case)
Fixed for statement not resolving requirements from its target (test case)

Type annotations
Additionally, I added type annotations to the _bindings, _requirements, and _visitor modules.

First things first:  this is fantastic work, thank you.
Regarding your list of bugs: did you have a shortcut to finding them, or was it a case of just putting in the work, reading the code carefully and writing the tests?
Regarding performance: thanks for checking.  The hit for ast.walk was not as bad as I had feared, but I think this is a better solution.
One thing that is interesting to me is the choice between visiting in source code order and evaluation order.  The requirements code and most of the bindings code were written at different times (grrrrrr walrus operator) and it looks like I made a different call with each of them.  It should make zero difference to the final sort order, so I'm not going to overthink it.

Regarding your list of bugs: did you have a shortcut to finding them, or was it a case of just putting in the work, reading the code carefully and writing the tests?

I think most, if not all, of the bugs I found where simple cases where a specific field on a specific type of AST node was ignored or not traversed as deep within the AST as it should have been. Take the function and lambda arguments fix for example, by comparing the implementation of _get_requirements_for_function_def to the signature of ast.FunctionDef it was fairly apparent that the implementation missed the traversal of the ast.FunctionDef.args field. From there, I wrote a test case which contained requirements in a functions arguments and validated that the currently implementation did not properly handle that case. Repeat that process for all _get_bindings_for_* and _get_requirements_for_* functions and I was able to snuff out quite a few bugs.

I think your earlier approach with singledispatch and ast.iter_child_nodes was cleaner. It makes what you are doing with each child node more explict (get_bindings/get_requirements vs self.visit), and I suspect that it will generalise better to _method_requirements.py. Can your register_visitor/_find_visitor_methods combo be merged to keep the 10% to 15% speedup over singledispatch with functions rather than methods, or do you think the speedup comes from somewhere else?

Using ast.iter_fields was certainly the cleaner approach (and I just  realized it could be even cleaner if I used ast.iter_child_nodes instead of ast.iter_fields) as it completely avoided all the boilerplate in the _visitor module. However, I felt the loss in performance wasn't acceptable. As for the _visitor module itself, I believe most of the speed up comes from avoiding functools.singledispatch and instead using a single dictionary lookup in it's place. I don't think it would be too difficult to keep the _visitor module functionality but expose it through an interface similar to functools.singledispatch to maintain that cleanliness you are referring to. I'll try playing around with it.

Repeat that process for all get_bindings_for* and get_requirements_for* functions and I was able to snuff out quite a few bugs

That sounds an awful lot like putting in the work.  I'm very grateful that someone did it.

Move recursion entirely into get_requirements: Make the visitor just yield immediate child nodes and for child in visit(node): yield from get_requirements(child) as the default implementation.

Ok, I cleaned things up to align with the above specification; however, it's was difficult to do so without taking a significant performance hit. f6a1e2c has performance roughly equivalent to master so we lost the 15% speed up.
Ultimately, it seems this comes down to a trade off between cleanliness and performance.

Performance requirements are basically arbitrary.  I think you have the right balance here.
I'm guessing from the lack of fanfare that this doesn't give us 3.10 support straight off, but I don't see the gap.  Does isinstance(node.ctx, ast.Store) not cover bindings in the match?
In any case, this seems like the right place to make the cut.  Will merge and make a new release to get your bug fixes out.
Fantastic work.

Released as version 0.11.1.  Thank you very much.

I'm guessing from the lack of fanfare that this doesn't give us 3.10 support straight off, but I don't see the gap. Does isinstance(node.ctx, ast.Store) not cover bindings in the match?

This, for the most part, should provide 3.10 support; however, there are no 3.10 unit tests. I’m guessing there may be some edge cases with match statements which aren’t fully captured by these changes.
Next steps are to simplify the _method_requirements module in a similar fashion to the _bindings and _requirements modules and then to work on 3.10 test coverage.


DotNetTypeAdapter - treat init-only properties as non-settable

PR Summary
This PR modifies the .NET type adapter to respect the IsExternalInit modifier on property setters.
IsExternalInit is the mechanism through which the C# 9.0 specification implements support for init-only setters - properties that can only be set during instantiation, after which they're considered read-only by the compiler.
By inspecting the property setter's return parameter we can similarly discover the IsExternalInit modifier on runtime types, and change the behavior of ETS to reject attempts to set init-only properties by having Adapter.PropertyIsSettable() reflect whether the modifier was found.

PR Context

As reported in https://github.com/PowerShell/PowerShell/issues/13819, PowerShell has no current facility for detecting init-only
properties, and what the C# compiler would now treat as read-only properties are suddenly writable/settable at runtime:
PS ~> $PSVersionTable['PSVersion'] -as [string]
7.2.0
PS ~> Add-Type @'
>> public class InitOnlyValue {public long Value {get; init;}}
>> '@
PS ~> $value = [InitOnlyValue]@{ Value = 123 }
PS ~> $value

Value
-----
  123

PS ~> $value.Value = 456
PS ~> $value

Value
-----
  456

PS ~> $value |Get-Member -MemberType Properties

   TypeName: InitOnlyValue

Name  MemberType Definition
----  ---------- ----------
Value Property   long Value {get;set;}

After we apply the changes in this PR, PowerShell's behavior reflects that of C# (and VB.NET):
PS ~> $value = [InitOnlyValue]@{ Value = 123 }
PS ~> $value

Value
-----
  123

PS ~> $value.Value = 456
InvalidOperation: 'Value' is a ReadOnly property.
PS ~> $value |Get-Member -MemberType Property

   TypeName: InitOnlyValue

Name  MemberType Definition
----  ---------- ----------
Value Property   long Value {get;}

PR Checklist

[X] PR has a meaningful title

Use the present tense and imperative mood when describing your changes

[X] Summarized changes
[X] Make sure all .h, .cpp, .cs, .ps1 and .psm1 files have the correct copyright header
[X] This PR is ready to merge and is not Work in Progress.

If the PR is work in progress, please add the prefix WIP: or [ WIP ] to the beginning of the title (the WIP bot will keep its status check at Pending while the prefix is present) and remove the prefix when the PR is ready.

Breaking changes

[X] None
OR
[ ] Experimental feature(s) needed

[ ] Experimental feature name(s):

User-facing changes

[X] Not Applicable
OR
[ ] Documentation needed

[ ] Issue filed:

Testing - New and feature

[ ] N/A or can only be tested interactively
OR
[X] Make sure you've added a new test if existing tests do not effectively test the code changed

Tooling

[X] I have considered the user experience from a tooling perspective and don't believe tooling will be impacted.
OR
[ ] I have considered the user experience from a tooling perspective and opened an issue in the relevant tool repository. This may include:

[ ] Impact on PowerShell Editor Services which is used in the PowerShell extension for VSCode
(which runs in a different PS Host).

[ ] Issue filed:

[ ] Impact on Completions (both in the console and in editors) - one of PowerShell's most powerful features.

[ ] Issue filed:

[ ] Impact on PSScriptAnalyzer (which provides linting & formatting in the editor extensions).

[ ] Issue filed:

[ ] Impact on EditorSyntax (which provides syntax highlighting with in VSCode, GitHub, and many other editors).

 In general, a change size of upto 200 lines is ideal for the best PR experience!
Quantification details
Label      : Extra Small
Size       : +26 -2
Percentile : 11.2%
Total files changed: 2
Change summary by file extension:
.cs : +7 -2
.ps1 : +19 -0
Change counts above are quantified counts, based on the PullRequestQuantifier customizations.
Why proper sizing of changes matters
Optimal pull request sizes drive a better predictable PR flow as they strike a
balance between between PR complexity and PR review overhead. PRs within the
optimal size (typical small, or medium sized PRs) mean:

Fast and predictable releases to production:

Optimal size changes are more likely to be reviewed faster with fewer
iterations.
Similarity in low PR complexity drives similar review times.

Review quality is likely higher as complexity is lower:

Bugs are more likely to be detected.
Code inconsistencies are more likely to be detetcted.

Knowledge sharing is improved within the participants:

Small portions can be assimilated better.

Better engineering practices are exercised:

Solving big problems by dividing them in well contained, smaller problems.
Exercising separation of concerns within the code changes.

What can I do to optimize my changes

Use the PullRequestQuantifier to quantify your PR accurately

Create a context profile for your repo using the context generator
Exclude files that are not necessary to be reviewed or do not increase the review complexity. Example: Autogenerated code, docs, project IDE setting files, binaries, etc. Check out the Excluded section from your prquantifier.yaml context profile.
Understand your typical change complexity, drive towards the desired complexity by adjusting the label mapping in your prquantifier.yaml context profile.
Only use the labels that matter to you, see context specification to customize your prquantifier.yaml context profile.

Change your engineering behaviors

For PRs that fall outside of the desired spectrum, review the details and check if:

Your PR could be split in smaller, self-contained PRs instead
Your PR only solves one particular issue. (For example, don't refactor and code new features in the same PR).

How to interpret the change counts in git diff output

One line was added: +1 -0
One line was deleted: +0 -1
One line was modified: +1 -1 (git diff doesn't know about modified, it will
interpret that line like one addition plus one deletion)
Change percentiles: Change characteristics (addition, deletion, modification)
of this PR in relation to all other PRs within the repository.

Was this comment helpful?  👍   👌   👎 (Email)
Customize PullRequestQuantifier for this repository.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

@SeeminglyScience @JustinGrote Please review.

Looks great! I echo @iSazonov's comment about maybe omitting the initOnly field. Did the hashtable conversion path (aka object init) code path not need any changes?

I'm reluctant since it makes the adapter code more readable to have the distinction IMO, but I'm happy to remove it if there are any arguments better than "technically it's not strictly needed" available.
WRT hashtable-initialization: Nope - this is the beauty of using the type adapter - from a hashtable cast, the compiler will generate an expression tree that 1) invokes the default constructor on the target type and then 2) sets the properties and fields subsequently. Since this happens directly against the runtime and not via ETS, our new settability-restriction doesn't apply

What are we waiting for here? Anything I can do to move it forward?

@daxian-dbw  Can you please review?

Just to set expectations: I am NOT going to refactor 6000 lines of half-a-decade-old code as part of this PR ^_^

@daxian-dbw *nudge nudge* :)

@IISResetMe Sorry about the delays. I will try to get to this PR next week.

@IISResetMe Sorry that I won't be able to get to this PR this week. All my pre-allocated PR review time will most likely be spent on https://github.com/PowerShell/PowerShell/pull/12412 this week. Hopefully, I will get to this PR the next week.

@IISResetMe Sorry that I won't be able to get to this PR this week. All my pre-allocated PR review time will most likely be spent on #12412 this week (I started the review last week and it took more time than I thought). Hopefully, I will get to this PR the next week.

Ah! Who is the person who could double that time besides God? 😄

Time to commence the @daxian-dbw cloning program :)
Thanks for the heads up, I fully understand

Closed based on @daxian-dbw's comments about consistency (and lack of consensus around what that means in the context of PowerShell for this specific feature)


Spacing Issue in the Navbar And HomeNavBar on certain screen sizes

Describe the bug
The spacing between the navbar menu items vanishes below a certain screen size. The home navbar item "Contact Us" gets split below certain screen sizes.
Steps to reproduce the behavior:

Run the app
On the home page, reduce screen size until the issue is seen
Navigate to Projects/Domains, reduce screen size until the spacing vanishes

Expected behavior

On the home navbar, the contents should not split onto 2 lines.
The spacing between menu items on the navbar should not vanish when the screen size is reduced.

Environment (please complete the following information):

OS: Windows 10
Browser: Chrome

The home navbar issue

thanks, @Lawful2002 for the bug report.


Document the user:{id}:resubscribed event and add totalMonths property

@JamyDev, thanks for your PR! By analyzing the blame information on this pull request, we identified @connor4312 to be a potential reviewer

lgtm

👍


icaros-np: remove registry modification

Since v3.3.0 beta 1 the way filetypes are stored in the registry has changed.
From the release notes:

With this release I've changed the way Icaros' property settings are stored in the registry.
Some new features required Icaros to be able to detect what properties was available in a users
previously installed build, and that wasn't possible with the current setup.
...
Icaros will automatically generate this list if it does not already exist, during registration/unregistration.
The list is generated with default values for each filetype.

Therefore it's no longer necessary to set the default filetype registry key manually as it will be created automatically.

[x] I have read the Contributing Guide.

Thanks!


Create DELETE Endpoint

Merge remote-tracking branch 'origin/develop' into develop
495e9028 Miguel Ángel Del Fresno Rodríguez<EMAIL_ADDRESS>on 10/10/2024 at 22:33


H02 engine start/stop and periodic update commands

What do those numbers mean?

I have done some minor refactoring to be more consistent with other code.
Please run checkstyle, findbugs and pmd checks on your code before submitting pull request. You can do it simply by running mvn site command.

OK, next time I'll execute the analyzers.

start cut off fuel and electric S20

XX, YYYYYYYYYY, S20, HHMMSS, C, time1, time2,...Time30 #

C: the ultimate power
C = 0: dynamic cut off fuel and electric.detect the engine instantaneous operation, cut off the
circuit 5 seconds when the engine is running , forcing the engine stopped.
C = 1 or other digital: static cut off fuel and electric.
Dynamic cut off electric does not consume battery power, the engine must be connected to th
e signal (charge indicator) . If you don’t want to connect the signal of engine can use the way of static cut off fuel and ele
ctric.
When the early warning alert, ban to start engine function way is only use dynamic cut off fu
el and electric, so if you want to support a fortification function (handle or fortify the remote
control)
must be connected to the engine signals.
Time: the duration of the action, scope 1 ~ 30, units are seconds, outside the range as5
Example:*TH,0000000000,S20,130305,1,3,10,3,5,5,3,5,3,5,3,5# ;
Car receiver first check set_flag after receiving the command , if it not support off the oil, wi
ll return information directly
*TH,2020916012,V4,S20,ERROR,130305,050316,A,2212.8745,N,11346.6574,E,14.28,028,
220902,FFFFFBFF#
Restore the cutting of oil set the the time1 on S20 command as the “0” , It will reply :
*TH,2020916012,V4,S20,OK,130305,050316,A,2212.8745,N,11346.6574,E,14.28,028,220902,F
FFFFBFF#

This is a snippet from the specification. I've sniffed the competitor webpages and they're sending also this pattern :)


Disable logging for release builds

disable the logo on stdout in release builds
disable the log messages on stdout in release builds

This may be more of a personal preference. Maybe it's not wanted in which case, please ignore this request :slightly_smiling_face:  But it's nice not to have unnecessary output to stdout in release builds (it's a pretty valid point in the Unix philosophy).
The debug build can still have output, but it would be better to put release logs in the log file (which also shouldn't be put in the current working directory, but that's an issue for another time :smile: ).

Thank you for your PR!
Yes, you are completely right, it's nice not to have unnecessary output in stdout in release builds but I've noticed that this will remove the logging completely (also the logging into the log file).
Because the logging gets configured within the config, we have two loggers configured within logging.rs. One works without the config loaded, this logs to stdout and the other one uses the config, this logs to the log file. To disable the stdout logging we just have to set the log level in release builds to Off in the logger that logs to stdout. With this, the log file still gets filled (which is useful when a crash occurs).
To change the directory where the log file is saved, we can just give the logger another directory (currently we use the current working directory). So we could modify the config option log_dir to be paths relative to the home directory. This way, something like
log_dir = ".config/wiki-tui/wiki_tui.log"

would save the log file in the same directory as the config file. Would this way of changing the log directory be better?

Thank you for your PR!
Yes, you are completely right, it's nice not to have unnecessary output in stdout in release builds but I've noticed that this will remove the logging completely (also the logging into the log file).
Because the logging gets configured within the config, we have two loggers configured within logging.rs. One works without the config loaded, this logs to stdout and the other one uses the config, this logs to the log file. To disable the stdout logging we just have to set the log level in release builds to Off in the logger that logs to stdout. With this, the log file still gets filled (which is useful when a crash occurs).
To change the directory where the log file is saved, we can just give the logger another directory (currently we use the current working directory). So we could modify the config option log_dir to be paths relative to the home directory. This way, something like
log_dir = ".config/wiki-tui/wiki_tui.log"

would save the log file in the same directory as the config file. Would this way of changing the log directory be better?

I'll try to make the changes you suggested here. One detail about the recommendation for the log dir, it should probably go in the cache directory, .config is the XDG_USER_CONFIG directory, used for configuration files only. There are some crates on crates.io that provide the standard directories on different platforms, maybe those could be used?

it should probably go in the cache directory, .config is the XDG_USER_CONFIG directory, used for configuration files only. There are some crates on crates.io that provide the standard directories on different platforms, maybe those could be used? crates.io/crates/directories

Yep, that makes sense. We are already using a crate that provides the standard directories on different platforms (dirs) so it wouldn't be much of a hassle to use it to get the cache directory. I will make a PR that moves the log file in a few hours


ClusterRoles with group/user subjects

Feature Request
I have an operator which needs to create a clusterRole with read permission for all for all objects of a specific CR. The subject of the rolebinding should be system:authenticated user group but currently this is not supported.
Currently, only a service account can be associated with a clusterrole.
// StrategyDeploymentPermissions describe the rbac rules and service account needed by the install strategy
type StrategyDeploymentPermissions struct {
	ServiceAccountName string            `json:"serviceAccountName"`
	Rules              []rbac.PolicyRule `json:"rules"`
}

Describe the solution you'd like
There should be a way to declare clusterrole binding to specific user/group in the clusterServiceVersion file.

Can you make a case for why this should be a thing that operators can request to happen automatically on install, and not just additional configuration that a cluster administrator performs? (how does your operator know that all authenticated users should be allowed to read the CRs in any given cluster?)

This is now supported - you can include additional ClusterRoles/RoleBindings alongside your CSV and they will be created on install.

Thanks @ecordell


Where do i find the peermagic value, normally its in chainparams.cpp

Hi,
I'm trying to use p2p for block notification on the mainnet, where do i find the peerMagic value..
Normally i look in the chainparams.cpp, but since this is a new java implementation im lost..
Little help would be much obliged

Hi @g00dnatur3,
Can you describe more details about the peerMagic value?
For the Aion Java kernel p2p implement details, you can look from these 3 classes
P2pMgr
https://github.com/aionnetwork/aion/blob/master/modP2pImpl/src/org/aion/p2p/impl1/P2pMgr.java
NodeMgr
https://github.com/aionnetwork/aion/blob/master/modP2pImpl/src/org/aion/p2p/impl/comm/NodeMgr.java
PeerMetric
https://github.com/aionnetwork/aion/blob/master/modP2pImpl/src/org/aion/p2p/impl/comm/PeerMetric.java

Hi, thank you for responding.
Please look here:
https://github.com/bitcoin/bitcoin/blob/master/src/chainparams.cpp
My understanding is the peerMagic value is used to make anonymous p2p handshakes for the purpose of getting a block notification without having to poll the daemon.. its vastly more efficient.
Look here, starting at line 104:
        pchMessageStart[0] = 0xf9;
        pchMessageStart[1] = 0xbe;
        pchMessageStart[2] = 0xb4;
        pchMessageStart[3] = 0xd9;

This is the peerMagic value for the bitcoin mainnet, we know its the mainnet cause one line down we see the bitcoin mainnet port: 8333
in nomp, when you configure a coin to support p2p connections you would put inside the coin config json:
{
   "peerMagic": "f9beb4d9"
}

This would allow you to enable p2p connections in the pool config file...
I have not read deeper in the nomp code or the bitcoin code to understand better how this value is used...
But i assume its some header values used during the p2p handshaking process...
Hope that clarifies what exactly im looking for.
Cheers

Hi,
Current Aion P2p handshake spec you can find it within this page
https://github.com/aionnetwork/aion/wiki/Aion-P2p-Specifications
And for the message implementation, you can look into there:
https://github.com/aionnetwork/aion/tree/master/modP2pImpl/src/org/aion/p2p/impl/zero/msg


Disable AppArmor via 'unconfined' profile

What this PR does / why we need it:
To stop log spamming by AppArmor.
Any other useful info:
A better long-term solution might be to create (or find) a proper AppArmor profile ala https://docs.docker.com/engine/security/apparmor/.

:+1: thanks!


B1.5

Build against Scala 2.10 finished with failure

Build against Scala 2.11 finished with failure


Change GET raw_icon response to return 204 when no binary data present

Currently the logs are getting clouded when icons are not present on portfolio_items due to the fact that it throws a 404. This changes it to just return :no_content which is a bit more indicative of what is actually happening.
cc @gmcculloug I know we talked about this a while back - finally got around to fixing it quick.

@miq-bot add_reviewer syncrou


[MM-48987] Removing team insights if no enterprise build available

Summary
There are instances where no enterprise build is available (Team edition) so we want to hide the team insights dropdown and default to "my insights". To recreate this locally you will need to remove your enterprise repo
Ticket Link
https://mattermost.atlassian.net/browse/MM-48987
Screenshots

Release Note

Fixing a bug where the team insights dropdown was available in non-enterprise builds

/test-e2e

Successfully triggered E2E testing!
GitLab pipeline | Test dashboard

Successfully triggered E2E testing!
GitLab pipeline | Test dashboard

Cherry pick is scheduled.


add gofabric8 jenkins command

which would detect the tenant users jenkins namespace (like we do to detect che) and then do the equivalent of this command:
gofabric8 service jenkins -n ${TENANT}-jenkins
with the option to pass the -u or --url argument to only output the URL versus opening the URL

requires this fix for tenants on openshift first https://github.com/fabric8io/gofabric8/issues/576


Save password

Most people will stick to one server, i guess. Make it at least optional to save the password with a checkbox or something like that.
Works like a charm btw. (non-docker installation)

Will make sure this makes it in the next release :-)

This is now included in v1.0.1. I've pushed it to the repo, but I don't know how long it takes for F-Droid to update it - shouldn't be more than a couple of days.


the extension makes some sites go blank

Body
example: https://genshin.hoyoverse.com/en/, https://frzyc.github.io/genshin-optimizer/
i tried disabling all my extensions (except for FF) then accessed those sites and saw no problem. reloading helps but not always
Version
0.2224
What browsers are you seeing the problem on?
Chrome
What OS are you seeing the problem on?
Windows
Anything else?

Can you reproduce this with the mv3 version? https://nightly.link/FastForwardTeam/FastForward/workflows/main/manifest-v3

yes no problem. take a look!
normal version:
https://user-images.githubusercontent.com/81290839/229681982-1ecdc68e-3816-4dbd-8563-8e396c4f5766.mp4
mv3 version:
https://user-images.githubusercontent.com/81290839/229682067-48c394fd-ed36-4401-b2b2-dae92a5415e2.mp4


Open Spending via nieuwe OpenSpending API weer inladen?

Is your feature request related to a problem? Please describe.
De oude Open Spending API gaat eruit. Willen we de nieuwe nog in Bron laden of is deze data minder belangrijk?

Auto-translated original comment: "The old Open Spending API is going out. Do we still want to load the new one into Source or is this data less important?"
Not a priority right now due to the static nature of Open Spending data.


Create a Common Questions doc page

That guides user through different decisions

I have a unique planning boundary, which template should I start with and how do I add my boundary datasource and geography?
I have a more authoritative EEZ boundary for a project, how should I use it?
I want to use more than one EEZ polygon in my planning boundary, how do I do that?

May want to include an informal decision tree that helps guide decisions and points at resources and examples

Another example is choosing which global datasource to use so that preprocessing and geoprocessing work together.
Comments from the subregional PR
OSM land polygons have been traditionally used by SeaSketch as a baseline (coastline) because it matches basemaps that use OSM (like Mapbox used by SeaSketch). Its accuracy wasn't questioned until it was seen that for small island nations it can be missing small landmasses. This matters when defining for example a nearshore boundary for planning, if you are missing small islands, the nearshore area around them will not be included in the planning area or in drawn sketches. The % of area relative to the whole EEZ is small, but it could have localized impacts particularly regarding enforcement.
EEZ project template: preprocessors will default to using global-eez-with-land-mr-v3 and then clip to global-land-osm.
Simple project template: default geography for basic projects will be the world.json polygon
Template eez projects will have a default geography that uses global-eez-mr-v11 (eez with mr land baseline cut out), because it's available right now in global form. This will create a small misalignment with the osm land baseline used by the preprocessor.
After creating a new report project, developers can then decide which baseline is best:
if the Marine Regions baseline is more accurate and should be used, then switch to a preprocessor that clips to global-eez-mr-v11. Keep the geography using global-eez-mr-v11.
if the OSM baseline is accurate enough and fit of clipped shapes to the map is more important, then preprocessor can stay with global-eez-with-land-mr-v3 and a local geography can be created that takes the MR EEZ boundary and subtracts out OSM land, as we have traditionally done for all projects.


[R-241] docs on how to custumize LLMs in test set generation

[x] I checked the documentation and related resources and couldn't find an answer to my question.
Your Question
Was anyone able to generate synthetic dataset using a custom LLM ? The documentation completely skips over the specifics here. It just asks us to either create a langchain instance (supported models are only few) and wrap it around new wrappers OR base them out of BaseRagasLLM
https://docs.ragas.io/en/stable/howtos/customisations/bring-your-own-llm-or-embs.html#llms
But when you do that, you also have to define agenerate_prompt, agenerate_text, generate_prompt and generate_text. We dont know when these functions are called by the test set generation and what to return at each function, etc.  My experiments tend to repeat multiple times with no output and just fails after a while.
Code Examples
This community speaks code. Share your code snippets to help us understand your question better.
Additional context
Anything else you want to share with us?
R-241

hi，have you solved it?

Any news about the solutions now? Facing the same problem.

@projects-g @WGS-note @Zzrjin extremely sorry about the delay but we had improved the docs for this
take a look at https://docs.ragas.io/en/stable/howtos/customisations/bring-your-own-llm-or-embs.html#test-set-generation
and it should help
closing this for now but feel free to comment below if you have any issues and I'll reopen


Added support to show "iteration X.5" in BiCGSTAB.

In bicgstb, there is no indication whether the iteration exited in the middle of an iteration or after a full (double) iteration. It is accustomed to state "finished at iteration X.5" if the algorithm exited in the middle of the iteration. Changed this in the current PR.

Coverage increased (+0.006%) to 97.829% when pulling 7196b73b5cb4dfc4afb33483655362dac79cf739 on erantreister:master into 4029c11c3e3ceb1c9cb6fa174a9cac7fbbcbc327 on lruthotto:master.

great catch. thanks.


[C-597] Add attribute: # of open source contributions

Add attribute "# of open source contributions". This should appear both in the profile view of each member, the list page (app.crowd.dev/members), and be filterable and sortable. The type is integer.
Backend
Member repository
Most of the changes on the backend will be in the backend/src/database/repositories/memberRepository.ts file.
In the findAndCountAll function, a new aggregator will have to be created. For example:
const numberOpenSourceContributions = Sequelize.literal(`jsonb_array_length(“member”.contributions)`)

It will also have to be passed to the QueryParser accordingly. Fields like activityCount and averageSentiment will provide a good example. The same should be followed for the number of open-source contributions.
Tests
The tests will also need to be modified. The affected files will be memberRepository.test.ts,  memberService.test.ts and conversationRepository.test.ts.
Frontend
Member Profile
The new attribute for # of open source contributions can be treated in the same way as # of activities and Member since. These values are displayed in the member profile (https://app.crowd.dev/members/{id}) below the member's name and bio.
To add this new attribute next to the others, the frontend/src/modules/member/components/view/member-view-header.vue needs to be updated. The <template> should be updated similar to the element of # of activities.
Member Filters
There will be the need to update frontend/src/modules/member/member-model.js with the the new filter. The new property of the model needs to be created from an IntegerField since the # of open source contributions will be an integer. The IntegerField should then be configured with an identifier, a label, and an options object (filterable should be set to true).
From SyncLinear.com | C-597

Hey @jonathimer , can you elaborate what has to be done ? I am a beginner and very eager to work on this issue!

Hey @aryanvarma7272, thanks for reaching out. We're happy to assist you with this issue.
I'll get back asap with more concrete specs. If you want, we'd also do a quick onboarding call and give you an intro to our codebase and the particular task.

Hey @aryanvarma7272, thanks for your interest in contributing! I have updated the task description with front-end and back-end specifications and tips. As @jonathimer said, super happy to give you an onboarding call to get you up and running! 🚀

/bounty $100


Autoreconnect doesn't work anymore

Hi,
I use your app since the beginning and when you added the autoreconnect feature it worked.
But until version 1.1.1 it doesn't work, when I check the box, close the app and open it again, the box is unchecked...

It works here with the latest version (1.2.0).
It's possible that the addition of the "disable chunked transfer encoding" setting somehow corrupted your config file.
You can find it here: C:\Users\{your_user_name}\swyh-rs\config.ini
Deleting this file should fix it (but you will lose your current settings, like the audio source if not default).

Should be fixed in 1.2.1. Sorry about that...

I will try your tip with the config file

Not needed with 1.2.1

Ok it works! Thanks a lot


Updates

Hello,
I just want to start off by saying I love this and works amazing! However I would like to know will there be more feature updates? I know the websocket got an update with all kinds of new features but can these be added in here? Also would this be able to be hosted locally and easily modified?
Thanks,
Dereck

I created some features (and one possible fix) branches (forked it here):
https://github.com/dx9s/obs-tablet-remote/branches


Too many extractions

The Dutch, on the other hand, believed the court to have been fundamentally competent, and wished to focus instead on misconduct of the particular judges in the court.
Dutch believed fundamentally competent
Dutch believed on hand
Dutch believed competent
court been fundamentally competent
court been competent
Question:
Why are we extracting "competent" as well as "fundamentally competent"?

The matter was settled once again with Francis Rossi receiving a writing credit.
matter settled again
matter settled once
Francis Rossi receiving writing credit
matter receiving writing credit (get rid of)

If gold had been good THE GREAT SPIRIT had giv'n.
GREAT SPIRIT had good (get rid of)
GREAT SPIRIT had giv'n
gold been good

Symptoms are similar to the acute form of the disease, but are less severe and last longer.
Symptoms are severe
Symptoms are less severe (get rid of)
Symptoms are longer last
Symptoms are similar

The only access was by a climb of 500 steep and narrow stairs and the surrounding topography was not conductive to siege operations.
access was conductive (get rid of)
access was by climb
topography not was conductive


Enhance the "Server: Tips and Tricks" document

These two topics:

Executing the Tatin test suite
Creating a new version

just say "To be enhanced" right now.

Solved in 0.109.0


broken url used for mumbai gas estimates

Component
Forge
Have you ensured that all of these are up to date?

[X] Foundry
[ ] Foundryup

What version of Foundry are you on?
No response
What command(s) is the bug in?
forge script
Operating System
Linux
Describe the bug
The URL https://gasstation-mumbai.matic.today/v2 does not resolve so gas fails and forge scripts cannot deploy to mumbai
https://wiki.polygon.technology/docs/develop/tools/polygon-gas-station/ documents the gas estimation url as
https://gasstation-testnet.polygon.technology/v2

ref https://github.com/gakonst/ethers-rs/pull/2479

note that somehow --legacy allowed me to deploy, even though mumbai supports 1559 i think

Just got the same error while trying to deploy to Polygon Mainnet:

Failed to estimate EIP1559 fees. This chain might not support EIP1559, try adding --legacy to your command.

And the full logs:
Context:
- Error #0: error sending request for url (https://gasstation-mainnet.matic.network/v2): error trying to connect: dns error: failed to lookup address information: nodename nor servname provided, or not known
- Error #1: error trying to connect: dns error: failed to lookup address information: nodename nor servname provided, or not known
- Error #2: dns error: failed to lookup address information: nodename nor servname provided, or not known
- Error #3: failed to lookup address information: nodename nor servname provided, or not known

Can confirm that passing --legacy let me deploy, but the deployment should work even with EIP-1559 because Polygon supports it.

@mattsse Are there any commandline params or environment variables to bypass the fee estimation or give a different URL in general?
Having these URLs hardcoded in code is bad practice IMO, because it couples a code version and the environment it runs in. That means previously "stable" releases of forge would now stop working for polygon networks, just because of this hardcoded URL.
There should be a way to override these somehow.


Add a image in table cell using python-pptx

I am using the python-pptx library to create a table in pptx document. I want to add an image in the table cell, but I haven't found such option to do so.
I am adding cell using following code:
table.cell(0, 1).text = 'cell text'
Please help me how we can add an image in a table cell using python-pptx.
Quick response will be appreciated.

Please use StackOverflow for support questions (using the 'python-pptx' tag). The issues list is reserved for feature requests and suspected bugs.

Hi @scanny , I have added this question on stackoverflow. This is the link:
https://stackoverflow.com/questions/49382280/add-a-image-in-table-cell-using-python-pptx
Can you please look into this?

Hi @scanny I think that would be an incredibly handy feature. Can you share any pointers about we could implement this functionality?

@YiannisGkoufas It looks like the approach that might work would be setting the cell background to be an image. Definitely make this work manually with PowerPoint first before you invest the work. That way you can see any shortcomings, like I expect it's critical to get the cell height correct for it to look good.
Then dump out the XML to see how it works in the XML syntax, something like:
cell = table.cell(0, 0)
print(cell._tc.xml)

And then work out how to get that XML into a cell that is as close as you can make it with the python-pptx API. This part is what is typically called a "workaround function". These use some combination of lxml API calls and python-pptx internals to make the desired changes. If you search on python-pptx workaround function you'll come across some examples.
Noodling it a bit this is going to be a little tricky because you'll need to add a relationship for each image you use. But maybe dig into it a bit and see how far you can get and ask questions from there.

Thanks so much @scanny for the details! will definitely start poking it. For the time being I add images on the page directly and try to compute their dynamic (X,Y) and set the necessary offsets.
Thanks!

`
def add_image_in_table_cell(cell, url):
response = get(url)
img_bytes = BytesIO(response.content)
image_part, rId = cell.part.get_or_add_image_part(img_bytes)
tcPr = cell._tc.get_or_add_tcPr()

xml = f"""<a:blipFill {nsdecls("a")}>
                  <a:blip {nsdecls("r")} r:embed="{rId}"/>
                  <a:stretch>
                    <a:fillRect/>
                  </a:stretch>
                </a:blipFill>"""
ele = parse_xml(xml)

tcPr.clear()
tcPr.append(ele)

`

The nice thing about adding pictures to table cells is it makes a way to do multiple pictures on a slide with easier dimension setting than what I do at present: Calculating positions.
Another nice thing is you could have eg bulleted lists in cells next to (or below) pictures.
I'd want to be able to make table and cell borders transparent, though.
The down side comes to when the pictures are different sizes and you'd have to find a way to add padding or accept suboptimal scaling.
If we can find a way to deal with the latter (problem) I'd be all for python-pptx having this capability.

This is a closed issue, so if you want to discuss more best to open a new one. This is not adding an image to a table cell per-se, it is setting the background of a cell to be an image. The cell would still be able to contain text and so forth. I expect there are different modes as well like repeat/tile the image, scale/stretch to fill, and put at top-left at full size and leave it at that.
So perhaps an interesting feature, but not adding a picture to a cell per se (which is not strictly possible in PPTX although it is in DOCX).


Event buffers are causing much garbage, improve if there is a latency problem

Closing for now, heard no complaints so far.


Command Tests

Left blank for now

Codecov Report
Base: 48.65% // Head: 72.71% // Increases project coverage by +24.05% :tada:

Coverage data is based on head (19fd9e0) compared to base (c9e8d61).
Patch coverage: 73.91% of modified lines in pull request are covered.

Additional details and impacted files
@@              Coverage Diff              @@
##             master     #206       +/-   ##
=============================================
+ Coverage     48.65%   72.71%   +24.05%
- Complexity      578      825      +247
=============================================
  Files           151      150        -1
  Lines          2758     2606      -152
  Branches        362      288       -74
=============================================
+ Hits           1342     1895      +553
+ Misses         1302      603      -699
+ Partials        114      108        -6

Impacted Files
Coverage Δ

...a/seedu/address/logic/commands/AddLinkCommand.java
100.00% <ø> (+84.61%)
:arrow_up:

...seedu/address/logic/commands/AddPersonCommand.java
100.00% <ø> (+55.00%)
:arrow_up:

...a/seedu/address/logic/commands/AddTaskCommand.java
91.30% <ø> (+20.93%)
:arrow_up:

...a/seedu/address/logic/commands/AddTeamCommand.java
100.00% <ø> (+35.71%)
:arrow_up:

...eedu/address/logic/commands/AssignTaskCommand.java
100.00% <ø> (+90.00%)
:arrow_up:

...ress/logic/commands/AssignTaskRandomlyCommand.java
100.00% <ø> (+92.00%)
:arrow_up:

...eedu/address/logic/commands/DeleteLinkCommand.java
100.00% <ø> (+84.61%)
:arrow_up:

...du/address/logic/commands/DeletePersonCommand.java
100.00% <ø> (+61.53%)
:arrow_up:

...eedu/address/logic/commands/DeleteTaskCommand.java
100.00% <ø> (+84.61%)
:arrow_up:

...eedu/address/logic/commands/DeleteTeamCommand.java
80.95% <ø> (+72.25%)
:arrow_up:

... and 103 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Handle non-iterable (NoneType) comparison in LazyUUIDTaskSet

Fixes #64

Coverage increased (+0.6%) to 92.347% when pulling dcf2b8b93cbfc94a86b64d03c0c154a6db671b44 on huntrar:develop into 922cec4a15255e90f69356886de250de034372d1 on robgolding:develop.

Coverage increased (+0.6%) to 92.347% when pulling dcf2b8b93cbfc94a86b64d03c0c154a6db671b44 on huntrar:develop into 922cec4a15255e90f69356886de250de034372d1 on robgolding:develop.

Coverage increased (+0.6%) to 92.347% when pulling dcf2b8b93cbfc94a86b64d03c0c154a6db671b44 on huntrar:develop into 922cec4a15255e90f69356886de250de034372d1 on robgolding:develop.

Coverage increased (+0.6%) to 92.347% when pulling dcf2b8b93cbfc94a86b64d03c0c154a6db671b44 on huntrar:develop into 922cec4a15255e90f69356886de250de034372d1 on robgolding:develop.

Hey @huntrar thanks so much for this! Could you maybe add a test to assert this behaviour? I'd be happy to merge and release a patch version after that 😄
Thanks again

Absolutely. I added a handful of tests that use LazyUUIDTaskSet in place of a set() object pertaining to the depends field.
The test which actually catches the case listed in the issue is test_simple_dependency_lazyuuidtaskset_save_before_repeatedly

Fantastic, thanks @huntrar!


fixed local variable never initialized

Description
This PR fixes some "Uninitialized variables "warning from Slither
We will ignore:
(src/v0.1/Prepayment.sol#472)
(src/v0.1/Account.sol#255)
We're using check - effect pattern to send Klay in these cases
Fixes # (issue)
Type of change
Please delete options that are not relevant.

[x] Bug fix (non-breaking change which fixes an issue)

Checklist before requesting a review

[x] I have performed a self-review of my code.

Deployment

[x] Should publish npm package

@KelvinThai I am not sure this change matter because memory should be always set to 0 🤔

@KelvinThai I am not sure this change matter because memory should be always set to 0 🤔

This makes the warning from slither disappear, also helps unify our code, and helps the audit process run faster.

@KelvinThai I merged the other large PR and we might have to reapply your changes. I think it is faster to do it manually than rebasing.

@KelvinThai I merged the other large PR and we might have to reapply your changes. I think it is faster to do it manually than rebasing.

Actually I can do that. since you merged a big piece, I'll run silther again to see if there's any exploitable patterns


201_torch_numpy.ipynb won't open in GitHub

201_torch_numpy.ipynb does not load in the GitHub interface, while 202_variable.ipynb opens without any problem

I have updated 201_torch_numpy.ipynb, could you reopen this file and check if works?

I have just checked; it works now. Thanks.


Fix cross compile

Fix #10949, #10950
Now we can use TAGS=bindata GOOS=linux GOARCH=arm64 make build to cross compile.

plz resolve conflict :)

Codecov Report

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

@@            Coverage Diff             @@
##           master   #10952      +/-   ##
==========================================
- Coverage   43.62%   43.60%   -0.03%
==========================================
  Files         597      597
  Lines       83923    83923
==========================================
- Hits        36613    36594      -19
- Misses      42799    42815      +16
- Partials     4511     4514       +3

Impacted Files
Coverage Δ

modules/git/utils.go
65.67% <0.00%> (-4.48%)
:arrow_down:

services/pull/check.go
48.17% <0.00%> (-3.66%)
:arrow_down:

modules/process/manager.go
74.69% <0.00%> (-3.62%)
:arrow_down:

services/pull/patch.go
62.93% <0.00%> (-2.80%)
:arrow_down:

services/pull/temp_repo.go
29.05% <0.00%> (-2.57%)
:arrow_down:

modules/git/repo.go
47.28% <0.00%> (-0.84%)
:arrow_down:

modules/indexer/stats/db.go
50.00% <0.00%> (ø)

models/repo_list.go
77.32% <0.00%> (+0.80%)
:arrow_up:

Continue to review full report at Codecov.

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

Ping


partio: 1.14.6 -> 1.17.0

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://repology.org/project/partio/versions.
meta.description for partio is: C++ (with python bindings) library for easily reading/writing/manipulating common animation particle formats such as PDB, BGEO, PTC
meta.homepage for partio is: https://www.disneyanimation.com/technology/partio.html
Updates performed

Version update

To inspect upstream changes
Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 1.17.0 with grep in /nix/store/g9s9lzvj74pjslr8p114lk0997qdvb15-partio-1.17.0-dev
found 1.17.0 in filename of file in /nix/store/g9s9lzvj74pjslr8p114lk0997qdvb15-partio-1.17.0-dev

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath
osl
partio

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/g9s9lzvj74pjslr8p114lk0997qdvb15-partio-1.17.0-dev \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A partio https://github.com/r-ryantm/nixpkgs/archive/366a19da2acca39b1b1f1c72e021c1e27c97c6d5.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/g9s9lzvj74pjslr8p114lk0997qdvb15-partio-1.17.0-dev
ls -la /nix/store/g9s9lzvj74pjslr8p114lk0997qdvb15-partio-1.17.0-dev/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package failed to build:

osl

1 package built:

partio

Maintainer pings
cc @guibou for testing.

@ofborg build osl osl.passthru.tests

Tested against #241674.


RD Machine Name Mapping Query Incorrect for Megastamps

Current site: https://applensv2.azurewebsites.net/sites/tp-services-prod01-southcentral/appanalysis/detectors/appdomainsunloaded?startTime=2017-06-23T00:00:00.000Z
Please provide feedback here:
I’m taking a look at App Domain unloads for a customer. I noticed that the chart is showing the two workers:
RD00155D2AB4C6
RD0003FF93EA5D
Neither of these are ones that the site is currently on:
https://wawscus.kusto.windows.net:443/wawsprod [Run in Kusto.Explorer] [Run in Kusto.Explorer on SAW] [Run in Kusto.WebExplorer]
let ActiveWorkersInTimeRange = toscalar(
StatsDWASWorkerProcessTenMinuteTable
| where TIMESTAMP >= datetime(2017-06-23 00:00:00) and TIMESTAMP <= datetime(2017-06-23 20:40:00) and Tenant in ("3f544ca831354cf884216ee0251c923c","47f69bfbb49d4456ab811962e2eba40f","a178c3c9156c4a1481c90ee80a0ed898","f1b11b4d141a488f83cf36dc1fe75357","a6d7996634f94d5eb7c27dc300834402")
| where  (ApplicationPool =~ "tp-services-prod01-southcentral" or ApplicationPool startswith "tp-services-prod01-southcentral__")
| summarize makeset(RoleInstance));
SystemStats
| where TIMESTAMP >= datetime(2017-06-23 00:00:00) and TIMESTAMP <= datetime(2017-06-23 20:40:00) and Tenant in ("3f544ca831354cf884216ee0251c923c","47f69bfbb49d4456ab811962e2eba40f","a178c3c9156c4a1481c90ee80a0ed898","f1b11b4d141a488f83cf36dc1fe75357","a6d7996634f94d5eb7c27dc300834402")
| where RoleInstance in (ActiveWorkersInTimeRange)
| where EventMessage == "Memory Statistics"
| summarize TotalMemoryInMb = any(TotalMemory) by Role
| join (
RoleInstanceHeartbeat | where TIMESTAMP >= datetime(2017-06-23 00:00:00) and TIMESTAMP <= datetime(2017-06-23 20:40:00) and PublicHost startswith "waws-prod-sn1-119"
| where RoleInstance in (ActiveWorkersInTimeRange)
| project PreciseTimeStamp, Role, RoleInstance, MachineName, CoreCount, InstanceId
| summarize MachineName = any(MachineName), CoreCount = any(CoreCount), InstanceId = any(InstanceId), Role = any(Role) by RoleInstance)
on Role
| project-away Role, Role1
TotalMemoryInMb	RoleInstance	MachineName	CoreCount	InstanceId
1791	SmallDedicatedWebWorkerRole_IN_185	RD00155D7616A8	1	d043e04787a67030d66d9b4063f439791395b9bc01c9489a73e9d2e82cb6e2ab
3583	MediumDedicatedWebWorkerRole_IN_8	RD0003FF2888BB	2	58959f315ae110c77c27b360c2c2aa988f5fa92288eacf5bf282dfe6e588a5e9

This will be solved by #693


YARN-10720. (branch-3.2) YARN WebAppProxyServlet should support connection timeout…

… to prevent proxy server from hanging.  I had to fix the conflicts by partiallly backporting YARN-8448, so I want to run precommit job for this change. If it ran successfully, I will push it.
How was this patch tested?
Compiled and ran TestWebAppProxyServlet locally.
For code changes:

[x] Does the title or this PR starts with the corresponding JIRA issue id (e.g. 'HADOOP-17799. Your PR title ...')?
n/a Object storage: have the integration tests been executed and the endpoint declared according to the connector-specific documentation?
n/a If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?
n/a If applicable, have you updated the LICENSE, LICENSE-binary, NOTICE-binary files?

:confetti_ball: +1 overall

Vote
Subsystem
Runtime
Logfile
Comment

+0 :ok:
reexec
11m 25s

Docker mode activated.

_ Prechecks _

+1 :green_heart:
dupname
0m  0s

No case conflicting files found.

+0 :ok:
codespell
0m  0s

codespell was not available.

+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 1 new or modified test files.

_ branch-3.2 Compile Tests _

+0 :ok:
mvndep
3m 21s

Maven dependency ordering for branch

+1 :green_heart:
mvninstall
26m 29s

branch-3.2 passed

+1 :green_heart:
compile
7m 46s

branch-3.2 passed

+1 :green_heart:
checkstyle
1m 19s

branch-3.2 passed

+1 :green_heart:
mvnsite
2m  3s

branch-3.2 passed

+1 :green_heart:
javadoc
1m 56s

branch-3.2 passed

+1 :green_heart:
spotbugs
4m 30s

branch-3.2 passed

+1 :green_heart:
shadedclient
15m 13s

branch has no errors when building and testing our client artifacts.

_ Patch Compile Tests _

+0 :ok:
mvndep
0m 23s

Maven dependency ordering for patch

+1 :green_heart:
mvninstall
1m 39s

the patch passed

+1 :green_heart:
compile
6m 54s

the patch passed

+1 :green_heart:
javac
6m 54s

hadoop-yarn-project_hadoop-yarn generated 0 new + 192 unchanged - 10 fixed = 192 total (was 202)

+1 :green_heart:
blanks
0m  0s

The patch has no blanks issues.

+1 :green_heart:
checkstyle
1m 11s

the patch passed

+1 :green_heart:
mvnsite
1m 53s

the patch passed

+1 :green_heart:
xml
0m  1s

The patch has no ill-formed XML file.

+1 :green_heart:
javadoc
1m 46s

the patch passed

+1 :green_heart:
spotbugs
4m 48s

the patch passed

+1 :green_heart:
shadedclient
16m  1s

patch has no errors when building and testing our client artifacts.

_ Other Tests _

+1 :green_heart:
unit
0m 48s

hadoop-yarn-api in the patch passed.

+1 :green_heart:
unit
4m  2s

hadoop-yarn-common in the patch passed.

+1 :green_heart:
unit
0m 53s

hadoop-yarn-server-web-proxy in the patch passed.

+1 :green_heart:
asflicense
0m 42s

The patch does not generate ASF License warnings.

117m 36s

Subsystem
Report/Notes

Docker
ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-4102/1/artifact/out/Dockerfile

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

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient spotbugs checkstyle codespell xml

uname
Linux 9f85641c1b81 4.15.0-166-generic #174-Ubuntu SMP Wed Dec 8 19:07:44 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
dev-support/bin/hadoop.sh

git revision
branch-3.2 / dbeb41b46a2cef9a48983add9c3b191915bd6de5

Default Java
Private Build-1.8.0_312-8u312-b07-0ubuntu1~18.04-b07

Test Results
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-4102/1/testReport/

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

modules
C: hadoop-yarn-project/hadoop-yarn/hadoop-yarn-api hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-web-proxy U: hadoop-yarn-project/hadoop-yarn

Console output
https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-4102/1/console

versions
git=2.17.1 maven=3.6.0 spotbugs=4.2.2

Powered by
Apache Yetus 0.14.0-SNAPSHOT https://yetus.apache.org

This message was automatically generated.


Multiple workers

Solves https://github.com/flow-hydraulics/flow-wallet-api/issues/140

Solves #91

LGTM! 👍