How to turn off Response Compression for certain controllers?

Hi,
We are actively using ASP.NET core for production sites. We are super happy about the Response Compression and overall performance. However, for some controllers we need to turn off the compression - specifically in our case, Bing and Google Webmaster Tools do not support Gzip/Brotli compressed sitemaps.
Question: Is there a directive we can add specifically to prevent certain compression of certain pages/controllers to accommodate Bing/Google? e.g.
[ResponseCompression=false]
[Route("/sitemap.xml")]
public async Task<IActionResult> IndexAsync() {
// code here.
}

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

ID: 9795b92f-db24-8f1f-88c0-c36666d3526f
Version Independent ID: 2d56d9b6-3d7b-0204-6c08-8e584fccecc2
Content: Response compression in ASP.NET Core
Content Source: aspnetcore/performance/response-compression.md
Product: aspnet-core
GitHub Login: @guardrex
Microsoft Alias: riande

Bing and Google Webmaster Tools do not support Gzip/Brotli compressed sitemaps.

If they don't support them, then requests that they make won't specify them in the Accept-Encoding header and thus the middleware won't compress. Have you looked at their requests to confirm what they're sending in Accept-Encoding?

I'll close as answered.

@guardrex - that is the official message I got from being in contact with them, basically one of the Bing support engineers wrote "Bing doesn't support gzip..." - which I find odd in all cases.

That should be ok then ... I mean they aren't going to make requests with the Accept-Encoding header with a gzip or brotli value, so the middleware won't compress into them ... the app should just send back a plain application/xml response (if that's what ur sending back ... i.e., sitemap). You should be :+1:.

@guardrex Okay I understand that.

that was just the response I got from Bing; we submitted a bunch of sitemaps generated in ASP.NET Core, and they were failing in the "Bing Webmaster" interface. A Bing engineer told us, that it is because of Gzip compression. Oddly enough, some other sitemaps are working with Bing - and they are generated by the same code with the same compression algorithm available.

I appreciate your comments though 👍

Hum ... that's strange.
I'd capture that header from them ... log it ... inject an ILogger<T> into that controller and something like the following in the method that builds your sitemap ...
_logger.LogError(
    $"Sitemap request: Accept-Encoding: {Request.Headers["Accept-Encoding"].ToString()}");

For down and dirty logging, note that I'm logging Error level here to make sure it gets logged when the app is in the Production environment with the default logging levels.
It would be bad for them to submit the header with, for example, gzip, and then reject a compressed sitemap sent to them. That would be kind'a mean. :smile:
Otherwise, your responses aren't compressed by the middleware, so there would be something else causing them to be rejected.

Hehe, it would be mean indeed but I suspect it is something else. It is very strange indeed - and we even asked a few times "are you really sure it is compression problem, because some of the other sitemaps are indeed working?".
For this particular sitemap, it is bit larger - something like 1 mb, and the others 200kb - 500kb. Bing tool also reports a count of all the links in that very same failing sitemap.
Nice thinking there with the logger - I will definitely try that suggestion and will keep you in the loop just for closure, thanks @guardrex  :)

Sure thing ... and to check the app itself, try a tool like Fiddler or Postman. Send and don't send the Accept-Encoding header in some requests for the sitemap ... you'll see that the middleware either compresses or doesn't compress the response based on the header value(s) sent.
Good luck with it .... Hang in there! I'm pull'in for ya!

