Support for Mockito

Currently, Mockito fails while stubbing as scott tries to call toString while mockito is capturing method calls.
This could be partially resolved with a check in hu.advancedweb.scott.runtime.track.StateRegistry#objectToString:
	//...
	} else if (MockUtil.isMock(value)) {
		// While setting up mocks with when(...), invoking any method on the mock will
		// cause it to be recorded thus breaking the when() statement.
		return constructMockitoMockObjectString(value);
	}else if (MockUtil.isSpy(value)){
		return "Mockito Spy:" + MockUtil.getMockName(value);
	}	//...

	public static String constructMockitoMockObjectString(Object value){
		return "Mockito Mock("+ MockUtil.getMockSettings(value).getTypeToMock()+")";
	}

Along with the required dependency:
    <dependency>
        <groupId>org.mockito</groupId>
        <artifactId>mockito-core</artifactId>
        <version>2.2.28</version>
    </dependency>

But it still doesn't solve the case where method calls are inlined when stubbing.

Nice find, thank you! I've tried the fix you provided and it indeed works well. However, there is
one problem with this solution: adding Mockito as a dependency (even if Scott ships with a
specific version) might result in compatibility problems with projects using other Mockito versions.
I think rather than statically depending on MockUtils, we should detect mocks and spies more dynamically
to work around this issue. For example we could check via the reflection API if MockUtils available at run-time
with the required methods, and if it is then call it.
For the inlined method calls problem, could you please provide an example for it when it goes wrong?

Sure, Class.forName seems standard so we can use that. I'll prepare a pull if you want.
For the inline method problem, consider the following test:

    import static org.mockito.Mockito.doAnswer;
    import static org.mockito.Mockito.mock;
    import static org.mockito.Mockito.times;
    import static org.mockito.Mockito.verify;
    import static org.mockito.Mockito.when;

    interface Foo {

    	String bar();

    	void baz(Consumer<String> consumer);

    }

    @Test
    public void simple_mock() throws Exception {
    	Foo foo = mock(Foo.class);
    	when(foo.bar()).thenReturn("42");
    	assertEquals(foo.bar(), "42");
    	verify(foo, times(1)).bar();
    }

    class Holder<T> {

    	final T t;

    	Holder(T t) {
    		this.t = t;
    	}

    	@Override
    	public String toString() {
    		return t != null ? t.toString() : "(null)";
    	}
    }

    @Test
    public void field_mock() throws Exception {
    	Foo foo = mock(Foo.class);
    	Holder<Foo> holder = new Holder<>(foo);
    	when(holder.t.bar()).thenReturn("42");
    	assertEquals(holder.t.bar(), "42");
    	verify(holder.t, times(1)).bar();
    }

Test simple_mock passed fine but the field_mock failed with the following:
java.lang.Throwable:
  48|      @Test
  49|      public void field_mock() throws Exception {
  50|          Foo foo = mock(Foo.class);  // foo=Mockito Mock(interface hu.advancedweb.scott.MockitoTest$Foo)
  51|          Holder<Foo> holder = new Holder<>(foo);  // holder=Mock for Foo, hashCode:<PHONE_NUMBER>
  52|*         when(holder.t.bar()).thenReturn("42");  // UnfinishedStubbingException: Unfinished stubbing detected here:
    |                                                  // -> at hu.advancedweb.scott.MockitoTest.field_mock(MockitoTest.java:52)
    |                                                  //
    |                                                  // E.g. thenReturn() may be missing.
    |                                                  // Examples of correct stubbing:
    |                                                  //     when(mock.isOk()).thenReturn(true);
    |                                                  //     when(mock.isOk()).thenThrow(exception);
    |                                                  //     doThrow(exception).when(mock).someVoidMethod();
    |                                                  // Hints:
    |                                                  //  1. missing thenReturn()
    |                                                  //  2. you are trying to stub a final method, which is not supported
    |                                                  //  3: you are stubbing the behaviour of another mock inside before 'thenReturn' instruction if completed
  53|          assertEquals(holder.t.bar(), "42");
  54|          verify(holder.t, times(1)).bar();
  55|      }

The main issue here is that scott is trying to call toString on things that will be used in when().
I'm still not 100% sure on the exact cause but I think when() is basically a singleton stored in a ThreadLocal. When scott tries to call toString on objects that have been registered with when() the actual call sequence gets modified into something like this (pseudocode):
52|*         when(
                       holder.t.toString()
                       holder.t.bar()
                        ).thenReturn("42");

This is hard to fix as scott has to basically know that some field will be used for stubbing in the future.
I'll still investigating this so I'll get back with more details ASAP.

I've played with the Mockito tests, and I found that calling toString on a mock (even indirectly) is only invalid during stubbing.  For illustration, execute the following tests without Scott:
	@Test
	public void simple_mock_ok() throws Exception {
		Foo foo = mock(Foo.class);
		System.out.println(foo.toString()); // Print mock before stubbing is OK
		OngoingStubbing<String> stubbing = when(foo.bar());
		stubbing.thenReturn("42");
		System.out.println(foo.toString()); // Print mock after stubbing is OK
		assertEquals(foo.bar(), "42");
		verify(foo, times(1)).bar();
	}

	@Test
	public void simple_mock_failing() throws Exception {
		Foo foo = mock(Foo.class);
		OngoingStubbing<String> stubbing = when(foo.bar());
		System.out.println(foo.toString()); // Print mock during stubbing is NOT OK
		stubbing.thenReturn("42");
		assertEquals(foo.bar(), "42");
		verify(foo, times(1)).bar();
	}

Limiting Scott's toString calls seems necessary, but I think this problem can't be solved in the StateRegistry, because it's not important what object is being called with toString, but the location of the call. Scott should not inject toString calls investigate variable values when the test calls Mockito related methods.
The hu.advancedweb.scott.instrumentation.transformation.StateEmitterTestMethodVisitor class is responsible for augmenting the test classes with tracking code The visitMethodInsn is called for every method invocation, this method calls the instrumentToTrackVariableState method to track every variable and field. I think the filtering could be done based on the owner parameter.
If you are interested in this and have time pull requests are appreciated.

Thanks for the details, I'm interested and will submit a pull request as soon as I complete support for Mockito along with tests and all that.

I've been thinking about this issue lately, and I was wondering that maybe we could solve it by making the recording part more resilient, by swallowing any exception in the StateRegistry#objectToString and simply not tracking anything in those cases.
I think this would solve the current issue with Mockito without having to bake Mockito related edge-case handling into the code, and would probably mitigate issues with other libraries/code that does nasty things with toString.
What do you think, would this fix be sufficient for this issue?

Sorry for the long delay. I had work on exams and studies I'm still a student. As I am also University of Bristol's teaching assistance for an undergraduate course, I was planning on adding this to one of the student courseworks so that they can better test their code without using a debugger. The cut off time for that particular coursework was around the end of January so unfortunately I was not able to integrate scott into the coursework due to issues with Mockito. The next coursework that I can reintroduce scott will start development at the start of June.
Personally, I think Mockito is a rather common testing dependency so I think supporting Mockito explicitly would be a better idea. I'll see what I can do in June.

I meant no pressure, I just thought that I check in, to see if I can help with something. The news about you considering Scott for your previous course is really great, I am glad to hear that!
Also, I had some time on my hands, so I investigated the issue a bit further. I added some code to fix the current problems with Mockito, and I'd like to share my findings.
I started with your solution by adding an isMock check to the StateRegistry#objectToString  method. This indeed fixed the first case you've provided, but I could not figure out how could it be enhanced to fix the second one. The problem is, that Mockito uses a ThreadLocal variable to keep track of the methods called to a mock, and uses this information when you configure mocked methods. Also, the signature of the org.mockito.Mockito.when(T methodCall) is a bit misleading, as it doesn't do much with the supplied object.
For example, this piece of code:
Foo foo = mock(Foo.class);
when(foo.bar()).thenReturn("42");
assertEquals("42", foo.bar());

is more or less equal with this one:
Foo foo = mock(Foo.class);
foo.bar();
when(null).thenReturn("42");
assertEquals("42", foo.bar());

Scott adds an extra toString call after every method call, so it looks something like this (pseudo-code):
Foo foo = mock(Foo.class);
track(foo.toString);
foo.bar();
track(foo.toString);
OngoingStubbig s = when(null);
track(foo.toString);
s.thenReturn("42");
track(foo.toString);
assertEquals("42", foo.bar());
track(foo.toString);

(There are some extra tracking for each variable assignment that I omitted.)
The second toString call breaks the mock, as, from that point, Mockito thinks that we tried to mock the toString method on foo.
I modified two things to solve this:

Added a check to the instrumentation code responsible for tracking method calls, to leave methods provided by Mockito (when, mock, thenReturn...) alone.
Switched the order of the original method call, and the tracker code. So the extra toString method call will precede the original call, so we don't confuse Mockito. (This modification involved some modification with the tracking of the line numbers as well.)

After the modifications, the mock get's successfully configured in both the holder and the simple scenario, and the code of the test looks like the following:
Foo foo = mock(Foo.class);
track(foo.toString);
foo.bar();
when(null).thenReturn("42");
track(foo.toString);
assertEquals("42", foo.bar());
track(foo.toString);

At that point, there was a problem with verify, as the following snippet
verify(foo, times(1)).bar();

now looks like the following with Scott:
verify(foo, times(1))
track(foo.toString)
foo.bar();

So Mockito now thinks that we are trying to verify toString, and then bar, and that's not working because verify()-ing toString results in an exception.
So finally, I've added an exception handling logic to the StateRegistry that ignores MockitoExceptins.
For now, it seems that Scott works correctly with Mockito, at least for the use-cases I've tried.
I also added some tests for it.
If you have time, could you verify that Scott works correctly for your use case?

I've released the 3.0.0 version from Scott that supports Mockito.
If you have any further issues with the Mockito integration, feel free to open an issue.


Can not delete rotational targets in latest release

I was just testing the latest version with the adjustable rotational target.  Nice feature.  Unfortunately the delete icon on rotational target is not working.  It is currently functioning as an expand/hide instead of delete.
The bin icon circled in white is what i'm referring to.
On a side note is it possible to add the functionality of the green circle with the number in it..  IE have a number that shows the number of items under a collapsed menu option.  For example the path shown in the screenshot has two constraint zones, but unless you know they are there you would have no idea until you expand out that section.  That feature could apply to all collapsed menu items (if it is possible to do that)
The other option would be to add a show/hide icon to each section in the GUI.  If you wanted to see the zones in the GUI, turn on the eye next to constraint zones.  If you wanted to hide the event marker points because the GUI is too cluttered, you could turn off their visibility.  I'm thinking like the Fusion 360 browser or Adobe Illustrator Layers.
This could be further expanded to include an enable/disable icon in the GUI. If something is disabled, it appear in the GUI, but would not be included in the path generation or the commands wouldn't be added to the Auto group, if all of the commands were disabled.
I feel this would be a really nice feature to be able switch in and out different things without the need to delete them entirely from the GUI when testing.  You could add two more boolean fields to the JSON data for each item in a path, visible and enabled.   Maybe this could be a feature request for 2025.

