Package as NPX tool

It would be useful to have this tool in NPM to be able to run it with npx gitlab-ci-local

Automatic updates would be handled by NPM
No need to install binaries (out of free software spirit or security concerns)
No traces left after running, unless specifically installed it with npm i -g gitlab-ci-local

To do that, you basically need to add a runnable (in terms of POSIX shells) JS script that imports the dist, modify your package.json and publish the code as an NPM library.
Here's how I would do it

touch cli.js

chmod +x cli.js

Edit cli.js

+ #!/usr/bin/env node
+ require('./dist/index.js')

Edit package.json

{
  "name": "gitlab-ci-local",
  "main": "index.js",
+  "bin": "cli.js",
  "scripts": {
    "pkg-linux", // ...

npm publish

I would have done it myself, but as you're the author, you should probably have the rights to name the package gitlab-ci-local yourself.

You are right. Especially npm install -g will make sense for people that already have the nodejs ecosystem installed.
Regular npm install won't make much sense though, since gitlab-ci-local "should" be responsible for running npm install in projects.
I'll publish it on npm.js soon.

@v4dkou Right, its on npmjs.org

@v4dkou Oh, wait I just fucked up :smile: It will be online in 24 hours
npm ERR! code E403
npm ERR! 403 403 Forbidden - PUT https://registry.npmjs.org/gitlab-ci-local - gitlab-ci-local cannot be republished until 24 hours have passed.
npm ERR! 403 In most cases, you or one of your dependencies are requesting
npm ERR! 403 a package version that is forbidden by your security policy.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/mjn/.npm/_logs/2020-12-22T09_28_20_327Z-debug.log

@v4dkou https://www.npmjs.com/package/gitlab-ci-local Now it works. Have fun.

@firecow npx gitlab-ci-local works perfectly even without prior global installation, thanks!


Added autogen.sh file to ease autotools installation

I just added a autogen.sh file to avoid issuing aclocal; autoreconf -i; autoconf.
Its a simple script which calls all the autotools commands in order. I have been using it in my
unittest++ fork for a little while.

Thanks for the PR. I can't see how it could do any harm, so I'll merge it, but so you know if people start writing bugs against it or trying to "enhance" it a bunch I'll probably take it back out.


⚠ Bofrost.be has degraded performance

In e5bae6a, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1481 ms

Resolved: Bofrost.be performance has improved in 56230cd.


[mid-term] Improvements in the AppProvider

As discussed in https://github.com/cs3org/reva/pull/1035 and earlier, we need to improve the appprovider in two directions:

Include a "driver" for WOPI and a simple demo driver for ROOT viewer, as a demonstrator for further app integrations. The idea being that Office-like apps supporting collaborative work should be integrated via WOPI, whereas simpler apps and viewers in particular may be more easily integrated with just dedicated drivers in the appprovider framework.

For the WOPI driver, call the getWopiAppEndpoints() function once a day and cache its result (a map, to be protected with a RWMutex).

A WOPI appprovider driver is operational for long now


Never share your account credentials!

 Thankfully it was a trial account. Removed.


Update Node.js

node -v
v20.5.1

Latest LTS is:
v20.13.1
All Web Apps need to be tested.

OK the https://deb.nodesource.com/setup_20.x  repo that we use is really just offering v20.5.1 .. so this is no quick update. Pushing it back to later release and for further team discuss.

Most likely the issue is that node source changed the distro to "nodistro".
In the install script, the distro is still in there.
Should be able to update to the newest 20.x version without issues since there are no breaking changes

Final testing when #4767 merged.


This when I already have a bunch of instances warmed up and 10 shards for my counter.
I've tried higher shard counts, but it does not give much better result.
If I remove the "increment" line I get much better result (300ms max responsetimes for the same amount of instances, 20r/s, etc) (But of course; I dont get a working counter :)
Am I misunderstanding something gravely here? :-)
Should this not be possible?

Hey, thanks for your question.
Can you post the code you use to configure your ShardedCounterServiceImpl in your other tests?  From what you posted, the default number-of-shards will be 3, and this is not enough to support 20 r/s (though you indicated trying higher shard-counts, so just want to be sure that happening correctly).
Also, the datastore is highly variable, by day and even per-project.  I've seen places online (over the years) that claim the datastore can support various numbers of transactional writes per second (sometime 5, sometime 1, etc).  That's what's occurring in the increment operation - it has to do a transactional write on the shard anyway to make sure the "increment" is atomic.
It would be interesting to tweak your load test to see what load you can support.  For example, can your code handle 1 r/s?  What about 3r/s or 10r/s?
Also, what do you see in the logs?  I would expect a bunch of ConcurrentModificationException being thrown from the Datastore.  Is that happening?

Hi, thanks for the response :-)
I just increased the shard count in data store browser in the app engine console. Then I flushed memcache and ran tests again.  I did see new shards being created. I tried 3, 30 and 90 shards.
I did not go only be "first" test neither, but ran several to ensure instance count was up and memcache was warm. Also, my tests had gradual load increase.
20r/s should be easily handled by 20 instances and 30 shards I belive :-) But even more instances than that were running. (And as i mentioned, if i remove the increment line, it works much much better).
If I test on local dev server I get response times on a few ms or so, the load tests Im writing about are against actual GAE on a paid account.
So, if I understand you correctly - I should be seeing much better response times and performance?
Because of time restraints I moved on to a memchache counter backed to storage in cron job, but if I get the time Ill create a stand alone sample and load test against it and update this issue with the results.
br


Add new Konke magnet sensor model.

I’ve purchased one of those Konke magnet and they seem to have updated the model reference from 3AFE270104020015 to 3AFE280104020015.
Needed for the battery cluster.

Codecov Report

Merging #894 (10f130b) into dev (b180e4f) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##              dev     #894   +/-   ##
=======================================
  Coverage   82.50%   82.50%
=======================================
  Files         185      185
  Lines        4589     4589
=======================================
  Hits         3786     3786
  Misses        803      803

Impacted Files
Coverage Δ

zhaquirks/konke/magnet.py
100.00% <ø> (ø)

Continue to review full report at Codecov.

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

you may want to install the black and do the formatting with black

Pull Request Test Coverage Report for Build 867695272

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 82.502%

Totals

Change from base Build 831470891:
0.0%

Covered Lines:
3786

Relevant Lines:
4589

💛  - Coveralls

Thank you for the formatting, will do it next time. 🙂


Implement queueMicrotask and drainMicrotasks in JSC

