df function added

In ref to issue #41
Note:
I assume that df has been included by default in the target, since it is part of GNU coreutils.
I hope it fits what you are looking for.

I'm not sure on this. I feel like making shortcuts to cmd("xyz") where xyz is a Toolshed helper isn't something that I want to promote.
Perhaps making df a shortcut to disksup output would be valuable. My thought  with many Toolshed calls was to make useful functionality that Erlang/OTP provides more convenient and discoverable. Using Erlang's version of df would fit that, but now that I look at disksup, it calls df as well.
I'm leaning on passing on this unless there's a reason that a shortcut for cmd("df") is useful over all of the other coreutils, etc. commands that we could also make shortcuts to. @jjcarstens - did you have any ideas since you added the issue?


Added game agent state machine example.

This is an example state machine for creating a simple game agent behavior using a state machine.  It checks for no transition to handle transition inputs which are not accepted in that state.  It creates timestep transitions to execute an action at each timestep depending on what state the agent is in.

Coverage remained the same at 100.0% when pulling e1fdbc163cfbee67d063ccd9d7eec18faee081c5 on bsthorpe742:master into fc6eccbf5708d5b0bfec5854fa4ac3db4f46b514 on glyph:master.

This is potentially a cool example, but I don't think that adding it as-is would be illuminating unless it were integrated into some kind of documentation.  It also imports a private API, so that indicates perhaps something needs to be changed to make it a good example first.
So, I'm going to close this PR, but please feel free to open an issue to discuss what kind of value such an example could provide, and to open a new PR that re-proposes these changes after any necessary API changes have been made.


[00.00.00] [BUG]

Factorio & Maraxsis version number
2.0.25 and 1.23.29
Describe the bug
Maraxsis applies collision_masks to entities without first checking if they have collision.
My mod, https://mods.factorio.com/mod/James-Train-Mod, uses hidden accumulators with no collision under rails to store energy. Their collision is currently {layers={}, not_colliding_with_itself=true}. Looking at your code, it should leave them alone if the collision_mask was set to nil, like so
Accumulator.collision_mask = nil
Which I did try, but your mod was still adding the mask to it.
This is a problem because it makes my rails unable to have splits, like in the attached screenshot.
To Reproduce
Steps to reproduce the behavior:

Load both our mods.
Try placing a split using my Powered Rails.

Expected behavior
Check if entities have collision before adding masks to them.
Screenshots

Thanks for the report. I recommend you to update the version of maraxsis. This issue should be resolved.


Requests are logged multiple times when re-using the session

https://github.com/maykinmedia/django-log-outgoing-requests/blob/5a6ea38952d8f50bd2991e9dc5184ee38bafeb7b/log_outgoing_requests/log_requests.py#L49
When performing multiple requests in the same session, every request will cause the hook to be added again, regardless whether it was already added or not.

Fixed via a99494d1a4c30104a8fcdae27f9df55ed2b7fc08


Fix a bug in the recent memory copy propagation

Description
The bug was discovered when trying to reproduce #4511.
During the optimization, we may need to insert new GEPs. Those were being inserted at the start of the block. That led to some use-before-def situations. With this change, we now insert it just before the instruction being optimized.
Checklist

[ ] I have linked to any relevant issues.
[ ] I have commented my code, particularly in hard-to-understand areas.
[ ] I have updated the documentation where relevant (API docs, the reference, and the Sway book).
[ ] I have added tests that prove my fix is effective or that my feature works.
[ ] I have added (or requested a maintainer to add) the necessary Breaking* or New Feature labels where relevant.
[ ] I have done my best to ensure that my PR adheres to the Fuel Labs Code Review Standards.
[ ] I have requested a review from the relevant team or maintainers.

Is there a minimally reproable test case we can add to prevent regressions of this sort in the future?

Is there a minimally reproable test case we can add to prevent regressions of this sort in the future?

Done. Added unit tests for the optimization, including this fix.


Title and content text colors always get overridden by textColorPrimaryInverse and textColorSecondaryInverse

If you see the code below the md_title_color and md_content_color theme attributes always get ignored because the builder will always have a Dark or Light theme, therefore always overriding the builder colors with textColorPrimaryInverse and textColorSecondaryInverse. I had to revert back to <IP_ADDRESS> for now.
if (!builder.titleColorSet) {
            final int titleColorFallback = DialogUtils.resolveColor(builder.context, android.R.attr.textColorPrimary);
            builder.titleColor = DialogUtils.resolveColor(builder.context, R.attr.md_title_color, titleColorFallback);
            if (DialogUtils.isColorDark(builder.titleColor)) {
                if (builder.theme == Theme.DARK)
                    builder.titleColor = DialogUtils.resolveColor(builder.context, android.R.attr.textColorPrimaryInverse);
            } else if (builder.theme == Theme.LIGHT)
                builder.titleColor = DialogUtils.resolveColor(builder.context, android.R.attr.textColorPrimaryInverse);
        }
        if (!builder.contentColorSet) {
            final int contentColorFallback = DialogUtils.resolveColor(builder.context, android.R.attr.textColorSecondary);
            builder.contentColor = DialogUtils.resolveColor(builder.context, R.attr.md_content_color, contentColorFallback);
            if (DialogUtils.isColorDark(builder.contentColor)) {
                if (builder.theme == Theme.DARK)
                    builder.contentColor = DialogUtils.resolveColor(builder.context, android.R.attr.textColorSecondaryInverse);
            } else if (builder.theme == Theme.LIGHT)
                builder.contentColor = DialogUtils.resolveColor(builder.context, android.R.attr.textColorSecondaryInverse);
        }

Good catch, fixed

https://github.com/afollestad/material-dialogs/releases/tag/v<IP_ADDRESS>

That fixes that issue but won't it still override any color set in "?android:textColorPrimary"? In the docs it says that if md_title_color is not set its supposed to use that as fallback. Right now its still using textColorPrimaryInverse, which might be different.

No, if you don't set your own from the global attribute, it will use
textColorPrimary. If it it determines that textColorPrimary will not be
visible over the dialog background (e.g black on black), it will use
textColorPrimaryInverse. An example of where that would happen is if your
Activity used a light theme, and you used the dark dialog theme; the
primary color of a light activity is a dark shade of gray, which would not
be visible over a dark dialog.
On Tue, Apr 7, 2015, 9:15 PM Jose Toti<EMAIL_ADDRESS>wrote:

That fixes that issue but won't it still override any color set in
"?android:textColorPrimary"? In the docs it says that if md_title_color is
not set its supposed to use that as fallback. Right now its still using
textColorPrimaryInverse, which might be different.
—
Reply to this email directly or view it on GitHub
https://github.com/afollestad/material-dialogs/issues/413#issuecomment-90781891
.

Ok yeah you're right. Cheers.

Same issue here I'm using build '<IP_ADDRESS>' and whenever I try to set the titleColorRes() and the contentColorRes() for some reason, both take the color of titleColorRes()

@DaCardinal this issue is closed, and it's completely unrelated to that.
I have no issues in <IP_ADDRESS> with contentColor being overwritten though. This is from the sample project's themed dialog:


Dialog box will pop under MSFS when connection to FSUIPC or SimConnect is briefly lost

Describe the bug
Please fix the dialog that pops under when connection is lost to fsiupc.  This would be MainForm.cs(742-745) fsuipcCache_ConnectionLost.  MF seems to intermittently lose connection to fsuipc and pops the dialog behind MSFS.  After clicking on the OK button MF normally reconnects right away.  The popped under dialog is super annoying in VR.  I've modified my local code to not pop the dialog then do a short sleep and reconnect.  I have yet to fail to reconnect so seems like it would be a good idea to stop popping the dialog.  Thanks.
Steps To Reproduce
Steps to reproduce the behavior:

Start MF and MSFS via FSUIPC
Play game
Look for popped under dialog for a disconnect.

Expected behavior
You should probably have some retry logic and do a few reconnects before popping the dialog.
Actual behavior
A clear and concise description of what you actually happens.
Details

MobiFlight Version: [<IP_ADDRESS>]
FlightSim: MSFS2020]

Additional context
I did this in the code and it didn't seem to have any negative impact:
if (!execManager.SimAvailable())
{
_showError(i18n._tr("uiMessageFsHasBeenStopped"));
} else {
if (sender.GetType() == typeof(SimConnectCache))
{
//_showError(i18n._tr("uiMessageSimConnectConnectionLost"));
} else
{
//_showError(i18n._tr("uiMessageFsuipcConnectionLost"));
}
} //if
execManager.Stop();
System.Threading.Thread.Sleep(1000);
if (!execManager.IsStarted())
{
execManager.Start();
}

You don't have to put a sleep in there because MF will right away try again after 10 seconds.
I will think of a silent mode or VR mode to disable these popups... but I will not disable them for everyone at the moment, rather provide a settings option for that.

Are you running minimized in the tray bar or is MobiFlight maximized in window mode?

Minimized to the sys-tray for the most part.  I believe the modeless dialog only pops under when MSFS is running in VR.  MSFS doesn't make tabbing around very easy either in VR.  The game likes to have the focus.


tufte classes incompatible

The tufte classes are incompatible with just \DocumentMetadata{}, and in fact error with lualatex even without this. With pdflatex the document
\DocumentMetadata{}
\documentclass{tufte-book}

\title{tufte-book tagging test}

\begin{document}
text
\end{document}

errors with
! LaTeX Error: Unknown color 'DarkGreen'.

With lualatex the document
\documentclass{tufte-book}

\title{tufte-book tagging test}

\begin{document}
text
\end{document}

errors with
! Argument of \MakeTextLowercase  has an extra }.

From the long list of unresolved issues on their github page I'm guessing these should be no-support.

that's the way it looks, at least for now.


Code Coverage support (Codecov)

Description
Code coverage reports & badge
Related Issue

Motivation and Context

How Has This Been Tested?

Screenshots (if appropriate):
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[ ] I have signed the Adobe Open Source CLA.
[ ] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@85ee1aa). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #16   +/-   ##
=========================================
  Coverage          ?   94.59%
=========================================
  Files             ?        1
  Lines             ?       37
  Branches          ?       11
=========================================
  Hits              ?       35
  Misses            ?        2
  Partials          ?        0

Continue to review full report at Codecov.

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


Button onPointerUp event bubbling to MenuItem.

Provide a general summary of the issue here
Button onPointerUp event bubbling to MenuItem.
🤔 Expected Behavior?
Button calls stopPropagation on onPointerUp event
😯 Current Behavior
Button onPointerUp event bubbling to MenuItem. MenuItem catches onPointerUp event
💁 Possible Solution
No response
🔦 Context
No response
🖥 Steps to Reproduce
<MenuItem>
  <Button
      onPress={(e) => {
        triggerStateContext.close();
      }}
    >
        Close
  </Button>
</MenuItem>

Version
react-aria-components 1.1.1
What browsers are you seeing the problem on?
Chrome
If other, please specify.
No response
What operating system are you using?
macos
🧢 Your Company/Team
No response
🕷 Tracking Issue
No response

