Move to a strategy of targeting a grails version by branch version

@sbglasius I'm doing cleanup on the repo to start.  This change:

Removes the older grails versions from the 6.0.x branch - the idea is we would create branches for the older versions if we need to do a prior release.  Moves the grails6/* files to the root.
Update references to vsachinv & sheehan to be this repo instead.
Fixes the publish action so that it invokes the right gradle task.
Adds Sachin Verma to the README.md since they were added to ConsoleGrailsPlugin.groovy
Adds .sdkmanrc to define the java version used by default in development.

I was going to suggest after merging this that we enable publishing to the grails repo like the other projects.  Then we can update to grails 7.

ConsoleGrailsPlugin -> WebConsoleGrailsPlugin

We also need a build and snapshot publish actions.  Use this , but update to Liberica.   Update it to run all the tests.

Change the version from version=6.0-M2 to version=6.0.0-SNAPSHOT

Can you update the wrapper to 8.10.2?

Can you update the wrapper to 8.10.2?

I was going to wait until 7.0.x for the Grails 7 compatibility.  So far this is just getting a release for Grails 6.

Everything but the gradle upgrade is done.  I'd say we merge this so we can start work on the 7.0.x build.


Question: Working with two channels to the same public node, one private one announced.

I'm struggling a bit with trying to move sats around and specify which channel to use.
Most of the tools in BOS seem to require a public node address or alias but for this case I really need to give a specific channel in the --out field because of my two connections.
I'm trying to move sats OUT through the PUBLIC channel not the PRIVATE one. I've tried to use the --avoid option with the channel ID of the channel I DON'T want to use.
This is also made complicated by my having a public channel to the node I'm trying to send funds to (and if I don't specify --out that channel will always be used of course).
Am I missing some option that lets me decided which CHANNEL to use for a specific payment rather than which connected node/peer?
It seems that any time I use the --avoid option I get:
err:
  - 503
  - UnexpectedSendPaymentFailure

Specifying a channel for a payment is not supported

Specifying a channel for a payment is not supported

Is this technically feasible?
I guess it's somewhat unusual to have ended up with 3 channels to the same node but that's what I've got.

You could try bos call pay and specify an outgoing channel id there
I'm not sure of the full use case to say what is possible and not

Thanks. I'm phasing out using private channels so this is less of an issue for me.


Phex Ehex Wbtc on pulsechain

Description
Replace this with a description of your changes.
Copilot

🤖 Generated by Copilot at ebc8d06
Summary
💸🚀📊

This pull request adds a new applet called pulseprice2, which shows the prices of some tokens on PulseChain, a fork of Ethereum. The applet consists of a Starlark file PULSEPRICE2.star that contains the logic and graphics, and a README file README.md that documents the applet.

Pulse Price applet
Shows token prices on screen
Winter of crypto

Walkthrough

Create and document a new applet for displaying PulseChain token prices (link, link)

Phex Ehex Wbtc on pulsechain


adding random joke generator files #102

Description
I've created a random joke generator that will use a rest API to generate jokes.
Motivation and Context

How Has This Been Tested?

I have tried requesting the API several times and it always results in providing a new joke.

Screenshots (if appropriate):

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.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.

@its-puneet kindly merge this pull request and label it with hacktober fest.


Copy the style from the link to the float

So that the float image can have background styles. It's useful when the float image is a transparent dynamic drawing lines(such as a road path) and background is an image (such as a map).

Thanks for your time to make this PR. I think I understand your use case but I don't understand the implementation, why copy inline styles from element to another? I think this also may be too opinionated to live within a plugin, is there a strong reason not for these properties to be declared in a stylesheet specific to the implementation?

Hi Matt,
Thanks for you reply! In my case, the copied style is a dynamic background image. Honestly I don't know how to implement it in stylesheet.

Ahh, I see. Have you tried using the onShow and onHide callbacks to implement this functionality?

No. Thanks for the tip! I'll try it later.


chore: new trigger for docs flow

Description
New trigger for docs workflow
Related Issue
Fixes #

Relates to #
Type of change

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Other (security config, docs update, etc)

Checklist before merging

[x] Test, docs, adr added or updated as needed
[x] Contributor Guide Steps followed

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

:exclamation: No coverage uploaded for pull request base (main@23e7c78). Click here to learn what that means.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files

@@           Coverage Diff           @@
##             main     #489   +/-   ##
=======================================
  Coverage        ?   83.21%
=======================================
  Files           ?       23
  Lines           ?      727
  Branches        ?      123
=======================================
  Hits            ?      605
  Misses          ?      114
  Partials        ?        8

Flag
Coverage Δ

pull_request
83.21% <0.00%> (?)

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


Replace PlaceIMG with something else

Fullstack Bulletin currently uses PlaceIMG as a way to get fallback article images when an image cannot be found.
Unfortunately, PlaceIMG is shutting down.
We need to find and integrate an alternative, for instance Unsplash, through their APIs
Quick PoC
curl "https://api.unsplash.com/photos/random?query=tech&client_id=<SOME_CLIENT_ID>" | jq -r .urls.small

# https://images.unsplash.com/photo-1526374965328-7f61d4dc18c5?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3w0NjYzNjZ8MHwxfHJhbmRvbXx8fHx8fHx8fDE2ODc2ODYzMzF8&ixlib=rb-4.0.3&q=80&w=400

It happened! Newsletter build failed yesterday, this is now a priority:
PlageIMG website today

Result from latest execution of the Step Function


Add SCRT as a supported asset for Nolus mainnet

ci is failing, could you adjust the json to make ci pass

nvm its unrelated to this pr


Is there a way to load clip on demand for saving web flow data?

The video clips like:
{
  clip00: {src: 'static/video/00.jpg', frames: 24, cols: 6, fps: 12},
  clip01: {src: 'static/video/01.jpg', frames: 24, cols: 6, fps: 12},
  clip02: {src: 'static/video/02.jpg', frames: 24, cols: 6, fps: 12},
  clip04: {src: 'static/video/04.jpg', frames: 24, cols: 6, fps: 12},
  clip05: {src: 'static/video/05.jpg', frames: 24, cols: 6, fps: 12},
}

I visit the website and the canvid will switch the clip to a specific one in some condition.  Is there a way for saving the transferred network data if some clips have no necessary being played?
Or I have to get the condition first then create the canvid dynamically?

We load everything that is defined under the videos parameter. So if you want to load only specific ones you need create the canvid dynamically.


Move actions to templates

This makes it easier to add action specific rendering (e.g. hostmasks in join messages).
This fixes #86 and #55.

Looks all good to me apart from the minor issues I pointed out, so I will :+1: this one. Great change, glad to finally be able to see the hostmasks and ident too.

Looks great! :+1:
Regarding @maxpoulin64's comment, I think he has a point, but definitely not to worry for this PR, we can improve over time as there are different strategies we could apply here.


feat: enforce intermediate forwarder

This PR aims to introduce a potential workaround for the issue disclosed by SCV here
The main issue is that the packet forwarding middleware allows a user to use any address as the forwarder. This allows malicious users to specify an address that they do not control as an intermediate hop which could impact downstream modules that rely on the IBC packet sender for authentication. (e.g. IBC-hooks)
This change forces the intermediate forwarder to be the IBC hooks module account so that there is no way to spoof any addresses. Semantically, this also makes sense since we are requesting the PFM to forward for us and the receiver should see that the packet came from the module.
cc: @jackzampolin

cc: @jtieri too

Thanks for providing this!
I think the idea of enforcing a forwarder address is good, but I don't think it should be the module address. When we set it to the module address, all forwarded tokens will be received from the same sender, which removes the information about the original sender. Instead I think we should do something like:
func DeriveIntermediateAddress(port, channel, originalSender string) (string, error) {
       senderStr := fmt.Sprintf("%s/%s/%s", port, channel, originalSender)
       senderHash32 := address.Hash(types.IntermediateAddrPrefix, []byte(senderStr))
       addr := sdk.AccAddress(senderHash32[:])
       bech32Prefix := sdk.GetConfig().GetBech32AccountAddrPrefix()
       return sdk.Bech32ifyAddressBytes(bech32Prefix, addr)
}

This gives us a bech32 addr that is unique to the path taken and allows the receiver to verify its validity if provided in the message (i.e.: if the message includes the original sender and expected path, the receiver can hash it and verify that it is, indeed, the path the packet took from the original sender).

@nicolaslara Agree with your take that we lose all information of the initial sender and that's undesirable. The only way to get the actual sender is to perform a look-up using the IBC packet sequence which is clunky.
Was toying with your idea as well but the main issue that I was struggling with is how the initial IBC transfer message should look like:
transfertypes.FungibleTokenPacketData{
		Denom:    "uosmo",
		Amount:   "1000000",
		Receiver:  "<any random address?>",
	}

If we generate an intermediate address, then we are ignoring the receiver in the initial fungible token packet by replacing it with a generated address. It might also be slightly more complex to move the token ownership from the Receiver to the new generated address so that the transfer module knows where to take the tokens from when forwarding the packet.
Furthermore, with this approach, without knowing the sender beforehand, we still need to do a look-up with the IBC packet sequence to find the original sender.

Yeah, I think we should just ignore (or better yet, get rid of) the receiver in the intermediate steps. On the sender, the receiver can be derived without needing to query any new information (just hash the string and bech32 encode it). We have a utility function for that on the osmosisd cli.
I agree it's odd that you either have to do that (if we enforce it should match) or have any random address that gets discarded, but that's what is happening on this implementation as well, right? the receiver is replaced by the module addr.

Furthermore, with this approach, without knowing the sender beforehand, we still need to do a look-up with the IBC packet sequence to find the original sender.

I don't think so, the sender is included in the ics20 packet

that's what is happening on this implementation as well, right? the receiver is replaced by the module addr.

This implementation enforces that the receiver must be the module account else it fails the transfer.
It will look like Sender -> Module -> Receiver

I don't think so, the sender is included in the ics20 packet

What I meant was the sender would be the result of bech32(fmt.Sprintf("%s/%s/%s", port, channel, originalSender)) and without knowing the originalSender on the destination chain, the recipient will still need to check on the intermediate chain to verify the sender.
Actually, both solutions have some drawbacks. Should PFM be implemented as a separate message altogether?
types.ForwardFungibleTokenPacketData{
		Denom:    "uosmo",
		Amount:   "1000000",
		Next: {...}
	}

Then under the hood, it will use the transfer module to handle the logic and generate the intermediate address using the sender address like you mentioned. Feel like this is the cleanest approach.

Discussed this with Jack at nebular, and realized the issue with getting rid of the intermediate receiver field is that if the intermediate chain doesn't have PFM, then there is no fallback address for users to recover the funds. I think the right solution here is to keep the receiver field but use it as a fallback address. If we fail to forward, then the funds are left on the receiver addr. What do you think about that @javiersuweijie ?

Closing this in favour of: https://github.com/cosmos/ibc-apps/pull/72


Error when installing via DO cloud install

Edit: Reading through install, this is an error output from the install script itself... seems digital ocean's 14.04 image now contains python-openssl?
You may need to identify if you're installing via one-click install, and remove python-openssl
##########################################################

It appears that you have the python-openssl installed.
There are known issues with this package that can cause
the Carbon service to fail to start. If you don't need
the python-openssl library, it's recommended that you
uninstall this package before continuing.

  $ sudo apt-get remove python-openssl

More information is provided at the link below.

https://github.com/graphite-project/graphite-web/issues/1721#issuecomment-253279181

##########################################################

Fixed via #67.


Support for event emitter pattern to fulfill intent requests

I want to use event emitter pattern for processing the google intent request as below
1)Consume request for intent
2)Use event emitter to handle intent request
3)Respond to intent request
As intent requests are expecting to return Promise only, the above scenario is giving me following error:
Error: No response has been set. Is this being used in an async call that was not returned as a promise to the intent handler?
My code snippet is as follows:
dialogflowApp.intent('Default Fallback Intent', conv => {
    var envelope = {
        "sender_id": conv.user_id,
        "message": { text: conv.query },
        "requestEnvelope": conv
    };

    var conversation = require(path.resolve('.', 'modules/conversation.js'));
    conversation.emit("text_message", envelope);
})

//this function is called from event emitter
sendResponse(text,requestEnvelope){
requestEnvelope.conv.ask(text);
}

Is possible to do this without returning a promise?
Can we add timeout error handler which will execute when event emitter failed to fulfill the request?

Is your event emitter performing any asynchronous tasks? If you make the intent return a promise of some sort, that may make the flow work the way you intended.

Here's an example to convert an event emitter to a promise.
Say there's a flow where you emit event1 and expect to receive event2 as a response to event1.
Then you can convert it to a promise like so:
const emitter = new EventEmitter()

// ...

dialogflowApp.intent('intent', conv => {
  // ...
  return new Promise(resolve => {
    // create `event2` callback function
    const callback = receivedData => {
     // as soon as we get data back, unregister the event handler to prevent handling future response events
      emitter.off('event2', callback)

      // resolve the promise with data received from the event emitter
      resolve(receivedData)
    }

    // using `on` since assuming event emitter does not have a `once` function
    // register handler for response
    emitter.on('event2', callback)

    // send data to event emitter
    emitter.emit('event1', sentData)
  }).then(receivedData => {
    // ... do something with the data
    conv.ask(response)
  })
})

Is your event emitter performing any asynchronous tasks? If you make the intent return a promise of some sort, that may make the flow work the way you intended.

yes. I have some complex asynchronous code which executed after event is triggered. The point of using event emitter is to avoid chain of callbacks while travelling from function to function.


Register version 0.5.1

@JuliaRegistrator register()

Registration pull request created: JuliaRegistries/General/51240
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v0.5.1 -m "<description of version>" 83c4387b950a083e43d86749b6260112b377466f
git push origin v0.5.1


Create pagination schema

Description
Add create_pagination_schema method for create a custom schema of pagination object.
Just override this method for create a custom pagination schema.
I addictioned also one example and readme explanation

My two cents:
Basically very nice idea and also adding a changelog makes sense.
But using inheritance for configuration is actually an anti-pattern in object oriented design.

My two cents:
Basically very nice idea and also adding a changelog makes sense.
But using inheritance for configuration is actually an anti-pattern in object oriented design.

Why not something like this?
res = pagination.paginate(                 AuthorModel,                 schema,                 True,                 pagination_schema_hook=lambda current_page, page_obj: {                     "next": page_obj.has_next,                     "prev": page_obj.has_prev,                     "current": current_page,                     "pages": page_obj.pages,                     "per_page": page_obj.per_page,                     "total": page_obj.total,                 },             )
The paginate method:
def paginate(self, query_model, schema, marshmallow=False, post_query_hook=None, pagination_schema_hook=None):`
    ....
        if pagination_schema_hook:
            try:
                pagination_schema = pagination_schema_hook(current_page, page_obj)
            except TypeError:
                raise ValueError("Incorrect signature for pagination schema hook")
        else:
            # TODO: make the pagination schema configurable
            pagination_schema = {
                'hasNext': page_obj.has_next,
                'hasPrev': page_obj.has_prev,
                'currentPage': current_page,
                'pages': page_obj.pages,
                'size': page_obj.per_page,
                'totalElements': page_obj.total,
            }

Why not something like this?
res = pagination.paginate(                 AuthorModel,                 schema,                 True,                 pagination_schema_hook=lambda current_page, page_obj: {                     "next": page_obj.has_next,                     "prev": page_obj.has_prev,                     "current": current_page,                     "pages": page_obj.pages,                     "per_page": page_obj.per_page,                     "total": page_obj.total,                 },             )
The paginate method:
def paginate(self, query_model, schema, marshmallow=False, post_query_hook=None, pagination_schema_hook=None):`
    ....
        if pagination_schema_hook:
            try:
                pagination_schema = pagination_schema_hook(current_page, page_obj)
            except TypeError:
                raise ValueError("Incorrect signature for pagination schema hook")
        else:
            # TODO: make the pagination schema configurable
            pagination_schema = {
                'hasNext': page_obj.has_next,
                'hasPrev': page_obj.has_prev,
                'currentPage': current_page,
                'pages': page_obj.pages,
                'size': page_obj.per_page,
                'totalElements': page_obj.total,
            }

all right, soon i'll be making this change

all right, soon i'll be making this change

@NMO13 i make changes based in consideration
I think that a new issue for custom schema of result can be make
Something like
res = pagination.paginate(
                AuthorModel,
                schema,
                True,
                endpoint_return_schema=lambda collection, pagination_schema: {
                    "result": collection,
                    "meta": pagination_schema,
                },
            )

If somebody need change name of data field or pagination

@NMO13 i make changes based in consideration
I think that a new issue for custom schema of result can be make
Something like
res = pagination.paginate(
                AuthorModel,
                schema,
                True,
                endpoint_return_schema=lambda collection, pagination_schema: {
                    "result": collection,
                    "meta": pagination_schema,
                },
            )

If somebody need change name of data field or pagination

@NMO13 i make changes based in consideration
I think that a new issue for custom schema of result can be make
Something like
res = pagination.paginate(
                AuthorModel,
                schema,
                True,
                endpoint_return_schema=lambda collection, pagination_schema: {
                    "result": collection,
                    "meta": pagination_schema,
                },
            )

If somebody need change name of data field or pagination

That would be a reasonable extension. But as you said, this is a different issue and should be handled in a different PR.

@NMO13 i make changes based in consideration
I think that a new issue for custom schema of result can be make
Something like
res = pagination.paginate(
                AuthorModel,
                schema,
                True,
                endpoint_return_schema=lambda collection, pagination_schema: {
                    "result": collection,
                    "meta": pagination_schema,
                },
            )

If somebody need change name of data field or pagination

That would be a reasonable extension. But as you said, this is a different issue and should be handled in a different PR.

sorry i forget remove this print 😅.
the print was removed?

sorry i forget remove this print 😅.
the print was removed?


fix(ast): Rename location to loc in AST

BREAKING CHANGE: There's nothing inherently wrong with having AST node locations in a property called node, but it does break compatibility with more common ASTs like the estree standard and makes integration with tools that understand estree significantly more difficult. Rename location to loc in the entire brs syntax tree to improve estree compatibility and enable more advanced eslint rules.

This will require a few small changes in https://github.com/hulu/roca when this lands.  If we'd already hit 1.0 I'd say this requires 2.0.0, buuuuuuuuut we haven't.  Once I add range support to those nodes (luckily just an additive change) we might be able to consider a 1.0 release 🤔

Either way, this probably warrants a -rc release? 🤔


Javascript Group Project(Capstone 2)

Link to the group project
https://github.com/edubew/Capstone-javascript-project2/projects/2
Note

This group consists of two members, @kelomo2502  and   @edubew  and each one of the members has been assigned tasks they will be working on throughout the project

Approved ✔
Hi team
Congratulations on completing this project! 👏🏼 🎉
You have correctly implemented all of the requirements📃 correctly and without any errors⚠ or bugs🪲.
Cheers and good luck in your next milestones! 🍀
Feel free to leave any questions or comments in the PR thread(don't forget to tag me 😄) if something is not 100% clear.

As described in the Code reviews limits policy  you have a limited number of reviews per project (check the exact number in your Dashboard). If you think that the code review was not fair, you can request a second opinion using this form.


Multiple monitor: Popup only appears on primary screen

The dictionnary popup seems to only appear on the primary monitor, even if JL is set on the second monitor. This is annoying when playing a vn on multi monitors, as you have to keep switching between the two.

Fixed by https://github.com/rampaa/JL/commit/ee045229a0dee8da5f208102b489dfdf4c427607 (probably, I don't have multiple monitors to test it).


Aidstream UI minor fixes

Results

[x] edit and delete icons (with link) are shown for each result data in activity-view page
[x] show edit and delete icons (with link) are shown in each result view page
[x] "Activity view" link is shown in result edit/view page
[x] replace current edit icon in activity-view page for results block with "list" icon

Transactions

[x] edit and delete icons (with link) are shown for each transaction data in activity-view page
[x] show edit and delete icons (with link) are shown in each transaction view page
[x] "Activity view" link is shown in result edit/view page
[x] replace current edit icon in activity-view page for results block with "list" icon

Document-link

[x] search box is shown in uploaded-document-list page in both upload and selection popup

General

[x] select2 is enabled in all the dropdowns in the forms
[x] broken image link is fixed in settings page
[x] selected element menu is shown as per visible-element-form. Like shown below, when the sector element-form is in view, the "sector" menu should be shown in the right side when the page gets loaded.

cc @manibibek


web-sys Missing method

I'm trying to write a library that includes support for gamepads via the Navigator interface.  The gamepad object is supported. but navigator.getGamepads() isn't (https://developer.mozilla.org/en-US/docs/Web/API/Navigator/getGamepads).  The method is in the webidl file:https://github.com/rustwasm/wasm-bindgen/blob/master/crates/web-sys/webidls/enabled/Navigator.webidl#L167 but it doesn't show up in the docs (https://rustwasm.github.io/wasm-bindgen/api/web_sys/struct.Navigator.html) and trying to use it from my code results in a compilation error, even though I have enabled both the Navigator and Gamepad features in my crate's features.
The methods immediately before and after getGamepads() in the webidl file are present and usable, and I can't see any reason why they would be there but getGamepads() wouldn't.  The only difference I can see is that getGamepads() returns a sequence of nullable objects, which I don't see many other examples of.  I briefly looked at the web-idl compiler and nothing jumped out at me as handling this case differently, but it's very likely I overlooked something.
Can anyone give my guidance as to why this method would not be present?

Probably related to https://github.com/rustwasm/wasm-bindgen/issues/1038, https://github.com/rustwasm/wasm-bindgen/issues/1036, https://github.com/rustwasm/wasm-bindgen/pull/1043, and https://github.com/rustwasm/wasm-bindgen/pull/1077.

Indeed, this seems to be a duplicate of #1038.  I thought I had verified that sequences were supported, since getVRDisplays() was present and it also returned a sequence, but that sequence was wrapped in a Promise, which masked it.


Update LAB_AK_01_Lab1_Ex2_message_encryption.md

minor change to match UI, MS changed the location of the Encrypt option.
Module: 00
Lab/Demo: 00
Fixes # .
Changes proposed in this pull request:

I've tested and approved this change. Thank you for bringing this to our attention.


When is the next planned release?

I think probably early next week

Thank you!

Quick update, there are a couple of PRs that want to include in the release so next week looking more likely

Thank you for the update.

New release is up: https://github.com/nats-io/nats-operator/releases/tag/v0.2.2


Fixing up various files so that rake by itself actually runs.

Require jcode only for Ruby < 1.9
Fix Ruby syntax errors in Bugzilla service
Fixed an encoding issue in Socialcast service
Updated Target Process and YouCast services to use an Array of commit['message']. Was this EVER an array of strings?

You can iterator over a string's lines.  Thats what TargetProcess and YouTrack are doing.  May just change that to a split("\n") or something.
GitHub Services actually is supposed to run on 1.8.7, but it's nice to know that it's not hard at all to make it 1.9 compatible.

Done and done.

Awesome, thanks!


Using Renderdoc API - better ways to determine a replay app?

I want to use renderdoc replay api in my own project to do some automatic log analysis. As I can't find much documentation on this, I encountered many problems, and this is one of them: app crashes when running RENDERDOC_CreateReplayRenderer. After digging in the source I found that in win32_libentry it determines whether the host process is a replay app ONLY by its file name.... I had to rename my program to renderdoccmd.exe to make it work. Is it possible to be improved? Or is it I'm not using it the right way... Thanks!

Hey, yes I will admit this is totally a hack :(.
The problem is that I need to know very early on (before hooking) whether I'm in the replay application or in something to capture, since I can't rely on function calls from the application to initialise later. This happens inside DllMain() which is kind of restricted on what it can do - although I break those rules sometimes when I have no other choice. It's before any function calls from the application to the dll, so I can't simply export a library function to flag an application as replayer.
One solution would be to make a separate build of RenderDoc that doesn't do any work inside DllMain() and instead requires explicit initialisation from the outside. I don't really want to start building and distributing something like that, but I wouldn't mind adding it as something which is disabled on a #define that you could customise when building locally. However if you're changing a build locally, you could just add your exe name to the list in the hack... We could also just add some substring to the hack which isn't going to appear elsewhere like ".renderdoc.replay.exe" for you to include in your exename, but it's nasty to require a particular .exe naming just to work.
I'm open to suggestions though, if you or anyone has any ideas - as long as it works within the above constraints I'm happy to hear it.
PS, I'm pretty excited you're interested in using the replay API :). It sounds pretty cool and I'd be happy to help you out with anything you run into problems with. This API really isn't documented/bullet-proof yet, it's mostly used to abstract away the UI from the meat of the program, but I think there are some cool possibilities with using it. Bear in mind - it's very likely going to change in breaking ways regularly since I don't try to keep it stable.

Thanks very much for your reply! I'm OK with the current solution. Actually I'm desperate for some help cause I'm neither familiar with win32 programming or directx either, but I'm afraid I shouldn't pour out many detailed problems. Anyway I'll describe what I'm doing, any comments or guidance is appreciated!
In this paper, the author extracted scene segmentation data from GTA frames. What I want is the 3D position and orientation of the scene objects, especially cars. Therefore my custom program needs to:

Automatically capture frames from  game periodically
Save the rendered frame to image file
From each frame, find the drawcall of the car body rendering. (May be inferred from the mesh pattern)
Find the 3D bounding box of the car in camera view. (currently I can see SV_POSITION of each vertex in renderdocui, I need all of them in order to find the bounding box)
Optionally, render the 3D bounding box to the frame to check correctness

Currently I'm not sure whether to use native win32 or c# framework of renderdocui, and I haven't yet find method of most of the functions above... What I have done is some exploration in rederdocui, and a native win32 application which can list all the drawcalls.

I'm not sure if this is best to approach from the win32 or C# side. It depends on your comfort level and whether you want a clean solution vs. just hacking something together.
Capturing the frames and saving the output image can be fairly easily automated. You can queue a capture every 120 frames for example or something, and every capture has an easy to preview 'final image' - you can look at how renderdoccmd does its preview and finds the backbuffer.
Identifying the car seems like it's complex, but if you have an idea of how to do that then all the properties of the draw and mesh are freely available.
Getting the bounding box, if you're coding in C# then the bounding box is already calculated in the mesh viewer for input, it should be possible to pull it out. If not then you could maybe use that as a guide of how to calculate it yourself.
Rendering the bounding box would be the hardest, since nothing built-in to renderdoc will do that. However you mostly want to do the same thing as the mesh viewer's preview render, but with less work - ie. removing any background checkerboard, or viewport frustum or axis, etc.
Hopefully that is somehow helpful :). Let me know if you have more specific questions that will be easier for me to answer.

I decided to add a window in the current renderdocui c# project to do my works. But when I try to save the texture of the final image I found that it's different from what I see in the texture viewer (looks darker). On the other hand I don't know how to directly export images from the backbuffer. I tried to create bitmap from window handle in a win32 project but the result image is distorted. Would you please help me with this problem? Thanks a lot!

For saving a texture you should definitely use the built-in functionality, via SaveTexture on the ReplayRenderer. Trying to do it via bitmaps or window handles will be quite unreliable.
When you say that it looks darker, can you give an example? I wonder if it might simply be gamma vs linear. Do you have the gamma display checkbox ticked when viewing in the texture viewer?

If you save as JPG/PNG or other conventional formats, the data will be interpreted as being in sRGB space, so you need to tick the checkbox in the texture viewer to get the equivalent visualisation.

I found that for swapbuffer the checkbox is fixed to be checked.
For other events, the saved images have the same brightness as seen in the texture viewer when the checkbox is ticked, as you said.

That's quite strange behaviour, but it does look like the sRGB curve being applied wrongly somewhere.
I can't reproduce this on my local captures of GTA5 - can you share somewhere the capture that produces the above problem?

Please download at https://drive.google.com/open?id=0B6qhYXtjS8EgUUNJdWxzc29YOVE . Thanks!

Thanks! I've repro'd it - I will look into what's going wrong tomorrow. I think it might be because the backbuffer format is B8G8R8A8_UNORM, but I'll need to check.

I think that commit should do the trick, let me know how you get on.
I'm also going to close this issue since the original thing is probably not solvable and you are OK with the current situation. If you have any other problems or bugs, feel free to open a new issue about them. If you need just general help or advice, you can always email me and I'm happy to help.

OK, thanks a lot!


Added ACCEPT_LOCK in common_input_processing

https://github.com/sctplab/usrsctp/issues/554
According to the locking key in user_socketvar.h so_head should be
protected with ACCEPT_LOCK

You are right. I merged an equivalent PR. Sorry for taking so long.


IPv6 addresses are resolved too eagerly

We don't want to do DNS resolution as a part of URL parsing.
"main" prio=5 tid=0x00007f90d3803000 nid=0x1903 runnable [0x0000000110171000]
   java.lang.Thread.State: RUNNABLE
	at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)
	at java.net.InetAddress$1.lookupAllHostAddr(InetAddress.java:901)
	at java.net.InetAddress.getAddressesFromNameService(InetAddress.java:1293)
	at java.net.InetAddress.getAllByName0(InetAddress.java:1246)
	at java.net.InetAddress.getAllByName(InetAddress.java:1162)
	at java.net.InetAddress.getAllByName(InetAddress.java:1098)
	at java.net.InetAddress.getByName(InetAddress.java:1048)
	at com.squareup.okhttp.HttpUrl$Builder.decodeIpv6(HttpUrl.java:741)

Fixed with https://github.com/square/okhttp/pull/1618.


Unable to run -- Python Import Error

Hello, your software was working okay until I did a git pull and grabbed all of the recent changes. Now when I run python inference_realesrgan.py -n RealESRGAN_x4plus -i image.png, I get this Python Import Error:
Traceback (most recent call last):
  File "/opt/Real-ESRGAN/inference_realesrgan.py", line 7, in <module>
    from realesrgan import RealESRGANer
  File "/opt/Real-ESRGAN/realesrgan/__init__.py", line 5, in <module>
    from .utils import *
  File "/opt/Real-ESRGAN/realesrgan/utils.py", line 8, in <module>
    from basicsr.utils.download_util import load_file_from_url
ImportError: cannot import name 'load_file_from_url' from 'basicsr.utils.download_util' (/home/geeknik/.local/lib/python3.9/site-packages/basicsr/utils/download_util.py)

Running Python 3.9.7 on Fedora with basicsr in /usr/local/lib/python3.9/site-packages (<IP_ADDRESS>).

Fixed by forced copying new basicsr files over old basicsr files. Thank you.


Device Request - [Tuya Zigbee Human Presence Detector] - [TS0601] / [_TZE204_ztqnh5cg]

Prerequisites:

Before requesting a device addition, please ensure there is not already a request for the device among the open issues.
Make sure your Homey is upgraded to firmware v5 or higher.
You need a physical example of the device.

Device Information

Device Name: Tuya Zigbee Human Presence Detector
Device Model: TS0601 / _TZE204_ztqnh5cg
Device Description: Zigbee Human Presence Detector
Link to device image: https://www.aliexpress.com/item/1005007245837164.html

Device Interview
"ids": {
"modelId": "TS0601",
"manufacturerName": "_TZE204_ztqnh5cg"
},
"endpoints": {
"ieeeAddress": "a4:c1:38:ff:ac:66:8d:68",
"networkAddress": 36926,
"modelId": "TS0601",
"manufacturerName": "_TZE204_ztqnh5cg",
"endpointDescriptors": [
{
"status": "SUCCESS",
"nwkAddrOfInterest": 36926,
"_reserved": 20,
"endpointId": 1,
"applicationProfileId": 260,
"applicationDeviceId": 81,
"applicationDeviceVersion": 0,
"_reserved1": 1,
"inputClusters": [
4,
5,
61184,
0
],
"outputClusters": [
25,
10
]
},
{
"status": "SUCCESS",
"nwkAddrOfInterest": 36926,
"_reserved": 10,
"endpointId": 242,
"applicationProfileId": 41440,
"applicationDeviceId": 97,
"applicationDeviceVersion": 0,
"_reserved1": 0,
"inputClusters": [],
"outputClusters": [
33
]
}
],
"deviceType": "router",
"receiveWhenIdle": true,
"capabilities": {
"alternatePANCoordinator": false,
"deviceType": true,
"powerSourceMains": true,
"receiveWhenIdle": true,
"security": false,
"allocateAddress": true
},
"extendedEndpointDescriptors": {
"1": {
"clusters": {
"groups": {
"attributes": [
{
"acl": [
"readable",
"reportable"
],
"id": 0,
"name": "nameSupport",
"value": {
"type": "Buffer",
"data": [
0
]
},
"reportingConfiguration": {
"status": "NOT_FOUND",
"direction": "reported"
}
},
{
"acl": [
"readable",
"reportable"
],
"id": 65533,
"name": "clusterRevision",
"value": 2,
"reportingConfiguration": {
"status": "NOT_FOUND",
"direction": "reported"
}
}
]
},
"scenes": {
"attributes": [
{
"acl": [
"readable",
"reportable"
],
"id": 0,
"reportingConfiguration": {
"status": "NOT_FOUND",
"direction": "reported"
}
},
{
"acl": [
"readable",
"reportable"
],
"id": 1,
"reportingConfiguration": {
"status": "NOT_FOUND",
"direction": "reported"
}
},
{
"acl": [
"readable",
"reportable"
],
"id": 2,
"reportingConfiguration": {
"status": "NOT_FOUND",
"direction": "reported"
}
},
{
"acl": [
"readable",
"reportable"
],
"id": 3,
"reportingConfiguration": {
"status": "NOT_FOUND",
"direction": "reported"
}
},
{
"acl": [
"readable",
"reportable"
],
"id": 4,
"reportingConfiguration": {
"status": "NOT_FOUND",
"direction": "reported"
}
},
{
"acl": [
"readable",
"reportable"
],
"id": 65533,
"name": "clusterRevision",
"value": 2,
"reportingConfiguration": {
"status": "NOT_FOUND",
"direction": "reported"
}
}
]
},
"basic": {
"attributes": [
{
"acl": [
"readable",
"reportable"
],
"id": 0,
"name": "zclVersion",
"value": 3
},
{
"acl": [
"readable",
"reportable"
],
"id": 1,
"name": "appVersion",
"value": 74
},
{
"acl": [
"readable",
"reportable"
],
"id": 2,
"name": "stackVersion",
"value": 0
},
{
"acl": [
"readable",
"reportable"
],
"id": 3,
"name": "hwVersion",
"value": 1
},
{
"acl": [
"readable",
"reportable"
],
"id": 4,
"name": "manufacturerName",
"value": "_TZE204_ztqnh5cg"
},
{
"acl": [
"readable",
"reportable"
],
"id": 5,
"name": "modelId",
"value": "TS0601"
},
{
"acl": [
"readable",
"reportable"
],
"id": 6,
"name": "dateCode",
"value": ""
},
{
"acl": [
"readable",
"reportable"
],
"id": 7,
"name": "powerSource",
"value": "mains"
},
{
"acl": [
"readable",
"writable",
"reportable"
],
"id": 65502
},
{
"acl": [
"readable",
"reportable"
],
"id": 65533,
"name": "clusterRevision",
"value": 2
},
{
"acl": [
"readable",
"reportable"
],
"id": 65534,
"name": "attributeReportingStatus",
"value": "PENDING"
},
{
"acl": [
"readable",
"reportable"
],
"id": 65506
},
{
"acl": [
"readable",
"reportable"
],
"id": 65507
}
]
}
},
"bindings": {
"ota": {},
"time": {
"attributes": [
{
"acl": [
"readable"
],
"id": 65533,
"name": "clusterRevision",
"value": 1
}
]
}
}
},
"242": {
"clusters": {},
"bindings": {}
}
}
}
Additional Comments:

Note: Provide any other relevant information or requests related to the device. Link to where you bought the device can be of help

How to interview a device

Add the device as a generic Zigbee device in Homey
Navigate to https://developer.athom.com/tools/zigbee.
Interview the device, the button for this is to the right of the device in the list of Zigbee units.
Click the copy button/icon to capture the device information.
Paste the copied information above.

Note: To be able to add more devices to the Tuya Zigbee app, we rely on community members like you to provide interviews of the devices you want to be added. Thank you for your contribution!

Hi @Makepeace77, I will add this to the Radar Sensor driver, please let me know if this works for you.

Hi @Makepeace77, I will add this to the Radar Sensor driver, please let me know if this works for you.

Hi, the luminance and target distance work correctly, but the Motion alarm unfortunately doesn't work

I also have another presence sensors with ID  _TZE204_7gclukjs and _TZE204_laokfqwu. It has already been posted here


Fix interleaved 1f1b race

Current fixes:

We need to delay the send in the warmup phase right before 1f1b phase so that it is sent along with the recvs in the next step. This is to align the communication between ranks to prevent hang
Sorted_batch_isend_irecv() is not working for interleaved 1f1b since we need to ensure that recv / fwd across different peers are all part of the same coalesced op. So that usage from interleaved 1f1b.

TODO:

test this on more tests, various batch sizes, models.

Test added:
When I add sleep for certain ranks then there is a failure on rank 0 [Rank 0] Some NCCL operations have failed or timed out. Due to the asynchronous nature of CUDA kernels, subsequent GPU operations might run on corrupted/incomplete data.
Run with:
PIPPY_VERBOSITY=DEBUG pytest test/test_pipeline_schedule.py -vsk test_interleaved_1f1b_with_model_sleep
Stack from ghstack (oldest at bottom):

-> #1088

Thanks for the fix! I haven't run through the entire change but one small comment:
maybe try not to reuse the name ops too much. It could lead to bugs if other devs did not use it carefully.


syncio/asyncio: account for FUSE buffer header in length check

Actual maximum message size is MAX_BUFFER_SIZE plus the FUSE buffer
header size. Allow messages up to that size.
Signed-off-by: zhaoshang<EMAIL_ADDRESS>

Any chance to add a test case for this?

Do we need a bugfix release for this?


Fixed menu bar vertical misalignment

Nice one... looking forward to testing this.

One thing to note (just popped into my head), this'll also apply to items within the menubar, you may only want to apply this fix to the menu bar title.


Next release?

It seems a lot of the commits done to this gem were done a while back. Can we release a new version with the latest commits or is this still being maintained?

yes please! just ran into the @client.close problem documented here: http://stackoverflow.com/questions/27603814/gracefully-disconnect-a-websocket-connection-with-celluloid
waste of time...

released 0.0.2 ;)

thx jeremy


The Steam Rate Limit has been reached. Please try again in a few minutes.

The Steam Rate Limit has been reached. Please try again in a few minutes.
how can i fix this?

Don't hit the rate limit (by using less accounts at a time)


Low-hanging fruits missing adapters

[ ] SpLinkPresenter
[ ] SpStatusBarPresenter
[ ] SpNumberInputFieldPresenter
[ ] SpSearchInputFieldPresenter
[ ] SpSliderPresenter
[ ] SpAthensPresenter

Duplicated in #12


The Phet Simulation scrapper has many security alerts

https://github.com/openzim/phet/network/alerts

Fixed in commit #ce8a5a2


scylla_node: expose --memory in bytes

add a tiny helper to convert memory size like "1G" to 1024^3. seastar/src/util/conversions.cc supports IEC style postfixes, but since we don't use them, let's keep the implementation simple.
expose ScyllaNode.memory() so dtest can use it when verifying the system_table. currently, in dtest's system_tables_test.py:TestRuntimeInfoTable, the total size of memory is passed in via jvm_args passed to self.prepare_cluster(). to improve the readability, and to be more future-proof, it'd be simpler to expose this setting from node. so dtest can verify the total size of memory exposed by system table by comparing it with the value exposed by node instead of a magic number of keep "1G" as a member variable of the test.

Signed-off-by: Kefu Chai<EMAIL_ADDRESS>

Please backport to 5.2
See https://jenkins.scylladb.com/job/scylla-5.2/job/dtest-daily-release/2/testReport/system_tables_test/TestRuntimeInfoTable/Run_Dtest_Parallel_Cloud_Machines___FullDtest___full_split000___test_default_content/
>                   assert int(row.value) == node.memory(), f"Unexpected memory value: {row.value}"
E                   AttributeError: 'ScyllaNode' object has no attribute 'memory'

@bhalevy done


Recent update broke HDF5Matrix

refs is a class attribute, not an instance attribute. If we make refs an instance attribute, this will cause HDF5Matrix to open the same HDF5 file more than once (which should never happen).

We definitely need a unit test for HDF5Matrix so we can stop breaking it once in a while.


The systemd unit doesn't work on Fedora 37

Describe the bug:
A clear and concise description of what the bug is.
The systemd unit installation doesn't work, when I make it the file goes to the correct place, but even with 'systemctl daemon-reload' or reboot systemd doesn't recognize.
Steps to reproduce:
Steps to reproduce the behavior.
Make the installation of the systemd unit. On Fedora it says that couldn't find the unit.
Expected behavior:
A clear and concise description of what you expected to happen.
The systemd unit should be detected and activated.
Environment:

OS: [e.g. Arch Linux]
Other details that you think may affect.

OS: Fedora Workstation 37
Additional context:
Add any other context about the problem here.

I figured it out, it was a SELinux problem, just ran ''sudo restorecon -RvF /etc/systemd/system/hblock.*" and did the daemon-reload. Maybe this can help other people having the same problem.


vue__WEBPACK_IMPORTED_MODULE_1__.createElementVNode) is not a function

Describe the bug
Followed instruction from basic example, started app, crashed
Expected behavior
not to crash
Screenshots

Desktop (please complete the following information):

OS: Windows 11
Browser: Chrome
Version: 122.0.6261.96

Hi, are you using vue2? This package is only compatible with vue3


onupdatefiles event removes other input's state value

I have a formcontext value. In that I stored all other inputs like textbox, select box,etc. I typed in  a textbox then finally I upload image file. When image file is added, all other input's values are reset. My code is
 `  <ItemForm
          label='Applicant Name'
          name='applicantName'
          value={formData.applicantName}
          onChange={(e) => {
            setFormData({
              ...formData,
              applicantName: e.target.value,
            });
          }}
          required
        />
    <FilePond
          files={formData.applicantPhotoImg}
          name='applicantPhotoImg'
          allowMultiple={false}
          allowFileEncode={true}
          required={true}
          labelIdle='Drag & Drop Applicant Photo or Browse'
          allowFileTypeValidation={true}
          acceptedFileTypes={["image/png", "image/jpeg"]}
          labelFileTypeNotAllowed='File of invalid type'
          fileValidateTypeLabelExpectedTypes='Expects {allButLastType} or {lastType}'
          fileValidateTypeLabelExpectedTypesMap={{
            "image/png": ".png",
            "image/jpeg": ".jpg",
          }}
          fileValidateTypeDetectType='Expects {allButLastType} or {lastType}'
          allowFileSizeValidation={true}
          maxFileSize='1mb'
          labelMaxFileSize='Maximum file size is {filesize}'
          labelMaxFileSizeExceeded='File is too large'
          onupdatefiles={(fileItems) => {
            console.log({ ...formData });
            setFormData({
              ...formData,
              applicantPhotoImg: fileItems.map(
                (fileItem) => fileItem.file
              ),
              applicantPhoto:
                fileItems[0] &&
                fileItems[0].getFileEncodeBase64String(),
            });
          }}
        />`

In above , when I upload image, applicant name's value is empty.
please help me. Why it occurs ? and how to resolve it?

We require the issue template to be filled out on all new issues. The issue template helps us collect all the information we need to address your submission efficiently.
If your issue can be classified as an integration question or a question about specific features of FilePond we ask you kindly to submit it on Stack Overflow.
We will be able to more closely look at your issue once the issue template has been filled out. The issue will be closed until the above is addressed.
Please leave a comment after you've updated the issue.


updates for ssdtools V2

thanks @atillmanns - let us know if you need our assistance deploying the updated app to the bcgov website.


Getting - ERR_BLOCKED_BY_CLIENT

Getting ERR_BLOCKED_BY_CLIENT in console not sure what is blocking what

Could you give me the full error message? This might be an old issue concerning Discord's policy on webhook requests. This is how DiscordConnect died. You can also DM me on discord or tag me on the foundry server @loki123 if you want to share your settings to me.

Issue found to be the browser blocking POST requests, which the module uses to send messages to discord.

Vivaldi browser may cause issues.
Clean edge or chrome browser works fine


⚠ Bofrost.at has degraded performance

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

HTTP code: 200
Response time: 1920 ms

Resolved: Bofrost.at performance has improved in 702a87a after 37 minutes.


Migration to add new entry_item table

This PR adds a migration to create a new table entry_item and insert into it using data currently stored in entry. Specifically, it is a join table linking an entry's entry_number to an item's sha256hex, and this version does not remove sha256hex from the entry table - this will happen in a future version.
I've also refactored some of the existing SQL queries to remove stuff like selects within selects to instead use joins, which should give us better performance and hopefully make it easier to understand what's going on.
ItemQueryDAO has also had to change to reflect the addition of the entry_item table, and so at the moment getIterator() has a distinct in the query to only return the unique set of items, rather than the possibility of returning duplicates if an entry references the same item twice or more. This may need to be removed when download-rsf supports multiple items per entry.

This doesn't quite work at the moment. If the entry_item table contains 2 rows against entry_number 1, the queries in EntryQueryDAO return two entries with entry-number 1.
E.g. With the following in the table:

I get the following in the /entries endpoint:

This is because EntryMapper works on a per-database-row basis. Maybe we need some aggregation function (https://www.postgresql.org/docs/9.0/static/functions-aggregate.html) though I'm not sure what the performance of these is like, would be worth checking.


Clinician follow in wrong place in iOS

This is due to our use of calc to get the viewport size. Need a way of centralising all calc variables.

This is due to our use of calc to get the viewport size. Need a way of centralising all calc variables.

Fixed with top: calc(var(--vh, 1vh) * var)

Fixed with top: calc(var(--vh, 1vh) * var)


Support default tab setting in container object

Checklist

[ ] tests added
[x] commits conform to the Commit message format
[ ] documentation updated

Squash commit message
Support new setting for default tab in container objects.
Info
Optional informative text (not to be included in commit message) relevant to reviewers.

Cool! Is it new for Nov 2021?

yes this is part of Nov 2021 release.


xrdp drive redirection wrong message order

xrdp version
0.9.17
Detailed xrdp version, build options
No response
Operating system & version
ubuntu 22.04
Installation method
dnf / apt / zypper / pkg / etc
Which backend do you use?
No response
What desktop environment do you use?
No response
Environment xrdp running on
No response
What's your client?
No response
Area(s) with issue?
No response
Steps to reproduce

connect with FreeRDP and  drive redirection enabled. (e.g. xfreerdp /v:host /u:user /p:pwd +home-drive)
check drive redirected

✔ Expected Behavior
drive redirected
❌ Actual Behavior
xfreerdp aborts drive redirection due to features not announced.
Anything else?
Here is the relevant xfreerdp log:
[rdpdr_dump_packet]: [rdpdr-channel] receive [RDPDR_CTYP_CORE | PAKID_CORE_SERVER_ANNOUNCE] [version:1.12][id:0xdb06f00b] -> 12
 [rdpdr_state_advance]: [RDPDR] transition from RDPDR_CHANNEL_STATE_INITIAL to RDPDR_CHANNEL_STATE_ANNOUNCE
 [rdpdr_process_server_announce_request]: [rdpdr] server announces version 1.12, client uses 1.12
 [rdpdr_state_advance]: [RDPDR] transition from RDPDR_CHANNEL_STATE_ANNOUNCE to RDPDR_CHANNEL_STATE_ANNOUNCE_REPLY
 [rdpdr_dump_packet]: [rdpdr-channel] send [RDPDR_CTYP_CORE | PAKID_CORE_CLIENTID_CONFIRM] [version:1.12][id:0xdb06f00b] -> 12
 [rdpdr_state_advance]: [RDPDR] transition from RDPDR_CHANNEL_STATE_ANNOUNCE_REPLY to RDPDR_CHANNEL_STATE_NAME_REQUEST
 [rdpdr_dump_packet]: [rdpdr-channel] send [RDPDR_CTYP_CORE | PAKID_CORE_CLIENT_NAME] [ucs:1|cp:0][len:0x00000014] 'motorhead' -> 36
 [rdpdr_dump_packet]: [rdpdr-channel] receive [RDPDR_CTYP_CORE | PAKID_CORE_USER_LOGGEDON] -> 4
 [rdpdr_check_extended_pdu_flag]: Checking ExtendedPDU::RDPDR_USER_LOGGEDON_PDU, client supported, server not found
 [rdpdr_dump_packet]: [rdpdr-channel] receive [RDPDR_CTYP_CORE | PAKID_CORE_SERVER_CAPABILITY] [caps:5] -> 84
 [rdpdr_read_capset_header]: capability CAP_GENERAL_TYPE [0x0001] got version 2, length 44
 [rdpdr_read_capset_header]: capability CAP_PRINTER_TYPE [0x0002] got version 1, length 8
 [rdpdr_read_capset_header]: capability CAP_PORT_TYPE [0x0003] got version 1, length 8
 [rdpdr_read_capset_header]: capability CAP_DRIVE_TYPE [0x0004] got version 2, length 8
 [rdpdr_read_capset_header]: capability CAP_SMARTCARD_TYPE [0x0005] got version 1, length 8
 [rdpdr_state_advance]: [RDPDR] transition from RDPDR_CHANNEL_STATE_NAME_REQUEST to RDPDR_CHANNEL_STATE_SERVER_CAPS
 [rdpdr_state_advance]: [RDPDR] transition from RDPDR_CHANNEL_STATE_SERVER_CAPS to RDPDR_CHANNEL_STATE_CLIENT_CAPS
 [rdpdr_read_capset_header]: capability CAP_GENERAL_TYPE [0x0001] got version 2, length 44
 [rdpdr_read_capset_header]: capability CAP_PRINTER_TYPE [0x0002] got version 1, length 8
 [rdpdr_read_capset_header]: capability CAP_PORT_TYPE [0x0003] got version 1, length 8
 [rdpdr_read_capset_header]: capability CAP_DRIVE_TYPE [0x0004] got version 2, length 8
 [rdpdr_read_capset_header]: capability CAP_SMARTCARD_TYPE [0x0005] got version 1, length 8
 [rdpdr_write_capset_header]: writing capability CAP_GENERAL_TYPE version 2, length 44
 [rdpdr_write_capset_header]: writing capability CAP_PRINTER_TYPE version 1, length 8
 [rdpdr_write_capset_header]: writing capability CAP_PORT_TYPE version 1, length 8
 [rdpdr_write_capset_header]: writing capability CAP_DRIVE_TYPE version 2, length 8
 [rdpdr_write_capset_header]: writing capability CAP_SMARTCARD_TYPE version 1, length 8
 [rdpdr_dump_packet]: [rdpdr-channel] send [RDPDR_CTYP_CORE | PAKID_CORE_CLIENT_CAPABILITY] [caps:5] -> 84
 [rdpdr_read_capset_header]: capability CAP_GENERAL_TYPE [0x0001] got version 2, length 44
 [rdpdr_read_capset_header]: capability CAP_PRINTER_TYPE [0x0002] got version 1, length 8
 [rdpdr_read_capset_header]: capability CAP_PORT_TYPE [0x0003] got version 1, length 8
 [rdpdr_read_capset_header]: capability CAP_DRIVE_TYPE [0x0004] got version 2, length 8
 [rdpdr_read_capset_header]: capability CAP_SMARTCARD_TYPE [0x0005] got version 1, length 8
 [rdpdr_dump_packet]: [rdpdr-channel] receive [RDPDR_CTYP_CORE | PAKID_CORE_CLIENTID_CONFIRM] [version:1.12][id:0xdb06f00b] -> 12
 [rdpdr_state_advance]: [RDPDR] transition from RDPDR_CHANNEL_STATE_CLIENT_CAPS to RDPDR_CHANNEL_STATE_CLIENTID_CONFIRM
 [rdpdr_state_advance]: [RDPDR] transition from RDPDR_CHANNEL_STATE_CLIENTID_CONFIRM to RDPDR_CHANNEL_STATE_READY

observe that PAKID_CORE_USER_LOGGEDON is sent before PAKID_CORE_SERVER_CAPABILITY
but according to [MS-RDPEFS] <IP_ADDRESS>.1 General Capability Set (GENERAL_CAPS_SET)
the capability tells if PAKID_CORE_USER_LOGGEDON is supported or not...
for reference: the freerdp bug that brought me on track of this: https://github.com/FreeRDP/FreeRDP/issues/9923

sorry, did miss 7ceff70c1c26d6429e28c3e4844c843780336546 already addresses that.


Look into PageStorage

see discussion at #319

What is current recommended way for saving state of the page, for example in bottom navigation bar?

Hi @slovnicki, did you had a chance to explore what we talked about in the discussion ?

@7fantasy7 Hi!
The recommended way is to

use some state management for state that is not related to navigation (e.g. data for the screen)
routeState for simple or navigation-related state (e.g. scroll position)

@tlvenn Hey!
I did not yet. Did you maybe try some examples or have any new insight to share?


optimize sql join

Ⅰ. Describe what this PR did
optimize sql join

Codecov Report

Merging #1356 into develop will decrease coverage by 0.02%.
The diff coverage is 0%.

@@              Coverage Diff              @@
##             develop    #1356      +/-   ##
=============================================
- Coverage      48.65%   48.63%   -0.03%
  Complexity      1645     1645
=============================================
  Files            331      331
  Lines          11540    11537       -3
  Branches        1430     1428       -2
=============================================
- Hits            5615     5611       -4
+ Misses          5304     5303       -1
- Partials         621      623       +2

Impacted Files
Coverage Δ
Complexity Δ

...va/io/seata/rm/datasource/exec/UpdateExecutor.java
0% <0%> (ø)
0 <0> (ø)
:arrow_down:

...ta/rm/datasource/exec/SelectForUpdateExecutor.java
0% <0%> (ø)
0 <0> (ø)
:arrow_down:

...va/io/seata/rm/datasource/exec/InsertExecutor.java
60.86% <0%> (+1.71%)
15 <0> (ø)
:arrow_down:

...va/io/seata/rm/datasource/exec/DeleteExecutor.java
0% <0%> (ø)
0 <0> (ø)
:arrow_down:

...server/store/file/FileTransactionStoreManager.java
45.99% <0%> (-1.4%)
19% <0%> (ø)

Continue to review full report at Codecov.

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


Add ext_iterator_interface_compat, a portable alternative to iterator_interface.

The iterator_interface class template requires deducing *this support which came in C++23 and is not yet widely available. This PR introduces an alternative class template ext_iterator_interface_compat which requires an additional template argument (for RAII support), but otherwise has the same functionality of iterator_interface without the deducing *this dependency.

The new class was prefixed with ext_ to make it clear that this is an extension to the iterator_interface paper. It may be interesting to adopt this as a convention for Beman libraries in general.
Added a build option, BEMAN_ITERATOR_INTERFACE26_USE_DEDUCING_THIS, that
indicates whether deducing *this is available. This element of configuration is placed in a generated config.hpp. This was chosen, as opposed to using a define passed as a compiler flag, to avoid ODR violations with larger projects with incoherent flag usage.
If deducing *this is available, ext_iterator_interface_compat is implemented with iterator_interface. If it is not available, instantiation of iterator_interface results in a helpful error message and ext_interator_interface_compat is implemented using an in-source copy of Boost.Stl_Interfaces with the following modifications:

It was relicenced to "Apache-2.0 WITH LLVM-exception" per permission from Zach Laine
It uses beman::iterator_interface26::iterator_interface_access for access control for consistency.

Testing support was modified to follow the pattern described in https://github.com/beman-project/exemplar/issues/60#issuecomment-2452092354

The intent is to add documentation in a separate PR once this gets moved in.
Fixes #10.

is now generating a dangling temporary warning?

Added #15 to address this. I couldn't figure out the cause with an initial look.


Feedback 1

Nice map! And I like the sorting function of the table.
Two suggestions:
(1) the sorting function of the column sqft_living seems not working. probably it treats the field as string instead of number;
(2) it may be a good idea to implement tooltip for the price distribution plot so that user can have an idea about the exact value of each bar.


(Ozone) Fix blurry sidebar icons

As described in this issue: https://github.com/libretro/RetroArch/issues/10363, the system tab icons shown in Ozone's sidebar (and to a lesser extent, the top left RetroArch icon) are very blurry at high scales and on large high resolution displays - for example:

This PR increases the resolution of the affected PNG images such that their visual appearance is consistent with the other menu icons (scaling has also been tweaked for greater uniformity):

Moreover, the system tab sidebar icons and main RetroArch icon are now generated via the export_ozone.sh script, so they can be updated easily in the future.
This PR closes https://github.com/libretro/RetroArch/issues/10363

Made an issue to double the size of XMB images a while ago too. On the Ozone icons it is very much noticeable considering their size. Thanks for addressing this.... May want to extend it to the other menu drivers if others notice similar issues.

Yeah it would be a good idea if we could give XMB a serious look too.

@RobLoach Doubling the size of XMB's icons doesn't seem like a good idea to me... It would increase loading times (textures get loaded all the time, on every context reset) and quadruple the memory usage. This is probably not an issue on most desktop systems, but on weaker platforms it's a pretty harsh burden to impose - especially when the vast majority of users run at 1080p (or lower)
I think it's also worth noting that the icons in the images you posted look worse than they should due to the transparent pixel colour issue we recently fixed. With the current PNG images, you get results like this:

...which look pretty good to me :)
If we were going to go with supersized assets, I think they'd have to be optional (i.e. selectable via a menu toggle).

As an experiment, I created 512x512 PNG files for Automatic and Systematic. Both sets have been run through Image Optim.

At 256, the Systematic folder weighs in at 20.5 MB, while the 512 set is 43.2 MB.
For Automatic, it's 8.7 MB at 256 and 16.7 MB at 512.

I've wondered for a while if would be prudent to render icons at 16, 32, 48, 64, 128, 256, 512, & 1024 squared and then set the UI automatically switch based on resolution and/or user preference, similar to how it works in Linux, Mac and Windows.  But I'm not sure how difficult that would be to implement in XMB, Ozone, etc.

@jdgleaver Thank you for taking care of this!
I've been looking at other areas of Ozone since I submitted the first issue and I've found a few other areas that could use a higher resolution image.

I highlighted in red where the issues are. The selection rectangle around the currently selected item is blurry, and there is a very thin vertical grey line that seems to only appear on the left side of it. You can also see that the checkmark icon on the right is blurry as well.

Here you can see that the information pop-up is also blurry. I don't know how it works internally, but I checked XMB and it does not have the same problem.
I can create a new issue for this if you would like.

@baxysquare

I've wondered for a while if would be prudent to render icons at 16, 32, 48, 64, 128, 256, 512, & 1024 squared and then set the UI automatically switch based on resolution and/or user preference

This is a great idea in principle, but while it would be fairly trivial to add the icon resolution option to the various menus, there are some serious issues to work out:

RetroArch is already very disrespectful of the user's storage, in that it requires the user to download and install a whole bunch of assets they will never use - i.e. a user will typically select one menu driver and one theme, and all those other assets are a waste of space. This doesn't matter so much on the desktop (where it's easy to manage files), but on platforms like Android everything gets dumped to an inaccessible system partition - so you're stuck with whatever the installer provides. The fact that a 512x512 Systematic theme is 43.2 MB is quite alarming! If we had sizes up to 1024x1024 for all themes, that would expand the assets bundle by hundreds of megabytes. It's unreasonable to force that on users.

Expanding the assets bundle like this would also greatly increase the load on the buildbot - and that bandwidth costs money!

Another storage issue: some filesystems exhibit reduced performance as the number of stored files increases. RetroArch is already pretty unfriendly in this regard - combine the assets, shaders, overlays, cheat files, etc., and that's a huge number of tiny files. Having full icon sets in 8 different resolutions will only make this worse...

For large textures (1024x1024, or even 512x512) that are kept in GPU RAM all the time, it's pretty rough to use raw PNG files. We should really use a compressed-in-memory format like DXT for that kind of thing...

So this is quite a problem to deal with! If we were going to do something like this, then we'd need to implement a whole new way of packing the asset images. A naive approach might be to bundle each icon set as a zip archive (to reduce the number of tiny files, and hopefully save overall storage space) and implement a way for RetroArch to 'mount' these and read the contents directly (in the same way that LOVE2D can mount archives read only) - and then you'd also switch from PNG to DXT as the resolution passes a certain threshold (and that would require adding DXT support to RetroArch as well....). Given that the highest resolution icons will be huge whatever you do, there would also need to be some selective download options - i.e. ship the installer just with the base set (maybe 16, 32, 48, 64, 128, 256) and add the hi-def ones as separate entries in the content downloader.
That's a lot to think about...

@im-4-potato Thanks for highlighting these issues!

The selection rectangle around the currently selected item is blurry,
Here you can see that the information pop-up is also blurry.

Ah, these are tricky ones... They require an update both to the affected asset files and the code, so it's quite hard to synchronise this - i.e.  if a user updates one and not the other (happens all the time...), then it will look broken. It needs some thought...
(BTW - the information pop-up is also blurry in XMB! It's just that the different colour scheme makes it harder to see)
Please by all means do open a separate issue for this - it helps us to keep track of things  :)

and there is a very thin vertical grey line that seems to only appear on the left side of it.

That darker part to the left of the selection cursor is actually an intentional drop shadow effect. That was an aesthetic decision by the guy who made Ozone, so I don't want to meddle with that...

You can also see that the checkmark icon on the right is blurry as well.

Oh yes, that does look pretty bad! Certainly I can fix this.
Annoyingly, there's no source SVG for that image - so I'll have to make one. I'll get around to this soon  :)

@jdgleaver

BTW - the information pop-up is also blurry in XMB! It's just that the different colour scheme makes it harder to see

Maybe our scaling settings are different, mine is currently set at 1.25x and XMB looks good on my end.

Annoyingly, there's no source SVG for that image - so I'll have to make one.

Maybe I can save you a little bit of trouble, I just made one myself, although I don't know if it conforms to whatever icon standard RetroArch uses.
checkmark.zip
I apologize for being so nitpicky, I'd like to get more involved in this project but I'm not sure how helpful I'm being. Thanks again, I'll open another issue when I wake up.

Hey, thanks for that!
I tweaked it a little, and did this: #355
It's odd that you're seeing this difference between Ozone's and XMB's message boxes - I get quite a different result. Let me investigate...

I apologize for being so nitpicky, I'd like to get more involved in this project but I'm not sure how helpful I'm being.

Never apologise for pointing out issues! If we don't know something's wrong, we can never fix it  :)
Any input is helpful!

Ah, okay - the scaling of those message boxes depends on several factors, due to the way that kind of texture is drawn... and in fact, there's actually a bug in XMB that causes it to look like that (the corner size value is wrong - but since it produces something agreeable 'by accident', I'll leave it alone for now...)
The only fix is to increase the resolution of the source image. We'll have to think about that.

@jdgleaver As someone who uses Lakka & RetroArch from desktop, TV and mobile devices, I appreciate the issues of resources and bandwidth since so many platforms are supported.  I've worried for a while that this repository was getting bloated, which is why I originally moved my SVG and other source files to their own GitHub project.
Believe it or not, this is part of the reason for my call for unified themes & repository cleanup on #341.  I think it would be cool to see the repository pared down to SVG source files and have the PNGs created as part of the build process for each platform.  Perhaps that would cause more problems that it would solve, but it would trim the fat on the entire repository.
Another possibility would be for a specific platform to pick the pre-built PNGs from that are best for that platform, rather than picking up the entire repository.  If it's low-end or mobile, perhaps it picks up 64 or 128 pixel icons.  But if it's meant for a high-end it would pull 512 or even 1024.  While it may mean the repository was bigger overall, perhaps it could make the final builds smaller.

@baxysquare Yes, these are great suggestions. If we could just store SVG files in the assets repository (along with build scripts), that would be ideal - and it would serve as a clean starting point for any fancy packing approaches we might want to look at in the future.
This unification is probably quite a bit of work, though - XMB is very well provisioned, but Ozone uses a hodgepodge of stuff, and Material UI does it's own thing altogether. I can most likely source SVGs for all of Material UI's icons (they're mostly standard Android images, but with different colours and a few extras that I made), but this will take a bit of time and my TODO list is full already  :)
Maybe Material UI can be left as-is for now, but then I'm not sure of the best way to handle Ozone - I know that the Switch guys have strong opinions about the overall look of Ozone, and would probably object to allowing random icon themes. So that would require some discussion...
And then there's the issue of building the icons - if the buildbot has to convert the SVGs for each build, that will take ages (the build process is already rather slow)...
In the shorter term, your idea of prebuilding PNGs of all sizes and just copying the required directory during the build process sounds good - i.e. it's probably not too much work, and should reduce buildbot bandwidth/storage requirements (it doesn't matter if it increases the assets repo size, since that's github's problem, not ours!). The one issue here would be deciding which build gets what - e.g. Android might be considered low end, but then what about users with a Shield hooked up to a 50 inch TV?
Or maybe something like this could work: the build process makes a best guess, but the online updater assets entry becomes a submenu with a list of available asset sizes (which then overwrite whatever is currently installed). So if a desktop user running at 720p doesn't want the default 512x512 icons, they can select 128x128 from the updater and automatically reclaim storage space + performance. And a high end Android user can grab 1024x1024 assets if they want to  :)

@baxysquare Yes, I like your proposal - and certainly this can go in a new root directory for now, to keep everything clean until we make the switch over. There are a couple of things I'm not sure about, though:

For XMB at least, fonts are selected on a per-theme basis. So should that be /uni/fonts/themename?

I still don't know how to best handle the unshared parts of the various menu drivers. Ozone has a number of icons that simply aren't relevant for XMB - is the idea still to include these in each themename directory? And Material UI has no shared icons with anything. I guess my point is that we can probably cobble together a shared theme format for XMB and Ozone (if someone is willing to make theme-specific variants of the custom Ozone icons), but Material UI is quite different, so I don't think it can be handled in the same way (the design intent is to only use Google-provided Material UI icons anyway). And then there are the menu widget images... Do we still keep all this stuff in separate directories for now? (Just with resolution-specific subdirectories?)

Also, I think it would be nice to have resolutions down to 64x64 (and even 32x32) for the handheld platforms.
As a side note, I have a backlog of around a month's worth of RetroArch work to do, so I can't contribute much to this at present - but after that, I'd be happy to work on any frontend code required to tie this all together.

@jdgleaver In terms of fonts, I can think of a few ways this could be handled, but there'd be some recoding involved.

At /uni/icons/themename/ there could be a specification file that would dictate the font, backgrounds and sounds.  This could be like a linux .theme file, a windows .ini or an XML file and could contain common preferences as well as ones specific to each UI or even specific to each build if needed.  Obviously I'm not a programmer so I'd default to whoever is handling that in terms of the how it's implemented.
Remove the default options from the theme files.  Set a single default font and background for the XMB and let the user select their font, background and sounds from /Settings/User Interface/Appearance.  Technically speaking, the end user can already override a theme's defaults anyway.  This would just be "taking the next step" in that direction.

As for the unshared parts, I'd recommend we prepend a standard name for UI specific icons such as, xmb_, ozone_ and material_.  For years I've wanted to do something similar  to help distinguish between icons for the cores/systems and the base-level UI icons.  As it stands, the best way to distinguish is that cores/systems have capitals in their names, while the base-level UI are all lower case.  I think now is a good time to evolve.
In terms of implementation, I'm happy to rearrange my source repository in preparation.  I'm also happy to get the uni directory structure in place and submit a PR so you have the infrastructure you need to start coding on the frontend.

@baxysquare:

In terms of fonts, I can think of a few ways this could be handled, but there'd be some recoding involved...

I do like your idea of using a theme file - that seems like a very sensible way to reference each type of asset, while keeping the asset files themselves well organised. For simplicity, we'd probably want to start out using the standard retroarch .cfg format (just key/value). We'd probably also start by setting this up for XMB (since that has the most rounded theme implementation at present), and extend it to Ozone etc. once the basics are fleshed out.
So for XMB, the theme file would point to an icon directory name, a font file, a sound directory and a background file - that would be no trouble to parse. (And then we just have some internal logic to select the correct 'resolution' subdirectory)

As for the unshared parts, I'd recommend we prepend a standard name for UI specific icons such as xmb -, ozone - and material -. For years I've wanted to do something similar to help distinguish between icons for the cores/systems and the base-level UI icons. As it stands, the best way to distinguish is that cores/systems have capitals in their names, while the base-level UI are all lower case. I think now is a good time to evolve.

Absolutely! That just seems like basic common sense :)
Not sure why your original issue didn't gain any traction - I can't see any reason not to do this...

In terms of implementation, I'm happy to rearrange my source repository in preparation. I'm also happy to get the uni directory structure in place and submit a PR so you have the infrastructure you need to start coding on the frontend.

I think it's probably best to focus on arranging your repo first - we do have to be somewhat careful about updating retroarch-assets too soon, since the packaging scripts are a bit ad-hoc, and we'd end up bundling the new uni directory in places where we don't yet want it...
If you get your local structure set up in a way you're happy with, then that can be the model we use when working out how to update all the code + scripts.
On a side note: are you on the RetroArch Discord? Because these are big changes you have planned, and it might be useful to have a little group discussion as these things move forward.

Sounds like we have a plan to move forward then.  From here on, I'm going to put updates to this issue on #341.  I have a PR I'm currently working on that attempts to bring Monochrome, Retroactive and Neoactive up to parity with Automatic and Systematic.  Once that's done, I'll start the restructuring on my repo.
As for Discord, normally I can't participate because it's blocked by my employer.  That said, I'll see what I can do to stop by and discuss.


Enable MathJax functionality

Enable LaTeX to appear in images produced using savefig().
Note that LaTeX rendering in VS Code doesn't seem to work. This applies to saved figures however.
MWE
julia> using LaTeXStrings

julia> using PlotlyKaleido

julia> import PlotlyJS

julia> import PlotlyJS: scatter, attr, Layout

julia> p2 = PlotlyJS.plot(PlotlyJS.scatter(x = rand(10)), Layout(
                       font_size=14,
                       margin=attr(l=80, r=60, b=60, t=80),
                       title = "My Plot",
                       xaxis_title = L"\sqrt{N_c}".s,
                       yaxis_title = L"\int r".s))

julia> PlotlyKaleido.start()

julia> PlotlyKaleido.savefig(p2, "plot3.pdf")
"plot3.pdf"

Before:

After:

I think it would be good, if there were some way to opt-out or adjust the version.

Thanks, I've modified it to opt-in with a Bool, or provided you own URL, or just the version number


Is there a way to inject my own TelemetryClient?

I'm using a TelemetryClient in my WPF app to send metrics to App Insights, and I'm using the NLog target for sending logs to App Insights. I initialize both with the same API key, which works great.
I would like to pass my existing Telemetryclient in to the ApplicationInsightsTarget constructor so that they can share the same client.
I want to have both clients share the same Context, SessionID and User.
var telemetryClient = new TelemetryClient { InstrumentationKey = instrumentationKey };
telemetryClient.Context.Session.Id = Guid.NewGuid().ToString();
ApplicationInsightsTarget target = new ApplicationInsightsTarget { InstrumentationKey = instrumentationKey };

Is there a way to inject my own TelemtryClient? Of not, is there a way to access the Context or otherwise set context of the TelemetryClient used by the ApplicationInsightsTarget?
Thanks!
Marc

Hi @marcomorain ,
Right now there is no way to access internal TelemetryClient. The only workaround I see is to create ApplicationInsights.config manually (like it is done when you install Window Server nuget, make sure it gets copied to the output, remove everything from that config, create TelemetryInitializer that sets context and add it to that configuration file.

Thanks @abaranch  I've set that up now.


does not support cross-build on mac

I want to build aarch64 artifacts on a x64 builder.
Although I can choose the target by
 args: --target aarch64-apple-darwin

and the build was successful,
I get an error saying no expected artifacts are found:
darwin/release/bundle/dmg/Epiphany_0.0.0_aarch64.dmg)
     Running bundle_dmg.sh
    Finished 2 bundles at:
        /Users/runner/work/Epiphany/Epiphany/src-tauri/target/aarch64-apple-darwin/release/bundle/macos/Epiphany.app
        /Users/runner/work/Epiphany/Epiphany/src-tauri/target/aarch64-apple-darwin/release/bundle/dmg/Epiphany_0.0.0_aarch64.dmg

Expected artifacts paths:
/Users/runner/work/Epiphany/Epiphany/src-tauri/target/release/bundle/dmg/Epiphany_0.0.0_x64.dmg
/Users/runner/work/Epiphany/Epiphany/src-tauri/target/release/bundle/macos/Epiphany.app
/Users/runner/work/Epiphany/Epiphany/src-tauri/target/release/bundle/macos/Epiphany.app.tar.gz
/Users/runner/work/Epiphany/Epiphany/src-tauri/target/release/bundle/macos/Epiphany.app.tar.gz.sig
Error: No artifacts were found.

because it hard-codes the artifact's name with wrong architecture name:
/Users/runner/work/Epiphany/Epiphany/src-tauri/target/release/bundle/dmg/Epiphany_0.0.0_x64.dmg

https://github.com/shi-yan/Epiphany/actions/runs/4591230514/jobs/8107255179#step:7:629

I just ran into this as well. It would be great to have better support for building and uploading universal binaries.

Ah, looks like this is supported in the dev version https://github.com/tauri-apps/tauri-action/issues/356#issuecomment-1379974308

Correct, it should work in dev.
I'm currently in the process of cleaning up the action for a new release but that needs a bit more time.


fix(scap): initialize the platform before the engine

While it's cleaner to have the engine handle fully working before we
pass it to the platform init method, it's not strictly necessary:
the only use of the engine_handle is to store it in linux_platform
to call linux_vtable methods.
Initializing the platform before the engine fixes an issue with
the savefile engine, where we were putting data into the proclist
(in engine init) before the proclist callback was set (in platform init).
What type of PR is this?

Uncomment one (or more) /kind <> lines:

/kind bug

/kind cleanup

/kind design

/kind documentation

/kind failing-test

/kind feature

Any specific area of the project related to this PR?

Uncomment one (or more) /area <> lines:

/area API-version

/area build

/area CI

/area driver-kmod

/area driver-bpf

/area driver-modern-bpf

/area libscap-engine-bpf

/area libscap-engine-gvisor

/area libscap-engine-kmod

/area libscap-engine-modern-bpf

/area libscap-engine-nodriver

/area libscap-engine-noop

/area libscap-engine-source-plugin

/area libscap-engine-savefile

/area libscap-engine-udig

/area libscap

/area libpman

/area libsinsp

/area tests

/area proposals

Does this PR require a change in the driver versions?

/version driver-API-version-major

/version driver-API-version-minor

/version driver-API-version-patch

/version driver-SCHEMA-version-major

/version driver-SCHEMA-version-minor

/version driver-SCHEMA-version-patch

What this PR does / why we need it:
Make Captures Work Again :tm: ;)
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?:

NONE

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: Andreagit97, gnosek
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [Andreagit97,gnosek]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

LGTM label has been added.  Git tree hash: e6fde1602c7a9a104f782d60de1bdb330d829635

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: Andreagit97, gnosek, LucaGuerra
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [Andreagit97,LucaGuerra,gnosek]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Add types into the component

Vue3 works more easily with Typescipt than Vue2. So we can expect that there will be more developers interested in the type definitions.
So rather than depending on a third party package, types are directly added to the Vue3-tour component.
I have added types for all objects that a developer should use and I add JSDoc documentation about properties (I have often copied the markdown documentation but documentation were missing for most of the attributes).
This types file is much more complete than all I found about vue3-tour and vue-tour typescript definition.
Because I am not very familiar to vue-tour/vue3-tour, it is possible that I have made some mistakes. So I will be happy if anyone will point out these mistakes.
Compared to vue-tour, I have noticed that numberOfSteps was missing in the tour object. This is the purpose of the first commit.
I have also noticed many elements which were declared and added to objects but are never used (I flagged them with @wip). For example, the "finish" callback in the v-step component (the props is declared but is never used in the component).  Maybe we should compare how they are used in vue-tour and implement them similarly or remove them.

merged


rhel7 & centos mods, makefile additions

TO-DO -> populate the RHEL help.md file and it's Dockerfile labels accordingly.

@tchughesiv,
Thanks for your contribution.
To ensure that the project team has proper rights to use your work, please complete the Contribution License Agreement at https://cla.microsoft.com.
It will cover your contributions to all Microsoft-managed open source projects.
Thanks,
Microsoft Pull Request Bot

@tchughesiv, thanks for signing the contribution license agreement. We will now validate the agreement and then the pull request.
Thanks, Microsoft Pull Request Bot

fwiw... its not in this PR because it appears code changes may be required but i'd like to eventually support running the centos/rhel images w/ an arbitrary uid... something openshift does by default.
today however, if appears sqlservr may be checking for uid 0 at runtime? e.g.
$ id
uid=1000014406(root) gid=0(root) groups=0(root)

$ sqlservr
Aborted

again, this is for another PR, another day... but we'd like to start the conversation.

I've gone ahead and split out CentOS into its own directory.

Thanks @tchughesiv ! :)

@twright-msft
fwiw...
the following is not in this PR because it appears code changes may be required
i'd like to eventually support running the centos/rhel images w/ an arbitrary uid... something openshift does by default.
today however, if appears sqlservr may be checking for uid 0 at runtime? e.g.
# docker run -u<PHONE_NUMBER> -e ACCEPT_EULA=Y -e SA_PASSWORD=yourStrong@Password -p 1433:1433 -d microsoft/mssql-server-linux

$ id
uid=1000014406(root) gid=0(root) groups=0(root)

$ sqlservr
Aborted

again, this is for another PR, another day... but we'd like to start the conversation.