Proposal: Grouping support in ComboBox

The WinUI Team has opened a Spec for this feature

Proposal: Grouping support in ComboBox
Summary

Grouping items in ComboBox is currently not supported. It was in WPF, and worked great. It's a gap we can bridge and to make it easier to port over WPF LOB apps to UWP.

Rationale

Support for item grouping would make it easier to port over WPF LOB apps to UWP.

Functional Requirements

#
Feature
Priority

1
ComboBox items can be grouped together in labeled categories.
Must

2
Optional setting allows groups to be collapsed.
Could

3
Multi-level groups.
Won't

Important Notes

Open Questions

This proposal compliments the one I submitted for adding multi-select functionality to ComboBox. Should grouping support be implemented, group select/de-select would be a great addition to multi-select functionality for ComboBox.

@niels9001, I have updated this proposal with a Rationale and Functional Requirements section.

There should be styles and properties to allow the templating and styling of the Combobox Group Headings

@mdtauk I added your comment as Functional Requirement #2!

I've had this XAML present but commented out for six years now since uncommenting it causes the app to crash:
<!-- TODO: Uncomment below once grouping is possible in ComboBox -->
<!--<ComboBox.GroupStyle>
	<GroupStyle>
		<GroupStyle.HeaderTemplate>
			<DataTemplate>
				<TextBlock Text="{Binding}"/>
			</DataTemplate>
		</GroupStyle.HeaderTemplate>
	</GroupStyle>
</ComboBox.GroupStyle>-->

@ChainReactive Did you ever implement a workaround in that time? I'd be eager to know if there's any pros or cons from existing 3rd party solutions you'd like us to be aware of!

<!-- TODO: Uncomment below once grouping is possible in ComboBox -->
<!--<ComboBox.GroupStyle>
	<GroupStyle>
		<GroupStyle.HeaderTemplate>
			<DataTemplate>
				<TextBlock Text="{Binding}"/>
			</DataTemplate>
		</GroupStyle.HeaderTemplate>
	</GroupStyle>
</ComboBox.GroupStyle>-->

Nope but users have complained about the lack of grouping.

Grouping in combo box is a standard part of the Ribbon UI as well.

@niels9001, @ChainReactive, and @mdtauk, thank you all for getting this feature started!
It has been approved and I have opened up a spec for it here.
We would be eager to see you all involved in our spec writing process also where you can start telling us more specifics about how you would like this feature to be implemented. It may be several months before we are able to fully commit PM & Dev resources to this feature, but your early engagement will still help jumpstart this development. Please let me know if you have any questions. I have added our default spec template and will jump into contribute when I can!
Please note that Multi-Select Functionality for ComboBox has also been approved and these developments will inform and impact each other.

I'll be taking this again to pitch to refine the scope once more. @niels9001, @ChainReactive, and @mdtauk, were any of you needing collapsible or multi-tiered groups for a published or in production app? Or are these two features properly labeled as a "could"?

I personally would be fine with a simple implementation, that lets me group certain items. And a styleable groupheader.
Collapsing and multi-tiered groups would be a nice-to-have!

Re-pitched and marking "multi-level/hierarchical groups" as a requirement "won't" due to Flyout + TreeView solving same scenarios more capably (noting this capability could be due for a refresh via a separate proposal).
I am ready to revisit spec writing, but will be blocked on a dev resource commitment until a validation partner is located. @Niels9001, @ChainReactive, @mdtauk, could any of you point me to an app in your umbrella that you would like to use this feature in as soon as its available?

@SavoySchuler Can't cite an app specifically, but the Fluent Web ComboBox supports it, so that would bring parity, but there is also the Ribbon, which has headered sections in drop downs, and a UWP Ribbon has long been on the "coming soon" ticket.

Awesome.
Two customers direct messaged me to let me know they are planning to use this feature in their apps. As soon as I've wound down NumberBox, and as per the advice from @mrlacey, I will complete the first draft of the spec prior to publishing it on the spec repo - that way there's no time lost guessing what's an oversight vs. what's in-development. Until then, I welcome API, behavioral components, visual components, and accessibility consideration conversations here!
Regarding timeline, note that  the preview of this feature will require the release of WinUI 3.0.

Awesome.
Two customers direct messaged me to let me know they are planning to use this feature in their apps. As soon as I've wound down NumberBox, and as per the advice from @mrlacey, I will complete the first draft of the spec prior to publishing it on the spec repo - that way there's no time lost guessing what's an oversight vs. what's in-development. Until then, I welcome API, behavioral components, visual components, and accessibility consideration conversations here!
Regarding timeline, note that the preview of this feature will require the release of WinUI 3.0.

ComboBoxGroup - A XAML element with a header property containing ComboBox Items
ComboBoxGroup.Header - Item that can not be hovered or selected, but is a header for grouping items
<ComboBox>
      <ComboBoxGroup Header="First Heading">
            <x:String>Blue</x:String>
            <x:String>Green</x:String>
            <x:String>Red</x:String>
            <x:String>Yellow</x:String>
      </ComboBoxGroup>
      <ComboBoxGroup Header="Second Heading">
            <x:String>Yes</x:String>
            <x:String>YASSS!</x:String>
      </ComboBoxGroup>
</ComboBox>

ComboBoxGroup should probably be designed to allow developers to derive from it, and create their own Groups with logic as they need.
Because the ComboBox uses a Flyout to display its contents, perhaps this Group element, should be a FlyoutGroup and maybe even a MenuFlyoutGroup which automatically handles Context Menu Radio Buttons, Context Menu Separators, etc.

During a recent presentation to a stakeholder, the particular ComboBox's lack of grouping resurfaced as a usability issue.  The grouping is essential to the sales pitch.

Regarding timeline, note that the preview of this feature will require the release of WinUI 3.0.

@SavoySchuler That timeline is disappointing.  If it depends on WinUI 3.0 then why not include it in 3.0 itself rather than later?
I tried tweaking the ComboBox to make it more usable in the meantime.  Another complaint is the drop down is too short.  I set MaxDropDownHeight to a large number, but it has no effect!  My googling indicates this is a lingering problem since 2012.  Implementing grouping will be useless to me, unless the drop down can be taller.  Can you include a fix in the scope here, or must I open a separate issue?

Wanted to point out this is also a WPF gap and a request we've had in the Toolkit here.
As a workaround, in the meantime, you can custom style the existing ComboBox template, swap the ScrollViewer>ItemsPresenter part to a ListView w/ Grouping enabled, and then bind the ListView's ItemsSource and SelectedItem as TemplateBindings. However, the Popup menu sticks around, so code is needed to dismiss it, especially on selection. Surprising as GroupStyle is still on ComboBox, it's just ignored.

Regarding timeline, note that the preview of this feature will require the release of WinUI 3.0.

This is rather unfortunate, as I'm currently working on a Ribbon control for the 7.0 release of the Toolkit which really needs this. As it stands, it looks like I'll be making my own custom control for this (for the Gallery).

I think it does require the source to be checked in before work can be done to it (flyouts for form controls currently can not match the compact density of the parent control for this reason)
Grouping in ComboBoxes and other Drop Downs is present in Fluent UI on the Web, so this would bring it to parity.

@michael-hawker is this feature ready? if not, please let us know the status or plan to support this feature? Thanks in advance.

Anything new here?

Wish my past self had posted my style, can't seem to find it anywhere. Couldn't get it to work again. The ComboBox seemed to accept groups and worked displaying it once, but now is consistently crashing for me in the CollectionViewSource being set to the ItemsControl source in the generated bindings with an InvalidCastException. Not sure what happened.
Trying to use a TreeView in a Flyout now I guess, but that's more complicated to setup, and seems like I can't use the same grouped collection I have directly...?

@SavoySchuler any updates or progress?

As a workaround, in the meantime, you can custom style the existing ComboBox template, swap the ScrollViewer>ItemsPresenter part to a ListView w/ Grouping enabled, and then bind the ListView's ItemsSource and SelectedItem as TemplateBindings. However, the Popup menu sticks around, so code is needed to dismiss it, especially on selection. Surprising as GroupStyle is still on ComboBox, it's just ignored.

Or another workaround is to add disabled items and change their color.
For example with  :
 Application.Current.Resources["ComboBoxItemForegroundDisabled"] = new SolidColorBrush(Microsoft.UI.Colors.LimeGreen);

@SavoySchuler on Mar 18 2019:

@niels9001, @ChainReactive, and @mdtauk, thank you all for getting this feature started!
It has been approved and I have opened up a spec for it here

Hello five years later. Any plans?


Extractor filter out subscriptions

Give users ability to filter specific subscriptions to extract.
Piggy back off of https://github.com/Azure/apiops/pull/337

Any thoughts on this @guythetechie

Thank you @zcarroll4 for your great contributions. We really appreciate it.


Fix creating wrong type of error for runtime API with type reference type

Purpose
$subject
Fixes #41025
Approach
Use the referenceType field for generating error creator methods instead of the type field.
Check List