Historically, we've had the stance that menuitem shouldn't support interactive children (like a button) due to the ARIA spec saying only presentational children are allowed. It is a bit ambiguous as to whether that is still the case or not since I don't see "Children Presentational: true" listed here anymore, only for menuitemcheckbox and menuitemradio, but https://github.com/w3c/aria/issues/1711 seems to imply that only a submenu is allowed as a non-presentational child for a menu and thus a button still isn't allowed.

@LFDanLu Im not talking about Button in MenuItem. I say that Button should stop onPointerUp event propagation.
Here example without ManeItem.
https://codesandbox.io/p/sandbox/dreamy-visvesvaraya-866sp2
As you can see onPointerUp event bubbles up to div. But as react aria components doc says Button should not propagate this event.

As you can see onPointerUp event bubbles up to div. But as react aria components doc says Button should not propagate this event.

I found a related test, and by looking at it, I'm afraid it doesn't work like that?
https://github.com/adobe/react-spectrum/blob/b2c9961586795542603b899a1e1925cbeee9f34f/packages/%40react-aria/interactions/test/usePress.test.js#L2871-L2894
Looks like only press events (i.e., onPress, onPressStart, onPressEnd) are guaranteed not to propagate to the parent by default.

@sookmax There are no onPress onPressStart onPressEnd events in DOM. They are synthetic in react-aria. Events that are triggered by onPress, onPressStart, onPressEnd must be stop propagated.

Apologies for the delay. We can't actually stop propagation on the pointer up events because we actually rely on listening to that event here. I haven't tried but I don't believe we could change that listener to capturing + stopping propagation without breaking a bunch of things in usePress and related components.

@LFDanLu I think that's only there for our hit testing, so I think this should be fixed when we do https://github.com/adobe/react-spectrum/issues/1720


Use ReadOnlySpan to make the alloction free

Compiler will automatically rewrite const data ref to the bytes in data section of the assembly.
So it's allocation free, zero overhead.
See sample code:
https://sharplab.io/#v2:EYLgZgpghgLgrgJwgZwLQGED2AbbEDGMAlpgHYAyRMECU2yAPgMSly5TB4AEAJkchzwBYAFAABAEwBGUWIDMXDshi1CXSV3RcA3qK76uABwREAbrAjqpANi4AlaDwDypbAE8AyoaikAPMDdqAD4uACEuAF4QgCJqZWi4AA4AblEAXyA=

Contributor +1


remove unused duplicated fxns 👮♂

closes #562

@SWeav02 this PR is ready for review. I named the workflow "bader-dev" for now, and I'll then have a separate PR to merge this with the base bader wf pending feedback from you 😄


Animated Chart Type Error when using duration over 30 milliseconds

Description:
I encountered an issue with the Animated Chart in your charts_painter library. Specifically, when I set the animation duration over 30 milliseconds, I receive the following error:
Exception: type 'ChartItem<void>' is not a subtype of type 'ChartItem<MyCustomModel?>' of 'startValue'
or
Exception: type 'ChartItem<void>' is not a subtype of type 'ChartItem<MyCustomModel?>' of 'endValue'
Stacktrace
String: type 'ChartItem<void>' is not a subtype of type 'ChartItem<MyCustomModel?>' of 'endValue'
#0      ChartItem.animateTo (package:charts_painter/chart/model/geometry/chart_item.dart:21:41)
#1      ChartItemsLerp._lerpItemList.<anonymous closure> (package:charts_painter/chart/model/data/chart_data.dart:237:25)
#2      new _GrowableList.generate (dart:core-patch/growable_array.dart:136:28)
#3      ChartItemsLerp._lerpItemList (package:charts_painter/chart/model/data/chart_data.dart:193:12)
#4      ChartItemsLerp.lerpValues.<anonymous closure> (package:charts_painter/chart/model/data/chart_data.dart:181:14)
#5      new _GrowableList.generate (dart:core-patch/growable_array.dart:136:28)
#6      ChartItemsLerp.lerpValues (package:charts_painter/chart/model/data/chart_data.dart:180:12)
#7      ChartData.lerp (package:charts_painter/chart/mode<…>

However, the error doesn't occur when using the non-animated Chart or when the animation duration is set to or under 30 milliseconds.
Steps to Reproduce:

Use the Animated Chart
Set the animation duration to 300 milliseconds.
Observe the error.

Expected Behavior:
The chart should animate without errors.
Actual Behavior:
An error is thrown when the animation duration is 300 milliseconds.
Workaround:
Use the Chart without animation.
Set the animation duration to 30 milliseconds.
Environment:
Flutter version: 3.13.2
charts_painter version: 3.1.1
OS: macOS with an iOS Simulator iPhone 14 Pro Max

@floodoo Can you provide a code snippet where you get this issue?
I tried with charts from example but couldn't reproduce this issue

No sry, I can't provide any code due to company confidentiality.

I'm having the same issue here, and it happens when i have like 3 lists of data, and one of them has a different length because the data is still missing at that time, if i fill the problematic array with zeroes, the bug doesn't happen. (But i don't want to show zero values)
And the error is like:

If i set the animation duration to 0, the exception is not thrown


I cant compile pls help

I have this error and i have a ApiStuff.hx file created (the black boxes is a privacity thing)
source/Main.hx:98: characters 21-30 : Unknown identifier : ourSource
source/Main.hx:98: characters 21-30 : For optional function argument 'vPath'
source/VideoState.hx:48: characters 31-46 : Cannot access static field SKIP_STEP_LIMIT from a class instance

brb gonna fix this :troll:

àã more compile issues!!!! 😭

I fixed the error


Cards through SlackAdapter

I am trying to enable Prompts and Cards by using the Slack Adapter in C#. The article describes only about echo bot. Is there a way to enable them or is it still in the pipeline for development?
If there is, can someone redirect me to a reference article?

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 97b7eb7d-843a-774e-3ee4-8f3126cfea20
Version Independent ID: 5d501ffc-819f-0634-671c-13d432aa7f28
Content: Connect a bot to Slack - Bot Service - Bot Service
Content Source: articles/bot-service-channel-connect-slack.md
Service: bot-service
GitHub Login: @JonathanFingold
Microsoft Alias: kamrani

This article outlines how to use the Slack adapter, along with the Bot Framework adapter. The adapters manage traffic between a bot and a channel, but do not include the bot's business logic.
The steps in this article can be used with any bot to add support for the Slack channel. Once you have created the Slack adapter, created the Slack controller, and updated Startup.cs; you can follow any of the how-to articles for adding features to your bot.

See how-to Add media to messages for information on sending cards.
See how-to Implement sequential conversation flow for information about using prompts within dialogs.
See the Channel reference for information about which features (including card types) are supported on each channel.

I modified the Handling attachments Bot (https://github.com/microsoft/BotBuilder-Samples/tree/master/samples/csharp_dotnetcore/15.handling-attachments) from the sample projects to use it with the Slack Adapter. I also used it with the Bot Channel Registration through Azure without making the Slack Adapter changes.
So I think the basic business logic to cover the prompts and a Hero Card was covered there as I could see it when I used the Channel Registration.
But when using the slack adapter, it does not appear.
My guess is that I am not doing the configuration at the Slack app end correctly. It might be the Interactivity Request URL which I have currently set as "https://{myboturl}/api/slack". This was set as "https://slack.botframework.com/api/Actions" when using the Bot Channel Registration. Can you confirm what the request URL should be set to for interactivity when using the Slack Adapter?

One thing to try would be to add conditional code into your bot. If the activity came in on the Slack channel, then use a Slack-specific attachment; otherwise, use the Bot Framework hero card.

I understand your solution, however, my question is different - When I attach a Hero Card to a reply to a Slack Adapter, will I be able to visualize it in the slack app?
Currently I have two bots in slack -

one slack app connected to the slack adapter endpoint of my code.
second slack app connected to the Azure Bot Channel Registration endpoint of my code.

Both endpoints are subscribed to the same events and have the same codebehind bot associated with them.
But the Slack Adapter bot is not able to render the Hero Card. It is only rendering the IM messages. The Azure Channel bot is however able to render the hero card.
So, will I be able to render the hero card to the user using the Slack Adapter?

This might be a bug in the SlackAdapter, then. I'll create an issue in the SDK repo and cross link it.

@dipbanik There is an existing issue that might be affecting you: botbuilder-dotnet 3593.
@v-kydela Can you comment on the issue in this thread?

@dipbanik - The Slack adapter does not convert any Bot Framework cards to Slack blocks. You can see in the source code that the Slack adapter only accepts attachments that are already Slack blocks, and if an attachment isn't in Block Kit form then only the thumbnail image is used and the content is ignored:
if (att.Name == "blocks")
{
    message.Blocks = (List<Block>)att.Content;
}
else
{
    var newAttachment = new SlackAPI.Attachment()
    {
        author_name = att.Name,
        thumb_url = att.ThumbnailUrl,
    };
    attachments.Add(newAttachment);
}

If you want hero cards to be automatically converted to Slack blocks then you will need to use the Azure Bot Service Slack connector instead of the Bot Builder SDK Slack adapter. Otherwise, you can refer to this sample to see how to use Block Kit in your bot: https://github.com/microsoft/BotBuilder-Samples/tree/master/samples/csharp_dotnetcore/60.slack-adapter

Thank you for the clarification.


[torchvision video reader]inception commit

Implement a C++ video decoder, and refer to it as TorchVision (TV) video reader in the following.
Main features

Decode both video frames and audio waveform in a single pass
Being able to seek to a user-specified timestamp in both video- and audio streams, and decode frames starting from there. Also can take an end timestamp where the decoding should stop.
For video decoding, support to rescale the height/width and specific AVPixelFormat (default: AV_PIX_FMT_RGB24)
For audio decoding, support to resample audio using user-specified sampling rate and channels. User can also specify AVSampleFormat (default: AV_SAMPLE_FMT_FLT)
Support to decode pts only while actual video/audio frame data is skipped. This is useful in the dataset initialization stage where an index of video dataset needs to be built and we only need pts information

APIs
The main API includes

FfmpegDecoder::decodeFile(....): decode frames from a given video file. This is useful for both OOS and FB research projects, where videos reside in file folder.
FfmpegDecoder::decodeMemory(....): decode frames from a given compressed video byte array. This is useful for decoding everstore videos.

Sanity check

No memory leak is detected.

Benchmark
We use several videos from HMDB-51, UCF-101 and Kinetics-400 for benchmarking and unit test.  Test videos are listed below.

RATRACE_wave_f_nm_np1_fr_goo_37.avi

source: hmdb51
video: DivX MPEG-4

fps: 30

audio: N/A

SchoolRulesHowTheyHelpUs_wave_f_nm_np1_ba_med_0.avi

source: hmdb51
video: DivX MPEG-4

fps: 30

audio: N/A

TrumanShow_wave_f_nm_np1_fr_med_26.avi

source: hmdb51
video: DivX MPEG-4

fps: 30

audio: N/A

v_SoccerJuggling_g23_c01.avi

source: ucf101
video: Xvid MPEG-4

fps: 29.97

audio: N/A

v_SoccerJuggling_g24_c01.avi

source: ucf101
video: Xvid MPEG-4

fps: 29.97

audio: N/A

R6llTwEh07w.mp4

source: kinetics-400
video: H-264 - MPEG-4 AVC (part 10) (avc1)

fps: 30

audio: MPEG AAC audio (mp4a)

sample rate: 44.1K Hz

SOX5yA1l24A.mp4

source: kinetics-400
video: H-264 - MPEG-4 AVC (part 10) (avc1)

fps: 29.97

audio: MPEG AAC audio (mp4a)

sample rate: 48K Hz

WUzgd7C1pWA.mp4

source: kinetics-400
video: H-264 - MPEG-4 AVC (part 10) (avc1)

fps: 29.97

audio: MPEG AAC audio (mp4a)

sample rate: 48K Hz

Unit test

we compare the decoding speed between TorchVision video reader and PyAv in the following cases

decode full video from file / memory
decode a fixed number of frames (e.g. [4, 8, 16, 32, 64, 128]) at a randomly selected timestamp

we test the feature of rescaling video frames and resampling audio waveforms
we did stress test to iteratively decode videos and ensure no memory leak
we compare decoding results between only pts is needed and both pts and video/audio frames are needed. Ensure the returned pts data are identical. Also compare decoding efficiency to validate decoding is faster when only pts is needed

Results of unit test are attached.
[torchvision video reader unit test.log]
torchvision.video.reader.unit.test.log
Comparison with PyAv

When decoding all video/audio frames in the video, TorchVision video reader is 1.2x - 6x faster depending on the codec and video length
When decoding a fixed number of video frames (e.g. [4, 8, 16, 32, 64, 128]), TorchVision video reader runs equally fast for small values (i.e. [4, 8, 16]) and runs up to 3x faster for large values (e.g. [32, 64, 128])

Thanks a lot for the PR Zhicheng!
The first thing I need to figure out before we can merge this is how we will be adding ffmpeg as a dependency for torchvision, and if it will be a soft or hard dependency.
A few options:

use ffmpeg from conda-forge
pull the ffmpeg source and compile it together with torchvision
use the packages provided by ffmpeg

Also, what is the version of FFMpeg that we will be relying upon?
Another thing I need to do is to get CI working for Windows and OSX in torchvision, so that we can make sure that this PR compiles and works nicely in the other OS that torchvision supports.
I'll be looking into both the CI and ffmpeg dependency from an OSS perspective.

i think it might be a good start to start with (1), i.e. the ffmpeg from conda-source or system package manager (brew install ffmpeg / apt install ffmpeg). Also, by ffmpeg I presume you mean libav?
For binaries, we will figure out how to ship ffmpeg the right way ourselves. Just building ffmpeg from source is not sufficient btw, because you need to build it with codec support, and there are tons of codecs we need to build it with.

@soumith

i think it might be a good start to start with (1), i.e. the ffmpeg from conda-source or system package manager (brew install ffmpeg / apt install ffmpeg).

sounds good, I'll be looking into option (1) first (once I get full CI running).

Also, by ffmpeg I presume you mean libav?

We need the underlying libraries that are composed of ffmpeg (could also be called libav, but it now points to a fork of ffmpeg with different functionality).

For binaries, we will figure out how to ship ffmpeg the right way ourselves. Just building ffmpeg from source is not sufficient btw, because you need to build it with codec support, and there are tons of codecs we need to build it with.

Sounds good

Abandon this PR.
Please move to the new PR.
https://github.com/pytorch/vision/pull/1303/


A GUI Config Tool

Before I knew this git, I was using something called "ConfigFox" works on Windows..
Here at ConfigFox

Let me know if that still valid or outdated or better to stick with ghacks-user-js solely..
What do you think about a GUI tool to work with ghacks-user.js settings. ;)

ConfigFox has bugs, hasn't been updated for over 18 months, is procedurally flawed and not properly explained. The developer has abandoned it AFAIK.
I already have a GUI tool - it's called an IDE

I see, thanks for the info..

@Thorin-Oakenpants What IDE are you using to manage FF prefs?

I just use Notepad++, but i have a few others - all portable/windows

I just use Notepad++, but i have a few others - all portable/windows

So am I , notepad++ is my old friend, I like the lite version of it, more than enough for simple tasks ;)