The delete button is working fine on my end. Does it work if you make the tree wider? You have it really small so there may be some overlap issues causing the button press to go to the expansion tile instead of the delete button.

Works full screen, but not when its windowed.

Thoughts on the feature requests?

You need to drag this thing to make the tree wider, not the whole window size. The current minimum size causes a bunch of issues with the UI in the tree so I'll need to increase it a bit.
The features sound nice but at some point adding all that stuff would make the tree UI really cluttered. I can try to play around with it eventually.

Agreed, If I had to prioritise, I'd say the circle with the number of items under the collapsed group before the enable/disable, show/hide functionality. Happy for this to be moved out of issues and into discussion if you are considering these options or just close and delete if you want.

Any chance you can make the numbers a little bit brighter?  It could be my monitor, but they are very hard to see.


Pull in the leases fix from the operator

Signed-off-by: Stephen Kitt<EMAIL_ADDRESS>

There are some failures in the lighthouse jobs, but its marked as not required. So approving the PR.
[Fail] [discovery] Test Stateful Sets Discovery Across Clusters when a pod tries to resolve a podname from stateful set in a remote cluster [It] should resolve the pod IP from the remote cluster
github.com/submariner-io/shipyard@v0.13.1/test/e2e/framework/framework.go:517

[Fail] [discovery] Test Stateful Sets Discovery Across Clusters when a pod tries to resolve a podname from stateful set in a local cluster [It] should resolve the pod IP from the local cluster
github.com/submariner-io/shipyard@v0.13.1/test/e2e/framework/framework.go:517

[Fail] [discovery] Test Stateful Sets Discovery Across Clusters when the number of active pods backing a stateful set changes [It] should only resolve the IPs from the active pods
github.com/submariner-io/shipyard@v0.13.1/test/e2e/framework/framework.go:517


[ Documentation ] - Added gitpython to pip3 dependencies in README, and a precision for manual upgrade for SQLite users

The title is pretty self explanatory, I just added gitpython to the pip3 dependencies listed in README.md, and also added a small precision for SQLite users, as one had an issue due to this imprecision.
I'm open for discussion, as always, and I'd be glad to have feedback.

Hey!
Glad my PR was okay :smile: I just registered :rocket: Thanks for letting me discover such a nice project.


type Encoded add parameter to define input

added ability provide input type to Encoded type, Encoded type has extended with additional parameter.
Also new instance added for int (utc) -> hex conversion

It's two param type class now and already support int -> hex


updating SurveyMonkey API config

CONCAT function update

Oh, didn't noticed that! I will look into it.

It seems like a JSON formatting error:
Cannot parse resources/kds-team.ex-survey-monkey/templates/api.json: SyntaxError: Unexpected token }


权重加载报错

RuntimeError: PytorchStreamReader failed reading zip archive: failed finding central directory

Can you provide more details?

Our code is based on mmsegmentation==0.25.0. You may try using the corresponding code from this version.