[x] Read the Contributing Guide
[ ] Updated Change Log
[ ] Checked Tooling Support (#)
[x] Added necessary tests

[x] Unit Tests
[ ] Spec Conformance Tests
[ ] Integration Tests
[ ] Ballerina By Example Tests

[ ] Increased Test Coverage
[ ] Added necessary documentation

[ ] API documentation
[ ] Module documentation in Module.md files
[ ] Ballerina By Examples

Shall we check the reason for the lower patch coverage?


Added LMArticleViewController

Project URL
https://github.com/lucamozza/LMArticleViewController
Description
Added LMArticleViewController in UI section.
##Why it should be included to awesome-ios (optional)
Similar to MRArticleViewController but written in Objective-C.
Plus some more features.
Checklist

[x] Only one project/change is in this pull request
[x] Addition in chronological order (bottom of category)
[x] Supports iOS 9 or later
[x] Supports Swift 3
[x] Has a commit from less than 2 years ago
[x] Has a clear README in English

          1 Error

:no_entry_sign:
Found 3 link issues

Link issues by awesome_bot

Line
Status
Link

1041
301
https://tapglue.github.io/ redirects tohttp://www.tapglue.com/

2163
301
https://github.com/AliSoftware/SwiftGen redirects tohttps://github.com/SwiftGen/SwiftGen

2215
301
https://github.com/s4cha/AssetChecker redirects tohttps://github.com/freshOS/AssetChecker

  Generated by :no_entry_sign: Danger

Hey @lucamozza , thanks for contributing to AwesomeiOS! 👍
Nice work, but before collaborators can merge your PR, I need you to fix this issue.


flipImage was doing nothing on landscape orientated images

Added the case for ORIENTATION_NORMAL

What
On Android when the front camera is used the code tries to flip the image (to match the preview). On Portrait and Landscape Right orientations this works. On Landscape Left it does not. The reason for this is that the flipImage function checks the orientation of the image and applies a different transform based on that, but it's missing the case for ORIENTATION_NORMAL which is what is set when the image was tken in Landscape Left.
This PR adds that ORIENTATION_NORMAL case.
Changes
Add a case for ORIENTATION_NORMAL to the when block in flipImage
Tested on
Android Samsung tablet and phone.

Great, thank you!


Theme broken after update

Using neovim 0.3.7-2, after updating the theme, throws this error at startup:
Error detected while processing ~/.local/share/nvim/plugged/vim-color-forest-night/colors/forest-night.vim:
line   45:
E121: Undefined variable: g:spring_night_high_contrast
E15: Invalid expression: g:spring_night_high_contrast ? '#213243' : '#3a4b5c'
line   67:
E121: Undefined variable: s:bgweaker_gui
Press ENTER or type command to continue

After pressing enter, appearently it works just fine, but I really hope it can be fixed. I love your theme, but cannot use it with that annoying message every startup :(

Thanks for pointing this out, I should be more careful when merging patches from spring-night.
It should be fixed now.


Rename export for node to PostHog

No more PostHogGlobal

Tested locally: Works for cjs.
When a module though, we need to import {PostHog} from 'posthog-node'. I'm guessing something to do with default imports not existing for modules?

What if we just kill the default export? It's bad practice anyway, and people are willing to change code when they upgrade to a new major version like 2.0.

Sounds good to me


Update the recipe url to the new format

The recipe should be updated to follow the template form as in cuTENSOR/cuSPARSELt:

https://github.com/conda-forge/cutensor-feedstock/blob/5941a4818f8b2bb4f9e5949f413f787cfa775be7/recipe/meta.yaml#L1-L11
https://github.com/conda-forge/cusparselt-feedstock/blob/c8c56a6ad88b4d85d1890b6426daa1516b1d0601/recipe/meta.yaml#L1-L10

This would allow the CF bot to pick up the new updates from NVIDIA and send a version update PR to here automatically.

This is done in #56.

I was wondering why this feedstock remains silent since #56... There are a few newer versions already, but the bot didn't send any update.
It turns out the cuDNN team uses a wrong format in the json file (the package build number is mistakenly included in the json filename) and we have no way to check it. It was already raised by another internal team: nvbugs 4056484

By json files I refer to those under https://developer.download.nvidia.com/compute/cudnn/redist/.

Is it worth raising as an upstream issue?

Tried requesting a bot update ( https://github.com/conda-forge/cudnn-feedstock/issues/74 ) to see what would happen, it opened PR ( https://github.com/conda-forge/cudnn-feedstock/pull/75 ) and promptly failed. Details about the failure in this comment ( https://github.com/conda-forge/cudnn-feedstock/pull/75#issuecomment-1940402974 )
Think cuda_major is confusing for the bot. Though there may not be enough information for the bot to go off of either
https://github.com/conda-forge/cudnn-feedstock/blob/34726d4838930721ac980ef1119f4e082c99075b/recipe/meta.yaml#L2

Did spot one issue: https://github.com/conda-forge/cudnn-feedstock/issues/76
Fixing with PR: https://github.com/conda-forge/cudnn-feedstock/pull/77
Not sure if that is enough to fix this issue, but we can test after that lands

The above PR was merged
Tried a fresh version update: https://github.com/conda-forge/cudnn-feedstock/pull/79
Though am still seeing issues with the update. Looks like it may be a different issue though


Fetch the application from the API on the tasklist

When loading the tasklist, and the application is not found in the session, then we should load it from the API. This will allow people to come back to an application after a period of time.

 Fetch application from API when loading tasklist


Banks API docs incomplete for Primary and Confirmation Validator

https://github.com/thenewboston-developers/Validator/blob/master/v1/banks/views/bank.py
currently has GET, PUT and POST but the API docs:
https://thenewboston.com/primary-validator-api/banks
currently only has documentation for GET; PUT and POST need to be documented for both the Primary Validator and the Confirmation Validator.

Closing - included in these standardized documentation issues https://github.com/thenewboston-developers/Website/issues?q=is%3Aopen+is%3Aissue+label%3Adocumentation


peewee_async.count changes query

When I tried to reuse the same query in Manager.count and then Manager.scalar I figured out that the first call changes the query.
Something like this:
objects = Manager(database)
...
query = SomeClass.select().where(lot of conditions)
count = objects.count(query)  expect number, got number
thing = objects.scalar(query)  expect object of SomeClass, got count

Are you sure, that your design is sane?

@alpo this is not by design, I used such code clone = query.clone(), seems like it doesn't do job safely or I'm missing something.

Try AioModel.aio_count method it should work like original count in peewee. The count method is deprecated for now


Build disk cmd recode

This  a full rewrite of the build-disk command. It mostly introduces a new config schema for the command that perfectly aligned with the install/upgrade and reset commands. That means specific images for recovery and active can be set as well as custom partition size, filesystem and most of the details that are already possible within the install command.
In addition it also includes a --recovery-only flag to create expandable disk images. Expandable images only include a recovery partition and image plus a mini state partition including few config files, but no OS. The images are already created with a preloaded cloud-init setup to expand state partition to the requested size and also create a follow up persistent partition with the configured size. Once partitions are created the system runs a reset command to get a full defined system.
As a consequence of better coding reuse and the introduction of the sgdisk wrapper the build disk procedure can be done with a more traditional approach (loop device mount and dump data in it) requiring privileges when running inside a container or using a mount-less approach, so it can be build within a container without additional privileges under certain constraints. Both paths are sharing most of the code so from a maintainability perspective this has almost no impact.

All unit tests are missing, so that this is a draft. This is one of the outcomes of my hackweek 😄


Issue with \tag per row of {align} inside tex and markdown

Does this issue occur when all extensions are disabled?: Yes

VS Code Version: 1.71.2
OS Version: Windows 10 Enterprise 21H2

Steps to Reproduce:

Make a new markdown file
Insert an equation with align and tags per line

$$
\begin{align}
D &= \frac{1}{2}\rho _ g \pi a^2 u^2 C_ D(Re) \tag{1.5} \\
Re &= \frac{2 \rho _ g u a}{\mu _ g}  \tag{1.6} \\
C_ D &= \frac{24}{Re} + \frac{6}{1 + \sqrt {Re}} + 0.4  \tag{1.7}
\end{align}
$$

Open preview

Actual result:
ParseError: KaTeX parse error: Multiple \tag

Expected result:
$$
\begin{align}
D &= \frac{1}{2}\rho _ g \pi a^2 u^2 C_ D(Re) \tag{1.5} \
Re &= \frac{2 \rho _ g u a}{\mu _ g}  \tag{1.6} \
C_ D &= \frac{24}{Re} + \frac{6}{1 + \sqrt {Re}} + 0.4  \tag{1.7}
\end{align}
$$
Actual result:
ParseError: KaTeX parse error: Multiple \tag

Probable cause:

VScode seems to be using KaTeX v0.13.0
https://github.com/microsoft/vscode/blob/0ee05bb617c5585d9a329e7b34cc6ec9edca10dc/extensions/markdown-math/yarn.lock#L9
\tag per row of {align} is supported since KaTeX v0.15.1

Please consider upgrading KaTeX version

@mjbvz Hello! I would like to fix it but I'm not quite sure how to do it.
So far my understing is - I should open PR with the Katex version update for the peer dependency https://github.com/iktakahiro/markdown-it-katex of the markdown-math extension. And then run the yarn upgrade in markdown-math.
Is it correct assumption?

Wired, it looks good to me.

I did test with the newer version of katex and it already works with markdown-it-katex if loaded manually on a browser.
You could validate it by entering this math notepad and entering this code. (the same code starting with # )
# $$
# \begin{align}
# D &= \frac{1}{2}\rho _ g \pi a^2 u^2 C_ D(Re) \tag{1.5} \\
# Re &= \frac{2 \rho _ g u a}{\mu _ g}  \tag{1.6} \\
# C_ D &= \frac{24}{Re} + \frac{6}{1 + \sqrt {Re}} + 0.4  \tag{1.7}
# \end{align}
# $$)

I don't know how it works in vscode and I'm not sure if my comment is useful. I'm just sharing some information as a reference.


bad apple: Initial version of the demo.

This adds famous movie with music.

Amazing, great job getting that level of playback out of a bangle!

I admit I didn't know about this demo, yet. Amazing!


[Optimization][dinky-getaway] Delete the previously failed cluster when resubmitting the task.

Purpose of the pull request
[Optimization][dinky-getaway] Delete the previously failed cluster when resubmitting the task.
https://github.com/DataLinkDC/dinky/issues/3953

@aiwenmo PTAL, Thanks

@gaoyan1998 PTAL, Thanks


import external rules through python package

Is your feature request related to a problem? Please describe.
Managing external rules is tedious when the latter need to be shared across multiple projects.
Describe the solution you'd like
At least, I'd like to vendor my external rules as Python packages. I'd like to specify a package name instead of a path to files/directory to load external rules.
At best, I'd like Robocop to provides a plugin system similar to flake8.

Very good idea, I will see what we can do - it looks possible to be implemented.

Will this be enough::
robocop --ext-rules RobocopRules .

where RobocopRules are for example:
RobocopRules/
RobocopRules/__init__.py
RobocopRules/some_rules.py
setup.py

inside init.py:
from .some_rules import MissingKeywordName

all = ['MissingKeywordName']

inside some_rules.py:
from robocop.checkers import VisitorChecker
from robocop.rules import RuleSeverity

class MissingKeywordName(VisitorChecker):
    """ Checker for missing keyword name. """
    rules = {
        "9903": (
            "external-rule",
            "This is external rule",
            RuleSeverity.INFO
        )
    }

    def visit_KeywordCall(self, node):  # noqa
        if node.keyword and 'Dummy' not in node.keyword:
            self.report("external-rule", node=node)

Or you need more sofisticated methods of importing, ie dotted import?:
robocop --ext-rules mymodule.nested

I've implemented first example and it should be part of next release. I could improve it by adding other methods of importing (such as mentioned dotted import) but I'm not sure if it would be ready for next release.

Thanks a lot for your work @bhirsz, the dotted import is exactly what I needed !


Additionl Endpoints

Description
CloudFormation, CodePipeline, Storage Gateway, AppMesh, Transfer, Service Catalog & SageMaker(Runtime & API)

Here we go! Great job!
v2.15.0 has been released.


(Bug) Investment Transaction rejection not being handled properly

If the user rejects invest transaction, app will display the popup with with the message Congrats! You've successfully bought n tokens!.
Popup should not appear or message should be different.
Screenshot

The popup should not appear on reject. What's about toast notification?

I like the idea of a toaster. Have any on mind?
I've found these:

https://github.com/schiehll/react-alert (I find it quite suitable for the solution)
https://github.com/tomchentw/react-toastr
https://github.com/jesusoterogomez/react-notify-toast
https://github.com/igorprado/react-notification-system

I like the first one. Our designer approved it.
We can use the toast to inform which contract we create between step 3 and 4. @vbaranov what do you think.


netstandard beta6- up-to-date with NLog 4.4.2

This change is

merge partial done, but a lot work to fix the build and tests


Adding the merices table

Adding the merices table to the readme file
@visheshrwl , please assign me under this issue !!!

Hey @Aman-G-upta ! 👋
First off, I want to extend a huge thank you to all of you for your amazing contributions to this project! Your support and hard work mean a lot, and I truly appreciate everything you do. 🙏
I have a small favor to ask: if you think I’ve been helpful and supportive throughout your contributions, I would be honored if you could nominate me by filling out this form: Nominate me.
Your nomination would mean the world to me, and it’s a great way to help me continue supporting our awesome community. Thanks again for all the amazing work, and let's keep making great things happen! 🚀
Best,
Vishesh


Clean up permission handling

Make sure permissions are always handled where they are needed
All permission handling through permission handling

Add all permissions to the settings menu.


Smart WiFi Switch 1 Gang dump - ATS01L-US (WB3S) - Need profile build

Hi everyone,
I had successfully read the flash of a Qualitel ATS01L 1-Gang light switch with "Lightleak".
It worked for me like described in the documentation using the LightLeak BK7231T profile. Great work, thank you
These are TUYA lightswitches built in South Africa, but is basically the same as one I bought from AliExpress as well. Before the chips were upgraded it had TYWE2S chips which could easily be flashed with Tasmota or Esphome
Now I need help to build the profile from dump that is attached.  Can somebody please help and create the profile for me?
Thank you very much
Jackie
CPU: WB3S
Dump: dump_1gang-light.zip
Info: https://templates.blakadder.com/qualitel_ATS01L-US.html

Added as Tuya Generic ATS01L-US 1 Gang Touch Switch

Thank you very much! Working perfectly!


Move initialization of static variable from header file to a .cpp file

@jrood-nrel  Fixes issue https://github.com/OpenFAST/openfast/issues/73
@jjonkman @ghaymanNREL : Do we know of any one who uses FAST_Library.h? I moved the definition of "AbortErrLev" into the OpenFAST class and initialized in the C++ file.
Other minor edits to move some header includes into the .cpp file.

@gantech -- I'm not familiar with the FAST_Library.h file.  However, the the FAST_Library.f90 file is used by the Simulink-FAST interface, but this interface has not yet been tested in OpenFAST (see issue #59).

@jjonkman : Thanks. This commit shouldn't affect any simulink/fortran users at all. I'm concerned if this commit will affect any one who depends on the the variable "AbortErrLev" being defined in the FAST_Library.h file. I don't see a reason for any one to use the FAST_Library.h file at all. My understanding was that this file was created primarily for interfacing to C driver programs. However, the new interface supports only C++ and not C drivers. Not sure if this is a concern.
If any one has any other suggestions to get around issue https://github.com/OpenFAST/openfast/issues/73 without modifying FAST_Library.h, please let me know.


Update dependencies.adoc

Document the different ways to declare dependencies using the -d flag in the kamel run command.
See #2589 .

Release Note
NONE

I updated the commit message and fixed a typo in the process.


Add tests for ink!'s trait-incrementer example

We should add tests for the trait-incrementer example added in https://github.com/paritytech/ink/pull/932 to the waterfall. All possible contract interactions should be covered by the tests.
This can be done analog to the existing tests for trait-flipper.

Additionally we also want to test the inc_by method that the contract but not the trait defines.


Add Lithuanian letters

Very cool project. Can you please add the missing Lithuanian diacritics. All of them are these:
Ą Č Ę Ė Į Š Ų Ū Ž ą č ę ė į š ų ū ž

I think I've added it to the .oft font file that I'm working on, I'll add it on the code when I have a time!


OCR on ingest

https://github.com/meh/ruby-tesseract-ocr seems to be the most active.
Users doing ingest may need to set language for best results. Should this be in Hydra::Derivatives?

Doesn't CC do this with Tika already?

Not from images I don't think, does it--I think it extracts text from document formats like Word, PDF, etc. I could be wrong, though. And we'd want Zones.

There's a way to chain in Tesseract to Tika, but the documentation seems troublesome.

Scope for this ticket: When ingesting an item a derivative should be created which builds hOCR of the document via Tesseract and stores it. Useful: https://github.com/meh/ruby-tesseract-ocr#hocr

Here's some sample HOCR https://gist.github.com/jpstroop/abc27a5a87e2268fc184

To close this, what needs to be supported:

Searching in the catalog returns full text results (probably with highlighting)
Annotation lists are linked to each canvas in the manifest, with the full text as annotations.

UI should support changing the language and the pagesegmode
pagesegmode values are:
  0 = Orientation and script detection (OSD) only.
  1 = Automatic page segmentation with OSD.
  2 = Automatic page segmentation, but no OSD, or OCR
  3 = Fully automatic page segmentation, but no OSD. (Default)
  4 = Assume a single column of text of variable sizes.
  5 = Assume a single uniform block of vertically aligned text.
  6 = Assume a single uniform block of text.
  7 = Treat the image as a single text line.
  8 = Treat the image as a single word.
  9 = Treat the image as a single word in a circle.
  10 = Treat the image as a single character.

@jpstroop Do you have the file you ran that on? Looking at ruby-tesseract-ocr and seeing if we can avoid shelling out.

https://github.com/meh/ruby-tesseract-ocr/issues/50 Ruby library doesn't support Tesseract 3.04

@tpendragon files in slack

With the gem it looks like you can set the page mode with page_segmentation_mode = 4

Split out #381, #382, #383, #384, #385, #386 from this issue. This issue is now just "run tesseract derivatives and store them"


upgrade Cmake Catch2 to 2.13.8

Upgrade Cmake Catch2 to version 2.13.8

Needed to be upgraded because version 2.13.2 did not work with Fedora


Fix compose box resurfacing issue

Details
Fixed Issues
$ https://github.com/Expensify/App/issues/9016
Tests & QA (On a mobile device or mWeb only)

Edit a message
Verify the "compose" input at the bottom hides
Blur the input by navigating away or tapping somewhere else
Verify the compose input at the bottom reappears

[ ] Verify that no errors appear in the JS console

PR Review Checklist

PR Reviewer Checklist

[ ] I verified the correct issue is linked in the ### Fixed Issues section above
[ ] I verified testing steps are clear and they cover the changes made in this PR

[ ] I verified the steps for local testing are in the Tests section
[ ] I verified the steps for Staging and/or Production testing are in the QA steps section
[ ] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[ ] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[ ] I checked that screenshots or videos are included for tests on all platforms
[ ] I verified tests pass on all platforms & I tested again on:

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

[ ] I verified there are no console errors (if there’s a console error not related to the PR, report it or open an issue for it to be fixed)
[ ] I verified proper code patterns were followed (see Reviewing the code)

[ ] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[ ] I verified that comments were added to code that is not self explanatory
[ ] I verified that any new or modified comments were clear, correct English, and explained “why” the code was doing something instead of only explaining “what” the code was doing.
[ ] I verified any copy / text shown in the product was added in all src/languages/* files
[ ] I verified any copy / text that was added to the app is correct English and approved by marketing by tagging the marketing team on the original GH to get the correct copy.
[ ] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named “index.js”. All platform-specific files are named for the platform the code supports as outlined in the README.
[ ] I verified the JSDocs style guidelines (in STYLE.md) were followed

[ ] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[ ] I verified that this PR follows the guidelines as stated in the Review Guidelines
[ ] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[ ] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[ ] If a new component is created I verified that:

[ ] A similar component doesn't exist in the codebase
[ ] All props are defined accurately and each prop has a /** comment above it */
[ ] Any functional components have the displayName property
[ ] The file is named correctly
[ ] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[ ] The only data being stored in the state is data necessary for rendering and nothing else
[ ] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[ ] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[ ] All JSX used for rendering exists in the render method
[ ] The component has the minimum amount of code necessary for its purpose and it is broken down into smaller components in order to separate concerns and functions

[ ] If a new CSS style is added I verified that:

[ ] A similar style doesn’t already exist
[ ] The style can’t be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG)

[ ] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[ ] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.

Screenshots

Web
❌  - Change doesn't affect web
Mobile Web
Mobile web is working - but looks kind of inconsistent on iOS simulator. We should probably create some follow up issues for these bugs if they are not being worked...

There's some weird extra whitespace (maybe dev only)
Scrolling up to the comment isn't working (probably because scrollToIndex / comment linking doesn't work on web)

https://user-images.githubusercontent.com/32969087/169595243-2253d027-9713-4b8a-9111-54a1d0cae3f0.mp4
Desktop
❌  - Change doesn't affect desktop
iOS
https://user-images.githubusercontent.com/32969087/169589329-eb710ca9-117e-4859-b321-3568ce07dad5.mp4
Android
https://user-images.githubusercontent.com/32969087/169589389-80dc5b73-316b-49e3-8da4-f291ed22b4c0.mp4

Found a solution for web and mobile web (the edit comment feature needs improvement there) and still need to test iOS/Android.

Testing...

@parasharrajat Thanks! And that's interesting so... the hardware back button is not causing the input to lose focus? I'll do some testing now and see.

Ah ok so revealing the sidebar does not blur the input. The solution you shared only works if the ReportScreen unmounts and that doesn't happen when we navigate to the same chat. Maybe we can move the reset into the componentDidUpdate() of ReportActionsView 🤔

Maybe we can move the reset into the componentDidUpdate() of ReportActionsView

Sounds like a potential solution. I will test more on other platforms to see if there are other such cases.

Can we merge the main into this branch? No specific reason.

There's a crash happening on production now that this PR will fix. It seems more important than the issue that Rajat is running into here so I suggest we move swiftly with this and look into that as a follow up if this is working for most other cases..

There are definitely some weird things happening when we are navigating back with the browser in mWeb. Mostly I am confused why we end up navigating to a previous chat instead of showing the drawer. The behavior seems kind of unexpected.

Updated. Best solution I could come up with is to reset the composer whenever we set the currently viewed reportID. Which happens whenever we mount a new report screen or update the reportID.

Thanks,I have fixed my Mac. I will review this shortly and we can close this.

There are definitely some weird things happening when we are navigating back with the browser in mWeb. Mostly I am confused why we end up navigating to a previous chat instead of showing the drawer. The behavior seems kind of unexpected.

This happening as there is no back handler for mWeb like native. Pressing the back button navigates the page back to previous history item.
As the url is always r/reportID for both open/closed state. previous history item will always be r/reporid for another report. Thus it switch to another report on pressing back. The default status of Drawer is closed thus we see LHN with respect to change of report.
[BackHandler](https://github.com/necolas/react-native-web/blob/master/packages/react-native-web/src/exports/BackHandler/index.js.) is not implemented on RN-web  There is a good reason for that but I am not able to find the issue where maintainer explained it.

This happening as there is no back handler for mWeb like native. Pressing the back button navigates the page back to previous history item.

Yes am aware of an open issue in react-native-web to implement the BackHandler and also some issues that react-navigation has related to browser back nav on web (it's using popstate events not the BackHandler and also has a specific implementation for web).
I think it could also have to do with the CustomActions stuff. Probably eventually would be good to:

Determine how browser navigation should work
See if react-navigation can reasonable support what we want
If not, then re-write the CustomActions or create a custom navigator for web
If yes, then kill the CustomActions

That all has to be designed and researched though and probably not a near-term priority.

Yes, I think scrolling to the comment will not work until we solve the same issues we are struggling with here.

Also seeing this in iOS following this flow:

Send message, start editing (without sending)
Verify ReportActionCompose hides
Navigate away, then navigate back
See that the comment edit input & report action compose input both show

https://user-images.githubusercontent.com/3885503/172439461-7e55d450-ecf4-47dd-a09f-9765d432cec9.mov

Hey @Beamanator - good thoughts here and thanks for the review. Nothing is a blocker for me and it's important to get this one merged. If you are passionate about any of the concerns you had in the review I think we can create a follow up to address them.

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by @marcaaron in version: 1.1.74-0 🚀

platform
result

🤖 android 🤖
failure ❌

🖥 desktop 🖥
failure ❌

🍎 iOS 🍎
cancelled 🔪

🕸 web 🕸
failure ❌

🚀 Deployed to production by @yuwenmemon in version: 1.1.74-2 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


Populate service name correctly for Location as part of s3 ingestion

Describe your changes :

I worked on this because #1435 did not populate name/fqn for location ingestion for s3 correctly

Type of change :

[x] Bug fix
[ ] Improvement
[ ] New feature
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation

Frontend Preview (Screenshots) :
fullyQualifiedName is null.*

With the fix, the fullyQualifiedName is correct

(s3-locations is the service name provided as input to s3 source config)

Checklist:

[x] I have read the CONTRIBUTING document.
[x] I have performed a self-review of my own.
[x] I have tagged my reviewers below.
[ ] I have commented on my code, particularly in hard-to-understand areas.
[x] My changes generate no new warnings.
[ ] I have added tests that prove my fix is effective or that my feature works.
[x] All new and existing tests passed.

Reviewers

@sureshms @harshach @amiorin

LGTM


Fork app to europe failed on Adding pgbackups

Could you help me with this issue? Log explains everything...

mikolaj@mikolaj-VirtualBox:/var/www/houseOps$ heroku fork -a house-ops house-ops-eu --region eu
Creating fork house-ops-eu... done
Copying slug... done
Adding heroku-postgresql:hobby-dev... done
Adding pgbackups:plus to house-ops... Failed to fork app house-ops to house-ops-eu.

!    WARNING: Potentially Destructive Action
!        To proceed, type "house-ops-eu" or re-run this command with --confirm house-ops-eu

house-ops-eu
Deleting house-ops-eu... done
Original exception below:
!    Resource not found

what is the output of heroku version?

mikolaj@mikolaj-VirtualBox:/var/www/houseOps$ heroku version
heroku-toolbelt/3.28.5 (x86_64-linux) ruby/1.9.3
You have no installed plugins.
WARNING: Toolbelt v3.31.3 update available.

you're on an old version, if you update you should be good

You are right, it works. Thanks a lot!


[1.16] Torches are duped when using the bandolier

Versions
Minecraft Version: 1.16.1
Torch Bandolier Version: 1.16.1-1.5.0+10
Expected behavior

Placing a torch with the bandolier and then breaking that torch and collecting should leave me with the same number of torches as I started with.

Actual behaviour

Placing and then breaking and collecting torches causes the number of torches collected in the bandolier to slowly increase one by one

Steps to reproduce the problem

Equip bandolier in off-hand (haven't tried otherwise) with the auto-collect option turned on.
Place torch with bandolier.
Break torch.
Collect torch.
Note that the number of torches in the bandolier is now the original total +1.

After some further testing, I've pinpointed exactly how the math seems to work. When you place x number of torches with the bandolier, it seems to add x+1 torches back to it when you break and collect one. So if you have four torches in the bandolier, place all four down, and then break one and collect it, you will now have five in the bandolier, with the other three still placed. If you break the other three without placing any more torches, the count will increment as normal, so you'll end up with 8 torches.


bot-conversation sample migration

Build status  - All builds passed
https://github.com/OfficeDev/Microsoft-Teams-Samples/actions/runs/5445213719

build status - All builds passed
https://github.com/OfficeDev/Microsoft-Teams-Samples/actions/runs/5452011134


Keras models with shared layers are loaded incorrectly from h5 file

System information
Default colab instance.
Describe the current behavior
Results of the different usages of a shared layer are permuted after the save/load procedure (h5 saved model format). This changes the network topology in an unpredictable manner.
Describe the expected behavior
Results are not permuted and the topology is intact.
Contributing

Do you want to contribute a PR? (yes/no):  yes
Briefly describe your candidate solution(if contributing):
The problem seems to lie in this part of model loading code (it has moved to a different file in tf 2.5, but is essentially the same)
https://github.com/tensorflow/tensorflow/blob/0931ea3d985bb9c8fdd054a5e29c4129623c849b/tensorflow/python/keras/engine/network.py#L1834-L1836
It handles the nodes we cannot compute right now. Such nodes are put back to the queue.
The problem arises when we process a shared layer (so there are several nodes associated with it) and some of the first nodes are not ready for computation, while some later nodes are. This leads to the order of nodes' computation being broken. This broken order is then used to find inputs for the following nodes, which leads to results permutation.

I propose two possible solutions:

Stop node processing process for entire layer upon encountering a node which is not ready for computation. This guaranties the correct order of computation, but would slow down the loading process to a certain degree.
Note the original node order while iterating over them and fill the node_index_map keys accordingly. This way the original order will be broken, but we would have information about it while searching for the following nodes' inputs.

Standalone code to reproduce the issue
https://colab.research.google.com/drive/1F8Rii8SmlURIlBK7GmMIkJwt5YkT6E7F?usp=sharing

@Saduf2019
I was able to replicate the issue reported here.Please find the gist. Thanks

Please post this issue on keras-team/keras repo.
To know more see;
https://discuss.tensorflow.org/t/keras-project-moved-to-new-repository-in-https-github-com-keras-team-keras/1999

Please post this issue on keras-team/keras repo.
To know more see;
https://discuss.tensorflow.org/t/keras-project-moved-to-new-repository-in-https-github-com-keras-team-keras/1999

I've duplicated the issue. Hope it helps.
Could you maybe provide an estimation on when someone is going to fix the problem? It seems to be a critical one, as h5 saving format is essentially broken.

This issue should not be stale. I have no idea why "awaiting response" label is still on.

Isn't tracked now at https://github.com/keras-team/keras/issues/14838?


Getter and setters for java classes

Thank you sir, deployed here:
https://onelinerhub.com/java/get_current_date
https://onelinerhub.com/java/getter_setters


Add code action to format code when there's a "multiple statements" warning

Ref: https://github.com/microsoft/vscode-pylint/issues/43
There are two things that needs to be done:

[ ] Create quick fix for warning code C0321:multiple-statements that triggers the format document action
[ ] Add unit test

The code for the first step will be similar to the one here: https://github.com/microsoft/vscode-pylint/blob/2fae19e66aaf079c3dc190b81f913695ac65b078/bundled/tool/server.py#L243
And the unit tests will be similar to this: https://github.com/microsoft/vscode-pylint/blob/2fae19e66aaf079c3dc190b81f913695ac65b078/src/test/python_tests/test_code_actions.py#L23

@luabud interested please assign


Razor Preview removes the wrap with DIV or surround with context menu items

This issue has been moved from a ticket on Developer Community.

[severity:It's more difficult to complete my work]
The surround with snippet and wrap with div context many items are missing when I enabled the Razor Preview.
Because I use these quite regularly I have had to revert back.

Original Comments
Feedback Bot on 3/9/2021, 07:11 PM:
We have directed your feedback to the appropriate engineering team for further evaluation. The team will review the feedback and notify you about the next steps.

Original Solutions
(no solutions)

Duplicate of: https://github.com/dotnet/razor-tooling/issues/4347


Towers of Hanoi Issue

Hello, I'm trying to solve the towers of hanoi using PDDL is works fine with 3 and 4 disks count. However, when I increase the disks count it fails and generates a nothing plan.
I'm attaching both the problem domain and instance.
Can you help me fix this issue ?
Archive.zip

I'll close this issue here and open it on Plinf.jl.


Config to assign a separate icon to *.d.ts instead of *.ts

VSCode Version: 1.5.1
OS Version: Windows 10 x64, 14393.103

When making an icon theme, currently assigning an icon to *.ts is easy, but there is no way to assign a separate icon to *.d.ts.

fileExtensions associates file extensions to icons. The key in the set is the file extension name. The extension name is a file name segment after a dot (not including the dot). File names with multiple dots such as lib.d.ts can match multiple extensions; d.ts and ts. Extensions are compared case insensitive.

@aeschli, strange behavior.
For example, I assign ts to ts: _typescript and d.ts to  _javascript and d.ts files will be have TypeScript icon. But if I assign d.ts to _pdf I will see PDF icon.

Oops, the . is not escaped. Will fix ASAP


Hosts are fetched via HTTP

> python updateHostsFile.py -a -r
Updating source yoyo.org from http://pgl.yoyo.org/...
Should we switch to HTTPS-only?

See: https://github.com/StevenBlack/hosts/pull/59
BUT IDK how yoyo.org SSL looking here...

I think this topic solely depends on the sources if they use https, ftp, or whatever protocol as long as they provide the list so I think no issues here at all.

@asvc thank you!
@FadeMind @Laicure with b1f2c3e I just made yoyo.org use https as this appears to work for me on OS X El Capitan.
Do either of you get certificate warnings for yoyo now?
Something in me wants to do the Simplest Thing That Could Possibly Work and that would be http.  Because certs expire, and many other ways that cert issues can arise.

@StevenBlack yoyo.org via HTTPS working fine.

Oh I see... /hmm
So I think no data source cert/etc issues here on my side (Windows user).
Thanks ;)

yoyo.org failing to download over https (can see it in browser)
on win10

Works fine here:  https://pgl.yoyo.org/adservers/serverlist.php?hostformat=hosts&mimetype=plaintext&useip=<IP_ADDRESS>

@StevenBlack even though http is more likely to work it trivializes someone injecting a list of servers to block in aide of an attack....  I think the default block lists should be HTTPS only.

Thanks for your input on this Ben @benlowry.
Considering the extensibility of the hosts amalgamation, it's probably not realistic to force HTTPS without dealing with the opposite problem: people asking why force HTTPS when this or that particular source is great but is only available with HTTP.
But I totally understand what you're saying.
If someone cares to make a PR with a flag to force HTTPS, which we could make the default, and deal with both HTTP and HTTPS cases including error handling and documentation updates, well, I'd certainly entertain it.

It should be force-http because that is where the danger lies.   This matters a lot more for a DNS server than a browser extension, using force-https means by default every device on every network using pi-hole continues to be at risk.
This might be solvable by contacting the last defaults (I think only 2 exc. malwarebytes that I saw the other day has HTTPS) and asking if they'd provide a HTTPS version.  I wrote the someonewhocares.org email address on Monday to suggest some free options they might use  - https://letsencrypt.org/ for free SSL, https://www.cloudflare.com/ over their website, a github repo/gist etc.  I'll dig into the other one and see if I can contact someone there too.
It's probably possible to replicate the lists in a git repo too and automatically keep them in sync as well.  That would start with a potentially compromised list but every change would be traceable and people downloading that copy could be sure they are not receiving something that has been tampered with since.

BTW @StevenBlack you might like how I have used your project - I used it to supplement a DNS server called Pi-hole that blocks ads and includes an admin interface and browser extensions, and I added the ability to use custom domains on your network.
This lets the blocking occur network-wide -
https://github.com/benlowry/pihole-extended-hosts

Hey Ben @benlowry that's excellent!
Keep up the good fight!  :-)

The 'someonewhocares.org' person wrote me back and said he will look into providing a HTTPS version.

This is great Brn @benlowry.  Thanks!


Increasing stack_limit for eye.pvm

I'm currently hitting resource limits with eye.
What I tried first was to add --stack-limit flag when calling eye, but this seems to have no effect when using eye.pvm?
swipl --stack-limit=8G -x /usr/local/lib/eye.pvm -- ...

Still gives:
error(resource_error(stack),stack_overflow{choicepoints:17,depth:485165,environments:485153,globalused:653824,localused:72019,non_terminating:[frame(485156,user:statements_optional(_167379224,[625122],_167379228),[]),frame(485155,user:statements_optional(_167379252,[625126],_167379256),[])],stack_limit:1048576,trailused:183301})

where the stack limit in the error still looks like the default 1G.
So am I correct that the only way to get this working is changing eye.pl code around here https://github.com/eyereasoner/eye/blob/9e1d1acda63286b4197cc34566269748fc73691b/eye.pl#L439 to set the https://www.swi-prolog.org/pldoc/doc_for?object=qsave_program/2 default stack_limit, before creating eye.pvm?
Thanks in advance,
eye and swipl versions:
EYE v23.0106.2349 josd
SWI-Prolog version 8.2.4

Could you first try it with the latest versions?
EYE v3.23.0 (2023-05-11)
SWI-Prolog version 9.1.9

If same problem, could you then try it giving the --stack-limit argument in line 66 of https://github.com/eyereasoner/eye/blob/master/install.sh ?

Thanks a lot! In the end hanging the stack limit in install.sh worked.


Display storage variables even if source does not match perfectly

For debugging existing contracts compiled with old compiler versions, it might make sense to use a given source code, even though the bytecode on chain does not match perfectly. This could be very useful to at least display storage variables correctly (local variables and source references will not work).

This can be done by improving this check: https://github.com/ethereum/remix/blob/979db8511b788adf34b265ddc45215bbcc525f5c/remix-lib/src/sourceLocationTracker.js#L73


Stop and quarantine file incorrect permission

The application permissions show as "Machine.StopAndQuarantine"; however, it appears you also need "Machine.Read.All" or "Machine.ReadWrite.All".
If you only have Machine.StopAndQuarantine, you get the following error message:
'code': 'Forbidden', 'message': 'The application does not have any of the required application permissions (Machine.Read.All, Machine.ReadWrite.All) to access the resource.'
If you only have Machine.Read.All or Machine.ReadWrite.All, you get the following error message:
'code': 'Forbidden', 'message': 'The application does not have any of the required application permissions (Machine.StopAndQuarantine) to access the resource.'

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

ID: 6ec8a077-8b23-eb52-fe12-3c24bae33bf6
Version Independent ID: 999a81d7-e9e1-6851-c636-121ccf4e181c
Content: Stop and quarantine file API
Content Source: microsoft-365/security/defender-endpoint/stop-and-quarantine-file.md
Product: m365-security
GitHub Login: @mjcaparas
Microsoft Alias: macapara

@MastaDisasta Thank you for your feedback. We have made changes to the document via PR#https://github.com/MicrosoftDocs/microsoft-365-docs/pull/6095
Thanks
Sri

@msbemba Thank you very much for the contribution and updating the documentation with PR. @MastaDisasta Hope this update is helpful for you. Thanks for taking out some time to open the issue. Appreciate and encourage you to do the same in future also.


Fix warnings from issue3501 where exceptions are no longer thrown

Describe your changes :

This fixes sonar issues introduced while fixing #3501. Some of the exceptions in encode/decode cursor are no longer thrown.

Type of change :

[x] Bug fix

Checklist:

[x] I have read the CONTRIBUTING document.
[x] All new and existing tests passed.

Overall LGTM. We just need to take care of the code smells reported by Sonar.


Apparently unneeded dependency on serde_with in atspi-macros

It looks like atspi-macros doesn't actually need the dependency on serde_with; it compiles fine without it. I bring this up because serde_with, at least using default features, adds many more dependencies, including such apparently nonsensical ones as android_system_properties (that one came indirectly via chrono). These may all be build-only, and some may be platform-specific dependencies that don't actually come up on any build platform, but some people will find the addition of so many extra dependencies in their Cargo.lock file annoying anyway.

Thanks for bringing this to our attention.
We actually have a few more that cargo-udeps considers unused:
unused dependencies:
`atspi-macros v0.1.2 (/atspi-macros)`
└─── dependencies
     ├─── "prettyplease"
     ├─── "serde-xml-rs"
     └─── "zbus_xmlgen"

@TTWNO Can I safely merge the branch that removes the unused deps?
Thanks!

Sorry, I didn't even mean to publish that code to crates.io, I'm not sure how I ended up doing that.
Should be good now.


App Service Plan West US Central

The documentation shows using West US Central for the resource group, however the App Service Plan is not available for that region when using the Free Trial. The error I received was a bit confusing, but I figured it out and switched to US Central and now it works just fine. It would be helpful if the documentation was written to work for the free trial subscriptions as well.. although possibly the App Service Plan doesn't work with that region at all - I cannot confirm.
Thanks

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

ID: f1026434-050e-b1d5-7cac-47cf5d5d2cad
Version Independent ID: bfb4d3c9-af35-f08b-710a-afc3281e3d87
Content: Upload image data in the cloud with Azure Storage
Content Source: articles/storage/blobs/storage-upload-process-images.md
Service: storage
GitHub Login: @tamram
Microsoft Alias: tamram

@Forrin Thanks for the feedback! We are currently investigating and will update you shortly.

@Forrin - I've passed this on to the App Service team, as it appears to be a product issue rather than an  documentation issue. I'm going to close this issue, but when I learn more, I will provide an update here. Thanks for your feedback!
#please-close

@Forrin We will now close this issue. If there are further questions regarding this matter, please reply to @femsulu and we will gladly continue the discussion.


Examples of GO SDK implementations

I am interested in implementing the serverless workflow using the GO SDK in one of my projects.
Do you think that the Go SDK is mature enough to use in projects. Are there any projects which are currently live with the Go SDK? Do you have a sample GO project using the serverless workflow which I can use as reference?
Any help would be appreciated!

@ricardozanini ^^
@tee05S the latest Go SDK release https://github.com/serverlessworkflow/sdk-go/releases conforms to the specification v0.6 version. We are still working on the next release that should align it with the v0.7 spec release. Ricardo might be able to give you some ballpark time estimate for that.
As far as maturity goes, we rely on tests and keep adding tests for each of SDK release as the spec gets updated/changed. We also maintain a compatibility table (main readme) that shows which SDK versions you should use for which spec release.  If you find any errors, feel free to raise an issue and even contribute a fix. We will work with you to make sure things get resolved.
Hope this helps

@ricardozanini does the new release have support for graphql as I was not able to wire it in. Do we have any examples of the go sdk implementations?

@tee05S I'd say that the SDK is mature enough to start implementation in Go. It does all the basics that you need to be done like parsing and validating the SDK.
We welcome contributions to add more features.
What do you mean by graphql support? Can you elaborate? The specification defines that a function can be of the type GraphQL, and we will probably add validation to the attribute. The execution of the GraphQL should be done by the implementation.
This is an SDK to parse/validate a given workflow definition, not an implementation of the specification.
In the README file and in our unit tests you can see examples of usage.

@ricardozanini What I meant was that the Function struct in the model package doesnt have a type attribute to implement different types of function calls

@tee05S can you suggest an implementation? The custom function type was introduced for the to-be-released v0.8. I will start thinking about custom functions now since we just released v0.7.
Feel free to suggest something, so we can work together to implement it. :)


java.lang.IllegalStateException: buffer must not be null

I switched the phone camera on the samsung c5000(android 8.0) and it crashed
2019-09-17 11:35:40.534 32667-32690/com.android.example.cameraxbasic D/Camera: Opening camera: 0
2019-09-17 11:35:40.535 32667-32667/com.android.example.cameraxbasic E/BufferItemConsumer: [ImageReader-640x480f23m4-32667-11] Failed to release buffer: Unknown error -1 (1)
2019-09-17 11:35:40.536 32667-32690/com.android.example.cameraxbasic D/UseCaseAttachState: All use case: [androidx.camera.core.Preview-9fa4159c-cd82-4074-b27f-c75853c3fc55, androidx.camera.core.ImageCapture-23a0ebfe-621a-4e28-882c-f4b059c7c3f9, androidx.camera.core.ImageAnalysis-8162ef51-de08-4215-9036-284be2a7a5ec] for camera: 0
2019-09-17 11:35:40.536 32667-32690/com.android.example.cameraxbasic I/CameraManager: getCameraCharacteristics : cameraId = 0
2019-09-17 11:35:40.539 32667-32691/com.android.example.cameraxbasic E/AndroidRuntime: FATAL EXCEPTION: LuminosityAnalysis
Process: com.android.example.cameraxbasic, PID: 32667
java.lang.IllegalStateException: buffer must not be null
at com.android.example.cameraxbasic.fragments.CameraFragment$LuminosityAnalyzer.analyze(CameraFragment.kt:459)
at androidx.camera.core.ImageAnalysisNonBlockingCallback$1.run(ImageAnalysisNonBlockingCallback.java:150)
at android.os.Handler.handleCallback(Handler.java:789)
at android.os.Handler.dispatchMessage(Handler.java:98)
at android.os.Looper.loop(Looper.java:164)
at android.os.HandlerThread.run(HandlerThread.java:65)

It looks like an issue with the library itself, not the sample. Can you please file a bug in the appropriate component of the Android Issue Tracker and reply here once the you have opened the issue there? It should be under https://issuetracker.google.com/components/618491

We just upgraded the sample to the alpha05 version of the CameraX library. If you can still reproduce this issue, please open a bug in the link I pasted above.


[ENH] Add Kubernetes pod name to traces

Description of changes
Summarize the changes made by this PR.

Improvements & Bug fixes

...

New functionality

...

Test plan
How are these changes tested?

[ ] Tests pass locally with pytest for python, yarn test for js, cargo test for rust

Documentation Changes
Are all docstrings for user-facing APIs updated if required? Do we need to make documentation changes in the docs repository?

#3101  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @drewkim and the rest of your teammates on  Graphite


solar evaporation plant controller crash

when i right click on the controller with nothing in my hand,it crashes,and i need it to produce brine...can anyone help or also have this issue?if you need logs,you can go to the minecraft forums,page 100 or you can download it  at your nearest computer convienience store located here:
https://www.dropbox.com/s/olotozvd4acy8dm/crash-2015-08-25_09.51.03-client.txt?dl=1

if you need logs,you can go to the minecraft forums,page 100 or you can download it  at your nearest computer convienience store located here:
https://www.dropbox.com/s/olotozvd4acy8dm/crash-2015-08-25_09.51.03-client.txt?dl=1

LOL? "Download it at your nearest computer convenience store located here"
I feel the taint of a translation program here. Or auto correct, Or just someone with a (interesting) sense of humor.

This is a duplicate of https://github.com/aidancbrady/Mekanism/issues/2931.
Make sure your solar evaporation plant structure is complete before right clicking the controller.
I can reproduce this crash with Mekanism <IP_ADDRESS> by constructing a complete solar evaporation plant, breaking a solar evaporation block off it and right clicking the controller. I don't know if this is fixed in the latest version of Mekanism.

For me, this only occurs when you extend the plant below the bottom layer...
I was trying to extend it from 10 layers to 18 but not stop it functioning.
However, I right click the controller and it crashes my game. But, I think I screwed it up because the new layers are touching the bottom of the plant.
Anyway, it is quite an annoying bug, especially for large modpacks that take ages to load.


Tried the following which works but the Flems are squashed vertically so only the first line of code shows. Should the autoHeight affect this?

Test

const helloWorld = {
  view: () => m('h1', 'Hello World')
}

m.mount(document.body, helloWorld);

let youSaid = '123'

const helloWorld = {
  view: () => m('div', [
    m('h1', 'Hello World'),
    m('input', {
      value: youSaid,
      oninput: e => youSaid = e.target.value
    }),
    ' You said: ' + youSaid
  ])
}
m.mount(document.body, helloWorld);

Also, what does resizeable do?

autoHeight makes the flems container height 100% of it's parent.
It doesn't work inside  , because code is display: inline by default.
This css: code {   display: block;   height: /* whatever */ } will make height work.

code is replaced to that doesn't work. Tried.

Test

const helloWorld = {
  view: () => m('h1', 'Hello World')
}

m.mount(document.body, helloWorld);

...

 height changed but not Flems.

Trying not to be a pest but any progress on this issue?

Oh sorry mike, I hadn't given it any priority since I thought the static height was ok for you for now.. I'll try to look into it right away ;)

Just to be sure, the functionality that isn't working is for it to set it's height to show the full code of the initially selected file. That's also the thing you're needing right?

Yep, that's it.
Static height is working, just not optimal.
If you got something else pressing I can certainly wait.

Nono, I was already fixing other small issues in the same area, so it's perfect to look at now ;)

Hi @mike-ward I got caught up with some other fixes and improvements, but autoHeight should work now. Let me know if everything works as you expected ;)

Awesome, Check it out at http://mike-ward.net/2018/05/09/mithril-rising/

Yay.. that's great.
Maybe a max-height of somewhere between 600-800 would be good generally though?

I'm OK with no max height.


[FLINK-31082][table-planner] Fixups for setting maven property 'flinkresueForks' to false in table planner module in right way

What is the purpose of the change
This pr is a fix up pr for FLINK-31082, which aims to alleviate the CI OOM problem mentioned in issue: https://issues.apache.org/jira/browse/FLINK-18356 in release-1.17.
Setting maven property flink.resueForks to false in table planner module can only reduce the frequency of oom error, but can't solve this problem.
Brief change log

change pom.xml in table planner module.

Verifying this change
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): no
The public API, i.e., is any changed class annotated with @Public(Evolving): no
The serializers: no
The runtime per-record code paths (performance sensitive): no
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn, ZooKeeper: no
The S3 file system connector: no