In past, I emailed the dev of ConfigFox, he told me that tools also modifies prefs.js in order to complete the process of the user.js , that time when I asked him if you could just copy user.js to Linux, he mentioned that wouldn't be just enough since ConfigFox also change some settings in prefs.js

I also use Notepad++ with the Compare plug-in or sometimes i use DiffChecker when i am at work, since i can't install plug-ins there.

Notepad++ with the Compare plug-in

ah good to mention that plug-in, I'm going to check out since I use the minimal version..


Duplicate Permission in report

I have this code:
class PermissionsRepositoryImpl(
    private val permissionManager: DexterBuilder.Permission
) : PermissionsRepository {

    override fun isPhotoAccessPermissionEnabled(): Single<DomainMultiplePermissions> {
        return Single.create { single ->
            permissionManager
                .withPermissions(Manifest.permission.CAMERA, Manifest.permission.READ_EXTERNAL_STORAGE)
                .withListener(object: MultiplePermissionsListener {
                    override fun onPermissionsChecked(report: MultiplePermissionsReport?) {
                        when (report) {
                            null -> single.onError(DomainPermissionReportException(
                                DomainPermissionReportException.Error.REPORT_ERROR,
                                "Permission report is null"))
                            else -> single.onSuccess(report.toDomain())
                        }
                    }

                    override fun onPermissionRationaleShouldBeShown(permissions: List<PermissionRequest?>?, token: PermissionToken?) {
                        token?.continuePermissionRequest()
                    }
                })
                .check()
        }
    }
}

Expected behaviour
The report should include just 2 grantedPermissions if i accept both.
Actual behaviour
The report includes 3 grantedPermissions if i accept both.
Steps to reproduce
I Call this code from a button from UI.
I accept first the READ_EXTERNAL_STORAGE permission and refuse once the CAMERA permission.
Then i re-tap the button to retrigger isPhotoAccessPermissionEnabled(). Only the popup for CAMERA is displayling but in the onPermissionsChecked callback, report.grantedPermissionResponse array size = 3 and READ_EXTERNAL_STORAGE appears twice.
Version of the library
Last version

Thank you so

You are absolutely right. I've just reproduced your error and there is one permission duplicated. I have no idea where it comes from. I'm going to take a look. Thanks for reporting!

PR sent with the fix!

I just released Dexter 6.2.2


Shorter way to set box size

Use case
Often, I wan to set both height and width. For now I can do it with either $box.only(height: 10, width: 10) or $box.height(10), $box.width(10). Also pretty often I need to create a square which is verbose with current api
Proposal
Create a new utility to set size with the following api:
$box.size(10, 20);
$box.size.square(10);
$box.size.as(Size(10, 20));

And improve the $with.sizedBox by adding the following api:
$with.sizedBox.square(10);
$with.sizedBox.height(10);
$with.sizedBox.width(10);
$with.sizedBox.as(Size(10, 20));

I think it is bad idea. Utilities should reflecting the specs not add more unwanted information to it. And it's will be a mess real quick like CSS if we add n utilities just for less typing code

@definev but that's exactly what you are doing! :)
Okay, I can definitely live with the $box.only(width: 10, height: 20) to set different height and width in one line. But in case of square it's disturbing a lot when I need to change size in two places instead of one. The SizedBox.square exists for a reason ;)

Thank you for your contribution!
I completely agree with you about 'sizedBox' receiving 'height', 'width', and 'square'. However, I'm not a big fan of 'box.size' because it breaks a pattern we are following, keeps the mix API close to the Flutter API, and creates as few aliases as possible.

A good thing about mix is that you can create some aliases easily. For Instance, if you prefer to work with $box.size.height instead of $box.height you can do something like the following code in your project
extension on BoxSpecUtility {
  BoxSizeUtility get size => BoxSizeUtility(
        (v) => only(
          height: v.height,
          width: v.width,
        ),
      );
}

class BoxSizeUtility<T extends Attribute>
    extends MixUtility<T, ({double? height, double? width})> {
  late final width = DoubleUtility((v) => call(width: v));
  late final height = DoubleUtility((v) => call(height: v));
  late final square = DoubleUtility((v) => call(height: v, width: v));

  BoxSizeUtility(super.builder);

  T call({double? height, double? width}) => builder((
        height: height,
        width: width,
      ));
}


Fix auto-merge conflict 3786 from branch-21.10 [skip ci]

fix merge conflict at #3786
NOTE: this must be merged as a merge commit

build


Update CheckDiskAcccessPermissions to correctly check drives

The code used a "Try" for exception handling on the access checks.
This "try" was for the whole procedure, both the check for current path and the individual drives.
This meant that when there was no access to to a folder down the tree from the current path, the drives check was skipped, giving a false sense of security. I added exception handling for each step going down the folder tree and one around each drive check.
After my initial pull request, I noticed that in principle while checking this path:
c:inpetpub/mywebsites/mywebsite, the "try" for the path was also in the wrong spot.
When the web user wouldn't have access to mywebsites, but would to the inetpub folder, the module would report both as safe.
I moved the error handling further down the procedure to wrap the check of the individual folders.

Ok, so this was one year ago now.. It's still abug IMO

Thanks!

You are welcome.
Cheers :)


[CP] [canvaskit] Fall back to multi-context rendering on Firefox and Safari

Issue Link
https://github.com/flutter/flutter/issues/145563
Target
stable
PR Link
https://github.com/flutter/engine/pull/52141
Changelog Description
Performance regression in CanvasKit on Firefox and Safari
Impacted Users
Flutter Web users
Impact Description
Severe fps drop on Firefox and Safari
Workaround
Use the HTML renderer (not recommended due to lack of feature support)
Risk
low
Test Coverage
yes
Validation Steps
Run an app in Firefox and verify that there is no significant jank

LGTM!

Oh, this is not a PR. Carry on then!


Empty Folders

Hi
Can you add an option to create empty folders
Regards

It might be possible to manage folders better for any cloud storage systems which understand the concept of folders (Drive is the only one at the moment) through use of some optional interfaces.

Hi
Sorry but i don't understand
Regards
Le 4 août 2015 13:00, "Nick Craig-Wood"<EMAIL_ADDRESS>a écrit :

It might be possible to manage folders better for any cloud storage
systems which understand the concept of folders (Drive is the only one at
the moment) through use of some optional interfaces.
—
Reply to this email directly or view it on GitHub
https://github.com/ncw/rclone/issues/89#issuecomment-127565963.

@dav1303 managing folders would require changing the internals of rclone.  It is possible to make it work with Google Drive, but not with Amazon S3 for example, so it would require a bit of thought.

Hi Nick
Did you plan to done an update ?
Thanks
Le 5 août 2015 12:24, "Nick Craig-Wood"<EMAIL_ADDRESS>a écrit :

