code polish

refactor admin:

use lombok.RequiredArgsConstructor for bean Constructor and remove constructor code
introduce dto validation
cleanup some unused codes

Make sure that:

[x] You have read the contribution guidelines.
[x] You submit test cases (unit or integration tests) that back your changes.
[x] Your local test passed mvn clean install -Dmaven.javadoc.skip=true.

Codecov Report

Merging #1650 (c4d749b) into master (3a83f5d) will decrease coverage by 1.34%.
The diff coverage is 46.00%.

@@             Coverage Diff              @@
##             master    #1650      +/-   ##
============================================
- Coverage     63.33%   61.98%   -1.35%
+ Complexity     2245     2204      -41
============================================
  Files           456      456
  Lines          9560     9450     -110
  Branches        973      974       +1
============================================
- Hits           6055     5858     -197
- Misses         3016     3101      +85
- Partials        489      491       +2

Impacted Files
Coverage Δ

...che/shenyu/admin/controller/AppAuthController.java
100.00% <ø> (ø)

...enyu/admin/controller/DashboardUserController.java
100.00% <ø> (ø)

...pache/shenyu/admin/controller/IndexController.java
100.00% <ø> (ø)

...he/shenyu/admin/controller/MetaDataController.java
100.00% <ø> (ø)

...he/shenyu/admin/controller/PlatformController.java
100.00% <ø> (ø)

...ache/shenyu/admin/controller/PluginController.java
100.00% <ø> (ø)

...apache/shenyu/admin/controller/RuleController.java
100.00% <ø> (ø)

...he/shenyu/admin/controller/SelectorController.java
100.00% <ø> (ø)

.../shenyu/admin/controller/ShenyuDictController.java
100.00% <ø> (ø)

...ache/shenyu/admin/exception/ExceptionHandlers.java
30.55% <0.00%> (-42.78%)
:arrow_down:

... and 37 more

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 3a83f5d...c4d749b. Read the comment docs.


Add http/2 support to HTTPBin

This PR adds http/2 support to the HTTPBin test utility.
Note regarding semver:
This PR adds swift-nio-http2 as a dependency.
Modifications

Removed obscure initialization options for HTTPBin

channelPromise: EventLoopPromise<Channel>? = nil was only used once (in testUploadStreamingBackpressure).
connectionDelay: TimeAmount = .seconds(0) was never used
maxChannelAge: TimeAmount? = nil was never used

The initialization options ssl: Bool = false, compress: Bool = false, refusesConnections: Bool = false have moved into a Mode enum. The mode might be .http1_1(ssl: Bool, compress: Bool), .http2(compress: Bool), or .refuse
Added support for http/2 (not used in any test yet, however I verified the support with curl locally.)
channel pipeline modifications are nearly all synchronous.
the HTTPBin's request handler can be changed. This allows testing of more esoteric cases without having to create a new server every time. The default HTTPBin handler continues to use the HTTPBinHandler.

Result

Easier test utils that can be used for http/2

Follow ups