Documentation

Does this pull request introduce a new feature? no
If yes, how is the feature documented? no

@flinkbot run azure


General code enhancement and new ideas

I saw that you are new to coding, so welcome to GitHub !
I listed a few things that you could easily change to improve the quality of your code:

Use f-string instead of ugly concatenation like print("[INFO] End of OCR, found "+str(NbError)+" errors out of "+str(len(ROI))+" regions...")

It will look instead like : print(f"[INFO] End of OCR, found {str(NbError)} errors out of {str(len(ROI))}  regions...")
It's new in Python 3.6
See https://www.python.org/dev/peps/pep-0498/

Use logging module instead of print("[INFO"] ...)

You can use logging.info() to print a message with the info level
You can add an argument to your CLI (that means command line tool), to set the verbosity level (info, warning, error, critical, ...)
See https://docs.python.org/3/howto/logging.html#logging-basic-tutorial

Use a standard docstring notation like the one of google or the one of numpy:

The Vscode extension Python Docstring Generator can generate the docstring based of the prototype function. You can specify if you want the numpy or the google style in the extension configuration.
See https://numpydoc.readthedocs.io/en/latest/format.html for numpy style (I suggest you this one)
See https://sphinxcontrib-napoleon.readthedocs.io/en/latest/example_google.html for google style