@dav1303 https://github.com/dav1303 managing folders would require
changing the internals of rclone. It is possible to make it work with
Google Drive, but not with Amazon S3 for example, so it would require a bit
of thought.
—
Reply to this email directly or view it on GitHub
https://github.com/ncw/rclone/issues/89#issuecomment-127949808.

I've made another issue to track the feature necessary here #100


Yuanzhou/fix derived dataset

Fixed #89

renaming from source_dataset_uuid to source_dataset_uuids
supporting either a single uuid string or an array of uuids

Have tested on DEV and @jswelling verified it's working with the corresponding changes made in ingest-pipeline https://github.com/hubmapconsortium/ingest-pipeline/pull/379
So I'll merge and get it out on TEST with Joel's coordination:

I will update TEST to include the appropriate mods- nothing will break until I actually try to run something there, so feel free to deploy the ingest-api fix.  (It's going to take me a bit of time to get caught up).


Create a vue library

Closes #10

Codecov Report

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

@@             Coverage Diff              @@
##            master      #11       +/-   ##
============================================
- Coverage   100.00%   50.00%   -50.00%
============================================
  Files            2        2
  Lines           49       48        -1
============================================
- Hits            49       24       -25
- Misses           0       24       +24

Flag
Coverage Δ

#e2e
?

#unittests
50.00% <ø> (ø)

Impacted Files
Coverage Δ

src/components/Lumino.vue
37.93% <0.00%> (-62.07%)
:arrow_down:

src/components/lumino-widget.js
68.42% <0.00%> (-31.58%)
:arrow_down:

Continue to review full report at Codecov.

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

Test:

vue create test; cd test
yarn add ../vue-lumino/
Apply the following diff:

diff --git a/src/App.vue b/src/App.vue
index 3943904..ebc432c 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -1,13 +1,26 @@
 <template>

-

-      <router-link to="/">Home</router-link> |
-      <router-link to="/about">About</router-link>
-

-    <router-view/>
+    <Lumino ref="lumino">
+      <HelloWorld id="home-test" msg="Oi!" />
+    </Lumino>

 </template>

+
+

After a few adjustments in the code:


Visualize computational graph

This PR is implementation of #2
Basic usage is as follows.
import chainer.computational_graph as c
...
v1 = Variable(...)
v2 = Variable(...)
...
g = c.computational_graph([v1, v2], remove_split=True)
print g

c.computational_graph generates an instance of Computational Graph which represents a graph whose nodes are Function and Variable that can be traced from variable lists(v1 and v2 in the previous example) as backpropagation does.
remove_split option specifies if computational graph skip Split Functions. See test/test_computational_graph.py for details.
Supposed use case is available in example/mnist/train_mnist.py.
TODO

[x] Adjust to the coding style
[x] test ComputationalGraph.__str__
[ ] More flexible label of DOT nodes (e.g. change label according to Function type)
[ ] Support graph language other than DOT

I think these two features should be postponed to future release.

[ ] More flexible label of DOT nodes (e.g. change label according to Function type)
[ ] Support graph language other than DOT

I'll review it.

I added comments. Most of them are "duplicated", i.e., indicating same issues on different place.

One more comment: how about printing the labels of operators like '_ + _'? I only wrote a comment on Add for such printing, though should be applied to other operators, also.

@beam2d Thank you for your comments!

I added comments mainly on docstrings, and some on the codes.

LGTM except tiny comments!

Thank you for the great work!!

Thank you! I think we should add unit tests for label of variables and functions. I will create new issue or PR about it.

Great!!


Free5Gc packages fixes

This PR contains multiple fixes on packages required for free5GC End-to-End testing:

Synchronize the operator RBAC permissions
Remove the unnecessary resourcegroup.yaml file from the example SMF blueprint package
Upgrade the UE RAN simulator package with the latest changes

/approve
/lgtm


Revised README with a logo added.

What do these changes do?

added the logo to readme;
revise the links in readme to relative links;
cp the logo file to docs.

Related issue number

Fixes

Codecov Report

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

@@            Coverage Diff             @@
##           master       #2      +/-   ##
==========================================
- Coverage   87.75%   87.72%   -0.04%
==========================================
  Files          48       48
  Lines        3161     3161
==========================================
- Hits         2774     2773       -1
- Misses        387      388       +1

Flag
Coverage Δ

#app_tests
87.72% <ø> (-0.04%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

grape/parallel/thread_local_message_buffer.h
92.85% <0.00%> (-2.39%)
:arrow_down:


Use a blocking queue for WebSocketEvents.

Hello there.
I would like to explore a new draft proposal, which actually solves the issue for me. It's not a particularly elegant abstraction and it also has a few known issues, but on the other hand it's a pretty minimal set of changes that are invisible from the user's perspective as far as I can tell. Maybe it can be turned into or inspire something useful.

I added a new command, BuildRun. It wraps a function, build, that basically produces a Run from a Dispatcher. That's what WebSocket.connect now returns instead of a Run.
cmdToTaskList now takes a Dispatcher so that it can deal with BuildRuns: apply build to the Dispatcher, then treat the result just like a Run.
Inside the BuildRun, the Dispatcher is threaded down to newConnection, which uses it to push elements on the queue.

Unresolved issues (see the XXX marks in the code):

How would one now define equality on commands? For now, I've commented it out.
There are two type casts in cmdToTaskList, in the code that processes the BuildRun. I don't understand why I need them. Without them, Scala doesn't see that, for example, the F in the type of build is identical to the F in cmdToTaskList's type signature.
Is there a way to bring flatMap into scope so that we can use a for-comprehension in newConnection?

Oh, and some of the lines have gotten really long. Is there a style guide for the Tyrian code?

Oh, and some of the lines have gotten really long. Is there a style guide for the Tyrian code?

No, and I don't think scalafmt has been enforced in CI yet (I've done this on other projects), but if you can make sure you let scalafmt run on the files you're changed, that would be much appreciated.

Throwing my hat in the ring 🎩

https://github.com/PurpleKingdomGames/tyrian/pull/177

Oh, wow! That is an incredibly elegant hat! Awesome!
I was completely unaware of Resource's allocated. And I had a hard time trying to make things work solely based on use.
I firmly believe that my biggest contribution to the world of open source over the years has been in the form of half-baked PRs that nerd-snipe people who actually know what they're doing. :)
I'm closing this PR, as yours is so much better. Thank you for looking into this!
Just to add some perspective: We're having a fundraising party on Saturday to help our co-working space survive. I used Tyrian to create a simple application that enables the volunteer baristas to track sold drinks. They access the application via tablets and I was worried about the tablets' battery life, because of the current websocket implementation. (We have loooong parties!) It's nice that they will now be able to freely move the tablets around without needing power cords.
Thank you, guys, for helping me with this issue! I appreciate it.


add form class

This corrects an error introduced in PR #36.  On pages with both the DPLA search box and the asset upload form, the javascript could not differentiate between the two forms, causing both the search and upload actions to fail.  This adds a class name to the asset upload forms, and uses the class name in the jQuery selector to differentiate it from the DPLA search box.
This addresses issue #8076.

I should have mentioned that I was working on this in my Javascript refactoring!  :-/  Sorry.  It might be easier if I merge it with my upcoming PR, because I'm really rearranging the JS.

Great minds think alike!  Sure, we can merge with your upcoming PR.

I'm just going to close this.  It's handled in PR#47.


multi recipient direct message - life after irslackd disconnect

Description
currently, once irslackd disconnects from slack, the multi-recipient direct message channels don't survive.  what would it entail to allow those conversations to live through restarts?

You know, one option, which... maybe is a bit ugly... is irslackd could parse the channel name to split out the nicklist (since it's baked into the channel name, anyway), and then trigger a "conversation.open" call to re-join the group chat properly.
This could be done up in onIrcJoin.  That function could check the format of the channel name, and if it doesn't started with "#mpdm", pass control to onIrcJoinOne as it does currently.
If it does start with #mpdm, split the channel name up, yank out the nicks, and call "conversation.open" and then let the server response configure the rest of the channel setup.  And naturally, if any of the nicks is no longer valid, just return and do nothing.
Thoughts?

We might try removing this line in slack-init.js:
https://github.com/adsr/irslackd/blob/990cfe3ac1dce9c643a8dd492be3381c5782dec4/lib/slack-init.js#L14
I can't remember why I did this... There may be some special treatment required for mpdms but in general I don't see why we can't let them get hydrated the same way other conversations are hydrated.

Yeah, my initiate belief reading the code--and I need to go read the code in much greater detail to confirm--is that the basic API interactions necessary to hydrate a mpdms are different from those used to hydrate a regular channel...
But obviously that doesn't preclude writing a separate codepath for dealing with mpdms.  Maybe I'll poke around at this over the next couple days, seems like an easy enough add.

Added support in 76b0076. Feel free to re-open or file a new issue if you find any bugs.


Compiling with disable_3d and disable_advanced_gui does not work

Building with VisualStudio 2010 using scons with the following command lines has numerous unresolved externals:
scons platform=windows disable_3d=yes
(Using disable_advanced_gui=yes with the above also fails but I'm not sure if using this adds more unresolved externals)
Build error:
bin\godot.windows.tools.exe : fatal error LNK1120: 114 unresolved externals
scons: *** [bin\godot.windows.tools.exe] Error 1120
scons: building terminated because of errors.

disable_advanced_gui=yes and disable_3d=yes are for use in builds with tools=no that don't need those features.

Actually I think the buildsystem should be adapted so that it discards disable_3d and disable_advanced_gui if tools=yes, instead of accepting it and failing. I'll handle that.

If it discards the options, it should not be silent. I believe the most user-friendly way is to stop the command right from the beginning with an error message if an incompatible set of options is selected.
A simple warning message may not be good because it'd likely be lost by the user in the console spam that is the generated by the build and they'll believe it was successful and will find odd when, say, 3D wasn't actually disabled.

I agree - I was not aware there was a dependency between the options, an error message and hard stop would make this immediately clear.

See #3537 for some relevant compilation errors.
I can have a go at disabling these options for the tools=no builds, but I'd like to have the confirmation (@reduz?) that those two options are indeed valid only for the editor. If not, it might just be a true bug that some #ifdef are missing in the code to exclude tools-only stuff triggered by these options.

Actually disable_3d won't build currently, it probably broke at some time when adding 3D features without giving the possibility to remove them with _3D_DISABLED. At any rate, this issue needs some more work and probably won't be fixed for 2.0.

has this been fixed ?

yeah is still buggest . I just tried it right now and doesn't work.
ERROR: create: Condition ' !create_func ' is true. returned: 0
   At: core/os/mutex.cpp:39.
error: Couldn't load game path '.'

If you have a runtime error, it means that the compilation worked, which is the topic of this issue :)

Not critical for the upcoming 2.1, so moving to the next milestone.

Godot 3 still can't be compiled with disable_3d=yes and disable_advanced_gui=yes.
bin\godot.windows.opt.debug.64.mono.exe : fatal error LNK1120: 8  unresolved externals
scons: *** [bin\godot.windows.opt.debug.64.mono.exe] Error 1120
scons: building terminated because of errors.

I'm trying to compile Godot using the following command from Windows 10 (latest version from git):
scons -j6 platform=android --config=force target=release tools=no use_lto=yes deprecated=no xml=no disable_3d=yes disable_advanced_gui=yes builtin_bullet=no builtin_enet=no builtin_libogg=no builtin_libtheora=no builtin_libvorbis=no builtin_libvpx=no builtin_libwebsockets=no builtin_mbedtls=no builtin_miniupnpc=no builtin_opus=no builtin_recast=no builtin_squish=no builtin_thekla_atlas=no module_bmp_enabled=no module_bullet_enabled=no module_csg_enabled=no module_dds_enabled=no module_enet_enabled=no module_etc_enabled=no module_gdnative_enabled=no module_gridmap_enabled=no module_hdr_enabled=no module_jpg_enabled=no module_mbedtls_enabled=no module_mobile_vr_enabled=no module_ogg_enabled=no module_opus_enabled=no module_pvr_enabled=no module_recast_enabled=no module_squish_enabled=no module_stb_vorbis_enabled=no module_svg_enabled=no module_tga_enabled=no module_thekla_unwrap_enabled=no module_theora_enabled=no module_tinyexr_enabled=no module_upnp_enabled=no module_visual_script_enabled=no module_vorbis_enabled=no module_webm_enabled=no module_websocket_enabled=no
It compile everything but the linker give these errors:
[ 83%] Linking Static Library ==> modules\freetype\libfreetype_builtin.android.opt.armv7.neon.a
[ 83%] Linking Static Library ==> core\libcore.android.opt.armv7.neon.a
[ 83%] Linking Shared Library ==> bin\libgodot.android.opt.armv7.neon.so
[ 83%] =====
D:\Android\sdk\ndk-bundle/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64/lib/gcc/arm-linux-androideabi/4.9.x/../../../../arm-linux-androideabi/bin\ld: warning: ignoring --threads: D:\Android\sdk\ndk-bundle/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64/lib/gcc/arm-linux-androideabi/4.9.x/../../../../arm-linux-androideabi/bin\ld was compiled without thread support
scene\libscene.android.opt.armv7.neon.a(skeleton.android.opt.armv7.neon.o):scene\3d\skeleton.cpp:function _pb_stop_simulation(Node*): error: undefined reference to 'PhysicalBone::set_simulate_physics(bool)'
scene\libscene.android.opt.armv7.neon.a(skeleton.android.opt.armv7.neon.o):scene\3d\skeleton.cpp:function _pb_stop_simulation(Node*): error: undefined reference to 'PhysicalBone::set_static_body(bool)'
scene\libscene.android.opt.armv7.neon.a(skeleton.android.opt.armv7.neon.o):scene\3d\skeleton.cpp:function _pb_stop_simulation(Node*): error: undefined reference to 'typeinfo for PhysicalBone'
scene\libscene.android.opt.armv7.neon.a(skeleton.android.opt.armv7.neon.o):scene\3d\skeleton.cpp:function _pb_start_simulation(Skeleton const*, Node*, Vector<int> const&): error: undefined reference to 'PhysicalBone::set_simulate_physics(bool)'
scene\libscene.android.opt.armv7.neon.a(skeleton.android.opt.armv7.neon.o):scene\3d\skeleton.cpp:function _pb_start_simulation(Skeleton const*, Node*, Vector<int> const&): error: undefined reference to 'PhysicalBone::set_simulate_physics(bool)'
scene\libscene.android.opt.armv7.neon.a(skeleton.android.opt.armv7.neon.o):scene\3d\skeleton.cpp:function _pb_start_simulation(Skeleton const*, Node*, Vector<int> const&): error: undefined reference to 'PhysicalBone::set_static_body(bool)'
scene\libscene.android.opt.armv7.neon.a(skeleton.android.opt.armv7.neon.o):scene\3d\skeleton.cpp:function _pb_start_simulation(Skeleton const*, Node*, Vector<int> const&): error: undefined reference to 'typeinfo for PhysicalBone'
scene\libscene.android.opt.armv7.neon.a(skeleton.android.opt.armv7.neon.o):scene\3d\skeleton.cpp:function _physical_bones_add_remove_collision_exception(bool, Node*, RID): error: undefined reference to 'typeinfo for CollisionObject'
clang++.exe: error: linker command failed with exit code 1 (use -v to see invocation)

I disagree with tools=yes silently disable_3d. I wanna be able to choose that option and I wanna know what's going on.


Need help with debugging MATLAB scripts/functions called by Jupyter

A question: what options do we as matlab jupyter-notebook/lab users have in debugging matlab scripts/functions?
When an error arises in MATLAB, the error output usually includes some detailed debugging information including the name of the function/script and the line number where the error arose and sometimes a link directly to the .m file itself. Python kernels in notebook appear to also be very verbose with errors. But the MATLAB python engine & imatlab kernel can be quite sparse when an error arises. I find that I have to sprinkle lots of disp('Im here') code in order to track down bugs/errors or when I don't get back information that I expect - it makes me want to move back to the regular matlab editor/command line to debug/develop code.
Thanks again for this great tool!

Fundamentally I'm limited to whatever the MATLAB engine provides here.
A possibility would be to wrap every evaluation in a try... catch (actually this is already done) and (that part is not done yet) introspect the exception's stack attribute to reconstruct ourselves the exception traceback.  Probably a bit tedious but not too horrible...  PRs welcome.

I haven't done anything like it before but I can take a look into it. Would you mind pointing me to where exactly I should be looking? Thanks!

First: Can you give examples of 1) what is the current output in case of error and 2) what you would like it to be?  That'll help figuring out what we're aiming for.