Indeed, it looks like gzip, deflate is supported by Bingbot:
  Wed, 06 Mar 2019 04:04:13 GMT

  #### SITEMAP REQUEST, <IP_ADDRESS> ####
  Cache-Control: no-cache
  Connection: Keep-Alive
  Pragma: no-cache
  Accept: */*
  Accept-Encoding: gzip, deflate
  Host: www.example.com
  User-Agent: Mozilla/5.0 (compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm)
  MS-ASPNETCORE-TOKEN: 821d74ca-e8a6-41ae-a9ff-e1c5609e92de
  X-Original-Proto: http
  X-Original-For: <IP_ADDRESS>:54691

Response from server using fiddler:
HTTP/1.1 200 OK
Transfer-Encoding: chunked
Content-Type: text/xml
Content-Encoding: gzip
Vary: Accept-Encoding
Server: Kestrel

Will await Bing engineer's response ;)

@guardrex - finally got an answer from Bing engineer:
Compression was not the issue, we had 3 duplicate links out of 12000 links.
Thanks again 🥇


Remove All References to etcd

This PR removes all references to etcd from the binaries and configuration files. The only reference left is in the cross-domain transaction code. It will be removed along with this transaction object soon.
Partial #522.

Do you think we should leave this to make adding leader election easier?

I think it's better to have a clean code now and then we can add whatever we need for master election. This is better than leaving everything now and then try to trim it and end up leaving behind things we don't need.


Support for quote-less attributes.

HTML standard permits some attributes to not be surrounded with quotes. This is not currently supported though.

Great. Thank you.

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

Thanks for merging and releasing this so quickly. Cheers!


AKPlayer Pause / Resume Capability?

Hi,
Just started using AudioKit and very excited about its potential.
I saw an indication in AKAudioPlayer that perhaps AKPlayer is the better / preferred way to play audio files going forward.  However, it currently does not appear to support pause / resume.  I was wondering if this is intentional / "will not implement" or if it's just pending future work as the class is still relatively new?
If it's not intentionally omitted, would you be open to a PR implementing that functionality?
Thanks!

We're always interested in PRs!  I think a pause and resume file would be cool, but I'll also let @ryanfrancesconi chime in here.

I can add that for you.

Awesome, thanks!  Turns out I didn't have as much time available as I thought I did to try to add it myself.

Sorry, didn't notice this till today. Will just take a sec.

and thanks for pointing out the missing call. Wasn't something I need as my players are all driven by UI components.

No worries, 3 days is way faster than many projects I've worked with elsewhere!  Thanks for the quick follow-up and implementation - really appreciate the responsiveness and the effort on the project in general :+1:


Modified multiple level inheritance.

Now for multiple level inheritance it is not required anymore to
redefine the block.
The previous behaviour is still supported. The test still succeed and have been moved to the file ExtendsManyTimesWithBlockTest.java.
The new behaviour puts the override operations on a stack and execute them in reverse order from the base template.

Thank you for the good patch.
But it contains document & build.gradle changes.
I think thouse changes should be reverted except your developer information.

My bad, i tought the pull stopped to my first commit. What should i do? Can i edit the pull request to include only the first commit?

As an alternative, is It possibile ti create a new branch from my First commit in the master branch and issue the pull request from that branch?

The new pull request only contains the first two commits. It should be fine, but let me know if are there any issues. Thanks


update unit tests

I'm not sure about this approach
https://github.com/Nimblesite/nimble_charts/blob/93ed6f3caa267fc3387622637e923165cb0a9f4d/charts_common/test/chart/common/behavior/selection/lock_selection_test.dart#L115

@abdushakoor12 thank you very much!

I'm not sure about this approach
https://github.com/Nimblesite/nimble_charts/blob/93ed6f3caa267fc3387622637e923165cb0a9f4d/charts_common/test/chart/common/behavior/selection/lock_selection_test.dart#L115

I'm going to revert the change in this file because it may be altering the behavior, but at some point, I'll do some investigation and hopefully reinstate it


Display for Manual Version Review gives links in two places

Publications that have more than one file associated with them are showing up oddly in the Manual Version Review list. Each file is showing up in its own line, which is what we want, with a link to edit the metadata for the file. But links to both files show up in that row. That means for a publication with two files, four links to the files appear.
I'm attaching a screenshot illustrating this. I will try to leave this live on QA for this publication.

If this is very difficult to fix, we might want to hold off given that it impacts a small number of publications. But with this bug it would be very easy for an admin to edit the Version data for the wrong file.

Tagging @ajkiessl since this is a bug.


PowerToys Run Bug: Write anything after start and close window.

Microsoft PowerToys version
0.41.4
Running as admin

[X] Yes

Area(s) with issue?
PowerToys Run
Steps to reproduce
https://mega.nz/file/7o91GAiB#4zeLoxJLu-JP139i6URefXVV2U7SOzPefAd1I7vvgwo
✔ Expected Behavior
Cleaning space after closing. Clear are enabled.
❌ Actual Behavior
All text just leave as it.
Other Software
No response

@ShmigaVolodia
Thank you for opening the issue. Can you provide more description here? Some screenshots would be great!

I discovered one more thing: nothing gets cleared when command or search
results are empty. Also no screenshot, sorry :>
On Wed, 7 Jul 2021, 7:19 pm Mykhailo Pylyp, @.***>
wrote:

@ShmigaVolodia https://github.com/ShmigaVolodia
Thank you for opening the issue. Can you provide more description here?
Some screenshots would be great!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/microsoft/PowerToys/issues/12261#issuecomment-875741838,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AUTYL7D3QZ37GVHIMTMANKDTWR5BTANCNFSM4763V3XQ
.

@ShmigaVolodia
Can you elaborate on what you mean by Cleaning space after closing. Clear are enabled.? Are you talking about Clear the previous query on launch?

yes, Clear the previous query on launch.
On Wed, 7 Jul 2021, 7:31 pm Mykhailo Pylyp, @.***>
wrote:

@ShmigaVolodia https://github.com/ShmigaVolodia
Can you elaborate on what you mean by Cleaning space after closing. Clear
are enabled.? Are you talking about Clear the previous query on launch?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/microsoft/PowerToys/issues/12261#issuecomment-875750883,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AUTYL7BXC4RSXPUCWTPLIITTWR6ODANCNFSM4763V3XQ
.

Can not reproduce it. If Clear the previous query on launch is checked a search query is cleared on every reopening.

I did notice something when trying to reproduce this - the first time you launch after checking the box the search box will still have the previous search string in it, if there was a previous search string.  Subsequent launches will have a blank search box.

@ShmigaVolodia - can you please confirm if the existing behavior is satisfactory?

I did notice something when trying to reproduce this - the first time you launch after checking the box the search box will still have the previous search string in it, if there was a previous search string. Subsequent launches will have a blank search box.

It is known


Support password supported sudo for system user

Someone brought this up on community again - https://github.com/StackStorm/st2/issues/2070.
Three people on community say that their security teams are against a passwordless sudo for stanley. We should look into password protected sudo for stanley and allow sudo password to be passed via an argument or via a rule (password saved in encrypted data store). We also have to document some of these cases for people to get familiar with.

In both Ansible and Chef playbooks there is community contributed option to avoid setting sudo for stanley user.
Seems very popular, a lot of users are not allowed to enable sudo in their orgs/environments and they just disable it:

https://github.com/stackstorm/chef-stackstorm#system-user
https://github.com/stackstorm/ansible-st2#variables

So yeah, this looks like an option:

and allow sudo password to be passed via an argument or via a rule

:+1:

Hello Team,
It would be good if we can incorporate passing sudo password as an argument to the remote action runner.  Basically we want to be as secure as possible in the production servers. Can you please confirm when this feature would be available at least for enterprise edition?

@sibirajal

Can you please confirm when this feature would be available at least for enterprise edition?

No specific plans at the moment. But the code is open source, and if others contribute it, it will probably get merged


Gather Weave Net plugin and proxy info from report

Instead of using Docker, because after Weave Net 2.0 there are no proxy nor
plugin containers.
This has the drawback of not detecting the plugin/proxy in systems running
Weave Net < 2.0 , but I think we can live with it.
Fixes #2634

@2opremio did you check that this gets rid of the docker daemon log entries shown in #2628? Both for Weave Net 2.0 and pre-2.0 (not essential, but would be lovely).

did you check that this gets rid of the docker daemon log entries shown

Yes it does.


Three way partitioning in cpp

💥 Proposal
I want to add a problem with three way partitioning of an array around a given value.
I will use the dutch national flag algorithm to solve this problem.
Have you read the Contributing Guidelines on Pull Requests?
Yes

/assign

DNF Problem already available.


add orgs and settings for vaulthealth and innolitics. Updates HHS Pro…

This PR add new organizations and senders for VaultHealth and Innolitics and updates HHs Protect with new senders.
If you are suggesting a fix for a currently exploitable issue, please disclose the issue to the prime-reportstream team directly outside of GitHub instead of filing a PR, so we may immediately patch the affected systems before a disclosure. See SECURITY.md/Reporting a Vulnerability for more information.
Test Steps:

run ./prime data command locally with attached test files.

Changes

Added .yml file for prod and staging for innolitics org and settings
Added .yml file for prod and staging for vaulthealth org and settings
Updated organizations.yml file for HHSProtect

Checklist
Testing

[x ] Tested locally?
[x ] Ran ./prime test or ./gradlew testSmoke against local Docker ReportStream container?
[ ] (For Changes to /frontend-react/...) Ran npm run lint:write?
[ ] Added tests?

Process

[ ] Are there licensing issues with any new dependencies introduced?
[ ] Includes a summary of what a code reviewer should test/verify?
[ ] Updated the release notes?
[ ] Database changes are submitted as a separate PR?
[ ] DevOps team has been notified if PR requires ops support?

Linked Issues

Fixes #6762
Fixes #6589

To Be Done
Create GitHub issues to track the work remaining, if any

#6707

Specific Security-related subjects a reviewer should pay specific attention to

Does this PR introduce new endpoints?

new endpoint A
new endpoint B

Does this PR include changes in authentication and/or authorization of existing endpoints?
Does this change introduce new dependencies that need vetting?
Does this change require changes to our infrastructure?
Does logging contain sensitive data?
Does this PR include or remove any sensitive information itself?

If you answered 'yes' to any of the questions above, conduct a detailed Review that addresses at least:

What are the potential security threats and mitigations? Please list the STRIDE threats and how they are mitigated

Spoofing (faking authenticity)

Threat T, which could be achieved by A, is mitigated by M

Tampering (influence or sabotage the integrity of information, data, or system)
Repudiation (the ability to dispute the origin or originator of an action)
Information disclosure (data made available to entities who should not have it)
Denial of service (make a resource unavailable)
Elevation of Privilege (reduce restrictions that apply or gain privileges one should not have)

Have you ensured logging does not contain sensitive data?
Have you received any additional approvals needed for this change?

rapidz_report_2022-09-27 21_49_30_947344.csv
VaultCOELR92822-test-one.txt


Empty commit when first changes set is a branch changes set

after initialization of new branch via
git init tfs_url $project_path
git tfs fetch
when first change set is branch - the commit in GIT has empty commit, but should have all files
it happened because "branch" change sets a ignored, but is necessary do not ignore it if this is first change set

I think that #692 fix the problem...

Unfortunately is it not, I still see the change set is ignored.
I see in change set items first item is folder and it ignored, but second item is branch and it contains an item file with valid file that should be stored, but it ignored because the item type is branch
With Best Regards
<EMAIL_ADDRESS>Vadim Zabavnov
From: Philippe Miossec<EMAIL_ADDRESS>Sent: Friday, May 15, 2015 5:17 PM
To: git-tfs/git-tfs
Cc: Vadim Zabavnov
Subject: Re: [git-tfs] Empty commit when first changes set is a branch changes set (#772)
I think that #692 https://github.com/git-tfs/git-tfs/pull/692  fix the problem...
—
Reply to this email directly or view it on GitHub https://github.com/git-tfs/git-tfs/issues/772#issuecomment-102527330 .  https://github.com/notifications/beacon/ACjG1LfGOcrJjQydcYsyZmVKo6L6QCV1ks5oJlm3gaJpZM4EcJ_7.gif

I found the solution, please take a look pull request I just did

I’d like to do some optimization of existing code. Mostly it is cleanup and refactoring it should not affect any functionality.

I also wanted to do some cleaning /renaming for consistency but never did it because I didn't want to break waiting pull request and because I had more value added things to do...
That's right it's a good idea and I can only encourage you to do it but be aware that perhaps some won't be merged very quickly or will have to be adapted after merge of other PR. Hard job ! ;-)
But if you do very short refactoring within different PR, it should be doable! ;-)

I also like to propose to separate tfs bridge functionality to independent library and use executable with comfigurations and help as point of access to this library. In the future this library can be used independently in other applications.

I already thought about that and I think that the work will be huge without not so much added value. I can't see who will want to use git-tfs as a library! I see it as a workaround solution and don't expect someone building long time solution on git-tfs and needing to use git-tfs as a library. But perhaps am I wrong. Tell me more about your point of view!

For instance I’d like to develop a plugin for Git Extensions to use tfs for git

There is already a gitextensions plugin that use the exe and it seems sufficient to me for the use we do git-tfs (barely just fetch/pull/rcheckin). Feel free to have a look and contribute because except a fix I made, their is no more a maintainer :-(
I myself never used it and prefer using gitextensions scripts for the 3 commands I used and found it a lot more convenient...

PR with fix merged. Please close.


Current page number in title

Additional option to show last/current page number in the page title like [%pagenumber%] Old Page Title

Replaced by updating title with URL when enabling corresponding option.


Upgrade to BouncyCastle 1.46

Tigran, you should likely create a new branch for dCache versions rather than merge this onto 2.x.

merged into 2.x-dcache


Being able to listen on Core Events and propagate to the state

Description
I want to listen to Core events to change my charts, inputs, and outputs depending on Core events. This means propagating changes to the state without using Gui Core visual elements.
Expected change
The documentation shows how to propagate a Core event to all or some Gui's states.
This should appear in the "Core events" section as an example.
Acceptance Criteria

[ ] Propose an implementation design
[ ] Create an application as a demo
[ ] Create related issues

A Pull request is opened. It remains to write some real examples.

import taipy as tp
from taipy import Config, Core, Gui, Scope
from taipy.gui import notify, get_state_id, invoke_callback
from taipy.core.notification import Notifier, CoreEventConsumerBase, EventOperation, EventEntityType

value = "Default text"

class SpecificCoreConsumer(CoreEventConsumerBase):

    def __init__(self, gui):
        self.gui = gui
        reg_id, queue = Notifier.register()  # Adapt the registration to the events you want to listen to
        super().__init__(reg_id, queue)

    def process_event(self, event):
        if event.operation == EventOperation.CREATION:
            if event.entity_type == EventEntityType.DATA_NODE:
                gui.broadcast_callback(notify_user_of_creation)

def notify_user_of_creation(state):
    state.value = "Data Node created"
    notify(state, "s", "Data Node Created")

def create_global_dn(state):
    tp.create_global_data_node(Config.data_nodes["dataset"])

if __name__ == "__main__":
    Config.configure_data_node("dataset", scope=Scope.GLOBAL, default_data=42)
    core = Core()
    gui = Gui(page="""
<|{value}|text|>

<|Press me!|button|on_action=create_global_dn|>
""")
    core.run()
    SpecificCoreConsumer(gui).start()
    gui.run()

We don't have an example in the doc where only part of the gui states are updated when a core event is processed. @FlorianJacta Do you know how to implement that?

Implementing it is just adding a if statement inside the callback:
def notify_users_of_creation(state):
    if ...:
        state.value = "Scenario created and submitted"
        notify(state, "s", "Scenario Created")

@jrobinAV I think the example where we added a notification saying a scenario or task is updated is sufficient though?

@FlorianJacta, you know better than I do. What do you think? If it is sufficient, Can we close this issue?

Let's close it for now as a first version, I think.


feat: endpoint to create blog post

Description
Added a new API endpoint to allow only a super admin to create a blog post. This includes implementing token-based authentication to ensure only users with the super admin role can access this functionality. The endpoint verifies the presence of a valid token in the Authorization header and validates the request body to ensure the required fields are provided and correctly formatted.
Related Issue (Link to issue ticket)
[FEAT]: Blog - Creating a Blog Post #113
Motivation and Context
This change is required to restrict blog post creation to super admins only, enhancing security and ensuring only authorized personnel can create blog content. It solves the problem of unauthorized access to the blog creation endpoint.
How Has This Been Tested?
Unit tests were implemented to cover various scenarios, including:

Valid authorization token in the header
Invalid authorization token
Authorization token expiry time
Invalid request bodies (missing required fields)
Valid request bodies

Tests were run in a local development environment using a combination of automated testing tools and manual testing via Postman to ensure all functionalities work as expected and to verify the correct status codes and responses are returned for different cases.
Screenshots (if appropriate - Postman, etc):

Types of changes

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

Checklist:

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

@joboy-dev I have reverted the changes

Change from Feat to feat

@buka4rill i have done that


chore(lint/useShorthandFunctionType): ignore if node has inner comments

Summary
close #354
Does not report and fix if node has inner comments https://github.com/biomejs/biome/pull/670#pullrequestreview-1727244683

Test Plan
Add snaps for valid cases

I've implemented it to ignore reports and fixes, but should I at least report it?

Thanks :)


docs(theme): enable built-in Mermaid support

Remove existing mermaid shortcoce and JS file.
Add example to smoke-test.md.
The current code does not have a mermaid diagram in architecture.md. That somehow was lost in the transition to Hugo.
We don't have a makefile with a specific build task to compile drafts, so the smoke test page is not rendered. To compile locally: hugo server -D

I pulled down this branch and copied the smoketest example into a random page. It didn't work for me: https://s.armory.io/P8uyRBkb


Displaying multiple large GIFs causes out of memory exception

Steps to Reproduce
I am encountering a reproducible crash when displaying two 16MB GIFs in a list.
At first they all display correctly, then the app starts to flicker and ultimately terminates. This happens on iOS and Android.
class MyHomePage extends StatefulWidget {
  MyHomePage({Key key, this.title}) : super(key: key);

  final String title;

  @override
  _MyHomePageState createState() => new _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  @override
  Widget build(BuildContext context) {
    return new Scaffold(
      appBar: new AppBar(
        title: new Text(widget.title),
      ),
      body: new SingleChildScrollView(
        child: new Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            new Image.network("https://storage.googleapis.com/flutter-test/resized1.gif"),
            new Image.network("https://storage.googleapis.com/flutter-test/resized2.gif"),
//            new Image.network("https://storage.googleapis.com/flutter-test/resized3.gif"),
//            new Image.network("https://storage.googleapis.com/flutter-test/resized4.gif"),
          ],
        ),
      ),
    );
  }
}

Logs
Launching lib/main.dart on Moto G 5 Plus in debug mode...
Initializing gradle...
Resolving dependencies...
Running 'gradlew assembleDebug'...
Built build/app/outputs/apk/debug/app-debug.apk (24.6MB).
Installing build/app/outputs/apk/app.apk...
I/flutter ( 2613): [WARNING] app lifecycle state changed: AppLifecycleState.paused
I/FlutterActivityDelegate( 7464): onResume setting current activity to this
Syncing files to device Moto G 5 Plus...
I/Choreographer( 7464): Skipped 217 frames!  The application may be doing too much work on its main thread.
W/Adreno-GSL( 7464): <sharedmem_gpuobj_alloc:2021>: sharedmem_gpumem_alloc: mmap failed errno 12 Out of memory
E/Adreno-GSL( 7464): <gsl_memory_alloc_pure:2125>: GSL MEM ERROR: kgsl_sharedmem_alloc ioctl failed.

[☝ This error is repeated 2193 times]

E/DartVM  ( 7464): ../../third_party/dart/runtime/vm/scavenger.cc: 411: error: Out of memory.
E/DartVM  ( 7464): Dumping native stack trace for thread 1f2c
E/DartVM  ( 7464):   [0x8f8aba65] Unknown symbol
E/DartVM  ( 7464):   [0x8f8aba65] Unknown symbol
E/DartVM  ( 7464): -- End of DumpStackTrace
F/libc    ( 7464): Fatal signal 6 (SIGABRT), code -6 in tid 7980 (ui_thread)
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
Build fingerprint: 'motorola/potter_amz/potter:7.0/NPN25.137-83/87:user/release-keys'
Revision: 'p3b0'
ABI: 'arm'
pid: 7464, tid: 7980, name: ui_thread  >>> com.example.gifcrash <<<
signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
    r0 00000000  r1 00001f2c  r2 00000006  r3 00000008
    r4 8967e978  r5 00000006  r6 8967e920  r7 0000010c
    r8 9f954400  r9 0001f5c0  sl 887057e4  fp 00400000
    ip 0000000c  sp 8967cf80  lr a854c3e7  pc a854ec44  cpsr 200e0010
backtrace:
    #00 pc 00049c44  /system/lib/libc.so (tgkill+12)
    #01 pc 000473e3  /system/lib/libc.so (pthread_kill+34)
    #02 pc 0001d535  /system/lib/libc.so (raise+10)
    #03 pc 00019081  /system/lib/libc.so (__libc_android_abort+34)
    #04 pc 000170e4  /system/lib/libc.so (abort+4)
    #05 pc 0017042b  /data/app/com.example.gifcrash-2/lib/arm/libflutter.so
    #06 pc 00706785  /data/app/com.example.gifcrash-2/lib/arm/libflutter.so
    #07 pc 00571cd5  /data/app/com.example.gifcrash-2/lib/arm/libflutter.so
    #08 pc 00572779  /data/app/com.example.gifcrash-2/lib/arm/libflutter.so
    #09 pc 0043cef5  /data/app/com.example.gifcrash-2/lib/arm/libflutter.so
    #10 pc 0043cd23  /data/app/com.example.gifcrash-2/lib/arm/libflutter.so
    #11 pc 0045d8db  /data/app/com.example.gifcrash-2/lib/arm/libflutter.so
    #12 pc 0045d6fd  /data/app/com.example.gifcrash-2/lib/arm/libflutter.so
    #13 pc 00596ed9  /data/app/com.example.gifcrash-2/lib/arm/libflutter.so
    #14 pc 00596e0d  /data/app/com.example.gifcrash-2/lib/arm/libflutter.so
    #15 pc 004e1f35  /data/app/com.example.gifcrash-2/lib/arm/libflutter.so
    #16 pc 00046eb3  /system/lib/libc.so (_ZL15__pthread_startPv+22)
    #17 pc 00019acd  /system/lib/libc.so (__start_thread+6)
Lost connection to device.

Flutter Doctor
[✓] Flutter (on Mac OS X 10.12.6 16G1036, locale en-US, channel alpha-chq)
    • Flutter version 0.0.21-pre.5 at /Users/philipp/code/flutter
    • Framework revision 389d91b6c4 (2 hours ago), 2018-01-29 15:12:37 -0800
    • Engine revision 6921873c71
    • Tools Dart version 2.0.0-dev.16.0
    • Engine Dart version 2.0.0-edge.da1f52592ef73fe3afa485385cb995b9aec0181a

[✓] Android toolchain - develop for Android devices (Android SDK 27.0.3)
    • Android SDK at /Users/philipp/Library/Android/sdk
    • Android NDK at /Users/philipp/Library/Android/sdk/ndk-bundle
    • Platform android-27, build-tools 27.0.3
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-915-b08)

[✓] iOS toolchain - develop for iOS devices (Xcode 9.2)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 9.2, Build version 9C40b
    • ios-deploy 1.9.2
    • CocoaPods version 1.4.0.beta.2

[✓] Android Studio (version 3.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-915-b08)

[✓] IntelliJ IDEA Ultimate Edition (version 2017.2.6)
    • Flutter plugin version 20.0.2
    • Dart plugin version 172.4343.25

[✓] Connected devices
    • Moto G 5 Plus • ZY2242PN6T • android-arm • Android 7.0 (API 24)

I just downloaded https://storage.googleapis.com/flutter-test/resized1.gif from the sample code. Its dimensions are 810 x 607. At 4 bytes per pixel, that's 1,966,680 bytes per frame. Looking at the code in codec.cc, it appears that frames are not purged, so that by the end of the animation, all frames are stored in memory. This image has 474 frames, so that's a total of 932,206,320 bytes (close to a GB).
It looks like the code is based on my sample code in Skia. The newer SkAnimatedImage class takes almost the opposite approach - it typically only stores one frame (the exception is if a frame is marked as RESTORE_PREVIOUS; it saves the prior frame so that the next frame can be decoded without re-decoding that prior frame). The downside to this approach is that if the animation repeats, we'll have to re-decode each frame. So there might be some middle ground or heuristic to decide when to save frames and which frames to save.
If we stop storing all the frames, that would likely fix this problem.
FWIW, it would still be possible to run out of memory with a large enough image (or if memory is just too low). Switching from SkBitmap::allocPixels to SkBitmap::tryAllocPixels would avoid a crash in those cases, though it may be fine to just crash and suggest the developer not use giant images.

This crash is still happening with the latest Flutter sdk. Any timeline on when this might be fixed?

Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel dev, v0.7.0, on Mac OS X 10.13.6 17G2208, locale en-US)
[✓] Android toolchain - develop for Android devices (Android SDK 28.0.1)
[✓] iOS toolchain - develop for iOS devices (Xcode 9.4.1)
[✓] Android Studio (version 3.1)
[!] VS Code (version 1.26.0)
[✓] Connected devices (1 available)
! Doctor found issues in 1 category.
I have also done flutter channel master, and then flutter upgrade
To see if it is fixed in master.

I will try and get some logs and maybe share the gif if I can.

Maybe you should uninstall python


Zooming issues when TransformComponent larger than TransformWrapper

I am working on a project where I would like to provide zooming and panning for images that could be of any size. I have set a size on a div inside of the TransformWrapper to restrict the zooming and panning area to within the width and height of the screen. However, sometimes the images inside the TransformComponent can be larger than the screen. In this scenario, it seems to center the images within the larger element rather than the smaller one, causing parts of the image to not be reachable within the zooming area.
It is important for me to initially show the user the image at the original size so scaling them down is not really an option.
Below is an example using divs that reproduces the error. See the issue in code sandbox
import React from 'react';

import { TransformWrapper, TransformComponent } from "react-zoom-pan-pinch";

export default function Example(){
  return (
    <TransformWrapper
      defaultScale={0.3}
      options={{
        minScale: 0.1,
        // false for centerContent does not seem to work except at initial render?
        // centerContent: false
        // true seems to center it with the TransformComponent-module_container__XXX
        // which causes it to be off-center
        centerContent: true
      }}>
      {({ zoomIn, zoomOut, resetTransform, ...rest }) => (
        <React.Fragment>

Orange = Zooming Area; Blue = Object being zoomed

            <button onClick={zoomIn}>+</button>
            <button onClick={zoomOut}>-</button>
            <button onClick={resetTransform}>x</button>

          {/* Set zooming area size. Tried with sizing div outside/inside/inside and outside of TransformComponent */}

            <TransformComponent>
              {/* Thing I am actualy trying to zoom. Potentially bigger than TransformComponent parent */}

            </TransformComponent>

        </React.Fragment>
      )}
    </TransformWrapper>
  );
}