DO NOT write the  .gitignore yourself

websites exist to generate gitignore corresponding to your project such as https://gitignore.io/
just write the technology you're using (for example vscode and python here)

In the requirements.txt, always precise the package version you're using

for example opencv-python==<IP_ADDRESS>
to do so the easiest way is to:

create a virtualenv pip3 install virtualenv
create such a virtualenv in your project by executing python3 -m venv .venv
activate the virtualenv venv\Scripts\activate (on Windows)
make the pip install -r requirements.txt
finally you can get the version you installed by executing pip freeze and put this in your requirements.txt instead

to work with a virtualenv is a very good habit to take because you're sure to use the good versions of your project
see https://www.tutorialspoint.com/python-virtual-environment

You should use a linter to keep the way you're coding consistent.

In Vscode, which you seem to be using, it's very easy.
 After that you can format the document by pressing the keyboard shortcut Shift+Ctrl+I

See https://pypi.org/project/black/

In Vscode, use the Python extension but also the Visual Studio IntelliCode and Pylance

It has a AI support to check your code statically, and to report error in your code.
It can suggest you the method name based on what you're typing, print help snippet to tell you what are the args of the function, what it returns, ...

Try it, it's :heart: !

Small thing, but put a LICENSE to your project (if you want it to be free, MIT License is a good choice)