Sorry for delay in getting back.
So let's say we run the following code and get an error in MATLAB 2017b:
line 1 a=[1 2 3]
line 2 b=[4 5 6 7]
line 3 c=a/b
Output:
a =
1     2     3
b =
4     5     6     7
Error using  /
Matrix dimensions must agree.
Error in errorcode (line 3)
a/b

The best part of the above code is that MATLAB will return an error and the line number (line 3 ) with a link to the file. However if in Jupyter lab MALTAB kernel, if we run the simple code we get the following error:
a = 1 2 3
b = 4 5 6 7
Matrix Dimensions Must agree.
No line number is provided by the kernel for an error! So to start for every bug defined, a line number to the code and error type would be fantastic.
Thanks again!
Linus

As noted above, the idea is to wrap the execution in a try... catch and restore the correct line information:
>> try, errorcode, catch e, end
>> e

e =

  MException with properties:

    identifier: 'MATLAB:dimagree'
       message: 'Matrix dimensions must agree.'
         cause: {0×1 cell}
         stack: [1×1 struct]

>> e.stack

ans =

  struct with fields:

    file: '/tmp/test.m'
    name: 'test'
    line: 3

I see how that would work for a .m file. Trying within a cell within the Jupyter notebook leads to an empty stack. During development/exploration in Jupyter lab, most code is explored within the python notebook, and if you generate an error you get something like this error which includes line number of offending code in the cell within the python notebook:
a = [1,2,3]
b = [4, 5, 0]
[int(b) / int(m) for b,m in zip(a,b)]
attempt to run above cell get this output:

TypeError                                 Traceback (most recent call last)
 in ()
1 a = [1,2,3]
2 b = [4, 5, 0]
----> 3 [int(b) / int(a) for b,m in zip(a,b)]
 in (.0)
1 a = [1,2,3]
2 b = [4, 5, 0]
----> 3 [int(b) / int(a) for b,m in zip(a,b)]
TypeError: int() argument must be a string, a bytes-like object or a number, not 'list'

So I'm suggesting that the Matlab generated errors within the Jupyter lab notebook, at least print a line number where we learn which is the offending line. Any other ideas?
Thanks!

I showed above how to implement the requested feature.  Now someone just needs to do it...

I think I figured out a simple solution in a edit to _kernel.py (sorry I have not figured out yet how to push/pull changes to github):
in _kernel.py change FROM:
line 201:             r"catch {me}, fprintf('%s\n', {me}.message); clear {me}; end;"
TO:
line 201:             r"catch {me}, fprintf('%s\n', {me}.getReport); clear {me}; end;"
This will produce a string with much more information on the file name and line number.
Thanks.

Good idea, implemented it.

Thanks a bunch for making this useful tool! As many Matlab developers have noted they always have to run an original matlab instance (which kills memory usage on a laptop) for debugging purposes, this fix should help a bit and convince my colleagues to switch to Jlab.
Now, it would be very nice to mimic the matlab command line error message links to a file and line number within the text output of the Mexception. I think the command-linker should be able to do this, but not sure how to implement, here’s what I found:
https://github.com/jupyterlab/jupyterlab/issues/1442

Hi @anntzer, I've made a few changes to the kernel in my fork that help with debugging. Essentially, the kernel checks whether "dbstop if error" is set. If not, it runs the code in a try / catch as you've implemented it. If it is set, then it runs the code without the try/catch, which will put Matlab in debuggin mode. Typically I run the kernel either locally or on a remote host where I can VNC into a display that Matlab sees as the DISPLAY environment variable. In any case, dbstop if error opens up the editor and lets you see the values of variables as if you'd run it from Matlab directly.
Incidentally, you can also run "desktop" from within imatlab, and the Matlab will open in full IDE mode. This lets you use the Jupyter kernel and the Matlab IDE side by side, which for me at least, is the best of both worlds for debugging.
If this is something you're interested in, I can generate a clean pull request which only includes those changes. The most recent 3 commits here [ https://github.com/djoshea/imatlab/commits/master ] are the relevant ones.

Just a note that I won't be able to work on this for the coming week(+), but please do open a PR, I'll review it later.

Hi @djoshea , would you please generate the pull request with your debugging code? I am very interested in seeing how it's implemented. Thanks!
HI @anntzer, for debugging cells in Jupyter that have a lot of lines of codes, if an error is generated, is it possible to display the line number in the cell where the error is generated? Thanks!

I am not actively developing this part of imatlab these days, but am still happy to look at PRs.


check why student is missing studyright and transfer for varhaiskasvatuksen opettaja

014625659 studies from 2016 to 2018 in old varhaiskasvatuksen opettaja bsc, but doesn't show that in sis-oodikone:

there's no info in sis data --> report to JIRA


Is OpenAPI 3 supported?

$ swagger-examples-validator oas3.json
Validating examples
Response schemas with examples found: 0
Response examples without schema found: 0
Total examples found: 0

No errors found.

is the output I get - but there are a lot of response examples in the json-file. Is OpenAPI 3 not supported?

Version 3 is not supported yet. I ain't got any time the next couple of days, but I might look into it later, though.

Ok, thanks for the clarification :)

Thank you for implementing OpenAPI v3 support!
Am I correct that only examples properties are checked? Because I only use the singular example property for my examples and it seems those are not recognized as examples - I still got the same output

For the time being, yes. I'll look into it.

#12

Thanks :)


➕ Add Support for PHP 8.0

Rebased against master