I also wanted to add a ServerQuiescingHelper to ensure that all connections are closed when the test ends. However we often seem to leak connections when we cancel tasks. This would make our CI very flaky. I hope to land this at a later point once all connection and connection pool improvements have landed (See #376).

@swift-server-bot test this please


Unneeded variable removed

Removed unneeded variable from my previous PR which I closed.

Codecov Report

Merging #30 (5b4cbf3) into master (e349c9a) will not change coverage.
The diff coverage is 100.00%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the GitHub App Integration for your organization. Read more.
@@           Coverage Diff           @@
##           master      #30   +/-   ##
=======================================
  Coverage   48.59%   48.59%
=======================================
  Files          10       10
  Lines        3015     3015
=======================================
  Hits         1465     1465
  Misses       1550     1550

Files Changed
Coverage Δ

src/value.rs
58.29% <100.00%> (ø)


Exclude any API reviews no longer affected by PR

Include API reviews affected by current commit only in the comment on GitHub whenever APIView process the request to detect API changes. This will eliminate showing links of any stale reviews that were created by previous commit.

Is this issue fixing https://github.com/Azure/azure-sdk-tools/issues/3068 ?


An old browser error happened

Describe the bug
Tell me that my browser is old
To Reproduce
Steps to reproduce the behavior:
1- Login to Ya music
2- Shows me script error, i click yes button
3- Error happens
Expected behavior
Yandex Music open
Screenshots

Desktop (please complete the following information):

OS: Windows 10
Version 19044.1387

Hi,
Please read this topic from the official README.

I haven't removed MS Edge browser from my computer but this error popped when trying to use the program.
After compiling the code myself I could start this program without any errors.

Perhaps cross-compiling is using an older version of Edge/webview

I compiled the program according to the information from the readme, now it requires a dll, as in the latest versions of webview
It seems that in the new versions they decided to fix it, but so far I haven’t really delved into it

After adding them everything works

Added fix in #11


Bucket logging: use bucket name as default prefix

@tseaver My first pull request as a test, so please feel free to look through it and scrutinize it!
Fixes #4228.

@chemelnucfin In the future, please use Closes #4228 in your commit message, so that the issue is closed when the commit is merged.
@lukesneeringer Does this commit suit you?  It doesn't answer my backward-compatibility question in #4228.

Oh, I see the concern. I think I agree that this is more of a bugfix. Am I correct in understanding that for most users, this change would be invisible, and the caveat would be if anyone was relying on two bucket names to match (which seems unlikely)?
I think I am okay with saying "this is a bugfix" but also documenting that you can send prefix='' if you wanted the old behavior. But I am also not passionate about it if you think it is unwise.

The docstring change seems reasonable, given that we want the change (I find the pattern, "let's change a default to suit my case, thereby making everybody else change to accommodate it" a bit questionable, but I'm willing to be overruled).

I am pretty hesitant to overrule you here. :-) (As in, I am probably flatly unwilling to do so.)
Is there a more-backwards-compatible change, or is the docstring recommendation the best we can do?

Also, if we make this change, is there concern that new logs would suddenly go to a new bucket? (I think there is that concern.)

@lukesneeringer The prefix is applied to the names of the blobs created by logging, not the target bucket.

The choice comes down to deciding how prevalent / important the "store logs from mutiple buckets into one bucket" usecase is, versus leaving existing / working cases alone.  Users who have that usecase can already satisfy it, by supplying an explicit prefix:  so the choice is about convenience for new users who want that, versus backward-compatibilty.

Okay, in that case, back-compat needs to win, unless we can make a compelling case that we need to follow gsutil. We should update the documentation to make it clear what to do if one is worried about bucket collision.
Sound right, @tseaver and @chemelnucfin?

For me, it depends on how users use this call.  If it's not a critical
issue for old users, it might be better to make it convenient for future
users and to standardize calls more.
I'd imagine there might be more chances of accidental collision if there
was no prefix for all new users, but if it broke things for old users,
collisions might not be that big a deal (since they might have just
prefixed with the same default name if they didn't want to use the empty
string)
But I don't know enough about the use cases to determine.  I'm only putting
my thoughts out there.  There might be some annoying bugs if they had an
empty string before and now they had a default name.
On Mon, Oct 30, 2017 at 12:54 PM, Luke Sneeringer<EMAIL_ADDRESS>wrote:

Okay, in that case, back-compat needs to win, unless we can make a
compelling case that we need to follow gsutil. We should update the
documentation to make it clear what to do if one is worried about bucket
collision.
Sound right, @tseaver https://github.com/tseaver and @chemelnucfin
https://github.com/chemelnucfin?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/GoogleCloudPlatform/google-cloud-python/pull/4253#issuecomment-340564584,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADzDDJrZVfyN-sQoVgLQHZ71fVBJZxhAks5sxilpgaJpZM4QGc7x
.

@tseaver So, if I understand correctly, new blobs will come in with a new pattern. Correct? And, if someone was using the old pattern to read stuff, they might run into issues?
In other words, say someone logs their blobs with prefix='', name='foo.bar.20171030', and we start calling them bucketname-foo.bar.20171030, all of the sudden some other thing they wrote to pull out those logs on the other end stops working, and they have to specify prefix='' to get the old behavior back.
If that is a correct understanding then yes, that's a back-compat break, and we can not do it on a GA library.


NDRS-488: Update default configs in /local/chainspec.toml

This PR updates the Highway config and adds a sanity check for the future, printing a warning if the values don't make sense.

bors r+


Error while deploying serverless package: Error: STDOUT

Hi all,
So I've been using serverless and this plugin for this past year without much issue. I had taken a bit of a break from it, and went back to a project yesterday and attempted to do a deploy and got an unexpected error.
 Error --------------------------------------------------

  Error: STDOUT:

  STDERR: Python was not found but can be installed from the Microsoft Store: https://go.microsoft.com/fwlink?linkID=2082640
      at C:\Users\schuy\Documents\data_science\Proficio\Serverless\process-v5\node_modules\serverless-python-requirements\lib\pip.js:325:13
      at Array.forEach (<anonymous>)
      at installRequirements (C:\Users\schuy\Documents\data_science\Proficio\Serverless\process-v5\node_modules\serverless-python-requirements\lib\pip.js:312:28)
      at installRequirementsIfNeeded (C:\Users\schuy\Documents\data_science\Proficio\Serverless\process-v5\node_modules\serverless-python-requirements\lib\pip.js:556:3)
      at ServerlessPythonRequirements.installAllRequirements (C:\Users\schuy\Documents\data_science\Proficio\Serverless\process-v5\node_modules\serverless-python-requirements\lib\pip.js:635:29)
      at ServerlessPythonRequirements.tryCatcher (C:\Users\schuy\Documents\data_science\Proficio\Serverless\process-v5\node_modules\bluebird\js\release\util.js:16:23)
      at Promise._settlePromiseFromHandler (C:\Users\schuy\Documents\data_science\Proficio\Serverless\process-v5\node_modules\bluebird\js\release\promise.js:547:31)
      at Promise._settlePromise (C:\Users\schuy\Documents\data_science\Proficio\Serverless\process-v5\node_modules\bluebird\js\release\promise.js:604:18)
      at Promise._settlePromise0 (C:\Users\schuy\Documents\data_science\Proficio\Serverless\process-v5\node_modules\bluebird\js\release\promise.js:649:10)
      at Promise._settlePromises (C:\Users\schuy\Documents\data_science\Proficio\Serverless\process-v5\node_modules\bluebird\js\release\promise.js:729:18)
      at _drainQueueStep (C:\Users\schuy\Documents\data_science\Proficio\Serverless\process-v5\node_modules\bluebird\js\release\async.js:93:12)
      at _drainQueue (C:\Users\schuy\Documents\data_science\Proficio\Serverless\process-v5\node_modules\bluebird\js\release\async.js:86:9)
      at Async._drainQueues (C:\Users\schuy\Documents\data_science\Proficio\Serverless\process-v5\node_modules\bluebird\js\release\async.js:102:5)
      at Immediate.Async.drainQueues [as _onImmediate] (C:\Users\schuy\Documents\data_science\Proficio\Serverless\process-v5\node_modules\bluebird\js\release\async.js:15:14)
      at processImmediate (internal/timers.js:456:21)
      at process.topLevelDomainCallback (domain.js:137:15)

I assure you, I have python installed. I believe I installed the plugin correctly too, and I'm not sure what else has changed since I used it last about 3 weeks ago or so when I didn't have any issues.
I went to serverless support first, and the technician/assistant referred me to here for assistance since he said it was an issue with the plugin.
To be fair, this is the first time I attempted to deploy this particular project, but everything prior to about 3 weeks/a month ago worked fine, so this is a bit of a surprise.
Any ideas on what's going on or how to resolve this?
Thank you,
Schuyler

Actually figured out what was going on. I had a file for python requirements (numpy, pandas, datetime), and for this project i wanted to use the SES SDK, and tried packaging email (to make use of MIMEtext but email was not a valid package), but email is not valid.
Does anyone why that is not being packaged or how to get that dependency as part of m stack?

I reported a similar issue (#563) yesterday. I have no idea about how to solve it, but I think it depends on the last update of pip.


Can you make the class public?

I want to make the class public for acces the webcam from diferents files of codes thanks

Thank you for your request and sorry for late reply.
I want to confirm.
What you request is that UsbCamera class's access modifier is currently 'internal' and change it to 'public'?
Could you tell me the reason. Are you going to make UsbCamera class to dll?
Thank you.

i mean i like to put the class in my Data.cs And make  Public class for acces the camera class from other parts of code

all thath tring to do this

i use your class to my c# webcam online server and is so good

To make UsbCamera class public, you have to make DirectShow class (in line 772) public too.
Could you try it?

oh yea it works thanks man one question how i can get the device max frame ratte?
or someshimg like

You can get max/min frame interval from Caps.MinFrameInterval and Caps.MaxFrameInterval in VideoFormat member.
The value means duration in 100-nanosecond unit. You can translate into frame rates as follows.
frame rate = 10,000,000 / frame duration.
for example, value=333333 means 30 fps.
You can change frame interval by modifying TimePerFrame value from MinFrameInterval to MaxFrameInterval in VideoFormat member, but
as long as I tested, devices all I have returns same value in MinFrameInterval and MaxFrameInterval.


Add a skeleton for the macro expansion system.

No implementation yet, just a skeleton that defines some basic data structures and the overall package structure.

Related to #180.

Coverage decreased (-0.4%) to 94.836% when pulling f11544c0688fb85c7dafce1462b97db5171a9279 on macro_basics into 8ce65a1688280413a901eab1eb8d58aa80e1fa9b on macro_system.

@jmeulemans let me know if this makes sense. I'll start filling this in tomorrow morning, assuming no objections.


chore: updated the eslint rule to disable no-restricted-syntax

Our team follows the Airbnb JavaScript style guide, and no-restricted-syntax rule recommends avoiding constructs like for..in, for..of, labeled statements, I believe that these constructs can be practical in some cases for our project. Specifically, we are comfortable using for loops when needed.
Since we’ve already ignored this rule in 15 places across our codebase, disabling it globally would simplify our ESLint configuration and eliminate the need for repetitive exclusions. This change allows us to focus on more relevant rules for our code while maintaining the flexibility to use for loops and similar constructs where appropriate and avoid adding unwanted comments.
I think it’s reasonable to disable this rule for our team.

Why was this rule off in the first place?

Why was this rule off in the first place?

The rule was turned off to make things easier for our code base. Constructs like for..in and for..of can be useful in some cases, even though the Airbnb guide discourages them. Since we’ve already ignored this rule in several places, it makes sense to turn it off globally.
This change simplifies our ESLint setup, saves time on repetitive exclusions, and lets us focus on more relevant rules for our codebase. If we find this rule beneficial in the future, we can always re-enable it.

IMO wouldn't it be simpler to keep it as is? This way, anyone coding will understand that we generally avoid using loop syntax, but we can override it when absolutely necessary.

even though the Airbnb guide discourages them.

Any idea why?

even though the Airbnb guide discourages them.

Any idea why?

The Airbnb style guide discourages constructs like for..in and for..of mainly to avoid potential issues like unintended side effects or bugs (for example, for..in can iterate over inherited properties). They also encourage using higher-level methods like map, filter, or reduce for better readability and maintainability. They added this rule in 2016.
reference https://github.com/airbnb/javascript?tab=readme-ov-file#iterators-and-generators
There are simliar discussions https://github.com/airbnb/javascript/issues/851

IMO wouldn't it be simpler to keep it as is? This way, anyone coding will understand that we generally avoid using loop syntax, but we can override it when absolutely necessary.

I see your point. Keeping it as is would indeed make the rule clear to everyone. However, if we end up repeatedly overriding the rule, it might create unnecessary clutter in the codebase. Disabling it globally could simplify things, but I understand the value in leaving it in place for clarity. We could always revisit it later if we feel the need of this rule.


New release, pretty please

Thank y'all for your hard work on this gem. It's so useful!
Some of our dev machines upgraded to libxml2 2.10, and we can't build any released gem on our local machines because of the lack of this commit: https://github.com/xml4r/libxml-ruby/commit/c52cfc6d4000cd4de1b399909424ff15a6814a17 . Would you mind releasing a new version to Rubygems?

Yes, will do!

Done.


mesa: make wayland/x11 libs dependend on eglPlatform

Description of changes
This is important because otherwise overrides to eglPlatforms do not properly change the required dependencies.
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[x] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Not a fan of this. I'd rather get rid of more of the options here. What's the use case?

The options are only required because upstream is doing them wrong. They are on by default instead of relying on the presence of the libraries.
I want to build a version of mesa which doesn't depend on xorg libraries to achieve a smaller system.


Add support for sharedGalleryImageID in azure image reference

What this PR does / why we need it:

Add support for machines based on shared gallery images

Which issue(s) this PR fixes:
Fixes #71
Special notes for your reviewer:
SharedGalleryImageID eg:- /SharedGalleries/<sharedGalleryName>/Images/<sharedGalleryImageName>/Versions/<sharedGalleryImageVersionName>
Release note:

Machine-Controller-Manager Provider-Azure now supports managing virtual machines based on shared image gallery images.

/invite @himanshu-kun

/woof

/joke

/test ?


Default rendering with newlines and ins/del/mark

After #5 and #7 were merged, I’m now thinking about the best way to style the line highlighter to make it render how it used to with full width background colors.
Previous behavior on eleventy-base-blog:

New behavior:
This is what it renders like without CSS (this is showing default styles for ins/del/mark, which are okay). I’ve added a few newlines in there just to see how #5 would look too (those were not in the previous behavior screenshot):

This is what it looks like on eleventy-base-blog after removing the ins/del/mark styles:

The display: block Problem:
When using .highlight-line { display: block; } to get full width highlights, the problem exhibits itself:

If I move the
 inside of the highlight-line elements, I get what I want with display: block;

Would it be better to move the
? Or to use CSS to hide the
 altogether when using display: block;

cc @mathiasbynens

You can see what I mean in https://github.com/11ty/eleventy-plugin-syntaxhighlight/compare/inner-br?expand=1

Hmm… E.g. foo bar
 is weird to me, since the line break isn’t really part of what you’re trying to highlight.
IMHO think CSS is the right layer to solve this.

Alright yeah, that makes sense to me. The line highlighting CSS (which is what needs display: block anyway) can package all this stuff together.


bug(ci): CI Appears to be broken

CI needs a fix for dev docs deploy as well as the coverage. Maybe this is only on next and a recent change has broken this because it dosen't affect main or dev.

Fixed in all branches


Add command to stirshaken tool for complete jwt check (with implicit http cert downloading)

Currently there's jwt-check command for checking jwt against public key, but function taking only JWT as input will also be useful.
This would download the cert during verification process, so it must basically be wrapped  stir_shaken_jwt_verify_and_check_x509_cert_path().

Added in https://github.com/signalwire/libstirshaken/pull/41


Tanks not fill more >32Mb at the chunks border.

Have found a significant bug with all tanks from addon when its located at the chunks border - they not filling more 32MB.
No any errors on logs.
Steps to reproduce:

Place any iron tank at the chunk border (i have marked it with cobblestone)
Fill with more 32MB any fluid
Unload this chunk or re-join to game and fill one more bucket.
Unload chunk or reload worn again and be perplexed happens: block shows what it fully filled, but really you cant take away more 32 MB and it Waila shows is not filled more.

After reloading world:

Product Versions
MC 1.7.10 Forge 1614.
Buildcraft 7.1.16.
IronTanks <IP_ADDRESS>
Other installed mods: industrialcraft, ironchest, NEI, codechickencore, Waila. All updated to lastest versions.

Very interesting; so you're saying if you put another tank off the border and filled it then reloaded this doesn't happen? I'm not sure why/how the chunk border is messing with the tank.
I haven't tried with the version of forge you're using either so there may be something there too.

The fact that the tank shows full when it's not is probably the real bug; reloading just reloads the item data and forge is pretty good about cleaning up junk data (like a liquid container with more than its max).

Yes, am I unable to reproduce the problem off the chunk border. And after such bug tank loses the ability to be filled - bucket anyway remains in the hand, indicators show that filling does, but after one more world reloading tank fullness goes back to 32 MB.
Tank from buildcraft all saves fine.

Oh, no... I tried to look more closely and sometimes it's happens and out of chunk bounds...
I don't understand what is happening. Some fine keep their state, and some do not. Some of them even lose their state when filled less than 32 MB. On the border chunks i lost all that I checked.

I'm unable to test right now; could be able to tonight but is it possible to roll back to forge <IP_ADDRESS>8 to see if it still happens. That's the version that IronTank was built against.
Also, any other mods loaded besides Buildcraft? Just have to ask.

I tried to test with 1448 and use only these mods:

Identical results:

I'm having the same issue, tank shows full, then when I leave and come back all tanks are at 32000.

So, I fixed #1 which feels very similar. Then I refactored a whole bunch of code and looking back I'm wondering if I re-introduced the bug on by trying to set the capacity on instantiation again https://github.com/Indemnity83/irontank/blob/master/src/main/java/com/indemnity83/irontank/tile/TileIronTank.java#L25

Getting closer ... steps to reproduce

Place a tank down, fill it exactly (48 clicks with a bucket on a gold tank)
Log out and back in
NO ISSUE
Attempt to add more fluid ... nothing happens (as expected)
Log out and back in
Tank now shows 32 / 48 buckets

I belive I have it fixed with commit 2c9bd4b. I'll leave the issue open for a bit to have people verify. Update your version to the 1.7.10-<IP_ADDRESS>-beta release here:
https://minecraft.curseforge.com/projects/iron-tanks/files/2336499


🎉 Move enum comments under the value

Move the comments to be like Graphiql
Add padding to field name, so that you can see that the comment is grouped together

I think this is easier to understand after looking at this comparison

I can do it via :first in css if you want to, but i think this is easier to read and fits more with react 👍

I would also remove the comment hash sign.

That was fast! Thanks @albinekb


when is v1.3.2 available in cocoapods

1.3.1 has a bug may create crash. The latest version of code fix it. So  #title

OK, i fix it myself，just specific the source git repo like this
pod 'PullToRefresher', :git => 'https://github.com/Yalantis/PullToRefresh.git'


Create a menu to show KA Lite logs

Summary

I created a new menu to show the KA Lite logs using LogExpet application.

Issues addressed
Fixes #455
@radinamatic Here's the windows installer to test this.

@mrpau-richard I wasn't aware this required additional .NET framework install:

It wasn't problematic to install, I'm just not sure we should require it from users...

Would this work on older versions of Windows? How about if they can't connect the device to Internet to download the .NET framework installer?
Could we try to implement the option for viewing logs without additional installation? What's wrong with plain ol' Notepad? They had that back on Win 95... 😉
@benjaoming Thoughts?

I agree with @radinamatic - we should require external software for a trivial thing such as logs. The most important part is that users are aware that they exist and can easily open them and copy-paste stuff if they need to report about bugs etc.
Also, in case of crashes, it seems like a good idea to open up the log in Notepad so it won't disappear. In case of server.log it's not so dangerous in terms of file size because the log is truncated every time KA Lite is started.

@radinamatic thanks for testing this, I've removed the external application that's required .net application and used notepad as you suggested. here's the installer for another testing.

@mrpau-richard Perfect, Notepad is back! 👍

@mrpau-richard do you need a review from @cpauya? In case not, I recommend self-merging.

@cpauya I'm done fixing all your comments.

Nice one @mrpau-richard - let's test it one more time @mrpau-eduard then you can merge away.

Ready to test again, if necessary! 👍

Hi @radinamatic you can grab the windows installer here. I built a new one for this feature so you can test it.
So far it is working on our side.

Done testing this feature with @mrpau-eugene .
Merging this PR so we can use it :)


Need function for User presence

We need to expose the backend API call to determine which users are online currently.

Updates in progress:

Subscribe to intercom 'connected' and 'disconnected' events
Update ES6 example app to render user intercom connectivity state
Update Vue example app to render user intercom connectivity state


Add examples.

At the moment actions yaml should be located in /example directory. They aren't added in repo.
So we need to add them here.
What we need:

Real actions in Docker which even may do useless things. Like: https://github.com/mbentley/docker-cowsay/blob/master/Dockerfile
Probably something that generates long stdout for terminal tests.

Actions with examples of different form schemas + ui-schema.yaml files :

https://github.com/launchrctl/launchr/pull/30/files
https://dynamic-vacherin-2452b0.netlify.app/components
https://github.com/rjsf-team/react-jsonschema-form

Group them by actions groups. foundation, integration, platform

Action schema:
https://github.com/launchrctl/launchr/blob/main/docs/actions.schema.md

3. Group them by actions groups. foundation, integration, platform  can be ignored for now. we will manage it later when homepage ideas will be onboard.
Probably rename example directory to something else?
Because they are examples in that repo https://github.com/launchrctl/launchr/tree/main/example
But here we have case when actions not examples but part of mock data.  So maybe mock-actions or src-actions


Implement regex expression matching

It would be nice to implement "Like(regex string) " criteria for regex expression matching

This is a good way, I am watching the CloverDB source code, trying to understand the logic behind it, if I can read the logic of CloverDB, I think I should contribute, do you have any reading of the source code to share it?

Hi, ASWLaunchs. Unfortunately, there is no reading of the source code, currently.
However, the code base is very small, and you only have to understand the relationship between Query and Criteria objects.
No need to understand details of the StorageEngine.
In the context of this issue, what you should do is to simply add a Like() function to the field struct returning a new Criteria with the new logic.
However, if you have questions, I could give you further explanations in private (maybe using some chat system)

Ok, I'll try to do that

Briefly, the Where functions takes a Criteria objects to do filtration on documents. A Criteria is simply a wrapper for a predicate function over a document. This is a function which takes a document and returns true whether the document matches the Criteria.
In this case, the predicate function to be implemented should return true only if the document contains the given field and it also matches the regular expression passed to Like.

Briefly, the Where functions takes a Criteria object to do filtration on documents. A Criteria is simply a wrapper for a predicate function over a document. This is a function which takes a document and returns true if and only if the document matches the Criteria. In this case, the predicate function to be implemented should return true only if the document contains the given field and it also matches the regular expression passed to Like. I hope this brief explanation can be of help

I learned, I will try to make a regex match refer to FindAll() , if there is a progress, I will inform you.


Cells with currency prefixes or thousands separators cannot be parsed in formulae

Cells like "$75,000" or "$ 75,000" cannot be parsed in a formula.  This renders formulae less useful when working with large numbers or currencies.

See https://github.com/tgrosinger/advanced-tables-obsidian/issues/76

Adding support for currency symbols would be very helpful, and seems like a somewhat small feature to implement. It would be much appreciated if it could be added


fix a regression in std.xml (2.075a)

Regression was introduced by #5380. I don't know what exactly is wrong with it. Just reverting and adding a test.

Issue number?

Issue number?

Haven't filed one.

Every regression needs a bug report

Every regression needs a bug report

There you go.


tf-trained model not working after converting to tf-lite for raspi

System information
Laptop:
Linux Ubuntu
Tensorflow 1.15.0
Raspi:
Raspberry Pi 4
tflite-runtime 2.5.0
tensorflow-estimator 1.14.0
Coral Edge TPU
Hello everybody, I am stuck at getting my trained model running on raspi. I trained ssd_mobilenet_v2_coco model from tensorflow 1 modelzoo with my own custom dataset on google cloud with this config file where I did few changes:
ssd_mobilenet_v2_coco_config.zip
After training I exported the frozen_inference_graph which worked pretty well on my laptop, so I exported the tflite graph (tflite_graph.pb and tflite_graph.pbtxt) with the following command:
python export_tflite_ssd_graph.py \  --pipeline_config_path=gs://objects1119/ssd_mobilenet_v2_coco.config \  --trained_checkpoint_prefix=gs://objects1119/model.ckpt-189879 \  --output_directory=tflite \ --add_postprocessing_op=true
after that I converted it to detect.tflite file with:
tflite_convert --graph_def_file=tflite/tflite_graph.pb  --output_file=tflite/detect.tflite  --output_format=TFLITE --input_arrays=normalized_input_image_tensor --output_arrays='TFLite_Detection_PostProcess','TFLite_Detection_PostProcess:1','TFLite_Detection_PostProcess:2','TFLite_Detection_PostProcess:3'  --inference_type=QUANTIZED_UINT8 --mean_values=128 --std_dev_values=127 --change_concat_input_ranges=false --allow_custom_ops
You can see the file here:
detect_tflite.zip
After that I converted it to edgetpu-file with this google colab: https://colab.research.google.com/drive/1o6cNNNgGhoT7_DR4jhpMKpq3mZZ6Of4N?usp=sharing
while using the EdjeElectronics Tutorial:
https://github.com/EdjeElectronics/TensorFlow-Lite-Object-Detection-on-Android-and-Raspberry-Pi/blob/master/Raspberry_Pi_Guide.md
everything worked without errors and I gut this file:
detect_edgetpu.zip
But when I finally try to run it on the raspi with this file
TFLite_detection_webcam.zip
I am always facing the same output, no matter what input. There is always Class Zero predicted on the same areas of the image with prediction of 50%. What am I doing wrong? Is it because of the changed input shapes in the config file for training? In my case it would be really complicated to train again so I try to avoid this if its possible.
Thank you very much in advance.

Are there any suggestions or do you need more information about the issue?

Hi There,
We are checking to see if you still need help on this, as you are using an older version of tensorflow which is officially considered end of life . We recommend that you upgrade to the latest 2.x version and let us know if the issue still persists in newer versions. Please open a new issue for any help you need against 2.x, and we will get you the right help.
This issue will be closed automatically 7 days from now. If you still need help with this issue, please provide us with more information.


Add xcode as part of install if possible?

Probably not possible since Xcode is downloaded from the App Store.


:monocle_face: SSW People | Outdated content | Anton Vojko...

I believe Anton left SSW? I remember being at the farewell at the Oaks :-D

Hi @tomek-i
Can you please send this as an email task to @camillars?
Thanks!

Done!
cc'ed you in 📧 SSW Rewards | Outdated content - Anton Vojko...

Completed, and can be closed.


Adding compilers

There is an issue with windows 10 that forces users to use an SDK compiler that does not appear to be working with MATLAB.
Investigate which compiler windows 10 is using. Troubleshoot why it doesn't work and find a work around.
Additionally, investigate alternate compilers that may be used (gnu compiler possibly). This would allow users to simply specify the alternate compiler when using Windows 10.

Looked into using alternate compilers and with Matlab v 2015SP1 and Windows 7, the gnumex compiler worked just fine. Though a statement about it will appear in the User's manual.


Update sample team names.

Let's update the team names to be aws specific. I propose building names....Kumo, Blackfoot, Doppler. Once this is done, we will need to update the app of apps repo + sample repo to reflect.

Why would you do that? Names are aligned with AWS terminology already, for example, project Paris (EKS-D) was named after T. Paris from Voyager. Kumo and other suggested names are less relevant for OSS community and customers.
As long as we adhere to a convention on naming, I see no issue spending time changing it. BTW, another franchise would also work if there is a preference, e.g if you are more into Dragon Ball Z or Naruto :)