If you want to go further in devellopping pattern, you can write test for your code.

you could easily test with the pytest framework
here it's pretty easy to make functionnals tests. Run your code on sample picture and compare the output csv with a reference csv which contains the picture data. Do this on some sample images.
See https://docs.pytest.org/en/stable/
See https://openclassrooms.com/fr/courses/6100311-testez-votre-code-java-pour-realiser-des-applications-de-qualite/6616481-decouvrez-les-tests-dintegration-et-les-tests-fonctionnels (it's in a Java tutorial but there is no Java here, it's only the principles)

Be sure that it's all about the form and not about the content. The goal of this remarks is simply to make you aware of the existence of such things (ignored by far too many programmers and teachers) and to step up your code quality :smile:

Thank you so much for these directions !
In fact, it is quite difficult to have some quality codes when beginning, there are a lot of things to know in order to make a script simple and clear, for both the user and the developer...
So I'll try to follow your advices as much as I can for my future projects, and of course starting by improving this program. 😉
Moreover, I'll leave this issue as opened if you or someone else has other tip to share 😁


Anticipate packages

Today, one can publish a cargo-component generated component to a registry and then add it as a dependency in another  cargo-component project.  However, the consuming component's wit will not refer to a foreign package if an interface is imported, but instead will define that interface inline.  The example below should help make this clear.
Given a simple component with the following wit:
package component:hello;