I'm working grave at my regular job so I need to grab some sleep now. Hopefully you don't need me for any more changes. I'll check back in about 8 hours.

That's great @RyanNerd thanks for your help!


Refresh token on wizard page navigation

The current timeout for an auth token is 30 minutes. In extreme cases, this timeout can occur during the configuration of a stack. This will bounce the user to the login page without creating their stack, and force them to reconfigure it using the wizard.
To combat this problem, the wizard should refresh the user's token whenever they change between each discrete step of the wizard.

Confirmed working in build NDS-170


notabstitlecontrol.css contains tab specific rules?

Not sure I misunderstand the tabs-breadcrumbs rule, but I noticed that notabstitlecontrol.css contains rules that seem to be tab specific, e.g.
https://github.com/microsoft/vscode/blob/4efb4a2e8dbfe8a6a7dbd8269bfc4034e1c21907/src/vs/workbench/browser/parts/editor/media/notabstitlecontrol.css#L88-L88
I typically keep rules that are shared between tabs and no-tabs in titlecontrol.css because that one will be loaded in both cases of tabs enabled or disabled. And I only keep rules that are specific to no-tabs or tabs-enabled in the related CSS files.

@misolori I believe this came in with https://github.com/microsoft/vscode/commit/235f8512433e42f7cea9d2befa565c026bea592f

I added those because there were other breadcrumb rules related to when tabs are off. Happy to move these to the breadcrumb file:
https://github.com/microsoft/vscode/blob/cfccae30dbf7e65d472475a568dbd828051c0336/src/vs/workbench/browser/parts/editor/media/notabstitlecontrol.css#L33-L90

Since I was in this place for some cleanup, I took care of it.

Since I was in this place for some cleanup, I took care of it.

thanks

thanks


Lint/RescueWithoutErrorClass triggers for inline rescue

Description
The new Lint/RescueWithoutErrorClass cop triggers for inline rescue, but inline rescue doesn't actually allow an error class to be specified. An example report:
app/helpers/browse_helper.rb:117:51: W: Avoid rescuing without specifying an error class.
    if page = WIKI_PAGES[locale][type][lookup_us] rescue nil
                                                  ^^^^^^

I realise inline rescue probably isn't very good style itself, but it's quite useful here for getting nil if any level of the nested hash lookup fails.
RuboCop version
$ rubocop -V
0.50.0 (using Parser <IP_ADDRESS>, running on ruby 2.4.1 x86_64-linux)

Fixed in #4779.

Also check out Hash#dig. 🙂

Ah cool. I did look this morning to see if there was something like that, but failed to spot it...

Also check out Hash#dig.

I see a potential for a new cop. ;-) Unfortunately the potential for false positives I see is also there. :D

I see a potential for a new cop. ;-) Unfortunately the potential for false positives I see is also there. :D

I have taken a stab at it before. Can't remember what it was, but something stumped me that time. 🙂


Remove pointer cursor from non-link elements

Following the new Spectrum cursor guidelines, this removes the pointer (hand) cursor from most clickable elements, except navigational elements like links, and uses the default arrow cursor instead. This may be controversial on the web where the pointer cursor is often misused, but better aligns with native elements, the CSS spec, both Microsoft and Apple's human interface guidelines, browser native <button>, checkboxes, radios, etc.
The remaining components that use the pointer cursor are:

link
breadcrumbs
sidenav
steplist (not completely sure about this one, but seems "navigational" to me)

Some additional resources for people to read about this:

https://adamsilver.io/articles/buttons-shouldnt-have-a-hand-cursor/
https://adamsilver.io/articles/buttons-shouldnt-have-a-hand-cursor-part-2/
https://www.w3.org/TR/CSS2/ui.html#propdef-cursor

Yeah that's a good one. Feels like an issue regardless of the cursor though. e.g. on mobile, there is no cursor anyway.

A thought -
In desktop apps, nearly everything we can see is clickable, when there's both interactive and non-interactive elements, the interactive elements are almost always in their own section, separate from non-interactive elements (taskbar, toolbar), it tends to be fairly obvious what's what; there's a clearly separate "content" section

In browsers / web-apps, non-interactive elements (i.e. "content" and "data") is more numerous, and interactive/non-interactive elements tend to more closely mixed together
e.g..

A lot of these "things that need to be clickable aren't", at a glance, aren't immediately obvious that they're clickable
Some of the things that aren't clickable (e.g. the collaborator badge) aren't obviously unclickable
cursor: pointer is useful for helping make the intractability of these not-buttons more quickly evident when hovering over them; If we accept that these clickable not-buttons need cursor: pointer, then it feels rather jarring for actual buttons not to have cursor: pointer.  imo "pointer - can click/ no-pointer - can't click" becomes a language we code-switch into when we're in a browser
A possibly interesting .. case study? (might be a bit of a stretch to call it that, lol) of "the same app" in two different contexts
outlook.com (left, cursor pointer) and windows 10 mail (right, normal arrow pointer)

(maybe a prop on Provider so we can specify whether buttons should have cursor pointer? :P)

This was a decision made by the Spectrum design team. See the comment above for some resources about why the decision was made. Basically, the pointer cursor is reserved for links, and the arrow cursor is used on all other elements. The cursor is less important these days due to touch anyway, so it's better to make it clear what elements are clickable without relying on the cursor to indicate it.


Fix dialog close button positioning

fix passing sx prop to the button, so the dialog close button can be positioned in the top right corner as desired

Weird that it didn't pass it properly before but nice catch!

yeah, I think that I might have broken that fixing sx prop overriding issue a time ago, so blame is on me 😁


Encryption: Split file dictionary to reduce mutex conflict

Signed-off-by: Xintao<EMAIL_ADDRESS>
What problem does this PR solve?
Issue Number: close https://github.com/tikv/tikv/issues/8761
Problem Summary: Mutex conflict of encryption makes pd-worker deal with heartbeat slow
What is changed and how it works?
Add a new field shared_file_dict for Dict so we can use it for reading only. shared_file_dict is a more fragmented version of file_dict with more mutexes.
Release note

Fix the bug that mutex conflict of encryption makes pd-worker deal with heartbeat slow

/rebuild

/rebuild

/tpcc

LGTM

With this PR the concurrency control for encryption is in so much more advanced. Thank you! @hunterlxt

/merge


build: fixed yarn run dist

fixed yarn run dist
add yarn run dist:mac and yarn run dist:win
let npm script use yarn by default

references:

https://github.com/electron-userland/electron-builder/issues/2404

not working , its working on my system but another system its not working and I Check this method


[BUG] User values not saving when updating from Owner. (LEO Access etc)

What version of Node.js are you using?
16.13.1
What version of npm are you using?
No response
What operating system are you using?
Windows Server 2019
Describe the Bug
I believe since the last update (could have been earlier) I cannot save the User access changes.
Such as, I'm trying to update LEO Access, Dispatch Access etc. But when I hit Save I get Unexpected Error

Expected Behavior
Should be able to save user values
To Reproduce
No response

Whoops, minor typo. Not sure how it wasn't picked up by the typechecker. Fixed now though!


Add a method to check (and possibly change) release status for a node

Done (is_release(), release() and unrelease()


Fixes for the next release/feature tool publish

Includes re-instating the fix for MRTK spatial mesh observer with XR SDK.
Also fixes up the meta files between core and samples.

/azp run

Fixes #130


When deleting a file, there is a space between the username and the '[Deleted message]'

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

Action Performed:

Open a chat.
Send an attachment.
Click on 'Reply in thread.'
Delete the thread file.
Notice the space between username and delete message
Now check that after deleting a text message

Expected Result:
When deleting a file or text message, there should be consistent spacing between the username and the '[Deleted message]'
Actual Result:
When deleting a file, there is a space between the username and the '[Deleted message]' message, causing an inconsistency in spacing compared to deleting a text message.
Workaround:
Can the user still use Expensify without this being fixed? Have you informed them of the workaround?
Platforms:

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

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

Version Number: 1.3.50-0
Reproducible in staging?: y
Reproducible in production?: y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://github.com/Expensify/App/assets/43996225/67c807d3-be1b-48a5-86b0-faec83f21ebe
https://github.com/Expensify/App/assets/43996225/805f08d3-948d-48c3-9dd8-ece8f685b1e5
Expensify/Expensify Issue URL:
Issue reported by: @ayazhussain79
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1690887871347529
View all open jobs on GitHub

Proposal
Please re-state the problem that we are trying to solve in this issue.
When deleting a file, there is a space between the username and the '[Deleted message]'
What is the root cause of that problem?
In ReportActionItem, we set a top margin if the action is an attachment, but we do not verify that it was not deleted:
https://github.com/Expensify/App/blob/4230f289341c8d6d9a8b780d54da0725d4764b2b/src/pages/home/report/ReportActionItem.js#L330
What changes do you think we should make in order to solve the problem?
We should also verify that:
!props.displayAsGroup && isAttachment && !ReportActionsUtils.isDeletedAction(props.action) ? styles.mt2 : undefined,

Proposal
Please re-state the problem that we are trying to solve in this issue.
When deleting a file, there is a space between the username and the '[Deleted message]'
What is the root cause of that problem?
https://github.com/Expensify/App/blob/8639fb6847cf20a5335d7f5e0c5329e8529b68c0/src/pages/home/report/ReportActionItem.js#L330
Because we have styles.mt2 for all attachments.
What changes do you think we should make in order to solve the problem?
We have to remove styles.mt2 for only deleted attachments.
We can get deleted status from action ReportActionsUtils.isDeletedAction(props.action).
What alternative solutions did you explore? (Optional)

Reproducible, moving this on external! @cubuspl42 you're up! :)

@namhihi237 I think you're missing a # in your proposal text. Expensify relies heavily on automation, so it's best to stick to templates as closely as possible. Thank you for understanding.

Proposal

@yh-0218 Your proposal looks very similar to this one. Is there any additional value?

@bernhardoj I like the direction of your root cause analysis and your "alternative solutions" section.

Remove props.action.isAttachment checks.

Could you elaborate?

@DanutGavrus The essence of your proposal is similar to the one above. Yours is shorter because it skips reasoning about the offline/online state.
Could you comment on this? Are offline/online checks unnecessary in your opinion?

@cubuspl42

Yours is shorter because it skips reasoning about the offline/online state.

I was originally thinking that ReportActionsUtils.isDeletedAction(props.action) wouldn't return true before the action was actually deleted, thus it wouldn't return true when deleting an action while offline. It seems I wasn't right.
I'm not sure about slow internet connections in which isOffline returns false, but the call may take quite long to execute. I'm thinking relying only on the pendingAction to be enough while we wait for the attachment to be deleted, regarding the online/offline state. Updated Proposal with that approach if anything.

@bernhardoj

Yes, because the action.isAttachment is a local property, we can remove props.action.isAttachment from here

If the resulting code is valid, this would be definitely one of the best candidates for a solution. A change consisting solely of code removal is always tempting!

@namhihi237 @DanutGavrus
You provided reasonable and working solutions, but the check for adding the mt2 style becomes complex and difficult to reason about, in my opinion.
@getusha
Thank you very much for exploring this other path! I hoped we could find a clear and neat solution by moving the style to the more inner component, but I don't think this particular proposal achieves that.
@bernhardoj
You focused your attention on the contract of the isAttachment property and the isReportMessageAttachment function, which indeed seems to be close to the essence of this problem.
The attachments have different representations at the time when they're uploaded on the frontend and when they return back from the backend (when they're quite opaquely HTML-encoded). isReportMessageAttachment could be considered a source of truth and isAttachment a local prediction of the future result of isReportMessageAttachment, but available before the backend response is known (also offline). isReportMessageAttachment is false for a deleted message, so it's a clear approach to also falsify isAttachment.
I think we should go with @bernhardoj's proposal, with some minor refactoring which should improve the clarity of the mentioned contracts
C+ reviewed 🎀 👀 🎀

