Swin-T Multi-image sentinel-2

Loving your work! I'm a data scientist at the World Resources Institute, where I lead our sentinel-2 based tree-cover mapping: https://www.sciencedirect.com/science/article/pii/S0034425723001256
I have taken the multi-image Swin-B Sentinel-2 model and fine-tuned it by adding a parallel encoder U-Net++ for higher-resolution features, since the Swin-B itself generated very blurry segmentation outputs.
The results of the Swin-B + U-Net++ look really good, but I'm unable to deploy the model since my data product is 6 years across 5 billion ha / year. Having a Swin-T instead of a Swin-B would be very helpful for fitting the model into the inference architecture that I have set up.
Do you have any plans to release a Swin-T Multi-image Sentinel-2 model? Happy to make a PR with my edits to incorporate a parallel U-Net++ if its helpful.

Hi! Thanks for your interest in the project!
We may release additional weights depending on demand and resources.
For now - I just updated the weights table to include Sentinel-2 Swin-T Single-Image multispectral model (before there was only the RGB model). So you could try fine-tuning one of the single-image models for multi-image. You'll just have to adjust the weight keys to include a "backbone." prefix.

@JohnMBrandt Hi, we just pushed additional pretrained models, including the Swin-Tiny multi-image [model].(https://github.com/allenai/satlaspretrain_models#available-pretrained-models)


Reduces reload calls

Towards https://github.com/giantswarm/giantswarm/issues/1482

@MarcelMue ptala


feat: DR: Out-of-band Management

Need to create a process defining how to access resources during an outage.

No need for KVM since I have iLO, but do need some sort of OOB network device that routes iLO.  Currently iLO network is routed in vyos VM which is bad

Purchased https://www.aliexpress.com/i/3256804687456130.html?gatewayAdapt=Msite2Pc4itemAdapt to be new VyOS edge networking device.  Will add iLO network as another interface

[ ] add Internet VLAN
[ ] add internet vnic on sce-vyos


The current state of read_committed

Even though transaction are not ready yet in sarama, it would still be super useful to be able to read committed messages only.
Of course such message would typically be produced by java producer to begin with.
Before spending too much time on this, i would like to confirm a few things first.

Sarama does not support yet read_committed on consumer side. Is it correct?
Sarama does not support yet transactions on producer side. Is it correct?
read_committed is not just about sending the correct flag to the broker on a fetchRequest. The client need to filter the results. Is it correct?
It is totally doable to support read_committed without using transactions on producer side. The magic only happen on consumer side. Is it correct?
Is there some on-going work regarding the read_committed support?

When looking for information about how to support read_committed i stumbled upon 2 docs that i will note here as reference:

https://cwiki.apache.org/confluence/display/KAFKA/KIP-98+-+Exactly+Once+Delivery+and+Transactional+Messaging
https://docs.google.com/document/d/11Jqy_GjUGtdXJK94XGsEIK7CP1SnQGdp2eF0wSw9ra8/edit#

However, even after reading those, the work done by the client is still unclear to me.
I would gladly get my hand on any link that would describe accurately how to implement read_committed.

So i figured that first thing i would need to check if i can handle uncommitted transaction correctly, is to have some uncommitted transaction.
So here is a simple producer that output some committed and some uncommitted messages: https://github.com/FrancoisPoinsot/simplest-uncommitted-msg

Using previous custom producer, here is a setup for testing the read_commited:
https://github.com/FrancoisPoinsot/sarama/tree/read-committed/tools/uncomitted-messages
Everything is in the readme, but in short:

run docker-compose
wait
run the go code to consume

With this, i supose next step is to try to actually implement the read_committed.

I think I found a pretty concise description of how client should handle read_committed:
https://github.com/apache/kafka/blob/38a7708a47361929df37ed0f03160bbac5e51e93/clients/src/main/resources/common/message/FetchRequest.json#L58

https://github.com/Shopify/sarama/pull/1307


feat: strong typing for onEnter, onStay and onLeave

Performance before this change:
Files:                         589
Lines of Library:            38118
Lines of Definitions:        77155
Lines of TypeScript:         12777
Lines of JavaScript:             0
Lines of JSON:                   0
Lines of Other:                  0
Identifiers:                113524
Symbols:                    190002
Types:                       50723
Instantiations:             564441
Memory used:               230872K
Assignability cache size:    34134
Identity cache size:          3717
Subtype cache size:              0
Strict subtype cache size:       0
I/O Read time:               0.02s
Parse time:                  0.24s
ResolveModule time:          0.03s
ResolveTypeReference time:   0.00s
ResolveLibrary time:         0.01s
Program time:                0.33s
Bind time:                   0.11s
Check time:                  2.17s
printTime time:              0.00s
Emit time:                   0.00s
Total time:                  2.61s

Performance after this change:
Files:                         589
Lines of Library:            38118
Lines of Definitions:        77155
Lines of TypeScript:         12777
Lines of JavaScript:             0
Lines of JSON:                   0
Lines of Other:                  0
Identifiers:                113608
Symbols:                    199432
Types:                       51680
Instantiations:             570731
Memory used:               244387K
Assignability cache size:    34191
Identity cache size:          3717
Subtype cache size:              0
Strict subtype cache size:       0
I/O Read time:               0.02s
Parse time:                  0.25s
ResolveModule time:          0.03s
ResolveTypeReference time:   0.00s
ResolveLibrary time:         0.01s
Program time:                0.35s
Bind time:                   0.12s
Check time:                  2.32s
printTime time:              0.00s
Emit time:                   0.00s
Total time:                  2.79s

=> Instantiations increased from 564441 to 570731

Can we try to add some type tests for this feature ;) Maybe in s separate pr but it would be good to get a habit of adding to them


Diffrence between two textmate scopes

Type: Feature Request
Hi
I've notice that if i create a struct of Point class it doesnt stand out.
Both name of struct and name of varible are of textmate scope
In the example below are Point (meta.block.c) and center (meta.block.c)
I would like to change the color of the former (Point) to match a datatype. I.e -
textmate scopes	storage.type.built-in.primitive.c
typedef struct circle
{
Point center; // same color
double radius;

} Circle;
Is it possible to make this happen for C?
Best regards,
Henrik
VS Code version: Code 1.84.2 (1a5daa3a0231a0fbba4f14db7ec463cf99d7768e, 2023-11-09T10:51:52.184Z)
OS version: Windows_NT x64 10.0.19045
Modes:
Remote OS version: Linux x64 <IP_ADDRESS>-microsoft-standard-WSL2

maybe also try asking in https://github.com/jeff-hykin/better-cpp-syntax

@Walsoes, what extension have you installed for developing in C/C++ in VS Code?

This issue has been closed automatically because it needs more information and has not had recent activity. See also our issue reporting guidelines.
Happy Coding!


fix after flutter 3.10

rename AssetManifest to avoid name conflict
#2

@amake can you have a look at this and possibly release a new version? Thanks.

This is addressed in v2.2.0


fix: handle shorthand property

Summary
close #1653

Test Plan
add snaps for cases

Would you mind adding a changelog entry?


Add nanoseconds check when comparing mtime, ctime, and atime

The dcmp_compare_metadata function was not comparing nanoseconds
for mtime, ctime, and atime.
- Add nanoseconds check for mtime, ctime, and atime
- remove dcmp_compare_field macro

@adammoody Got it. Removed them.

@adammoody Updated.

Found a few edit suggestions.  The code looks good.  Thanks, @dsikich

@adammoody Fixed conflict with master branch.

@adammoody can i merge this?

Yep, good to go.  Thanks for replacing that macro.  It's more code to write, but I find it easier to read and thus easier to maintain going forward.


chore: Add licensing an Repo url