interface greeter {
  hello-world: func() -> string;
}
/// An example world for the component to target.
world example {
  import greeter;
  export greeter;
}

That is added via cargo-component add to another component, we can reference it in the project that is added like so:
use bindings::hello_greeter::hello_world;
use bindings::Guest;

struct Component;

impl Guest for Component {
    /// Say hello!
    fn goodbye_world() -> String {
        hello_world()
    }
}

However, when printing out the wit of the compiled component, the greeter interface appears as follows:
package root:component;

world root {
  import hello-greeter: interface {
    hello-world: func() -> string;
  }
  import<EMAIL_ADDRESS>  import<EMAIL_ADDRESS>  import<EMAIL_ADDRESS>  import<EMAIL_ADDRESS>  import<EMAIL_ADDRESS>  import<EMAIL_ADDRESS>  import<EMAIL_ADDRESS>  import<EMAIL_ADDRESS>  import<EMAIL_ADDRESS>  import<EMAIL_ADDRESS>
  export goodbye-world: func() -> string;
}

We can see that it is not surfaced to the wit that this interface is defined by the dependency.  The use case I specifically am motivated by is in is docs gen so that a UI can link to the package where the type is actually defined.
These changes will produce a binary with the following wit
world root {
  import wasi:hello/greeter;
  import<EMAIL_ADDRESS>  import<EMAIL_ADDRESS>  import<EMAIL_ADDRESS>  import<EMAIL_ADDRESS>  import<EMAIL_ADDRESS>  import<EMAIL_ADDRESS>  import<EMAIL_ADDRESS>  import<EMAIL_ADDRESS>  import<EMAIL_ADDRESS>  import<EMAIL_ADDRESS>
  export goodbye-world: func() -> string;
}

For the motivating use case, this would surface sufficient information for robust docgen.
Note that as it stands, in order for these changes to function properly would also require that the wit-bindgen branch referenced gets merged, which has the side effect of prepending the namespace to the module exposed in rust bindings, and the rust import would then look like so
use bindings::<namespace>_hello_greeter::hello_world;

I commented out a test that I'm still trying to get to work that would verify we get the expected results when publishing components to a registry.  But I have tested against real components and it works.
I also brought over the test changes from here, and if these changes end up feeling like the correct approach, I can just go ahead and close the other PR.
Can open up the wit-bindgen PR also once it's confirmed that this approach is fine and/or get good tests pushed.


Stock part with price zero

Stock with purchase price zero doesn't show the price (zero) this is useful when part came from a sample order.

To clarify - do you mean the price has been manually entered as zero, or the price has been left blank?
Can you share a screenshot of where you are seeing the issue?

I mean setting the part with explicitly zero cost doesn't get the price to show up as zero it is instead hidden.


[Web Portal] The url in ssh info needs to be quoted

#2633

Coverage remained the same at 53.419% when pulling 46f012adf221a8f54801585822e8957a8627b92f on qinsu/url into 09c1bf1088b1c189f9b23c36272fec69aed54edc on master.


Cannot read property 'upstream' of undefined

i upgraded my node-apn module from 1.7 to 2.1.1 version but I get this error while i am sending a notification:
TypeError: Cannot read property 'upstream' of undefined
at Connection._send (/home/sysadmin/projects/server-notif-prev/node_modules/http2/lib/protocol/connection.js:314:27)
at runCallback (timers.js:574:20)
at tryOnImmediate (timers.js:554:5)
at processImmediate as _immediateCallback
But still receve notification from devices.

Did you change any of your code while making the upgrade?