Summary:
Changelog: [internal]
Context
We want to enable the new React Native event loop by default for all users on the new RN architecture (on the bridgeless initialization path more concretely), which requires support for microtasks in all the JS engines that the support (Hermes already has it, JSC doesn't).
Changes
This adds initial support for microtasks in JSC, so we can schedule and execute microtasks in this runtime.
One limitation about this approach is that, AFAIK, the public API for JSC doesn't allow us to customize its internal microtask queue or specify the method to be used by its built-in Promise or native async function, so we're forced to continue using a polyfill in that case (which uses setImmediate that will be mapped to queueMicrotask).
Differential Revision: D54302534

Committed in https://github.com/facebook/react-native/commit/bd89afa284c1b9e94ec7c33e35f4ce5a96936e1d


Update concepts-high-availability.md (Typo "flexible server"→"Flexibl…

…e Server")
https://github.com/MicrosoftDocs/azure-databases-docs/blob/main/articles/mysql/flexible-server/concepts-high-availability.md #PingMSFTDocs

@VandhanaMehta
Can you review the proposed changes?
Important: When the changes are ready for publication, adding a #sign-off comment is the best way to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team


Deriving ADE classes from _Feature

When designing an ADE it might make sense to derive some classes directly from _Feature instead of  _CityObject.
Example: see AbstractConstruction in the Energy ADE (see: https://git.rwth-aachen.de/energyade/citygml-energy/blob/v1.0/doc/UML-Diagrams_Energy-ADE.pdf)
As a CityModel is derived from _FeatureCollection, it also inherits relation _featureMember, hence it should be allowed to have _Feature-derived classes and not only _CityObject-derived ones.
In the specific case: the idea is to have the Construction-Objects at root level in the CityGML document, and to reference them via Xlinks from all related objects.
Could the specifications state a bit more explicitly whether this is originally intended/allowed or not?
Thanks for your support!

We confirmed in the web conference on 17 May 2019 that it is allowed to derive classes directly from _Feature and we will describe this more explicitly in the CityGML 3 specification.
However, CityModel is no longer derived from _FeatureCollection in CityGML 3; thus, the relation featureMember does not exist any more. Only relations, that are explicitly defined in the data model can be used, currently these relations are cityObjectMember, appearanceMember, versionMember, and versionTransitionMember.
To solve this, we discussed to complement the UML model by a class AbstractFeature as shown in this figure:

The ADE classes can then directly be derived from the class AbstractFeature and be included as featureMember objects in the CityGML document.

ISO 19109 defines a class AnyFeature that is an instance of the metaclass FeatureType. The standard specifies that all classes in a UML application schema with the stereotype <<FeatureType>> shall be derived from the class AnyFeature.
This approach was used in the LandInfra UML model.
Instead of defining the class AbstractFeature as discussed above, I also used now the class AnyFeature as superclass in the CityGML UML model, see commit 2cb5453:

The encoding with ShapeChange works without problems. An additional relation featureMember is added in the XML schema document.
What are your opinions on that?


Java support

do you guys plan on adding support for java? I feel like automating the process of getting java to work would be very very helpful since right now its kind of a pain to get java setup :smile:

This is why it's not included yet. It seems like the eclipse jdtls depends very much on the users configuration.

https://github.com/neovim/nvim-lspconfig/blob/master/lua/lspconfig/jdtls.lua

Duplicate of: https://github.com/kabouzeid/nvim-lspinstall/issues/3


Setup rollup build, add TS types

I'd actually want to tweak build in https://github.com/davidtheclark/focus-trap-react but thought I could work on the whole thing bottom-up and that's how I ended up doing this.
If you like it I will prepare followup PRs in related packages.
⚠ This is a breaking change due to exports shape change. The proposed form makes this library way more tree-shakeable (static properties are treeshaking/DCE enemies)

Hi @Andarist. I'm not interested in overhauling the codebase this dramatically. Is there a problem you're aiming to solve here?

Basically, I wanted to optimize https://github.com/davidtheclark/focus-trap-react (bundle size), but decided to work on this bottom-up. This PR makes this lib more bundler friendly, more future proof (ESM modules, CJS only as fallback). This also provides TS typings.
I understand this might seem like a lot but in its essence, this just split a single file into multiple to improve readability and changes exports shape - it exports things separately instead of attaching utils as static properties of the main export.
If you are going to vote against this then I would be ok with it, no harsh feelings - I've decided to work on this knowing that this might get rejected. You can tell me which parts do you like - i.e. updating deps, eslint, using babel, whatever and I can remove unwanted parts to get some of the things merged in.
That being said - I strongly think that this improves the package overall, maybe not dramatically, but every bit counts 😉

@Andarist If you'd like to contribute a change, please open an issue describing what you'd like to do, and please open separate issues for separate changes (e.g. an issue for using Babel, an issue for TS typings). This would help focus any time spent on discussing the changes.
Non-breaking version upgrades to dependencies are always welcome as PRs.

I put in a PR for ES6 Support on focus-trap davidtheclark/focus-trap#84 without having seen this. However, this would further lighten the load as tabbable wouldn't need to be bundled anymore from focus-trap's perspective. Is there any progress on the concerns with this PR?


SSH commits fail to show until HTTP commit made

Please take a moment to search that an issue doesn't already exist.
For bug reports, please give the relevant info:

Gogs version (or commit ref): 0.8.25_raspi2
Git version: 2.1.4
Operating system: Raspbian, Kernel 4.1.17-v7+
Database: SQLite

Description
I create a new repo in gogs, set my remote on the local codebase to the SSH address, commit, and push. At this time, gogs shows an empty repo still (instructions on how to add remotes, etc). Further pushes to the SSH change nothing. The repository has the code, however, because cloning it via local file (rather than the gogs service) shows exactly what was pushed.
Pushing via HTTP then causes the repo to show as if nothing was wrong, and further SSH pushes from that point on will show just fine.

Please take a moment to search that an issue doesn't already exist.

This issue certainly exists.
Please check your path/to/gogs/log/serv.log file.

I apologize, I didn't search well enough.
The log has four instances of "[T] No update task is presented:" followed by long IDs.

Thanks, are you use NFS or any sort of mount to store repositories that are managed by Gogs?

The repositories are on an external drive that is directly mounted to the system gogs lives on as ext4.

OK... I think this is duplicated to https://github.com/gogits/gogs/issues/2550?

Actually it seems much closer to #1864 (even the fact that it's an ARM device running gogs). The main differences seem to be the gogs version, and mine is a Raspbian system, not Arch-ARM.

even the fact that it's an ARM device running gogs

No, many people run Gogs on ARM devices without any issue. So I think it is the problem with mount, wheich is #2550.

@Unknwon #2550 is about as unrelated as you can get since it's about UNC paths in Windows (\\server\path) and not about mounted drives... #1864 is pretty much spot on though...
@oneirosFade can you paste the relevant line(s) from /etc/fstab (if it's there) and whatever mount is saying about the mount

Yeah. The repository root is at /media/storage/git/ which is on:
UUID=29bcc075-3d81-4dc4-aece-664c3d249904       /media/storage  auto    auto,nofail,user        0 0
and reported as:
/dev/sda1 on /media/storage type ext4 (rw,nosuid,nodev,noexec,relatime,data=ordered)
On a whim, I just disabled nosuid and noexec which seems to have fixed the issue (allowing the git hooks to run on SSH commit).

On a whim, I just disabled nosuid and noexec which seems to have fixed the issue (allowing the git hooks to run on SSH commit).

This seems to be the real problem :D

Updated toubleshooting here: https://gogs.io/docs/intro/troubleshooting#push-was-successful-but-no-activities-are-shown-on-dashboard

@oneirosFade
How's your fstab mount now? I still run on this issue on a Raspbian, with this mount:
UUID=7664-B942  /mnt/usbdisk    vfat    rw,nodev,relatime,uid=1000,gid=1000,dmask=000,fmask=111 0       0

Same as before, but I added the exec option. gogs now works just fine. I'm just guessing, but is fmask=111 does what I think it does, then that may be your problem (strips the execution permission from everything on that mount). The git hooks need execution permissions to run (thus pushing via SSH can write the files, but can't execute the hooks to update gogs).

@oneirosFade yeah, fmask will make all files rw-, since vfat has no individual file permissions, it does infer a little security issue, but then again why does it work under https (with fmask rw) is beyond me.
Making fmask 000 (thus everything rwx) does solve the issue

@oneirosFade Can you help put better wording (as I'm not familiar with mount thing)? I think the way I described how to solve this issue has some problem.
https://github.com/gogits/docs/blob/master/en-US/intro/troubleshooting.md

@usagirei If you're concerned about the security risk of having your entire mount executable (and I don't blame you) you could possibly leverage the user/group settings of the mount. In my case I'd probably have it mounted to the "removable" group (or something like that) with fmask of 101 or 001 (so only the owner and/or group has execute permissions), then adding the gogs user to that group.
@Unknwon Sure, I'll give it a look and PR you when I'm done.

Just letting the feedback that letting the only the user and group with executing permission while mounted as the specific group/user does keeps it working as intended, so there should be no unexpected issues


Release notes for the 0.3.2 alpha server release

Adding Metadata and the ability to search features on name or gene_symbol

@david4096 - updated

+1

+1


Add frame connector

Description
Adding full support for Frame
PLEASE NOTE- Checklist must be complete prior to review.
Checklist

[x] Increment the version field in package.json of the package you have made changes in following semantic versioning and using alpha release tagging
[x] Check the box that allows repo maintainers to update this PR
[x] Test locally to make sure this feature/fix works
[x] Run yarn check-all to confirm there are not any associated errors
[x] Confirm this PR passes Circle CI checks
[x] Add or update relevant information in the documentation

Docs Checklist

[x] Include a screenshot of any changes (see docs README on running locally)
[x] Add/update the appropriate package README (if applicable)
[x] Add/update the related module in the docs demo (if applicable)
[x] Add/update the related package in the docs/package.json file (if applicable)

If this PR includes changes to add an injected wallet or SDK wallet module:
Please complete the following using the internal demo package.
To run this demo use the command yarn && yarn dev to get the project running at http://localhost:8080/
Tests with demo app (injected)

[x] send transaction
[x] switch chains
[x] sign message
[x] sign typed message
[x] disconnect

Tests with demo app (SDK)

[x] send transaction
[x] switch chains
[x] sign message
[x] sign typed message
[x] disconnect

@leightkt Did you enable the Goerli chain in Frame?

@goosewobbler - that was it- needed to enable the chain. Looks good to go!

@leightkt Great.  Do we need to do something else to fix the Vercel deployment?


Conduit Facades dont have crafting recipes

Pls add crafting recipes for the Newly added facades
====================================================================
{
"type": "minecraft:crafting_shaped",
"category": "misc",
"key": {
"S": {
"item": "enderio:conduit_binder"
}
},
"pattern": [
"SSS",
"S S",
"SSS"
],
"result": {
"count": 8,
"id": "enderio:conduit_facade"
}
}
{
"type": "minecraft:crafting_shaped",
"category": "misc",
"key": {
"S": {
"item": "enderio:conduit_binder"
}
"G": {
"tag": "c:glass_blocks/clear"
}
},
"pattern": [
"SSS",
"SGS",
"SSS"
],
"result": {
"count": 8,
"id": "enderio:transparant_conduit_facade"
}
}
===============================================================================

Known issue. Will be fixed soon.
Next time, please properly fill out the bug report form as requested

Fixed in dev, will be released in the next day or so. Thanks

Fixed in dev, will be released in the next day or so. Thanks

Just noticed they are added in code but all with a count of 1.
To my knowledge this should be 8 just like the conduits themselves, with the exception beeing the hardened since they are an upgrade of the 8 you alreayd created priorly.


[QUESTION] Is my Config wrong?

Hello everyone
I have finally managed to update my display (custom) to v2. Not easy for me as a layman, as a lot of the documentation seems to be outdated. But it works now. ( I think?)
If i send the following from Home Assistant:
service: esphome.matrix3_icon_screen
data:
  default_font: true
  icon_name: ten
  screen_time: 10
  lifetime: 1
  r: 200
  b: 200
  g: 200
  text: Test

Text and icon appear as desired for 10 seconds and then switch back to the clock.
After that, the text and icon appear 4 more times within the next 90 seconds or so.
What do I have to do so that text & icon are only displayed once for 10 seconds?
In addition, the example in the WIKI "display timer" does not seem to work.
If I set the timer to 60 seconds, only "59" is displayed and the time does not run down.
Can anybody help me?
Thank you so much
Config
This is my Config:
Config.txt
Additional information

Hardware: ESP32
EspHoMaTriXv2 version: [2024.3.0]

Logs
Log when Calling the icon_screen:
logs_matrix3_logs.txt

If you need to show this screen once, you can use alert_screen, or set lifetime: 0 and then call force_screen.
This is true for 2024.3.0 https://github.com/lubeda/EspHoMaTriXv2/tree/2024.1.0-prerelease

Brilliant, thank you very much!
alert_screen is nowhere found in the Docs, this works perfect.
If anyone is interested, with this version of the automation in Home Assistant, the timer from the example now works:
alias: "Matrix: Timer test"
description: Zeigt einen Timer auf der Matrix an
trigger:
  - platform: state
    entity_id:
      - timer.eier_timer
    to: active
condition:
  - condition: state
    entity_id: timer.eier_timer
    state: active
action:
  - repeat:
      sequence:
        - service: esphome.matrix3_alert_screen
          data:
            default_font: true
            icon_name: ten
            screen_time: 1
            r: 200
            b: 200
            g: 50
            text: >-
              {{ (state_attr('timer.eier_timer', 'finishes_at') | as_datetime -
              now()).total_seconds() | int(0) }}
        - delay:
            hours: 0
            minutes: 0
            seconds: 1
            milliseconds: 0
      while:
        - condition: state
          entity_id: timer.eier_timer
          state: active
mode: single

Brilliant, it works perfectly, thank you very much!
If anyone is interested, with this version of the automation in Home Assistant, the timer from the example now works:
alias: "Matrix: Timer test"
description: Zeigt einen Timer auf der Matrix an
trigger:
  - platform: state
    entity_id:
      - timer.eier_timer
    to: active
condition:
  - condition: state
    entity_id: timer.eier_timer
    state: active
action:
  - repeat:
      sequence:
        - service: esphome.matrix3_alert_screen
          data:
            default_font: true
            icon_name: ten
            screen_time: 1
            r: 200
            b: 200
            g: 50
            text: >-
              {{ (state_attr('timer.eier_timer', 'finishes_at') | as_datetime -
              now()).total_seconds() | int(0) }}
        - delay:
            hours: 0
            minutes: 0
            seconds: 1
            milliseconds: 0
      while:
        - condition: state
          entity_id: timer.eier_timer
          state: active
mode: single


Template literals as keys in object literals loosing type information

Template literals as keys in object literals loosing type information, even with explicite type literals (works only with one exact type).

TypeScript Version:  4.1.2, 4.2.0-dev.20201210

Search Terms: Template literal types literal keys object keys literal types
Code
const template = <T extends string>(name: T) => ({
    [`${name}` as const]: name
});

Expected behavior:
const value = template ('TEST'); // const value: { TEST: "TEST"; }

Actual behavior:
const value = template ('TEST'); // const value: { [x: string]: "TEST"; }

Playground Link: https://www.typescriptlang.org/play?ts=4.2.0-dev.20201210&ssl=13&ssc=26&pln=13&pc=44#code/MYewdgzgLgBFCmBbADgGwIYIPphFLA7iAE4DWAlmAOZboRanwCeMAvDADwAqM8AHgjAATCDGjFKVAHwAKMOkTwAXDC4BKNlJgyA3gCgYhmAG0ABgBId8xQF9TMOjFCQoAXRXX4em2oDcevWdoGAA3dFQAV3gcPEISCmo2OCQ0TGjcfCIySVp6RiYZAHIuAFEAZS5CvxgAehqncGCwyOUYHRM+FXFJdxgAIlKKvt8YGwCg2AQUDGwMuOzqQnIoAAssVGX4YnCsKCZkeCTuXgF4YVFu6llPFWLyypgAHxhCgHkAJUKnl4A5V8qNKwtLoDEYzJZPHYHKIJr1PN4-ONGrBmlEYpl4jkNghtqgklNUrNYlkEjQCMs1titjs9gcioMASM6g0XKFwlEVO1jJ0xFAJNRegN7sNRkjWQSZtESZIjjx+IIRLz+dI5ApWncKlVNNp9EYTBYrGqoY5YR41Qj-IFkWyWvNSfiUpK7ZJ6fcqkz6hMbRy2qp7iohUMRmMgA
Related Issues: Might be related to #41631

This is correct behavior, since you could write template<"foo" | "bar">("foo") and would not get back an object with a bar property

This is correct behavior, since you could write template<"foo" | "bar">("foo") and would not get back an object with a bar property

@RyanCavanaugh But this will not produce expected result either I won't get // const value: { foo: "foo"; } even if value is there.

I don't understand what you mean by that.

@RyanCavanaugh  Sorry I wasn't clear enough. Here is a example of expected behavior.
https://www.typescriptlang.org/play?ts=4.2.0-dev.20201210#code/MYewdgzgLgBFCmBbADgGwIYJgXhgCjHUXgC4YByAMxBHJgB8KAjdAJ3IEocA+fAbwBQMYTADaAAwAkfQsQC+4mOggxQkKAF0ys+ALkcA3AOMC10GADd0qAK7wA+gHcQrANYBLMAHMccJGkx4PAAiahBgwxgAeiiYAFEADQAFOIBhABU4gBFVcHMrWwdnN08vMj4YMLJQmmCDGDkgA

@falsyvalues I'v tried this, it seems work.
const template = <T extends string>(name: T): Record<`${T}`, `${T}`> => ({
    [`${name}`]: name,
} as any);

https://www.typescriptlang.org/play?ts=4.2.0-dev.20201210&ssl=7&ssc=11&pln=5&pc=1#code/PTDGHsDsGcBcAJYFMC2AHANgQ2fAvPABSRYpIBc8A5AGbjhXwA+1ARlgE5UCU+AfEQDeAKBDxx8ANoADACSCSZAL7T4WaPAgxYAXUqKko4Eu4BuYcK1xEqTDiT54AHgAq8JAA9kkACYa4HACWkADmfMSkFPAu3JQASkgQHD5OcoIuKgA08GkZ0gJ4AoQiElJpBip68AaZwkpqGliQAJ5mFlYIAG5YGACuSAD6AO7gHADWwSGOyOjYyIQARHTgC2bwYgCiABoAChsAwi4bACKaUNbdfYMj45OUgvDLlEv0C6bwSsJAA

Hi @dishuostec!
Thanks for that. Looks returning type and as any did the job but would be nice achieve that without casting to any. @RyanCavanaugh Please take a look on example above.


To make TokenBucketImpl serializable

Would that be possible? I'm trying to manage the buckets on a shared cache (Hazelcast). To do that TokenBucketImpl must be serializable.

I'm note sure this is the best way of doing that..

Could you please let me know if there are there any plans to support distributed buckets with this library?
Thanks!


fix(uosc): remove quotation marks and semicolon

uosc wasn't recognising the config as it was surrounded by quotation marks and had a semicolon at the end

LGTM! Before I merge this, would you mind renaming this PR to something that starts with fix(uosc):?

Thank you!


rpc-sts: add config options for stake-weighted qos

Problem
no simple way to configure an rpc node to send transactions to staked peer(s), as per stake-weighted qos
Summary of Changes

adds --rpc-send-transaction-tpu-peer HOST:PORT to specify a specific tpu peer to send transctions to, instead of the current leader. this argument may be passed multiple times.
adds --rpc-send-transaction-also-leader to continue sending to the current leader even though tpu peers have been specified with --rpc-send-transaction-tpu-peer HOST:PORT

Codecov Report
Attention: Patch coverage is 64.28571% with 5 lines in your changes are missing coverage. Please review.

Project coverage is 81.9%. Comparing base (218de23) to head (564663c).

Additional details and impacted files
@@           Coverage Diff           @@
##           master     #197   +/-   ##
=======================================
  Coverage    81.8%    81.9%
=======================================
  Files         837      837
  Lines      226496   226509   +13
=======================================
+ Hits       185476   185569   +93
+ Misses      41020    40940   -80

Is this ready for review?

v1.18 backport?

v1.18 backport?

prolly 1.17 too


Implemented recursive repeat + Coding Train logo

Implemented repeat as per my suggestion during the livestream:

Define '[' and ']' as tokens.
Consume tokens sequentially.
Maintain a stack of token sequences.
Record all tokens to the top sequence on the stack.
'[' pushes a new sequence to the top of the stack.
']' pops a sequence from the top of the stack (or repeats it).

Repeat is implemented by re-inserting the tokens from the sequence at the top of the stack to the front of the token stream.

This has actually been super interesting!
Here's some things I've come up with:
Radiation symbol

Shining sun

Exploding star

Thorny wreath

Added coding train logo...in Logo

I don't like my first attempt. It had a high number of string and array operations and had to juggle the data around.
A small amount of Logo with a repeat 1000 would cause a huge amount of array juggling.
I changed to a better approach.
No regular expressions and next-to-no string/array manipulations.
It only iterates over the string 1 character at a time without modifying it.
Repeat is implemented by jumping backwards in the string and continuing traversal.
The stack only contains the starting index of the repeat and how many times to repeat it (just 2 integers, no longer contains an entire copy of the buffer)
It's also much simpler and easier to read and it's way faster. You can write huge repeats and still edit the code in real-time.

Thank you, this was so fun to include in the live stream! ❤


Nodejs App crashes at random

[REQUIRED] Step 2: Describe your environment

Operating System version: macos 11.6
Firebase SDK version: 8.13
Firebase Product: messaging
Node.js version: 16.4.1
NPM version: 7.18

[REQUIRED] Step 3: Describe the problem
My app is crashing at random times, possibly when disconnected from the network
Steps to reproduce:
Disconnect from network
Log
/Applications/MAMP/htdocs/godial-server/node_modules/firebase-admin/lib/utils/error.js:42
        var _this = _super.call(this, errorInfo.message) || this;
                           ^

FirebaseMessagingError: Requested entity was not found.
    at FirebaseMessagingError.FirebaseError [as constructor] (/Applications/MAMP/htdocs/godial-server/node_modules/firebase-admin/lib/utils/error.js:42:28)
    at FirebaseMessagingError.PrefixedFirebaseError [as constructor] (/Applications/MAMP/htdocs/godial-server/node_modules/firebase-admin/lib/utils/error.js:88:28)
    at new FirebaseMessagingError (/Applications/MAMP/htdocs/godial-server/node_modules/firebase-admin/lib/utils/error.js:254:16)
    at Function.FirebaseMessagingError.fromServerError (/Applications/MAMP/htdocs/godial-server/node_modules/firebase-admin/lib/utils/error.js:287:16)
    at Object.createFirebaseError (/Applications/MAMP/htdocs/godial-server/node_modules/firebase-admin/lib/messaging/messaging-errors.js:34:47)
    at /Applications/MAMP/htdocs/godial-server/node_modules/firebase-admin/lib/messaging/messaging-api-request.js:76:42
    at runMicrotasks (<anonymous>)
    at processTicksAndRejections (node:internal/process/task_queues:96:5) {
  errorInfo: {
    code: 'messaging/registration-token-not-registered',
    message: 'Requested entity was not found.'
  },
  codePrefix: 'messaging'
}

Hi @theavijitsarkar it is difficult to diagnose without looking at a complete repro. Does this happen when you try to use the messaging API without a network connection? Please provide a complete code block or a project to reproduce the issue if you can (please omit any sensitive information) and we can further investigate this. Thanks!

Closing due of inactivity. Please let us know if you still face this problem and we can re-open later.

Hi Team,
Issue :
Facing inconsistent push notifications. With same token without any changes push notifications works for some times and does not works some times.
Platform : Android and IOS
Codebase : node.js
Firebase-admin sdk version : 12.4.0
Node.js version: Node.JS 20
Sample node code :
let message = {
  tokens: array of fcm tokens
  notification:
    {
       title: "test_title",
       body: push notification message,
    },
  data:
    {
       data: payload,
       alertType: "crash",
    },
};

let response = await firebaseAdmin.messaging().sendEachForMulticast(message);

The error message is random and either one of them

{"success":false,"error":{"code":"messaging/mismatched-credential","message":"SenderId mismatch"}}

{"success":false,"error":{"code":"messaging/unknown-error","message":"Operation is not implemented, or supported, or enabled. Raw server response: "{"error":{"code":501,"message":"Operation is not implemented, or supported, or enabled.","status":"UNIMPLEMENTED"}}""}}

{"success":false,"error":{"code":"messaging/registration-token-not-registered","message":"Requested entity was not found."}}


WIP: Restyle the status bar

Fixes #3669
Make the status bar work with different fonts, viewports etc. and always align.

More work needed, this code is used for submissions, projects, on dashboard etc. Only tested on submissions so far.

@frjo doing user testing it looks like a huge improvement! I did noticell a few weird things come up, like the checks were now a little odd looking and the red progress indicator wouldn't always make it to the needed stage:

I cleared my cache & tested in an incognito window to confirm and the results were the same, but let me know if there's another step I might've missed.

@wes-otf Thanks for testing. Fixed the bug where the bar did not get filled on accept/dismissed status.
That the checkmarks are not aligned in the dot is most likely font related. With the system-ui font stack you get different fonts on different plattforms. Needs to be adjusted so it looks nice everywhere.
In your screenshot the checkmark is not white like it is for me, another browser/plattform issue I guess.

@frjo ahh that totally makes sense. My testing was with Firefox & MacOS if that's helpful. Would it be better to potentially use the heroicons check instead of the ✔ character so the appearance is guaranteed regardless of platform?

I'm definitely not well versed history of this feature so apologies if that's something that's already been tried ^

The checkmark should be white for all now.
If we can not easily make it center for all browsers/plattforms, replacing it with a SVG or maybe force it to another font is a good options I think.

@wes-otf  Now I think I finally found the issue. The first fix did nothing in Chrome.
Chrome does not set colour on unicode checkmark 2714, it works on 2713. Apparently 2714 is considered an emoji and Chrome does not change colour on these, Webkit does.

@wes-otf Do you feel this is good to go now? Planing to make a new release this week.


HA 2024.1.0 deprecations

Version of the integration
2.12.2
Configuration
n/a
Describe the bug
Updated to HA version 2024.1.0b0 and saw the following warnings:

[ ] STATE_CLASS_MEASUREMENT was used from tapo, this is a deprecated constant which will be removed in HA Core 2025.1. Use SensorStateClass.MEASUREMENT instead, please create a bug report at https://github.com/petretiandrea/home-assistant-tapo-p100/issues
[ ] STATE_CLASS_TOTAL_INCREASING was used from tapo, this is a deprecated constant which will be removed in HA Core 2025.1. Use SensorStateClass.TOTAL_INCREASING instead, please create a bug report at https://github.com/petretiandrea/home-assistant-tapo-p100/issues
[ ] DEVICE_CLASS_SIGNAL_STRENGTH was used from tapo, this is a deprecated constant which will be removed in HA Core 2025.1. Use SensorDeviceClass.SIGNAL_STRENGTH instead, please create a bug report at https://github.com/petretiandrea/home-assistant-tapo-p100/issues
[ ] ENERGY_KILO_WATT_HOUR was used from tapo, this is a deprecated constant which will be removed in HA Core 2025.1. Use UnitOfEnergy.KILO_WATT_HOUR instead, please create a bug report at https://github.com/petretiandrea/home-assistant-tapo-p100/issues
[ ] POWER_WATT was used from tapo, this is a deprecated constant which will be removed in HA Core 2025.1. Use UnitOfPower.WATT instead, please create a bug report at https://github.com/petretiandrea/home-assistant-tapo-p100/issues
[ ] TIME_MINUTES was used from tapo, this is a deprecated constant which will be removed in HA Core 2025.1. Use UnitOfTime.MINUTES instead, please create a bug report at https://github.com/petretiandrea/home-assistant-tapo-p100/issues

#666


Update azure-stack-kubernetes-aks-engine-known-issues.md

aks-engine update is not supported, updating so it reads aks-engine upgrade.

@jadarsie : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#sign-off


tidb build trigger by upstream ci

pr merged commit trigger tidb build ci, binary is required by other integration test

lgtm


[NO MRG] Test CI

This was opened last week while CI was initially being set up in this repo. We now have that (#56, for example) and are working on the rest in #53 and associated PRs. Closing this.


Make IPv4/IPv6 configurable

Now the setup automatically chooses IPv4 or IPv6
according on how the host address got resolved (as
other tools usually do); adding two explicit
flags to let the use force IPv4 or IPv6 on mixed
enviroments.

Fixes https://bugzilla.redhat.com/1676928


Something for mac M1?

1, failed to build on mac mini m1

try latest master

Already better)

I have linker problem ...
ld: library not found for -lsodium
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [chia_plot] Error 1
make[1]: *** [CMakeFiles/chia_plot.dir/all] Error 2
make: *** [all] Error 2

I did the instructions for the mac from the readme and just changed the link sources
Any hint about this?
Thanks for the great work!

I have linker problem ...
ld: library not found for -lsodium
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [chia_plot] Error 1
make[1]: *** [CMakeFiles/chia_plot.dir/all] Error 2
make: *** [all] Error 2

I did the instructions for the mac from the readme and just changed the link sources
Any hint about this?
Thanks for the great work!

Having the same on intel macOS too

switched to a2ef17b9a1e13149bd7a89f24c34202a2c602a5b commit and there it compiles

Saw this when lib tool installed, is this causing the issue? I can't get mine to compile either.
In order to prevent conflicts with Apple's own libtool we have prepended a "g" so, you have instead: glibtool and glibtoolize.

clang: warning: argument unused during compilation: '-fmax-errors=1' [-Wunused-command-line-argument]
ld: library not found for -lsodium
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [chia_plot] Error 1
make[1]: *** [CMakeFiles/chia_plot.dir/all] Error 2
make: *** [all] Error 2
same issue here
Big Sur on X86

https://github.com/madMAx43v3r/chia-plotter/commit/47394ee7ee8a683edc9504f255291d1b92289174
I can build by removing sodium on CMakeLists.txt

Same here.


Draft -- new format for container section checksums.

Fixes # .
Changes proposed in this PR:

postponing this until that image itself is stable in provider...


Upgrade Guzzle 3 to maintained version // Symfony 3 compability

As sendgrid-php depends on guzzle v.3 that isn't maintained and guzzle v.3 requires an old version of symfony/event-dispatcher (2.x) it isn't possible to upgrade to symfony 3.
Can you please upgrade to a maintained version, like 5 or 6. Or even to 4 that still isn't maintained but doesn't have this dependency.
Thanks!

I agree with this request, experiencing the same situation with symfony 3. It also doesn't help that we have a few internal libraries that are already using guzzle 6.

@johanwilfer @markbijl,
The new version of this library no longer requires Guzzle. You can check it out here: https://github.com/sendgrid/sendgrid-php/tree/v3beta
It comes out of beta shortly.
Thanks!

Cool. You have a big scary warning about using the beta. Is it safe thought?

@johanwilfer I believe it's safe, but you may want to wait until we are officially out of beta.


Question: Support of V2 registry api?

Does the recent version on nuget support the V2 registry  api?

We don't have any support for the registry API since it wasn't a top pri for our P0's. Would you be willing to try a contribution?
See #165 for tracking.

See #185, he has implemented this


plugin doesn't work on slaves, only on build-in(master)

Jenkins and plugins versions report
Jenkins: 2.440.1
OS: Linux - 5.10.205-195.807.amzn2.aarch64
Java: 17.0.10 - Eclipse Adoptium (OpenJDK 64-Bit Server VM)
amazon-ecr:1.114.vfd22430621f5
amazon-inspector-image-scanner:297.vb_d6333ef3680
What Operating System are you using (both controller, and any agents involved in the problem)?
NAME="Amazon Linux"
VERSION="2"
ID="amzn"
ID_LIKE="centos rhel fedora"
VERSION_ID="2"
PRETTY_NAME="Amazon Linux 2"
ANSI_COLOR="0;33"
CPE_NAME="cpe:2.3:o:amazon:amazon_linux:2"
HOME_URL="https://amazonlinux.com/"
SUPPORT_END="2025-06-30"
Amazon Linux release 2 (Karoo)
Reproduction steps
1.launching a pipeline on a slave
2. all actions take place on the master
Replayed [#106](http://jenkins.com/job/cdmnext-amazon-inspector-scan/106/)
[Pipeline] Start of Pipeline
[Pipeline] node
Running on [STAGE-ARM64](http://jenkins.com/computer/STAGE%2DARM64/) in /home/ec2-user/workspace/cdmnext-amazon-inspector-scan
[Pipeline] {
[Pipeline] stage
[Pipeline] { (Declarative: Checkout SCM) ([hide](http://jenkins.com/job/cdmnext-amazon-inspector-scan/107/console#))
[Pipeline] checkout
The recommended git tool is: git
Fetching changes from the remote Git repository
Checking out Revision a2b8af0aa3c97c26eead02a1e8799b172e3f938a (refs/remotes/origin/master)

Expected Results
plugin should run on the slave node and download Amazon Inspector SBOM Generator to the slave, not to the master
Actual Results
pipeline {
    agent {
        label 'ARM64'
    }
    environment {
        AWS_REGION = 'us-east-1'
        ECR_REPO = 'arm64-base'
        ID = 'xxxxxxxxxx'
        URL_REGISTRY = "xxxxxxxxxx.dkr.ecr.us-east-1.amazonaws.com"
    }

    stages {
        stage ('amazon-inspector-image-scanner') {
            steps {
                script {
                    step ([
                        $class: 'com.amazon.inspector.jenkins.amazoninspectorbuildstep.AmazonInspectorBuilder',
                        sbomgenSource: 'linuxArm64',
                        archivePath: '${URL_REGISTRY}/arm64-base:base-image',
                        awsRegion: 'us-east-1',
                        iamRole: 'arn:aws:iam::${ID}:role/dev-ecr-role',
                        credentialId: '',
                        isThresholdEnabled: 'false',
                        countCritical: 0,
                        countHigh: 0,
                        countLow: 10,
                        countMedium: 5,
                    ])
                }
            }
        }
    }
}

when specifying another slave, the plugin downloads all files to the master; when launched manually, the plugin searches for Amazon Inspector SBOM Generator binary files on the master, not on the slave
Anything else?
No response
Are you interested in contributing a fix?
No response

@waltwilo
I don’t know what other log can be added, but the pipeline is started on the slave, but the folder where the generator is downloaded is the master’s folder. If I manually specify the path, the plugin looks for it on the master, not on the slave
Started by user [admin](http://jenkins.com/user/admin)
Obtained jenkins/jobs/scan/Jenkinsfile-auth from git git@bitbucket.org:repo/deploy.git
[Pipeline] Start of Pipeline
[Pipeline] node
Running on [ARM64](http://jenkins.com/computer/ARM64/) in /home/ec2-user/workspace/cdmnext-amazon-inspector-scan
[Pipeline] {
[Pipeline] stage
[Pipeline] { (Declarative: Checkout SCM)
[Pipeline] checkout
The recommended git tool is: git
Fetching changes from the remote Git repository
 > git --version # timeout=10
 > git --version # 'git version 2.40.1'
using GIT_SSH to set credentials cdmnext
Checking out Revision 31d3c839d12
Commit message: "Fix"
[Pipeline] }
[Pipeline] // stage
[Pipeline] withEnv
[Pipeline] {
[Pipeline] withEnv
[Pipeline] {
[Pipeline] stage
[Pipeline] { (Docker image pull)
[Pipeline] sh
+ aws ecr get-login-password --region us-east-1
+ docker login --username AWS --password-stdin ****************.dkr.ecr.us-east-1.amazonaws.com
WARNING! Your password will be stored unencrypted in /home/ec2-user/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store

Login Succeeded
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (amazon-inspector-image-scanner)
[Pipeline] script
[Pipeline] {
[Pipeline] step
Automatic SBOMGen Sourcing selected, downloading now...
Credential ID is null, this is not normal, please check your config. Continuing without docker credentials.
No credential provided, running without.
Making downloaded SBOMGen executable...
Running command...
[/tmp/sbomgen2002781832029439579/inspector_sbomgen/inspector-sbomgen-1.2.0/linux/arm64/inspector-sbomgen, container, --image,<PHONE_NUMBER>94.dkr.ecr.us-east-1.amazonaws.com/cdmnext-arm64-base:cdmnext-base-node-image]
Plugin execution ran into an error and is being aborted!
Exception:com.amazon.inspector.jenkins.amazoninspectorbuildstep.exception.MalformedScanOutputException: Sbom scanning output formatted incorrectly.
Sbom Content:
time="2024-06-05T07:14:46Z" level=info msg="Amazon Inspector SBOM Generator v1.2.0 - linux arm64 - Copyright 2024 Amazon.com, Inc. or its affiliates. All Rights Reserved"
time="2024-06-05T07:14:46Z" level=info msg="[/tmp/sbomgen2002781832029439579/inspector_sbomgen/inspector-sbomgen-1.2.0/linux/arm64/inspector-sbomgen container --image<PHONE_NUMBER>94.dkr.ecr.us-east-1.amazonaws.com/cdmnext-arm64-base:cdmnext-base-node-image]"
time="2024-06-05T07:14:46Z" level=info msg="writing log file to: /var/jenkins_home/.inspector-sbomgen/logs/inspector-sbomgen-log_2024-06-05_07-14-46.txt"
time="2024-06-05 07:14:46" level=info msg="initializing target artifact" file="coreV1.go:34:"
time="2024-06-05 07:14:46" level=info msg="created temporary staging directory: /var/jenkins_home/.inspector-sbomgen/artifact-cache3437680771" file="stagingdir.go:60:"
time="2024-06-05 07:14:46" level=info msg="checking if image is a tarball" file="imageInit.go:28:"
time="2024-06-05 07:14:46" level=info msg="checking if image exists in the local Docker daemon" file="imageInit.go:37:"
time="2024-06-05 07:14:46" level=info msg="checking if image can be downloaded from a remote registry" file="imageInit.go:46:"

It looks like its at least able to run Inspector Sbomgen which should mean its able to find the binary if its running on the agent.
Would you mind posting the logs located at the location below? If they seem to sensitive to post on github, feel free to open a ticket to aws support and it will make its way to the inspector-seceng team.
/var/jenkins_home/.inspector-sbomgen/logs/inspector-sbomgen-log_2024-06-05_07-14-46.txt

@waltwilo
time="2024-06-05 07:24:54" level=info msg="initializing target artifact" file="coreV1.go:34:"
time="2024-06-05 07:24:54" level=info msg="created temporary staging directory: /var/jenkins_home/.inspector-sbomgen/artifact-cache662253273" file="stagingdir.go:60:"
time="2024-06-05 07:24:54" level=info msg="checking if image is a tarball" file="imageInit.go:28:"
time="2024-06-05 07:24:54" level=info msg="checking if image exists in the local Docker daemon" file="imageInit.go:37:"
time="2024-06-05 07:24:54" level=info msg="checking if image can be downloaded from a remote registry" file="imageInit.go:46:"
time="2024-06-05 07:24:54" level=info msg="downloading remote container image: *************.dkr.ecr.us-east-1.amazonaws.com/arm64-base:base-node-image" file="imageInit.go:153:"

I checked several log files and they are the same

Hi, thanks for sending that. Based on the logs it seems like the binary is stuck downloading the image. The plugin should throw an error that's visible to you if something isn't working. Could you try running the plugin on a smaller image, like alpine:latest?

Closing this issue for now, feel free to re-open if the problem persists.

I have exactly the same problem as @spu-xb01.
The plugin is run from an agent but it looks for the binary in the master controller. Initially I was getting the error of 'not found'. When I realised the problem was that it was looking for the binary in the master, I copied it there and it finds it, but obviously the master does not have the permissions to access the repo or anything so the plugin still fails with a 401.
In any case we don't need or want to run this in the master. If the plugin is executed on an agent then the binary should be found and executed in the agent.

@waltwilo could we please re-open this issue?

I'm taking another look at this now.

I have a potential fix ready to go and will be merging it later today.

PR: https://github.com/jenkinsci/amazon-inspector-image-scanner-plugin/pull/76

The above PR has been merged, let me know if this fixes your issues.


add method zipObj

Codecov Report

Merging #143 (0440e62) into main (ecbd48d) will increase coverage by 0.01%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main     #143      +/-   ##
==========================================
+ Coverage   97.10%   97.12%   +0.01%
==========================================
  Files         181      183       +2
  Lines        1832     1841       +9
==========================================
+ Hits         1779     1788       +9
  Misses         53       53

Impacted Files
Coverage Δ

ramda/__init__.py
100.00% <100.00%> (ø)

ramda/zipObj.py
100.00% <100.00%> (ø)

ramda/unnest.py
100.00% <0.00%> (ø)

Continue to review full report at Codecov.

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


Test if reverting installing Java by ASDF fixes #520 ?

Relates #520

This initially failed to build because the asdf cache still had the Java shim.
I've now manually wiped the cache and retriggered a build, let's see...

This brings it back down to 3'!
Interesting. Not sure yet why...


Bug: 'duplicate navigation' console error

See sentry for details.
Let's see if we can reduce or eliminate these errors

Closing as hopefully resolved by https://github.com/jac-uk/apply/issues/1053


fixed grammatical errors

Fixed grammatical errors through out helpful material page.
Added helpful material link to Codenewbie.
Added Contributor tag ;)

Awesome work! If you have time to resolve the conflicts i would be happy to merge this 👍

I was able to fix the conflict. Thank you for this opportunity!


Run current object that is open in the editor

Would that be possible?

If it is a Page, Table or Report - Yes.


Adds identity operator

Is this pull request associated with an issue(s)?
No
Description
See title.
TODOs
R2g.

🚀 [bumpr] Bumped! New version:v1.3.10 Changes:v1.3.9...v1.3.10


Consider rename Chinese translations from zh-cn/zh-tw style to zh-Hans/zh-Hant

Language
Chinese
What's the issue?
In Hugo's i18n processor (used for i18n datetime string), language code for Chinese is in zh-Hans/zh-Hant style and Congo's i18n config file names are in zh-CN/zh-TW style. This creates a discrepancy in user's language code selection and results in the following scenerio:

where datetime(which is handled by hugo) is in English and other stuff like word count (which are handled by congo) are in chinese.
Theme version
main
Hugo version
latest
Relevant Hugo log output
No response

I don't see this requirement has anything to do with the code. I couldn't find anything on Hugo's docs that says localized date and time should use zh-Hans/zh-Hant, but my guessing is that it's implemented deeper in golang rather than hugo. Can you cite your source for this information?
Anyway, I did find this snippet on Hugo's forum, which seems like what you're trying to achieve. Hope this helps.

Hi, sorry for not having cited the source.
Localization of datetime string (also currencies, etc) is done in this pkg https://github.com/gohugoio/locales , and language code for chinese is in zh-Hans/zh-Hant format.

https://github.com/jpanther/congo/pull/805 btw, in this pr, zh-han should be renamed to zh-hans to conform to the code used in gohugoio/locales

In addition, we may want to add some documentation to hint to future translation contributors that they should use codes available in gohugoio/locales so we won't bump into the same issue again.

True. This is really a common mistake because most websites use zh-cn as the de facto language code for Chinese(simplified) although w3c suggests zh-Hans (https://www.w3.org/International/articles/language-tags/ ). Plus there are also styles like zh-cmn (same for zh-Hans), and it is really a little messy here.

However, I want to propose that we should change zh-CN to zh-Hans-CN and zh-TW to zh-Hant-TW for better adaptability to fit customs in different regions.

As per my experience, zh-Hans (the simplified version of Chinese) is normally consistent among its usage regions (China Mainland, Macau and Singapore), there are slight differences for zh-Hant (traditional Chinese) between the Hong Kong dialect (which includes words and phrases in Cantonese) and the rest of its usage. Since current translations have only two of them, zh-Hans and zh-Hant naming should be enough because most language processors will fallback to these two and we can create regional translations when we have them.

As per my experience, zh-Hans (the simplified version of Chinese) is normally consistent among its usage regions (China Mainland, Macau and Singapore), there are slight differences for zh-Hant (traditional Chinese) between the Hong Kong dialect (which includes words and phrases in Cantonese) and the rest of its usage. Since current translations have only two of them, zh-Hans and zh-Hant naming should be enough because most language processors will fallback to these two and we can create regional translations when we have them.

Hmm...that's different from my experience.
I cloned a copy of gohugoio/locales and dug into all zh languages and found them to have multiple differences in ways of formatting date, time, and currencies. Just to name a few examples:

Era
Month
Chinese Yuan
Taiwan Dollar

zh_Hans
公元
一月
CNY
TWD

zh_Hans_CN
公元
一月
CNY
TWD

zh_Hans_HK
公元
一月
CN¥
TWD

zh_Hant
西元
1月
CN¥
$

zh_Hant_HK
公元
一月
CNY
NT$

zh_Hant_TW
公元
一月
CNY
TWD

As the author of zh-TW.yaml, I cannot speak for other regions using Traditional Chinese. In addition, I would suggest that they create their own translation to fit their needs.
In this case, I would say that we create four translations: zh_Hans, zh_Hans_CN, zh_Hant, zh_Hant_TW, and let the user choose their favorite.

This is definitely a topic where I do not have relevant knowledge or experience to make a call on the best way forward. My only concern is that the codes chosen work with Hugo and don't cause any implementation issues but it seems like that is not a problem with this issue.

In this case, I would say that we create four translations: zh_Hans, zh_Hans_CN, zh_Hant, zh_Hant_TW, and let the user choose their favorite.

@tomy0000000 Ofc, it would be best to have the separated. Since we currently have not authors for other dialects, we may put up a notice so that people using other dialects could use fallback ones.

This is definitely a topic where I do not have relevant knowledge or experience to make a call on the best way forward. My only concern is that the codes chosen work with Hugo and don't cause any implementation issues but it seems like that is not a problem with this issue.

@jpanther Hi! As for the codes chosen, did you mean the formerly chosen ones (zh-TW, zh-CN)? It did work for most of the parts. But when translating using hugo's built-in i18n module (datetime functions, etc), zh-CN and zh-TW won't be recognized as valid languages (although these two should also be listed as a common practice) and it will fallback to EN, as shown above.

I'm happy with the proposal to use zh_Hans, zh_Hans_CN, zh_Hant, zh_Hant_TW if that is the consensus here?

I'm happy with the proposal to use zh_Hans, zh_Hans_CN, zh_Hant, zh_Hant_TW if that is the consensus here?

Sounds good to me, let me know if you need help with this.

Looking at this in more detail now, I'm already confused due to my lack of understanding of the dialects involved. Is the plan then to duplicate zh-CN to both zh-Hans and zh-Hans-CN? If so, what is the difference between the two. I then presume we are moving zh-TW to zh-Hant-TW and then creating a new zh-Hant?
@tomy0000000 I might need to take you up on your offer to help with this!

Is the plan then to duplicate zh-CN to both zh-Hans and zh-Hans-CN?

Yes

If so, what is the difference between the two

Users who prefer a translation localized to China's custom can choose zh_Hans_CN, while others can choose zh_Hans for a more generalized translation. Congo will likely maintain multiple translations with the exact same content, but the differences are observable, say, for instance, date and time.

I then presume we are moving zh-TW to zh-Hant-TW and then creating a new zh-Hant?

Yes, that's also the case.

I'm willing to work on this, but I'm a bit busy for the next couple of days, so please allow me to take on this about 2 to 3 days later.

I'm happy to do simple move and replace, the part I'm confused about is what changes need to be made to distinguish between zh-Hant and zh-Hant-TW or can these both be duplicates just like the zh-CN change?

I've started a PR for this and have made the changes above. Have a look and let me know if you think this is sufficient.


[Epic]: Blockhound Compliance for (POST) /actions/execute API

Objective
We are expecting the following outcomes from this project:

Better Code Architecture i.e. Non-blocking code for the /actions/execute API
Reducing No of Pod Restarts thus enhancing the stability of the Appsmith platform. (This problem has been resolved by this fix. Also, refer)

As per our analysis of prod downtimes, we have observed that the pod restarts take place, when the /actions/execute API performs extremely slow. We have also seen a surge in REST API and MS SQL plugins whenever there is a prod downtime.
We want to check for this API optimization first.
Success Metrics

Metric

Blockhound callouts for /actions/execute API

0

JFR recording should not show blocking calls for execute API

0

*Note: Keeping the success metric as Blockhound compliance while we are also targeting for stability because at the end of the project, we should be at a better code architecture as the minimum required output.
Prioritised User Stories

User Story

Our Platform has a lot of blocking calls on the main thread

Developer Handoff Document in Figma
No response
Test Plan
No response
RACI matrix

Role
People

Responsible
@NilanshBansal     @ApekshaBhosale

Accountable
@NilanshBansal

Consulted
@nerbos @somangshu @yatinappsmith @rajatagrawal @ApekshaBhosale @nidhi-nair @manish535

Informed
@rohan-arthur @carinanfonseca @appsmithorg/query-js-pod

Closing this epic as the blockhound callouts for all the majorly used plugins (REST API, Postgres, MySQL, Mongo, MSSQL, SMTP, S3, Snowflake, GraphQL, and Gsheets) are resolved.
cc: @somangshu @yatinappsmith @ApekshaBhosale @carinanfonseca @rohan-arthur @appsmithorg/query-js-pod


melonDS: 0.9.5-unstable-2024-05-05 -> 0.9.5-unstable-2024-05-13

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for melonDS is: Work in progress Nintendo DS emulator
meta.homepage for melonDS is: https://melonds.kuribo64.net/
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes

Compare changes on GitHub

Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.9.5-unstable-2024-05-13 in filename of file in /nix/store/b2fx8jhhg6allwn3q2bivk4da0mkcs2v-melonDS-0.9.5-unstable-2024-05-13

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath

melonDS

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/b2fx8jhhg6allwn3q2bivk4da0mkcs2v-melonDS-0.9.5-unstable-2024-05-13 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A melonDS https://github.com/r-ryantm/nixpkgs/archive/70014d756730ba9b3566c60bc2bdfae4dc713891.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/70014d756730ba9b3566c60bc2bdfae4dc713891#melonDS

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/b2fx8jhhg6allwn3q2bivk4da0mkcs2v-melonDS-0.9.5-unstable-2024-05-13
ls -la /nix/store/b2fx8jhhg6allwn3q2bivk4da0mkcs2v-melonDS-0.9.5-unstable-2024-05-13/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review --extra-nixpkgs-config '{ allowInsecurePredicate = x: true; }' run on x86_64-linux 1

1 package built:

melonDS

Maintainer pings
cc @AndersonTorres @artemist @benley @SCOTT-HAMILTON for testing.

@NixOS/nixpkgs-merge-bot merge


HASH with stringified JSON values getting escaped

I'm successfully converting the dump.rdb file to a JSON document. My only problem is, is that nested JSON values (stringified) in a HASH are getting escaped.
Example:
[
    {
        "MYKEYPREFIX:KEY:123": { "timestamp":"1511469880891", "name": "abc", "data": "{\"prop1\":\"one\",\"prop2":\"two\"}" }
    }
]

This is the command I use:
rdb -c json -f my-output.json dump.rdb --type hash --key "MYKEYPREFIX.*" --escape raw

Is there a way that I could make it JSON-parse the items in a HASH that are JSON strings? That would save me from having to re-parse the document later on.
Thank you

Hi,
So i understand you're saving a JSON value inside a hash field, but from redis's perspective the hash contains strings, so when putting them into the JSON output they need to be quoted, and that also means escaping.
there's currently no way to change that, and even if we wanted, i'm not sure how we can distinguish between fields that should be quoted (like "abc" above), and fields that should not be quoted.

Yes, you got it; thanks for your quick response. How about creating a custom parser for certain key/values in a HASH that will JSON parse the string? Can it be done and is there any code examples? Anyway to do it from the command line? I need the "options" included that I pasted above (key-regex, JSON, file output, raw etc.).
Thanks again,

i understand you're now looking for a "private" solution, so you can either just modify your local code.
or if you rather not, then you can probably derive some class or monkey patch it.
sorry, i don't currently have the time to look for exact instructions.

Well, I was hoping I wasn't the only one that needed this, and if someone has solved this problem that they might have some sample code to post; something to point me in the right direction. Thanks for your help though, I appreciate it.


chore: bdd-ghfjxy-import-1584422286 to 0.0.1

chore: Promote bdd-ghfjxy-import-1584422286 to version 0.0.1

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

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


Bump to 2.4.2

Signed-off-by: Sayali Gaikawad<EMAIL_ADDRESS>Description
Bump to 2.4.2
Category
[Enhancement, New feature, Bug fix, Test fix, Refactoring, Maintenance, Documentation]
Why these changes are required?
What is the old behavior before changes and new behavior after changes?
Issues Resolved
[List any issues this PR will resolve (Is this a backport? If so, please add backport PR # and/or commits #)]
Testing
[Please provide details of testing done: unit testing, integration testing and manual testing]
Check List

[ ] New functionality includes testing
[ ] New functionality has been documented
[ ] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Codecov Report

Merging #1274 (4e52956) into 2.4 (8fdee46) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##              2.4    #1274   +/-   ##
=======================================
  Coverage   71.78%   71.78%
=======================================
  Files          88       88
  Lines        2027     2027
  Branches      269      274    +5
=======================================
  Hits         1455     1455
  Misses        509      509
  Partials       63       63

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

CI is blocked by https://github.com/opensearch-project/security/pull/2352 which in turn is blocked due to unavailability of build-tools:2.4.2-SNAPSHOT[1]. Once this is fixed, security can be added to 2.4.2 manifest so this CI get unblocked.
[1] https://d1nvenhzbhpy0q.cloudfront.net/snapshots/lucene/org/opensearch/gradle/build-tools/2.4.2-SNAPSHOT/maven-metadata.xml.

Closing this one, since 2.4.2 is not on the schedule for future release