ok, I will try it.
------------------ 原始邮件 ------------------
发件人:                                                                                "Linwei-Chen/FADC"                                                                                @.>;
发送时间: 2024年4月24日(星期三) 晚上8:31
@.>;
<EMAIL_ADDRESS>主题: Re: [Linwei-Chen/FADC] 权重加载报错 (Issue #4)
Our code is based on mmsegmentation==0.25.0. You may try using the corresponding code from this version.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

(fadc) @.***:~/work/FADC$ python image_demo.py /home/wk2023/work/FADC/rabbit.jpg /home/wk2023/work/FADC/configs/FADC/upernet_R50_FADC_512_160k_ade20k.py /home/wk2023/work/FADC/weight/best_mIoU_iter_160000.pth
/home/wk2023/anaconda3/envs/fadc/lib/python3.9/site-packages/mmseg/models/losses/cross_entropy_loss.py:235: UserWarning: Default avg_non_ignore is False, if you would like to ignore the certain label and average loss over non-ignore labels, which is the same with PyTorch official cross_entropy, set avg_non_ignore=True.
  warnings.warn(
load checkpoint from local path: /home/wk2023/work/FADC/weight/best_mIoU_iter_160000.pth
Traceback (most recent call last):
  File "/home/wk2023/work/FADC/image_demo.py", line 40, in <module>
    main()
  File "/home/wk2023/work/FADC/image_demo.py", line 27, in main
    model = init_segmentor(args.config, args.checkpoint, device=args.device)
  File "/home/wk2023/anaconda3/envs/fadc/lib/python3.9/site-packages/mmseg/apis/inference.py", line 34, in init_segmentor
    checkpoint = load_checkpoint(model, checkpoint, map_location='cpu')
  File "/home/wk2023/anaconda3/envs/fadc/lib/python3.9/site-packages/mmcv/runner/checkpoint.py", line 617, in load_checkpoint
    checkpoint = _load_checkpoint(filename, map_location, logger)
  File "/home/wk2023/anaconda3/envs/fadc/lib/python3.9/site-packages/mmcv/runner/checkpoint.py", line 552, in _load_checkpoint
    return CheckpointLoader.load_checkpoint(filename, map_location, logger)
  File "/home/wk2023/anaconda3/envs/fadc/lib/python3.9/site-packages/mmcv/runner/checkpoint.py", line 299, in load_checkpoint
    return checkpoint_loader(filename, map_location)
  File "/home/wk2023/anaconda3/envs/fadc/lib/python3.9/site-packages/mmcv/runner/checkpoint.py", line 318, in load_from_local
    checkpoint = torch.load(filename, map_location=map_location)
  File "/home/wk2023/anaconda3/envs/fadc/lib/python3.9/site-packages/torch/serialization.py", line 705, in load
    with _open_zipfile_reader(opened_file) as opened_zipfile:
  File "/home/wk2023/anaconda3/envs/fadc/lib/python3.9/site-packages/torch/serialization.py", line 243, in init
    super(_open_zipfile_reader, self).init(torch._C.PyTorchFileReader(name_or_buffer))
RuntimeError: PytorchStreamReader failed reading zip archive: failed finding central directory
------------------ 原始邮件 ------------------
发件人:                                                                                "Linwei-Chen/FADC"                                                                                @.>;
发送时间: 2024年4月24日(星期三) 晚上8:31
@.>;
<EMAIL_ADDRESS>主题: Re: [Linwei-Chen/FADC] 权重加载报错 (Issue #4)
Our code is based on mmsegmentation==0.25.0. You may try using the corresponding code from this version.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

我尝试了下直接加载也报错，而且cuda版本和你给的一致
import torch
import torch.version
指定检查点文件的路径
checkpoint_path = '/home/wk2023/work/FADC/weight/best_mIoU_iter_160000.pth'
print(torch.version)
try:
    # 尝试加载检查点文件
    checkpoint = torch.load(checkpoint_path, map_location=torch.device('cpu'))
    print("Checkpoint loaded successfully!")
except Exception as e:
    # 如果加载失败，打印错误信息
    print(f"Failed to load checkpoint: {e}")
------------------ 原始邮件 ------------------
发件人:                                                                                "Linwei-Chen/FADC"                                                                                @.>;
发送时间: 2024年4月24日(星期三) 晚上8:31
@.>;
<EMAIL_ADDRESS>主题: Re: [Linwei-Chen/FADC] 权重加载报错 (Issue #4)
Our code is based on mmsegmentation==0.25.0. You may try using the corresponding code from this version.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

https://pan.baidu.com/s/1uGNefkH1IpYvMZ6cmq5tXw?pwd=CVPR
Is this ok?

谢谢你的帮助，问题已解决


Frontend: Change email if we change provider

Note for Shirel / Team – in case the email changes on the FAQ due to service provider, don’t forget to change it here to... and someone needs to manage the  FAQ customer support questions if they come in

The FAQ is now dynamic


suggestion - Installation / setup

It would be good to have a setup.py or a requirements.txt for users of your codebase to set up quickly with the required dependencies. Otherwise, this is really cool!

It would be good to have a setup.py or a requirements.txt for users of your codebase to set up quickly with the required dependencies. Otherwise, this is really cool!

Agree, i'm having problem running the code... always this error:
Traceback (most recent call last):
  File "main.py", line 2, in <module>
    from camera import VideoCamera
  File "camera.py", line 6, in <module>
    model = FacialExpressionModel("model.json", "model_weights.h5")
  File "model.py", line 16, in __init__
    self.loaded_model._make_predict_function()
AttributeError: 'Sequential' object has no attribute '_make_predict_function'

Do you know how to solve it?


Custom file input overflow when selecting multiple files

When the `multiple' property on a custom file input is enabled and a user selects a lot of files, the filenames overflow the file input.

  <input type="file" class="custom-file-input" id="customFiles" multiple>
  Choose files

This overflow issues can be easy fixed by adjusting the .custom-file-label styles a bit:
.custom-file-label {
  white-space: nowrap;
  overflow-x: hidden;
}

This likely needs two separate patches, one for v4.x and one for v5 since we rewrote the component there.

@mdo Can I take this?

@ms-yogi Go for it!

Is this still an issue with the latest v4-dev? We landed a patch recently #32145.
@patrickhlauke

the patch #32145 fixed the size of the hidden input, not the visible label, so the issue is/was still there. made a patch https://github.com/twbs/bootstrap/pull/32160 (but only added overflow:hidden ... not sure what the benefit/use of the suggested white-space:nowrap was ... happy to add that too if that can be explained a bit?)
v5 is unaffected by this problem, as it uses a completely different approach

#32160 was merged, thanks @patrickhlauke!


File Created time seens incorrect on Windows repository files

Hello,
I use restic on windows - with great success - thanks.
I am writing a Windows GUI to view the repo snapshots, folders and files and found that the Created and Modified date-time values are 'always' the same. The Modifed date is correct, the Created date is incorrect (different to what Windows shows).
At first I thought it was my program but then I dumped some blobs out using restic and found that the Created date is incorrect.
I can provide more info if you need it.
Thanks again for doing restic - great work.
Mike Fletcher

what gui tool are you using? (im looking for one too)
what language are you using in windows and wich windows version? (might be a date format related problem)

restic only saves the change, modification and access times. The creation time (windows) or birth time (unix) is not saved. And only the access and modification times are restored. Currently syscall.UtimesNano is used to restore the timestamps and it only supports the two previously mentioned timestamps.

Ok, my mistake in not understanding ctime.
Thanks for the response.
Mike


Lower Level Transaction Builder

PR-Codex overview
This PR enhances transaction handling in Thirdweb by refactoring transaction receipt retrieval and introducing a new ThirdwebTransaction class.
Detailed summary

Refactored transaction receipt retrieval to use ThirdwebTransaction methods
Introduced ThirdwebTransaction class for transaction management
Updated method calls to use ThirdwebTransaction for better readability and consistency

The following files were skipped due to too many changes: Thirdweb.Tests/Thirdweb.Utils.Tests.cs, Thirdweb/Thirdweb.Transactions/ThirdwebTransaction.cs

✨ Ask PR-Codex anything about this PR by commenting with /codex {your question}

Codecov Report
Attention: Patch coverage is 50.31847% with 78 lines in your changes are missing coverage. Please review.

Project coverage is 89.15%.  Consider uploading reports for the commit 9eb85b9 to get more accurate results

Files
Patch %
Lines

...rdweb/Thirdweb.Transactions/ThirdwebTransaction.cs
59.34%
41 Missing and 9 partials :warning:

Thirdweb/Thirdweb.Utils/Utils.cs
0.00%
27 Missing :warning:

...irdweb/Thirdweb.Wallets/SmartWallet/SmartWallet.cs
75.00%
1 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #16      +/-   ##
==========================================
- Coverage   95.12%   89.15%   -5.97%
==========================================
  Files          14       15       +1
  Lines         964     1070     +106
  Branches       84      100      +16
==========================================
+ Hits          917      954      +37
- Misses         34       97      +63
- Partials       13       19       +6

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Error at end of flashing Galaxy looks redundant and displays incorrect number of chips

“NOT ALL REMOTE BOARDS DETECTED!, detected 33, expecting 32” is an incorrect error message. All chips were detected in this run.

@ShLiTT FYI


Video does´nt play in Learning pathways in Teams, but in the web. The video  is posted as a link från Stream, and I am the owner. Neither me, nor other people in the organisation kan play the video.

PROVISIONING NOTE: If you are having issues with the SharePoint look book while trying to provision M365 learning pathways please do not post that issue to this repo as we cannot help you here. Please post all questions and issues for the SharePoint look book to SharePoint/sp-provisioning-service GitHub Issues List.

WEB PART NOT LOADING: If you are getting the error: "Microsoft 365 learning pathways has a configuration issue. Ask your administrator for assistance". Please review the Diagnosing Pre-Check guidance before submitting your bug.

Describe the bug
A clear and concise description of what the bug is.
To Reproduce

Steps to reproduce the behavior

Expected behavior

A clear and concise description of what you expected to happen.

Screenshots

If applicable, add screenshots to help explain your problem.

Learning Pathways version number  4.1.4 (Adviced not to update due to risk for problems... )

Please share the version number of learning pathways in your tenant app catalog.

Additional context

Add any other context about the problem here.

Tried to describe the problem in the form, but it does´nt stick... 😒 I got the issue from a user, and both me and my colleague experience the same problem. I tried restarting Teams, no difference. There are several similar links posted at the same page not working.

closed as duplicate of #798


[27.x] WFLY-8770 Integrate aws.S3_PING discovery protocol

Resolves
https://issues.redhat.com/browse/WFLY-8770
Upstream PR
https://github.com/wildfly/wildfly/pull/15523
Proposal
https://github.com/wildfly/wildfly-proposals/pull/439

Thanks @rhusar!


Currency converter implementation [US #42]

Implements User Story #42
Tasks: #67 #66 #65
WHAT kind of change does this PR introduce?
Added a currency conversion feature that will convert an amount entered from one specified currency to another.
The following is a demo of the feature in action.

HOW is this accomplished?
Currency conversion rate data is loaded from api.fixer.io when the MoneyActivity is started. When the currency button is pressed,  a new AlertDialog is presented to allow the user to select the two currency types to convert between. The conversion is then performed by the MoneyCalculatorImpl.

New integration tests in MoneyActivityTest
calcCurrency() in MoneyCalculatorImpl
GetCurrencyTask gets specific conversion rate from API
BackgroundCurrencyTaskBuilder creates specific GetCurrencyTasks
MoneyCalculator interface combines TaxCalculator and CurrencyConverter

Checklist

[x] Docs have been added / updated to reflect the changes
[x] I have reviewed and tested the changes :white_check_mark:
[x] I have squashed my commits to have a reasonable amount of commits
[x] All of the code I have written adhere to the coding conventions outlined in the coding conventions section of the wiki

✅ Styling is adequate and follows coding conventions outlined by the Kotlin Foundation

Code conventions followed for the most some extra spaces in certain places (mentionned in my review)

✅ New methods and functionalities have appropriate tests (testing edge cases + good coverage)

Good integration test

✅ Branch has an acceptable amount of commits with descriptive names and

All is well on this front

✅ PR description matches the code outlined a has mentions to issues
✅ This PR attempts to implement a specific feature (no code blob or epic pr)
Status: Waiting for answers before approval
Comments: Overall, the PR is great. I am awaiting some minor changes to be executed before approving.

✅ Styling is adequate and follows coding conventions outlined by the Kotlin Foundation
✅ New methods and functionalities have appropriate tests (testing edge cases + good coverage)
✅ Branch has an acceptable amount of commits with descriptive names and

All is well on this front

✅ PR description matches the code outlined a has mentions to issues
✅ This PR attempts to implement a specific feature (no code blob or epic pr)
Status: Approved
Comments: Great work !


[MODORDERS-712] Rollover with closed order

Purpose
MODORDERS-712 - Encumbrances are created for closed orders during FYRO
Approach

Added a new test with a rollover using a closed order
Used a new reusable feature to close an order, but this is already added by the integration test for MODORDERS-706


Linking to files

This is a really great project! I have one little suggestion though...
I think that in some cases (particularly with the JavaScript APIs), it would be better to link through the file listing on GitHub rather than directly to the HTML page on GitHub.
For example, this page on XHR:
http://simpl.info/xhr/
...links through to the corresponding HTML file:
https://github.com/samdutton/simpl/blob/gh-pages/xhr/index.html
...but the really interesting stuff is actually in the associated JavaScript file, so it might make more sense to link to:
https://github.com/samdutton/simpl/tree/gh-pages/xhr
Just my $0.02.

Just realised I never actually responded to this — apologies. I've been snowed under with my day job and haven't been able to do much work on simpl.info recently.
Thank you for your comments!
I completely agree about linking to the relevant file. As a start, I've changed the GitHub links to point to the directory containing the demo, in the commit here.


Change logic for Insecticide treated bed net

Issue
The logic in the aggregated scorecard is different than the logic in the individual card. In the individual card, the patient gets a check for every time the question is asked (and it is asked on every visit)

In the aggregated scorecard, a single yes answer in any month applies to all months for the child
The logic should change  to match the individual scorecard (as is the case for all of the other items in this panel)

@adamhstewart
This change implies changing structure of NCDA data stored at patient node.
This mean we'll have to regenerate data for all patients (~85K).
On Pantheon, script processes ~10K and hour, so we'll  need to run it overnight.


General Grievance: Watch dpbosnet.net

General Grievance requests the watch of the watch_keyword dpbosnet\.net. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

Approved by Jeff Schaller in Charcoal HQ


OS X: Dock icon has no functionality

Keybase GUI Version: 1.0.16-20160525110018+2aed1f7
The dock icon for the Keybase GUI does nothing when clicked on, which is contrary to almost every other application for OS X. If the menu bar icon is where the functionality of the GUI takes place, then there should be no dock icon, or there should at least be an option to disable it.

The icon rarely sits on my dock, only sometimes after the boot, but it soon disappears.

Really? The icon never goes away on my dock.

Yep, and we have the same version too.

I believe this was fixed on my system after restarting. I previously had a non-nightly Keybase installed (without GUI), then installed the Keybase package (.pkg). The dock icon would not go away, but it now doesn't show up after a system restart.

@jkcclemens are you on 10.10?

@gabriel 10.11.5

I think I saw this happen on 10.10 once.
Can you do a keybase log send and post the log ID?

b6c5922a6cfb602cdfeaee1c

So am I right in saying that the dock icon should not be shown all the time? I'm running 1.0.16-20160715110019+f0caa34 and the dock icon is showing up all the time, even after restarting my Mac.

Same here, my dock has a high real estate value. 💎
Keybase GUI Version: 1.0.16-20160715110019+f0caa34
Log ID: 6d7bf469dc0656f2a2caf31c

I think if you do File | Quit (on 1.0.16-20160715110019), it should make the dock icon go away. I'm unable to verify this at the moment though.

@gabriel If you quit the app, it quits Keybase all together and removes the icon from the menubar and ends the Keybase process.
What I feel it should do is only show the Keybase icon in the menubar when Keybase is running.

@MasterRoot24 If you quit the app, keybase continues to run in the background.(See #3773)

@JohnMHarrisJr At least KBFS doesn't carry on running for me, if I quit Keybase.
With Keybase running (GUI app closed, but running in the Dock + Menubar):
joenyland@Joes-MBP ~ $ ps aux | grep -i keybase
root             8827   0.0  0.0  2516688   1104   ??  Ss   Thu10am   0:00.03 /Library/PrivilegedHelperTools/keybase.Helper
joenyland        8734   0.0  0.0  2425216    468 s001  R+   11:23pm   0:00.00 grep --color -i keybase
joenyland        8186   0.0  1.1 573442948 183996   ??  S    11:23pm   0:00.45 /Applications/Keybase.app/Contents/SharedSupport/bin/kbfs -debug -log-file=/Users/joenyland/Library/Logs/keybase.kbfs.log -runtime-dir=/Users/joenyland/Library/Caches/Keybase /keybase
joenyland        8003   0.0  0.1 573494256  24692   ??  S    11:23pm   0:00.33 /Applications/Keybase.app/Contents/SharedSupport/bin/keybase -d --log-file=/Users/joenyland/Library/Logs/keybase.service.log service
joenyland        7992   0.0  0.0 573412372   5504   ??  S    11:23pm   0:00.01 /Applications/Keybase.app/Contents/SharedSupport/bin/updater -path-to-keybase=/Applications/Keybase.app/Contents/SharedSupport/bin/keybase
joenyland        7988   0.0  0.6  3504104 103116   ??    U    11:23pm   0:01.05 /Applications/Keybase.app/Contents/Frameworks/Keybase Helper.app/Contents/MacOS/Keybase Helper --type=renderer --no-sandbox --primordial-pipe-token=8B100EA26D4A7148BD5EB5F9104F26EC --lang=en-US --node-integration=true --hidden-page --enable-pinch --num-raster-threads=4 --enable-zero-copy --disable-partial-raster --enable-gpu-memory-buffer-compositor-resources --content-image-texture-target=3553,3553,3553,3553,3553,34037,3553,3553,3553,3553,34037,3553,34037,34037 --video-image-texture-target=3553,3553,3553,3553,3553,34037,3553,3553,3553,3553,34037,3553,34037,34037 --channel=7983.1.1265471905
joenyland        7984   0.0  0.3  2810996  42840   ??  S    11:23pm   0:00.16 /Applications/Keybase.app/Contents/Frameworks/Keybase Helper.app/Contents/MacOS/Keybase Helper --type=gpu-process --channel=7983.0.1676095703 --no-sandbox --supports-dual-gpus=true --gpu-driver-bug-workarounds=16,21,30,35,46,49,50,54,56,64,65,70,73 --gpu-vendor-id=0x10de --gpu-device-id=0x0fe9 --gpu-driver-vendor --gpu-driver-version
joenyland        7983   0.0  0.6  3517152 102396   ??  S    11:23pm   0:01.27 /Applications/Keybase.app/Contents/MacOS/Keybase
joenyland@Joes-MBP ~ $ ls /keybase/
private  public
joenyland@Joes-MBP ~ $

After I quit Keybase:
joenyland@Joes-MBP ~ $ ps aux | grep -i keybase
root             8827   0.0  0.0  2516688   1060   ??  Ss   Thu10am   0:00.03 /Library/PrivilegedHelperTools/keybase.Helper
joenyland        7877   0.0  0.0  2435456    932 s001  S+   11:21pm   0:00.00 grep --color -i keybase
joenyland@Joes-MBP ~ $ ls /keybase/
ls: cannot open directory '/keybase/': Device not configured
joenyland@Joes-MBP ~ $

If you do Quit from the menubar icon it will quit everything, keybase, kbfs, etc.
If you do File | Quit from the menu while the app is in focus, only the main app will quit, and the menubar will still be there, and the service, kbfs, etc will still be running.
Is this what you experience?

On Monday, August 15, 2016 12:52:00 PM EDT Gabriel Handford wrote:

If you do Quit from the menubar icon it will quit everything, keybase, kbfs,
etc.
If you do File | Quit from the menu while the app is in focus, only the main
app will quit, and the menubar will still be there, and the service, kbfs,
etc will still be running.
Is this what you experience?

There is no option to Quit from the menubar icon.
--
John M. Harris, Jr.

@gabriel I'm the same as @JohnMHarrisJr - there's no Quit option from the menubar icon - when I click the menubar icon, I get the menubar menu open:

I wonder if you're referring to this Quit menu item in the menubar widget?

If so, when I click this or File > Quit when the app has focus, I see all Keybase processes (except for Keybase.helper) end.
Do we have to have a Dock icon at all? Could we do away with the Dock icon and just have the menubar icon, or at least let users choose what they want?

If you do File > Quit while the app has focus, the dock icon should go away.

You can try using a prerelease build:
https://prerelease.keybase.io/darwin/Keybase-1.0.17-20160818001424%2B1850da5.dmg

Ok, I can recreate that behaviour now, but I would argue that it's still not the behaviour I would expect from a Mac OSX app - If I "quit" an app, I expect all the processes associated with it to quit too. The behaviour that I now experience (as you have described above) means that I quit the Keybase "app", but it still leaves background processes running (namely the menubar icon).
I would expect the dock icon to disappear when the Keybase GUI is closed, but the menubar icon to remain. If I want Keybase to run, but I don't want it to show up in the Dock, I have to launch Keybase, then "quit" it whilst the app has focus - feels really clunky to me. Maybe it's just me 😕

This happens on Linux too, and apparently this is desired behavior. The argument for is that other software does the same, but I don't know anything that does that.
On August 18, 2016 9:01:15 AM EDT, Joe Nyland<EMAIL_ADDRESS>wrote:

Ok, I can recreate that behaviour now, but I would argue that it's
still not the behaviour I would expect from a Mac OSX app - If I "quit"
an app, I expect all the processes associated with it to quit too. The
behaviour that I now experience (as you have described above) means
that I quit the Keybase "app", but it still leaves background processes
running (namely the menubar icon).
I would expect the dock icon to disappear when the Keybase GUI is
closed, but the menubar icon to remain. If I want Keybase to run, but I
don't want it to show up in the Dock, I have to launch Keybase, then
"quit" it whilst the app has focus - feels really clunky to me. Maybe
it's just me 😕

--
John M. Harris, Jr.
PGP Key: f2ea233509f192f98464c2e94f8f03c64bb38ffd
Sent from my Android device. Please excuse my brevity.

This might be resolved in the latest build we just made available as an update, or you can get it here:
https://prerelease.keybase.io/darwin/Keybase-1.0.17-20160829110024%2Bc4e8dc8.dmg
It will remember your UI state, and restore it. If you had the main window closed, and/or dock icon closed it should show that after an update, or on a reboot.
We're might still tweak when the UI restores, but should feel less spammy than it was before in these new builds.
Thanks for feedback and sorry it took us a bit to get to this.

Maybe we can add whether to hide dock as a setting. Some apps quit after last window is closed and some don't. For example, if you close the Slack app window, the dock icon remains.
Also the keybase.Helper is something we install but is managed by the OS (as a privileged helper tool). It's footprint should be really tiny though since it only handles a small set of tasks (about 177kb in size).

On August 30, 2016 4:47:47 PM EDT, Gabriel Handford<EMAIL_ADDRESS>wrote:

Maybe we can add whether to hide dock as a setting. Some apps quit
after last window is closed and some don't. For example, if you close
the Slack app window, the dock icon remains.

That should be seen as an issue with Slack, but I honestly didn't know anybody used Slack. You know there's an IRC gateway, right? You don't need to use the app, you can use a real chat client.
John M. Harris, Jr.
PGP Key: f2ea233509f192f98464c2e94f8f03c64bb38ffd
Sent from my Android device. Please excuse my brevity.

For example, if you close the Slack app window, the dock icon remains.

That should be seen as an issue with Slack...

@JohnMHarrisJr In your opinion it's an issue. This is actually the behaviour that's expected from Mac apps.

That is not an opinion. When you close the last window of the application and there is no visible sign that a program is running, you'd expect it to not be running and wasting precious resources.
On August 30, 2016 5:54:00 PM EDT, Joe Nyland<EMAIL_ADDRESS>wrote:

For example, if you close the Slack app window, the dock icon
remains.

That should be seen as an issue with Slack...

@JohnMHarrisJr In your opinion it's an issue. This is actually the
behaviour that's expected from Mac apps.

--
John M. Harris, Jr.
PGP Key: f2ea233509f192f98464c2e94f8f03c64bb38ffd
Sent from my Android device. Please excuse my brevity.

That's not the expected behaviour on a Mac of an app which has background tasks.
Prime example: Mail.app


Having single\aggregate signal types forces developers to write a lot of boilerplate

Everytime we read an input we need to check if it is single or aggregate, we need easier API to iterate through input signals.
Option1: signal is always aggregate, so we can always just iterate over it and check length if needed
Option2: add s.All() method which will be same for single and aggregate types and will return iterable

Option3 : we still can have singular and collection types, but once pipes are flushed we can always provide collection to inputs

signal package simplified in https://github.com/hovsep/fmesh/pull/28


Pokémon Center Heal Tracker

Add full party healing checks to the tracker, showing under the PC Heals value in the tracker.

Turn this on by selecting the "Survival ruleset" option in the settings menu/Settings.ini file.
Starts at -1 because the lab gives you a free heal, so successfully escaping the lab will show 0 visits.

Bug fixes:

Reverted to using the Poison step counter memory stamp while also using the poison status to perform tracker updates and userdata writes
Check for cancelling file selection when setting the ROMS folder in the settings menu of the tracker

Also updates the readme and increments the release version. I do note that this is not heavily tested yet so there is a chance for problems, so people should be independently tracking until we work out the kinks in this.

Shouldn't the playe rbe responsible to keep track of these? Like you add a "+" button to increment wheneve rit's needed and reduce the "listen frequency"

I had considered that. However, we have the potential to see when the player has all of their Pokémon healed so why not take advantage of that to do it automatically? The player's Pokémon page is all autotracked things anyway.


Emit Domain Event to leverage SRP and OCP

As a suggestion, emitting a domain event like CommentCreated would be more effective when creating a comment. A handler, such as the MakeCommentCommandHandler, can then manage this event and attempt to send the email. This approach helps separate these two logics, adhering to the Single Responsibility Principle (SRP) and Open/Closed Principle (OCP). It also allows for more straightforward future extensions, such as sending notifications through other channels.

This is a good tip. thank you. I will do it soon.


feat(documentation): add helpers for responsive functions

fix #726

:tada: This PR is included in version 4.44.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


vSphere CPI Support for 1.24

Is your feature request related to a problem? Please describe.
vSphere CPI chart just released an official image for 1.24, 1.24.0. This will need to be implemented in our charts to bring in official 1.24 support and provide skew policy support for 1.25.
Describe the solution you'd like
Update the chart to include the new version and tweak the semver ranges.
Checklist for items that need completed

[x] Update Image-mirror repo
[x] Update manifests in rancher/vsphere-charts
[x] Notify about chart "release" (reference @brandond @cwayne18 and @rancher-max in team-release-rancher-bits that new chart version is available)
[x] Update chart in rancher/charts
[x] Update chart in rancher/rke2-charts (RKE2 team)
[x] Updated RKE2 to consume new chart (RKE2 team)

Since 1.24.1 is now also available as of couple days ago, we may want to update to it too. And then coordinate updates to other charts as per the checklist in this issue.

Moved back to "working" because we need to update charts in the Update chart in rancher/charts, rancher/rke2-charts, and rancher/RKE2.
See the checklist in the issue for progress.

@TJPatel is working with a customer who has the problem
Pink Triangle Press can't delete volumes or get kubectl top from their Rancher cluster ever since upgrading to kubernetes 1.24.4 but other commands appear to work (I see metrics server is down and out) since they are using vSphere CPI on Rancher 2.6.8.

They are waiting for vSphere CPI support for 1.24 to resolve this.

See test template in associated CSI issue here.

vSphere CPI chart didn't install successfully v1.24.8.
Testing steps:

Created a rancher server v2.7.0 on vSphere.
Created a downstream node driver cluster with 1cp, 1worker and 1 etcd node.
Installed a CPI chart v101.1.0+up1.4.1
i. Installation process finished, however, the cloud provider was not set on the node.

CPI chart didn't install successfully, hence reopening the issue.

vSphere CPI chart install successfully on v1.24.8.
Testing steps:

Created a rancher server v2.7.0 on vSphere.
Created a downstream node driver cluster with 1cp, 1worker and 1 etcd node.
Installed a CPI chart v101.1.0+up1.4.1
Made sure the Provider ID is set.

CPI chart install successfully, hence closing the issue.

/backport 2023-Q1-v2.6x


Multiple arg types is kinda messed up

Trying to use the new multiple arg methods, I'm running into problems that might kill the multiple args idea. Take this:
      route context do |r, response, session|
        r.on "snapshot", String do |_, snapshot_id|
          snapshot = @project.snapshots[snapshot_id]

Which results in Error: expected argument #1 to 'Appocular::Storage::YAML(Appocular::Snapshot)#[]' to be String, not (Bool | String).
A bit of testing shows that the type of the block parameters is actually the union of the types returned by the called #match? methods (but only the ones that's actually called). Turns out that Tuple#map is just a macro that constructs a new tuple by inlining the block code. But the return type of self#[] would be the union of the types of the union, which in turn makes the return type of our block in on to the union of the return types of the match? methods.
Of course one can do as(Whatever) in one's on blocks, but I think it kinda ruins the DSL.
One solution that might work is making the multiple arg #is/#on into macros that unroll into nested single argument calls. That ought to make the compiler capable of pinpointing the exact type at each level, but I don't know if such a macro is possible.
What's your thoughts?

I feel like there's a way to do this because this works as we would expect:
tuple = {1, "hello", nil}
value = tuple[0]
pp typeof(value) # => Int32
value = tuple[1]
pp typeof(value) # => String
value = tuple[2]
pp typeof(value) # => Nil

But that could just be because I'm using numeric literals because passing a variable gives the union:
tuple = {1, "hello", nil}
tuple.size.times do |i|
  value = tuple[i]
  pp typeof(value)
end

(Int32 | String | Nil)
(Int32 | String | Nil)
(Int32 | String | Nil)

The weird thing,to me, is that the code that Tuple#map generates calls them with numeric literals:
Tuple.new(
  (yield self[0]),

  (yield self[1]),

  (yield self[2]),
)

So it seems like it would work, but I think because the variable yielded to the block is the union of all of the types, the block result becomes a union as well. So maybe we need to sort this out with a macro rather than a method.

With a bit of indirection and screwing around with macros, I was able to get this to work in a quick proof-of-concept:
require "uuid"

Request.new("/foo/bar").on "foo", String do |foo, string|
  pp foo: typeof(foo), string: typeof(string)
end

class Request
  property path : String

  def initialize(@path)
  end

  def on(*segments)
    on segments do |captures|
      yield captures
    end
  end

  def on(segments : Tuple(*T)) forall T
    {% begin %}
      captures = {
        {% for i in 0...T.size %}
          begin
            matcher = segments[{{i}}]
            if (match = %r(\A/?[^/]+).match path.sub(%r(\A/), "")) && (%result{i} = match?(match[0], matcher))
              self.path = path.sub(%r(\A/?#{match[0]}), "")
              %result{i}
            end
          end,
        {% end %}
      }

      if captures.any?(&.nil?)
        return
      else
        yield({
          {% for i in 0...T.size %}
            captures[{{i}}].not_nil!,
          {% end %}
        })
      end
      {% debug %}
    {% end %}
  end

  def match?(segment : String, matcher)
    matcher === segment
  end

  {% for type in %w[Int UInt] %}
    {% for size in %w[8 16 32 64 128] %}
      def match?(segment : String, matcher : {{type.id}}{{size.id}}.class)
        segment.to_{{type[0..0].downcase.id}}{{size.id}}?
      end
    {% end %}
  {% end %}

  def match?(segment : String, matcher : Symbol | String.class)
    segment
  end

  def match?(segment : String, matcher : UUID.class)
    UUID.parse? segment
  end

  def match?(segment : String, matcher : Regex)
    matcher.match segment
  end
end

It doesn't work completely yet (some variables are bleeding over for subsequent matchers), but the types are being constrained properly.

Got it, it was because I was setting self.path inside the macro. This works:
require "uuid"

%w[
  /foo/bar
  /posts/c31b6980-e0fb-439a-af0b-b13b8224fec5
].each do |path|
  pp r = Request.new(path)

  r.on "foo", String do |foo, string|
    pp({ {"foo", String} => {foo: typeof(foo), string: typeof(string)} })
  end

  r.on "posts", UUID do |posts, post_id|
    pp({ {"posts", UUID} => {posts: typeof(posts), post_id: typeof(post_id)} })
  end
end

class Request
  # ...

  def on(segments : Tuple(*T)) forall T
    {% begin %}
      path = self.path
      captures = {
        {% for i in 0...T.size %}
          begin
            %matcher{i} = segments[{{i}}]
            if (%match{i} = %r(\A/?[^/]+).match path.sub(%r(\A/), "")) && (%result{i} = match?(%match{i}[0], %matcher{i}))
              path = path.sub(%r(\A/?#{%match{i}[0]}), "")
              %result{i}
            end
          end,
        {% end %}
      }

      if captures.any?(&.nil?)
        return
      else
        self.path = path
        yield({
          {% for i in 0...T.size %}
            captures[{{i}}].not_nil!,
          {% end %}
        })
      end
    {% end %}
  end

  # ...
end

Trying to hack it into the code I get:
Showing last frame. Use --error-trace for full trace.

There was a problem expanding macro 'macro_139768752891200'

Code in src/route.cr:130:9

 130 | {% begin %}
       ^
Called macro defined in src/route.cr:130:9

 130 | {% begin %}

Which expanded to:

 > 12 |
 > 13 |               begin
 > 14 |                 __temp_2400 = segments[1]
                                              ^
Error: index out of bounds for Tuple(Tuple(String, String)) (1 not in -1..0)

On the first multiple arg test, which I don't get. The double tuple (hehe) seems wrong to me, but how it ends up there?

I got it to compile but it does fail a couple specs:
  1) Armature::Route matches requests to dynamic routes using symbols
     Failure/Error: match.should eq "bar"

       Expected: "bar"
            got: {"bar"}

     # spec/route_spec.cr:99

  2) Armature::Route matches requests to dynamic routes with named types
     Failure/Error: match.should be_a Int64

       Expected {123} (Tuple(Int64 | Regex::MatchData | String | UUID)) to be a Int64

     # spec/route_spec.cr:144

I think this one is because it's yielding a tuple containing a single value. When your block accepts 2 arguments, the compiler knows to splat the arguments, but it's ambiguous with a 1-element tuple.

I got it working in #5 by splatting the tuple explicitly like we were doing before. 😄


Microsoft Edge compat

Hey there Backbone devs,
I am working on assessing, cataloging, and triaging library compat with Microsoft Edge. Do you know the version compat range for Backbone in Edge? Are all versions fully operable in Edge? Also, do you have any bugs that block features or compat I can help with or escalate?

Thanks for reaching out.
I don't think any of the core contributors use Windows as their main OS, so we generally wait till Sauce tells us there's a problem. Until Sauce supports Edge (or an Edge VM is released) I don't think any of us have tried to run the test suite on Edge.
That said, the Backbone tests are hosted at http://backbonejs.org/test/... :smiley:

Current stable and master branch versions pass in MS Edge.

with support back to 0.9.0 (based on tags it went from 0.5.3 to 0.9.0) and tests were runnable back to 0.9.0.

because the test runner failed to run I suspect the older versions QUnit dep to be the cause of the issue.

Current stable and master branch versions pass in MS Edge

:smile: Thanks for testing it!

Thanks @jdalton


Make traces show up in Grafana

Maybe we should investigate using Grafana Tempo.

I didn't make any progress, we should just remove opentelemetry for now, as everything is in Influx.


ebv portal queries

 Die Portal-API von GEO BON anbinden

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

104 of 127 (81.89%)  changed or added relevant lines in 2 files are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage decreased (-0.008%) to 85.255%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

services/src/server.rs
1
5
20.0%

services/src/handlers/ebv.rs
103
122
84.43%

Files with Coverage Reduction
New Missed Lines
%

services/src/server.rs
1
63.98%

Totals

Change from base Build<PHONE_NUMBER>:
-0.008%

Covered Lines:
28933

Relevant Lines:
33937

💛  - Coveralls

bors merge


Fixed a bug where dragging multiple files onto a folder in QS's 1st pane

Fixed a bug where dragging multiple files onto a folder in QS's 1st pane would show the copy to... action and not the move to... action.
source/destination had been accidentally mixed up.
For files residing on the same disk
Reproduce:

Drag 1 file onto a folder in QS's 1st pane.
Move To... appears
Drag 2 or more files onto a folder in QS's 1st pane
Copy To... appears.

This fixes that :)

Hmmm. If I have a folder in the first pane and I drag a file onto it, the file is simply moved to that folder (or copied if it’s a different filesystem), which is sort of what I’d expect. Dropping files on a folder in QS doesn’t seem to be any different from dropping them on the folder in Finder. What am I doing wrong?
I tried using ⌥⌘G, since I know that brings up an action, but it gives “Move To…” whether I have 1 or 3 files selected.

Hmm... are you sure dragging 3 files onto the folder doesn't give you the
'copy to...' pop up?
See the picture: http://i.imgur.com/Yk9ut.png
It should be 'move to...' since the files are all on the same system
(Macintosh HD). If I dragged 3 files in finder it'd move them.
Looking at the code, there's a definite typo so if this bug doesn't exist
for you then I'm completely :S
!
This does not affect dragging/dropping to another filesystem. This is still
always copy to... as expected.
On 20 October 2011 14:05, Rob McBroom <
<EMAIL_ADDRESS>
Hmmm. If I have a folder in the first pane and I drag a file onto it, the
file is simply moved to that folder (or copied if it’s a different
filesystem), which is sort of what I’d expect. Dropping files on a folder in
QS doesn’t seem to be any different from dropping them on the folder in
Finder. What am I doing wrong?
I tried using ⌥⌘G, since I know that brings up an action, but it gives
“Move To…” whether I have 1 or 3 files selected.
--
Reply to this email directly or view it on GitHub:
https://github.com/quicksilver/Quicksilver/pull/508#issuecomment-2468316

Ah, the overlay. It was so faint, I didn’t even notice it. When you said “action”, I thought you literally meant that an action should appear in the second pane. I see what you mean now. Yes, you’ve fixed it. :)

Sorry, I should have been more clear - my fault.
The overlay and the actual 'action' performed (move as opposed to copy) is
correct now :)
On 20 October 2011 19:59, Rob McBroom <
<EMAIL_ADDRESS>
Ah, the overlay. It was so faint, I didnt even notice it. When you said
action, I thought you literally meant that an action should appear in the
second pane. I see what you mean now. Yes, youve fixed it. :)
--
Reply to this email directly or view it on GitHub:
https://github.com/quicksilver/Quicksilver/pull/508#issuecomment-2472819


MULE-16976: Add explanation on the combination of routers and scopes with transactions

@Cristian-Venticinque after this is merged, please cherry-pick to 4.1 but exclude from transaction-management.adoc the item explaining parallel foreach

Changes addressed in PR #601, as well as updating the transaction-management article.


Bump digital twins version for 11-16-2020 release

Also add changelog notes for this release

Note that since we added a new not-backwards-compatible feature, I bumped the minor version, not the patch version


sssd: version `LDB_1.1.30' not found

Issue description
I'm trying to join an Active Directory domain using sssd.
warning: the following units failed: sssd.service
● sssd.service - System Security Services Daemon
   Loaded: loaded (/nix/store/v7n8wb27ywk8c1nw2n07kd2s739nkna2-unit-sssd.service/sssd.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Thu 2018-04-26 20:55:15 UTC; 194ms ago
  Process: 7935 ExecStart=/nix/store/apmma532f0n6rl53cksxwlzwqpzkybi5-unit-script/bin/sssd-start (code=exited, status=1/FAILURE)
Apr 26 20:55:15 nixos sssd_be[7955]: Unable to load module [ad] with path [/nix/store/i6zipl5jip4g8aisiihmac64h87ahq35-sssd-1.16.0/lib/sssd/libsss_ad.so]: /nix/store/dpp213nfxlnk2mrdw9965rji6y7rv4hz-ldb-1.1.27/lib/libldb.so.1: version `LDB_1.1.30' not found (required by /nix/store/b55k15898pk07pww1cnvq5awn04k3ddc-samba-4.7.6/lib/samba/libldbsamba-samba4.so)...
Apr 26 20:55:15 nixos sssd_be[7955]: Unable to load module ad
Apr 26 20:55:15 nixos sssd_be[7955]: Unable to setup data provider [1432158209]: Internal Error
Apr 26 20:55:15 nixos sssd_be[7955]: Could not initialize backend [1432158209]
Apr 26 20:55:15 nixos sssd[7940]: Process [luxo.local], definitely stopped!
Apr 26 20:55:15 nixos sssd[7940]: Exiting the SSSD. Could not restart critical service [luxo.local].
Apr 26 20:55:15 nixos sssd[7940]: Error removing pidfile! (2 [No such file or directory])
Apr 26 20:55:15 nixos systemd[1]: sssd.service: Control process exited, code=exited status=1
Apr 26 20:55:15 nixos systemd[1]: sssd.service: Failed with result 'exit-code'.
Apr 26 20:55:15 nixos systemd[1]: Failed to start System Security Services Daemon.
Hint: Some lines were ellipsized, use -l to show in full.
warning: error(s) occurred while switching to the new configuration

Steps to reproduce
services.sssd = {
  enable = true;

  config = ''
[sssd]
domains = shadowutils

[domain/shadowutils]
id_provider = ad
access_provider = ad
autofs_provider = ad
chpass_provider = ad
  '';
};

Technical details

system: "x86_64-linux"
host os: Linux 4.14.35, NixOS, 18.03.132083.06c576b0525 (Impala)
multi-user?: yes
sandbox: no
version: nix-env (Nix) 2.0
nixpkgs: /nix/var/nix/profiles/per-user/root/channels/nixos/nixpkgs

I'm working on a PR.


Missing Zend-i18n package

Hello,
I just installed a fresh install of Apigility with curl -sS https://apigility.org/install | php (according to documentation).
I started playing with it (it's my first time using Apigility) but I couldn't add an alpha validator on my field.
Looking at the console I realized I had the following error:
PHP Fatal error:  Uncaught Error: Class 'Zend\I18n\Validator\Alpha' not found

To fix the issue, I added the zendframework/zend-i18n package with composer require zendframework/zend-i18n  and added 'Zend\\I18n' in modules.config.php (it was done by composer but there was a \ missing).
I hope it helps :)

@jbelien Thanks for reporting the issue.
I believe zend-i18n should be added then to skeleton, so user has smooth experience when using default installation.
Can you explain what's wrong with 'Zend\I18n' (with single slash)? It was not working for you properly when it was injected like that? What was the error? Why you had to change it to double?
I've just tried install the skeleton and I see in config/module.config.php:
return [
    'Zend\Db',
    'Zend\Filter',
    'Zend\Hydrator',
    'Zend\InputFilter',
    'Zend\Paginator',
    'Zend\Router',
    'Zend\Validator',
    'ZF\Apigility',
    'ZF\Apigility\Documentation',
    'ZF\ApiProblem',
    'ZF\Configuration',
    'ZF\OAuth2',
    'ZF\MvcAuth',
    'ZF\Hal',
    'ZF\ContentNegotiation',
    'ZF\ContentValidation',
    'ZF\Rest',
    'ZF\Rpc',
    'ZF\Versioning',
    'Application',
];

so all modules are with single \ and it doesn't cause any issues.
Also see:
https://3v4l.org/vmEge

Can you explain what's wrong with 'Zend\I18n' (with single slash)?

It indeed works with on single slash Zend\I18n, sorry !
I mentioned it because all the others have a double slash in my config/modules.config.php and Zend\I18n was the single one with one single slash (with auto injection via composer).
So not really an issue indeed (and probably related to my environment - WSL -).

This repository has been closed and moved to laminas-api-tools/api-tools-skeleton; a new issue has been opened at https://github.com/laminas-api-tools/api-tools-skeleton/issues/1.


BASIC - Rework Function Components section to prefer normal function …

This is a change, related to some of the discussion in #90 and #87 about React.FC/React.FunctionComponent.  I realize this change itself is pretty opinionated, as is some of my wording, (though I did attempt to be fair to both sides), but I thought it'd be a good starting point for discussion.

There's two syntaxes for declaring function components:
// 'normal function' syntax
const C1 = ({message}: {message: string}) =>
{message}
;

const C2: React.FC<{message: string}> =>
{message}
;

As currently written, the can either be read as neutral or favoring the React.FC syntax: the main section is written neutrally (you can use X or Y) but the sub-points are largely written favoring the FC syntax.
This this restructures the section so that the "normal function" syntax is preferred, without strictly recommending against the React.FC syntax.
Most of my arguments for this change are in the new version, but I'll reiterate them here:

React.FC doesn't handle defaultProps correctly:

const Component: React.FC<message: string> = ({message}) =>
{message}

Component.defaultProps = {message: "Hello, there"};
const test = <Component />; // Error, message is required.

There may be some issues with the type of the implicit children prop: I listed DefinitelyTyped/DefinitelyTyped#33006 in relation to this point, though perhaps the root cause there is something deeper: that issue ends up linking to some deeper type issues, so maybe those would eventually be resolved.  (So maybe I need to remove that link from my PR)

Personally, I think explicit children is better than implicit children, anyway.  The props are the contract for a component and if a component expects to have children, that's an important part of the contract.  Also, children can be mandatory with an explicit children prop:

// Errors if used like `<MustHaveChildren />`
const MustHaveChildren = ({children}: {children: React.ReactNode}) =>
{children}
;

Ultimately, there's just not much benefit of React.FC to justify the extra characters: I guess it prevents errors like MyComponent.propType = 'MyComponent' (should be propTypes), and an error like const MyComponent = () => ({not: 'a valid component'}).

Plus, all else being equal, I think it's good for a cheatsheet to have a single clear recommendation, rather than presenting two equivalent options as equal.

As a separate commit, I also moved the props into their own type.  Personally I find that's a better template as it quickly becomes unreadable to inline more than a couple props.  (I can split that into its own PR or drop it)

sweet


unicode error

~/Downloads/instagram-scraper => python3 instagram_scraper.py  --tag test
[test] downloaded https://scontent-ort2-2.cdninstagram.com/vp/188d7488bf24b1ea94461e9e6881a168/5BE4C024/t51.2885-15/s150x150/e35/35155975_454524598306381_4206684960490258432_n.jpg as 0.jpg in data/test
Traceback (most recent call last):
  File "instagram_scraper.py", line 101, in <module>
    main(args.tags, args.count)
  File "instagram_scraper.py", line 89, in main
    _single_tag_processing(tag, total_count)
  File "instagram_scraper.py", line 84, in _single_tag_processing
    ', '.join(mentions)
UnicodeEncodeError: 'ascii' codec can't encode character '\u015f' in position 193: ordinal not in range(128)

Yeah. I am getting the same on Windows 10

@Suleman-Elahi @initbar Does changing the join to ', '.join([unicode(x) for x in mentions]) work? This seems to be working fine for me.

I think maybe this would work u', '.join(mentions). If only I could reproduce this on my PC.

@Suleman-Elahi @meetmangukiya true, since unicode (Python 2) was redefined to str (Python 3), I think the equivalent statement would be a ', '.join([str(x) for x in mentions]). However, doing str doesn't seem to work either.

I'll try to get a Dockerfile ready so that @meetmangukiya can reproduce this issue :smile:

This was fixed by @paul-15 via https://github.com/meetmangukiya/instagram-scraper/commit/f1080ead623e385f9192c87ee3fc70ed2c9992e7 If this still persists for you guys, we can reopen this.


null byte should be stripped?

Null byte is problematic in the HTML5 specification. I think it has no benefit having null byte allowed in any filtered output. Thoughts?

Given
hello

There's a possibility that url is empty, and if there's no null char injection, the rendered output is:
hello

The problem is now obvious,  id=link1 becomes the attribute value of href, which is likely contradictory to the developer's belief.
So, the null char injection there is to avoid such a state-changing consequence, which is the ultimate goal of our xss-filters. No problem? I'll close this "issue".

I was referring to null byte "\0", not empty string ("").

I was illustrating the importance of allowing null char with an example using uriInUnquotedAttr(). So this answers your question, we'd not strip null chars.

if the input is "\0" for uriInUnQuotedAttr, should the output be "" (empty) or "\0" or "\uFFFD"

the output is now \0, therefore untouched.
changing it to empty is incorrect, because that would affect how the browser and context-parser parses subsequent content (and therefore the corresponding filter), as shown in the example given. To ease your understanding, please ask yourself what's the context of {{id}} when url is empty or non-emptied by \0 in hello.
based on the minimal encoding principle, the responsibility to turn \0 to \uFFFD is the responsibility of browser.

I think throughout the conversation here, you just said "Null byte is problematic in the HTML5 specification". But can you please clarify how problematic and why problematic?

My proposition is that seeing \0 in input always hinting us this is an attack attempt. It is nice seeing you explaining it does not affect the filter logic and I think I am good to close it :)


NIFI-981: Added ExecuteHiveQL and PutHiveQL processors

Overall this looks great @mattyb149 ! I was able to get the processors working against kerberized and non-kerberized Hive. I think if we address the one or two minor comments then we should be good to go.

Latest commits look good, I am a +1 and going to merge to 0.x and master

Latest changes look good, I am a +1 again :)


Local docs server should be similar to gh-pages

local-server.sh script and Gemfile make reference to bleeding-edge jekyll, but gh-pages isn't all that bleeding-edge so need to dial it back and use the gh-pages gem https://github.com/github/pages-gem

Fixed by microservices-demo/microservices-demo.github.io#16


fix(aws_batch.js): fix JSON handling of AWS Batch env data

:tada: This PR is included in version 1.84.1 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Update rpcrawtransaction.cpp

fix make issue in Arch Linux x86_64 libboost 1.58

This take care of issue #71


Added scrollContainer property, allowing the user to specify the container to watch for scrolling

The issue I was experiencing with WOWjs was when I tried to use it with a polymer [paper-scroll-header-panel] (https://elements.polymer-project.org/elements/paper-scroll-header-panel) which wraps the window inside a scrollable container.  The result is the windows scroll event is not fired.  To remedy this, I wanted to specify the container on which to add the scroll listener, rather than default to window, similar to ScrollMagic

+1 ... this fix works when using applying an animation inside angular-material's md-content/md-scroll-y directive as well. md-scroll-y adds overflow-y:auto and overflow-x: hidden and Wow's scrollHandler is not fired.
Example:
<body>
  <div layout="column" role="main>
    <md-toolbar>...</md-toolbar>
    <md-content class=".scroll-container" md-scroll-y flex></md-content>
  </div>
</body>

Javascript fix:
    <script>
      $(document).ready(function() {
        new WOW({scrollContainer: '.scroll-container'}).init();
      });
    </script>

Please add this to the next version. :+1:


Detection By Coordinates Issue

https://github.com/volkamerlab/teachopencadd/blob/03a43302cbf485005a17c5b9a7de13ed529f3ccd/teachopencadd/talktorials/T018_automated_cadd_pipeline/utils/binding_site_detection.py#L51
I ran into an issue when attempting to define the binding site through the use of coordinates in the binding_site_detection.py util under T018. After further investigation, an error stated it was failing on line 51 due to having only 3 positional arguments. We were able to fix this by adding in the "binding_site_output_path=None" to line 53 to accommodate the 4th variable needed to run the string.
    def compute_by_coordinates(self, protein_obj, binding_site_specs_obj, binding_site_output_path=None):

@ryansmithdogs thanks for the pointer.
@corey-taylor could you please have a look into this and add the suggestion to the code?

Addressed in https://github.com/volkamerlab/teachopencadd/pull/216

@corey-taylor could you please double-check if this is completely resolved with #216? If yes, please go ahead and close the issue. Thank you!


Pytorch Errors

I got this error after running MiDaS 2.1
initialize
device: cpu
Loading weights:  model-f6b98070.pt
Using cache found in C:\Users\gregb/.cache\torch\hub\facebookresearch_WSL-Images_master
Traceback (most recent call last):
File "run.py", line 151, in
run(args.input_path, args.output_path, args.model_weights, args.model_type, args.optimize)
File "run.py", line 32, in run
model = MidasNet(model_path, non_negative=True)
File "C:\Users\gregb\Documents\Python\MiDaS\midas\midas_net.py", line 47, in init
self.load(path)
File "C:\Users\gregb\Documents\Python\MiDaS\midas\base_model.py", line 11, in load
parameters = torch.load(path, map_location=torch.device('cpu'))
File "C:\Users\gregb\anaconda3\envs\3DP\lib\site-packages\torch\serialization.py", line 527, in load
with _open_zipfile_reader(f) as opened_zipfile:
File "C:\Users\gregb\anaconda3\envs\3DP\lib\site-packages\torch\serialization.py", line 224, in init
super(_open_zipfile_reader, self).init(torch.C.PyTorchFileReader(name_or_buffer))
RuntimeError: version <= kMaxSupportedFileFormatVersion INTERNAL ASSERT FAILED at ..\caffe2\serialize\inline_container.cc:132, please report a bug to PyTorch. Attempted to read a PyTorch file with version 3, but the maximum supported version for reading is 2. Your PyTorch installation may be too old. (init at ..\caffe2\serialize\inline_container.cc:132)
(no backtrace available)

Seems like a version conflict. What is your PyTorch version?

I updated to the latest version and it's working now. Thanks.


ImportError: No module named 'skbio.math'

Trying to import:
skbio.math.stats.ordination.PCoA
so I did:
from skbio.math.stats.ordination import PCoA
but got:
ImportError: No module named 'skbio.math'

Wow, that is a very old import, what version are you currently running?
The new path should be from skbio.stats.ordination import pcoa.

Oh duh lol!  Sorry I didn't catch that.  Yea I just saw what doc I was looking at http://scikit-bio.org/docs/0.1.1/generated/skbio.math.stats.ordination.PCoA.html.  Thanks for the help. btw, when you google https://www.google.com/?ion=1&espv=2#q=python%20principal%20coordinate%20analysis the old docs come up before everything.

Quick question, does PCoA essentially follow the same steps as PCA but w/ a distance matrix instead of a standardized/centered covariance matrix (or correlation)?  If you could point this to anyone who could help that would be really useful http://stats.stackexchange.com/questions/222664/how-does-principal-coordinate-analysis-pcoa-work-as-compared-to-pca

@jolespin, see here. That website is the best resource I know of for ordination.


fix bug of issue: https://github.com/wechaty/python-wechaty/issues/12…

fix bug of issue: https://github.com/wechaty/python-wechaty/issues/120, which caused by FileBoxType difference

 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.yangte seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

Link to https://github.com/wechaty/PMC/issues/16

Please make the CI green, so we can merge your code to the master branch. Thanks for your contribution.

Please make the CI green, so we can merge your code to the master branch. Thanks for your contribution.

Sry, I got caught up in daily work and forgot it.

Please make the CI green, so we can merge your code to the master branch. Thanks for your contribution.

Sry, I got caught up in daily work and forgot it.
The CLA I had made, but the commit user still not linked to me. Is it necessary？


[RFE] Allow docker version ignore and compatibility described in release note

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
When we update docker-ce, if that version has not been tested with Rancher, then the deployment fails. We need to downgrade docker-ce version and wait for a new release of Rancher to be compatible with (eg https://github.com/rancher/rancher/issues/41851 for docker 24, https://github.com/rancher/rancher/issues/41851 for docker 23). Not only there is a security risk of downgrading docker-ce in the meantime, but it is also frustrating and time-consuming to have to experiment Rancher deployment and see it fails because nowhere it is written which version of Rancher has the fix (release note does not explicit which docker-ce is compatible).
Describe the solution you'd like
A clear and concise description of what you want to happen.
1/ that the release note of https://github.com/rancher/rancher/releases/ (or rke) describe compatibility with docker-ce
2/ that it is possible to override the check, with warning, in rke up command, so that we can always update docker-ce without waiting for Rancher validation (at our own risks).
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.

For info, it has been months we delayed docker-ce update because we waited for Rancher to validate against docker 23. Then we are still delaying because docker-ce 24 has been released and Rancher is still not compatible.

you dont need to downgrade just use the --ignore-docker-version  option during rke up

you dont need to downgrade just use the --ignore-docker-version option during rke up

Many thanks, I can see rke up supports the option! I can also see https://github.com/rancher/rancher/issues/41851#issuecomment-1601040136 comment, @snasovich added milestone to tickets and there is a suse page with compatibility matrix. Ideally I would say it would be better to make that information appears in https://github.com/rancher/rancher/releases/ , but I am satisfied right now. Closing the ticket.


timeseriesinsights - Have an exponential backoff when the request sent fails

If the issue is to do with Azure CLI 2.0 in-particular, create an issue here at Azure/azure-cli

Extension name (the extension in question)
timeseriesinsights
Description of issue (in as much detail as possible)
When the deployment hits an issue (i.e., no resources available to provision the given Sku in the region), the CLI keeps resending the request until it fails with an HTTP 503 (Too many requests).
We should have an exponential backoff in this case.

hi @jiasli could you have a look?

When no resources available to provision the given Sku in the region happens, what is the HTTP status code? Is it 429? Does the response have Retry-After header?
I believe the retry logic is controlled by Python SDK and msrest, thus out of CLI's control. msrest does honor Retry-After header.
The default retry policy of msrest is
https://github.com/Azure/msrest-for-python/blob/9e2e6529ac3cc91454a859c01775493872b20e92/msrest/universal_http/requests.py#L343-L349
    def __init__(self):
        self.policy = Retry()
        self.policy.total = 3
        self.policy.connect = 3
        self.policy.read = 3
        self.policy.backoff_factor = 0.8
        self.policy.BACKOFF_MAX = 90

add to S170

When no resources available to provision the given Sku in the region happens, what is the HTTP status code? Is it 429? Does the response have Retry-After header?
I believe the retry logic is controlled by Python SDK and msrest, thus out of CLI's control. msrest does honor Retry-After header.
The default retry policy of msrest is
https://github.com/Azure/msrest-for-python/blob/9e2e6529ac3cc91454a859c01775493872b20e92/msrest/universal_http/requests.py#L343-L349
    def __init__(self):
        self.policy = Retry()
        self.policy.total = 3
        self.policy.connect = 3
        self.policy.read = 3
        self.policy.backoff_factor = 0.8
        self.policy.BACKOFF_MAX = 90

No, it returns 503 (Internal Server Error) with the InsufficientInternalResources error code. No Retry-After header is added to the response.
no resources available to provision the given Sku in the region is not a throttling error. It means that we don't have resources to provision the Environment.
The requests are throttled automatically by ARM. What I meant is that we shouldn't retry failed requests - not only this one, probably all of them - without a Retry Policy with an exponential backoff, otherwise the routine is going to be throttled and the original error is going to be swallowed by the throttling error from ARM.

Hi @jiasli ,
According to the e-mail thread we've been through, I've updated the description of the issue.
The expected behavior is to have an exponential backoff and that it should not fail this fast when getting errors 500, like it happens when we try the same action in Azure Portal.
As you mentioned, while we don't migrated to track 2 SDK and Azure Core, we can't have more control over the retry logic.
Can we keep this issue open for tracking purposes so we tackle it as soon as you migrate?

And here's the log we've been looking into, with redacted information:
urllib3.connectionpool : https://management.azure.com:443 "PUT /subscriptions/<REDACTED SUB ID>/resourceGroups/<REDACTED RG NAME>/providers/Microsoft.TimeSeriesInsights/environments/riserrad-insufficient-resources?api-version=2018-08-15-preview HTTP/1.1" 500 7971
urllib3.util.retry : Incremented Retry for (url='/subscriptions/<REDACTED SUB ID>/resourceGroups/<REDACTED RG NAME>/providers/Microsoft.TimeSeriesInsights/environments/riserrad-insufficient-resources?api-version=2018-08-15-preview'): Retry(total=3, connect=4, read=4, redirect=None, status=None)
urllib3.connectionpool : Retry: /subscriptions/<REDACTED SUB ID>/resourceGroups/<REDACTED RG NAME>/providers/Microsoft.TimeSeriesInsights/environments/riserrad-insufficient-resources?api-version=2018-08-15-preview
urllib3.connectionpool : Resetting dropped connection: management.azure.com
urllib3.connectionpool : https://management.azure.com:443 "PUT /subscriptions/<REDACTED SUB ID>/resourceGroups/<REDACTED RG NAME>/providers/Microsoft.TimeSeriesInsights/environments/riserrad-insufficient-resources?api-version=2018-08-15-preview HTTP/1.1" 500 7971
urllib3.util.retry : Incremented Retry for (url='/subscriptions/<REDACTED SUB ID>/resourceGroups/<REDACTED RG NAME>/providers/Microsoft.TimeSeriesInsights/environments/riserrad-insufficient-resources?api-version=2018-08-15-preview'): Retry(total=2, connect=4, read=4, redirect=None, status=None)
urllib3.connectionpool : Retry: /subscriptions/<REDACTED SUB ID>/resourceGroups/<REDACTED RG NAME>/providers/Microsoft.TimeSeriesInsights/environments/<REDACTED ENV NAME>?api-version=2018-08-15-preview
urllib3.connectionpool : Resetting dropped connection: management.azure.com
urllib3.connectionpool : https://management.azure.com:443 "PUT /subscriptions/<REDACTED SUB ID>/resourceGroups/<REDACTED RG NAME>/providers/Microsoft.TimeSeriesInsights/environments/<REDACTED ENV NAME>?api-version=2018-08-15-preview HTTP/1.1" 500 7971
urllib3.util.retry : Incremented Retry for (url='/subscriptions/<REDACTED SUB ID>/resourceGroups/<REDACTED RG NAME>/providers/Microsoft.TimeSeriesInsights/environments/<REDACTED ENV NAME>?api-version=2018-08-15-preview'): Retry(total=1, connect=4, read=4, redirect=None, status=None)
urllib3.connectionpool : Retry: /subscriptions/<REDACTED SUB ID>/resourceGroups/<REDACTED RG NAME>/providers/Microsoft.TimeSeriesInsights/environments/<REDACTED ENV NAME>?api-version=2018-08-15-preview
urllib3.connectionpool : Resetting dropped connection: management.azure.com
urllib3.connectionpool : https://management.azure.com:443 "PUT /subscriptions/<REDACTED SUB ID>/resourceGroups/<REDACTED RG NAME>/providers/Microsoft.TimeSeriesInsights/environments/<REDACTED ENV NAME>?api-version=2018-08-15-preview HTTP/1.1" 500 7971
urllib3.util.retry : Incremented Retry for (url='/subscriptions/<REDACTED SUB ID>/resourceGroups/<REDACTED RG NAME>/providers/Microsoft.TimeSeriesInsights/environments/<REDACTED ENV NAME>?api-version=2018-08-15-preview'): Retry(total=0, connect=4, read=4, redirect=None, status=None)
urllib3.connectionpool : Retry: /subscriptions/<REDACTED SUB ID>/resourceGroups/<REDACTED RG NAME>/providers/Microsoft.TimeSeriesInsights/environments/<REDACTED ENV NAME>?api-version=2018-08-15-preview
urllib3.connectionpool : Resetting dropped connection: management.azure.com
urllib3.connectionpool : https://management.azure.com:443 "PUT /subscriptions/<REDACTED SUB ID>/resourceGroups/<REDACTED RG NAME>/providers/Microsoft.TimeSeriesInsights/environments/<REDACTED ENV NAME>?api-version=2018-08-15-preview HTTP/1.1" 500 7971
msrest.exceptions : Error occurred in request., RetryError: HTTPSConnectionPool(host='management.azure.com', port=443): Max retries exceeded with url: /subscriptions/<REDACTED SUB ID>/resourceGroups/<REDACTED RG NAME>/providers/Microsoft.TimeSeriesInsights/environments/<REDACTED ENV NAME>?api-version=2018-08-15-preview (Caused by ResponseError('too many 500 error responses',))
cli.azure.cli.core.util : request failed: Error occurred in request., RetryError: HTTPSConnectionPool(host='management.azure.com', port=443): Max retries exceeded with url: /subscriptions/<REDACTED SUB ID>/resourceGroups/<REDACTED RG NAME>/providers/Microsoft.TimeSeriesInsights/environments/<REDACTED ENV NAME>?api-version=2018-08-15-preview (Caused by ResponseError('too many 500 error responses',))
request failed: Error occurred in request., RetryError: HTTPSConnectionPool(host='management.azure.com', port=443): Max retries exceeded with url: /subscriptions/<REDACTED SUB ID>/resourceGroups/<REDACTED RG NAME>/providers/Microsoft.TimeSeriesInsights/environments/<REDACTED ENV NAME>?api-version=2018-08-15-preview (Caused by ResponseError('too many 500 error responses',))

Azure CLI internally relies on urllib3's retry logic. As 500 is returned by ARM, we need further ARM log to investigate.


Enable all uefi-rs features on docs.rs

This change should cause docs.rs to show documentation for things hidden
behind feature flags, notably the exts feature.
See https://docs.rs/about/metadata for details.

This would be really helpful because I was trying to look through how the allocator stuff worked, but it wasn't showing on docs.rs so I had to go digging through the source code.

@StevenDoesStuffs until such time as this is on docs.rs, you can build the documentation locally with all features enabled:
cargo doc --target x86_64-unknown-uefi --all-features --open

Looks good, thank you.


Error during  inference of model trained on fp16

Hi,
I trained a a translation model  from the transformer architecture on fp16 on turing  gpu. The result I get is a model which is half  in size than the original fp32 model I trained which is good. But now I want to infer both the models on CPU only. When I tried to infer the fp16 model without passing --fp16 argument during inference I get same inference time for both models. But when I try to pass --fp16 flag, I am getting error as
  File "/home/fairseq_translation/fairseq/fairseq/sequence_generator.py", line 148, in generate
    return self._generate(encoder_input, beam_size, maxlen, prefix_tokens)
  File "/home/fairseq_translation/fairseq/fairseq/sequence_generator.py", line 174, in _generate
    encoder_out = model.encoder(**encoder_input)
  File "/usr/local/lib/python3.6/dist-packages/torch/nn/modules/module.py", line 489, in __call__
    result = self.forward(*input, **kwargs)
  File "/home/fairseq_translation/fairseq/fairseq/models/transformer.py", line 314, in forward
    x = self.embed_scale * self.embed_tokens(src_tokens)
  File "/usr/local/lib/python3.6/dist-packages/torch/nn/modules/module.py", line 489, in __call__
    result = self.forward(*input, **kwargs)
  File "/usr/local/lib/python3.6/dist-packages/torch/nn/modules/sparse.py", line 118, in forward
    self.norm_type, self.scale_grad_by_freq, self.sparse)
  File "/usr/local/lib/python3.6/dist-packages/torch/nn/functional.py", line 1454, in embedding
    return torch.embedding(weight, input, padding_idx, scale_grad_by_freq, sparse)
RuntimeError: _th_index_select is not implemented for type torch.HalfTensor

Why am I getting this error , did I miss something ? Please help.
Thanks

I don't think half precision computation is supported on CPU. @myleott?

That's correct, you have to choose FP16 or CPU. This is a limitation of PyTorch.

Hi, @myleott Thanks for the reply. Is this a limitation with libraries like PyTorch , Tensorflow or with the CPU architecture in itself. As I see this comment it confuses me whether it is limitation of PyTorch as you said or CPUs.


syntax highlights for for expression

https://github.com/starkware-libs/tree-sitter-cairo/pull/5

@trbutler4 can you assign this to me


Intellisense suggestion not shown when cursor is between quotes

VSCode Version: 1.21.0
OS Version: Windows 10

I am trying to suggest: 'MyIntegrationEvent' (with quotes) from these contexts:

[EventSubscriber(ObjectType::Codeunit, Codeunit::MyCodeunit, '^', '', false, false)] (where ^ represents my cursor position).
[EventSubscriber(ObjectType::Codeunit, Codeunit::MyCodeunit, ^, '', false, false)]

While it perfectly works for inserting it when there are no surrounding quotes: , it doesn't work in the first case. I am sending really similar text edit changes. You can find below their values and the results I get.
Is it a bug?
Without quotes:
TextEdit = { NewText = "'MyIntegrationEvent'", Range = 25:65 - 25:65 }

With quotes:
TextEdit = { NewText = "'MyIntegrationEvent'", Range = 25:65 - 25:67 }

Please file this issue against your language extension. You also may be able to manually trigger intellisense using ctrl+space in the first case

This is Phillip they locked me out of my pc and all my apps so I can’t see the hard work you did but think you for every thing I’m video every thing they are doing hope later can help I just wanted what y’all fixed and my pc back I can’t even fix my drivers thanks any way

Sorry can’t see fine work you did but they locked me out of my pc and apps and every thing y’all fixed I can’t even see my own pics that was mine they have full control sorry but think you for all you have done let others know no sense working on something I never see
Sent from AOL Mobile Mail


Added rubocop for linting

@spacesnottabs, is this PR still current?

This PR is old, and I've since added RuboCop in https://github.com/openownership/register/issues/188 . Closing without merge.


Report unknown JSON fields, to catch errors early.

Unfortunately, for YAML, we do not have the UnmarshalStrict available.

Unfortunately, travis suggests that this seems to require golang 1.10. Does it make sense to put this on hold until 1.10 is the lowest version used for cri-tools?

@adelton The changed files are in vendors. We don't change vendor files this way. Please file a PR to kubernetes repo (the vendored file is here: https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/util/yaml/decoder.go), and then update vendors here after it merged.

Thank you. I'll file against Kubernetes, probably when it moves to golang 1.10.


Activate disabled tests in ExasolSqlDialectIT after fixes in Loader

Partly disabled test methods:

testChar
testIntervalYearToMonth
testIntervalDayToSecond

Blockers:

SPOT-9321

Moved to https://github.com/exasol/exasol-virtual-schema/issues/4


Failed to compile xargo

Output
System: Linux Mint Maya (Mate edition)
I've installed both cmake and libssl-dev
Any idea wha could be wrong?

CMake 2.8.11 or higher is required.  You are running version 2.8.7

This probably. Any chance you could try with a newer cmake release? Otherwise, there are also binary releases available; would those work for you?

I missed that line in output but it actually wasn't the problem. I looked just at sudo apt-get install cmake libssl-dev line and missed sudo apt-get install libcurl4-openssl-dev libssh2-1-dev . After installing libssh2-1-dev, it compiled and installed. I'm going to try it.
I'm not sure whether it's my tiredness or the README could be made more clear...
Anyway, I'm sorry for such trivial issue.


Swift 2.3 Support

Consider pulling the following (https://github.com/thedillonb/IOS-Pods-DFU-Library/tree/swift2.3) into a swift2.3 branch in this repository. I can not create a PR unless you create the swift2.3 branch in this repository - if you accept these changes of course.

Thanks a lot for the great work, we will review your PR and will update you on that, as we were not planning to fully support Swift 2.3 at the moment due to time constraints, but I'll keep this here for a bit and will let you know the decision after we've evaluated it, again thanks a lot !

Great work @thedillonb!
For what it may count, swift 2.3 support would be very useful to me.

@thedillonb I pulled the swift2.3 branch, but it seems that can't work on iOS10 or iOS9, I used the xcode8 to compile the source with swift 2.3 option, any help? thank you!

@Chris118 what do you mean can't work? I currently use it on IOS 10 so I'm not sure what kind of issue you are seeing.

We have decided not to go forward with Swift 2.3, sorry for the inconvenience


GNOME support through libei

I'm getting the same error as #18 with the default Ubuntu 21.10 Gnome Shell desktop:
[ERROR] Compositor does not support wlr_virtual_pointer_unstable_v1
Does each desktop require its own fake input implementation?

Unfortunately that is the case, and GNOME's planned approach is not actually based on Wayland at all, so it's a bit beyond the scope of this project.

With #18 now resolved to my satisfaction, going all the way with libei wouldn't be out of the question (in truth it would probably be easier, as libei resembles the wlroots approach much more closely), but actual GNOME support is contingent upon https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1436 being merged upstream to be of any use.

@packwidth Given the stopgap nature of this project I've decided to add uinput support with #21; if you're comfortable with the elevated privileges required it should work with vanilla GNOME.

That's fantastic! Thanks for looking into this.

This works great. If /dev/uinput access is handled by a udev rule and not by elevating waynergy itself, it doesn't seem like too big of an attack surface. Am I seeing that incorrectly?

It depends on how you go about getting waynergy into the required group. If you add your user to a uinput group, you've actually granted everything else you run access; making waynergy setgid instead would probably be the safer choice. Personally I've no ability to complain about arbitrary processes gaining access to input given that I'm normally on sway with no authentication for virtual input at all and the user-in-uinput-group approach makes testing simpler. Normal users should probably have different priorities.

Any update on this. https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2628