Changing the height/width properties for TransformComponent-module_container__XXX in the browser from fit-content to 100% seems to make the issue a little better, but it is still not perfectly centered and I'm not sure of the implications of this.
Here is what is rendered after zooming out some.

After setting the TransformComponent-module_container__XXX div to have a 100% size:

Hey, thanks for reporting! To be honest I made it intentional because it was easier for development to focus on components that are no larger than the size of the wrapper. Now, however, the logic is refined and extension should be possible. I will try to finish it over the weekend 👍


Fix Exports

Make sure table exports are spitting out useful data

Fix pushed to development (commit # 18a00b0)

Heatmap export is fixed, however variant table still needs to be exportable.


Update teams-for-vdi.md

fixed the note section for  Deploy the Teams desktop app to the VM

@dstrome
PR has been copyedited and is ready for final review, could you please check and merge? Thanks!

Change already published.


Specify a className for a row based on the contents of the row

I need the ability to add a className to a row based on the contents of the row (for example, to change the color of the row based on the value in a specific column).  Similar to the cellProps  but for adding a className to the row instead of the column.  Is this possible?
Thanks!

Hi @Susan123456789, thanks for using this library!
That is not possible at the moment, but I think I can work on this... some times today or tomorrow. I will get back to this issue after I finish it and let you know. Cheers!

Hi @Susan123456789, please take a look at<EMAIL_ADDRESS>We can now add custom props to table rows, something like this:
<TableBody
  rowProps={(row) => {
    return {
      style: {
        background: `rgba(128, 0, 0, ${row.score / 200})`
      }
    };
  }}
/>

Example sandbox: https://codesandbox.io/s/react-bs-datatable-3-3-conditional-row-props-832ze3?file=/src/App.js. Example in Storybook: https://imballinst.github.io/react-bs-datatable/?path=/story/uncontrolled--custom-table-row-props.
Let me know if there are anything more that I can help with!

Works perfectly!!  Thank you so much for the prompt response!!

Hey @imballinst does it work for column too?

@imballinst  Kudos!
I need the same that have it has i.e the styles one for the column and it works like a charm 😍

Hey @imballinst
can we add spinner for the rowProps based on some conditions?

@pullelakalyani I don't think we can add the moment... what is the use-case?

Ohh okay,
So its an ML usecase where the data take sometime to complete its tasks and update the records in the DB so when the ML process executes its tasks we can have the spinner spinning on a particular row based on the ML status

Ah, I see. Yes, that makes sense. It requires quite a bit of API change, I think. Something like this:
<TableBody>
  {data.map(row => {
    if (row.status === 'loading') {
      return
<Spinner />

    }

    return <TableRow row={row} />
  })}
</TableBody>

Not sure if it makes sense... but it's an option. What do you think?


Result<(),MyCustomError> instead of anyhow?

This library is very useful, but having to return a text error instead of a nice struct with custom error information would be much nicer! Is it possible? Is it in the plans?

Good idea! Feel free to make a PR :)