Despite changing the function which send norification.
` sendNotificationToApns() {
    let treatResponse = response => {
        for (let i in response.sent)
        {
            if(Object.prototype.hasOwnProperty.call(response.sent, i))
            {
                let token = response.sent[i];
                console.green(`Notification transmitted to:  '${token.device}'`);
            }
        }

        for (let i in response.failed)
        {
            if(Object.prototype.hasOwnProperty.call(response.failed, i))
            {
                let failed = response.failed[i];

                if(failed.error)
                {
                    console.red(`Notification caused error for device ${failed.device} for Reason`, failed.error.Error);

                }
                else
                {
                    console.red(`Notification failled :  ${failed.status}  for device ${failed.device} for Reason: '${failed.response.reason}'`);

                }
            }

        }
    };

    let pusherList = this.toApns;
    let apn = require("apn"),
        path = require('path');

    let apnOptions = {
        token: {
            key: path.join(APP_ROOT_PATH, "/../private/common", "APNSAuthKey_XXXXXXX.p8"),
            keyId: "XXXXXXX",
            teamId: "XXXXXX"
        },
        production: PROD === true
    };

    let apnProvider = new apn.Provider(apnOptions);

    let notif = new apn.Notification();
    notif.expiry = Math.floor(Date.now() / 1000) + this.duration;

    notif.payload = this.playload;
    notif.body = this.iosBody;
    notif.setPriority(/*this.apnsPriority*/10);
    notif.topic = "com.dealerssolution.liveauction";

    if(this.ca === true)
    {
        notif.contentAvailable = true;
        notif.alert = undefined;
        notif.sound = undefined;
        notif.badge = undefined;
        apnProvider.send(notif, pusherList).then( (response) => {
            treatResponse(response);
        });

        apnProvider.shutdown();
    }
    else{
        notif.contentAvailable = false;
        notif.alert = `${this.title}\n${this.iosBody}`;
        notif.sound = this.iosAlertSound;

        console.error(pusherList);
        console.error('ok');
        apnProvider.send(notif, pusherList).then( (response) => {
            treatResponse(response);
        });

        apnProvider.shutdown();

    }

}`

I think it was related to the "http2" module .So I updated the module from 2.0.0 version to 3.3.6 version and error has disappeared

We actually use a custom fork of the http2 module because the official version has leaks, see https://github.com/molnarg/node-http2/pull/200

hey! i got the same error. it droves me crazy until i started to comment stuff and suddenly it worked. i had a code which modified the prototype of arrays. it's weird but as soon as i removed it (didn't need it, it was just part of legacy code) it worked as expected. hope it helps.

I spend almost 2 days tracking this down, we are using agenda "cronjobs" and therefore this impacted the whole process (due to the reason it crashes).
anyways: what I did was forking http2 - implementing the code changes as mentioned by @florianreinhart  and added another fix:
https://github.com/simllll/node-http2/commit/542166028c400fef935004e07ffc4924763383b9
finally it started working again and I got APN error returns .. which turned out was good, because I didn't provide a "topic". I haven't tested it, but I guess this error could be also related with the "error handling" part...?
so my package.json has now:
"apn": "simllll/node-apn",
which works for now
regards

Thanks @simllll! We should update our custom fork with your changes, if your new PR #222 isn't merge into node-http2 any time soon.

@simllll as there has been no response to your PR either, could you create a PR against https://github.com/node-apn/node-http2 with your changes?

just did

I have just released version 2.1.2, which includes your changes.