Porting over from https://github.com/jfrog/jfrog-vso-extension/pull/7
This just makes it easier for people to review code before installing (if they're in that type of org) and adds the license file that is also required in some places.

Thank you for this @nschonni!
Can you please join our contributors community by signing [JFrog's CLA(https://secure.echosign.com/public/hostedForm?formid=5IYKLZ2RXB543N) so that we can merge your update?

Looks like you already got this in https://github.com/jfrog/artifactory-vsts-extension/commit/96ce0aa9ceeca55bbe3b17d874d877078b5a2a8b


[Question] What is the best way to use VS Code's built in refactoring in vscode-neovim ?

In normal VS Code you need to select some code to get the lightbulb to appear that tells you what refactoring is available for that code.
In this extension:

If I enter visual mode and select code then the lightbulb does not appear until I ctrl+shift p to transfer the Neovim selection into VS Code
I can then select 'refactor' in the menu
If I select more lines of code in visual mode then the selection as far as VS Code is concerned is lost, and I need to ctrl+shift p again to get to select refactor

Am I missing some obvious shortcut or easier way to do things? Could visual mode communicate with VS Code and show the lightbulb and allow ctrl+shift r as insert mode does for refactoring?

Just map a shortcut inside your vim that converts Vim selection into VSCode selection and then call the command you need. Here is the example.
You can check out my configuration also if you prefer lua solution (1, 2).

Thanks for quick reply! With regard to the first example, do I need to copy paste:
function! s:openVSCodeCommandsInVisualMode()
    let mode = mode()
    if mode ==# 'V'
        let startLine = line('v')
        let endLine = line('.')
        call VSCodeNotifyRange('workbench.action.showCommands', startLine, endLine, 1)
    else
        let startPos = getpos('v')
        let endPos = getpos('.')
        call VSCodeNotifyRangePos('workbench.action.showCommands', startPos[1], endPos[1], startPos[2], endPos[2] + 1, 1)
    endif
endfunction

into my init.vim and tell it to run editor.action.codeAction instead of 'workbench.action.showCommands'? I am a bit confused. I found https://code.visualstudio.com/updates/v1_20#_keybindings-for-quick-fixes-and-code-actions but not sure how to directly tell it to show the refactoring dialog based on the selection. Is there a list of workbench.action.xxxx` commands somewhere to reference? Thanks!!

into my init.vim and tell it to run editor.action.codeAction instead of 'workbench.action.showCommands?

Yes.

Is there a list of workbench.action.xxxx commands somewhere to reference? Thanks!!

Yes, just open shortcuts menu in VScode, search for the hotkey and use right-click to copy command identifier.

Cheers!
It works but is clunky. It seems to forget when in visual block mode that other lines are selected after the first run. While many are selected on screen it is only acting on one.
Maybe I am just muddling up what VS Code can offer refactoring for with and without selecting code. It is acting funny somewhere, not sure if it is this plugin or Code itself.
I will forget it for now, many refactors are selectble in normal mode. Maybe someone might find it useful or improve it:
function! s:refactorInVisualMode()
    let mode = mode()
    if mode ==# 'V'
        let startLine = line('v')
        let endLine = line('.')
        call VSCodeNotifyRange('editor.action.refactor', startLine, endLine, 1)
    else
        let startPos = getpos('v')
        let endPos = getpos('.')
        call VSCodeNotifyRangePos('editor.action.refactor', startPos[1], endPos[1], startPos[2], endPos[2] + 1, 1)
    endif
endfunction

xnoremap <C-R> <Cmd>call <SID>refactorInVisualMode()<CR>

Can use xnoremap <C-R> <Cmd>call VSCodeNotifyVisual('editor.action.refactor', 1)<CR>


Prefect forwarding (std::forward)

C++Weekly
Is this a "C++Weekly" or "The [Fill in the Blank] Programmer" episode request?
Perfect Forwarding
What topics are important to cover for this episode?
10-20 minutes
Should this be bite-sized (5-10 minutes) or more long form (10-20 minutes)?

Objective: To delve into the mechanics of perfect forwarding in C++, breaking down the theory, the code syntax, and its practical implications for real-world coding.
Episode Breakdown:
Introduction to Perfect Forwarding: Why is it needed? How does it differ from simple function forwarding?
The Mechanics: Understand the role of templates, decltype, rvalue references, and std::forward in making perfect forwarding work. A look into how these components work together at a deep level.
Practical Usage: Real-world examples where perfect forwarding can make a significant difference, from improving performance to enabling more generic and robust code.
Common Pitfalls: Addressing potential mistakes developers might make and how to avoid them.


Example Project

Added my personal discord bot project, includes an example of how to incorporate an extensible command framework using reflection.

includes an example of how to incorporate an extensible command framework using reflection.

You're hopefully aware that Discord.Net.Commands already exists, right? It's generally not recommended that users (especially new users that read the examples) go and write their own command framework outside of highly custom use cases. D.N.C already has a feature set appropriate for 95% of people.

Hey, I'd like to give you some actual feedback. A little review, if you will.
As far as I saw you are using your own kind of dependency injector. That is a bit of unnecessary work and potentially dangerous or doesn't work. I'd recommend you using an existing dependency injection framework.
Every command currently has its own prefix. While that in itself might be a wanted feature, you should also make a dependency out of it. So you have the possibility to either use one prefix for everything or change it out individually depending on what you injected. Or if your goal was to have everything have the same prefix, then I'd localize that somewhere, maybe in your MessageReceived event?
I love having a lot of projects. But I think you overdid it a bit. The furthest I would go is having one project for your bot and one for your modules/plugins. But one for each module/plugin is a bit over the top. It's cool that you thought about the possibility to add external modules/plugins though.
async void MethodName() is a big no-no. Rather have it return async Task. I highly recommend you to read up on it. :)
There surely is a bit more. But overall I think you did a good job. While I only pointed out negatives here, I think these help the most and my own time is also spare. But don't worry, there are also positives! For example, you kept writing consistent code. Although maybe not the optimized or "correct" code, you kept with doing it rather than creating a mess. That is a very valuable skill and I hope you stick to it.

I agree with the other comments. It's good code, and has a consistent style, but it just doesn't follow our recommended guidelines and IMO is too cluttered. You should really be using our commands framework in an example bot, and I think most learners would prefer if the majority of code was in a single project.


git -> Git, github -> GitHub

Closing due to the reasons given in https://github.com/hotosm/learnosm/pull/535#issuecomment-329091883.


Negative Button for converters inconsistent with visibility

Describe the bug
If you launch Windows Calculator with any mode of Converters that don't support Negative Numbers, then change to temperature or angle converter, the negative button won't pop up. Likewise, if you launch with the temperature or angle mode, that button will not disappear.
Steps To Reproduce
Steps to reproduce the behaviour:

Launch Windows Calculator (be sure that it is on any converter mode that is not angle and temperature)
Change the mode to temperature or angle
See error: the negative button does not appear

Expected behaviour
When you switch modes, the negative button should appear and collapse accordingly.
Screenshots

Left: A instance where the converter was switched to. Right: A new instance of the calculator, already on the temperature page
Device and Application Information

OS Build: Windows Insider 19042.546
Architecture: x64
Application Version: 10.2008.2.0
Region: en-CA
Dev Version Installed: Yes

Requested Assignment
I'm just reporting this problem.  I don't want to fix it.

This is your friendly Microsoft Issue Bot. I've seen this issue come in and have gone to tell a human about it.

Great find, and thank you for the detailed bug report!


How to get the Shop session into database graphql schema operation

Issue summary
Shopify package version  "@shopify/shopify-api": "^5.0.1",
how i can access
const session =  Shopify.Utils.loadCurrentSession(req, res);
const client = new Shopify.Clients.Graphql(session.shop, session.accessToken);
i am access the shop url from args

 const session = Shopify.Utils.loadOfflineSession("offline_"+args.shop);
 const client = new Shopify.Clients.Graphql(session.shop, session.accessToken);

Error getting
    "message": "Missing access token when creating GraphQL client",
    "locations": [
        {
            "line": 2,
            "column": 3
        }
    ]

}

with graph QL operation
my app back-end runing on the node express
express with graph QL
i want to do some shopify graqhql into my mutation operation
Expected behavior
What do you think should happen?
i can access the session into Graph QL operation
Actual behavior
node express Graph QL operation can access the session    Shopify.Utils.loadCurrentSession
What actually happens?
i want to do some graph QL operation in  withouth node ( req, res )
simple rest api i can access the Req and res object for graphql i can't
Tip: include an error message (in a <details></details> tag) if your issue is related to an error
Steps to reproduce the problem

create any graph QL mutation on server side
try to access the  const session =  Shopify.Utils.loadCurrentSession(req, res);
const client = new Shopify.Clients.Graphql(session.shop, session.accessToken);
3 . getting the Error
`const session =  Shopify.Utils.loadCurrentSession(req, res);
^

ReferenceError: req is not defined
`
Reduced test case
The best way to get your bug fixed is to provide a reduced test case.

Checklist

[ ] I have described this issue in a way that is actionable (if possible)

If the session.accessToken is undefined/missing, this would suggest that authentication did not complete.
When Shopify sends a request to the app via the callback address (e.g. /api/auth/callback or whatever you choose to configure via Shopify.Auth.beginAuth()), using Shopify.Auth.validateAuthCallback() will store the session in session storage for later retrieval.
If there was no error with the authentication flow, session.accessToken should be populated.

If the session.accessToken is undefined/missing, this would suggest that authentication did not complete.
When Shopify sends a request to the app via the callback address (e.g. /api/auth/callback or whatever you choose to configure via Shopify.Auth.beginAuth()), using Shopify.Auth.validateAuthCallback() will store the session in session storage for later retrieval.
If there was no error with the authentication flow, session.accessToken should be populated.

@mkevinosullivan  Thanks Lot for the your Answer but i can find any reference in doc.

Please review Performing OAuth in the usage documentation.


Feature: Level Progress UI

Description
The level progress UI shows the progress of the level in a visual manner.

The student will see how many targets are left
The level designer will set which objects are targets

Functional Requirements

[x] It should be able to keep track of the amount of targets left
[x] It should be able to fire a UnityEvent when all targets are destroyed
[x] It should be able to fire a UnityEvent when a target is destroyed

Acceptance Criteria

[ ] It should allow for targets to not know they are targets

Dependencies

#43

Definition of Done

[ ] Follows the naming conventions
[ ] Follows the coding conventions
[ ] Meets the acceptance criteria
[ ] Pull request has been opened

Use a serialised list to track targets
Singletons are bad practice
No tags or layers ples
Don't check every frame using the update for changes


Skin Broken, Controls, texts visible on player

VideoJS Version: 5.19.2
Videojs Sublime Skin Version: 1.0.3
Use exactly as said in the readme file. The result shown below

Sorry, I was forgot to import videojs main stylesheet. Although after importing the player still had some formatting issues.
If anyone stumbled upon this ticket. Please have a go with https://github.com/zanechua/videojs-sublime-inspired-skin I am not using it but let me know here if that skin works. I am using some other skin currently.


Conduct interviews with "power users"

Determine:

What people come to the site for: what information are they seeking
What is difficult to find
What is easy to find

Have two phone calls happening the second week of August, hopefully, to show the new site and get feedback.


0.63.2 is out, can you provide a migration guide?

Or even better would be to add the documentation to the react-native-upgrade helper
https://react-native-community.github.io/upgrade-helper/?from=0.62.2&to=0.63.2

Until an official migration guide is provided, this are the steps I followed and I got my app running on the latest version, it is more than likely not complete... but hey, it's working
https://github.com/ospfranco/tempomat/commit/5aba474a58ad842261846c9c11dc7fbedda4f9b2

In case that dosn't work you can always:
delete macos folder together with node_modules and yarn.lock
change package.json react-native and react-native-versions
yarn install
npx react-native-macos-init
That did work for me quite quickly
(Just be careful because it will remove macos pod data)

In case that dosn't work you can always:
delete macos folder together with node_modules and yarn.lock
change package.json react-native and react-native-versions
yarn install
npx react-native-macos-init
That did work for me quite quickly
(Just be careful because it will remove macos pod data)

The out of tree platforms (e.g. macOS, Windows, and Web) are not part of the upgrade helper. Agreed it would be helpful to have solutions there (that's also been brought up on the Windows repo).
Outside of that it'd be good to have some sort of general guide on the RN macOS website. Not that one exists (that's been raised), but I think that'd be a natural place for it.
Also it looks like the landing page for macOS on that website needs to be updated with the most recent version.
My instinct is to transfer this issue to the website repo to capture that macOS is missing this. Thoughts?

The out of tree platforms (e.g. macOS, Windows, and Web) are not part of the upgrade helper. Agreed it would be helpful to have solutions there (that's also been brought up on the Windows repo).
Outside of that it'd be good to have some sort of general guide on the RN macOS website. Not that one exists (that's been raised), but I think that'd be a natural place for it.
Also it looks like the landing page for macOS on that website needs to be updated with the most recent version.
My instinct is to transfer this issue to the website repo to capture that macOS is missing this. Thoughts?

Worth noting here that I believe macOS is now part of upgrade-helper!


Add warning to documentation that merging DASH video requires newer avconv

Hi,
I just downloaded my first DASH Video+Audio, and had some difficulty figuring out how to stitch them together. avconv seemed to not be able to properly read the DASH video in copy mode.
Eventually, I tried upgrading my installation of libav from 0.8.9 (available in the current Ubuntu release) to 9.10 (I got it from the Ubuntu development version), and this fixed the issue.
It would be nice if youtube-dl's documentation contained a warning that avconv 0.8.x has problems handling DASH video, and suggested upgrading to avconv 9.x.
The specific video I was downloading was http://www.youtube.com/watch?v=hpNp8WdQOoo format 137, though I also tested a number of the lower quality DASH video formats with the same results.

youtube-dl will now warn automatically if it finds an overly old ffmpeg or avconv version. Thanks for the report!