Thank you very much for exploring this other path! I hoped we could find a clear and neat solution by moving the style to the more inner component, but I don't think this particular proposal achieves that.

Thanks for the feedback @cubuspl42 but can you point me what is not working on my proposal? 🙂

@getusha Sorry if I sounded like it's not working. I think that all proposals so far achieved a working solution, or at least a solution that could be working with some minor tweaks for eventual issues found during testing. I seriously considered it, but in the end, I decided to go with the other proposal for reasons I tried to explain.
So it's not a "bad vs good" situation, but a more tricky "good vs also good but in a different way" situation. Thanks for understanding.

@bernhardoj I think we should go with both, actually. I don't think that the action.isAttachment property is doing any good being true if it's not consistent with what can be concluded from the fresh backend data.
Indeed, I just verified that it doesn't fix the margin by itself for the reasons you sketched above. I just spend an hour analyzing and debugging this code, and I agree that adding previousMessage to the equation is the final puzzle we need. Then we can either adjust the local isAttachment formula to ReportUtils.isReportMessageAttachment(message) || action.isAttachment or remove the action.isAttachment component altogether.
I would then recommend considering moving this logic to ReportActionItemMessage (one level down), so the application of the margin is closer to the reason it's actually applied.

@Li357, waiting on you to green light the proposal to move this on :)

@bernhardoj Like the solution here as well! Agree with @cubuspl42 deleting code is always a plus! All yours!

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

https://github.com/Expensify/App/pull/18522

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

https://github.com/Expensify/App/pull/18522/files#r1301263459

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

No need for additional discussion

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

No need for a new regression test

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

N/A

Hey everyone! Sorry for the delay, I've been out of office.
Confirming payments as follows:

@bernhardoj - $1,500 for the bug fix & #urgency bonus. - paid!
@cubuspl42 - $1,500 for the C+ review & #urgency bonus - paid!
@ayazhussain79 - $250 for the bug report. - offer sent.

@trjExpensify offer accepted, Thank you

Paid!

@trjExpensify It's my fault. Do you know how we can clean this up, or should I start a topic on Slack?
I also bumped the PRs that are blocking https://github.com/Expensify/App/issues/25415, I hope we'll soon have this whole thing behind us

Ah, whoops! I've made the payments on those. I think the easiest thing to do is to simply deduct from your next issue bounties. Do you have any in the works you can make a note on to reduce the amount due accordingly?

@trjExpensify Here: https://github.com/Expensify/App/issues/25514

Thanks, commented!


Schedule opening popup if cannot be opened right now

What does the pull request do?
Allows setting IsOpen on popup, even when it is not attached to visual tree
What is the current behavior?
Currently Open() throws exception if popup does not have VisualRoot
What is the updated/expected behavior with this PR?
Setting IsOpen or calling Open() schedules opening popup after it is attached to window
Checklist

[x] Added unit tests (if possible)?

Fixed issues
Fixes #4501
This can be tested here:
https://github.com/ShadowDancer/Avalonia/tree/fix/opening_notattached_popup_tests
After launching control catalog for net core popup will be displayed with text "AAAAAAAAA...".

I have tried to add tests for checking if popup opens when scheduled.
test like this:

        [Fact]
        public void Popup_Open_Without_Target_Should_Attach_Itself_Later()
        {
            using (CreateServices())
            {
                int openedEvent = 0;
                var target = new Popup();
                target.Opened += (s, a) => openedEvent++;
                target.IsOpen = true;

                var w = new Window { Content = content };
                w.ApplyTemplate();

                Assert.Equal(1, openedEvent);
            }
        }

however for some reason ApplyTemplate does not raise OnAttachedToVisualTree on my popup. In real app this is called. I cannot figure out why it's does not work.

@ShadowDancer try playing with the TestRoot class. ReactiveUI activation fetcher uses the AttachedToVisualTree event, so somewhat like the following code should totally work in your test case (when element is assigned to TestRoot.Child, the AttachedToVisualTree is published): https://github.com/AvaloniaUI/Avalonia/blob/0ecbe9186ac02e7c33201d4fbe9cccac18c8b23c/tests/Avalonia.ReactiveUI.UnitTests/AvaloniaActivationForViewFetcherTest.cs#L158-L163

@worldbeater thanks for help, this works for me!


Docs onboarding automation

In the <lang> - docindex pipeline:

Add a script in eng/scripts/ that reads the language-specific package .csv file (example)
Generates the appropriate onboarding outputs (package.json, latest.csv, etc.) for the language
Opens a PR against the docs repo with the updated onboarding artifact.

I have two pipelines setup for the task:

Update target CI.
Pipeline:https://dev.azure.com/azure-sdk/internal/_build?definitionId=2509
Branch:https://github.com/Azure/azure-sdk-for-js/tree/regen_package_json
Merge Job CI commit to live.
Pipeline: https://dev.azure.com/azure-sdk/internal/_build/index?definitionId=2588&_a=completed
Branch:https://github.com/Azure/azure-sdk-for-js/tree/merge_live

More cleanup scripts needed for the tasks.
We enabled the two pipeline for docs repo.
We onboard with two functionalities:

We are able to sync with release csv, and have correct supersedes version for all packages.
We are able to make docs live everyday, instead of manually doing this weekly.


How to get automatic caption numbering?

the same as #87 #180 #590 #511 #554 #25.
Anybody help?This seems to solve this problem, but there is no example, it is difficult to understand.
Here is the descrprition about number from https://python-docx.readthedocs.io/en/latest/user/styles-understanding.html.
Identifying a style¶
A style has three identifying properties, name, style_id, and type.
Each style’s name property is its stable, unique identifier for access purposes.
A style’s style_id is used internally to key a content object such as a paragraph to its style. However this value is generated automatically by Word and is not guaranteed to be stable across saves. In general, the style id is formed simply by removing spaces from the localized style name, however there are exceptions. Users of python-docx should generally avoid using the style id unless they are confident with the internals involved.
A style’s type is set at creation time and cannot be changed.

Got any hit @lilyzhaochina ?


Lack of ambient transactions + Outbox/Inbox pattern

Hey guys,
I'm aware that you're adamant that there is no support for ambient System.Transaction scopes (and never will be), for the reasons @damianh describes in this issue.
The problem is that we want to enforce an outbox/inbox pattern for MassTransit/NServiceBus messages, which requires everything be in the same transaction (pretty much exactly the reason ambient transactions were added to NES by the sound of it). Obviously the design of SSS causes a problem with that.
Is there any possibility that you'd enable ambient transactions, even if in a completely unsupported way, e.g. through a config switch? I realise that you don't want to support those use cases, but it completely blocks some (as far as I understand it) best practices/patterns. Even if it's an unsupported edge case, it would allow us to use SSS as-is, instead of having to look elsewhere or forking.
Thanks for the help!

Can you be more specific? I'll admit it's been forever since I did anything with System.Transactions, but from what I remember, since we do not use TransactionScopeOption.Suppress you are free to wrap it up in your own TransactionScope. That is to say we will never support it but also not prevent it.

Ah, System.Transaction was maybe a red herring (can't remember last time I used it either!) We're using Postgres and are creating an NpgsqlTransaction at the start of the handler processing, and calling commit/rollback at the end of the handler (which will also persist inbox/outbox messages).
SqlStreamStore has its own transaction handling, in the various methods like AppendToStreamInternal, for example:
https://github.com/SQLStreamStore/SQLStreamStore/blob/c94c1690059171115ac33875842a97b3c29710cb/src/SqlStreamStore.Postgres/PostgresStreamStore.Append.cs#L32
These are on a separate connection, in a separate transaction, so it would be possible for the SSS commit to succeed, but the overall handler transaction to fail for some unrelated reason.

I like this allowing an external transaction, would this also mean it's probably going to have PostgresStreamStore lifetime be scoped .AddScoped<PostgresStreamStore>(). Because my transaction is likely to be within the lifetime of a HTTP Request, or a Message Consumption (MassTransit/NServiceBus). And I am possibly doing some other DB Calls, all within the same transaction.
This also brings me to another problem I have. If I'm doing other DB calls, unrelated to EventStore, but I want it to be in the same transaction. This line
using(var connection = await OpenConnection(cancellationToken))
causes problem because it's disposing the connection when done. I'd like to adopt the idea that Dapper uses. It uses the connection it was given, if already open, or trys to open the connection if it was not. But the calling party is responsible for disposing the connection, not dapper. I'd be willing to put in a PR for this change as well, if the maintainers have an appetite for this.

What benefit are you getting from SSS at this stage though? I imagine the concept of an idempotent stream producer and a subscriber that gives you position management. The changes suggested will only work when people are comfortable putting their regular tables and SSS event tables in the same database (unless one were to entertain cross database txns). I'll let @damianh chime in, but my gut reaction is that this is not a use case SSS is optimized / designed for. Outbox pattern applied with SSS is usually when SSS's streams are the single source of truth (i.e. there are no other tables involved) and the only record of state changes. Obviously, @mausch 's solution (https://github.com/elevate/SQLStreamStore/commit/60b96f5409df04cc4ea8ae9ea26f7a4f8dafdb09) solves this particular problem - however, it also breaks the IStreamStore abstraction in the process. To be fair, it isn't a problem as a consumer if you only depend on the PostgresStreamStore.

Unfortunately my spike isn't nearly good enough - it works on concrete types and the SSS code still disposes the transaction at the end of the operation.

I imagine you'd want to derive from NpgsqlTransaction, decorating the original NpgsqlTransaction (the one returned from the connection or an ambient one), delegating all the work to it, but override dispose in such a way that disposal does not happen when used inside SSS code.

In principle yes, that was the general idea. My goal was to make the change as small as possible so  that you might accept it in a PR. However NpgsqlTransaction is sealed :-)

I experimented a bit to took NEventStore and SQLStreamStore (https://github.com/gaevoy/EventSourcingDoor/blob/main/EventSourcingDoor.SqlStreamStore/SqlStreamStoreOutbox.cs) in the role of transactional outbox and it turned out working well https://gaevoy.com/2021/03/18/audit-log-via-transactional-outbox.html
In my case I wanted audit log which is implemented via transactional outbox.
Let me know what issues do you see.

The benefit is the service bus event outbox is now tied to the same transaction as the SSS write, without having to use a DTC.

It should not be used like this. SSS is producing events. SSS subscriptions consume events. Produce an event from a subscription, like with any other event store.


ARM64 binary

Hey there,
Very useful tool! Would you be able to start building binaries for Linux ARM64?

Hi!
I can definatelly give it a try :)
But I'm afraid github does not have free arm runners, only paid, so you would have to test it, since I have no access to arm64 system :/