Errors are always translated as exceptions on Dart side, right?
I think the best here would be to return Future<Result<T, E>> where Result mimics Rust's Result. However I don't know if it's a good idea to handle errors like this in Dart as it's exception oriented. Maybe Result<T, E> in Rust converts to Future<T> and throws E as an exception? For example, each variant of E would be an Exception.
Currently with anyhow errors there is no way to catch specific exceptions on the Dart side, which is bad for apps that try to recover from errors (like mine).

I think the best here would be to return Future<Result<T, E>> where Result mimics Rust's Result. However I don't know if it's a good idea to handle errors like this in Dart as it's exception oriented.

Well I seldomly see dart code using Result<T,E>.

Maybe Result<T, E> in Rust converts to Future and throws E as an exception?

That sounds pretty reasonable.

Currently with anyhow errors there is no way to catch specific exceptions on the Dart side, which is bad for apps that try to recover from errors (like mine).

Totally agree. If we throw MyCustomException then it would be much greater to catch

I think the best here would be to return Future<Result<T, E>> where Result mimics Rust's Result. However I don't know if it's a good idea to handle errors like this in Dart as it's exception oriented.

Well I seldomly see dart code using Result<T,E>.

Until we have custom exceptions, I think this might be the only way to preserve errors coming from Rust for now. What we could do is provide a hand-rolled Result in Dart like this:
@freezed
class Result<T, E> {
  const factory Result.ok(T value) = Ok;
  const factory Result.err(E err) = Err;
}

so we can have users return a hypothetical DartResult type to opt out of throwing exceptions:
pub type DartResult<T, E = ()> = Result<T, E>;

I'm not quite sure if this would be more work than supporting custom exceptions by itself.

I guess custom exceptions are not very hard to implement. Current implementation of "throwing a dart exception from rust exception" is nothing but "transfer a few strings (exception name, message, etc) to dart, and let dart side throw exception". So it may be easy to transfer an extra field indicating which exception is happening.
Or, we can just transfer a normal struct from rust to dart and utilize existing infra. It is only after it goes to the dart side that we throw it instead of return it.

better to transfer the type cause errors could be nested with other errors, but I don't know how nesting would work on dart side
-------- Mensagem Original --------
Em 15 de jul. de 2022 00:58, fzyzcjy escreveu:

I guess custom exceptions are not very hard to implement. Current implementation of "throwing a dart exception from rust exception" is nothing but "transfer a few strings (exception name, message, etc) to dart, and let dart side throw exception". So it may be easy to transfer an extra field indicating which exception is happening.
Or, we can just transfer a normal struct from rust to dart and utilize existing infra. It is only after it goes to the dart side that we throw it instead of return it.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

but I don't know how nesting would work on dart side

Nothing special. frb already supports nesting structs, and the error will be nothing but another struct.

I have an idea: we can have a specialization for Result<T, E> where:

E is not anyhow::Error; and
E: IntoDart

Provided these conditions, we can have a new Dart class that extends FfiError and carries this extra error attribute in a type-safe manner.

@Desdaemon are specializations like this already possible in Rust?
Anyways, I'm beggining to take a look on the error handler and how to do this

are specializations like this already possible in Rust?

I guess he means we can do such checking at our code generator.

Anyways, I'm beggining to take a look on the error handler and how to do this

Rough directions:
Firstly, errors are captured at https://github.com/fzyzcjy/flutter_rust_bridge/blob/master/frb_rust/src/handler.rs#L119 and naively handled at https://github.com/fzyzcjy/flutter_rust_bridge/blob/e8414215ec348c271a10e3ac0ea9c40179698ba5/frb_rust/src/handler.rs#L320 . Users (e.g. me in my internal app) may also modify that error handler and do extra things (e.g. logging / sentry).
Then comes the core error handling: https://github.com/fzyzcjy/flutter_rust_bridge/blob/e8414215ec348c271a10e3ac0ea9c40179698ba5/frb_rust/src/rust2dart.rs#L46.
The current approach is very very naive. Basically, when we want to return a value, or send a value via Stream, we indeed encode that rust value into some wire data, and then send something like vec![RUST2DART_ACTION_SUCCESS, the_real_result], i.e. vec![0, the_real_result]. When we want to send an error, we send vec![1, error_code, error_message, etc].

Therefore, the solution may be quite simple: Instead of posting vec![1, errorcode, errormessage] using Rust2Dart, we can simply posting vec![1, arbitrary_rust_object] as long as we use all the existing code to auto-generate converting code for the type of that arbitrary_rust_object.
Then, in Dart side, indeed almost nothing to do. Just mimic how we receive the normal result and deserialize it, we can deserialize the error data, and throw it.
One minor thing may be that, we may need to let our custom exception to implements Exception in dart, to make it more natural to be used in dart side.