It's good that this is fixed. But I'd like to say again that if you have this problem with a recent avconv build, you should really give ffmpeg a try. Sometimes things work in ffmpeg that don't in avconv.


chore(main): release utils 1.13.1

:robot: I have created a release beep boop
1.13.1 (2023-02-13)
Bug Fixes

code style issues (d3665ef)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/sandworm-hq/sandworm-utils/releases/tag/utils-v1.13.1 :sunflower:


pub-sub service to communicate new blocks

Closes #431
PR shows an example of  pub-sub service that uses AWS IOT service to deliver block proposed status updates to subscribers. It is thought as a nightfall service to deliver updates to client-less browser wallets.
The service is defined in test/pub-sub. It deploys the ping-pong test to have a pair of clients generating transactions. Then, there is a publisher node that detects that blocks have been generated, and submits a message using AWS  IOT service to all clients that have subscribed to the topic. There is also a subscriber that receives these messages.
Test can be launched by:
cd test/pub-sub
./ganache-standalone -s
./pub-nightfall -s -d
./pub-apps

You should see in the subscriber and publisher container logs the test result.
To stop:
./pub-down -d

You will also need to stop the ganache container manually.
Moving forward, I think that an Emitter function for Rollback Events needs to be added to the SDK (similarly to NewBlock Emiiter) so that the publisher can call it and receive Rollback events to alert subscribers.

This PR shows an example of pub-sub service using an AWS IoT.
This will be maintained as a branch instead of merging into master because master does not work with the example functionality.


Webcam Access Being Requested When Not Using

Hello there,
I'm working on a project with selfie segmentation and loving the performance so far. I'm making a background/foreground subtraction project and I've run into a bit of an issue. The browser I'm currently using doesn't have webcam access and I'm running the background subtraction on MP4 videos. It works great when I'm able to allow webcam access, but I have no idea why it's being requested in the first place.
Here's my code: https://gist.github.com/JelaniThompson/fe18bb5b431ec0815b8b136cd309591a
Would any of you guys happen to know how to prevent webcam access being asked for in my example? I'd like it to default to not asking and only trigger if I choose to toggle the mode to webcam view.

Hi @JelaniThompson ,
Are you still looking for the resolution on this issue.


"ERR_MISSING_ARGS" error produced by scheduler

🐛 Bug Report
This can happen when I try to paginate to go to the next page.
It makes a request to /domain/search, but then the request just hangs and never completes.
In the Docker logs for the backend, I get:
(node:326) UnhandledPromiseRejectionWarning: TypeError [ERR_MISSING_ARGS]: The "message" argument must be specified
    at process.target._send (internal/child_process.js:721:13)
    at process.target.send (internal/child_process.js:706:19)
    at process.<anonymous> (/app/node_modules/serverless-offline/dist/lambda/handler-runner/child-process-runner/childProcessHelper.js:47:11)
    at processTicksAndRejections (internal/process/task_queues.js:93:5)
(Use `node --trace-warnings ...` to show where the warning was created)

I don't see this error anymore.


Problem with aurelia-require-bundle: no such file or directory sightglass.js

Hi
I have a problem with aurelia-require-bundle.
When I run
node r.js -o name=aurelia-bundle-manifest baseUrl=. mainConfigFile=main-config.js out=aurelia-bundle.js optimize=none
I get exception:
Tracing dependencies for: aurelia-bundle-manifest Error: ENOENT, no such file or directory 'F:\aurelia\aurelia-typescript\aurelia-require-bundle\sightglass.js' In module tree:  aurelia-bundle-manifest    aurelia-loader/index      aurelia-loader/loader        core-js/core.src
I'm new to all of this code (aurelia, TS, requirejs) and I don't know where I've made a mistake.
I think core.src.js file is a bundle and have inside core.js, sightglass.js and rivets.patched.js
I don't know what and why is looking for sightglass.js file.
When I put sightglass.js file to my base directory then node r.js command is OK, but file aurelia-bundle.js has duplicated sightglass.js code.

can you post your aurelia-bundle-manifest here?  (let me know if you need help posting it)

I didn't change anything in your code. I downloaded the repo and tried to run all steps described
here: https://github.com/cmichaelgraham/aurelia-typescript/tree/master/aurelia-require-bundle
aurelia-bundle-manifest is the same as https://github.com/cmichaelgraham/aurelia-typescript/blob/master/aurelia-require-bundle/aurelia-bundle-manifest.js