Could you try building it locally if it works first?
Adding it is simple, and the build passes, but that doesn't mean it will work :)
https://github.com/FUSAKLA/promruval/pull/87

Thanks for the quick PR! I've just tested and it does work:
$ go build

$ ./promruval version
Version: dev
Build date: 2024-08-16
Build commit: none
Built by: mog

$ ./promruval validate -c examples/loki/validation.yaml examples/loki/rules.yaml
INFO[2024-08-16T19:00:15+10:00] processing file 1/1 examples/loki/rules.yaml
Validation rules used:

  basic-loki-test:
    - expression is a valid LogQL query
    - LogQL expression in rules must use rate, count_over_time or any range aggregation, see https://grafana.com/docs/loki/latest/query/metric_queries/#log-range-aggregations
    - LogQL expression should use a line filter expressions as first in the pipeline to optimize the query efficiency, see https://grafana.com/docs/loki/latest/query/log_queries/#line-filter-expression

Result:
  File: examples/loki/rules.yaml - INVALID
    - invalid file examples/loki/rules.yaml: unknown field "namespace" when unmarshalling the *unmarshaler.RulesFile, only supported fields are: groups,rule_files,evaluation_interval,group_eval_order,tests

Validation FAILED
Statistics:
  Duration: 114.458µs
  Files: 1 and 0 of them excluded
  Groups: 0 and 0 of them excluded
  Rules: 0 and 0 of them exclude

Great!  It will be a bit "best effort" without continuous testing, but I'll add warning to documentation :)

Should be released, see the release page for the artifacts and give it a shot :)
https://github.com/FUSAKLA/promruval/releases/tag/v3.2.0


[Table] Fix styling column picker

Description
Please include a summary of the change and which issue is fixed.
List any external dependencies that are required for this change.
Completes: AB#FILL_IN_YOUR_ISSUE_ID
Checklist:

[ ] I have performed a self-review of my own code.
[ ] I have linked my DevOps task using the AB# tag.
[ ] My code is easy to read, and comments are added where needed.
[ ] My code is covered by tests.

Må det ikke gjøres slik hvis jeg vil applye styling på ikonet når du hovrer over parent?


Which requests matched?

I'm trying to match one and not the other request in an example like this:
let first;
let second;
beforeEach(() => {
  first = nock('example.com')
    .post('/some-url')
    .reply(200, ({ some: 'response' }));
  second = nock('example.com')
    .post('/different-url')
    .reply(200, ({ some: 'response' }));
});

it('should have hit one, but not the other url', (done) => {
  agent.post('my-app/my-local-url')
    .send({})
    .expect((err, body) => {
      if (err) { return done(err); }
      first.isDone().should.equal(true); // checks out OK
      second.isDone().should.equal(false); // this one fails.
      done();
    });
});

I've removed all app code that hits that second endpoint, even tried having a local variable up there in nock setup. So my guess is I don't understand the nock hook - how can I make sure that the first url is matched and the second one isn't?
Tried stackoverflow first with this, no luck: http://stackoverflow.com/questions/41805339/nock-match-one-request-and-not-the-other

@zladuric I would write your test as:
let scope;

beforeEach(() => {
  nock. disableNetConnect(); // All unmocked requests will error out
  scope = nock('example.com')
    .post('/some-url')
    .reply(200, ({ some: 'response' }));
});

afterEach(() => {
  nock.enableNetConnect();
});

it('should only hit some url', (done) => {
  agent.post('my-app/my-local-url')
    .send({})
    .expect((err, body) => {
      if (err) { return done(err); }
      scope.done(); // Will throw if not done
      done();
    });
});

Calling nock. disableNetConnect(); will ensure nock throws an error whenever an unmocked URL  (eg /different-url) is hit


rename tests/compiletest → tests/ui

This hasn't been compiletest in a while.

@bors r+

:pushpin: Commit 9c3d809475a8111045a1b91f095cd820edb5e8b7 has been approved by RalfJung
It is now in the queue for this repository.

:hourglass: Testing commit 9c3d809475a8111045a1b91f095cd820edb5e8b7 with merge 120c9749e3f418db1f745cb41abdc16d70977417...

:sunny: Test successful - checks-actions
Approved by: RalfJung
Pushing 120c9749e3f418db1f745cb41abdc16d70977417 to master...


unix: support long unix paths on macos + bsds

Fixes: https://github.com/libuv/libuv/issues/2826
CI: https://ci.nodejs.org/job/libuv-test-commit/1953/

Not stale, waiting on feedback on https://github.com/libuv/libuv/pull/2917#discussion_r845988690.

I don't use macos or any of the bsds anymore so I don't expect I'll be fixing this up anytime soon. Closing.


akka.remote.netty.tcp.bind-hostname vs hostname

From what I observe in my testing, and what I see in the code, nodes  use akka.remote.netty.tcp.bind-hostname (via akka.cluster.Cluster#selfAddress, which calls akka.remote.RemoteTransport#defaultAddress), not akka.remote.netty.tcp.hostname, as self-address in coordination backend.
This means, nodes running in Docker can't form the cluster, since they try to join the internal address of the other nodes, which is obviously inaccessible from outside.
Is this understanding correct? If yes, maybe we can somehow accommodate for this (quite popular) deployment scenario?

I've tested more carefully, and found this issue invalid. ConstructR uses the correct hostname from the cluster, and everything works fine in that sense.


Unable to create type  using inheritance  with "UNDER" keyword

Which version and edition of Flyway are you using?
Flyway Community Edition 7.3.2
If this is not the latest version, can you reproduce the issue with the latest one as well? (Many bugs are fixed in newer releases and upgrading will often resolve the issue)
yes we tried latest
Which client are you using? (Command-line, Java API, Maven plugin, Gradle plugin)
JAVA API
Which database are you using? (Type & version)
Oracle Database 19c Enterprise Edition Release <IP_ADDRESS>.0 - Production
Which operating system are you using?
Linux
What did you do? (Please include the content causing the issue, any relevant configuration settings, the SQL statement(s) that failed (if any), and the command you ran)
CREATE OR REPLACE TYPE BASE_TYPE AS OBJECT
(item_id            number
,item_code          varchar2(20)
,CONSTRUCTOR FUNCTION BASE_TYPE RETURN SELF AS RESULT
) NOT FINAL
/
CREATE OR REPLACE TYPE BODY BASE_TYPE  AS
CONSTRUCTOR FUNCTION BASE_TYPE RETURN SELF AS RESULT AS
BEGIN
RETURN;
END;
END;
/
CREATE OR REPLACE TYPE CHILD1_TYPE UNDER BASE_TYPE
(var1              varchar2(20)
,CONSTRUCTOR FUNCTION CHILD1_TYPE RETURN SELF AS RESULT
)
/
CREATE OR REPLACE TYPE BODY CHILD1_TYPE AS
CONSTRUCTOR FUNCTION CHILD1_TYPE RETURN SELF AS RESULT AS
BEGIN
RETURN;
END;
END;
What did you expect to see?
Types should be created successfully
What did you see instead?
Flyway get stuck on to this script and finally shows locking error .

I'm unable to reproduce this, executing the above script succeeds
Could you provide exact reproduction steps or a reproduction project?

sorry i have provided incomplete script  , please try below

Run flyway migrate with below script .
change the file so that flyway will run it again .
expected result : flyway should come back in seconds  , Actual  : flyway takes 15 min to compile in second time

begin
execute immediate 'DROP TYPE CHILD2_TYPE FORCE';
exception
when others then null;
end;
/
begin
execute immediate 'DROP TYPE CHILD1_TYPE FORCE';
exception
when others then null;
end;
/
begin
execute immediate 'DROP TYPE BASE_TYPE FORCE';
exception
when others then null;
end;
/
CREATE OR REPLACE TYPE BASE_TYPE AS OBJECT
(item_id number
,item_code varchar2(20)
,CONSTRUCTOR FUNCTION BASE_TYPE RETURN SELF AS RESULT
) NOT FINAL
/
CREATE OR REPLACE TYPE BODY BASE_TYPE AS
CONSTRUCTOR FUNCTION BASE_TYPE RETURN SELF AS RESULT AS
BEGIN
RETURN;
END;
END;
/
CREATE OR REPLACE TYPE CHILD1_TYPE UNDER BASE_TYPE
(var1 varchar2(20)
,CONSTRUCTOR FUNCTION CHILD1_TYPE RETURN SELF AS RESULT
)
/
CREATE OR REPLACE TYPE BODY CHILD1_TYPE AS
CONSTRUCTOR FUNCTION CHILD1_TYPE RETURN SELF AS RESULT AS
BEGIN
RETURN;
END;
END;
/
CREATE OR REPLACE TYPE CHILD2_TYPE UNDER BASE_TYPE
(var1 varchar2(20),
var2 CHILD1_TYPE,
CONSTRUCTOR FUNCTION CHILD2_TYPE RETURN SELF AS RESULT
)
/
CREATE OR REPLACE TYPE BODY CHILD2_TYPE AS
CONSTRUCTOR FUNCTION CHILD2_TYPE RETURN SELF AS RESULT AS
BEGIN
RETURN;
END;
END;
/

I'm still unable to reproduce this. Is there a particular modification you are making before migrating a second time?

No just make some changes so that flyway can run it second time

I'm still unable to get a reproduction. Could you provide a minimal reproduction project and steps with exact configuration and scripts?

Closing until we are able to reproduce


Dragging windows etc. via MobaXterm RDP Connection doesn't work when using "always on top"

Microsoft PowerToys version
0.63.0
Installation method
Windows Store
Running as admin

[ ] Yes

Area(s) with issue?
Always on Top
Steps to reproduce
Put chrome's window always on top and pin it  to eather corner (in my case right up).
Open MobaXterm RDP and try on guests:

doubleclicks
dragging windows
selecting text

✔ Expected Behavior
Normal doubleclick speed should work
Windows should be draggable
Text should be selected when dragging over it
❌ Actual Behavior
When I double click very slowly, it works, otherwise not.
Windows are not draggable. Cannot move them in guest.
Cannot select text.
If I disable always on top functinality, it starts working.
Other Software
MobaXterm Professional v22.1
Chrome v106.0.5249.119

Hey, here's the video: https://www.dropbox.com/s/7jyyo1qa4zikznq/PT.mp4?dl=0
You'll see, that Chrome gets blue border, when on top.

Are you still experiencing this issue? /needinfo

I am having the same issue with using the mouse to move windows while using MobaXterm and RDP.
I can not type in a RDP session unless I 'Detach Tab'.
I can use Alt-Spacebar M to move a window, but it is glitchy.
Thank you in advance for you help.