I've just read how Isolate posting works and now I understand it better. Yes, if arbitrary_rust_object implements IntoDart, it should work.
But here:
impl<E: Executor, EH: ErrorHandler> Handler for SimpleHandler<E, EH> {
    fn wrap<PrepareFn, TaskFn, TaskRet>(&self, wrap_info: WrapInfo, prepare: PrepareFn)
    where
        PrepareFn: FnOnce() -> TaskFn + UnwindSafe,
        TaskFn: FnOnce(TaskCallback) -> Result<TaskRet> + Send + UnwindSafe + 'static,
        TaskRet: IntoDart,
    {

the Result is a anyhow::Result. I think it needs to be changed to std lib's Result<TaskRet, E>, where E: IntoDart, and then something like this:
/// Errors that occur from normal code execution.
#[derive(Debug)]
pub enum Error {
    /// Errors from an [anyhow::Error].
    ResultError(anyhow::Error), // <------------------ PS: why not used?
    /// Exceptional errors from panicking.
    Panic(Box<dyn Any + Send>),
    /// Custom errors that implement `IntoDar`
    CustomError(Box<dyn IntoDart + Send>),
}

Then:
impl<E: Executor, EH: ErrorHandler> Handler for SimpleHandler<E, EH> {
    fn wrap<PrepareFn, TaskFn, TaskRet>(&self, wrap_info: WrapInfo, prepare: PrepareFn)
    where
        PrepareFn: FnOnce() -> TaskFn + UnwindSafe,
        TaskFn: FnOnce(TaskCallback) -> std::Result<TaskRet, E> + Send + UnwindSafe + 'static,
        TaskRet: IntoDart,
        E: IntoDart
    {
        let _ = panic::catch_unwind(move || {
            let wrap_info2 = wrap_info.clone();
            if let Err(error) = panic::catch_unwind(move || {
                let task = prepare();
                self.executor.execute(wrap_info2, task);
            }) {
                self.error_handler
                    .handle_error(wrap_info.port.unwrap(), Error::CustomError(error));
            }
        });
    }

Also we need
impl ErrorHandler for ReportDartErrorHandler {
    fn handle_error(&self, port: i64, error: Error) {
        Rust2Dart::new(port).custom_error(error.code().to_string(), error.message());
    }

    fn handle_error_sync(&self, error: Error) -> Vec<u8> {
        //...
    }
}

where
/// Send a success message back to the specified port.
    pub fn custom_error<T: IntoDart>(&self, error: T) -> bool {
        self.isolate.post(vec![
            RUST2DART_ACTION_CUSTOM_ERROR.into_dart(),
            error.into_dart(),
        ])
    }

and then do some deserialization on Dart for the new case RUST2DART_ACTION_CUSTOM_ERROR.
Is this approach ok?

the Result is a anyhow::Result. I think it needs to be changed to std lib's Result<TaskRet, E>, where E: IntoDart

Sure, feel free to change APIs as that is necessary.
But I guess you need impl IntoDart for anyhow::Error? Then maybe PR on upstream: https://github.com/sunshine-protocol/allo-isolate/blob/master/src/into_dart.rs, as IntoDart is not implemented in this crate.

Just did this:
pub enum Error {
    /// Errors that implement [IntoDart].
    CustomError(Box<dyn IntoDart>),
    /// Exceptional errors from panicking.
    Panic(Box<dyn Any + Send>),
}

pub trait Executor: RefUnwindSafe {
    /// Executes a Rust function and transforms its return value into a Dart-compatible
    /// value, i.e. types that implement [`IntoDart`].
    fn execute<TaskFn, TaskRet, Er>(&self, wrap_info: WrapInfo, task: TaskFn)
    where
        TaskFn: FnOnce(TaskCallback) -> Result<TaskRet, Er> + Send + UnwindSafe + 'static,
        TaskRet: IntoDart,
        Er: IntoDart + 'static;
//...

and ran on the example

pub enum CustomError{
    Error1(String),
    Error2(u32),
    Error3(i32)
}

pub fn return_custom_error() -> Result<u32, CustomError> {
    Err(CustomError::Error2(3))
}

which generated

#[no_mangle]
pub extern "C" fn wire_return_custom_error(port_: i64) {
    FLUTTER_RUST_BRIDGE_HANDLER.wrap(
        WrapInfo {
            debug_name: "return_custom_error",
            port: Some(port_),
            mode: FfiCallMode::Normal,
        },
        move || move |task_callback| return_custom_error(),
    )
}

but the return type of return_custom_error, which is CustomError, does not implement IntoDart, because the Intermediate Representation ignores the Result<A,B> B portion of the thing and only represents the output A:
IrFuncOutput::ResultType(ty) => ty,
What do you think of creating another field on IrFunc:

pub struct IrFunc {
    pub name: String,
    pub inputs: Vec<IrField>,
    pub output: IrType,
    pub error_output: IrType, // <------- this
    pub fallible: bool,
    pub mode: IrFuncMode,
    pub comments: Vec<IrComment>,
}

so I can represent the output error? Then later I can visit it and generate its IntoDart thing.

What do you think of creating another field on IrFunc:

Sure. And then when traversing all types, treat error_output just almost the same as output and inputs.

pub error_output: Option<IrType>, // <------- this

pub fallible: bool,

Shall we remove fallible (and make it a method instead), since "error_output!=none" is equivalent to fallible==true?

It's more complicated than we thought. Here, a Result<T, E> is converted into T:
pub fn try_from_syn_type(ty: &syn::Type) -> Option<Self> {
        match ty {
            syn::Type::Path(syn::TypePath { path, .. }) => {
                let last_segment = path.segments.last().unwrap().clone();
                match last_segment.arguments {
                    syn::PathArguments::None => Some(SupportedInnerType::Path(SupportedPathType {
                        ident: last_segment.ident,
                        generic: None,
                    })),
                    syn::PathArguments::AngleBracketed(a) => {

and I can only convert to one of these:
pub enum SupportedInnerType {
    /// Path types with up to 1 generic type argument on the final segment. All segments before
    /// the last segment are ignored. The generic type argument must also be a valid
    /// `SupportedInnerType`.
    Path(SupportedPathType),
    /// Array type
    Array(Box<Self>, usize),
    /// The unit type `()`.
    Unit,
}

the concept of Result is lost after this. I tried adding
pub enum SupportedInnerType {
    /// Path types with up to 1 generic type argument on the final segment. All segments before
    /// the last segment are ignored. The generic type argument must also be a valid
    /// `SupportedInnerType`.
    Path(SupportedPathType),
    /// Path types with up to n generic type argument on the final segment.
    /// The generic type argument must also be a valid `SupportedInnerType`.
    PathMultiple(Vec<SupportedPathType>),
    /// Array type
    Array(Box<Self>, usize),
    /// The unit type `()`.
    Unit,
}

but realized it does not make sense to have a PathMultiple, it could be anything: Path<A,B,C,...> would be converted to Vec<A,B,C,...> and we'd lose the Path info.
What should I do here?
Remember that this is just so the E in Result<T,E> gets a IntoDart implementation. If it weren't for that, we'd not need all of this.

I'm trying with
#[derive(Debug)]
pub struct SupportedPathType {
    pub ident: syn::Ident,
    pub generic: Vec<Box<SupportedInnerType>>,
}

instead of
#[derive(Debug)]
pub struct SupportedPathType {
    pub ident: syn::Ident,
    pub generic: Option<Box<SupportedInnerType>>,
}

Well,
#[derive(Debug)]
pub struct SupportedPathType {
    pub ident: syn::Ident,
    pub generic: Vec<Box<SupportedInnerType>>,
}

makes it really hard to
    /// Converts a path type into an `IrType` if possible.
    pub fn convert_path_to_ir_type(&mut self, p: SupportedPathType) -> Vec<IrType> {

I don't know what to do

What about storing error type in a separate field? Just like what you mentioned:
pub struct IrFunc {
    pub inputs: Vec<IrField>,
    pub output: IrType,
    pub error_output: Option<IrType>, // <------- this

in order to get the error_output, I have to get the E from Result<T,E> here:
pub fn try_from_syn_type(ty: &syn::Type) -> Option<Self> {
        match ty {
            syn::Type::Path(syn::TypePath { path, .. }) => {
                let last_segment = path.segments.last().unwrap().clone();
                match last_segment.arguments {
                    syn::PathArguments::None => Some(SupportedInnerType::Path(SupportedPathType {
                        ident: last_segment.ident,
                        generic: None,
                    })),
                    // This part gets only the first argument, the T. To get the E, lots of work need to be done :(
                    syn::PathArguments::AngleBracketed(a) => {

Shall we do something like pub fn try_from_syn_type(ty: &syn::Type) -> (Option<Self>, Option<Self>) {

I tried exactly that, but the recursiveness of try_from_syn_type makes it a hell to work with, if not impossible

Ah I see. What about
pub enum SupportedInnerType {
    Path(SupportedPathType), // unchanged
...
}

pub struct SupportedPathType {
    pub ident: syn::Ident,
    pub generic: Vec<Box<SupportedInnerType>>, // NOTE change from Option to Vec, so support >=2 generic args
}

wow I tried exactly that afterwards: https://github.com/lattice0/flutter_rust_bridge/commit/6f5a6fb932bfb4f708bc7edb333274ec8e6aa27e but it was really hard to create the vec for all parsed types, because now I should do vec![ty] for each one and etc. I rolled back after this

wow we have had the same thoughts :)

it was really hard to create the vec for all parsed types, because now I should do vec![ty] for each one and etc

Could you please elaborate a bit? If it is nothing but adding vec! to each usage I guess it is just a bit of boilerplate and is not very hard

Because then convert_path_to_ir_type has to return a Vec, so collecting all the cases into vecs ("SyncReturn", "Vec", "ZeroCopyBuffer", "Box", "Option") and calling self.convert_to_ir_type(*generic) on a generic that is actually a Vec, would make me need to modify convert_to_ir_type as well, etc. It turned out making too many reds on my editor.

Hmm maybe we can use the only element from the Vec when appropriate?

pub generic: Vec<Box<SupportedInnerType>> might be redundant since Vec already provides a layer of redirection, you might want to change it to Vec<SupportedInnerType> to make it easier to pattern-match on.

https://github.com/fzyzcjy/flutter_rust_bridge/pull/582

(Reopen given https://github.com/fzyzcjy/flutter_rust_bridge/pull/1325)


increase retry count from 1 to 3 for JSONDecode errors

Continue to have JSON decode errors, most of the time a single retry is mitigating the issue, but here's another failure during the 34th session.  Increasing retry count from 1 to 3 to reduce the probability of such failure.
2021-06-08 00:36:16: (session:34, poll:130) COOL MODE [following schedule] actual=72, set point=72, override=72
DEBUG: main: refreshing zone...
[log_msg]: Traceback (most recent call last):
File "/home/pi/github/ThermostatSupervisor/honeywell.py", line 483, in refresh_zone_info
all_zones_info = self.pyhtcc.get_zones_info()
File "/home/pi/github/ThermostatSupervisor/honeywell.py", line 179, in get_zones_info
data = result.json()
File "/usr/lib/python3/dist-packages/requests/models.py", line 897, in json
return complexjson.loads(self.text, **kwargs)
File "/usr/lib/python3/dist-packages/simplejson/init.py", line 518, in loads
return _default_decoder.decode(s)
File "/usr/lib/python3/dist-packages/simplejson/decoder.py", line 370, in decode
obj, end = self.raw_decode(s)
File "/usr/lib/python3/dist-packages/simplejson/decoder.py", line 400, in raw_decode
return self.scan_once(s, idx=_w(s, idx).end())
simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
[log_msg]: exception during refresh_zone_info, probably a connection issue, waiting 30 seconds and then retrying once...
Traceback (most recent call last):
File "/home/pi/github/ThermostatSupervisor/honeywell.py", line 483, in refresh_zone_info
all_zones_info = self.pyhtcc.get_zones_info()
File "/home/pi/github/ThermostatSupervisor/honeywell.py", line 179, in get_zones_info
data = result.json()
File "/usr/lib/python3/dist-packages/requests/models.py", line 897, in json
return complexjson.loads(self.text, **kwargs)
File "/usr/lib/python3/dist-packages/simplejson/init.py", line 518, in loads
return _default_decoder.decode(s)
File "/usr/lib/python3/dist-packages/simplejson/decoder.py", line 370, in decode
obj, end = self.raw_decode(s)
File "/usr/lib/python3/dist-packages/simplejson/decoder.py", line 400, in raw_decode
return self.scan_once(s, idx=_w(s, idx).end())
simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "supervise.py", line 171, in
main(tstat_type)
File "supervise.py", line 128, in main
zone.refresh_zone_info()
File "/home/pi/github/ThermostatSupervisor/honeywell.py", line 494, in refresh_zone_info
all_zones_info = self.pyhtcc.get_zones_info()  # retry once
File "/home/pi/github/ThermostatSupervisor/honeywell.py", line 179, in get_zones_info
data = result.json()
File "/usr/lib/python3/dist-packages/requests/models.py", line 897, in json
return complexjson.loads(self.text, **kwargs)
File "/usr/lib/python3/dist-packages/simplejson/init.py", line 518, in loads
return _default_decoder.decode(s)
File "/usr/lib/python3/dist-packages/simplejson/decoder.py", line 370, in decode
obj, end = self.raw_decode(s)
File "/usr/lib/python3/dist-packages/simplejson/decoder.py", line 400, in raw_decode
return self.scan_once(s, idx=_w(s, idx).end())
simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

branch 59 merged into main and is now in production, will need to test for a while to determine how effective this change is and to ensure that the email notifications are working properly.

able to reach 9 sessions with this increased retry count, closing ticket for now.


gnome-control-center does not launch

Describe the bug
A clear and concise description of what the bug is.
Steps To Reproduce
Steps to reproduce the behavior:

nix shell nixpkgs#gnome.gnome-control-center
gnome-control-center
The program doesn't launch and has exit code 1.

Expected behavior
The control center launches.
Screenshots

Additional context
I believe I have the necessary options enabled to facilitate the launch of this program
    # needed for GNOME services outside of GNOME Desktop
    dbus.packages = [pkgs.gcr];
    udev.packages = with pkgs; [gnome.gnome-settings-daemon];

Notify maintainers
@jtojnar

Metadata
[mihai@io:~]$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-linux"`
 - host os: `Linux 6.2.12-xanmod1, NixOS, 23.05 (Stoat), 23.05.20230505.3e31380`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.13.3`
 - nixpkgs: `/nix/store/0i243yr22p3wsg2d229bicj0c98x29hr-source`

Is there anything in system journal?

I don't see anything new when I launch gnome-control-center.

Please try to run it with G_MESSAGES_DEBUG=all
What XDG_CURRENT_DESKTOP environment variable do you have? -> https://gitlab.gnome.org/GNOME/gnome-control-center/-/commit/fbf8886b91b597b7bacfa93623d0c6c176ae3e9a

@bobby285271 XDG_CURRENT_DESKTOP was Hyprland. I did not know it would not start under values different than GNOME. Well, this is easily overridable. Thanks for the quick response!
My usecase was to have a pretty GUI for wifi connections (nm-applet is unusable without a tray).


docs: fix bash parameter syntax

Background
The syntax used in the example of passing a custom location for sopstool is incorrect. It displays this error message:
/usr/local/bin: /usr/local/bin: is a directory

If you use -s, it works as expected.
Versioning
N/A. Docs only.

Thanks!

No prob - I don't have write access, so merge at will! 😄

No prob - I don't have write access, so merge at will! 😄

ya i was waiting on travis to finish, but it looks to be stuck.


Fix incorrect steps in README.md

This change does the following:

merges /etc/openstack_deploy/user_variables.yml with
rpcd/etc/openstack_deploy/user_variables.yml
updates an incorrect cp which was resulting in
/etc/openstack_deploy/openstack_deploy (we also selectively copy
files to ensure we don't overwrite
/etc/openstack_deploy/user_variables.yml)

Closes issue #183

Bumping back to prio-1 since it affects #251.
I am +1 on this change.

:+1:


fix(ui): adds high z-index to portal root

Summary
This PR tries to improve upon the previous fix for the z-index stacking problem introduced in the recent refactoring of PortalProvider. While the previous fix in https://github.com/cloudoperators/juno/pull/565 solved the issue for Juno apps we still had potential z-index stacking issues if a Juno app was embedded into a host app with its own z-index stack. This is because the solution from the previous PR aimed to standardize all z-index on the root level to 1 and then added stacks above this in the portaled components as necessary.
In the cases where a Juno app is embedded in a host app with z-indexes higher than 1 the whole thing would break.
This PR aims to fix this by setting a very high z-index (9999) for the portal root div which acts as the wrapper for all portals. So as long as the host app's z-index is at max 9999 the z-stacking will be correct.
Changes Made

Added z-index: 9999 to portal root div in PortalProvider
Undid z-index change to PageHeader and Label from PR#565 since the new portal root z-index ensure proper stacking above these components for portaled components

Related Issues

https://github.com/cloudoperators/juno/pull/565

Testing Instructions

start exampleapp or supernova in this branch
open a Panel --> it should be stacked above the PageHeader
in Supernova scroll down so that the filter toolbar gets scrolled under PageHeader --> the Select's Label should not be visible

Checklist

[x] I have performed a self-review of my code.
[x] I have commented my code, particularly in hard-to-understand areas.
[ ] I have added tests that prove my fix is effective or that my feature works.
[x] New and existing unit tests pass locally with my changes.
[ ] I have made corresponding changes to the documentation (if applicable).
[x] My changes generate no new warnings or errors.

Tested changes in elektra:

Tested changes in exampleapp

supernova

all look good

We could also define a property in the AppShellProvider and other components like AppShell to set the starting z-index. For example, we could specify startZIndex={60}. This would allow us to handle the z-index as usual (e.g., starting from 1 as in your last fix) while covering the Elektra case by setting the starting z-index higher than 50, such as 60.

We could also define a property in the AppShellProvider and other components like AppShell to set the starting z-index. For example, we could specify startZIndex={60}. This would allow us to handle the z-index as usual (e.g., starting from 1 as in your last fix) while covering the Elektra case by setting the starting z-index higher than 50, such as 60.

I like this idea. But it needs some more thought how exactly we want to do it. I'll add it to our collection epic for future improvements 🙏


Fixed CCM metric and added general calculation methodology

Fixed tests for CCM of classes Foo and TwoCommonAttributes.
explanation of test fix.

Foo class has 2 methods, both of them access attribute name. This means that NC number of connected methods is 1, NCC is also 1, NMP between 2 methods is 1. Value will be 1.
TwoCommonAttributes class has 3 methods. None of pairs of methods call or access common method or attribute. NC is 0. NCC is equal 3. NMP between 3 methods is 3. Value will be 0. CCM metric can not have NaN values if number of methods more than 1.

We found 2 types of errors. One of them is in our code, we are fixing it. And another is
BUILD com.jcabi.xml.StrictXML: 1 XML validation error(s):   -1:-1: cvc-identity-constraint.4.1: Duplicate unique value [Lcom4Test] declared for identity constraint "classUnique" of element "package".
We have no idea what can cause this, could you check it?

@iMaks99 it's hard to say... BTW, I'm not sure we can merge the code with this design. All our metrics are designed differently. This change to the project will cause serious reconsideration of the overall design. Can't we fix the problem just using XSL, as it's done in other metrics?

@yegor256 sorry for late answer. We, unfortunately, do not have the necessary skills to fix the problem using just XSL-code and ask you to issue the corresponding task to Paolo or some other programmer with experience in developing in this language.


Implement hamburger menu for mobile navigation #399

Title and Issue number

Title :Implement hamburger menu for mobile navigation #399
Issue No. :#399
Code Stack : React,Antd
Close #<issue_no>

Checklist:

[] I have mentioned the issue number in my Pull Request.
[] I have commented my code, particularly in hard-to-understand areas
[] I have created a helpful and easy to understand README.md
[] I have updated the Index.html file for my contribution

conflicts @rutupatel53


[question] customizing transition effects?

Swipers comes with a handful of pre-defined effects to change the transition between slides.
However, I would love if you could expose an interface for customizing / controlling the transition effects.
Is there any way to do this currently? Looking through the docs, I don't see anything.

agreed. is there any way to customize the transition for the different elements within the slide (e.g. header text, image etc.) and not the slide itself? for example, on slide change, the text would slide-out first, then (with a little delay) the image, and then the next slide would appear. any workarounds?

@followthemadhat I like that idea, although I feel like if we could pass some sort of information to the slides of what the swipe "progress" is ( say 0 is center/stationary, -1 is all-the-way left and 1 is all-the-way-right), you could use those values inside your slide to animate the inner content how you see fit.

In v4 it can be used within setTranslate event:
swiper.on('setTranslate', function onTranslate() {
  var swiper = this;
  var progress = swiper.progress; // main swiper progress (from 0 to 1);

  swiper.slides.each((slideIndex, slideEl) => {
    /* Slide Progress
    0 - active
    1 - one slide after active slide offset
    2 - two slide after active slide offset
    -1 - one slide before active slide offset
    -2 - two slide before active slide offset
    */
    let slideProgress = slideEl.progress;

    // Do something depending on main progress or slide progress
    // ...
  });
})


Auto updating to do

@webmsgr said
add feature to only try reloading 3 times
make autoupdating do a cool thing called not fading in
give up a first born to the code gods

Thats the to do list

Implemented in #101, for schedules only but that's all that really matters


Update design

When I merged the changes from development to this branch, I noticed some issues on the events and blocks tables:

Could you have a look at what's causing that?


HAWKULAR-286 - Accounts deployed inside EAR for alerts.

@vrockai , can you check if it solves your problem?

Tested in a clean invironment with -Prest profile and it passes.


When code could release? Please!

Thank you for your attention. We are organizing the code and plan to release it within 1-2 months.

I have a question about your code release date, too.

ECCV is over in last week, but your code couldn't be released.
I wonder code release date, too.

Thank you for your attention. This is a project in cooperation with Huawei. Although we have completed the code cleanup, we are currently unable to release all content due to the protection period of the research result from our corporate partner. We may first release some key functions in this project later, hoping it can help you.


memory_optimization

For a QT PY M0, you must use the mpy file. closes #11
These are breaking changes. Learning Guide probably need updating.
Tested with examples.
Initial test code:

# SPDX-FileCopyrightText: 2023 Jose D. Montoya
#
# SPDX-License-Identifier: Unlicense

"""
TMP117 Properties Test
"""
import time
import board
import adafruit_tmp117

i2c = board.I2C()  # uses board.SCL and board.SDA
# i2c = board.STEMMA_I2C()  # For using the built-in STEMMA QT connector on a microcontroller
tmp117 = adafruit_tmp117.TMP117(i2c)
alert_status = tmp117.alert_status
while True:
    print("My ID:", tmp117._part_id)
    print("My Serial Numer: ", tmp117.serial_number)
    print("Temperature Offset: ", tmp117.temperature_offset)
    print("High Limit: ", tmp117.high_limit)
    print("Low Limit: ", tmp117.low_limit)
    print("Alert status: ", tmp117.alert_status)
    print("High alert:", alert_status.high_alert)
    print("Low alert:", alert_status.low_alert)
    print("Averaged Measurements: ", tmp117.averaged_measurements)
    print("Measurement Mode: ", tmp117.measurement_mode)
    print("Measurement Delay: ", tmp117.measurement_delay)
    print("Alert Mode: ", tmp117.alert_mode)
    print("Temperature: %.2f degrees C" % tmp117.temperature)
    time.sleep(1)

Results
Adafruit CircuitPython 8.0.4 on 2023-03-15; Adafruit QT Py M0 with samd21e18
>>> import tb
My ID: 279
My Serial Numer:  bytearray(b'\x0co\x0fpG\xa4')
Temperature Offset:  0.0
High Limit:  192.0
Low Limit:  -256.0
Alert status:  AlertStatus(high_alert=False, low_alert=False)
High alert: False
Low alert: False
Averaged Measurements:  1
Measurement Mode:  0
Measurement Delay:  4
Alert Mode:  False
Temperature: 19.52 degrees C

Hiya, optimization is needed for M0 boards where the library currently does not fit.
In order to do this, as previously discussed with @dhalbert in issue #11, I removed CV in this PR.
I saw this as a solution to solve the memory optimization issue. For sure there are tradeoffs, and maybe there are better solutions, but this one that I found to work. :)

Last commit https://github.com/adafruit/Adafruit_CircuitPython_TMP117/pull/15/commits/dd7a0ab38c8be36f9583e4cdda649baf60a35bc6 is a proposal to get the properties values more clean. I have tested and works with all the examples. However, we could also use the proposed change in https://github.com/adafruit/Adafruit_CircuitPython_TMP117/pull/15/commits/719aebd412fec6bc7fb49101a2b4e055121270c2 .

Reverted to desired state after having some quality time with GIT 😮💨


Update cmi5-profile.jsonld

Proposing to add cmi5 verbs and activity types to be associated with this profile. They should have been but were listed with the adl vocabulary previously.

Looks like I forgot to add "abandoned"


Gauge plugin installation - Still need to fetch metadata in offline mode

Due to the limited access on my company network, we have to install the gauge test plugins in offline mode. However, when I try to install the plugin with zip file, the installation process still needs to fetch the metadata from https://downloads.gauge.org/plugin, which causes the installation to fail.
❯ gauge install --file plugins/mac/gauge-ts-0.1.0.zip -l debug
Compatible version of plugin ts not found. Installing plugin ts...
Gathering metadata for ts
Downloading https://downloads.gauge.org/plugin/ts?l=&p=html-report,js,screenshot&o=darwin&a=amd64
**Failed to download ts-install.json** file: Get https://downloads.gauge.org/plugin/ts?l=&p=html-report,js,screenshot&o=darwin&a=amd64: dial tcp: i/o timeout
Failed to install plugin 'ts'.
Reason: Invalid plugin name or there's a network issue while fetching plugin details.
Plugin html-report is already installed.

❯ gauge --version
Gauge version: 1.1.6
Commit Hash: 3af456f

Plugins
-------
html-report (4.0.12)
js (2.3.15)
screenshot (0.0.1)

Can we bypass this step in offline mode?

Can you try this command please?
gauge install ts --file plugins/mac/gauge-ts-0.1.0.zip -l debug

It's working. Thank @sriv for pointing out my missing parameter.

Thanks for confirming, I'll mark this as closed


Sumof2no.

Add .py extention to the file. Add description to this PR.
Welcome to the community, looking forward to PRs for other issues from you.


add_log add cost and size log for checksum

Proposed changes
Issue Number: close #xxx
Problem summary
Describe your changes.
Checklist(Required)

Does it affect the original behavior:

[ ] Yes
[ ] No
[ ] I don't know

Has unit tests been added:

[ ] Yes
[ ] No
[ ] No Need

Has document been added or modified:

[ ] Yes
[ ] No
[ ] No Need

Does it need to update dependencies:

[ ] Yes
[ ] No

Are there any changes that cannot be rolled back:

[ ] Yes (If Yes, please explain WHY)
[ ] No

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

TeamCity pipeline, clickbench performance test result:
the sum of best hot time: 36.8 seconds
load time: 645 seconds
storage size:<PHONE_NUMBER>3 Bytes
https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/tmp/20230104095737_clickbench_pr_73371.html


Should Result only have 1 sosa:isResultOf property or a minimum of 1?

In SOSA, an activity (Observation, Actuation or Sampling) expects at least 1 sosa:isResultOf relationship.
Is there any scenarios in the ecological domain where Results are the products of more than one activity?
Related: https://github.com/ternaustralia/ontology_tern/pull/96

In the SHACL/validation step, I'd suggest either 0..1 else 1..1
1..1 does force people to create an act where sometimes it is not important so this may feel like too much burden (though ontologically there is always an act of creation).

@dr-shorthair let's reinstate 1..1 for sosa:isResultOf on Result in the SHACL while keeping the OWL restriction the same as SOSA.
We can always go from 1..1 to 0..1 quite easily, but not so much the other way around.


[Bug-RD][UI Next][V1.0.0-Alpha]The pre-task parameter was passed unsuccessfully and was overridden by the global parameter

Search before asking

[X] I had searched in the issues and found no similar issues.

What happened
The pre-task parameter was passed unsuccessfully and was overridden by the global parameter

What you expected to happen
The pre-task parameter priority is greater than the global parameter priority
How to reproduce
The pre-task parameter was passed unsuccessfully and was overridden by the global parameter
Anything else
No response
Version
dev
Are you willing to submit PR?

[ ] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

I check in local, the Parameter Priority is: Local Parameter > Global Parameter > Parameter Context


Changes from v0.23

I found an old v0.23.0 tag which had several commits, I need to review whether they have any merit.

Everything worth having is already merged.


Question about encrypting logs in Table Logger

I am using the TableLogger.cs code to log messages to Table Storage. I am encrypting the activity object using TableEncryptionPolicy:
` TableEncryptionPolicy policy = new TableEncryptionPolicy(EncryptionHelper.Rsa, null);
        _tableRequestOptions = new TableRequestOptions()
        {
            EncryptionResolver = (pk, rk, propName) =>
            {
                if (propName.StartsWith("Activity"))
                    return true;

                return false;
            },
            EncryptionPolicy = policy
        };`

Can you please explain why the following code is required in ActivityEntity? Is it because the Activity object can get too big and we need to compress it?
`public override IDictionary<string, EntityProperty> WriteEntity(OperationContext operationContext)
            {
                var props = base.WriteEntity(operationContext);
                var buffer = JsonConvert.SerializeObject(Activity).Compress();
                var start = 0;
                var blockid = 0;
                while (start < buffer.Length)
                {
                    var blockSize = Math.Min(buffer.Length - start, FieldLimit);
                    var block = new byte[blockSize];
                    Array.Copy(buffer, start, block, 0, blockSize);
                    props[$"Activity{blockid++}"] = new EntityProperty(block);
                    start += blockSize;
                }
                return props;
            }`

Since, you can only encrypt strings, I have removed the above code. Instead, I am simply serializing the Activity object into string so it can be encrypted.

Hi @ankurMalhotra
The compression is one thing.  The rest of the code ensures the 64kb size limit for byte array properties is not exceeded: https://docs.microsoft.com/en-us/rest/api/storageservices/understanding-the-table-service-data-model#property-types

Thank you for opening an issue against the BotBuilder-Azure repo. As part of the Bot Framework v4 release, we’ve moved all the Azure related work to the platform SDK repo. We will continue to support and offer maintenance updates via this repo.
From now on, https://github.com/Microsoft/botframework-sdk repo will be used as hub, with pointers to all the different SDK languages, tools and samples repos.
As part of this restructuring, we are closing all tickets in this repo.
For defects or feature requests, please create a new issue in the Bot Framework repo found here:
https://github.com/Microsoft/botframework-sdk/issues
For product behavior, how-to, or general understanding questions, please use Stackoverflow.
https://stackoverflow.com/search?q=bot+framework
Thank you.
The Bot Framework Team


⚠ ClamAV has degraded performance

In 920132a, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 440 ms

Resolved: ClamAV performance has improved in 79ea01d.


Feature/heading storybook

Addresses:
-https://github.com/IFRCGo/go-web-app/issues/577
Changes

Add Heading storybook for Heading component
Add all  heading levels

This PR doesn't introduce:

[x] typos
[x] conflict markers
[x] unwanted comments
[x] temporary files, auto-generated files or secret keys
[x] console.log meant for debugging
[x] codegen errors

@samshara Please look why build is failing.


Vulnerability Roundup 29

Obtained via vulnix -j $(nix-instantiate -I nixpkgs=. nixos/release-small.nix) on 2f1a818. Cleaned up manually for CVEs already present in #30959. May contain false positives.
libid3tag-0.15.1b (search, files)

[ ] CVE-2017-11550
[ ] CVE-2017-11551

pcre-8.41 (search, files)

[ ] CVE-2017-11164

pcre2-10.23 (search, files)

[ ] CVE-2017-8786

rpcbind-0.2.4 (search, files)

[ ] CVE-2017-8779

rsync-3.1.2 (search, files)

[ ] CVE-2017-15994

systemd-234 (search, files)

[ ] CVE-2017-15908

wpa_supplicant-2.6 (search, files)

[ ] CVE-2017-13077
[ ] CVE-2017-13078
[ ] CVE-2017-13079
[ ] CVE-2017-13080
[ ] CVE-2017-13081
[ ] CVE-2017-13082
[ ] CVE-2017-13084
[ ] CVE-2017-13086
[ ] CVE-2017-13087
[ ] CVE-2017-13088

rpcbind resolved in https://github.com/NixOS/nixpkgs/pull/32119

All of the wpa_supplicant CVEs are from KRACK Attacks which is already patched.

rsync one doesn't seem applicable being introduced in a development version after 3.1.2 was released - https://security-tracker.debian.org/tracker/CVE-2017-15994

libid3tag-0.15.1b CVE-2017-11550 looks to be covered by the Debian patches we include.

I opened a PR to port the systemd fix to our systemd fork: https://github.com/NixOS/systemd/pull/14

CVE-2017-8786 resolved in https://github.com/NixOS/nixpkgs/pull/32134/files

Redhat has closed CVE-2017-11164 with WONTFIX status https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2017-11164

@andir could you bump the systemd derivation?

I will do later tonight. Away from the keyboard for a few hours.
On Nov 28, 2017 7:40 PM, "Robin Gloster"<EMAIL_ADDRESS>wrote:

@andir https://github.com/andir could you bump the systemd derivation?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/NixOS/nixpkgs/issues/32117#issuecomment-347622118,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAm_dK80oyb-_WGK3hE4eICr7fchgxD6ks5s7FOHgaJpZM4QsBcY
.

Gentoo also has doubts whether CVE-2017-11164 is a valid bug or not https://bugs.gentoo.org/show_bug.cgi?id=CVE-2017-11164
I'm inclined to agree so I'm ticking this box.

Got anyone an idea what's going on with CVE-2017-11551 (libid3tag)?

After a quick search I have a suspicion that there is still no patch available.

I think we can safely close this issue - I'll do another roundup soon.


wget https://s.gianarb.it/hook/hook-master.tar.gz throws 404

Expected Behaviour
tar should be available
Current Behaviour
404

Quick workaround, s/hook/tinkie/g will get the last published image. I know @rawkode was working on getting a proper s3 bucket to upload to with the github automation (see https://github.com/tinkerbell/hook/issues/32), but haven't had a chance to followup on the current status recently...

@detiber S3 bucket was handed over to @gianarb. You should be good to go :)

👋  Hey! I'm trying to get a link to a tarball for hook to test it out in place of OSIE but at the moment it's quite hard to find a link for it. Is there a plan for having an S3 bucket/ArtifactHub for hook?
Thank you for all your work!
PS:
Here is where I'm coping it from at the moment:

@thebsdbox Is there an updated link where folks should expect to find the latest build of Hook?

In the releases! 🤩

@thebsdbox - any update?

I'm still new here, but I'm not sure I understand what work is necessary to close this issue. Some questions:

Where is it documented that this particular URL should be hosting hook? I couldn't find any existing references to it.
Should we nuke the make dist target that pushes to s3://s.gianarb.it/hook/${GIT_VERSION}.tar.gz
@damdo's comment about adding a link seems reasonable.

At this point, does this issue boil down to fixing the "How to use hook with Sandbox" documentation in the README to be accurate again? I noticed it also references a current_versions.sh script which no longer works.

I'm currently (AS we speak) building the ARM release.. it just takes a long time on x86.

I can see that @thebsdbox has merged https://github.com/tinkerbell/hook/pull/70 GG! 🎉
Also we now have tarballs for both ARM64 and x86_64 in the latest release: https://github.com/tinkerbell/hook/releases/tag/5.10.57.
So to your points @tstromberg:

@damdo's comment about adding a link seems reasonable.

With the new tarball release it should be easy to update the README link

Should we nuke the make dist target that pushes to s3://s.gianarb.it/hook/${GIT_VERSION}.tar.gz

I think this is one for you @thebsdbox to weight in on, my 2c are that I think I would create a GitHub Actions workflow that (either through the Makefile or directly) can build and release a tarball on git tag events (or similar). To simplify the release process and offload it to CI rather than doing it manually on one's machine and uploading it to GH.
i.e. by using something like https://github.com/softprops/action-gh-release or equivalent.
We could then point the README (and sandbox?) always to the latest versioned/released tarballs like so: https://github.com/tinkerbell/hook/releases/latest/download/hook-x86_64.tar.gz

I believe that this particular issue can be closed.. the problem that I think we have is that building a kernel with GitHub actions usually times out, especially with the cross compile builds. There already exists a PR from @detiber for this work.

Hey @nshalman is the plan then to fix the release process by tracking it in https://github.com/tinkerbell/hook/issues/78 rather than here? Thanks.

Yes, close it and thank you


If you get errors in Colab

Try this version :
https://colab.research.google.com/drive/1zoRLaQvpqEBLpxk-Vp4MtNnkaku5Lb5t?usp=sharing
I think the face-alignment version seems to be particularly prone to errors.

In fact face-alignment==1.3.5 is the latest working version.

I'll take it back. Best to stay with face-alignment==1.3.3 as you do in your version @gibiee

@kampelmuehler Thanks for your efforts!

I run this version, but I got this error. please help me
ValueError                                Traceback (most recent call last)
[<ipython-input-16-9f1905b26271>](https://localhost:8080/#) in <cell line: 1>()
----> 1 oup = model.run_single(source_path, target_path, crop_align=True,cat=True)
      2 cv2_imshow(oup)

3 frames
[/content/HeadSwap/model/third/Deep3dRec/preprocess.py](https://localhost:8080/#) in align_img(img, lm, lm3D, mask, target_size, rescale_factor)
     75     # processing the image
     76     img_new, lm_new, mask_new = resize_n_crop_img(img, lm, t, s, target_size=target_size, mask=mask)
---> 77     trans_params = np.array([w0, h0, s, t[0], t[1]],dtype=np.float32)
     78
     79     return trans_params, img_new, lm_new, mask_new

ValueError: setting an array element with a sequence. The requested array has an inhomogeneous shape after 1 dimensions. The detected shape was (5,) + inhomogeneous part.

Try this version : https://colab.research.google.com/drive/1zoRLaQvpqEBLpxk-Vp4MtNnkaku5Lb5t?usp=sharing
I think the face-alignment version seems to be particularly prone to errors.

Thanks your reply. You can also change here to face_alignment.LandmarksType.THREE_D

I run this version, but I got this error in last section.
oup = model.run_single(source_path, target_path, crop_align=True,cat=True)

please help me
ValueError                                Traceback (most recent call last)
[<ipython-input-16-9f1905b26271>](https://localhost:8080/#) in <cell line: 1>()
----> 1 oup = model.run_single(source_path, target_path, crop_align=True,cat=True)
      2 cv2_imshow(oup)

3 frames
[/content/HeadSwap/model/third/Deep3dRec/preprocess.py](https://localhost:8080/#) in align_img(img, lm, lm3D, mask, target_size, rescale_factor)
     75     # processing the image
     76     img_new, lm_new, mask_new = resize_n_crop_img(img, lm, t, s, target_size=target_size, mask=mask)
---> 77     trans_params = np.array([w0, h0, s, t[0], t[1]],dtype=np.float32)
     78
     79     return trans_params, img_new, lm_new, mask_new

ValueError: setting an array element with a sequence. The requested array has an inhomogeneous shape after 1 dimensions. The detected shape was (5,) + inhomogeneous part.

Try this version : https://colab.research.google.com/drive/1zoRLaQvpqEBLpxk-Vp4MtNnkaku5Lb5t?usp=sharing
I think the face-alignment version seems to be particularly prone to errors.

change the line 77 to
trans_params = np.array([w0, h0, s, t[0][0], t[1][0]],dtype=np.float32)

I tried on colab, but there is an error like:

I tried on colab, but there is an error like:

----> 1 model = Infer(
2             #'checkpoint/Aligner/058-00008100.pth',
3             'pretrained_models/epoch_00190_iteration_000400000_checkpoint.pt',
4             'pretrained_models/Blender-401-00012900.pth',
5             'pretrained_models/parsing.pth',
AttributeError                            Traceback (most recent call last)
 in <cell line: 1>()
----> 1 model = Infer(
2             #'checkpoint/Aligner/058-00008100.pth',
3             'pretrained_models/epoch_00190_iteration_000400000_checkpoint.pt',
4             'pretrained_models/Blender-401-00012900.pth',
5             'pretrained_models/parsing.pth',
2 frames
/usr/lib/python3.10/enum.py in getattr(cls, name)
435             return cls.member_map[name]
436         except KeyError:
--> 437             raise AttributeError(name) from None
438
439     def getitem(cls, name):
AttributeError: _3D


Huge performance regression of snapshot mode

On the benchmark page, there is a huge performance regression recently.
This issue occurs snapshot mode only. Here are recent patches related to snapshot mode.

e1c8a2ec96c29a8bf7fbe8a853bc3f9e18ed795b
7cf8b79429e3279d3de0e6f55e92a21212dc3304

cc: @LaszloLango. @zherczeg

@wateret, thanks for reporting. We'll check it.

It seems there a constant 54.9 sec increase for all tests:
http://samsung.github.io/jerryscript/benchmark/details.html?date=2016-05-19&engine=jerryscript-snapshot&benchmark=sunspider-1.0.2
http://samsung.github.io/jerryscript/benchmark/details.html?date=2016-05-20&engine=jerryscript-snapshot&benchmark=sunspider-1.0.2

We need some help since we could not reproduce this issue on RPi2 here. Could you send us an unstripped binary used by your benchmark system?

@zherczeg I'm looking at my automatic benchmark script and it seems like there's some bug in it. I'll let you know when it is fixed.

 I fixed it.

Thank you for investigating it.

It is nice to see that we are 17% faster than Duktape. Our measurements shows similar results.


Enable nullable: System.Management.Automation.Language.ITypeName

Tracking issue: #12631.

I think we shall have a discussion before specifying nullness in the documentation.
That doesn't seem to be something that is done anywhere else, and is should anyways be automatically generated based on the type.

I think we shall have a discussion before specifying nullness in the documentation.
That doesn't seem to be something that is done anywhere else, and is should anyways be automatically generated based on the type.

Currently (and unlikely to change in the near future) if there is no "?" then the reader cannot understand whether the type is annotated or not. It is in these cases that I suggest adding the standard comment.

Sure, but the vast majority of these types are internal, and the situation is no worst than it has been before.
On the flip side, it puts an extra burden on us working with this, lowering the chance of having it done at all.

The work is certainly huge and at some point we will no longer remember the details of the work already done - comments will help us.
In addition, we need comments only when there is no "?", if this sign is in the signature, then everything is already obvious - this does not create a lot of additional work. We will wait longer for MSFT team approval than add comments on rare occasions. :-)

LGTM, matches what I committed in 46fc9c97cc4b72c8b35ddb8056c2c17b2e242247 before I rebased to focus on a single interface.

@iSazonov can you update your review?


The browser cannot detect data without being installed in the default location

Describe the bug
A clear and concise description of what the bug is.
描述一下遇到的 Bug，和对应的报错信息 ./hack-browser-data -vv
The browser cannot detect data without being installed in the default location
Desktop (please complete the following information):

OS Name 操作系统名称:
Browser Name 浏览器名称:
Browser Version 浏览器版本:

Additional context
Add any other context about the problem here.
其他有用的信息

could u add gui and select location by myself

#40

duplicate with https://github.com/moonD4rk/HackBrowserData/issues/40


Changing home_url to site_url to keep subdirectories

Ticket: #598
Reviewer: @jarednova
Issue

If WP is in a sub-directory TimberImage will incorrectly strip out home_url (includes sub directory) instead of site_url (just includes protocol:host).
Solution

Change home_url to site_url
Impact

Usage

No change
Considerations

This needs testing properly by people who have the issue
Testing

None included

Coverage remained the same at 88.01% when pulling 544dbbe18df50b6aeb8824771c3d62564e5438bc on cjb-site-url-fixes into 40488f417e75d767987a4410801756ffc86f9b07 on master.

I'll review this guy today!

Coverage remained the same at 88.024% when pulling fb9d8b93472758a95c6f64a13958fbadf437a091 on cjb-site-url-fixes into ae562be8645ae92977408e73fe79e07f27637982 on master.

Coverage remained the same at 88.239% when pulling 88e7007032a87032a86bad2e0c498d9dca8e065e on cjb-site-url-fixes into 1732a147dd1f7df37fd038e648e2d383fdee72da on master.


Issue - 28064

Verifying changes against the pipeline

My apologies for triggering the pipeline prematurely. I just realized it will most likely fail. I will  try to run the pipeline commands locally next time.

@ZeeshanTamboli I have updated the description with the issue. Would it be possible to have this reviewed ? Is there anything else that is missing in the PR for example tests ? If there are tests that need to be written, I would be happy to write them out. Please let me know what the next steps would be.


[WFCORE-2353] WildFly Elytron Component Upgrade and additional integration changes.

:bangbang: Commits from this branch are used in numerous other topic branches so please do not cherry-pick or rebase. :bangbang:
The following can be resoled with this PR: -
https://issues.jboss.org/browse/WFCORE-2355
https://issues.jboss.org/browse/WFCORE-2354
https://issues.jboss.org/browse/WFCORE-2353

A coordinated update with the WildFly changes should not be required but just in case experimental builds are running: -
https://ci.wildfly.org/viewLog.html?buildId=48377&tab=buildResultsDiv&buildTypeId=WF_WildFlyCoreIntegrationExperimentsWindows
https://ci.wildfly.org/viewLog.html?buildId=48379&tab=buildResultsDiv&buildTypeId=WF_WildFlyCoreIntegrationExperiments

New experimental jobs: -
https://ci.wildfly.org/viewLog.html?buildId=48381&tab=buildResultsDiv&buildTypeId=WF_WildFlyCoreIntegrationExperimentsWindows
https://ci.wildfly.org/viewLog.html?buildId=48383&tab=buildResultsDiv&buildTypeId=WF_WildFlyCoreIntegrationExperiments

Retest this please

New experimental builds including HTTP Client update: -
https://ci.wildfly.org/viewLog.html?buildId=48408&tab=buildResultsDiv&buildTypeId=WF_WildFlyCoreIntegrationExperimentsWindows
https://ci.wildfly.org/viewLog.html?buildId=48401&tab=buildResultsDiv&buildTypeId=WF_WildFlyCoreIntegrationExperiments

Two more experimental builds, the failing test has been temporarily ignored: -
https://ci.wildfly.org/viewLog.html?buildId=48475&tab=buildResultsDiv&buildTypeId=WF_WildFlyCoreIntegrationExperimentsWindows
https://ci.wildfly.org/viewLog.html?buildId=48473&tab=buildResultsDiv&buildTypeId=WF_WildFlyCoreIntegrationExperiments

@bstansberry Still waiting on the Windows build but the Linux experimental build is now clear.


setUp/tearDown functions should apply to sub-groups

Currently, if a setUp or tearDown function is defined for a group of tests, it doesn't apply to sub-groups nested within the main group. This is the case even if those sub-groups don't define their own setUp/tearDown functions. This seems less-than-optimally useful.

This issue has been moved to dart-lang/test#168.


Fix wrong log info, should be rootPath

Found a wrong log info:
I0131 16:14:08.651232 53342 NebulaStore.cpp:81] Scan path "/data/nebula/meta_v2_master/0"
should be:
I0131 16:14:08.651232 53342 NebulaStore.cpp:81] Scan path "/data/nebula/meta_v2_master/nebula/0"

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.guojun seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.guojun seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

Hi @guojun85 , thanks for your contribution! This is Jamie Liu with the Nebula Graph community. So we'd like to send you a Nebula Contributor certificate via email. Also, we will ship you a mug to mark this special moment. Please let me know where I should send the email and ship the mug. Thanks! You can reach me via jamie.liu at vesoft.com. Looking forward to your email. :)


Makes PythonEditor wait for analyzer to load before continuing

Makes PythonEditor wait for analyzer to load before continuing. This stabilises (at least) the refactor rename tests.

lgtm :+1:


refactor: split wallet CreateKey into CreateSigningKey & CreateEncryptionKey

Replaced wallet.CreateKey with CreateEncryptionKey, since it's an encryption key (curve25519) and introduced a new CreateSigningKey method that actually creates signing keys (ed25519).
Updated references/usages to use correct keys.
Signed-off-by: Filip Burlacu<EMAIL_ADDRESS>

@sandrask @Baha-sk


Menu: Allow simplified submenu syntax

Description

Part of #10255. See example page for the new simplified syntax.
The menu activator usually creates a Button. Now if it's detected that it's a part of a parent menu, a MenuItem will be created to house it instead. Traditionally it was put inside a MenuItem manually but I'm moving toward a simplified approach for the user.
How Has This Been Tested?

Type of Changes

[ ] Bug fix (non-breaking change which fixes an issue)
[X] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation (fix or improvement to the website or code docs)

This is what it looked like with the new syntax but the old code:

Should be

Checklist

[X] The PR is submitted to the correct branch (dev).
[X] My code follows the code style of this project.
[ ] I've added relevant tests.

Needs a test that checks if it creates a button or a menu item

Migration Guide:

MudMenus that were nested inside another MudMenu will now be rendered as a MudMenuItem instead of MudButton

It is a change for the better in any case. I just added the breaking change label for good measure.

@ScarletKuro If you have any concerns let me know so I can take care of them in my follow up PRs

This should be added to migration guide, I guess you could create a section for all MudMenu chances, you should have the rights to edit my comment I think


⚠ Bofrost.at has degraded performance

In a67fe93, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 2487 ms

Resolved: Bofrost.at performance has improved in f981f64 after 6 minutes.