gotcha - i think the issue has to do with changes in core-js.
i'm working on porting the samples to typescript 1.5 beta.
i have been using a bundling repo to create the bundles for that
things should be more stable in a week or so, but you can try the above bundling repo and see if you get better results.
the bundling repo uses the latest aurelia libraries and typescript 1.5 beta.  good because its current, bad because its cutting edge (unless you're like me and like that sort of thing :+1: )

Thanks. I'll try aurelia-amd-bundler.
And yes, I'm like you and I like beta versions :+1:

awesome !!

can i ask you what you see if you go to this url?
https://github.com/cmichaelgraham/aurelia-typescript/tree/typescript-1-5-port/code-sandbox/code-sandbox/views#boards
that is a board showing the tasks and there status in the pipeline using zenhub
not sure what you see if you don't install their chrome extension

I see just files in views catalog.

ok cool :sunglasses:

Hi,
Is this possible, not to include core-js into bundle, because - if we are using IE10 there is need to include it as script tag (I think this extend global)
It is simple to load it by configuring requirejs
{
    paths: {
        corejs: '/scripts/core-js/'
    },
    shim: {
        'corejs/core': {
            exports : window.core
        }
    },
    map: {
        '*': {
            'core-js': 'corejs/core'
        }
    }
}

Hi,
Is this possible, not to include core-js into bundle, because if we are using IE10 there is need to include it as script tag, it can be easily loaded through requirejs configuration


Replace C++ QIR Runtime with Rust QIR stdlib

This change removes the C++ implementation for the QIR Runtime and replaces it with a Rust implementation of a QIR stdlib that matches the classical functionality exposed.
Previously, the C++ QIR Runtime was compiled into three dynamic libraries, Microsoft.Quantum.Qir.Runtime, Microsoft.Quantum.Qir.QSharp.Foundation, and Microsoft.Quantum.Qir.QSharp.Core, and the "core" library would load the simulator dll at runtime. With this change, these dynamic libraries are no longer shipped, and we instead build a single static library, qir_stdlib, that is linked into the simulator dynamic library, Microsoft.Quantum.Simulator.Runtime. This makes the full state simulator a "QIR Backend" which means it exposes the classical and quantum functions necessary to link in and execute a QIR program.
To help orient reviews of this rather large change, here are some key landmarks in the code:

src/Qir/Runtime The existing C++ code is removed in favor of a single stdlib folder that implements the classical functions described in the QIR spec as a static library written in Rust. This includes unit tests for those functions.
src/Qir/Tools The generation logic for a main.cpp to run a given QIR program is updated to remove the support for the C++ specific runtime elements (namely QIR Execution Context and IRuntimeDriver references) in favor of just an invocation of the entry point function. The QIR libraries are removed in favor of linking directly against the full state simulator as a QIR backend.
src/Qir/Tests The C++ scenario tests that compile against QIR generated from Q# are adapted to the new library implementation, requiring the removal of any tests dependent on the internal C++ representations. Build infrastructure is updated to link against the full state simulator.
src/Simulation/Native The full state simulator is adapted to statically link the qir_stdlib as a dependency and re-export the QIR classical library support. New QIR-compliant C-API is added to allow QIR programs to link directly against the quantum operations supported by the simulator without the need of an additional shim library.
src/Simulation/qdk_sim_rs Cleanup to some Rust patterns to make clippy happy with the repo (not specific to the C++ -> Rust QIR transition, just minor general linter fixes).

NOTE: e2e builds will fail until a corresponding update is made to the e2e build script logic in order to build the QIR stdlib before the simulator to satisfy dependencies.

You may also want to update the .github/CODEOWNERS (some paths get deleted).

Merging with passed e2e builds (see https://github.com/microsoft/qdk/pull/288). Thanks everyone for the review!


SSID names are padded with spaces at the end - making them all 31 characters long.

I noticed that the length of the SSID never changes. They are always padded with spaces.
Perhaps this was intentional. But if you want to truncate them after the last letter, and not have trailing spaces, just add the code I wrote below:
Existing code:
// write new SSID into beacon frame
memcpy_P(&beaconPacket[38], &ssids[i], j - 1);
New code:
// change SSID length to match new SSID used above
beaconPacket[37] = (uint8_t)(j - 1);

Thanks!
You're absolutely right. I will update the source code

OK, I agree. So, there is not a perfect solution. I guess to make the SSID field truly variable length, you'd have to do a copy of the bytes in the beaconPacket after the SSID parameter forward or back based on the new length needed.  I wouldn't think that would take very long, but I haven't tested it to measure the impact.
I wonder if the sending of longer SSID with trailing space padding (always 32 bytes) is also slower than sending a shorter SSID?  If so, perhaps some of the extra time overhead of the copying bytes for a variable length beacon packet is regained back by sending fewer bytes over the air?


PR for #6 Add missing unit tests (XWwwFormUrlEncodedEntity)

linking to #6
@dmfs This could be reviewed and merged now, I will create separate PR for other tests.
(Not sure at the moment when I will continue with them.)

Since = and & are special characters in this context, there should be a test to make sure these are properly encoded in values and keys.

Updated XWwwFormUrlEncodedEntity to ignore Entrys with empty keys and added the test cases for = and & as well.
Ready for review.


[Compute] vm reimage: Add this command to support reimaging a virtual machine

Related command

az vm reimage
Description

Add az vm reimage to support reimaging a virtual machine which don't have a ephemeral OS disk, for virtual machines who have a ephemeral OS disk the virtual machine is reset to initial state.
Close: #25722
Testing Guide

History Notes

[Component Name 1] BREAKING CHANGE: az command a: Make some customer-facing breaking change
[Component Name 2] az command b: Add some customer-facing feature

This checklist is used to make sure that common guidelines for a pull request are followed.

[x] The PR title and description has followed the guideline in Submitting Pull Requests.

[x] I adhere to the Command Guidelines.

[x] I adhere to the Error Handling Guidelines.

Compute


Add CodeFactor badge and .NET core prerequisites

I've added one more badge, the CodeFactor badge pointing to https://www.codefactor.io.
I found it useful for spotting duplicate code. You would have to change the URL, but you can have a look at my branch's for an idea of what it does.
https://www.codefactor.io/repository/github/jannesrsa/chasm
Also added a Prerequisites section to the README.

Codecov Report

Merging #77 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #77   +/-   ##
=======================================
  Coverage   55.18%   55.18%
=======================================
  Files          46       46
  Lines        1747     1747
=======================================
  Hits          964      964
  Misses        783      783

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 cfd5513...80da6b4. Read the comment docs.

Awesome stuff! I'm just waiting on an OSS address from IT so that I can sign up to codecov, codefactor, etc. under an umbrella K2 account. I'll merge this once that's done.

I agree. This is very cool, I already used the report to fix some duplicate-code issues in source

I removed some unit tests from this branch to separate it from the CodeFactor change.
The unit tests will be moved to another branch.

I am merging this in using @jannesrsa's account. We will flip to our own account once we have the email address


tc.object_detector.create gets "Killed"

I am trying to train an object detection model on my data, there are roughly about 36,000 train images right now and it may/may not increase later, and whenever I train my model it gets killed. To observer what is happening I parallelly was monitoring the output of htop to administer what is happening and what I found out was whenever the code will reach  tc.object_detector.create you will start the RAM getting full and then swap memory gets full and then it gets killed.
My hunch was that it is the memory that is not being managed well somewhere, so to validate my claim I decreased my data size to 8000 images and as I expected it worked just fine. My issue is that the problem I am trying to solve cannot be solved with just 8000 images and would require more data for better accuracy. Then I looked up a few issues on stackover flow which talk a similar problem and one by one I tried to implement them to see if it would solve my problem. Below are a few solutions are tried:

Decrease the batch size (or just make it 1): I tried all combinations of batch size and none of these worked
Resize the images to smaller size: Even this trick did not work, as even with a smaller image dimension the data would still fill up the RAM and swap memory.
Followed the suggestion in #1412: Even this issue talks about something similar to mine and it was suggested that the latest turicreate probably would not have this issue. I upgraded my turicreate to now latest version: 6.4.1 and it still did not fix my issue
Increase the swap memory: I tried increasing my swap memory and this kind of gave relatively positive results. Like I claimed earlier that it might be a memory issue, so ideally increasing the swap memory should help me and it did. Below is a small analysis I did (keep in mind my original swap memory size was 2GB):

Swap memory size (in GB)
Max amount of data trained without error

2GB
8k

8GB
12-14k

16GB
20k

32GB
25k

Theoretically, I can keep on increasing the swap memory for more data I want to train but I think it's just a hack and we are not addressing the underlying issue that could have caused it. Also, just increasing the swap memory based on my data size is not a right thing to do for the system as well. Considering the fact that SFrame is not a in-memory data structure like many others, I did not expect this problem to occur while training and I think it's very important to address this, as I feel a good ML tool should work for any amount of data that is given.
Pragmatically speaking, it is possible that it might be a because of the infra I am using so here are some details of the system I am working on:
OS: Ubuntu 18.04
CUDA: 10.0
Cudnn: 7.4.2
Tensorflow: 2.0.0 (built from scratch to use the above mentioned CUDA and Cudnn)
Turicreate: 6.4.1 (by far the latest version)
RAM: 16GB
**I am using a virtual environment set up (if it matters)
Data size: 15 GB (it will eventually increase even more)
Any feedback on this would be appreciated.
Thank you!

I faced the same issue then my workaround was to update CUDA to 10.1 and Cudnn to 7.6.
After that install, Turicreate as per instructions. Follow GPU instruction as it is.

@waheed0332 But the recommended CUDA and Cudnn version is 10.0 and 7.4.x respectively with tensorflow 2.0.0.
Also, what is the size of the data you are dealing with? And did the RAM consumption decrease after this update?
Thanks!

Yeah, but I got the same error with the recommended version. My data size is 500k images I have 32GB ram.
Here is my requirement file.
absl-py==0.10.0
astor==0.8.1
astunparse==1.6.3
cachetools==4.1.1
certifi==2020.6.20
chardet==3.0.4
coremltools==3.3
decorator==4.4.2
gast==0.3.3
google-auth==1.22.1
google-auth-oauthlib==0.4.1
google-pasta==0.2.0
grpcio==1.32.0
h5py==2.10.0
idna==2.10
importlib-metadata==2.0.0
Keras-Applications==1.0.8
Keras-Preprocessing==1.1.2
llvmlite==0.33.0
Markdown==3.3.1
numba==0.50.1
numpy==1.18.5
oauthlib==3.1.0
opt-einsum==3.3.0
pandas==1.1.3
Pillow==8.0.0
pkg-resources==0.0.0
prettytable==0.7.2
protobuf==3.13.0
pyasn1==0.4.8
pyasn1-modules==0.2.8
python-dateutil==2.8.1
pytz==2020.1
requests==2.24.0
requests-oauthlib==1.3.0
resampy==0.2.1
rsa==4.6
scipy==1.5.2
six==1.15.0
tensorboard==2.3.0
tensorboard-plugin-wit==1.7.0
tensorflow-estimator==2.3.0
tensorflow-gpu==2.3.1
termcolor==1.1.0
turicreate==6.4.1
urllib3==1.25.10
Werkzeug==1.0.1
wrapt==1.12.1
zipp==3.3.0
Cuda 10.1 and Cudnn 7.6 is compatible with tensorflow-gpu 2.3.1. So you can give it a try things might workout for you too.

@waheed0332 Thanks a lot, will give it a try and report back.

@waheed0332 So, I did try what you suggested and below are my findings:

So I first set up CUDA 10.1 and Cudnn 7.6 and then I built tensorflow(V2.3.1) from scratch and then installed turicreate (V6.4.1, this is the latest version as of now) but turicreate would not install and threw an error saying turicreate is only compatible with tensorflow>2.1 and tensorflow<=2.0(This is not the actual error but it basically said something very similar to this).
Then I tried to trick turicrteate by uninstalling the tensorflow I had (which is 2.3.1) and then installed installed a compatible version of tensorflow(2.0.0) and then installed turicreate. Then finally uninstall tensorflow-2.0.0 and again installed tensorflow -2.3.1 and this did give me a warning saying it's not compatible with turicreate but I did it anyway to test it. But even after doing this I still ran into the same error I mentioned earlier (I know this step does sound very stupid but I did it only because I wanted to validate what @waheed0332 suggested)

Even now the RAM gets full and then starts filling my swap memory and then once both are full the program gets killed. I strongly believe somewhere the data management is not happening properly.
The Data size I am using is a lot (roughly 36k images; 10-15 GB) but I don't think that should be create the problem.
Please let me know what can be done or how can we debug this even further or which part could create this issue and if anyone is facing a similar issue and has found a workaround.
Thanks a lot!

Can you share your requirement file?

Here is the list of all packages with their respective versions
Package                Version

absl-py                0.10.0
astor                  0.8.1
astunparse             1.6.3
boto3                  1.16.3
botocore               1.19.3
cachetools             4.1.1
certifi                2020.6.20
chardet                3.0.4
coremltools            3.3
decorator              4.4.2
gast                   0.2.2
google-auth            1.22.1
google-auth-oauthlib   0.4.1
google-pasta           0.2.0
grpcio                 1.33.1
h5py                   2.10.0
idna                   2.10
importlib-metadata     2.0.0
jmespath               0.10.0
Keras-Applications     1.0.8
Keras-Preprocessing    1.1.2
llvmlite               0.33.0
Markdown               3.3.2
numba                  0.50.1
numpy                  1.18.5
oauthlib               3.1.0
opt-einsum             3.3.0
pandas                 1.1.3
Pillow                 8.0.1
pip                    20.2.4
pkg-resources          0.0.0
prettytable            0.7.2
protobuf               3.13.0
pyasn1                 0.4.8
pyasn1-modules         0.2.8
python-dateutil        2.8.1
pytz                   2020.1
requests               2.24.0
requests-oauthlib      1.3.0
resampy                0.2.1
rsa                    4.6
s3transfer             0.3.3
scipy                  1.4.1
setuptools             50.3.2
six                    1.15.0
tensorboard            2.0.2
tensorboard-plugin-wit 1.7.0
tensorflow-estimator   2.0.1
tensorflow-gpu         2.0.0
termcolor              1.1.0
turicreate             6.4.1
urllib3                1.25.11
Werkzeug               1.0.1
wheel                  0.35.1
wrapt                  1.12.1
zipp                   3.3.1

set tensorflow-gpu==2.3.1 and try again.

My Tensorflow-gpu was in fact 2.3.1 and as that did not work I reverted it back to 2.0.0. And my dataset has a images of from all ranges of size and I don't think that will cause any issue as you mentioned it's being resized anyway.
I really don't think it's the version issue, I think it has to do with something else.

Well, the only workaround is to reduce the image size and resize annotations accordingly. I recommend going no more than 650x650.

As a workaround, does anyone know how to export the generated synthetic data (images and annotations) in a format usable in another training system?


Feature Request: Patron Orders "I am poor but I still want to craft your orders Mr.NPC"

The feature is based on using the most concentration and the least expensive materials, maybe a checkbox under patron orders where that it's max concentration that works exactly how optimize works) cheapest materials then it applies concentration to reach the rank and for use cases were cheapest mats + concentration doesn't reach the patron order rank we can bump materials rank to reach the next then apply concentration again.
example:
patron order rank 2:
try rank 1 mats + concentration (they are usually the cheapest)
patron order rank 3:
tries above formula .. if cur rank !== order rank try to optimize for 1 rank below the patron order then applies concentration
I might be dumb and not fully understand at code level but I imagine we can use a bit a recursiveness to achieve it

implemented


feat: cdk8s-plus is now a release-candidate

Signed-off-by: Eli Polonsky<EMAIL_ADDRESS>

💔 All backports failed

Status
Branch
Result

❌
k8s-22/main
Backport failed because of merge conflicts

❌
k8s-23/main
Backport failed because of merge conflicts

Manual backport
To create the backport manually run:
backport --pr 761

Questions ?
Please refer to the Backport tool documentation

💚 All backports created successfully

Status
Branch
Result

✅
k8s-23/main

Questions ?
Please refer to the Backport tool documentation

💚 All backports created successfully

Status
Branch
Result

✅
k8s-22/main

Questions ?
Please refer to the Backport tool documentation


DSWx-NI PGE Engineering Release 2.0 integration

Purpose

This branch integrates the DSWx-NI PGE v4.0.0-er.2.0 into OPERA PCM.

Proposed Changes

This version adds support for generation of the iso.xml output product and application of file naming conventions for ancillary output products

Issues

Resolves #907

Testing

This branch has been tested on a dev cluster via the on-demand Tosca job for DSWx-NI. Both real and simulation mode have been tested.

Verified that DSWx-NI PGE executed and generated following products

OPERA_L3_DSWx-NI_T18MVA_20240710T213526Z_20240710T213526Z_LSAR_30_v0.1
OPERA_L3_DSWx-NI_T18MVT_20240710T213526Z_20240710T213526Z_LSAR_30_v0.1
OPERA_L3_DSWx-NI_T18MVU_20240710T213526Z_20240710T213526Z_LSAR_30_v0.1
OPERA_L3_DSWx-NI_T18MVV_20240710T213526Z_20240710T213526Z_LSAR_30_v0.1
OPERA_L3_DSWx-NI_T18MWA_20240710T213526Z_20240710T213526Z_LSAR_30_v0.1
OPERA_L3_DSWx-NI_T18MWT_20240710T213526Z_20240710T213526Z_LSAR_30_v0.1
OPERA_L3_DSWx-NI_T18MWU_20240710T213526Z_20240710T213526Z_LSAR_30_v0.1
OPERA_L3_DSWx-NI_T18MWV_20240710T213526Z_20240710T213526Z_LSAR_30_v0.1
OPERA_L3_DSWx-NI_T18MXA_20240710T213526Z_20240710T213526Z_LSAR_30_v0.1
OPERA_L3_DSWx-NI_T18MXT_20240710T213526Z_20240710T213526Z_LSAR_30_v0.1
OPERA_L3_DSWx-NI_T18MXU_20240710T213526Z_20240710T213526Z_LSAR_30_v0.1
OPERA_L3_DSWx-NI_T18MXV_20240710T213526Z_20240710T213526Z_LSAR_30_v0.1


The same task executed as many as worker_number times

It seems like broker just runs a task in every available  worker process.
Here is simple example based on docs.
broker.py
import asyncio
import os

from taskiq_redis import RedisAsyncResultBackend, RedisBroker

redis_async_result = RedisAsyncResultBackend(redis_url="redis://localhost:6379/")

broker = RedisBroker(
    url="redis://localhost:6379/",
    result_backend=redis_async_result,
)

@broker.task
async def add_one(value: int) -> int:
    current_pid = os.getpid()
    print(f'Executing in the process with pid: {current_pid}')
    return value + 1

async def main() -> None:
    await broker.startup()
    # Send the task to the broker.
    task = await add_one.kiq(1)
    # Wait for the result.
    result = await task.wait_result(timeout=2)
    print(f"Task execution took: {result.execution_time} seconds.")
    if not result.is_err:
        print(f"Returned value: {result.return_value}")
    else:
        print("Error found while executing task.")
    await broker.shutdown()

if __name__ == "__main__":
    asyncio.run(main())

taskiq worker broker:broker --workers=5 (it's 2 by default)
$ python broker.py

Task execution took: 3.504753112792969e-05 seconds.
Returned value: 2

Log from workers:
[2023-02-23 13:27:46,104][INFO   ][MainProcess] Starting 5 worker processes.
Executing in the process with pid: 57724.
Executing in the process with pid: 57721.
Executing in the process with pid: 57720.
Executing in the process with pid: 57722.
Executing in the process with pid: 57723.

So it has been executed 5 times.
Probably it's not desired especially if task is using a lot of recourses or sending some emails.
Am I doing something wrong?

Hi, @wwarne! Please check out our new release 0.2.0. Thanks to @booqoffsky now we have a new broker that runs as you expect, without broadcasting messages.
If it works for you, please mark issue as resolved.

I checked it and everything works great! Thank you a lot guys, you are amazing!


[BuildSystem] Switch MkdirCommand to be be an ExternalCommand.

The most important impact of this is that it allows this command to use all
of the general purpose machinery from the ExternalCommand w.r.t. input and
output handling. In particular, MkdirCommand's can now drive virtual output
nodes.

@swift-ci please smoke test


[Feature] Type of FeatureExtension

FeatureExtension.class must have a type and corresponding methods
JSON ->    String getJSON();
TEXT ->    List<String> getText();
ARTIFACTS ->  List<FeatureArtifact> getArtifacts();;

When calling one of the Method on a FeatureExtension with an not matching Type (e.g. getJson() on a Artifacts type)  then null should be returned.
At the moment i cant see why FeatureExtensions must have a Type.
A FeatureExtension  should be able to use the text, json and artifacts in parallel.
{
	"id": "org.acme:acmeapp:2.1.0",

	"extensions": {
		"database-init-extention": {
			"artifacts": [{
				"id": "my:jdbc-driver:1.0.0"
			}],

			"json": {
				"user": "bar",
				"pass": ".secret",
				"url": "url.to.db"
			},

			"text": [
				"create table foo ( a int, b int, c int);",
				"insert into foo (a,b,c) values (1,2,3);"
			]
		}

	}
}

Alternatively:
IF the type is really necessary:
I would suggest to not return null but throw an UnsupportedOperationException
Then this would be also valid FeatureExtension.
{
	"id": "org.acme:acmeapp:2.1.0",

	"extensions": {
		"my-execution1": {
			"type": "json",
			"json": null
		},

		"my-execution2": {
			"type": "json"
		},

		"my-execution3": {} // default type is Artifact
	}
}

What about making FeatureExtension an Interface that provides
@ProviderType
public interface FeatureExtension {
 String getType();// instead of the enum
 Object getContent();// replacement for hetText, getJson, getArtifacts
}

When we then have Implementations for Text, Json, ArtifactExtensions that implement the FeatureExtension interface these classes can provide their convenient methods like getText(), getJson() or getArtifacts().
public class TextExtension implements FeatureExtension {
 String getType() {
    return "text"
  }
  Object getContent() {
    return content;
  }
  String getText() {
    return (String)content;
  }
}

That would leave us open to have custom implementations for new/other types, just by inheritance.
We would not have a problem, with cross-field-restrictions, when its calling getJson() will throw an exception when having am extension instance of type text. An instanceof could make it type safe.
As default, an implementor of this specification can e.g. register the extensions classes or even extension factories (maybe in the FeatureBuilder) like this:
register("text", DefaultTextFeature.class);
register("json", DefaultJsonFeature.class);
register("artifact", DefaultArtifactFeature.class);

or
registerFactory("text", DefaultTextFeatureFactory.class);
registerFactory("json", DefaultJsonFeatureFeature.class);
registerFactory("artifact", DefaultArtifactFeatureFeature.class);

Making these register and registerFactory public, enables to register custom extensions or substitute extensions. This would make the extension more open for customizations.


Create a Plugin generator

In order to support developer to create their own plugin, it could be good to leverage the Yeoman Ecosystem.

🎉🎉🎉  https://github.com/restqa/generator-plugin


Individual filleting of each corner in fillet function broken

Trying to fillet each corner of a shape individually by giving the fillet function a list of fillet values matching the number of corners of the polygon is broken. I think this happened in commit:
https://github.com/heitzmann/gdspy/commit/fb3b1b32aeac1680e0d7821a4196f3af11e18190#diff-2812b20adf756d7db06ec54a53840a66
Doing so now will result in errors of the kind:
Traceback (most recent call last):   File "...\gdspy\__init__.py", line 448, in fillet     l = radius * tt[ii] TypeError: can't multiply sequence by non-int of type 'numpy.float64'
This functionality seems to have been lost when the Polygon class was cleaned up and made to inherit from the PolygonSet class. Beforehand, the fillet function in the Polygon class had a few lines that PolygonSet does not:
    ct = numpy.cos(theta * 0.5)
    tt = numpy.tan(theta * 0.5)
    if not isinstance(radius, list):
        radius = [radius] * len(self.points)
    if not len(self.points) == len(radius):
        raise ValueError("[GDSPY] Fillet radius list length does not "
                         "match the number of points in the polygon.")
     new_points = []

(lines 377 to 381 in the above commit)
Currently, in PolygonSet the same section looks like:
https://github.com/heitzmann/gdspy/blob/34474d10ab0f247291c06c329819b4943124d9db/gdspy/__init__.py#L429-L432
So when Polygon inherited fillet from PolygonSet, the individual corner filleting functionality to was lost.
Hopefully, simply reinserting these lines into the PolygonSet class should be enough to restore this really useful functionality.

Thanks @PSpring! I believe 958e31e35214cc456e8996284e94c77fef14ca01 fixes this bug.

No problem! Thanks for the super quick fix!


Display window selection not working

I'm working on adding a Model for a ili9488 based display (https://www.waveshare.com/pico-restouch-lcd-3.5.htm). This could be something I'm doing wrong in the initialization, but the problem I'm having is that when drawing, the window selection doesn't seem to be working. So all area fill commands just will write from (0,0) and fill column-based until it's filled the area specified by the "Rectangle":
    let area: Rectangle = Rectangle::new(Point::new(50, 50), Size::new(50, 50));
    let _ = display.fill_solid(&area, Rgb565::RED);

Do you have any ideas on what might be wrong?
Main code
mipidsi fork

Maybe this line is the issue https://github.com/isaac-asdf/waveshare-testing/blob/d9925ef6c6504af42bc58cff7f065e63cc53d214/src/main.rs#L100. The ILI9488 framebuffer is 320x480 and not 480x320. The size is correct in ili9488.rs: https://github.com/isaac-asdf/mipidsi/blob/9580876785178257ea637b2ca8b78cb2cc5609ec/mipidsi/src/models/ili9488.rs#L20 I'm not sure if there are any checks for valid display sizes in the builder.
If changing this doesn't have an effect: Does set_pixel work as expected?

Thanks for the suggestions. I updated the framebuffer in the definition, and tried testing with set_pixel and set_pixels with the same results. I pushed my latest code to that same repo/branch.
Multiple calls to set_pixels resulted in only the last call's pixels being present, and the pixels were set starting at the screen origin of (0,0) with 6 total pixels present, even though I would've expected the pixels to overwrite in the first location based on only 1 start/end pixel being chosen

This https://github.com/isaac-asdf/mipidsi/blob/9580876785178257ea637b2ca8b78cb2cc5609ec/mipidsi/src/models/ili9488.rs#L93-L97 doesn't seem right. According to the datasheet the 0xB6 command takes 3 parameter bytes, but the code only sends 2. I'm not sure how the controller handles missing parameters and perhaps the NL parameter gets set to an invalid setting if it is missing. The comment above the command refers to "memory access data control", but that command is 0x36 and not 0xB6.

Outdated comment, but yeah that command was missing the third param. I had been copying some example C code from the waveshare wiki. I added a parameter for that but I'm still having the same problem. I'm going to be testing modifying some of those parameters in the set up section for the display, it seems like there must be something wrong with how I'm configuring the chip

Is there a difference in how command packets are formed based on long packet vs short packet?
I'm looking at the manual for this chip and on page 89 it specifies that the Column Address Set and Page Address Set require the "long packet" format. It seems like all other commands I'm using work with the "short packet", so I'm wondering if there's something about building that packet that I need to add for this.

These differences only apply when the controller is connected via a MIPI DSI interface, which you don't use when the display is connected via SPI.

Closing for issue cleanup, please feel free to re-open if this is still an active issue.


feat(image): Adding the lighter base image in the Dockerfile

Resolves issue #5

Changed to Alpine Base Image, reduced the image size from 143M to 47M

Signed-off-by: Soumya Ghosh Dastidar<EMAIL_ADDRESS>

Thanks @gdsoumya for the PR! Could you please confirm a successful experiment run with this chaosexperiment ?
You can use the steps here with the go-based chaosexperiment being used over the standard one.
cc: @ispeakc0de

LOGS for the pod-delete experiment using the new Base Image.
cc: @ispeakc0de
W0527 08:06:01.512868       1 client_config.go:541] Neither --kubeconfig nor --master was specified.  Using the inClusterConfig.  This might not work.
time="2020-05-27T08:06:01Z" level=info msg="[PreReq]: Getting the ENV for the  experiment"
time="2020-05-27T08:06:01Z" level=warning msg="Unable to initiate EventRecorder for chaos-experiment, would not be able to add events"
time="2020-05-27T08:06:01Z" level=info msg="[PreReq]: Updating the chaos result of pod-delete experiment (SOT)"
time="2020-05-27T08:06:01Z" level=info msg="The application informations are as follows" Namespace=default Label="app=hello-node" Ramp Time=1
time="2020-05-27T08:06:01Z" level=info msg="[Status]: Verify that the AUT (Application Under Test) is running (pre-chaos)"
time="2020-05-27T08:06:01Z" level=info msg="[Status]: Checking whether application pods are in running state"
time="2020-05-27T08:06:01Z" level=info msg="The running status of Pods are as follows" Pod=hello-node-7bf657c596-ck7gb Status=Running
time="2020-05-27T08:06:01Z" level=info msg="The running status of Pods are as follows" Pod=hello-node-7bf657c596-z58ph Status=Running
time="2020-05-27T08:06:01Z" level=info msg="[Status]: Checking whether application containers are in running state"
time="2020-05-27T08:06:01Z" level=info msg="The running status of container are as follows" container=echoserver Pod=hello-node-7bf657c596-ck7gb Status=Running
time="2020-05-27T08:06:01Z" level=info msg="The running status of container are as follows" container=echoserver Pod=hello-node-7bf657c596-z58ph Status=Running
time="2020-05-27T08:06:01Z" level=info msg="[Ramp]: Waiting for the 1s ramp time before injecting chaos"
time="2020-05-27T08:06:02Z" level=info msg="[Info]: Killing the following pods" PodList="[hello-node-7bf657c596-ck7gb]"
time="2020-05-27T08:06:02Z" level=info msg="[Wait]: Wait for the chaos interval 10s"
time="2020-05-27T08:06:12Z" level=info msg="[Status]: Verification for the recreation of application pod"
time="2020-05-27T08:06:12Z" level=info msg="[Status]: Checking whether application pods are in running state"
time="2020-05-27T08:06:22Z" level=info msg="The running status of Pods are as follows" Pod=hello-node-7bf657c596-qflml Status=Running
time="2020-05-27T08:06:22Z" level=info msg="The running status of Pods are as follows" Pod=hello-node-7bf657c596-z58ph Status=Running
time="2020-05-27T08:06:22Z" level=info msg="[Status]: Checking whether application containers are in running state"
time="2020-05-27T08:06:22Z" level=info msg="The running status of container are as follows" container=echoserver Pod=hello-node-7bf657c596-qflml Status=Running
time="2020-05-27T08:06:22Z" level=info msg="The running status of container are as follows" container=echoserver Pod=hello-node-7bf657c596-z58ph Status=Running
time="2020-05-27T08:06:22Z" level=info msg="[Info]: Killing the following pods" PodList="[hello-node-7bf657c596-qflml]"
time="2020-05-27T08:06:22Z" level=info msg="[Wait]: Wait for the chaos interval 10s"
time="2020-05-27T08:06:32Z" level=info msg="[Status]: Verification for the recreation of application pod"
time="2020-05-27T08:06:32Z" level=info msg="[Status]: Checking whether application pods are in running state"
time="2020-05-27T08:06:34Z" level=info msg="The running status of Pods are as follows" Pod=hello-node-7bf657c596-9qqhj Status=Running
time="2020-05-27T08:06:34Z" level=info msg="The running status of Pods are as follows" Pod=hello-node-7bf657c596-z58ph Status=Running
time="2020-05-27T08:06:34Z" level=info msg="[Status]: Checking whether application containers are in running state"
time="2020-05-27T08:06:34Z" level=info msg="The running status of container are as follows" container=echoserver Pod=hello-node-7bf657c596-9qqhj Status=Running
time="2020-05-27T08:06:34Z" level=info msg="The running status of container are as follows" container=echoserver Pod=hello-node-7bf657c596-z58ph Status=Running
time="2020-05-27T08:06:34Z" level=info msg="[Info]: Killing the following pods" PodList="[hello-node-7bf657c596-9qqhj]"
time="2020-05-27T08:06:34Z" level=info msg="[Completion]: pod-delete chaos is done"
time="2020-05-27T08:06:34Z" level=info msg="[Ramp]: Waiting for the 1s ramp time after injecting chaos"
time="2020-05-27T08:06:35Z" level=info msg="[Confirmation]: The application pod has been deleted successfully"
time="2020-05-27T08:06:35Z" level=info msg="[Status]: Verify that the AUT (Application Under Test) is running (post-chaos)"
time="2020-05-27T08:06:35Z" level=info msg="[Status]: Checking whether application pods are in running state"
time="2020-05-27T08:06:35Z" level=info msg="The running status of Pods are as follows" Pod=hello-node-7bf657c596-9qqhj Status=Running
time="2020-05-27T08:06:35Z" level=info msg="The running status of Pods are as follows" Pod=hello-node-7bf657c596-z58ph Status=Running
time="2020-05-27T08:06:37Z" level=info msg="The running status of Pods are as follows" Status=Running Pod=hello-node-7bf657c596-9qqhj
time="2020-05-27T08:06:37Z" level=info msg="The running status of Pods are as follows" Status=Running Pod=hello-node-7bf657c596-z58ph
time="2020-05-27T08:06:39Z" level=info msg="The running status of Pods are as follows" Pod=hello-node-7bf657c596-9qqhj Status=Running
time="2020-05-27T08:06:39Z" level=info msg="The running status of Pods are as follows" Pod=hello-node-7bf657c596-z58ph Status=Running
time="2020-05-27T08:06:42Z" level=info msg="The running status of Pods are as follows" Status=Running Pod=hello-node-7bf657c596-9qqhj
time="2020-05-27T08:06:42Z" level=info msg="The running status of Pods are as follows" Pod=hello-node-7bf657c596-z58ph Status=Running
time="2020-05-27T08:06:44Z" level=info msg="The running status of Pods are as follows" Status=Running Pod=hello-node-7bf657c596-z58ph
time="2020-05-27T08:06:46Z" level=info msg="The running status of Pods are as follows" Pod=hello-node-7bf657c596-z58ph Status=Running
time="2020-05-27T08:06:46Z" level=info msg="The running status of Pods are as follows" Status=Running Pod=hello-node-7bf657c596-zf6rg
time="2020-05-27T08:06:46Z" level=info msg="[Status]: Checking whether application containers are in running state"
time="2020-05-27T08:06:46Z" level=info msg="The running status of container are as follows" Pod=hello-node-7bf657c596-z58ph Status=Running container=echoserver
time="2020-05-27T08:06:46Z" level=info msg="The running status of container are as follows" container=echoserver Pod=hello-node-7bf657c596-zf6rg Status=Running
time="2020-05-27T08:06:46Z" level=info msg="[The End]: Updating the chaos result of pod-delete experiment (EOT)"

Thanks @gdsoumya for the PR! Could you please confirm a successful experiment run with this chaosexperiment ?
You can use the steps here with the go-based chaosexperiment being used over the standard one.
cc: @ispeakc0de

I have executed the experiment and the and it is working as expected when compared with the original experiment. I have attached the logs for the pod too.


tail -f for logs

Summary
This is an impressive project! We've started using it on several projects.
It would be super useful to be able to tail these consolidated logs "-f", i.e. see changes as they come in, including any greps etc that we have. Is this already possible / could it be added?
Current behavior
s4 searches current logs and returns.
Suggested behavior
s4 -t or --tail: Doesn't return, just continues to print logs as they are written to the disk

Glad it's useful! 😁
I'll have to think about this as it's not a trivial change. It breaks some foundational assumptions I started with. But if you're running into a need for it then I'll seriously consider it.

Thanks! The other solution I thought of was to write a shell script that
would run every second, passing -a=[time of last report]. It won't be
exactly a constant flow, but it will be pretty good.
The only issue I ran into in doing a PoC was that the -a parameter doesn't
seem to parse the format that includes a fractional second.
This time parses: 20230626T075830
but this one does not: 20230626T075830.996
If I want to get this right, I'll need to parse the fractional second so it
picks up exactly where it left off.
Just some thoughts -- thanks for the response!
On Sat, Jul 1, 2023 at 4:14 PM James Thomas Moon @.***>
wrote:

Glad it's useful! 😁
I'll have to think about this as it's not a trivial change. It breaks some
foundational assumptions I started with. But if you're running into a need
for it then I'll seriously consider it.
—
Reply to this email directly, view it on GitHub
https://github.com/jtmoon79/super-speedy-syslog-searcher/issues/142#issuecomment-1616086727,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AACCRU6LIDJPC3RSE63NER3XOCAMFANCNFSM6AAAAAAZP5AT6Q
.
You are receiving this because you authored the thread.Message ID:
@.***>

tl;dr please describe the scenario that motivated this request.
Now that I've thought about this, I recall I decided to never support such a scenario, real-time following log files like tail -f, because this specific scenario doesn't make any sense. If log files are being followed in real-time then just print log messages as they arrive using tail -f. There may be an unpredictable delay between log message generation and delivery to some logging system endpoint, but that delay should be small enough to ignore. So I don't understand how s4 could help here.
To consider this another way, if log files are receiving log messages at nearly the same real time but with wildly different datetimestamps, so widly different that so you need s4 to resort them by datetimestamp, then something is wrong with that logging system.
So I'm unable to imagine your scenario that motivated this request. Could you please describe it in detail?

The only issue I ran into in doing a PoC was that the -a parameter doesn't
seem to parse the format that includes a fractional second.

See #145

Hi James,
I'm trying to create the illusion of 30 separate servers writing to
individual log files on a shared AWS EFS drive, each in their own
directory, coming through as if it were a single virtual server with
monolithic log file that I can just "tail". So what we did in the past with
a single server was tail -f | grep 'something' -- then do something on the
website and see only the logs related to the specific thing you are doing.
The issue with tail -f is that it doesn't merge the logs. So:
tail -f **/*.log
looks like this:
==> log/vendor_logger.log <==
I, [2023-07-03T10:38:01.452020 #77324]  INFO -- : hellodebug
==> log/autodetect_logger.log <==
I, [2023-07-03T10:38:08.061625 #77324]  INFO -- : hellodebug
==> log/development.log <==
hello
where I want it to look like this:
I, [2023-07-03T10:38:01.452020 #77324]  INFO -- : hellodebug
I, [2023-07-03T10:38:08.061625 #77324]  INFO -- : hellodebug
hello
Your (awesome) tool does this on-demand but not in realtime with tail.
I might be able to work around the "no fractional time" limitation by
looking for a time where "time > [previous time]" and using grep to filter
from a specific time forward. I'll let you know how things go and if I find
a solution that works, happy to share it with other users.
Thanks,
Jack
On Mon, Jul 3, 2023 at 1:44 AM James Thomas Moon @.***>
wrote:

tl;dr please describe the scenario that motivated this request.
Now that I've thought about this, I recall I decided to never support such
a scenario, real-time following log files like tail -f, because this
specific scenario doesn't make any sense. If log files are being followed
in real-time then just print log messages as they arrive using tail -f.
There may be an unpredictable delay between log message generation and
delivery to some logging system endpoint, but that delay should be small
enough to ignore. So I don't understand how s4 could help here.
To consider this another way, if log files are receiving log messages at
nearly the same real time but with wildly different datetimestamps, so
widly different that so you need s4 to resort them by datetimestamp, then
something is wrong with that logging system.
So I'm unable to imagine your scenario that motivated this request. Could
you please describe it in detail?
—
Reply to this email directly, view it on GitHub
https://github.com/jtmoon79/super-speedy-syslog-searcher/issues/142#issuecomment-1617395410,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AACCRUZZ3Z63YOWTB2VDNKLXOJL5FANCNFSM6AAAAAAZP5AT6Q
.
You are receiving this because you authored the thread.Message ID:
@.***>

The issue with tail -f is that it doesn't merge the logs.

Would multitail with --mergeall do what you need?
$ multitail --mergeall -n 0 -ts --follow-all **/*.log

@jkustan did that recommendation ☝  work for you?

I ended up writing a neat little rake task (since I'm better at ruby than shell scripting, works great with one caveat.
task :tail, [:grep] => :environment do |t, args|
  ARGV.each { |a| task a.to_sym do ; end }

  first = true
  grep = ARGV[1]
  time = nil

  while true do
    command = "s4 -nw -c never /app/log/current/ -a="
    command += first ? "-5s": time
    command += " | grep #{grep}" if grep.present?

    tail = `#{command}`
    last_line = tail.split("\n").last

    # each line looks like this: production.log:I, [2023-07-17T04:14:02.139918 #62]  INFO -- : Completed 200 OK in 105ms (Views: 0.4ms | ActiveRecord: 14.8ms | Allocations: 22998)
    time = last_line.split(",")[1].strip.match(/\[(.*)\]/)[1].split(" ").first[0..-4]
    # this will pull out the timestamp, in this case "2023-07-17T04:14:02.139918" Note the 6 decimal places for time
    puts tail
    first = false
  end
end

Caveat is that the fractional time change seems to only work for 3 decimal places, and since we get sometimes hundreds per second, the log is not continuous. Could you adjust the last fix to allow for 6 decimal places? Then this will work great.
Other caveat is that since it's a rake task it is slow to load, maybe at some point I (or someone else) will convert this to a shell script and it will run without the rails load tax.
Thanks,
Jack

I'm still not sure why multitail does not fit your needs. But hey, if s4 is helping out then great! 😃
Version 0.6.68 has been released which will parse 6-digit fractional seconds in the -a and -b arguments.

Thank you!! Just what we needed, and I can use unix find command to limit
to specific files. All good now --
On Sat, Jul 22, 2023 at 5:14 PM James Thomas Moon @.***>
wrote:

Closed #142
https://github.com/jtmoon79/super-speedy-syslog-searcher/issues/142 as
completed.
—
Reply to this email directly, view it on GitHub
https://github.com/jtmoon79/super-speedy-syslog-searcher/issues/142#event-9891715970,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AACCRU7NXFLXYL362LVYLDLXRQ7BRANCNFSM6AAAAAAZP5AT6Q
.
You are receiving this because you were mentioned.Message ID:
<jtmoon79/super-speedy-syslog-searcher/issue/142/issue_event/9891715970@
github.com>


FDP installation failure

Hello,
on different devices I'm following this part of the guide.
After starting the installation with the command bash ./run-me-to-install.sh, on the last step, the installation fails showing the following warnings and errors:
Step 4/5 : RUN pip install -r  /usr/src/script/requirements.txt  ---> Running in 40f609aaa20b WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7fa183dffdc0>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution')': /simple/requests/ WARNING: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7fa183e22190>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution')': /simple/requests/ WARNING: Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7fa183e22130>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution')': /simple/requests/ WARNING: Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7fa183e22610>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution')': /simple/requests/ WARNING: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7fa183e22430>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution')': /simple/requests/ ERROR: Could not find a version that satisfies the requirement requests (from versions: none) ERROR: No matching distribution found for requests ERROR: Service 'graph_db_repo_manager' failed to build : The command '/bin/sh -c pip install -r  /usr/src/script/requirements.txt' returned a non-zero code: 1
Thanks for the help solving this issue.
As agreed during the last meeting I'm tagging @ericprud @andrawaag @HaddadTala

Hi @markwilkinson , I tried to shut down the VM but unfortunately I still get the same error

I suspect that the installed packages or python modules differ in these two VMs. In particular the pip-related stuff. It sounds to me like neither of you have manually pip-installed stuff so the seed problem would likely be visible in the respective Debian package lists so maybe the next step involves dpkg -l | grep ^ii (my clumsy way of finding installed packages), sort and diff.

What's odd is that they are experiencing exactly the same problem on two different machines, but nobody else has this problem.
I'm sure it's a network  issue.

tx @markwilkinson , what was the issue?

I never got a final response...


set uploaded video length limit

After setup the carrier-wave video, i noticed that after upload the video the gem has a after_transcode: :set_success callback. that seems possible to configure.
I would like to know if by carrierwave is possible to set the video lenght after or before the transcoding by carrierwave.
Because in the docs seems that don't have mention to that.

Would be a great feature to have. The cost of uploading video is so high, that its necessary.


Add CLI resolver

If Tailscale's unavailable (e.g. you're on the wrong tailnet), it'd be nice as a backup to be easily expand go links from the backup JSON file, using the same templating.
Like:
$ go run github.com/tailscale/golink --resolve-from-backup=/path/to/backup.json go/meet/bar
http://meet.google.com/lookup/bar

cc @willnorris

ooh, cool.  yeah, I like that.


[ci skip] adding user @amotl

Hi! This is the friendly automated conda-forge-webservice.
I've added user @amotl as instructed in #49.
Merge this PR to add the user. Please do not rerender this PR or change it in any way. It has [ci skip] in the commit message to avoid pushing a new build and so the build configuration in the feedstock should not be changed.
Please contact conda-forge/core to have this PR merged, if the maintainer is unresponsive.
Fixes #49

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.


Error Updater.dll

Process Hacker version 3.0.4554. I want to remove this plugin, not disable it.
I disabled this plugin in the settings:

Then I deleted Updater.dll in the plugins folder:

Now, after launching Process Hacker, the following window appears:

How to get rid of this? In previous versions of 2.xx, I remember, it was possible to simply delete Updater.dll and there were no warnings. Maybe in a file ProcessHacker.exe do I need to fix something with a HEX editor?

I am unable to reproduce this. I followed your steps and was able to disable the plugin, delete the file, and load PH without issue.

Here is a video of this error:
https://user-images.githubusercontent.com/38177890/154214909-1a318917-0a5d-406a-aca6-c70cfb17490b.mp4


avoid motion if reduced motion is on in parent-child layout

motion styles should be wrapped in @media (prefers-reduced-motion: no-preference) in ParentChildLayout

Taking off label before motion design decision is made


docs(project): make the project description cooler

😎

I don't know if we should remove "dashboards" and simplify the description. Whachu y'all think?


rename .number() method

Rename .number() method to .toString() as it better describes what method is doing as it actually returns a string representation of the number.

Codecov Report

Merging #3 (d94f755) into main (903c6f4) will not change coverage.
The diff coverage is 100.00%.

@@            Coverage Diff            @@
##              main        #3   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files            4         4
  Lines           67        67
  Branches        15        15
=========================================
  Hits            67        67

Impacted Files
Coverage Δ

src/radix.ts
100.00% <100.00%> (ø)

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 903c6f4...d94f755. Read the comment docs.


Double-tap to zoom

📝 Describe the Bug
Hi, thank you for your effort to make such a wonderful library! I really appreciate it!
But I am facing a bug... When I double tap to zoom-in, the content becomes invisible. Only when I swipe it becomes visible.
📖 Library Version

2.1.1

🖼 Screenshots/Videos
Uploading doc_2024-04-18_03-26-50.mp4…
📱 Smartphone Info:

Redmi note 8
OS: Android 11
Library Version: 2.1.1

Same issue, btw, when you double tap in "PDF in view" it zooms top left corner.

Same issue with API 30 Emulator, using Compose one to load PDF from URL

Hello there, I have the same issue. Did anyone has a work-around?

can this be reopened?

@VEZE @wiryadev @LuongTruong I've fixed the issue in this PR. Seemingly it was a minor fix. 🙂?
After applying the fix
https://github.com/user-attachments/assets/7bd4496b-c8d5-4240-baab-2bad7b37bba9

@VEZE @wiryadev @LuongTruong I've fixed the issue in this PR. Seemingly it was a minor fix. 🙂
After applying the fix
trimmed.mp4

thanks, figured out that we can use absolute of existing code result to fix that,

I've fixed this issue and add zoom animation in #164.

https://github.com/user-attachments/assets/153fecb0-74c4-4c06-b3cd-a14fb7ee9ab1


File store

Reimplement Binders as vanilla Java IO library calls.

 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.You have signed the CLA already but the status is still pending? Let us recheck it.

Answers #141


Set default node rental price to maximum

Return the Human price for non-validated identities.

A new pull request has been opened


The application is great, can you add an option to select affiliate products?

The application is great, can you add an option to select affiliate products?
Like this

thanks

This is not currently something planned. The code is open source so you can always submit a pr for review.


[Feature request] add external binding callback (TZ-142)

Hello!
I am working with a system in which the binding between 2 devices is established from a third device, to configure the reports of this binding I would need a callback that is called when a binding is done from a third party.
I take this opportunity to see if it is possible to configure the reports before performing the binding, that is, before knowing the destination of the report. One of the parameters required by the report configuration structure is the destination address that I did not have before the binding (since the binding is done from a third device). If the rest of the report parameters are configured, when binding is done the destination address configuration is automatically edited? Because if I don't configure the report and do the binding, the reports are sent with some default configuration
Thanks

@diazmanuel Let me understand your question clearly.
The first question is that you need a callback for the 2 devices when third device binding is done?
Second, you'd like to see configure report device before binding has done?

Because if I don't configure the report and do the binding, the reports are sent with some default configuration

If you only do binding to a report attribute,yes, there is a default configure report setting.

@likunqiao097304
For the first one yes, but it is for 1 device, for example in my case I have 1 gateway, 1 switch and 1 thermostat, so I configure the link for the thermostat to report to the switch, and this binding is only sent to the one that generates the report ( the thermostat), it is within the thermostat that I need to be able to register a callback that notifies me of this new binding in order to configure the reports and other things.
As for the second, it is actually related to the first, since I don't have a callback of a binding that is configured from a third party, I have no way to configure the reports of said binding since I don't have the address of the device to which I have to report. In the examples, the bindings are always done from the same device, so the destination address of the report is already available.

hello @likunqiao097304 will you add this feature? if yes may i ask when it will be ready?

@diazmanuel Based on our esp-zigbee-sdk, I tried to reproduce your setup. please take a look the  logs: esp_zigbee_bind.zip
Setup decription:

ZC

aa:aa:aa:aa:aa:aa:aa:aa
doesn't have clusters.

ZR (light)

11:11:11:11:11:11:11:11
joins to ZC
clusters list: Identify, Basic, Groups, Scenes, On_off (server).

ZED (swtich)

22:22:22:22:22:22:22:22
joins to ZR
clusters list : Identify, Basic, Groups, Scenes,  On_off(client)

ZC configures:

ZC send bind req to ZR (light), and the bind between ZR (source) and ZED (destination) for the on_off cluster;
ZC send config_report to ZR (light), and config the report on_off attribute to ZED(switch). THe config report direction field is 0x00, so the report attribute to each destination as resolved by the bindings, so you do not need a register a callback that notifies you of this new binding in order to configure the reports.

hi @kelin6 thanks for the answer
I understand that the solution you propose is that the same coordinator sends the configuration after sending the binding, using the same destination and source as the binding request. I will try to implement this solution, anyway it is very complex to add the callback that I proposed?
I take this opportunity to see if there is any way to modify the default report configuration (minimum delta to make the report and the maximum and minimum time parameters)

@diazmanuel The suggestion that you proposed to add a callback is not complex, but I think the callback is not  conventional, so if you want to do this callback, it need catch all the APS (Application Support Sublayer) data packets from zigbee stack and also this callback must not process packets in standard ZB profiles. Anyway, this callback is not routine.

@diazmanuel Closing the issue, let us know if any follow up quesiton.


hrtime(): $as_number is optional

$as_number was always optional, see https://3v4l.org/uK5ro and https://www.php.net/manual/en/function.hrtime.php

Hm, that's interesting. ReflectionFunction::isOptional gives another result https://3v4l.org/ekJNn

https://3v4l.org/576CC

Cannot determine default value for internal functions

There always was a default value, but since PHP 8 it is possible to check it.
Check changelog of getDefaultValue

@mabar Ok! Let's remove PhpStormStubsElementAvailable attributes in the signature and leave only bool $as_number = false then

@mabar Thank you for the contribution!


Buttons to have focus event

Describe the feature in detail (code, mocks, or screenshots encouraged)
Html buttons have focus event fires when an element has received focus. Currently one is not able to listen to on:focus event on a button.
example of on:focus
<button on:focus={handleButtonFocused}>...</button> or  event forward the focus event <button on:focus>...</button>
What type of pull request would this be?
Enhancement
Provide relevant links or additional information.
component concerned: https://www.bits-ui.com/docs/components/button
example of focus event in svelte: https://svelte.dev/repl/dbeabf42636545b3a8dc6ebe84c2d98c?version=3.17.3

If someone wants to add this to the current version of Bits I'll more than happy merge / release.

Closing as fixed in bits-ui@next


Use jinja templates containing .rst for dodo diagnose

The diagnose command should fill a dictionary with diagnose information, and render the jinja template to produce the .rst files that comprise the output

Done


Inconsistency in Kernel memory address

Hey! This is likely an error on my part but after digging for a while I think I should report it just in case.
I have been following your os blog. I set up my own mechanism to determine the start and end of the Kernel but it doesn't line up with the values from this crate. I set up my linker.ld script as follows:
ENTRY(_start)

SECTIONS
{
	. = 1M;

	KERNEL_START = .;

        /* All sections */

	KERNEL_END = .;
}

And then in my rust kernel:
enum Void {}

extern "C" {
    static KERNEL_START: Void;
    static KERNEL_END: Void;
}

pub fn kernel_memory_start() -> u64 {
    &KERNEL_START as *const _ as u64
}

pub fn kernel_memory_end() -> u64 {
    &KERNEL_END as *const _ as u64
}

The values I get:
Kernel start: 1048576
Kernel end: 1114112
The values from this crate:
Kernel start: 1048576
Kernel end: 1211936
From my limited understanding there is no reason why these should not be the same? I'm also unsure as to why my kernel doesn't start at 1M but I'm overlooking that for now :)

First guess: 1048576 is 1MiB, it's just in decimal instead of hex. And the different end values are due to debug sections. The linker appends all remaining sections at the very end. So there might be some sections behind your kernel end symbol.
I'll take a closer look tomorrow.

First guess: 1048576 is 1MiB, it's just in decimal instead of hex.

Hah, of course! Thanks.

The linker appends all remaining sections at the very end.

That sounds pretty reasonable. Thanks for taking the time to respond.

You could try to insert a wildcard section just before your KERNEL_END symbol:
.other :
{
  *(*)
}

So all remaining input section go into the .other output section. Now both kernel end addresses should be equal.
(If not, you could check the ELF sections through objdump -h build/kernel-x86_64.bin in order to see which value is correct.)

I added the other tag and they got closer:
Mine: 0x100000 - 0x123a4a
Multiboot2: 0x100000 - 0x1266b0
And the elf headers dump:
Idx Name          Size         VMA                           LMA                        File off       Algn
  0 .rodata       00002000<PHONE_NUMBER>100000<PHONE_NUMBER>100000  00001000  2**4
                        CONTENTS, ALLOC, LOAD, READONLY, DATA
  1 .text           00008000<PHONE_NUMBER>102000<PHONE_NUMBER>102000  00003000  2**4
                       CONTENTS, ALLOC, LOAD, READONLY, CODE
  2 .data          00001000<PHONE_NUMBER>10a000<PHONE_NUMBER>10a000  0000b000  2**3
                       CONTENTS, ALLOC, LOAD, DATA
  3 .bss           00004000<PHONE_NUMBER>10b000<PHONE_NUMBER>10b000  0000c000   2**12
                       ALLOC
  4 .other        00014a4a<PHONE_NUMBER>10f000<PHONE_NUMBER>10f000    0000c000   2**4
                  CONTENTS, ALLOC, LOAD, CODE

Sadly I'm not sure how to confirm from these headers which values are correct. Adding the File offset and size of the .other section gives me a number different to both the above (0x20a4a). Perhaps you can confirm?
Sorry that this is turning into debugging my kernel rather than confirming the existence of a bug!

Your KERNEL_END symbol seems to be correct. The other section has a virtual memory offset of 0x10f0000 and a size of 0x14a4a, which equals 0x123a4a.
I'm not quite sure why the multiboot2 are different. Could you post your multiboot2 code too?

Ah ok, as you can tell I'm still figuring out how to read all these various formats..
Here is my code with multiboot2:
	let boot_info = unsafe{ multiboot2::load(multiboot_info_address) };

	let elf_sections_tag = boot_info.elf_sections_tag()
    	.expect("Elf-sections tag required");
	let kernel_start = elf_sections_tag.sections().map(|s| s.addr)
	    .min().unwrap();
	let kernel_end = elf_sections_tag.sections().map(|s| s.addr + s.size)
	    .max().unwrap();

	println!("Start: 0x{0:x}\nEnd: 0x{1:x}", kernel_start, kernel_end);

Sorry for the long delay!
I think I found a solution: Try to change the other section to:
  .other : {
    *(.debug*)
  }

So now only a debug section wildcard instead of the full *(*) wildcard. This fixes the problem for me, but I don't know why :D.
Alternatively you could filter out the debug sections in your multiboot code, since they're not loaded anyway:
    let kernel_start = elf_sections_tag.sections()
        .filter(|s| s.is_allocated()) // new
        .map(|s| s.addr)
        .min()
        .unwrap();
    let kernel_end = elf_sections_tag.sections()
        .filter(|s| s.is_allocated()) // new
        .map(|s| s.addr + s.size)
        .max()
        .unwrap();

This filters out all sections that don't have the ALLOC flag (visible in the elf headers dump).

Sorry for the long delay!

No problem - thank you for getting back to me with a potential solution!
I'll try this out later this week and let you know how it goes. Thanks again!

Any news on this, @AtheMathmo ?

Sorry for not getting back to you on this.
I just tried to run this but I have some issues on my end. For some reason I can no longer compile the OS - I guess something on the newer nightlies broke it? I get the following error when trying to link:
undefined reference to '_Unwind_Resume'
This is with both your suggested change and my previous linker file (which worked before).
If you know what this error is and how to fix it I'll go ahead and try to confirm that this fixes my issue. Otherwise I'm afraid I don't have the time to figure out and fix the issue :(.
Thank you for taking so much time to help me resolve this! Feel free to close this out if the Unwind_Resume error is as mysterious to you as me.

Ah that did the trick, thanks!
And also with the modified .other section the two do indeed agree! Sorry for the delay but thank you for helping me figure this out!

Great! So I think we can close this as resolved. Thanks for reporting this and for your quick replies!


CheckForUpdate is failing, Cant reach github message is showed

Hello!
When I updated the plugin to 2.2.14 version(Mac 10.13.2) I got the following dialog:
New version of the extension (cant.reach.github)
Please check you added your bitbucket server domain to extension manifest.json

It seems like chrome can't reach github in order to check the last version of the plugin.
This request returns a undefined response in data:
window.communication.runtime.sendMessage(window.chromeExtId, {
					method: 'GET',
					action: 'xhttp',
					url: 'https://raw.githubusercontent.com/dragouf/Stash-Reviewers-Chrome-Extension/master/version'
				}, function(data) {
					if(!data) {
						data = {
							response: 'cant.reach.github'
						};
					}

But the endpoint works fine if i get this URL from chrome. It responses 2.2.14 version
How can solve it? I don't know how to add the bitbucket server to the manifest.

I'm getting this message, too.

I think this check is useless. It was used when this extension was self hosted. I will remove it.

I'm getting this message, too.

I stopped getting this message, but now I'm getting a new one related to the PR list view. I'll make a new issue around it.

Version 2.2.15 and this issue still occurs.


Add a toilet box masks a lot of map

Clicking 'add a toilet'.
toilet entry box opens
Lots of white space masking a lot of the map.
Safari,
Version 13.1.1 (136<IP_ADDRESS>.3)

Interesting observation. Perhaps the white rounded corners on the add/edit pages are misleading since, unlike the details panel, only a thin strip of the map is covered in this case.