High DPI support

I've just noticed that using a high DPI monitor some controls doesn't scale well (both in IDE preview and once running), e.g. the KryptonCheckbox. Anyone has an idea about how to fix this behavior?
See image for reference:

I also want to a way to fix it. Because on Winform too much size are already fixed.  I would be very helpful if there is a way could keep the scale when change size also fix the blur problems.

@mbagattini ,Did you confirmed set all right? Because after I set all the setting, now all fine. Please share your code with us, maybe we could find something out. In my project all fine now. There is no more any issue with DPI. All just based your setting, if you all set good, no any problem.(Of course maybe some fixed width or height will need calculate again after DPI changed, that's the only thing you need to do)

It's because the check boxes and radio buttons are just image resources in the ComponentFactory.Krypton.Toolkit assembly. The images don't get scaled automatically (they are also small so scaling them would probably look pixelated).
You could create a custom palette and override the various .Images.CheckBox images with your own scaled version at runtime....

@iradicus , Could you please share your code? Thanks.

Here is an example of how to use a custom palette to rescale the existing images. It requires adding a KryptonPalette component onto your form in the designer. Then you need to change your KryptonManager component's PaletteMode to the new KryptonPalette (e.g. KryptonPalette1)
To change your theme just change the BasePaletteMode on the custom palette instead of using the KryptonManager.
Also, your app.manifest must declare dpiAware in order for the scaling to work, otherwise Windows will just scale your entire app as a bitmap which comes out pixelated.
One last thing, this is not for "Per-Monitor Dpi Awareness", that is a little more involved. If you change your dpi you will have to log out and log back in order for it to take effect.
You can copy this helper class into your project (you will need to change the namespace).
using System;
using System.Drawing;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ComponentFactory.Krypton.Toolkit;

namespace WindowsFormsApplication1
{
    static class PaletteImageScaler
    {
        // scales the custom KryptonPalette images using the current Dpi
        public static void ScalePalette(System.Windows.Forms.Form frm, KryptonPalette pal)
        {
            SizeF dpi = new SizeF();
            SizeF scaleFactor = new SizeF();

            // Get System Dpi setting. Note this does not handle per monitor Dpi
            // but should be the same Dpi as AutoScaleFont
            using (var g = frm.CreateGraphics())
            {
                dpi.Width = g.DpiX;
                dpi.Height = g.DpiY;
            }

            // set scale factor from current Dpi / the Dpi the images were created for (96)
            scaleFactor.Width = dpi.Width / 96.0F;
            scaleFactor.Height = dpi.Height / 96.0F;

            // if the scale is the same then no further processing needed (we are at 96 dpi).
            if (scaleFactor.Width == 1.0F && scaleFactor.Height == 1.0F)
                return;

            // suspend palette updates
            pal.SuspendUpdates();

            // scale buttonspec images
            var bs = pal.ButtonSpecs;
            bs.PopulateFromBase(); // populate images first so we can scale them
            ScaleButtonSpecImageType(bs.ArrowDown, scaleFactor);
            ScaleButtonSpecImageType(bs.ArrowLeft, scaleFactor);
            ScaleButtonSpecImageType(bs.ArrowRight, scaleFactor);
            ScaleButtonSpecImageType(bs.ArrowUp, scaleFactor);
            ScaleButtonSpecImageType(bs.Close, scaleFactor);
            ScaleButtonSpecImageType(bs.Common, scaleFactor);
            ScaleButtonSpecImageType(bs.Context, scaleFactor);
            ScaleButtonSpecImageType(bs.DropDown, scaleFactor);
            ScaleButtonSpecImageType(bs.FormClose, scaleFactor);
            ScaleButtonSpecImageType(bs.FormMax, scaleFactor);
            ScaleButtonSpecImageType(bs.FormMin, scaleFactor);
            ScaleButtonSpecImageType(bs.FormRestore, scaleFactor);
            ScaleButtonSpecImageType(bs.Generic, scaleFactor);
            ScaleButtonSpecImageType(bs.Next, scaleFactor);
            ScaleButtonSpecImageType(bs.PendantClose, scaleFactor);
            ScaleButtonSpecImageType(bs.PendantMin, scaleFactor);
            ScaleButtonSpecImageType(bs.PendantRestore, scaleFactor);
            ScaleButtonSpecImageType(bs.PinHorizontal, scaleFactor);
            ScaleButtonSpecImageType(bs.PinVertical, scaleFactor);
            ScaleButtonSpecImageType(bs.Previous, scaleFactor);
            ScaleButtonSpecImageType(bs.RibbonExpand, scaleFactor);
            ScaleButtonSpecImageType(bs.RibbonMinimize, scaleFactor);
            ScaleButtonSpecImageType(bs.WorkspaceMaximize, scaleFactor);
            ScaleButtonSpecImageType(bs.WorkspaceRestore, scaleFactor);

            // scale images
            pal.Images.PopulateFromBase(); //populate images first so we can scale them
            // CheckBox
            var cb = pal.Images.CheckBox;
            cb.CheckedDisabled = GetScaledImage(cb.CheckedDisabled, scaleFactor);
            cb.CheckedNormal = GetScaledImage(cb.CheckedNormal, scaleFactor);
            cb.CheckedPressed = GetScaledImage(cb.CheckedPressed, scaleFactor);
            cb.CheckedTracking = GetScaledImage(cb.CheckedTracking, scaleFactor);
            cb.UncheckedDisabled = GetScaledImage(cb.UncheckedDisabled, scaleFactor);
            cb.UncheckedNormal = GetScaledImage(cb.UncheckedNormal, scaleFactor);
            cb.UncheckedPressed = GetScaledImage(cb.UncheckedPressed, scaleFactor);
            cb.UncheckedTracking = GetScaledImage(cb.UncheckedTracking, scaleFactor);
            // ContextMenu
            var cm = pal.Images.ContextMenu;
            cm.Checked = GetScaledImage(cm.Checked, scaleFactor);
            cm.Indeterminate = GetScaledImage(cm.Indeterminate, scaleFactor);
            cm.SubMenu = GetScaledImage(cm.SubMenu, scaleFactor);
            // DropDownButton
            var ddb = pal.Images.DropDownButton;
            ddb.Disabled = GetScaledImage(ddb.Disabled, scaleFactor);
            ddb.Normal = GetScaledImage(ddb.Normal, scaleFactor);
            ddb.Pressed = GetScaledImage(ddb.Pressed, scaleFactor);
            ddb.Tracking = GetScaledImage(ddb.Tracking, scaleFactor);
            // GalleryButtons
            // I'm not using these so I'm skipping it
            // Radio Buttons
            var rb = pal.Images.RadioButton;
            rb.CheckedDisabled = GetScaledImage(rb.CheckedDisabled, scaleFactor);
            rb.CheckedNormal = GetScaledImage(rb.CheckedNormal, scaleFactor);
            rb.CheckedPressed = GetScaledImage(rb.CheckedPressed, scaleFactor);
            rb.CheckedTracking = GetScaledImage(rb.CheckedTracking, scaleFactor);
            rb.UncheckedDisabled = GetScaledImage(rb.UncheckedDisabled, scaleFactor);
            rb.UncheckedNormal = GetScaledImage(rb.UncheckedNormal, scaleFactor);
            rb.UncheckedPressed = GetScaledImage(rb.UncheckedPressed, scaleFactor);
            rb.UncheckedTracking = GetScaledImage(rb.UncheckedTracking, scaleFactor);

            // resume palette updates
            pal.ResumeUpdates();
        }

        // helper method for scaling KyrptonPaletteButtonSpecTyped
        private static void ScaleButtonSpecImageType(KryptonPaletteButtonSpecTyped bst, SizeF scaleFactor)
        {
            bst.Image = GetScaledImage(bst.Image, scaleFactor);
            var imgState = bst.ImageStates;
            imgState.ImageCheckedNormal = GetScaledImage(imgState.ImageCheckedNormal, scaleFactor);
            imgState.ImageCheckedPressed = GetScaledImage(imgState.ImageCheckedPressed, scaleFactor);
            imgState.ImageCheckedTracking = GetScaledImage(imgState.ImageCheckedTracking, scaleFactor);
            imgState.ImageDisabled = GetScaledImage(imgState.ImageDisabled, scaleFactor);
            imgState.ImageNormal = GetScaledImage(imgState.ImageNormal, scaleFactor);
            imgState.ImagePressed = GetScaledImage(imgState.ImagePressed, scaleFactor);
            imgState.ImageTracking = GetScaledImage(imgState.ImageTracking, scaleFactor);
        }

        // scales an image and also makes magenta transparent
        private static Image GetScaledImage(Image img, SizeF scaleFactor)
        {
            if (img == null)
                return null;
            if (scaleFactor.Width == 1 && scaleFactor.Height == 1)
                return img;

            Bitmap bmp = new Bitmap((int)(img.Width * scaleFactor.Width), (int)(img.Height * scaleFactor.Height), System.Drawing.Imaging.PixelFormat.Format32bppPArgb);

            using (var tmpBmp = new Bitmap(img))
            {
                tmpBmp.MakeTransparent(Color.Magenta);
                using (var g = Graphics.FromImage(bmp))
                {
                    g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
                    g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High;
                    g.DrawImage(tmpBmp, 0, 0, bmp.Width, bmp.Height);
                }
            }

            return bmp;
        }
    }
}

This is example form code on how to use it. (Make sure to add a custom palette first)
public partial class Form1 : KryptonForm
    {

        public Form1()
        {
            InitializeComponent();

            // Make sure your KryptonManager GlobalPalette is using the custom palette in designer
            // kryptonManager1.GlobalPalette = kryptonPalette1;

            // initialize image scaling
            PaletteImageScaler.ScalePalette(this, kryptonPalette1);
        }

        // change the palette mode and handle image scaling
        private void ChangePalette(PaletteMode palMode)
        {
            kryptonPalette1.SuspendUpdates();
            kryptonPalette1.BasePaletteMode = palMode;
            PaletteImageScaler.ScalePalette(this, kryptonPalette1);
            kryptonPalette1.ResumeUpdates();
        }

        private void office2007BlueToolStripMenuItem_Click(object sender, EventArgs e)
        {
            ChangePalette(ComponentFactory.Krypton.Toolkit.PaletteMode.Office2007Blue);
        }

        private void office2010BlackToolStripMenuItem_Click(object sender, EventArgs e)
        {
            ChangePalette(ComponentFactory.Krypton.Toolkit.PaletteMode.Office2010Black);
        }

        private void sparkleBlueToolStripMenuItem_Click(object sender, EventArgs e)
        {
            ChangePalette(ComponentFactory.Krypton.Toolkit.PaletteMode.SparkleBlue);
        }
    }

@iradicus , Is there any possible that we could get current Palette?  not always use KryptonPalette control.

I don't think there's an easier way. If you have a Main form you only need the KryptonPalette on there. All your other forms and controls should still refer to the Global palette, so when you make the KryptonManager component reference the custom palette it will become the Global palette. Then if you want to change the theme you just need to change the BasePaletteMode of the custom palette and all other forms will be updated. (Just know when you change the BasePaletteMode only properties you have not explicitly set will change, as they will inherit  the styles of the base palette only if they are not set.

@huangjinshe , by the way, if you're not wanting to use the KryptonPalette because you want to change the base font, it is really easy to do. On your form initialize you could just add.
KryptonPalette1.Common.StateCommon.Content.ShortText.Font = myBaseFont;
KryptonPalette1.Common.StateCommon.Content.LongText.Font = myBaseFont;
KryptonPalette1.CalendarDay.StateCommon.Content.ShortText.Font = myCalendarFont;
KryptonPalette1.HeaderStyles.HeaderCalendar.StateCommon.Content.ShortText.Font = myCalendarFont;

I  recommend you look at the PaletteDesigner.exe that should be in the bin folder with the Krypton .dlls to get an idea of all the properties you can change. I think everything has "StateCommon" properties that you can set which means the other properties in that group will inherit the StateCommon if they are not explicitly specified.

@iradicus , In my case I'm using the extend method from Office 2010 - Blue,
public class CustomPlatte : PaletteOffice2010Blue
I use custom platte when application open the first window. So now my all window using CustomPlatte.
I have a Form also include a checkbox, So I just tried your sample code, but not succeed.
InitializeComponent();
// initialize image scaling
PaletteImageScaler.ScalePalette(this, kryptonPalette1);

The kryptonPalette1 I just drag from Visual Studio. and set it to:
// Auto generate by Visual Studio
this.kryptonPalette1 = new ComponentFactory.Krypton.Toolkit.KryptonPalette(this.components);
// Manually change to other not working
this.kryptonPalette1.BasePaletteMode = ComponentFactory.Krypton.Toolkit.PaletteMode.Global;

I have use dpiAware already, also set every Form to:
this.AutoScaleDimensions = new System.Drawing.SizeF(144F, 144F); // 96
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;

But the checkbox still small after I change the Windows DPI to 150%, and logout and login.

@huangjinshe , Are you using a KryptonManager component on your form? If you have a KryptonManager component you should be able to select kryptonPalette1 as the GlobalPalette.
Then you should be able to set the BasePaletteMode of kryptonPalette1 to Office 2010 Blue. All this should be done from the designer.

@iradicus , I already tried put KryptonManager to the Form before I comment yesterday, But nothing changed.
My first Form has KryptonManager, and I use my own palette as you know:

krpManager1.GlobalPaletteMode = PaletteModeManager.Custom;
krpManager1.GlobalPalette = PaletteBlue.GetSelf();

After that, I open my second Form as a Dialog window. I add the KryptonPalette, and set BasePaletteMode to Global as I mention before, and I PaletteImageScaler.ScalePalette(this, kryptonPalette1);  But I feel nothing changed, especially the Checkbox still small on 150% DPI.

@huangjinshe Ok, I thought you were trying to use kryptonPalette1 instead of your CustomPalette. The PaletteCustomScaler isn't going to do anything with your custom class. It might work if you set kryptonPalette1.BasePalette = customPalette but I'm not sure because I haven't tried it. If you're going to keep using your class then you can just get rid of the KryptonPalette and do it this way.
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Linq;
using System.Text;
using ComponentFactory.Krypton.Toolkit;

namespace WindowsFormsApplication1
{
    class CustomPalette : PaletteOffice2010Blue
    {

        private SizeF _dpi;
        private SizeF _scaleFactor;

        public SizeF Dpi
        {
            get
            {
                if (_dpi.IsEmpty)
                {
                    using (var g = Graphics.FromHwnd(IntPtr.Zero))
                    {
                        _dpi = new SizeF(g.DpiX, g.DpiY);
                    }
                }
                return _dpi;
            }
        }

        public SizeF ScaleFactor
        {
            get
            {
                if (_scaleFactor.IsEmpty)
                {
                    _scaleFactor = new SizeF(Dpi.Width / 96.0F, Dpi.Height / 96.0F);
                }
                return _scaleFactor;
            }
        }

        public override Image GetButtonSpecImage(PaletteButtonSpecStyle style, PaletteState state)
        {
            return GetScaledImage(base.GetButtonSpecImage(style, state));
        }

        public override Image GetCheckBoxImage(bool enabled, System.Windows.Forms.CheckState checkState, bool tracking, bool pressed)
        {
            return GetScaledImage(base.GetCheckBoxImage(enabled, checkState, tracking, pressed));
        }

        public override Image GetContentShortTextImage(PaletteContentStyle style, PaletteState state)
        {
            return GetScaledImage(base.GetContentShortTextImage(style, state));
        }

        public override Image GetContentLongTextImage(PaletteContentStyle style, PaletteState state)
        {
            return GetScaledImage(base.GetContentLongTextImage(style, state));
        }

        public override Image GetContextMenuCheckedImage()
        {
            return GetScaledImage(base.GetContextMenuCheckedImage());
        }

        public override Image GetContextMenuIndeterminateImage()
        {
            return GetScaledImage(base.GetContextMenuIndeterminateImage());
        }

        public override Image GetContextMenuSubMenuImage()
        {
            return GetScaledImage(base.GetContextMenuSubMenuImage());
        }

        public override Image GetDropDownButtonImage(PaletteState state)
        {
            return GetScaledImage(base.GetDropDownButtonImage(state));
        }

        public override Image GetGalleryButtonImage(PaletteRibbonGalleryButton button, PaletteState state)
        {
            return GetScaledImage(base.GetGalleryButtonImage(button, state));
        }

        public override Image GetRadioButtonImage(bool enabled, bool checkState, bool tracking, bool pressed)
        {
            return GetScaledImage(base.GetRadioButtonImage(enabled, checkState, tracking, pressed));
        }

        public override Image GetTreeViewImage(bool expanded)
        {
            return GetScaledImage(base.GetTreeViewImage(expanded));
        }

        private Image GetScaledImage(Image img)
        {
            if ((img == null) || (ScaleFactor.Width == 1 && ScaleFactor.Height == 1))
                return img;

            Bitmap bmp = new Bitmap((int)(img.Width * ScaleFactor.Width), (int)(img.Height * ScaleFactor.Height), System.Drawing.Imaging.PixelFormat.Format32bppPArgb);

            using (var tmpBmp = new Bitmap(img))
            {
                tmpBmp.MakeTransparent(Color.Magenta);
                using (var g = Graphics.FromImage(bmp))
                {
                    g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
                    g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High;
                    g.DrawImage(tmpBmp, 0, 0, bmp.Width, bmp.Height);
                }
            }

            return bmp;
        }

    }
}

@iradicus Thank you for your help, It's normal now.

I had a similar problem to this working with 150% scaling back in the win7 days. Would it be workable to compile in an alternate set of pre-scaled images that got autoselected depending on the scale mode? Or would it be better to change the existing resource images to one large set, and automatically downscale them?


[Feature Request] Please update react-grid-layout

Is your feature request related to a problem? Please describe.
Please update the react-grid-layout version. The new version has a few bug fixes, which fixes quite annoying bugs.

Will do - have to ensure the changes are stable for our build first


No Speaker Detection Support

Hi,
I have tried many methods of JavaScript to detect local speakers & checked your given example as well. But nothing is working.
Could you please me to use correct API to detect local speakers?
Thanks in Advance
Thanks,
KrishPS

It's not finalized in the standard yet, details in this bug. TL;DR proposal here

Thanks a lot for the info.


Correct typo in footer

Hello
Do you have a sec?
I just corrected a micro mini tiny typo :grinning:

Nuts, I didn't receive a notification from this repo, but addressed this recently in 398dbbef4d590dad7db68fe40f2e5640e2722fc2. Closing this, but thanks!


Updated dates due to COVID-19

@markjjo - Please review and publish at your earliest convenience.

@mahage-msft PR merged


improve analytics and page load time

calling page function when the angular "page" changes. This will improve initial load of the page and give better data to the analytics service

@quintesse any input?

ah! I hadn't seen you had requested input on this. Let me see...

added name and parameters to the call, this is an example:
{
   "name": "step1",
   "properties": {
      "command": "launchpad-new-project",
      "filters": "all",
      "state": "e30=",
      "step": "1"
}

Perhaps state shouldn't be passed along, as it doesn't say anything useful

it contains all the values that the user has selected, it could be useful

if you could add the session id (or whatever it's called) in there too we'd have all the information we need. (With the session id we can for example check how many people actually get to the end of the process and if not on which page they decide to stop)

@quintesse don't have a session id, but could add the logged in user maybe?

I mean that very long id that is part of the url

ahhh that is called state and is in the properties, it is base64 encoded state and contains everything that the user has selected.

aaah ok! :)
so is there another thing that can be used to distinguish the "session"? Because the user is probably not the correct thing to store (although it's certainly interesting to add it if you have that information, but then we'd use the identity() method instead of the page() one), imagine that you have multiple pages open.

Don't have anything to identify the session, it's all browser based and there is no server session  that we can use

@quintesse is this still valid?


Try some extensions

https://extensions.gnome.org/extension/6385/steal-my-focus-window/
https://extensions.gnome.org/extension/1071/applications-overview-tooltip/

https://extensions.gnome.org/extension/6556/task-up/


[Feature] Support cross mesh nccl allreduce

This PR:

Adds a CrossMeshNcclAllReduce thunk to support allreduce in collective communication.
The opaque of __builtin$CrossMeshAllReduce is the reduction op's type but is intended to include the participant mesh group to support multiple cross mesh allreduce later.
Expose API to set nccl communicator. In later PR, it should support generating keys for different mesh groups and using a thread-safe map.
Expose API to create nccl communicator.
Communicators created by CuPy wraps ncclComm_t by cdef, so we cannot get access to the ncclComm_t. Instead, we create the communicators using nccl in XLA.

There are many new code added, please re-review it and I'll merge then @merrymercy


Added multimodal embeddings

REQUIRED: Add a summary of your PR here, typically including why the change is needed and what was changed. Include any design alternatives for discussion purposes.
Added new multimodal embeddings notebook.
REQUIRED: Fill out the below checklists or remove if irrelevant

If you are opening a PR for Official Notebooks under the notebooks/official folder, follow this mandatory checklist:

[x] Use the notebook template as a starting point.
[x] Follow the style and grammar rules outlined in the above notebook template.
[ ] Verify the notebook runs successfully in Colab since the automated tests cannot guarantee this even when it passes.
[ ] Passes all the required automated checks. You can locally test for formatting and linting with these instructions.
[ ] You have consulted with a tech writer to see if tech writer review is necessary. If so, the notebook has been reviewed by a tech writer, and they have approved it.
[x] This notebook has been added to the CODEOWNERS file under the Official Notebooks section, pointing to the author or the author's team.
[x] The Jupyter notebook cleans up any artifacts it has created (datasets, ML models, endpoints, etc) so as not to eat up unnecessary resources.

/gcbrun

@sarahcdugan to review text.

/gcbrun

Not needed. This is already a unique (well, random) bucket name.

View entire conversation on ReviewNB

Added blurb about batch and generator.

View entire conversation on ReviewNB


Profile photo: an error received after trying to upload a photo a couple of times

Definition of Done

[ ] verify gun settings
[x] image uploading works
[x] verify image size is reduced

1 upload profile image 6.8MB jpeg
2 it was saved successfully
3 download image from profile  310 KB png
4 tried a few times
5 after page reload I see the profile image so it was saved

faced with another problem

it happens when u have bad internet connection. gun socket was disconnected

Checked on https://ewallet.gooddollar.org/
Works as expected


[Shape] Shape not functioning correctly with checkbox

Hello,
So the problem I have been having is having checkbox within a shape. The problem occurs when clicking the checkbox on a side, and then returning back to the previous side. It can be random and does not always break, so please try a couple times. The problem is it moves the whole shape across the view. I have managed to sort of get around if with javascript resetting.
The issue is the "animating" class is not being removed from id="flip_forms".
I have had similar issues with fields but managed to fix it by overriding the class:
.ui.shape.animating .side * {
transition: none !important;
}
My theory is that it is a problem with having shapes within grids.
Steps

Open jsfiddle or site
Click "Sign Up" Text
Check the checkbox
Click "Sign In"

or

Open jsfiddle or site
Click "Sign Up" Text
Check the checkbox
Click "Sign In"
Click "Sign Up"
Uncheck checkbox
Click "Sign In"

Issue should be here. As i said it can be random. Sometimes this does not cause the problem, but then unchecking the checkbox causes the problem.
Can also be seen on the site : https://flextrainer.app/securelogin#
Expected Result
Will smoothly transition back to the original side
Actual Result
Shape gets put somewhere else on the page

Version
2.3.3
Testcase
https://jsfiddle.net/370Lpo1a/1/
Thank you for your time. Any issues with the jsfiddle let me know.

Fixed in Fomantic-UI by https://github.com/fomantic/Fomantic-UI/pull/529
See your adjusted working fiddle here: https://jsfiddle.net/h3g108k7/


🏗 Clear search input after submitting a search

After entering a search, the navigation search input is not cleared.
Acceptance
Clear the navigation search input on search submission.

Closed by #729


Relax SwiftLint Rules

Followup from #891
Some of the SwiftLint rules are causing us to write code in ways that we otherwise wouldn't. Let's have a discussion about which rules are causing that and put them up on the chopping block.
My initial guess would be treating bangs as warnings, and perhaps line spacing / trailing commas?
@rnystrom @jessesquires @Sherlouk

💯 lets do it

I think this got merged and can be closed?


Batman:Arkham Knight sample mask and multisampling behavior problem

I have encountered a problem with Batman's cloak in the game Batman:Arkham Knight. It is always flickering and it looks like it is caused by DXVK.
Firstly the Mesa issue was created: 6078. You can find most of information in this issue, but in general it appears that sample mask out behavior with multisampling is a problem here. It looks like DXVK is expecting GL behavior. It expects sample mask to be disabled for single sampled target, while VK behavior is different - per the Vulkan spec, shader writes to the sample mask work regardless of whether multisample is enabled.
Trace
BatmanAK

Is the D3D behaviour documented anywhere?

@viktoriiapalianytsia i see this have been worked around in the driver but if you are still around i think the devs would like some more info about the original issue if possible

@viktoriiapalianytsia Friendly double ping.

All the info I had about this misrendering is in the original issue. I can also provide the trace that was used while working with workaround in this link.


[macOS] Unusable keyboard after kmonad crashes/gets interrupted

This is a big problem.
When I use kmonad on my computer, after some point if kmonad crashes (see #106 for example) or I interrupt it (say to reload it after a config change), my keyboard is completely unresponsive.
At this point I can only ssh into my computer to start kmonad back up or use the accessibility visual keyboard to click click click my way into starting kmonad.
The only way to solve this issue is to reboot.
It doesn't happen right away because at first I can actually stop kmonad and have my keyboard be ok, but after some point (can't say why/how/when) I can't anymore.
I see this in my terminal
'IOHIDDeviceOpen error: (iokit/common) exclusive access and device already open'
and I think it might be related, but I'm not sure.
Any ideas?

@thoelze1 is the Mac expert around here; what do you think?

I don't have any ideas right off the bat. I experienced similar issues during development, but not since. I regularly interrupt kmonad for a config change, but I haven't experienced a crash in months. Maybe crashing has something to do with it...

At this point I can only ssh into my computer to start kmonad back up or use the accessibility visual keyboard to click click click my way into starting kmonad.
The only way to solve this issue is to reboot.

Let me make sure I understand you correctly. So once kmonad enters this strange state (randomly, while stopping) your keyboard becomes unresponsive. But once you restart kmonad (via SSH, accessibility keyboard, etc) your keyboard becomes usable again. But upon stopping kmonad, your keyboard returns to its unresponsive state? And this cycle continues until reboot?

This is a big problem.

Absolutely. I almost stopped developing the macOS interface because issues like this became so frustrating. Are you still using kmonad? If so, is this still happening? Sorry about the delay in responding.

Let me make sure I understand you correctly. So once kmonad enters this strange state (randomly, while stopping) your keyboard becomes unresponsive. But once you restart kmonad (via SSH, accessibility keyboard, etc) your keyboard becomes usable again. But upon stopping kmonad, your keyboard returns to its unresponsive state? And this cycle continues until reboot?

Absolutely, yes, and I have no idea how to fix that short of rebooting.
I stopped using kmonad a while ago because I've started using my mechanical (qmk) keyboard, and on my macbook switched back to Karabiner for stability (and combos), but I'll be happy to try some stuff for you if you need any testing.

Nothing's jumping out at me yet. For future reference, please provide the following from the time of the bug, if you have it:

macOS version
commit you built kmonad from
config file

Did you have Karabiner running at any point while running kmonad? And how many keyboards were you using? Did all of them become unresponsive? Thanks.

Uh, as I said I haven't used kmonad in a while now but the macOS version was Mojave (10.14.6), the commit I built from.... I have no idea really but it must have been right around the time I initially started this issue, and the config file can be found here.
I never had Karabiner running at the same time as kmonad because of course only one could be used at the same time. I was only using the built-in keyboard on my macbook.

Hey, just popping in to ask, is this still an issue? I do my KMonad development stuff on a secondary keyboard, so if everything breaks completely, usually plugging my keyboard out and in again fixes things. However, not sure how this is currently on mac.

I haven't been using kmonad for several months now, and I've done a full clean install of the newest version of macOS since then, so I couldn't really say. I'm just getting back into re-using it now so we'll see, but I guess for now just go with "no" until the problem reappears and if it does I'll come back here and tell you.

I am using kmonad on Big Sur, and the problem was still occurring in the develop branch a few weeks ago. I haven't pulled and recompiled in a while, but will do do soon. I'll let you know if it's gone now.

Cool, because there is now no longer a develop, only 1 branch to rule them all. If there's no issue with that version, then I'll close this issue.

Today I experienced the same issue: been using kmonad on an off for about a year (to remap my MacBook Pro's built-in keyboard) and I do keep extra keyboards around for cases like this (this also makes me scared to start monad as a system service at boot).
Built from 0.4.0-294-g744c044 (744c0445ac9beaece489cd6cdc981eeae45467a7).
Running on Monterey 12.3.1
dmsnell.kbd

;; See keymap/tutorial.kbd for a more complete tutorial
(defcfg
input (iokit-name "Apple Internal Keyboard / Trackpad")
output (kext)
fallthrough true
)
(defsrc
esc  f1   f2   f3   f4   f5   f6   f7   f8   f9   f10  f11  f12
grv  1    2    3    4    5    6    7    8    9    0    -    =    bspc
tab  q    w    e    r    t    y    u    i    o    p    [    ]
caps a    s    d    f    g    h    j    k    l    ;    '    ret
lsft z    x    c    v    b    n    m    ,    .    /    rsft up
fn   lctl lalt lmet           spc            rmet ralt left down rght
)
;; Below, I use around' to compose layer-toggle' with fn' (instead ;; of using layer-toggle' directly) so that the fn' keypress ;; actually gets emitted.  When I want to stop it or update the config I send Ctrl + c to kill it.
Normally it's fine when killing and my keyboard continues working.
Now that it's leaving the keyboard unresponsive I've started and stopped it a number of times with an external keyboard. Sometimes it dies without message, sometimes it prints an error, here are some I've seen:

Encountered error in KeySource: [Cannot interpret mac switch:<PHONE_NUMBER>20576,Cannot translate from mac keycode: (5,4294967295)]
Encountered error in KeySource: [Cannot translate from mac keycode: (0,0)]

After rebuilding from c43a0180a3b9ca9c4ff4a283b17369fc4e8e46e2 and running again it's still dropping my keyboard when killing the app (thought I believe the only update there was a Nix module).
It doesn't appear to matter if I send the Ctrl+c from my built-in laptop keyboard or the external one.

One final note since this is my first post on your repo: thanks so much for your work on this. The more I get accustomed to my split keyboard the more I wish my laptop keys could do different things and kmonad helps with that. 🙇♂


[Persistence] Removing code duplication, improving error handling in shouldHydrateGenesisDb function and refactoring Create function

This is the last PR I'll be submitting not to spam GitHub area with non consistent PRs. If you still find them helpful, feel free to let me know.
Change 1:
The existing code has two identical lines that serve the same purpose, which is to check at compile-time that persistenceModule implements the modules.PersistenceModule interface. Including this line twice doesn't provide any additional benefit.
Change 2:
In the current code, if there is an error when calling readCtx.GetMaximumBlockHeight(), the function simply returns true for shouldHydrateGenesisDb and ignores the error. This might lead to incorrect program behavior because the error could indicate a problem that needs to be resolved. In the revised code, the function returns the error itself, allowing the caller to handle it appropriately.
New codes comes with improved error handling in shouldHydrateGenesisDb function. If there's an error when calling readCtx.GetMaximumBlockHeight(), the function now correctly returns the error to the caller. This change enhances the robustness of the code by ensuring that potential errors are not silently ignored and can be properly dealt with by the calling function.
Change 3:
In the current code, there is an unnecessary else statement after the if block that checks shouldHydrateGenesis. As the if block returns if there's an error, the following code can be moved outside of the else block. Removing the else statement makes the code simpler, easier to read, and more "Go idiomatic", as Go encourages avoiding unnecessary else after return in if.

This looks good to me! @innocent-saeed36, do you mind sharing what tools/prompts you used to find these changes? It would be really awesome to work together on automating it!

Closing per the broken build and @bryanchriswhite's comment.

This looks good to me! @innocent-saeed36, do you mind sharing what tools/prompts you used to find these changes? It would be really awesome to work together on automating it!

Hello @Olshansk , to help you how to detect possible improvements and potential bugs, it's useful to use  GPT-4 for the entire .go file and use it for almost any file in the entire codebase. It unfortunately cannot understand interconnections among files and functions as it cannot use multiple files, but prompts that can help a bit is:
extensively analyze the following code, tell me if there are any bugs, potential bugs or places for improvements:
and then copy paste the entire .go file content. It can be automated I guess for all .go (and other) files to see where it makes sense to make improvements. Thanks and sorry for the slower response. Feel free to ping me if you need me for something else or if you want to discuss further on Discord.


Bot error background_task_spoiler_season

()
{}

Reported on discordbot by discord user--------------------------------------------------------------------------------
JSONDecodeError
Expecting value: line 1 column 1 (char 0)
Stack Trace:

  File "run.py", line 95, in <module>
    run()
  File "run.py", line 16, in run
    bot.init()
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/bot.py", line 201, in init
    client.init()
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/bot.py", line 32, in init
    self.run(configuration.get('token'))
  File "/home/discord/.local/lib/python3.6/site-packages/discord/client.py", line 563, in run
    loop.run_forever()
  File "/usr/lib64/python3.6/asyncio/base_events.py", line 422, in run_forever
    self._run_once()
  File "/usr/lib64/python3.6/asyncio/base_events.py", line 1432, in _run_once
    handle._run()
  File "/usr/lib64/python3.6/asyncio/events.py", line 145, in _run
    self._callback(*self._args)
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/bot.py", line 185, in background_task_tournaments
    await self.background_task_spoiler_season()
  File "/home/discord/Penny-Dreadful-Discord-Bot/discordbot/bot.py", line 128, in background_task_spoiler_season
    new_cards = await fetcher.scryfall_cards_async()
  File "/home/discord/Penny-Dreadful-Discord-Bot/magic/fetcher.py", line 136, in scryfall_cards_async
    return await internal.fetch_json_async(url)
  File "/home/discord/Penny-Dreadful-Discord-Bot/shared/fetcher_internal.py", line 79, in fetch_json_async
    return json.loads(blob)
  File "/usr/lib64/python3.6/json/__init__.py", line 354, in loads
    return _default_decoder.decode(s)
  File "/usr/lib64/python3.6/json/decoder.py", line 339, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/lib64/python3.6/json/decoder.py", line 357, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None

Temporary network conditions.


Backlog for Writers WG

2023 Meeting Summary - https://docs.google.com/spreadsheets/d/1JhXslq49PmHg2zrjPXTYmMYIL3UMdVIQPKbmLjAC64E/edit?usp=sharing
2024 Meeting Summary - https://docs.google.com/spreadsheets/d/1S1M-IlMnI4WPL2c_ojOeIExvWU-bkzfamirE5_Ls9-4/edit?usp=sharing

All added to GitBook - am closing the Issue


Overlapping routes inside group

Laravel Version: 5.5.18
PHP Version: 7.1.3
Database Driver & Version: MySQL 5.7.17

Description:
When creating a route underneath a route expecting a parameter, the route above with the parameter is called.
Steps To Reproduce:
// User routes
Route::group(['prefix' => '/users'], function () {
    Route::get('/', 'UserController@get');
    Route::post('/', 'UserController@create');
    Route::get('/{user_id}', 'UserController@getForId');
    Route::patch('/{user}', 'UserController@update');
    Route::get('/types', 'UserController@types');
});

Go to /users/types.
Watch UserController@getForId get called instead of @types.

This behaviour goes away when moving the UserController@types route above the UserController@getForId route.

This is the natural behavior, you'll need to define any routes without a parameter before the {user_id} route.

yah, general rule of thumb, go from more specific routes to less specific.


Show number of returned results on submission table filtering

Can be tested here https://test-apply.opentech.fund/apply/submissions/all/
The number of results appear after the page title in the header: All Submissions (96)


fix: DeviceSetup heading link change broke anchors

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

windows-iotcore/tutorials/adafruitkit.md
:white_check_mark:Succeeded

windows-iotcore/tutorials/quickstarter/PrototypeBoards.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Fix clamp method and add skeleton for swapCase method

Make sure these boxes are checked before submitting this pull request~!~ Thank you!!

[x] The test of the method you have fixed is passing
[x] You have written a new skeleton method for someone else to work on!

Fixes #79

Awesome @ltetzlaff !! Thanks for the contribution!


Refactor project

This PR depends upon node-oauth-server#203 and introduces a cleaner koa-specific implementation that also allows for the OAuth model class to export generator functions instead of node-style callback functions.
Furthermore, the examples previously found in the node-oauth2-server repository were moved here since they're all dependent on Koa.
Koa-OAuth-Server
Introduces a new Koa OAuth server wrapper with the following changes:

Added wrapping of model functions to support generator functions.
Fixed OAuth token is now exposed in the Koa context's state instead of injected into the current context.
Fixed objects retrieved from the model are no longer injected into the execution context.
Improved handling of errors by simply copying the underlying response, instead of hard-coding the error, error_description and code properties.
Removed express framework-specific response handling.
Removed passthroughErrors in favor of always emitting the thrown error.

Now that https://github.com/thomseddon/node-oauth2-server/issues/203 has been merged, we need to get this merged into master. Other fixes will follow soon.


vulkaninfo --html has unnecessary expansion triangle

running vulkaninfo --html creates an HTML file that, when viewed, shows Vulkan Instance Version: 1.2.141 with an expansion triangle to the left. Clicking the triangle shows that it expands to nothing.
An expansion triangle should not be shown if there's no hidden information.

This is an issue on firefox, but not chrome. Also, the newest version of edge (which uses chromium) renders exactly like chrome which is to be expected. The older version of edge is completely unreadable.
I believe that the original html code was developed using chrome and thus didn't check to see how it rendered in different browsers.

I have tested on safari, there it renders as expected (ie same as chrome).
This leads me to believe that this is a deficiency in the firefox rendering engine, and should be researched further to discover if the html is being rendered incorrectly or not.


go tool does not have tour option

Context: https://tour.golang.org/welcome/3
go version go1.7.5 darwin/amd64
possible options when running go tool return
addr2line
api
asm
cgo
compile
cover
dist
doc
fix
link
nm
objdump
pack
pprof
trace
vet
yacc

duplicate of https://github.com/golang/tour/issues/8
@NorikDavtian If you feel this issue is addressed there please considered closing it, thanks!

Yep, closing as a dup of #8.


Remove references to old HGNC Gene table in Varfish

Is your feature request related to a problem? Please describe.
Currently we validate genes against either mehari or the hgnc table.
Describe the solution you'd like
Everything should use mehari.

In a first step, I assembled a list of references to the HGNC table.
clinvar_export/serializers.py
https://github.com/varfish-org/varfish-server/blob/6a308f5dfde372330f3880482b5e98a8948cd550/clinvar_export/serializers.py#L350
=> function not used anymore
https://github.com/varfish-org/varfish-server/blob/6a308f5dfde372330f3880482b5e98a8948cd550/clinvar_export/serializers.py#L357
=> function not used anymore
geneinfo/models.py
https://github.com/varfish-org/varfish-server/blob/6a308f5dfde372330f3880482b5e98a8948cd550/geneinfo/models.py#L133
=> function not used anymore
Is geneinfo app used in general? Yes, for resolving genepanels
geneinfo/views_api.py
https://github.com/varfish-org/varfish-server/blob/6a308f5dfde372330f3880482b5e98a8948cd550/geneinfo/views_api.py#L23
=> view not used anymore
geneinfo/views.py
On a related note: is RefseqToHgnc/RefseqToEnsembl used? yes by ExtendQueryPartsHgncJoin
https://github.com/varfish-org/varfish-server/blob/6a308f5dfde372330f3880482b5e98a8948cd550/geneinfo/views.py#L83
=> view not used anymore
variants/queries.py
https://github.com/varfish-org/varfish-server/blob/6a308f5dfde372330f3880482b5e98a8948cd550/variants/queries.py#L210
=> definitely used
https://github.com/varfish-org/varfish-server/blob/6a308f5dfde372330f3880482b5e98a8948cd550/variants/queries.py#L1040
=> definitely used
variants/models/userannos.py
https://github.com/varfish-org/varfish-server/blob/6a308f5dfde372330f3880482b5e98a8948cd550/variants/models/userannos.py#L26
-> GetGeneSymbolsMixin -> SmallVariantComment/SmallVariantFlags => definitely used
geneinfo/tests/_test_views.py
geneinfo/tests/test_models.py
variants/tests/_fixtures.py
variants/tests/test_queries.py
=> usage in tests is not critical

Is geneinfo app used in general? Yes, for resolving genepanels
On a related note: is RefseqToHgnc/RefseqToEnsembl used? yes by ExtendQueryPartsHgncJoin

Use annonars to resolve gene panels

Not resolved yet:

https://github.com/varfish-org/varfish-server/blob/6a308f5dfde372330f3880482b5e98a8948cd550/clinvar_export/serializers.py#L350
https://github.com/varfish-org/varfish-server/blob/6a308f5dfde372330f3880482b5e98a8948cd550/clinvar_export/serializers.py#L357
https://github.com/varfish-org/varfish-server/blob/6a308f5dfde372330f3880482b5e98a8948cd550/variants/queries.py#L210
https://github.com/varfish-org/varfish-server/blob/6a308f5dfde372330f3880482b5e98a8948cd550/variants/queries.py#L1040

Will merge and open a new ticket for the remaining.


Fixed bug with all Abode switch devices being excluded.

Description:
Fixed bug with all Abode switch devices being excluded.
If the code does not interact with devices:

[x] Local tests with tox run successfully. Your PR cannot be merged unless tests pass
[x] Tests have been added to verify that the new code works.

Not quite sure what the proper way of requesting this is, but I'd like this to get in to 0.54.1 release if one ends up happening.


unnecessary notes and checkstyle

unnecessary notes and checkstyle

Pull Request Test Coverage Report for Build 4938

3 of 6 (50.0%)  changed or added relevant lines in 4 files are covered.
7 unchanged lines in 4 files lost coverage.
Overall coverage increased (+0.09%) to 64.503%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/CacheClient.java
0
1
0.0%

sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/strategy/UsualStrategy.java
1
3
33.33%

Files with Coverage Reduction
New Missed Lines
%

sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/retry/RetryThread.java
1
53.66%

sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/BaseClient.java
1
68.57%

sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/cache/PathTree.java
2
83.82%

sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/Holder.java
3
77.05%

Totals

Change from base Build 4936:
0.09%

Covered Lines:
8170

Relevant Lines:
12666

💛  - Coveralls


Example is wrong

I copy-paste the example of the readme and it can not compile. The variable r (with his RemoteAddr() method) and the authFunc() does not exist. How should I use these package??

I have the same problem as you. I'm not sure the following demonstration is correct. but hope it is useful to you:
package main

import (
	"fmt"
	"github.com/netinternet/remoteaddr"
	"github.com/tsileo/defender"
	"log"
	"net/http"
	"time"
)

// authFunc the fake function for demonstration
func authFunc(r *http.Request) bool {
	return false
}

func root(w http.ResponseWriter, r *http.Request) {
	ip, port := remoteaddr.Parse().IP(r)
	fmt.Fprintf(w, "Your IP address is "+ip+" and dst port "+port)
	// Ban client for 1 hour if moe than 50 events per seconds are performed
	d := defender.New(1, 1*time.Second, 1*time.Hour)
	// Check if the client is already banned
	if client, ok := d.Client(r.RemoteAddr); ok && !client.Banned() {
		// Check auth
		authorized := authFunc(r)
		if authorized {
			// Do something
			println("authorized")
		}
		// Call `Inc` if the client failed
		if !authorized {
			if d.Inc(r.RemoteAddr) {
				// the client just got banned
				log.Printf("%s just got banned", r.RemoteAddr)
			}
			// returns a bad status
			w.WriteHeader(http.StatusForbidden)

		}
	}
}

func main() {

	http.HandleFunc("/", root)

	log.Fatal(http.ListenAndServe(":8081", nil))
}


tester: Update to the new Spark blueprint API

Must be merged concurrently with https://github.com/kelda/spark/pull/13


Map page popup issues

When logged in, there are several issues with the popup on the map result page.
To reproduce:

Run app locally and log in
Click on an item in the list
Go back to home page/list
Select another item in the list
Repeat steps 2 - 4

There are several issues that I'm seeing:

On the very first list selection I get a valid popup that automatically opens when the map page loads:

After that sometimes the popup at the bottom of the map window doesn't inflate?

Sometimes there's neither an icon or popup?

And sometimes there is an icon but no popup?

This should be fixed in latest release.
https://github.com/Esri/nearby-javascript/commit/b9c221fe08b85aa7f3552b5ba0655cf9523962c1
There is a slight delay in route transitions, where the map is still doing stuff to repopulate the items in the FeatureLayer. I can't quite catch the sequence of events, so I had to add a little debounce to opening popups in this mode. There is no delay when both map and list are shown though.

LGTM!


GH-212 Removed un-used artifacts

Removed InMemoryFunctionCatalog, InMemoryFunctionCatalogTests, ContextFunctionCatalogInitializer, ContextFunctionCatalogInitializerTests
Fixed spring.factories
Resolves #212

@dsyer basically look at #212
I don't think we need them. We certainly not using them, but I wanted to make sure I am not missing anything, so take a look.


Order tox whitelist externals.

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

3.0.0
GitHub release

Your semantic-release bot :package::rocket:


Releases Designs

@rstjames please make sure that the orignal file is dropped and housed under the Release folder >Design
Design Requirements:

imagine must be adjustable by anyone besides you

imagine must be the same use for the Blog annoucement header and the twitter push

All means that 1 image must be scalable and easibly adjustable by anyone in branding.
Questions, shoot!

3 designs have been added. 1 speaker, 2 speaker and 3 speakers
https://drive.google.com/open?id=1MLxGW3XsLKqKxSbnHFQgUurZ-WCveCAH

really like the option of multiple speakers card, great Ryan!
Feedback @rstjames

Replace Conferences to Event

Add git option below twitter

instead of the dark background, lets use the MP 3.0 and future releases as the backdrop of the design. (MP has 3 releases per year, using that design won't be a monthly hustle as releases as set in stone with formal dates that gives us plently of time to update to latest version)

lets make the MicroProfile and the mark larger using the entire upper section of the card.

@aeiras
instead of the dark background,
We can not do this or the text will not be visible. This is why the background is darker and follows the branding of MP
lets make the MicroProfile and the mark larger using the entire upper section of the card.
I will make it a little larger but we can not fill the space. In the file there is a live area this logo was stay in or it will be cut off when posted.

@aeiras Just realizing this is for releases. I confused this with another ticket for Sessions... I need to make new images.

already made a release image that will go out on monday. Because @cealsair already sent out an tweet today. Refer to this ticket https://github.com/eclipse/microprofile/releases/tag/3.0
This is the image being used:

@aeiras Folder has been updated with new files.

very cool!


Refactor the ManifoldSearchBar

I'm removing the searchbar component from the code because I don't want to worry about refactoring it when we don't need it yet. Once it is refactored, neat, and clean, we can add it back into the project.

Whoever works on this will need to look at the MyThings page code history before 5/2/18, because I am deleting a lot of relevant code.

I'm not sure we need this component. I am closing this issue until we actually feel a need for it.


does not work on nixos

dprint has been great for combining multiple formatters together, and i use the exec plugin to connect Zig to the mix in a personal project. however it seems the exec plugin breaks on NixOS, saying that a file is not found.
normally these mean something is up with unpatched binaries. though even with nix-ld, this issue seems to still happen. have yet to dig into the source code.
dprint.jsonc
{
  "plugins": [
    "https://plugins.dprint.dev/exec-0.5.0.json@8d9972eee71fa1590e04873540421f3eda7674d0f1aae3d7c788615e7b7413d0",
  ],
  "excludes": [
    "**/.zig-cache",
    "**/zig-out",
  ],
  "exec": {
    "cwd": "${configDir}",
    "commands": [
      {
        "command": "zig fmt --stdin",
        "exts": ["zig", "zon"],
      },
    ],
  },
}

hello.zig
fn main() {}

nix-shell -p dprint zig
$ dprint fmt
Error formatting /home/dave/code/hello/hello.zig. Message: Cannot start formatter process: No such file or directory (os error 2)
Had 1 error formatting.

this error is not really useful. what file was not found? though i think posix spawn can return file not found without properly conveying what the file is.

running strace, it seems that this is hit. is this an issue in dprint or the plugin? the config dir is never resolved. i can fix this by omitting the field

i believe i was simply out of date


Sheet breaking attributes line in Tidy5e

Currently, i found that adding a new skill is breaking the attributes line, as its adding space between them and not adding to the width that the character sheet opens in. Its something minor, but it can be a bother sometimes.
With the added skill:

Without the added skill:

If help you, I've solved it like this for the moment:
Tidy version: 0.8.41
custom version: 1.2.0
D&D5e version: 2.1.5
waiting for updates


Enhancement | Implement Subscriber on Profile page

dependent on completion of backend issue #100

Where ?

User visits a blog
User clicks on the Author
User sees the profile page of Author

What ?

User should be able Follow/ Unfollow the Author
User should be able to see how many followers the Author has
User should be able to see who the Author is following

Expectation:
Screenshot: (Desktop)

Screenshot: (Mobile)

Insights:

POST api/v1/subscriber/subscribe (userId, subscriberId => Subscribe Endpoint
POST api/v1/subscriber/unsubscribe (userId, subscriberId) => Unsubscribe Endpoint
GET api/v1/subscriber/:userId => List of subscribers for a user

Please attach screenshots / recordings to the PR

I would love to work on this feature. Here is how I will do this task:

I will create a button in the frontend/src/components/User/UserProfile.tsx file named Follow .
I will apply a useState hook to toggle between follow and unfollow .
Then I'll create a hook in hooks/user.ts to subscribe,unsubscribe, and fetch subscribers` from DB.
The authorId is already present as the props and the subscriberId can be fetched from localStorage .
After that, I'll integrate to the front end - all subscribers, follow, unfollow.

Sure, assigning it to you.

I have added the screenshots of my work. Let me know your thoughts.

Also, users cannot see the follow button on their profile page.


dragStopped event parameter is empty object

dragStopped gives me an empty object. I would expect it to behave like columnMoved and give us an object like this:
{
type: dragStopped,
column: Employee,
toIndex: 3
}
Also, it'd be great if dragStopped fired when a column was dragged off the grid, perhaps the object would have a "toIndex: -1". The columnVisible event doesn't work because a person could drag is visible/not visible a lot of times before finally dropping it. We need to be able to take action on the final drag stop.

+1

not possible - the drag events are coming from a drag service - it isn't aware that it is used for dragging columns and making them visible or not.
the columns fire their own events for moving, visible etc.
what you could do is have a listener for drag events in your application, so you have a flag in your application that makes you aware if a drag is underway or not, thus ignoring column events while the drag is underway.

Please provide an example that how did you do that?


UI Design for Admin Dashboard

When a user logs in, if they are an Administrator, we need to give them a different dashboard page.  This should include a few things:

Metrics.  It would be great to surface a few key metrics.  For example: how many users are in the system?  How many domains do they have?  How many certificates?  There are probably a few more, but we don't need a ton of this.  We also don't need complicated graphs or to make this into something huge.  Let's show a few numbers that have meaning.
List of Users.  It would be ideal for an admin to be able to see the list of all users.  This list could get long, so we may need to page it.
Become a User.  @dadolhay had a great suggestion: let an admin assume the role of a given user.  This is nice because we can then make various adjustments to a user's account/domains/certs without adding new UI. When an admin is logged in as another use, it would be good to alter the UI somehow (different colour? different nav bar? etc) so that it indicates it, and allow them to get back out to their own account.

There might be more we need to do, but this is likely a good start.

@Ririio, @Eakam1007, or @Myrfion does one of you want to take this?

@humphd  Does it make sense to make it on a single page or split it into several?

@Myrfion I think when you arrive as an admin, we should have some "cards" or something with a few high level metrics, and then maybe a paged table of users that you can become?  Not sure.  Probably one page is enough.  But I'm open to your suggestion.

How about for displaying we can have a button that switches from a card to a list? We can display a specific amount which the admin can cycle through, the quantity display depends on the state, obviously the list would be higher in count...

Completed in Figma


Feat/GitHub watcher

#13 items here should be completed before this PR is merged. There's some general things that need to be shaken out before this PR is good for merge, IMO


Labels for additional rounds

In both the new Portuguese https://github.com/clux/duel-names/blob/master/portuguese.js#L19 and Spanish translations I've added an extra line assuming it would work that way, however it doesn't...
Would that be possible?  I know most latin languages have a special name for "Round of 16" so the generic "Round of X" would start at 32 instead.

You're right. Not quite sure why, but I hardcoded the max indices. And in line 14.
You CAN get around it by having some extra logic in your element, but it would be nicer if the main file just looked at the size of the array passed in, and when near the limit, started delegating to these.

@clux So the weird thing is I did notice that and tried replacing the 4 with names.single.length and it does seem to work, but it breaks another test but I couldn't nail why exactly.

Hm. Want the last element to be the catch-all, maybe it's an off by one: .length - 1 ?

Fixed https://github.com/clux/duel-names/commit/9b8842940ca3a515939d4535a0a304a85e6ddf90

All landed in<EMAIL_ADDRESS>


License hyperlink on anaconda.org not working

This hyperlink on anaconda.org does not correctly jump to license_url set in meta.yaml:

This is similar to the issue we had with cudatoolkit ( https://github.com/conda-forge/cudatoolkit-feedstock/issues/2 ), but we fixed that one.
@chenghlee, would you be able to help us here? 🙂

@chenghlee To follow our observations here and elsewhere, my impression is that when uploading to anaconda.org:

If the license name is not prefixed by LicenseRef-, it uses license_url to generate the hyperlink
Otherwise, it forces to search the license name on OSI

And this setting is only run the first time a package is uploaded; subsequent changes/uploads do not re-trigger this check.

IIRC that use to be the case, but it was fixed to update with new packages. So there may be a different issue going on here (though feel free to correct me Cheng 🙂)

The license url redirects work now, but point to wrong places, will follow up in #46.


Setting "Automatically remove trailing spaces when saving files" cause "Final newline missing" message

From<EMAIL_ADDRESS>on 2014-11-18T16:47:45Z
Option (Preferences -> Editor -> Advanced settings:) "Automatically remove trailing spaces when saving files" removes also last line in python script.
This cause that static code analyse rise issue [C0304] Final newline missing.
I use Spyder 2.4.0dev (b0c125b8b453:4272) on Windows 7 64bit.
Original issue: http://code.google.com/p/spyderlib/issues/detail?id=2056

From ccordoba12 on 2015-02-01T07:16:09Z
I can't reproduce this error. Setting "Automatically remove trailing spaces when saving files" does not remove the last line.
Could you give us an example file that is causing you this problem?
Also please tell us what your Spyder version is.
Labels: -MS-v2.3.3 MS-v2.3.4

From ccordoba12 on 2014-11-18T14:23:23Z
Thanks for reporting and for your interest in fixing Spyder. I'll fix this problem in of our next releases.
Labels: MS-v2.3.3 Cat-Editor

From<EMAIL_ADDRESS>on 2015-02-01T09:10:22Z
I tested current revision that it works as expected.
So this was somehow fixed in meantime. You can close this issue.


[LLVM] FixedVectorType is only available in v120, not v110.

Fix for TVM build errors with rocm-3.7 and llvm 11.0,
/tvm/src/target/llvm/codegen_x86_64.cc: In member function 'llvm::Value* tvm::codegen::CodeGenX86_64::CallVectorIntrin(llvm::Intrinsic::ID, size_t, llvm::Type*, const std::vector<llvm::Value*, std::allocator<llvm::Value*> >&)':
/home/csullivan/projects/incubator-tvm/src/target/llvm/codegen_x86_64.cc:144:30: error: 'llvm::FixedVectorType' has not been declared
     llvm::Type* type = llvm::FixedVectorType::get(result_ty->getScalarType(), intrin_lanes);```

cc @mbrookhart @mvermeulen

It appears there is a difference between llvm 11.0 and the rocm llvm-project/rocm-3.7.0,
LLVM 11.0.0 (git@github.com:RadeonOpenCompute/llvm-project.git ee4e4ebbadcc8ea14ce99e34ed31ab31e94827ac. This change is required in the rocm build configuration, but fails here. Closing for now as it appears this change isn't needed upstream.

Got it...that sounds interesting. Thanks Chris for digging in the issue


[1.10.2] UUID uniqueness in spawned entities is not enforced.

Vanilla behaviour for 1.9+ enforces that UUIDs in the world are unique.  It does this by checking canAddEntity before spawning the entity.
Without this, if there is a case where a player disconnects badly (say due to bad internet connections/packet corruption issues), then there can be issues where the old player is not properly removed from the mappings, which then causes issues with anything that needs to look up the player by UUID.
I am fairly certain that this is the cause of some players using Pokecube will suddenly be unable to control their pokemobs after they DC due to network issues.  It has also been noticed as ocurring on a Pixelmon server as well, so it is not limited to Pokecube, and both of those mods have completely different ownership systems, the only similarity being that they find the player based on uuid lookups.
These are the places where I noticed sponge adds entities without checking this condition, I am not sure of there are any more:
https://github.com/SpongePowered/SpongeCommon/blob/bleeding/src/main/java/org/spongepowered/common/mixin/core/world/MixinWorldServer.java#L981-L984
https://github.com/SpongePowered/SpongeCommon/blob/bleeding/src/main/java/org/spongepowered/common/mixin/core/world/MixinWorldServer.java#L938-L952
Vanilla checks it in WorldServer.spawnEntityInWorld(Entity entityIn) and WorldServer.loadEntities(Collection entityCollection) and canAddEntity forceably removes any stale player entities if the player tries to log back in, and they are still in the world.  For other entities, it denies the spawn of the duplicate.

not sure if this effects mobs or not but my console is being spammed with "[10:50:27] [Server thread/WARN]: Keeping entity Cow that already exists with UUID 96733171-8d39-4cf4-ae52-f164790082d4"
it does this for cows chickens sheep etc. And goes on endlessly even after attempting to kill the mob with commands

It would be nice to have an option to remove duplicate entities on the server. That message can get a bit spammy after a while.


update where [in] condition parse error

sql

UPDATE t1 SET change_by = '1' WHERE id = '3' AND status IN (1,2,3)

when i run this test case , code retrun at WHERE: unknown operator

Hey! Thanks for raising this issue. The problem is that this parser does not support the IN clause.
This isn't actually meant to be a complete SQL parser. It's part of a blog meant to teach people about LL1 parsers.
Here's the blog:
https://marianogappa.github.io/software/2019/06/05/lets-build-a-sql-parser-in-go/
However, every once in a while someone actually uses it for something, so I'm still happy to merge PRs, unless they complicate the code too much.
For now, I'll close this. Thanks anyway, though!


Golden Globe example config contains "name_format: Emmys <<key_name>> Winners"

What is the improvement or update to the Wiki you wish to see?
Revised example config
libraries:
Movies:
collection_files:
- default: golden
template_variables:
collection_mode: show_items
collection_order: alpha
radarr_add_missing: true
name_format: Golden Globe <<key_name>> Winners
data:
starting: latest-10
ending: latest
Does the docs page already exist? Please link to it.
https://kometa.wiki/en/latest/defaults/award/golden/

this should have been submitted as a PR to nightly...
i submitted as a PR

Fixed in #2322


Docs.MS CI Updates for Azure.Template

CI Update for release of Azure.Template

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

File
Status
Preview URL
Details

bundlepackages/azure-dotnet-preview.csv
:white_check_mark:Succeeded

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


replaced all_topics atom in on_topic_unsubscribed hook with actual subscriptions list

Proposed Changes
Right now on_topic_unsubscribed hook either passes a list of topics or an atom all_topics, ie the signature is
on_topic_unsubscribed(SubscriberId    :: subscriber_id(), MaybeTopics     :: all_topics | [topic()])

all_topics is kind of lazy
An assumption that you can query these topics from vmq_subscriber_db is implicit. This non-obvious feature could be broken while moving code around, since topics aren't explicitly passed with the hook.

This should improve this hook API by unifying both cases into
on_topic_unsubscribed(SubscriberId    :: subscriber_id(), Topics :: [topic()])
which looks clearer in my opinion.
I marked this is as breaking change since technically it probably is.
But I think it won't actually break something as of now because:

the left case is probably covering removed all_topics case fine
the hook is very new and i suppose isn't widespread

Types of Changes
What types of changes does your code introduce to this project?
Put an x in the boxes that apply

[ ] Bugfix (non-breaking change which fixes issue #XXXX)
[ ] New feature (non-breaking change which adds functionality)
[X] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation (correction or otherwise)
[X] Cosmetics (whitespace, styles...)
[ ] DevOps (Build scripts, pipelines...)

Checklist
Put an x in the boxes that apply. You can also fill these out after creating
the PR. If you're unsure about any of them, don't hesitate to ask on the
mailing list. We're here to help! This is simply a reminder of what we are
going to look for before merging your code.

[X] I have read the CODE_OF_CONDUCT.md document
[X] All tests pass locally with my changes
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] I have added necessary documentation (if needed)
[ ] Any dependent changes have been merged and published in related repositories
[ ] I have updated changelog (At the bottom of the release version)
[X] I have squashed all my commits into one before merging

@khodzha I suppose it makes sense. THB have never had a use for on_topic_unsubscribed so far.
The only consideration here is that we're hitting the subscriber store for every subscriber, in "massive situations", like massive forceful disconnects etc.


typo unit2

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.


Pin rspec to 2.x to avoid bug with 1.8.7

I think we should try to pin rspec-core to 3.1.7 instead.


add area calculator

Description 📜
area calculator is created for telling the area of rectangle,circle and square.
#265

Checklist ✅

[x ] I follow Contributing Guidelines & Code of conduct of this project.
[x ] I have performed a self-review of my own code or work.
[ x] I have commented my code, particularly in hard-to-understand areas.
[ x] My changes generates no new warnings.
[ x] I'm GSSOC'22 contributor

Screenshot of project

@mansi-garg-12  I add README.md file and screenshot of your project.

add 13 geometry shapes with their description and calculator of their area

@mansi-garg-12  now check it

I add all calculator in single html file.

@mansi-garg-12  is it ok now?

@Ashish4321-hub  is there any updates ?

@vasu-1  i add all required things in html ,js ,css file


EmojiconEditText Laggy when pressed and holded "Return" button on Soft KeyBoard to clean up the text of EmojiconEditText

EmojiconEditText was very very laggy when pressed and holded "Return" button on Soft KeyBoard to clean up the text of EmojiconEditText.
Test on Nexus 5 5.1 & 6.0.1

And the device hanged and No response.


⚠ Processors has degraded performance

In 96afd21, Processors ($STATUS_URL) experienced degraded performance:

HTTP code: 200
Response time: 73 ms

Resolved: Processors performance has improved in 3431945.


Directly base Docker image off of dandi-archive image

As discussed in Slack.

@satra gave thumbs ups, I didn't analyze the situation, but will just trust @jwodder on this ;) Let's proceed


session.snap sometimes takes my own camera photo instead of the caller

As far as I understood phone.snap is used to take a snapshot of local video cam
and session.snap is used to take a snapshot of other callers video, but sometimes session.snap takes my local video pic.

Nice!


Intro for "Managing large files" category

What article on docs.github.com is affected?
The "Managing large files" category of articles.
What part(s) of the article would you like to see updated?
Write intros to help orient users to the content in the category. Intros should be one sentence long. For more information on writing intros, see:

Information about categories in the GitHub Docs content model
Information about writing intros in the GitHub docs content model
Information about the intro frontmatter property in the GitHub Docs content directory README
Make sure your intro is general enough to cover the content in each version of the page (use the version picker in the upper-right corner of the page to see what’s included on the page for different versions of GitHub)

Additional information
This issue is for the Campus Experts + Docs program and is not available for contributors outside the program to work on.

Hello 👋
Can i take this one ?


fix #1477 Note exception to chaining find calls

Make it clear that when chaining find calls, you can only use DOM selectors.

What kind of change does this PR introduce? (check at least one)

[ ] Bugfix
[ ] Feature
[ ] Code style update
[ ] Refactor
[ ] Build-related changes
[x] Other, please describe: Docs update

Does this PR introduce a breaking change? (check one)

[ ] Yes
[x] No

If yes, please describe the impact and migration path for existing applications:
The PR fulfills these requirements:

[x] It's submitted to the dev branch.
[ ] When resolving a specific issue, it's referenced in the PR's title (e.g. fix #xxx[,#xxx], where "xxx" is the issue number)
[x] All tests are passing: https://github.com/vuejs/vue-test-utils/blob/dev/.github/CONTRIBUTING.md#development-setup
[-] New/updated tests are included

If adding a new feature, the PR's description includes:

[-] A convincing reason for adding this feature (to avoid wasting your time, it's best to open a suggestion issue first and wait for approval before working on it)

Other information:

Nice. Thank you. Can you run the formatter for the docs? yarn format

Whoops! My bad, thanks @JessicaSachs formatted and pushed.

Why is this the case? I would have thought find returns a wrapper which should let you use find with any kind of selector.

I've used multiple find calls in the past to split things up in my testing:
describe('SomeComponent.vue', () => {
  let button;
  beforeEach(() => {
    button = wrapper.find('button-stub');
  });

  it('Should have an icon', () => {
    const icon = button.find('icon-stub');
    expect(icon.exists()).to.be.true;
  });
});

@Stoom good point. Would be good to figure out why this is the case and fix.


Add multi-progress bar

Add progress bar
The vertical progress bar is not enough to show progress such as download progress, a horizonal progress bar is essential.

Interactive node can display progress nar now


About

URL suggestion: about.losctf-...
Inspired by Hackover CTF 2016:

do we need this in addition to the FAQ? https://fuzzy.land/FAQ


issue #760 add mising enums

added missing enums for Annotation Info File, Structural Annotation Stats Json, Error Corrected Reads, Assembly Info File

@aclum Added mappings file and fixed pattern for contigs file.

Done

@turbomam or @aclum any more issues we need to address before we merge?

Yes. I'm applying some syntactic fixes and simplifications now. Will have a report in a few minutes.

Questions:

Can you confirm that you want the software published at this site to be labelled as Genemark, not GeneMark?
Can you confirm that the filenames for Crisprt Terms files should contain the string 'crisprs', not 'crisprt'?

Steps I took

Backmerge of main and local testing. PR becomes larger, but the only file we have to monitor is still just nmdc.yaml
Fixed at least one indentation error, which was causing the PR check failure
General improvements to spacing around and within each permissible value block
Global spellcheck
Terser notation for permissible values, as suggested by @sujaypatil96

no text line
compact, one-line-per-annotation format

Future work (I will make issues):

what notation are you using for the file_name_patterns? I get the feeling that '[GOLD-AP]_cath_funfam.gff' isn't meant to be taken either literally or as a regular expression. If '[GOLD-AP]' is meant to be symbolic for a variable portion of the file name, then we should reflect that with either named capture groups, or by renaming the annotation to something like file_name_abstraction or file_name_formula, making it clear that they are not regular expression patterns.
the description annotations should add understanding beyond the permissible value name. There are several descriptions that almost exactly paraphrase the permissible value name. I'll make a report.

@turbomam I can confirm Crisprt --> Crisprs, and the conversation I had with Shane was Genmark --> Genemark, not sure about GeneMark.

@turbomam I can confirm Crisprt --> Crisprs, and the conversation I had with Shane was Genmark --> Genemark, not sure about GeneMark.

Ok. The publisher calls it GeneMark, but I will leave it as Genemark based on your team discussions.
Sorry, that last PR of mine really was huge and makes it hard to track changes. If you can tell me how to remove the irrelevant stuff, I'm glad to do that.

GeneMark would be more proper, im not sure if we enforce or try to enforce proper case for all software tool names in the schema.

closed in favor of

#778


feat(dsproof): Created v5 GET dsproof endpoint

PR related to this trello task --> https://trello.com/c/DTSuoWz3

:tada: This PR is included in version 1.41.0 :tada:
Your semantic-release bot :package::rocket:


Create factorial.c

Added C program that finds factorial of a number

raise pr from october 1 else its invalid


Fix for issue #22

Build and start script for windows added.
What does this PR do?
With this PR you can build JEasyCrypto components in windows environment and start server and client.
Where should the reviewer start?
Check *.cmd files
How should this be manually tested?

run build.cmd on JEasyCrypto folder it shall run all build on all subfolders.
run JEasyCrypto\JEasyCryptoServer\start.cmd
run EasyCrypto\JEasyCryptoClient\start.cmd

Any background context you want to provide?
Console probably will not start though...
What are the relevant tickets?
(Link to issues, related PR, etc.)
Closes #22
Questions
Anyone has succeeded in running the console on windows?

Can you please add a more descriptive tile?


Auto fill of the snapshot name when creating a snapshot for managed disks

v 1.10.0  20190911.8
Windows 10
It would be much nicer if we can auto fill the base of the snapshot name in the Create Snapshot dialog.  When the disk name is really long, it's troublesome to type in the whole name from scratch.

Fix merged into master


WIP: type transforming serializers

Instead of returning a tuple with the serialized type we could also add a kwarg to the serialize decorator.
@serialize(to=str)
def serialize_datetime(dt: datetime):
    return str(dt)


AttributeError: type object 'YoutubeLoader' has no attribute 'from_youtube_url'

I am trying to load load video and came across below issue.
I am using langchain version 0.0.121

I got that as well. I had success with using from_youtube_channel and just using the url of the individual video.

i have same issue unfortunately - unable to overcome it

I was able to get it that way. using the video id.
from langchain.document_loaders import YoutubeLoader
import sys

def main(vid: str):
    loader = YoutubeLoader(vid, True)
    docs = loader.load()
    print(docs)

if __name__ == '__main__':
    sys.exit(main("_w0Ikk4JY7U"))

Do you have problems later on e.g. with splitters when you use YouTubeLoader instead of using YouTubeLoader.from_youtube_api?

Tried it today, got the same issue

I got that as well. I had success with using from_youtube_channel and just using the url of the individual video.

This worked for me as well, thanks!


boot: zephyr: fix MCUboot linking after DT/Kconfig changes

Correctly set the KConfig options:

FLASH_LOAD_OFFSET
FLASH_LOAD_SIZE

to ensure that MCUboot is linked into the correct partition.
I have another commit to push to Zephyr, to fix an issue specific to nrf52840_pca10059.
@nvlsianpu please have a look.

@lemrey - I want to fix this more common in zephyr and mcuboot - will send pair of patch.

I'm closing in favor #447


api banned

API response {"message":"","spam":true,"status":"fail"}

Please provide some more information.
If it is indeed the result of a ban, it's part of the "risk of use" and is mentioned in the main Readme.md file.

API response {"message":"","spam":true,"status":"fail"}

Can you provide some screenshoot please? And after how many iteration this happens?

Sorry for bad phrasing, I was only muted from the graphs API a period of time. I think the main reason was running the program on multiple tabs (like 2 or 3) at once.

Sorry for bad phrasing, I was only muted from the graphs API a period of time. I think the main reason was running the program on multiple tabs (like 2 or 3) at once.

Yes its probably that. That why is implemented a timeout every few iterations to prevent this. If this only happens when using multiple tabs we could close the issue.


Improve font handling

I think that the font selection for Text is not optimal. The current way to select a font is with context.select_font_face of Cairo.
According to the documentation of this (https://pycairo.readthedocs.io/en/latest/reference/context.html#cairo.Context.select_font_face), it's rudimental and not adapted  to our use :

Note: The select_font_face() function call is part of what the cairo designers call the “toy” text API. It is convenient for short demos and simple programs, but it is not expected to be adequate for serious text-using applications.

It is expected that most applications will need to use a more comprehensive font handling and text layout library, (for example, pango), in conjunction with cairo.

Some ideas would be to :

Allow the user to select a custom font file (no idea if this is possible, but it seems logical that it is)
Get the list of all the fonts available.
Throw an error if the font does not exist. (It's not possible with context.select_font_face :

Cairo provides no operation to list available family names on the system

I'm not an expert on all this stuff, so if someone could take a look at this.

Thanks for catching that. I am not an expert in font stuff, but my understanding it's that it's generally tricky.
Seeing that there are people working on deprecating Cairo, I would suggest we either (a) leave this as it is, or (b) look into the pango library, which is meant to be used alongside cairo anyways.
@eulertour your thoughts?

I actually don't know anything about this either. The Text class was contributed out of nowhere and just worked out of the box, so we'll have to either find that person or come up with a solution on our own.

Text was contributed by @xy-23 afaik, and they seem to be offline for now, so we'll probably have to figure something out ourselves.

Seeing that there are people working on deprecating Cairo,

In this case, I am partial to letting it as it is and wait for improvement as Text completely uses Cairo.
Btw, is there A branch of this work on deprecating Cairo ? An issue ?

I believe Cairo will be deprecated once we move to OpenGL. I think @eulertour is working on this?

From the discussion above, this seems like a #wontfix.


add create by yaml method - [closed]

In GitLab by @sokril on May 18, 2018, 24:48
Merges updatek8s18 -> updatek8s18

In GitLab by @wknet123 on Nov 13, 2019, 10:56
closed


Added a 'past' key to events.yml

This allows us to filter events from the homepage that have already happened.
Ideally, it'd just have it figure it out with JS, but the dates aren't ISO so it's a bit of a hassle to fix this right now.

Would moving to fully qualified ISO dates not be a cleaner solution, and make the information more usable down the line?

I agree with @AksanDotDev, ISO-8601 dates is definitely a cleaner and better solution long-term.
Also I think we should add a section for past events in this season so that events aren’t immediately gone forever as soon as the weekend is up. Thoughts?

Yeah, ISO dates are the better solution.
https://hack.athon.uk/events/list/ is meant to be the full list of events, but adding something like:
## Past Events

<div class="hack-list">
{% for season in extra.hackathon_seasons %}
{% if season.past == False %}

    {% for hackathon in season.hackathons %}
        {% if hackathon.past == True %}
            {% include 'events/card.md' %}
        {% endif %}
    {% endfor %}

{% endif %}
{% endfor %}

To the homepage would show the events that just happened this season.

Yep – but that would still require manual updating of the event rather than having it automatically hide (I’m aware this is what we currently do). How difficult would it be to have it dynamically show/hide client-side?

That was what i mentioned in the initial comment.
Basically, need to convert the dates to ISO then add a little bit of JS to selectively hide events.

Closing the stale PR.
What i'm going to look at doing is separating the events data into a new repository, and setup a scheduled action to run weekly or so to trigger a rebuild.

Closing the stale PR.
What i'm going to look at doing is separating the events data into a new repository, and setup a scheduled action to run weekly or so to trigger a rebuild.


Added support for Ubuntu 22.04 Jammy Jellyfish

Changed the default ubuntu release to 22.04 (jammy)
Added option --focal for 20.04 (focal)
Implemented extracting boot partitions from existing cd image
Changed xorriso call for image creation to conform to 22.04 layout

Signed-off-by: Nis Wechselberg<EMAIL_ADDRESS>

Hi,
This is failing for me with the following error. Can you re-check?
[2022-06-15 00:46:57] 📦 Repackaging extracted files into an ISO image...
xorriso 1.4.8 : RockRidge filesystem manipulator, libburnia project.

Drive current: -outdev 'stdio:/root/cidata/autoinstall-iso-generator/ubuntu-jammy-autoinstall-2022-06-15.iso'
Media current: stdio file, overwriteable
Media status : is blank
Media summary: 0 sessions, 0 data blocks, 0 data, 20.2g free
xorriso : WARNING : -volid text does not comply to ISO 9660 / ECMA 119 rules
xorriso : FAILURE : -append_partition: Partition type '28732ac11ff8d211ba4b00a0c93ec93b' is out of range (0x00...0xff)
xorriso : aborting : -abort_on 'FAILURE' encountered 'FAILURE'
[2022-06-15 00:46:57] 🚽 Deleted temporary working directory /tmp/tmp.ZiI7cxVgQb

@smcoder0707 what is your full command line ?
Also does it also fail with the released code (not the code in this branch) ?

@smcoder0707 what is your full command line ?
Also does it also fail with the released code (not the code in this branch) ?

Jammy Jellyfish 22.04 fails
bash /root/cidata/autoinstall-iso-generator/ubuntu-autoinstall-generator.sh ' ' --all-in-one --no-md5 --user-data /root/cidata/output//seed-data//user-data --meta-data /root/cidata/output//seed-data//meta-data --destination /root/cidata/output//ubuntu-autoinstall-2022-06-15.iso

Output

[2022-06-15 00:46:57] 📦 Repackaging extracted files into an ISO image...
xorriso 1.4.8 : RockRidge filesystem manipulator, libburnia project.

Drive current: -outdev 'stdio:/root/cidata/autoinstall-iso-generator/ubuntu-jammy-autoinstall-2022-06-15.iso'
Media current: stdio file, overwriteable
Media status : is blank
Media summary: 0 sessions, 0 data blocks, 0 data, 20.2g free
xorriso : WARNING : -volid text does not comply to ISO 9660 / ECMA 119 rules
xorriso : FAILURE : -append_partition: Partition type '28732ac11ff8d211ba4b00a0c93ec93b' is out of range (0x00...0xff)
xorriso : aborting : -abort_on 'FAILURE' encountered 'FAILURE'
[2022-06-15 00:46:57] 🚽 Deleted temporary working directory /tmp/tmp.ZiI7cxVgQb

Focal 20.04 works fine
bash /root/cidata/autoinstall-iso-generator/ubuntu-autoinstall-generator.sh  --focal --all-in-one --no-md5 --user-data /root/cidata/output//seed-data//user-data --meta-data /root/cidata/output//seed-data//meta-data --destination /root/cidata/output//ubuntu-autoinstall-2022-06-15.iso

Output

[2022-06-15 01:13:15] 📦 Repackaging extracted files into an ISO image...
xorriso 1.4.8 : RockRidge filesystem manipulator, libburnia project.

xorriso : NOTE : Local character set is now assumed as: 'utf-8'
Drive current: -outdev 'stdio:/root/cidata/autoinstall-iso-generator/ubuntu-focal-autoinstall-2022-06-15.iso'
Media current: stdio file, overwriteable
Media status : is blank
Media summary: 0 sessions, 0 data blocks, 0 data, 19.0g free
xorriso : WARNING : -volid text does not comply to ISO 9660 / ECMA 119 rules
Added to ISO image: directory '/'='/tmp/tmp.DJ8GSmIcuU'
xorriso : UPDATE : 747 files added in 1 seconds
xorriso : UPDATE : 747 files added in 1 seconds
xorriso : NOTE : Copying to System Area: 432 bytes from file '/usr/lib/ISOLINUX/isohdpfx.bin'
libisofs: WARNING : Cannot add /dists/stable to Joliet tree. Symlinks can only be added to a Rock Ridge tree.
libisofs: WARNING : Cannot add /dists/unstable to Joliet tree. Symlinks can only be added to a Rock Ridge tree.
libisofs: WARNING : Cannot add /ubuntu to Joliet tree. Symlinks can only be added to a Rock Ridge tree.
libisofs: NOTE : Automatically adjusted MBR geometry to 1018/82/32
libisofs: NOTE : Aligned image size to cylinder size by 208 blocks
xorriso : UPDATE :  0.43% done
xorriso : UPDATE :  6.49% done
xorriso : UPDATE :  17.93% done
xorriso : UPDATE :  29.15% done, estimate finish Wed Jun 15 01:13:25 2022
xorriso : UPDATE :  40.25% done, estimate finish Wed Jun 15 01:13:25 2022
xorriso : UPDATE :  50.82% done, estimate finish Wed Jun 15 01:13:25 2022
xorriso : UPDATE :  60.53% done, estimate finish Wed Jun 15 01:13:25 2022
xorriso : UPDATE :  69.30% done, estimate finish Wed Jun 15 01:13:25 2022
xorriso : UPDATE :  79.22% done, estimate finish Wed Jun 15 01:13:25 2022
xorriso : UPDATE :  88.86% done, estimate finish Wed Jun 15 01:13:26 2022
xorriso : UPDATE :  98.58% done
ISO image produced: 667808 sectors
Written to medium : 667808 sectors at LBA 0
Writing to 'stdio:/root/cidata/autoinstall-iso-generator/ubuntu-focal-autoinstall-2022-06-15.iso' completed successfully.

[2022-06-15 01:13:26] 👍 Repackaged into /root/cidata/autoinstall-iso-generator/ubuntu-focal-autoinstall-2022-06-15.iso
[2022-06-15 01:13:26] ✅ Completed.
[2022-06-15 01:13:26] 🚽 Deleted temporary working directory /tmp/tmp.DJ8GSmIcuU

Also does it also fail with the released code (not the code in this branch) ?

Not sure what you mean but the script from the original repo worked perfectly. Then I applied this patch from your pull request to modify the main script and now it fails only for ubuntu 22.04.
Hope this information is sufficient.

Have you tried to use release version (parameter -r)? First glance looks like there might be something changed in the source iso that changed partition GUIDs. EDIT: Just rechecked with the daily iso and it worked fine out of the box ... Not sure what is happening

Yes, just tried release version as well and it failed with similar/same error. The exact error is
xorriso : FAILURE : -append_partition: Partition type '28732ac11ff8d211ba4b00a0c93ec93b' is out of range (0x00...0xff)
I'm using "Ubuntu 18.04.6 LTS" within a HyperV VM if that matters. I've just cloned your code from here and did a fresh test. But It's all error.

Alright, turns out my VM has some problem. Not sure what is the problem but I tried another freshly installed VM and that worked perfectly.
Although --destination does not seem to be working....Can you verify that?

Just tried it out and was able to build an iso with, but unfortunately it looks like the ISO doesn't boot on a uefi enabled motherboard?

Installing generated iso in kvm worked for me.

Looks good. I'm going to look to merge this with my -x function for adding additional files into the custom ISO. Not sure if that would be easier done by bringing this over to my fork or you adding to your fork?
See https://github.com/steve-daedilus/ubuntu-autoinstall-generator

Not sure how to go ahead. I kind of gave up on this PR and switched to using pxeless.

Thanks for this @eNBeWe
It worked with 24.04 desktop (changing some parameters) too. :)

Thanks for this @eNBeWe
It worked with 24.04 desktop (changing some parameters) too. :)

Could you share the working bits for 24.04? I'll edit to match server then instead of desktop.

I basically replace the focal parts with 24.04 codenames and version numbers.
Since this project seems dead anyway, I won't bother creating a PR.
Sorry, mate. If I find it (not where it is stored right now), I will put it here.

I previously forked and added an extra files switch. If there's some desire to try and update to newer versions with optional support based on a switch or other, I can take a look. I'm fairly sure I did something similar for a work related effort at a former employer not long after my extra files fork.
Feel free to hit me up at https://github.com/steve-daedilus/ubuntu-autoinstall-generator.


[CS2103T-W14-2] BudgetBaby

BudgetBaby is a desktop app for setting monthly budgets and tracking expenses.  It is optimized for use via a Command Line Interface (CLI) so that entering and editing financial records and budgets can be done faster by typing in commands while still having the benefits of a Graphical User Interface (GUI).

Codecov Report

Merging #35 (7d6fef7) into master (c36220c) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #35   +/-   ##
=========================================
  Coverage     72.15%   72.15%
  Complexity      399      399
=========================================
  Files            70       70
  Lines          1232     1232
  Branches        125      125
=========================================
  Hits            889      889
  Misses          311      311
  Partials         32       32

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 c36220c...7d6fef7. Read the comment docs.


Document redis providers on heroku, and recommend adding plan with persistence

Comparing https://addons.heroku.com/rediscloud and https://addons.heroku.com/redistogo, neither of them backups. Users should be advised to add a pay plan if they are concerned about keeping the data kept in hubot's brain around.
cc https://github.com/github/hubot/pull/689

Is this still the case? checking https://redislabs.com/products/redis-cloud/compare/ I have a doubt.

I looked at https://addons.heroku.com/rediscloud and https://addons.heroku.com/redistogo and both have 'backups' grayed out at their free tier. Paid tiers above it don't gray it out.


Training my own dataset

Hello, I think this is a nice work.
I have a question, can this Tinybenchmark use my own data set to detect the target I need?
For example, I want to detect different types of cars (there are probably 4 types of targets), but they are all very small targets.
What do I need to change? Can you give me some suggestions? Thank you!

yes, TinyBenchmark can use on your own dataset.

your need to turn your dataset annotation format to coco-style and add to path_catalog.py.
if you need cut image as input while evaluation, make it corner dataset anotation, otherwise set TEST.MERGE_RESULTS as False and TEST.MERGE_GT_FILE:"" in yaml config file.
the main adjustments are same as common detection setting such as anchor setting, lr policy.
if you want pretrain on COCO with scale match, you need open Scale Match on config file.

maybe we need to release a tutorials for that in future.

Thank you for your reply. I'll have a try.
I'm looking forward to your update.

@yinglang hi，how can i pretrain on COCO with scale match and get the COCO pretrained weights on my own dataset？Can you give me some suggestions? Thank you!

@yinglang hi，how can i pretrain on COCO with scale match and get the COCO pretrained weights on my own dataset？Can you give me some suggestions? Thank you!

Have you trained your data successfully? I'd like to try it

we have add a simple steps for train with MSM/SM on your own dataset here

Thanks for your update, by the way, I wonder how to generate the corresponding json file (such as SCALE_MATCH.SOURCE_ANNO_FILE and SCALE_MATCH.TARGET_ANNO_FILE), according to my own dataset ? @yinglang

Thanks for your update, by the way, I wonder how to generate the corresponding json file (such as SCALE_MATCH.SOURCE_ANNO_FILE and SCALE_MATCH.TARGET_ANNO_FILE), according to my own dataset ? @yinglang


Add :by_module option to :types to allow passing in the embedded_struct in the type_field.

This PR is based on the idea and work from https://github.com/pzingg/polymorphic_embed/tree/type-module-fun referenced in https://github.com/mathieuprog/polymorphic_embed/pull/18
To make for the smallest change, I have only added the :by_module option. Please let me know if I can make this better or if I have missed anything. The tests that I added pass, but I am not sure whether I might be overlooking something.

Wow. I need some time though, can you depend on your branch for now?
Can you explain your use case please?

Hi, the use case we have is a centralised way of capturing notes. This is used by different dashboards for different industries. Each industry has different extra fields to capture. So different contexts want to capture different nested structures. The Notes don't know about the different dashboards so I can't pass the keyword list.
I can use my fork and see how it pans out. If there are any specific short comings please let me know and I can learn how to fix those.

I haven't tried it. Just added the tests here.
We use the current version with hard-coded types.
I can implement it and provide feedback by Wednesday next week. Maybe sooner if I have something to report.
Thanks for the quick response!

@mathieuprog I added tests for most of the remaining cases. In doing the tests I realise my previous attempt did not quite have everything that is needed.
I tried in our project but we're using Surface and at this point it feels like a bridge too far getting the changesets to work properly with Surface and Phoenix forms. One problem is that when inputs_for needs to get the fields from the polymorphic embed, with the :by_module option the information is simply not there.
I do not have the time to dive deep enough into the forms to get that working. In our case we can build the form without needing inputs_for since the parent record is mostly a container for some metadata around our notes.
I will leave this here in case someone else has the opportunity to delve into the changesets and forms and inputs.