Cuboid tag

<EMAIL_ADDRESS>gives off http://mcmonkey.org/paste/35165

What exactly does cu@graveyard represent?

graveyard: -50,70,5,Tristram|-6,76,39,Tristram
Yes, there are a few old/non-used npcs inside non-loaded worlds - should they be deleted?

Definitely delete or move those, they're probably the source of the error, I think.

Deleted unused NPCs, got the same result http://mcmonkey.org/paste/35301

You somehow still have NPCs with null locations :/

My apologies, two fuckers slipped away. Thanks for help.


What about translating the docs?

The app center documentation is pretty straightforward and clear in all steps and it's helping me a lot. But what about supporting other languages?
I don't know a lot about DocFX internationalization system and if there is a way to integrate different languages in one DocFX site like it was said in this comment.

@vitorverasm we haven't translated App Center into any other languages, so once we do that the docs will immediately follow.


Fixed wrong library version on Readme file.

Hi,
I changed library version on Readme file from "1.0" to "1.0.0" because with "1.0" Gradle sync fails.

@devilmac Thanks!


Upsampling fails with Atrous Convolution

It seems Upsampling2D loses track of image size when it comes after a dilated convolution. The only difference between these two models is the atrous_rate. (I'm using tensorflow 0.11, but the error occurs for both dim_orderings={'th','tf'})
K.set_image_dim_ordering('th')

working_model = Sequential()
working_model.add(ZeroPadding2D((1,1),input_shape=(3,224,224)))
working_model.add(AtrousConvolution2D(64,3,3, activation='relu',atrous_rate=(1,1)))
working_model.add(UpSampling2D(size=(2,2)))
working_model.summary()

bug_model = Sequential()
bug_model.add(ZeroPadding2D((1,1),input_shape=(3,224,224)))
bug_model.add(AtrousConvolution2D(64,3,3, activation='relu',atrous_rate=(2,2)))
bug_model.summary()
bug_model.add(UpSampling2D(size=(2,2)))

Error: notice how the summaries output the correct dimensions for the convolution even though tf shape output does not for the 2nd model.
[<tf.Tensor 'zeropadding2d_input_1:0' shape=(?, 3, 224, 224) dtype=float32>]
[<tf.Tensor 'Pad:0' shape=(?, 3, 226, 226) dtype=float32>]
[<tf.Tensor 'Relu:0' shape=(?, 64, 224, 224) dtype=float32>]

Layer (type)                     Output Shape          Param #     Connected to
==========================================================================================
zeropadding2d_1 (ZeroPadding2D)  (None, 3, 226, 226)   0           zeropadding2d_input_1[0
__________________________________________________________________________________________
atrousconvolution2d_1 (AtrousConv(None, 64, 224, 224)  1792        zeropadding2d_1[0][0]
__________________________________________________________________________________________
upsampling2d_1 (UpSampling2D)    (None, 64, 448, 448)  0           atrousconvolution2d_1[0
==========================================================================================
Total params: 1792

[<tf.Tensor 'zeropadding2d_input_2:0' shape=(?, 3, 224, 224) dtype=float32>]
[<tf.Tensor 'Pad_1:0' shape=(?, 3, 226, 226) dtype=float32>]
[<tf.Tensor 'Relu_1:0' shape=(?, 64, ?, ?) dtype=float32>]

Layer (type)                     Output Shape          Param #     Connected to
==========================================================================================
zeropadding2d_2 (ZeroPadding2D)  (None, 3, 226, 226)   0           zeropadding2d_input_2[0
__________________________________________________________________________________________
atrousconvolution2d_2 (AtrousConv(None, 64, 222, 222)  1792        zeropadding2d_2[0][0]
==========================================================================================
Total params: 1792

Traceback (most recent call last):
    bug_model.add(UpSampling2D(size=(2,2)))
File "../keras/models.py", line 308, in add
    output_tensor = layer(self.outputs[0])
File "../keras/engine/topology.py", line 514, in __call__
    self.add_inbound_node(inbound_layers, node_indices, tensor_indices)
File "../keras/engine/topology.py", line 572, in add_inbound_node
    Node.create_node(self, inbound_layers, node_indices, tensor_indices)
File "../keras/layers/convolutional.py", line 1336, in call
    self.dim_ordering)
File "../keras/backend/tensorflow_backend.py", line 757, in resize_images
    X.set_shape((None, original_shape[1] * height_factor, original_shape[2] * width_factor, None))
TypeError: unsupported operand type(s) for *: 'NoneType' and 'int'`

where I modified keras.engine.topology.create_node to print out the tensor shapes above:
for inbound_layer, node_index, tensor_index in zip(inbound_layers, node_indices, t
            inbound_node = inbound_layer.inbound_nodes[node_index]
            input_tensors.append(inbound_node.output_tensors[tensor_index])
            input_masks.append(inbound_node.output_masks[tensor_index])
            input_shapes.append(inbound_node.output_shapes[tensor_index])

        assert len(input_shapes) == len(input_tensors) == len(input_masks)
+       print (input_tensors)

I can confirm this bug. It seems the tests are not catching the issue either.
conv2d in tensorflow_backend.py:

    if filter_dilation == (1, 1):
        strides = (1,) + strides + (1,)
        x = tf.nn.conv2d(x, kernel, strides, padding=padding)
    else:
        assert filter_dilation[0] == filter_dilation[1]
        assert strides == (1, 1), 'Invalid strides for dilated convolution'
        x = tf.nn.atrous_conv2d(x, kernel, filter_dilation[0], padding=padding)

test_convolutional.py:
        for subsample in [(1, 1), (2, 2)]:
            for atrous_rate in [(1, 1), (2, 2)]:
                if border_mode == 'same' and subsample != (1, 1):
                    continue
                if subsample != (1, 1) and atrous_rate != (1, 1):
                    continue

Dimension test:
# tu pre  shape:  (1, 12, 12, 304) nb_filter:  304
x = AtrousConvolution2D(nb_filters, 3, 3, activation="relu",bias=False, atrous_rate=(2,2))(ip)
# tu post shape:  (1, 8, 8, 304)

± git rev-parse HEAD
4fa7e5d454dd4f3f33f1d756a2a8659f2e789141

@fchollet @patyork
it seems the problem in AtrousConvolution2D may be in calculating the output size in convolutional.py

    def get_output_shape_for(self, input_shape):
        if self.dim_ordering == 'th':
            rows = input_shape[2]
            cols = input_shape[3]
        elif self.dim_ordering == 'tf':
            rows = input_shape[1]
            cols = input_shape[2]
        else:
            raise ValueError('Invalid dim_ordering:', self.dim_ordering)

        rows = conv_output_length(rows, self.nb_row, self.border_mode,
                                  self.subsample[0],
                                  dilation=self.atrous_rate[0])
        cols = conv_output_length(cols, self.nb_col, self.border_mode,
                                  self.subsample[1],
                                  dilation=self.atrous_rate[1])

which makes a call in np_utils.py where the calculation of output_length doesn't look right.

def conv_output_length(input_length, filter_size,
                       border_mode, stride, dilation=1):
    """Determines output length of a convolution given input length.
    # Arguments
        input_length: integer.
        filter_size: integer.
        border_mode: one of "same", "valid", "full".
        stride: integer.
        dilation: dilation rate, integer.
    # Returns
        The output length (integer).
    """
    if input_length is None:
        return None
    assert border_mode in {'same', 'valid', 'full'}
    dilated_filter_size = filter_size + (filter_size - 1) * (dilation - 1)
    if border_mode == 'same':
        output_length = input_length
    elif border_mode == 'valid':
        output_length = input_length - dilated_filter_size + 1
    elif border_mode == 'full':
        output_length = input_length + dilated_filter_size - 1
    return (output_length + stride - 1) // stride

tf backend also fails to correctly support border_mode='same' which the backend tf atrous convolution call explicitly supports

The output dimensions should be calculated as follows from the tf documentation:

effective height :filter_height + (filter_height - 1) * (rate - 1)
effective width: filter_width + (filter_width - 1) * (rate - 1)

I believe conv_output_length should not be using filter_size, input_length and dilation in the way it is calculated now, particularly for same, and I believe for valid as well. I'm not sure about full.

hmm... it seems that the atrous convolution only modifies the filter size, to upsample atrous_conv2d_transpose is required, so I believe @longlouisly you are looking for that? If so I guess that's a new layer that must be added.
Nonetheless, 'same' for AtrousConvolution2D() remains incorrect because the output tensor width and height dimensions drop by a factor of two when they should remain the same.
atrous_conv2d_test.py is where the TensofFlow unit tests of atrous conv, the transpose versions, and others are located.

same will not result in the output shape necessarily being equal to the input shape for dilated convolution:

In that case this must definitely not be correct:
    if border_mode == 'same':
        output_length = input_length

@patyork also since your note references theano, the bug I've encountered is with the tf backend, it seems @longlouisly mentions both backends in his first post.

Both Theano and TensorFlow handle the change in effective kernel size automatically, such that the border modes are processed correctly.
For example, a dilated conv of kernel shape (3,3) rate 2 is effectively a special convolution of a (5,5) kernel. The effective padding is correctly computed by the backends on the (5,5) sized kernel.
Apologies, the above formula is correct in general, however the backends simply change the calculation to one with a different kernel size and set d back to 1. I had never looked at dilated convolutions before.

@longlouisly I believe what you're really looking for is for an atrous transpose convolution, which in tensorflow is tf.nn.atrous_conv2d_transpose(value, filters, output_shape, rate, padding, name=None). So with Keras what you want is Conv2DTranspose with a dilation rate of (2,2).
https://github.com/tensorflow/tensorflow/issues/4742 contains discussion that clears some things up and may also be the source of the bug mentioned in the original post for this issue #4018.


LZMA-JS produces corrupt streams - lzma: (stdin): Compressed data is corrupt

Compressing "hi" using the advanced demo (http://lzma-js.github.io/LZMA-JS/demos/advanced_demo.html) produces the following hex:
5d 00 00 01 00 02 00 00 00 00 00 00 00 00 34 1a 5c ff ff ff ff f0 00 00 00

While decompressing this on the command line produces the word "hi", it also errors with "data is corrupt":
echo -n 5d00000100020000000000000000341a5cfffffffff0000000 | xxd -r -p | lzma -d
hilzma: (stdin): Compressed data is corrupt

I get the same issue with node.js. For example with the following test script "lzma-test.js":
const fs = require('fs');
const lzma = require('lzma');
const text = process.argv[2] || 'Hello, world!';
const compressed = lzma.compress(text + '\n');
fs.writeFileSync('test.lzma', Buffer.from(compressed));

The output is:
$ node lzma-test.js
$ lzcat test.lzma
Hello, world!
lzcat: test.lzma: Compressed data is corrupt

anyone who see that this project produces corrupt output should look here, https://lzma.pages.dev/ this is a working example of this project. If you want to compress text put it directly into a plain text file.


Flashing is back

I set the windowform to double buffering (thanks Stack Overflow!) to fix this problem but now its back. I started noticing it when I added textlist, and the shape lists to clearRenderBuffer() in Scene.cs.

This may be fixed by #13, we'll have to just wait and see

Flashing disappeared when I rewrote the renderer

This is still happening (after the renderer rewrite). Can you reopen this please?

I tested n2d with the new renderer and didn't see any flashing. It may still occur on older computers. Any ideas for fixing this, the form is already DoubleBuffered

I've just tested this on my desktop pc and it works fine. Yet when I use my laptop it flickers.

What are the specs on that laptop? Running Diagnostic Tools I get the following:
CPU Usage: ~25% of all processors (4.2 ghz, quad core)
Process Memory: 49.6 MB at peak, 31.3 after garbage collection

I'll check tomorrow. I've got more work and revision and stuff to do.

Do you think I can close this now?

Yeah.


Complete Redesign of the Contact Form component

Total Redesign of the footer component

Please add more details to your issue and use the issue template that we have. A similar issue is posted in #45

@BatoolMM  I would like to close this issue as I will not be working on it. It is a duplicate

You can close any duplicate issue @okerekechinweotito by clicking on "close with comment". Please close any duplicate issue you have!


use namespaces instead of modules in the codebase

:+1:

@mhegazy does this affect the way the Jakefile needs to patch up the API's .d.ts?

@DanielRosenwasser, no but that should be the next change.

@mhegazy one would think so, but fortunately we have bugs like #3544 to keep everything working.


"extra" help

I'm hoping to get a little "extra" help with more-video-transcoding.
Can I use --extra NAME[=VALUE] to specify detelecine? What's the syntax? Would it be
--extra --filter[detelecine]
Thanks.

@loshlee Just add --extra detelecine or -x detelecine to your command line.

Great! Thanks!

@loshlee BTW, if you do use the detelecine filter, it's also a really good idea to explicitly set the frame rate and control like this: -x detelecine -x rate=23.976 -x cfr.

@loshlee It's super easy! Just re-write the script. :trollface:
Seriously, you can convert it afterwards with ffmpeg if you really need that crappy format. Do you want the command for that?

@loshlee Ah. Well, don't bother to check. Apple hates MKV. 🤷♀
The command, BTW, really is simple: ffmpeg -i input.mkv -c copy output.mp4
Just don't have an image-based subtitle or audio format that MP4 doesn't like or it will fail.

Yeah, I'll  wait until it's .mp4 to add subtitles. I finally broke down and bought this great app called Subtitle Studio. I wrote an AppleScript for it that lets me limit YouTube subtitles to 1 line only (getting rid of repeated lines), if you ever need something like that.

@loshlee BTW, do you want to close this now? Or is there anything else I can help you with?

That's it. I'll close it.


pass OperationPreferences parameters to the cfnUpdateStackSet

Hi,
Could you please clarify how I can provide OperationPreferences inside the cfnUpdateStackSet method?
I didn't find it in the documentation.
Also in the documentation present not correct information in the cfnCreateStackSet section. This method is absent in your plugin, and example is referencing to the cfnCreateChangeSet method.
Thanks .

I will look into it and add support if necessary.


Fix  'RemoteYubikeyDevice' object has no attribute 'throttle_reset'

Description
This PR contains a fix and tests for using the remember me feature with  any device that doesn't implement throttle_increase and throttle_reset. This includes RemoteYubikeyDevice.
Motivation and Context
As noted in #699 it is very similar to #397. We should not assume every Device implements throttle_increaseandthrottle_reset`
How Has This Been Tested?
I don't own a YubiKey, so testing will rely solely on unit tests.
Screenshots (if appropriate):
Types of changes

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

Checklist:

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

Hi @ValentinS33 I was wondering if you would be able to test this PR out as you have presumably have access to a Yubi key device?

Hi @moggers87 I'd be happy to test.  I've got a couple keys.  Reviewing the linked issues above to see how to repro

Tested - works great, thank you.


How does the Live Preview works?

Is it able to sync the browser with code changes?
For example on an AngularJs app?

currently you should be open the url/file path on the browser path. for Filepath (file://whateverpath.html)
. and click on the live button(the lighting icon on the toolbar) and as you type on the editor and click save you should see the update on the browser-plus.
I am currently updating the preview-plus atom package...and browser plus ideally should be a plugin for that..This basically opens a lot of possiblities..keep watching..

I can neither see Live Button, nor any toolbar in my version of Atom. It's Atom 1.0.3 on Ubuntu 14.04 LTS.

Okay, I followed CTRL + ALT + O to open the browser. Now I don't get live preview of the file on clicking the lightning button. :confused:

you should be able to open a browser using browser-plus:open command. and you see in the toolbar

you should see the lightning button. if you opened a file/url and clicked on the lightning button you see it turn green...from there on what ever change you make on the file using the editor and clicking on save would have a live preview...
you can also check the preview-plus package(http://atom.io/packages/preview-plus) if you are looking for the hyper live(type and see preview )

First of all. When I do CTRL-T and search for browser-plus:open command, it doesn't shows up in fuzzy finder (CTRL + ALT + O brings the browser though).
Even if browser opens, it opens the homepage defined. Not the current working file.

may be the browser package is what you have..can you uninstall that package and reinstall browser-plus.
yes it brings the home page every time..you need to add the file name to the url input box as shown in the prev answer.
if you wanted to see the live preview of the file that is open...check the preview-plus package


[T3A4][W11-A1]Tang Kai Ling

Ready for review

Okay, again as I said last time, please raise a PR from a separate branch for each exercise. Handbook instructions are now updated to let you correctly do this.
@Kaiiiii Please review comments and close the PR. We are now advised to follow this protocol.

Hi sorry! Yup I didn't include a normal return statement for the normal route. Perhaps I can return true if there is no problem?


Implement the Fantasy Land Spec?

Bacon could easily be made to implement the Fantasy Land Specification (https://github.com/fantasyland/fantasy-land), which defines a number of interfaces for algebraic structures.
Here's what it would take:
Add observable.chain as a synonym for observable.flatMap
Add Bacon.empty as a synonym for Bacon.never
Add Bacon.of as a synonym for Bacon.once
Add observable.ap
Observable.ap = x -> this.combine(x, (f,x) -> f x)

To be honest, I don't know how much implementing this spec would help Bacon. On the other hand, Bacon could be instrumental in spreading adoption of Fantasy Land. Thoughts?

The problem is that they (er, @puffnfresh) say that the chain and ap methods should be consistent.

Probably the condition for deriving ap from chain.
ap(mf, ma) ≡ chain(f => map(f, ma), mf)

What still "sort-of" works for single temporal values from asynchronous computations, breaks down for temporal streams of values: chain means to merge a higher order stream, and

I think the only sane definition of ap would be based on combine.

ap and chain do no longer fit together for reactive streams.
How bad would it be to "screw that rule" and implement ap ≅ combine(f => a => f(a)) and chain ≡ flatMap ? On could still derive useful functions like liftA2 from FL.ap and FL.map etc.
It is certainly useful to have FL "light" compatibility, but is it also too dangerous?


Default docker is not correct

Subject of the issue
incorrect version of docker is installed with the open-autonomy framewoek.
We are using 6.0.0
We should be using 6.1.2
errors with;
 I (mech-py3.10) ❰tom❙~/Desktop/Fun/hackathons/mech/packages/eightballer/services/mech(git≠✱feat/wf-fixes)❱✘≻ autonomy build-image
Building image with agent: eightballer/mech:0.1.0:bafybeieylo6ev4w4p7ui7vr5lyenb2lb33mbyqr7xtq43vcihwu5ttn3a4

Traceback (most recent call last):
  File "/home/tom/.cache/pypoetry/virtualenvs/mech-4BFSVe7_-py3.10/lib/python3.10/site-packages/docker/api/client.py", line 214, in _retrieve_server_version
    return self.version(api_version=False)["ApiVersion"]
  File "/home/tom/.cache/pypoetry/virtualenvs/mech-4BFSVe7_-py3.10/lib/python3.10/site-packages/docker/api/daemon.py", line 181, in version
    return self._result(self._get(url), json=True)
  File "/home/tom/.cache/pypoetry/virtualenvs/mech-4BFSVe7_-py3.10/lib/python3.10/site-packages/docker/utils/decorators.py", line 46, in inner
    return f(self, *args, **kwargs)
  File "/home/tom/.cache/pypoetry/virtualenvs/mech-4BFSVe7_-py3.10/lib/python3.10/site-packages/docker/api/client.py", line 237, in _get
    return self.get(url, **self._set_request_timeout(kwargs))
  File "/home/tom/.cache/pypoetry/virtualenvs/mech-4BFSVe7_-py3.10/lib/python3.10/site-packages/requests/sessions.py", line 600, in get
    return self.request("GET", url, **kwargs)
  File "/home/tom/.cache/pypoetry/virtualenvs/mech-4BFSVe7_-py3.10/lib/python3.10/site-packages/requests/sessions.py", line 587, in request
    resp = self.send(prep, **send_kwargs)
  File "/home/tom/.cache/pypoetry/virtualenvs/mech-4BFSVe7_-py3.10/lib/python3.10/site-packages/requests/sessions.py", line 701, in send
    r = adapter.send(request, **kwargs)
  File "/home/tom/.cache/pypoetry/virtualenvs/mech-4BFSVe7_-py3.10/lib/python3.10/site-packages/requests/adapters.py", line 486, in send
    resp = conn.urlopen(
  File "/home/tom/.cache/pypoetry/virtualenvs/mech-4BFSVe7_-py3.10/lib/python3.10/site-packages/urllib3/connectionpool.py", line 790, in urlopen
    response = self._make_request(
  File "/home/tom/.cache/pypoetry/virtualenvs/mech-4BFSVe7_-py3.10/lib/python3.10/site-packages/urllib3/connectionpool.py", line 496, in _make_request
    conn.request(
TypeError: HTTPConnection.request() got an unexpected keyword argument 'chunked'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/tom/.cache/pypoetry/virtualenvs/mech-4BFSVe7_-py3.10/bin/autonomy", line 8, in <module>
    sys.exit(cli())
  File "/home/tom/.cache/pypoetry/virtualenvs/mech-4BFSVe7_-py3.10/lib/python3.10/site-packages/click/core.py", line 1126, in __call__
    return self.main(*args, **kwargs)
  File "/home/tom/.cache/pypoetry/virtualenvs/mech-4BFSVe7_-py3.10/lib/python3.10/site-packages/click/core.py", line 1051, in main
    rv = self.invoke(ctx)
  File "/home/tom/.cache/pypoetry/virtualenvs/mech-4BFSVe7_-py3.10/lib/python3.10/site-packages/click/core.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/tom/.cache/pypoetry/virtualenvs/mech-4BFSVe7_-py3.10/lib/python3.10/site-packages/click/core.py", line 1393, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/tom/.cache/pypoetry/virtualenvs/mech-4BFSVe7_-py3.10/lib/python3.10/site-packages/click/core.py", line 752, in invoke
    return __callback(*args, **kwargs)
  File "/home/tom/.cache/pypoetry/virtualenvs/mech-4BFSVe7_-py3.10/lib/python3.10/site-packages/autonomy/cli/build_images.py", line 69, in build_image
    _build_image(
  File "/home/tom/.cache/pypoetry/virtualenvs/mech-4BFSVe7_-py3.10/lib/python3.10/site-packages/autonomy/deploy/image.py", line 62, in build_image
    docker_client = from_env()
  File "/home/tom/.cache/pypoetry/virtualenvs/mech-4BFSVe7_-py3.10/lib/python3.10/site-packages/docker/client.py", line 96, in from_env
    return cls(
  File "/home/tom/.cache/pypoetry/virtualenvs/mech-4BFSVe7_-py3.10/lib/python3.10/site-packages/docker/client.py", line 45, in __init__
    self.api = APIClient(*args, **kwargs)
  File "/home/tom/.cache/pypoetry/virtualenvs/mech-4BFSVe7_-py3.10/lib/python3.10/site-packages/docker/api/client.py", line 197, in __init__
    self._version = self._retrieve_server_version()
  File "/home/tom/.cache/pypoetry/virtualenvs/mech-4BFSVe7_-py3.10/lib/python3.10/site-packages/docker/api/client.py", line 221, in _retrieve_server_version
    raise DockerException(
docker.errors.DockerException: Error while fetching server API version: HTTPConnection.request() got an unexpected keyword argument 'chunked'

Yet, when we upgrade docker, it works;

 I (mech-py3.10) ❰tom❙~/Desktop/Fun/hackathons/mech/packages/eightballer/services/mech(git≠✱feat/wf-fixes)❱✘≻ pip install -U docker
Requirement already satisfied: docker in /home/tom/.cache/pypoetry/virtualenvs/mech-4BFSVe7_-py3.10/lib/python3.10/site-packages (6.0.0)
Collecting docker
  Downloading docker-6.1.2-py3-none-any.whl (148 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 148.1/148.1 kB 7.4 MB/s eta 0:00:00
Requirement already satisfied: packaging>=14.0 in /home/tom/.cache/pypoetry/virtualenvs/mech-4BFSVe7_-py3.10/lib/python3.10/site-packages (from docker) (23.1)
Requirement already satisfied: websocket-client>=0.32.0 in /home/tom/.cache/pypoetry/virtualenvs/mech-4BFSVe7_-py3.10/lib/python3.10/site-packages (from docker) (0.59.0)
Requirement already satisfied: requests>=2.26.0 in /home/tom/.cache/pypoetry/virtualenvs/mech-4BFSVe7_-py3.10/lib/python3.10/site-packages (from docker) (2.30.0)
Requirement already satisfied: urllib3>=1.26.0 in /home/tom/.cache/pypoetry/virtualenvs/mech-4BFSVe7_-py3.10/lib/python3.10/site-packages (from docker) (2.0.2)
Requirement already satisfied: charset-normalizer<4,>=2 in /home/tom/.cache/pypoetry/virtualenvs/mech-4BFSVe7_-py3.10/lib/python3.10/site-packages (from requests>=2.26.0->docker) (3.1.0)
Requirement already satisfied: certifi>=2017.4.17 in /home/tom/.cache/pypoetry/virtualenvs/mech-4BFSVe7_-py3.10/lib/python3.10/site-packages (from requests>=2.26.0->docker) (2023.5.7)
Requirement already satisfied: idna<4,>=2.5 in /home/tom/.cache/pypoetry/virtualenvs/mech-4BFSVe7_-py3.10/lib/python3.10/site-packages (from requests>=2.26.0->docker) (3.4)
Requirement already satisfied: six in /home/tom/.cache/pypoetry/virtualenvs/mech-4BFSVe7_-py3.10/lib/python3.10/site-packages (from websocket-client>=0.32.0->docker) (1.16.0)
Installing collected packages: docker
  Attempting uninstall: docker
    Found existing installation: docker 6.0.0
    Uninstalling docker-6.0.0:
      Successfully uninstalled docker-6.0.0
ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
open-autonomy 0.10.4 requires docker==6.0.0, but you have docker 6.1.2 which is incompatible.
docker-compose 1.29.2 requires PyYAML<6,>=3.10, but you have pyyaml 6.0 which is incompatible.
Successfully installed docker-6.1.2

Your environment

OS: [e.g. iOS]
Python version: [e.g. 3.7.2]
Package Version [e.g. 0.1.3]
Anything else you consider helpful.

Steps to reproduce
Tell us how to reproduce this issue.
Expected behaviour
Tell us what should happen
Actual behaviour
Tell us what happens instead

I (mech-py3.10) ❰tom❙~/Desktop/Fun/hackathons/mech/packages/eightballer/services/mech(git≠✱feat/wf-fixes)❱✔≻ autonomy build-image
Building image with agent: eightballer/mech:0.1.0:bafybeieylo6ev4w4p7ui7vr5lyenb2lb33mbyqr7xtq43vcihwu5ttn3a4
[docker]Step 1/13 : ARG AUTONOMY_IMAGE_VERSION="latest"[docker]
[docker]Step 2/13 : ARG AUTONOMY_IMAGE_NAME="valory/open-autonomy"[docker]


removed extra dependencies and update linkml

testing new kgx

@justaddcoffee , the changes you may need to do in kg-covid-19 after upgrading to the final version of KGX:

setup.py
ontology_transform
merge.yaml


Kandao QooCam Evaluation

Need to evaluate the following:

[ ] - Power draw
[ ] - Depth processing pipeline
[ ] - In-air depth resolution, range, accuracy
[ ] - Built-in in-air calibration capabilities

QooCam does not meet resolution requirements


Make the Plugin Support Cloudinary Assets Sourced Via CMSs

We are looking to make the plugin seamlessly support Cloudinary assets sourced via CMSs and other sources.

Let the user configure where to find the Cloudinary data (ie. GraphQL Type) and
Let the user configure where on the type to find public id, cloud name, original height, original width and mime type.

Code this similarly to gatsby-remote-images: config docs link

@olavea I was looking to take up this one but can you explain a little bit more about the requirements of this issue?

Hey @partik03
The current solution lets you define types that should get the gatsbyImageData resolver added. However it requires the data on the type to conform to a very specific shape. The new solution should let the user of the plugin configure where on the type to find the data it needs.
The feature might easiest be explained by how the configuration should look when done. For a Cloudinary image in Sanity the gatsby-config.js of the user should look like:
module.exports = {
  plugins: [
    {
      resolve: `gatsby-transformer-cloudinary`,
      options: {
        // Add the `gatsbyImageData` resolver to `BlogPostHeroImage`
        transformTypes: [
          `BlogPostHeroImage`,
          {
            type: `SanityCloudinaryAsset`,
            cloudName: () => `example-cloud`, // Manually configure the cloud name by returning it from a function
            publicId: (data) => data.public_id, // Use the value of public_id from SanityCloudinaryAsset
            originalHeight: `height`, // Convenience alternative to the above by defining the path on SanityCloudinaryAsset where height can be found
            originalWidth: `width`,
            originalFormat: `format`
          }
        ],
        // Optional transformation option
        defaultTransformations: ['c_fill', 'g_auto', 'q_auto'],
      },
    },
    `gatsby-plugin-image`,
  ],
};

I apologize for the late reply.
Any follow up questions from you would be welcome 😺 👍


[DOC]: Enable analytics on documentation webpage

Modulus Pull Request
Description
Add script to enable analytics on documentataion webpages
Checklist

[ ] I am familiar with the Contributing Guidelines.
[ ] New or existing tests cover these changes.
[ ] The documentation is up to date with these changes.
[ ] The CHANGELOG.md is up to date with these changes.
[ ] An issue is linked to this pull request.

Dependencies

/blossom-ci

/blossom-ci

/blossom-ci


error 0xc0000135

i get that error everytime i try to run it any help???
(edit) is it becose it is running a new win xp vm?
(edit2)the download link was from here https://tcg96.github.io/trollrat
(edit3wowalotofedits)on my host pc it works buton the vm it gives me that error

i know this is late but you need to install .net 4.0 on the vm to run it @vascreeperGR


See if a clean sorts out the path prefixes

We currently have two problems:

Why don't the integration tests work with path prefixes in the way the docs say?
Why is the live site still not using the path prefixes, despite clearly being built with them?

https://www.reddit.com/r/gatsbyjs/comments/edihq5/why_is_prefixpaths_breaking_my_build_during/ suggests cleaning may help problem 2.

(Removing the git cache step would have done something similar, probably)

This didn't help, sadly. On to #334!


Hotfix for build 4223

Build 4223 failed because it tried to execute sonar analysis on non-existent PR.
This PR fixes this bug.

Codecov Report

Merging #580 into develop will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           develop    #580   +/-   ##
=======================================
  Coverage     46.1%   46.1%
=======================================
  Files          265     265
  Lines        10480   10480
  Branches      5414    5414
=======================================
  Hits          4832    4832
  Misses         676     676
  Partials      4972    4972

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 898eae1...8fc7aa9. Read the comment docs.


RATIS-1154. Add sync flag when write stream data

What changes were proposed in this pull request?
Add sync flag when write stream data
What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/RATIS-1154
How was this patch tested?
new assert

@szetszwo Thanks for review. Because CI passed, so I merge it.


Change default socket.io transports to use websocket over polling

Since we chose to support modern browsers, we should be just fine defaulting to websockets, if the browser does not support them, it will fallback to http polling.
Code already defaults to this order here: https://github.com/thelounge/lounge/blob/f577da52a39d118c9f6256101a7cd3828dcfc67d/src/server.js#L28

So, as mentioned in the IRC, I don't think we should do this. The reason it does this is so that if you can't establish websockets because of network issues, you are still connected from straight away. If you don't, you can have up to 30 seconds without a connection to the server.

Just for the record, here is the IRC discussion you guys had (I had to dig up my 600+ unread messages, thanks for mentioning you discussed about it, @YaManicKill  :-) ):

Ndushi: when you use the remember-me token to sign in, all socket.io communication seems to go via polling instead of websocket
Ndushi: this cannot be intended right?
Ndushi: can someone else verify this?
 I'm using it on a site with 10k users and never had any issues since 1.0
xPaw: socket.io uses polling by default I think, however, since we only support modern browsers, do we need it?
Ndushi: polling or socket.io?
xPaw: socket.io uses polling
xPaw: then upgrades to websockets
Ndushi: yeah, I meant: what do we not need - polling or socket.io?
xPaw: Ndushi, polling is part of socket.io...
Ndushi: yeah, ok you meant just disable it
xPaw: no I meant change order, see pull requets
Ndushi: everything cleared up when I read the PR :P
YaManicKill: xPaw: yeah, that's so that there isn't an issue if networks don't support websockets
YaManicKill: So that you always have a connection.,
YaManicKill: It's something they upgraded to in 1.0
xPaw: in our case fallback is better, imo
YaManicKill: I disagree. If someone can't connect to websockets, they can have up to 30 seconds without any connection before it falls back to polling.
xPaw: if we dont change it, we need to change the default in code and add a faq entry for it
Ndushi: could you inspect it and check it out?
YaManicKill: xPaw: why? Why do we need to change it? It's not causing any problems.
xPaw: YaManicKill, change the default in code I mean
YaManicKill: Ah right, gotcha.

Also, another FYI, this feature/setting was added by https://github.com/erming/shout/pull/267.
First, I agree that whatever the choice is, defaults and fallbacks should match.
That being said, there are a few key questions to answer here:

What are the effects of using polling-first? Can that prevent to use websocket in some configurations? When does one get used vs the other in this order?
What are the consequences of using websocket-first? Can that entirely break in some configurations? Does that gracefully degrade? Are there advantages to do so?
... Do we need such configuration altogether? If targeting modern systems (web servers, Node versions, browser versions, ...), does that even make sense to fallback to polling? Would that provide any advantages to such modern environments to remove it?
Whether removing polling or setting/changing transport order, what systems are affected? Specifically, which versions of Nginx, Apache, Node.js, Chrome, Firefox, IE/Edge, Android, iOS (others in a reasonable way?) do and do not support websockets? How would they be affected by removing polling or setting a specific order: entirely broken, slower in general, slower on every first connection, ... ?

What are the effects of using polling-first? Can that prevent to use websocket in some configurations? When does one get used vs the other in this order?

No, polling doesn't stop websockets happening, it just means that the first few requests are a bit slower than if they were over websockets. But because websockets takes more setup, they still happen quicker, and once websockets is set-up, it switches over to that

What are the consequences of using websocket-first? Can that entirely break in some configurations? Does that gracefully degrade? Are there advantages to do so?

There is 1 case that this can fail completely, which I have come across before.
If websockets are blocked on the network level (on specific port or just entirely) then it can take up to 30 seconds for socket.io to realise that you haven't connected, and try polling instead/

... Do we need such configuration altogether? If targeting modern systems (web servers, Node versions, browser versions, ...), does that even make sense to fallback to polling? Would that provide any advantages to such modern environments to remove it?

It's not about browsers, it's about the networks. You can be on the latest everything, but at work websockets are blocked (it has happened on a project I worked on) then you have a long time without any connection, and it can seem like it's entirely broken.
Setting up polling first means that everyone is connected from the get-go. Then socket.io immediatelly tries to set up websockets, and if it connects, then it turns off polling and switches to the websocket connection. I see no reason to switch this around, as it doesn't slow anything down, and can massively speed it up for some people.

Thanks a lot for this explanation, @YaManicKill, it makes complete sense.
@xPaw, unless there is something I misunderstood, I think I agree with @YaManicKill here. What do you think of having consistent defaults and fallbacks?

@astorije I will rebase the PR later to change the fallback to match default config.

Rebased.

:+1:

:+1: and merging. Thanks!


add CLI support ArgillaTrainer

Is your feature request related to a problem? Please describe.
I want to use CLI!
Describe the solution you'd like
Usage: python -m argilla.tasks.training [OPTIONS]

  Creates a default training task using CLI commands.

Options:
  -n, --name TEXT              The name of the dataset to be used for
                               training.
  -f, --framework TEXT         Choose a framework: transformers, openai,
                               span_marker, setfit or spacy.
  -w, --workspace TEXT         The workspace to be used for training.
  -l, --limit TEXT             The number of record to be used.
  -q, --query TEXT             The query to be used.
  -m, --model TEXT             The modelname or path to be used for training.
  -t, --train-size FLOAT       The train split to be used.
  -s, --seed INTEGER           The random seed number.
  -d, --device INTEGER         The GPU id to be used for training.
  -o, --output-dir TEXT        Output directory for the saved model.
  --update-config-kwargs TEXT  Output directory for the saved model.
  --api-url TEXT               Api url to be used for training.
  --api-key TEXT               Api key to be used for training.
  --help                       Show this message and exit.

Describe alternatives you've considered
N.A.
Additional context
N.A.

To add something else, I think we can map the CLI entry point to be argilla train instead of argilla.tasks.training.

I agree.


What would be the pattern for failure sampleData?

Sometimes a signup endpoint succeeds and passes back no data, sometimes it fails and passes back data/info on what fields caused the failure. Not really sure how to model this in Moya.
Perhaps sampleResponse on endpoint, and sampleData on target should have failure specific cousins?

The model is to return sampleData that reflects the info about the failure, just like on a success. We do this here on a per-target basis.

I'm a little lost. In that block of code I'm seeing neither the use of the .Error enum, nor for that matter (in the success cases) the user of target.sampleData..
I thought the target was supposed to define the data, with the endpointClosure mapping the sampleData to a sampleResponse?

Having rethunk it, my real question is: if there's only one sampleData property, what am I do to if a target has sample data for success and sample data for failure? Other than that, I think I get the pattern for representing success/failure with endpointClosures.

sampleData is actually a closure that returns an NSData instance. The demo I posted showed how you could customize the endpointsClosure to return customized Endpoints.
I suppose what's probably confusing is the Success and Failure cases of the result. Failure is truly a network failure – the status code is optional, even. It's meant to simulate when the device cannot connect to the internet. The Success case is a "success" in that the API returns some data. it's agnostic to the idea that a 404 would be a failure – it succeeded because it returned data.
I've opened https://github.com/Moya/Moya/issues/200 to make sure that we clarify this for other users.
Does that answer your question?

Your MoyaTarget implementation can have multiple sampleData properties, it is only a required MoyaTarget property so that it is easy to make use of MoyaProvider.DefaultEndpointMapping.
To use multiple sample data properties, you need to create your own endpoint-closure, which maps targets to Endpoint<T>:
    public static var endpointTestingClosure = { (target: YourAPI) -> Endpoint<YourAPI> in
        let method = target.method
        let parameters = target.parameters
        let sampleResponse = EndpointSampleResponse.Success(200, { target.testingData })
        // let sampleResponse = EndpointSampleResponse.Success(200, { target.sampleData })

        var endpoint = Endpoint<YourAPI>(URL: url(target), sampleResponse: sampleResponse, method: method, parameters: parameters, parameterEncoding: target.encoding)
        return endpoint.endpointByAddingHTTPHeaderFields(target.headers)
    }

    public static func TestingProvider() -> MoyaProvider<YourAPI> {
        return MoyaProvider(endpointClosure: testingClosure)
    }

Your two answers combined covered the bases. I get it now. Thanks a bunch!

I'm glad! I'm going to close the issue, but if you want to reopen later, or open a new issue, please feel free!


Remove rust-embedded/hal team from maintainership

By accident we had an unrelated team added as maintainers. https://github.com/rust-embedded/linux-embedded-hal/pull/16 rectifies it in the affected crate while https://github.com/rust-embedded/wg/pull/337 adjusts the documented state in the wg.

Deployed.


Implement the OAuth2WebViewClient related classes

Implement the OAuth2WebViewClient #155
Implement the NtlmChallengeHandler #156
Add the ChallengeCompletionCallback interface #157

TODO add unit tests

@iambmelt  Thanks a lot for the reviews. I have addressed all your comments. Please let me know if there is any other concerns.

@piqiums @iambmelt  Thank you for the reviews. All comments addressed.


Failure to create encoding for slice of types

A simple struct using only primitive types:
type Struct1 struct {
    Data [][]byte `ssz-size:"128,20"`
}

encodes fine, but if the type is abstracted:
type Slice []byte
type Struct2 struct {
    Data []Slice `ssz-size:"128,20"`
}

An attempt to create the encoding with sszgen returns an error:
[ERR]: failed to encode Slice: no ssz-size or ssz-max tags found for element. tag=

Similarly, attempting to do the same with a fixed-size array:
type FixedSizeArray [20]byte
type Struct3 struct {
    Data []FixedSizeArray `ssz-size:"128,20"`
}

returns
[ERR]: failed to encode FixedSizeArray: no ssz-size or ssz-max tags found for element. tag=

This is using current master.

It tries to encode also the alias type but It cannot find the SSZ tags. Use this flag:
sszgen --exclude-objs FixedSizeArray,Slice ...

Thanks, but that doesn't seem to fix the issue:
sszgen --exclude-objs FixedSizeArray,Slice --path . --objs Struct3
[ERR]: failed to encode Struct3: failed to encode FixedSizeArray: failed to encode FixedSizeArray: unexpected mismatch between ssz-size and array fixed size, name=FixedSizeArray, ssz-size=128, fixed=20```

I think this is the same as #55

However, I am unsure how easy it is to fix this issue. Alias management is pretty hard, especially for unmarshalling. Almost all of these cases have to be built ad-hoc without good abstractions so I am not sure to what extent this issue can be fixed.
#92 was another example of aliases that got a simple solution without changes on the generator.
I will try to look for an easy solution for this case too. However, if your only intention for the alias is to do marshal/unmarshal of the JSON structures, there is another approach here that works better than aliases with custom encoding functions.

Thanks, I'll consider how best to approach this in the specific cases I have.  I suspect that a shadow copy of the structs with unaliased types would be the best short-term solution here.

Could you try this PR #103? It has a possible fix for the issue.


#return directive within #if.....#else not working when using Amplify Mock

Note: If your issue/bug is regarding the AWS Amplify Console service, please log it in the
Amplify Console GitHub Issue Tracker

Describe the bug
The #return directive does not seem to work when used in an #if...#else block in the request mapping template.
DOES NOT WORK:
`#if( $util.isNullOrEmpty($ctx.source.team) )
#return
#end
{
"version": "2018-05-29",
"operation": "GetItem",
"key": {
"id": $util.dynamodb.toDynamoDBJson($util.defaultIfNullOrBlank($ctx.source.team, "xamznone_"))
}
}`
WORKS:
`#return
{
"version": "2018-05-29",
"operation": "GetItem",
"key": {
"id": $util.dynamodb.toDynamoDBJson($util.defaultIfNullOrBlank($ctx.source.team, "xamznone_"))
}
}`
Note: When testing, I verified that the if...else block is being entered by throwing an error in the block. Also, the code works when using it with the AppSync API.
Amplify CLI Version
4.29.1
To Reproduce
Try using similar code above in a request mapping template
Expected behavior
The #return directive would stop the execution of the mapping template when used in an if...else block
Screenshots
N/A
Desktop (please complete the following information):

OS: Windows using WSL2
Node Version: 12.16.2

Additional context
Add any other context about the problem here.

I tried but I can't reproduce the issue. early return with #return is actually respected by the amplify mock.

Did you try it with the #return in the if...else block? If you did and it worked, you can close the issue as it may have something to do with my setup. Thanks.

yes, the return is inside a #if #end block

I already tested to ensure that the #if statement was passing and the code was entering the block, I tried again just now using a simple #if statement and it still didn't early return from the request mapping template.
Closing this since the issue may be specific to me since it cannot be reproduced. Thanks for looking into it.


Add Lazy Programmer Profile

What type of PR is this? (check all applicable)

[x] 🚀 Added Name
[ ] ✨ Feature
[ ] ✅ Joined Community
[x] 🌟 ed the repo
[ ] 🐛 Grammatical Error
[ ] 📝 Documentation Update
[ ] 🚩 Other

Description
A simple gif profile for lazy programmers.
Add Link of GitHub Profile
https://github.com/okankocyigit

This looks so nice!


Re-worked definitions for v2 of the platform wg glossary

Addresses #485.
Thanks to @abangser , @joshgav , @ebcarty , and @kurktchiev for all their contributions!

That makes sense to me, thanks. I agree we should focus on closing out the English version first before investing time in translations.
As for the question of when/if, I'm not familiar with the organization's policy here, but I hope others on this review will know! Looking now through the current version 1 of the glossary, it seems that the:

Chinese version has been translated
Korean version has only headings translated
Japanese version has not been translated.

If I've understand that correctly, it suggests to me that we might publish English versions in the shorter term and update each translation as we are able over time?

Yup, that is the list I was thinking of Marsh. I do think we can tackle the merging of translations once we settle on English, but if translations are not updated on merge, we still want to keep them sensible so I believe we have at least two options:

Revert back to english for the language
Leave the existing translation with a note suggesting checking the English page for an updated version.

This is pointing us towards needing version the glossary directory. That would allow all languages, including English, to retain  history. With versioning, my vote would be to do the 2nd option within this PR for any page with translations (Chinese and Korean) and update to English for others (Japanese).
I would then suggest that the version 2 update translations be handled in other PRs but I think it is helpful to give people a heads up and see if they have any ideas / preferences as I don't have experience translating myself.
My understanding is the following people may have an interest in the following languages:

Chinese version has been translated: @node, @windsonsea, @rootsongjc, @mouuii, @mengjiao-liu, @cubxxw
Korean version has only headings translated: @Eeap, @sysnet4admin, @seokho-son
Japanese version has not been translated: @hhiroshell, @kaitoii11, @MasayaAoyama, @naonishijima

Just to say, This is a lot of names and I don't know how we want to handle this in the future and we have a number of things we need to tackle, ideally in an traceable way.
So in summery my suggestion is:

Update this PR to introduce the concept of versioning to the Glossary page (@earth2marsh and I am happy to help)
Keep the comments / suggestions in the PR focused on the content of the Glossary update in English
Conversations about who and how to alert on translation update needs would be best suited for #537 where we are trying to find a light weight solution that works for everyone
Translation updates to v2 of the glossary are encouraged to confirm this version is approved before tackling and then to open a new PR using the translation template (and giving feedback on if it helps or hurts the process!)

This is all just a suggestion though, and as we evolve on #537 we will learn so please do improve this workflow with us!

@earth2marsh Sorry for coming so late to the game, but maybe it would be possible to introduce some more of the ecosystem element to the glossary? Right now the terms point to a patform team in a more monolithic sense when in reality there may be a number of platform providers and consumers in an organization where a consumer could be an end user or another platform provider.
I think "Team" is often used flexibly to represent up to larger organizations but the distinction might be useful here and it still aligns well with other things mentioned, including team topologies.

@dstengle I think that is worth considering for v3 of the glossary. The v2 goal was to clean up and reorganize the v1 document in light of the maturity model work, and to make sure the terms defined in the glossary support the two published papers. If there is specific language you'd like to suggest, there's a Google doc linked in issue #485 that you can comment directly within. FWIW, I do think there is more we can do to highlight that multiple platforms will likely exist in any org of sufficient size, and that different people in different roles/teams may be consuming or producing or both.

Hi folks, first of all apologies for a drive by comment from an onlooker. I have been following TAG from the sidelines for internal advocacy purposes.
The change introduces duplicative entries for TVP, is that intentional and something that would be cleaned up in a follow up work?

Thank you @indyaah for catching that! I was able to quickly edit and remove the old TVP section right here in the GitHub interface. Before I merge though, could someone please double-check again that everything is good? Thanks @earth2marsh @abangser @roberthstrand !

@joshgav I can't seem to see the new preview deploy, but absolutely can confirm the duplicate and that you're delete looks good in the diff.
Great catch and quick fix!

Thanks @indyaah for catching that.
@joshgav your edit LGTM. However, platform users was also duplicated, so I've removed that as well. I think this is now good to go!

Okay, thanks everyone! Let's merge and we'll continue to iterate together!


cubical subtype

Tasks: implement cubical subtype

[x] syntax definitions for Sub, inS, outS
[ ] typing rules
[ ] computation rules
[ ] rewrite tests and reimplement coe due to subtypes

Will update progress here.
Note: this branch includes preliminary code for hcomp. This will be cleaned up because we are using cubical subtype now.

How to implement coe witu subtype

Did you mean in the return type?

Did you mean in the return type?

Hey, can we have this type of extended discussions on Space instead? I don't want to receive email notifications for minor replies. Also, I prefer to be messaged on Eastern Time 9am to 7pm Monday to Friday. Sorry about that.

It is hard to follow your preference since "Eastern Time 9am to 7pm" means Beijing Time 20:00 to 30:00. You might want to adjust your notification settings and it is totally OK if you choose to ignore messages when you are off work. Please, not all developers are in the same time zone as you are and both GitHub and Space have the option to turn off certain notifications. Sorry about that.

User -> Settings
There will be options to have GitHub not to send emails

Closing in favor of #826
Note: the code for hcomp is not yet ported.


Fix wrong method call in ImpedanceController::impedance_force_callback

Looks like a copy-paste error. Missed it during the initial review.

Thanks for the catch!


Supported nested records in make_arrow_schema

:notebook_with_decorative_cover: Description
We should not need to flatten layouts before creating an Arrow schema from them.
:memo: Checklist

[x] All user-facing changes have changelog entries.
[x] The changes are reflected on docs.tenzir.com/vast, if necessary.
[x] The PR description contains instructions for the reviewer, if necessary.

:dart: Review Instructions
@lava I've set the merge base for this one to #1517 so you can merge it directly into your PR.

Superseded by #1612.


Disconnecting during a reconnection leaves events on event loop

const ioredis = require('ioredis');

async function sleep(ms){
    return new Promise((resolve)=>{
        setTimeout(()=> resolve(true), ms)
    })
}

async function main(){
    console.log('Creating instance');
    const redis = new ioredis(6380, '<IP_ADDRESS>', {}); // redis is NOT running in this port
    redis.on('end', ()=>{console.log('Ended connection')})
    try{
        console.log('Sleeping');
        await sleep(1000);
    }finally{
        console.log('Disconnecting');
        redis.disconnect();
        console.log('Process wont end now');
    }
}

async function workingMain(){
    await sleep(1000); // showing the sleep implementation is not the issue
    console.log('Creating instance');
    const redis = new ioredis(6380, '<IP_ADDRESS>', {}); // redis is NOT running in this port
    redis.on('end', ()=>{console.log('Ended connection')})
    console.log('Disconnecting');
    redis.disconnect();
}

main().then(()=> console.log('Finished main')).catch(err => console.log('Finished main with error', err));

When executing the workingMain method, the process exits cleanly.
However, when executing the main method, that allows ioredis to try to connect, after waiting for some time and asking to disconnect, the process won't exit cleanly. This makes it impossible to exit a process that tries to connect unsuccessfully to redis without manually using process.exit.
Also, the 'end' event is never emitted in main but it is correctly emitted in workingMain.
This is affecting us, since we build the ioredis instance and start sending commands to it. When trying to access an unreachable redis instance (for example, due to an outage), after some time, the retries for the commands sent make the commands fail, which is the expected behavior, but, when trying to destroy the redis instance, we cannot do so and the nodejs process never finishes.
The node version used is: 10.20.1
The ioredis version used is: 4.19.2

I've been able to verify that this bug was introduced in ioredis version 4.19.0.
Previous version 4.17.3 works just fine.

I have verified that this works after https://github.com/luin/ioredis/releases/tag/v4.19.4
Thanks, closing!


mailutils: 3.14 -> 3.15, add options, tests, parallel build

Description of changes

Version bump http://savannah.gnu.org/forum/forum.php?forum_id=10160
Optionally disabling Python/Guile reduces the closure size from 232MB -> 92MB, a significant change if you don't need it.
I've tried to enable parallel building again, and I've managed 40+ successful builds and no failures on my 16-core machine. Does that sound safe enough?
The checkPhase passes for me, but installCheckPhase still doesn't.

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 217005 run on x86_64-linux 1

2 packages built:

automysqlbackup
mailutils


Add initial functionality for Morse Code

Added "To Morse Code" and "From Morse Code" functions under the category
"Encryption / Encoding".
"To Morse Code" accepts 3 arguments:

Format options: e.g. ./- or Dot/Dash
Letter delimiter e.g.  or
Word delimiter e.g.

"From Morse Code" accepts 2 arguments:

Letter delimiter
Word delimiter

Very much a WIP. Right now it doesn't accept freeform formatting for . or -, which may be useful if trying  translating too/from an application that uses a different encoding/formatting.

Awesome work here @tlwr and thanks to @artemisbot for your contributions and improvements.
I made a couple of small changes to match conventions for the rest of the project, notably the use of Utils.charRep to define your delimiters so that they are similar to those available in other operations.
Thanks once again, we look forward to seeing more contributions in future!
Morse Code example.

Kudos to you @n1474335 and @artemisbot for making contributions so straightforward


[REQ] Logitech G HUB detection

Acknowledgement of preliminary instructions

[X] I have read and acknowledged the preliminary instructions.

What idea do you have?
Make it so Logitech G HUB(App for Logitech peripherals) can detect bloxstrap. right now it doesn't detect roblox if I use bloxstrap at all so If I want to change my binds I have to change my G HUB profile manually.

Not our responsiblity. Add it as an application manually (be sure you add RobloxPlayerBeta.exe as it's in Bloxstrap's installation folder).


add: correct associations in db

Assignee Tasks

[ ] added unit tests (or none needed)
[ ] written relevant docs (or none needed)
[ ] referenced any relevant issues (or none exist)

Guidelines
Please add a description of this Pull Request's motivation, scope, outstanding issues or potential alternatives, reasoning behind the current solution, and any other relevant information for posterity.

Your PR Notes Here

Great!


TokenizerManager name is a bit misleading

The TokenizerManager is, in fact, more a TextAnalyzerManager:
pub struct TokenizerManager {
    tokenizers: Arc<RwLock<HashMap<String, TextAnalyzer>>>,
}

I would be in favor of a renaming though I don't fully understand the implications.
What do you think?

Admittedly nothing to do with the name, but sine it already is part of the dependency closure, I wonder whether ArcSwap<HashMap<String, TextAnalyzer>> for this mostly-initialization-then-just-reading data structure?

Ok with me.

I think we should change that to
pub struct TokenizerManager {
    tokenizers: ArcSwap<HashMap<String, Box<dyn Tokenizer>>>,
}

While TextAnalyzer is actually a TokenizerBuilder