@iamyellow thank you thank. I had extended array with flatMap (why doesn't arrays have flatMap) and that was the cause of the HTTP2 crash.


Add "packaging" dependency to pyproject.toml

There has been a runtime dependency on packaging since ef8e7fd, but it's not listed in pyproject.toml. This caused an error when I tried to build a conda package for probeinterface.
packaging.version.Version was also imported but not used in io.py.

thanks!!!


Sending array of objects, rendering with {{#each}} block in template

I am trying to list products  that has (name,single_quantity,price,subtotal)
Here is my code:
        $products = [];
        do {
            $subtotal = $order['urun_adet'] * $order['kitap_fiyat'];
            $products[] = [
                'name' => $order['kitap_ad'],
                'singular_price' => $order['kitap_fiyat'],
                'quantity' => $order['urun_adet'],
                'subtotal' => $subtotal,
            ];
        } while ($order = $stmt->fetch(PDO::FETCH_ASSOC));
        $variables['products'] = json_encode($products);
        echo "
";
        print_r($variables);
        echo "
";

Array
(
    [products] => [{"name":"Kelo\u011flan - \u015ea\u015fk\u0131nlar \u00dclkesinde","singular_price":8.95,"quantity":2,"subtotal":17.9}]
)

later in sendMail function
    foreach ($variables as $key => $value) {
        $email->getHeaders()->add(new TemplateVariableHeader($key, $value));
    }

but no values are displayed. Here is the template part :
{{#each products}}
{{name }}{{singular_price}}€{{quantity}}{{subtotal}}€
{{/each}}

here is what test data looks like ( test data on mailtrap editor works )
{
  "products": [
    {
      "name": "Test_Products_Name",
      "singular_price": "Test_Products_Singular_price",
      "quantity": "Test_Products_Quantity",
      "subtotal": "Test_Products_Subtotal"
    }
  ],
}

in order to see what actually passed to products, i remove {{#each}} block and directly display {{products}} in template and send email from my code :
[{"name":"Kelo\u011flan - \u015ea\u015fk\u0131nlar \u00dclkesinde","singular_price":8.95,"quantity":2,"subtotal":17.9}]

is seen.
composer.json:
{
    "require": {
        "stripe/stripe-php": "^15.4",
        "phpmailer/phpmailer": "^6.9",
        "railsware/mailtrap-php": "^2.0",
        "symfony/http-client": "^7.1",
        "nyholm/psr7": "^1.8"
    },
    "config": {
        "allow-plugins": {
            "php-http/discovery": true
        }
    }
}

@sametbirol Hello.
I can see from your example that the "products" variable is successfully passed and everything is fine with it.
I don't understand why you do json_encode in your example, if you need to send all variables by array and SDK will do json_encode with symfony email before sending it.
Try not doing json_encode and pass all variables as an array and report the result please here

Closed as the problem was with user input, not with the PHP SDK


Begin merging Callers API into CrossReferences [phab:D914]

Created by zarko at 2016-05-28 00:20:20:
This diff changes xref.proto to look as though Callers has been merged
into CrossReferences. In particular, it:

makes Printables top-level messages
replaces Anchors in CrossReferenceReply with RelatedAnchors,
which contain Anchors, Printable display names, and a list
of specific sites (also Anchors)
adds a CallerKind enum to CrossReferencesRequest to specify
what kind of callgraph information to return.

The merged API lacks some fields that are currently in Callers (but
that are not currently hooked up to anything). Should these be necessary,
we can always add them to RelatedAnchors at a later time.
There should be no functional changes.

shahms accepted this revision at 2016-05-31 16:02:37

zarko wrote at 2016-05-31 17:45:35:

Merge.

zarko closed via commit 00e481579dbe97aa2c56a77eea07a0d4f9801548 at 2016-05-31 17:46:04


When updating a font, it disappears from those installed and appears next to those that were not installed.

Source information
All of them.
Source language
Portuguese Brazilian and Multiple.
Steps to reproduce
When I click on update a font, instead of installing the update it apparently uninstalls the font, forcing me to install it again.
Expected behavior
That install the update without uninstalling the source.
Actual behavior
It is necessary to reinstall the source when trying to update.
Mihon/Tachiyomi version
0.16.5
Android version
Android 12
Other details
No response
Acknowledgements

[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open or closed issue.
[X] I have written a short but informative title.
[X] I have updated the app to version 0.15.3.
[X] I have updated all installed extensions.
[X] I have tried the troubleshooting guide.
[X] If this is an issue with the app itself, I should be opening an issue in the app repository.
[X] I will fill out all of the requested information in this form.

See: Cannot install updated extensions


Allow sts assume role in 'AWS GovCloud' partition

Fixes#93. This fix will allow user to run sts assume role on other aws partitions such as aws-us-gov by passing an optional parameter arn_partition to boto3_cached_conn function or iter_account_region decorator calls.
This also addresses UnsupportedArgument exception raised by flagpole -> get_acceleration function in aws-us-gov partition for lack of S3 Acceleration service.
https://github.com/Netflix-Skunkworks/cloudaux/blob/ace3daf4ce4205a275fe3f7fa119fc4affc6f5c2/cloudaux/orchestration/aws/s3.py#L227

Coverage decreased (-0.05%) to 26.976% when pulling 634b724492ffc42f6c71b6dbb5131e36baaf4fd7 on PritamDutt:sts-aws-govcloud into ace3daf4ce4205a275fe3f7fa119fc4affc6f5c2 on Netflix-Skunkworks:master.

Can you bump up the version number to 1.5.9 in https://github.com/Netflix-Skunkworks/cloudaux/blob/master/cloudaux/about.py#L16?

PR Looks really good to me.  Thank you @PritamDutt .
Let us know if it's easy for you to bump the version number as @mikegrima said, or we can do it if you need.

Thanks @mikegrima. I have bumped version to 1.5.9

Pushed to PyPI.


Undesirable comments with (//

The characters (// seems to be interpreted by fstar-mode as a comment initiator which cannot be terminated (It displays everything until the end of buffer as commented).

Cute. Let me have a look :) (and thanks for spotting that!)

This is trickier than I expected (see http://lists.gnu.org/archive/html/emacs-devel/2017-01/msg00144.html for background).
I can think of a workaround, but I'd also like to know how pressing this is (given that there exists a reliable workaround of adding a space between the ( and the /).  IOW, do you regularly run into this issue?

I've encountered this problem before and worked around it by restructuring the source (adding a space, moving the comment to other place), or switching to a (* ... *) style comment.
It's a curious behaviour, but I'd consider a fix low priority since it's easy to work around.

Thanks for the feedback! It's certainly annoying (and surprising, too — I was expecting this to just stem from a typo, but it's actually a pretty deep Emacs issue)

Well it is sometimes produced by the new printer/reindenting tool that we would like to use automatically on fstar sources so it is a little annoying  (of course I can add a space before each comments but I would prefer not doing so if possible).

Ok, I'll look into a fix.

Should be good; please confirm the fix when you have time :)

Yep, thank you very much


Syntax error on correct file

When running statix on this file - which is otherwise valid and working - I get this output:
[bin/src/config.rs:79] [self.ignore.as_slice(), extra_ignores].concat() = []
[E00] Error: Syntax error
    ╭─[./lib/default.nix:69:52]
    │
 69 │ ╭─▶       ++ ifExists ../users/${username}/${hostname}.nix;
 71 │ ├─▶ }
    · │
    · ╰─────── Unexpected TOKEN_PATH at 1879..1892, wanted any of [TOKEN_IDENT]
────╯
[E00] Error: Syntax error
   ╭─[./lib/default.nix:1:1]
   │
 1 │ { inputs, ... }:
   · │
   · ╰─ Unexpected end of file, wanted any of [TOKEN_IDENT]
───╯
[E00] Error: Syntax error
   ╭─[./lib/default.nix:1:1]
   │
 1 │ { inputs, ... }:
   · │
   · ╰─ Unexpected end of file, wanted any of [TOKEN_SEMICOLON]
───╯
[E00] Error: Syntax error
   ╭─[./lib/default.nix:1:1]
   │
 1 │ { inputs, ... }:
   · │
   · ╰─ Unexpected end of file
───╯
[E00] Error: Syntax error
   ╭─[./lib/default.nix:1:1]
   │
 1 │ { inputs, ... }:
   · │
   · ╰─ Unexpected end of file, wanted any of [TOKEN_SEMICOLON]
───╯
[E00] Error: Syntax error
   ╭─[./lib/default.nix:1:1]
   │
 1 │ { inputs, ... }:
   · │
   · ╰─ Unexpected end of file
───╯

Errors disappear if the arg in ++ ifExists ../users/${username}/${hostname}.nix; is quoted as string, but then the code does not work anymore...
Did I miss something ?

I also got a similar case which it fails.

One interesting finding is that statix check fails but statix fix works.

Very simple file to reproduce:
rec {
  a = "test";
  p = ./test/${a}.nix;
}

It seems to not like the interpolation in the path. @josqu4red You can work around that without converting the whole path to a string by appending to at least one static component: ./. + "/test/${a}.nix"


Move price to be an optional arg in make_order_request

This change:
https://github.com/Voyz/ibind/commit/bebdf5157a772ff32d8b9298afcfcd5b0a01aba4#diff-0b021b88fb62714e150cc0b534c535173f77f29785a85da9549ec1f2586c8b85R37
exposes the fact that price is a required argument, which doesn't make sense for market orders - I think it makes sense for it to be made optional if the intention is to use market orders as the base case in examples.

Very well spotted, thanks for the contribution! 👏

Released v0.1.7 with that fix, thanks!


bnx2x firmware loading error - no network after boot

RancherOS Version: (ros os version)
v1.5.3
Where are you running RancherOS? (docker-machine, AWS, GCE, baremetal, etc.)
baremetal: HP ProLiant BL460c G6 Server Blade
No network connection due to failure of loading NIC firmware (NIC model: Embedded NC532i Dual Port Flex-10 10GbE).
bnx2x: [bxn2x_init_firmware:13564(eth1)]Can't load firmware file bnx2x/bnx2x-e1h-<IP_ADDRESS>.fw
bnx2x 0000:02:00.0: Direct firmware load for bnx2x/bnx2x-e1h-<IP_ADDRESS>.fw failed with error -2
Could it be that there is some issue with firmware source and initrd was build without it? Issue #1881 might be connected.
Screenshots from boot process: https://imgur.com/a/EpscPh1

The bnx2x/bnx2x-e2-<IP_ADDRESS>.fw firmware should be in kernel-extras in ROS v1.5.3.
The kernel-base in v1.5.1 has that firmware, but not in v1.5.3. Because ROS defaults to streamlining the kernel and firmware, only the latest version of each firmware driver is reserved for ROS. When we built v1.5.3, the bnx2x driver was updated in the firmware upstream.
[root@ip-172-31-47-29 bnx2x]# ls -ahl /proc/1/root/usr-v1.5.1/lib/firmware/bnx2x/
total 668
drwxr-xr-x    2 root     root        4.0K Feb 11 17:08 .
drwxr-xr-x   11 root     root        4.0K Feb 11 17:08 ..
-rw-r--r--    1 root     root      166.1K Feb 11 17:08 bnx2x-e1-<IP_ADDRESS>.fw
-rw-r--r--    1 root     root      174.8K Feb 11 17:08 bnx2x-e1h-<IP_ADDRESS>.fw
-rw-r--r--    1 root     root      313.4K Feb 11 17:08 bnx2x-e2-<IP_ADDRESS>.fw

[root@ip-172-31-47-29 bnx2x]# ls -ahl /proc/1/root/usr-v1.5.3/lib/firmware/bnx2x/
total 668
drwxr-xr-x    2 root     root        4.0K Jul 11 06:34 .
drwxr-xr-x   11 root     root        4.0K Jul 11 06:34 ..
-rw-r--r--    1 root     root      165.9K Jul 11 06:34 bnx2x-e1-<IP_ADDRESS>.fw
-rw-r--r--    1 root     root      174.1K Jul 11 06:34 bnx2x-e1h-<IP_ADDRESS>.fw
-rw-r--r--    1 root     root      314.7K Jul 11 06:34 bnx2x-e2-<IP_ADDRESS>.fw

You can copy that firmware files from here.
Just put them into /lib/firmware/bnx2x/, try to enable the NICs.

This server doesn't have disks yet, I use iPXE.
Can this be done with iPXE?
Was my previous comment deleted?

This is hard to do with iPXE only.
You probably should have that firmware built-in, but you need to customize the initrd file.
You can refer to these code lines. It can help you modify the initrd file.
https://github.com/rancher/os/blob/3fac5f7604e1e9d49ab44e246a067c5b168a82e2/scripts/tools/flush_crt_iso.sh#L47-L57

Uh oh, I have the same issue.  Is there a way to resolve this without resorting to rebuilding the initrd?  Several of my servers are fine (due to slightly different hardware configurations), but one is failing this way.  Also iPXE booting.

Eh, not too bad.  It took about 45 minutes to clone the firmware repo, unpack, copy one file, repack the initrd.  Although the above instructions are technically accurate they aren't very helpful.  Anyone interested in actually doing this will get more mileage out of this link instead.  https://www.thegeekstuff.com/2009/07/how-to-view-modify-and-recreate-initrd-img/

We had the same issue with Dell R720 Servers. I still do have understanding problems why this happens because the network cards have been updated to the last possible revision. But somehow firmware ... .1.0 is requested instead of .11.0.
In my eyes there's a misalignment between kernel driver and provided firmware file in rancheros.
And that issue still applies to rancheros-1.5.6.
Anyway, to make this reproducible with forthcoming releases, I put some work in it -  here's a patchscript, heavily based on @niusmallnan's last answer:
#!/bin/bash
# adds missing firmware files into RancherOS ISO.
# needs the following programs ( install using apt etc. if missing)
# - xorriso
# - cpio
# - wget
# - isolinux
# rest should be available in every linux installation
# computer where script runs needs internet. otherwise put firmware files in $DRIVERS_DIR (see below)

#usage:
# add-bnx2x.sh --iso <path/to/rancheros.iso>
# output iso will be in /tmp/new/new_rancheros.iso

set -ex

BASE_DIR=/tmp
ORIGIN_DIR=/tmp/origin
NEW_DIR=/tmp/new
WORK_DIR=/tmp/work
DRIVERS_DIR=/tmp/drivers

rm -rf ${ORIGIN_DIR} ${NEW_DIR} ${WORK_DIR} ${DRIVERS_DIR}
mkdir -p ${ORIGIN_DIR} ${NEW_DIR} ${WORK_DIR} ${DRIVERS_DIR}

while [ "$#" -gt 0 ]; do
    case $1 in
        --iso)
            shift 1
            ISO_FILE=$(readlink -f $1)
            ;;
        *)
            break
            ;;
    esac
    shift 1
done

#get the missing drivers
wget https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/bnx2x/bnx2x-e1h-<IP_ADDRESS>.fw -P ${DRIVERS_DIR}
wget  https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/bnx2x/bnx2x-e2-<IP_ADDRESS>.fw -P ${DRIVERS_DIR}
wget https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/bnx2x/bnx2x-e1-<IP_ADDRESS>.fw -P ${DRIVERS_DIR}

# copy the iso content
mount -t iso9660 -o loop ${ISO_FILE} ${ORIGIN_DIR}
cp -rf ${ORIGIN_DIR}/* ${NEW_DIR}

# copy the initrd file
INITRD_NAME=$(basename ${ORIGIN_DIR}/boot/initrd-*)
cp -r ${ORIGIN_DIR}/boot/initrd-* ${WORK_DIR}/

# update and rebuild the initrd
pushd ${WORK_DIR}
mv initrd-* ${INITRD_NAME}.gz
gzip -d ${INITRD_NAME}.gz
cpio -i -F ${INITRD_NAME}
rm -f ${INITRD_NAME}

#put additional drivers (Broadcom NetXtreme2x) into it's place
cp ${DRIVERS_DIR}/* ${WORK_DIR}/usr/lib/firmware/bnx2x/

find | cpio -H newc -o | gzip -9 > ${NEW_DIR}/boot/${INITRD_NAME}
popd

pushd ${NEW_DIR}
xorriso \
    -as mkisofs \
    -l -J -R -V "${DISTRIB_ID}" \
    -no-emul-boot -boot-load-size 4 -boot-info-table \
    -b boot/isolinux/isolinux.bin -c boot/isolinux/boot.cat \
    -isohybrid-mbr /usr/lib/ISOLINUX/isohdpfx.bin \
    -o new_$(basename ${ISO_FILE}) .
popd

# copy out
umount ${ORIGIN_DIR}

unfortunately, the above script doesn't help too much, while installing it loads the faulty image from the net and leaves the server without network after rebooting :(


take too many ram...

New Issue Checklist

[x] Use the latest version of CalendarKit
[x] I've read the Contribution Guidelines
[x] I've searched for existing GitHub issues

Issue Description
Code I'm using with CalendarKit

take too many ram...

Result I am trying to achieve

[INSERT API OR UI MOCKUPS HERE]

@daveleenew does it? Could you show the memory utilization?


Fix scene PRE_UPDATE handlers removed at scene shutdown

This PR

Fixes a bug

If you added a listener to scene PRE_UPDATE it would get removed when the scene was shut down (e.g., restarted).
It happened because UpdateList#shutdown was unregistering undefined so inadvertently clearing the event.

👍


mysql 0.4.3 "array size too big" for raw results

Since mysql2 v0.4.3 a simple Article.facets('non_existent_text') raises ArgumentError: array size too big when no results where found.
Traced it down to https://github.com/pat/thinking-sphinx/blob/master/lib/thinking_sphinx/facet.rb#L13 whereraw seems to be a normal Mysql::Result but any sort of raw#first or raw#each calls result in said ArgumentError
This seems to be caused by brianmario/mysql2@5189cfee45872a10cf54afbfcd721de12b2ae36e but my C-fu isn't high enough for further elaboration

UPD: this boils down to ThinkingSphinx::Search#raw
> Article.search('lorem ipsum').raw.first
Sphinx Query (0.9ms)  SELECT * FROM `article_core` WHERE MATCH('lorem ipsum') AND `sphinx_deleted` = 0 LIMIT 0, 20
  Sphinx  Found 0 results
NoMemoryError: failed to allocate memory

I'm sure this has something to do with accessing the freed memory
Again, this happens only when no results where found.

Well that's certainly frustrating! Sounds like it might not be a bug in TS itself, but could be either mysql2 or Sphinx itself. Of course, not ruling out that the problem may lie in my code!
Which version of Sphinx are you using?

I'm using Sphinx 2.2.10.

Ok, this is not a thinking_sphinx bug...
> client = Mysql2::Client.new(host: 'db', password: 'root')
> raw = client.query('SELECT * FROM i_rails.schema_migrations WHERE 1 = 0 LIMIT 1')
> raw.to_a
=> []
> raw.first
ArgumentError: array size too big

I think it might actually be a TS bug. Just pushed a commit to the develop branch that seems to fix things: 42f5c859cbc5068b876345dea37623caab11f4e2.

If I get the issue correctly, this won't fix the issue.
I'll test the develop branch and report back in

Nope, still not working. However what does fix this is context[:raw]     = context[:results].dup
As I see it, mysql2 calls free on the first call to raw_results, and all subsequent calls to raw_results#free result in memory access failure

Updated in f8914931580f1c365a505b73b0ea6e920b2dbffd :)

The original issue is also fixed in mysql2 master branch by brianmario/mysql2#741