Starjump

Your checklist for this pull request
Author name
Author: @skifli

About your game
It is a maze where you have to get to the star to finish each level, and sometimes there are keys you must first access for the star to work and teleport you to the next level.

How do you play your game?

WASD to move.
K to reset the level.
L to go the next level (if at a star and keys have been obtained).

Code
Check off the items that are true.

[x] The game was made using the Sprig editor.
[x] The game is placed in the in the /games directory.
[x] The code is significantly different from all other games in the Sprig gallery (except for games labeled "demo").
[x] The game runs without errors.
[x] The name of the file/game contains only alphanumeric characters, -s, or _s.
[x] The game name is not the same as the others from gallery

Image (If an image is used)

[!NOTE]
Not used.

[ ] The image is in the /games/img directory.
[ ] The name of the image matches the name of your file.

Thanks for your PR!

Thanks for your PR!! Where did you hear about Sprig?

Someone recommended it to me in the Hackclub slack, which I found from a GitHub Eduation newsletter.

Sorry, not sure what changes you requested so would you mind sending them here?

Oh wait I just realised it was the question, oops 😄.

Thanks for your PR!! Where did you hear about Sprig?

Someone recommended it to me in the Hackclub slack, which I found from a GitHub Eduation newsletter.

This month newsletter?

Thanks for your PR!! Where did you hear about Sprig?

Someone recommended it to me in the Hackclub slack, which I found from a GitHub Eduation newsletter.

This month newsletter?

Yep.

Sorry for the delay! Out of curiosity, did you use any game for inspiration?

No, but the idea for stars was from Terraria because I've been playing a lot of it recently.

Right but did you use any code from other game?

Right but did you use any code from other game?

Nope.

Wasn't misunderstanding was 2 different questions:) I'm asking bc i noticed some similarities in the timer mechanism

Wasn't misunderstanding was 2 different questions:) I'm asking bc i noticed some similarities in the timer mechanism

Ah ok 👍 .

again, did you use any code from other game?

(This won't stop you from get the console)

again, did you use any code from other game?

No, however I did use the code supplied in the getting started tutorial so maybe that is why it is similar?

Wasn't misunderstanding was 2 different questions:) I'm asking bc i noticed some similarities in the timer mechanism

Also which part do you mean by timer mechanism, I'm not sure what that is referring to.

oh wait, really sorry!! I noted the wrong PR number, this is to merge:)

oh wait, really sorry!! I noted the wrong PR number, this is to merge:)

Haha, it's fine, happens to the best of us.


Sprint 3 - Code/Test/Revise

Plans for sprint 3

To do:

complete field centric mecanum drive
program arm acording to controller mapping (subject to change)
add support beam
begin work on autonumous
finish wiring

Time Target

complete support beam, mecanum drive, and wiring by today
devise plans for autonomous and decide on a plan before end of week

begin programing next week(specific milestone to be determined)

for tele op(by end of sprint):

code, test and implement functions in blue boxes
devise detailed plans describing how each yellow function will be completed (action by action)

begin coding before end of sprint 3


not able to get the public and src folders while creating the react app tried installing using  npx and yarn ... but no use

I've faced this issue today. It was fixed when I connected to VPN. Turned out that our Russian authorities blocked some endpoint so some request related to cra template was infinitely throwed with timed out error.

i am also getting the same ..please anyone who know..help ASAP

Node version : v12.6.2
NPM : 6.14.4
Googled all the ways to find solution but Iam able to solve the issue .Please help me in fixing this issue.
Tired of doing all the things using yarn and npx ,npm
While creating app this is throwing as below and in the final folder and I am able to get only package.json, node_module, packagelok.json
info<EMAIL_ADDRESS>The platform "win32" is incompatible with this module.
info<EMAIL_ADDRESS>is an optional dependency and failed compatibility check. Excluding it from installation.
info<EMAIL_ADDRESS>The platform "win32" is incompatible with this module.
info<EMAIL_ADDRESS>is an optional dependency and failed compatibility check. Excluding it from installation.
============================================================
C:\Users\pc\Desktop>npm init react-app app-n
Creating a new React app in C:\Users\pc\Desktop\app-n.
Installing packages. This might take a couple of minutes.
Installing react, react-dom, and react-scripts with cra-template...
yarn add v1.22.4
[1/4] Resolving packages...
[2/4] Fetching packages...
info<EMAIL_ADDRESS>The platform "win32" is incompatible with this module.
info<EMAIL_ADDRESS>is an optional dependency and failed compatibility check. Excluding it from installation.
info<EMAIL_ADDRESS>The platform "win32" is incompatible with this module.
info<EMAIL_ADDRESS>is an optional dependency and failed compatibility check. Excluding it from installation.
[3/4] Linking dependencies...
warning "react-scripts > @typescript-eslint/eslint-plugin ><EMAIL_ADDRESS>has unmet peer dependency<EMAIL_ADDRESS>|| >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta".
[4/4] Building fresh packages...
success Saved lockfile.
success Saved 13 new dependencies.
info Direct dependencies
├─<EMAIL_ADDRESS>├─<EMAIL_ADDRESS>├─<EMAIL_ADDRESS>└─<EMAIL_ADDRESS>info All dependencies
├─<EMAIL_ADDRESS>├─<EMAIL_ADDRESS>├─<EMAIL_ADDRESS>├─<EMAIL_ADDRESS>├─<EMAIL_ADDRESS>├─<EMAIL_ADDRESS>├─<EMAIL_ADDRESS>├─<EMAIL_ADDRESS>├─<EMAIL_ADDRESS>├─<EMAIL_ADDRESS>├─<EMAIL_ADDRESS>├─<EMAIL_ADDRESS>└─<EMAIL_ADDRESS>Done in 332.55s.


[CT-403] [Feature] Allow programmatic access to macro properties

Is there an existing feature request for this?

[X] I have searched the existing issues

Describe the Feature
I would like to be able to access the properties of macros, such as names and tags, at runtime in a similar way as you can access the properties of sources using graph.sources.values().
Describe alternatives you've considered
It is possible to write a python script to parse a macros.yml file that contains macro properties to locate specific keywords. However, since dbt cannot execute arbitrary python scripts during execution, any functionality gained by said scripts requires developers to take an extra step of executing manually, which is likely to be forgotten since it is not a standard part of dbt.
Who will this benefit?
This feature would benefit users who want to use jinja to dynamically generate sql based on the current properties of macros. For example, I am using the method described here to manage Snowflake user-defined functions in dbt. While it is not difficult to add the "create_function" macro to a list in a create_udfs() macro, it would be really nice to save developers that step. Using jinja templating in the create_udfs() macro, one could loop through the macros configured in a yaml file (which, while not necessary, we want for the sake of documenting the arguments and output of each macro/function) and dynamically add any function with the tag udf to the create_udfs() macro.
I am currently using a similar method to populate a macro using the tags applied to sources via graph.sources.values(). It would be useful for anything configured in a yaml file to have those properties available when running dbt.
Are you interested in contributing this feature?
Unfortunately I do not have the bandwidth right now to try this as a first contribution.
Anything else?

UDF management method (also linked above): https://discourse.getdbt.com/t/using-dbt-to-manage-user-defined-functions/18
Slack thread: https://getdbt.slack.com/archives/C2JRRQDTL/p1647645997578909

Illustrative example of how this could work if macros were in the graph:
{% macro execute_macros() %}
{% if execute %}
        {%- for macro in graph.macros.values()
                | selectattr('resource_type', 'equalto', macro')
                | selectattr('tags') %}
            {%- if 'udf' in macro.tags -%}
                {{ macro.name }}();
                {%- do log("Ran operation " ~ macro.name , info=True) -%}
            {%- endif -%}
        {%- endfor -%}
        commit;
{% endif %}
{% endmacro %}

You've provided a nice example of how this would be useful. We don't include macro nodes in the "graph" (i.e. the DAG used for processing nodes in dbt) at this time, and adding them in the graph per se would throw off the way that a fairly large number of things work. There might be some other place that would work to store macro information, perhaps a separate macro manifest. Do you only want to loop through macro nodes?

👍 on the "UDF (but not only) management, it is definitely a needed feature. I ended up on this thread because it is the most recent one on the topic and I felt I needed to add my voice/use case for this feature.
A UDF is a way to keep queries more clean, store the logic somewhere else, keeping it compact and easier to maintain. Not everything can be solved with a macro that expands to inline SQL, because sometimes UDF are not even written in SQL, for example an external UDF in Databricks.
In other threads I saw considerations about UDF performances, well, I would live them to the developer or team creating UDFs. Maybe the trade-off speed vs code maintainability is acceptable for them.
We are also using the above mentioned method to create UDFs with macros, but what would be really nice to have is the possibility to invoke UDFs like
select {{ my_udf_function (column1, column2) }}
or
select {{ my_udf_function }}(column1, column2)
But I understand that this can be tricky and requires some work to be done. The benefit will be to have UDFs (but other objects too) as first class citizens in dbt.

@francescomucio: With something like DDO (or your own equivalent implementation), you can reference UDFs (or any other Snowflake object) like a regular DBT model:
select {{ ref('my_udf_function') }}(column1, column2)
@tiffanygwilson: This might also be interesting for you. 👆

We can expose "macros" variable in Jinja context, similar to other jinja context variables (not dbt project variables).
I am also trying to create a macro that need access to macro_sql and dependent macros of some other macro.

My main goal is to capture the state of a model and it's dependent macros when a model was executed, and use that information in --state parameter during SlimCI.
Different models in a project can be refreshed in different schedule (some daily, some hourly, weekly etc) so manifest.json from any single run would not represent current state of a database. I am trying to save the definition of each model and it macros in a database using a macro in post_hook. This post_hook could be set in project.yml.
Then, I am going to use above data in database to generate a manifest.json for --state parameter.  Since same macro can have different definition for different models, macro definition should be part of a resource node for this use-case. I am thinking of adding a field in ParsedNode called "dependent_macro_state" that will have it dependent macro's definition. When --state parameter is used with a new parameter called --macro-state-in-respective-node then the --select state:modified selector will read the macro_sql from "dependent_macro_state" property instead of the root macros. Default behavior will be how its working currently. I am going to create an Issue for this to start a discussion.
For the 1st part, currently, we can already get the model definition from model jinja variable but not the macros definition.

Even if  UDF becomes 1st class object, people might want to access macros definition in jinja context for various use case.
We may also need to expose udf definition in jinja context.

I'd like programmatic access to macro properties, so I can make a list of macros based on their folder location.


Clean up packaging of conversion methods

Continued from #1157. We should:

Do a review pass and make some of the AlignmentRecordConverter methods private
Make SAMFileHeaderWritable private to ADAM, and change the AlignmentRecordConverter.convert signature to take a SAMFileHeader

Also, contributed for discussion by @heuermh:

Also, I think it's more useful to have the conversion utility at the record level, rather than the RDD level, since then it can be used outside Spark.

If that were the case, it would be preferable to me to have the conversion stuff written in Java instead of Scala and be a library external to ADAM.

A proposal for said external java library here:
https://github.com/heuermh/bdg-convert
It is inspired by Commons Convert but uses Guice instead of a custom registry.  Then I like the concept of htsjdk's ValidationStringency but don't like the name.  Please propose something better (and shorter) than ConversionStringency.

I've started fleshing out conversions from Biojava and my own dishevelled library, here in a separate repo due to LGPL licensing of the dependencies:
https://github.com/heuermh/dishevelled-bio/tree/master/convert
It also depends on the bdg-formats Sequence/Slice/Read pull request, so won't build without the right snapshot dependency.
I think there is enough in the bdg-convert repo and here to demonstrate the proposal.

Split the external library proposal into a separate issue #1197 for further discussion.  Let's keep this issue focused on the two visibility items mentioned above.

I'm triaging this to 0.24.0.


python3Packages.foxdot: enable darwin build

Motivation for this change
Things done

enable darwin build by not requiring SuperCollider.

User can install the official binary of SuperCollider and use that.

enable supercollider build on aarch64-linux

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 via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.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

[ ] Fits CONTRIBUTING.md.

@GrahamcOfBorg build supercollider python3Packages.foxdot


Sema: Handle protocol compositions containing type variables in matchTypes() [5.1]

We would previously fail to match something like (C<$T1> & P) against
(C<Int> & P) when the constraint kind was <= Subtype, because we would
fall back to a type equality test in that case.
However, this was only valid for protocol compositions without superclass
constraints since the superclass could contain a type variable on one
side of the constraint.
Fix this by adding support for protocol composition types to
matchDeepEqualityTypes().

@swift-ci Please test


Incorrect error codes on access to denied resources

When trying to access resources (secrets, topic, app) to which the access has been explicitly denied, Dapr should return consistent error codes (e.g. 403). Like In Dapr v0.11.2, when trying to access secret that is not in the allowedSecrets on app that has defaultAccess set to deny in the configuration Dapr returns, as expected, 403 Forbidden.
However, when trying to publish to a topic which is not listed in the Pub/Sub component publishingScopes the HTTP status code returned is 500 Internal Server Error, even though the error indicates lack of access:
{
  "errorCode":"ERR_PUBSUB_PUBLISH_MESSAGE",
  "message":"topic test is not allowed for app id app2"
}

Similarly when trying to invoke an app from an app which is not listed in the allow access control policy, the HTTP status code returned is 500, even though the error indicates lack of access:
{
  "errorCode":"ERR_DIRECT_INVOKE",
  "message":"rpc error: code = PermissionDenied desc = access control policy has denied access to appid: nginx-ingress operation: counter verb: POST"
}

Changing 500 to 403 statuscode makes sense for pubsub.  @yaron2  any thoughts ?
@vinayada1 Can you please double-check why it returns 500 instead of 403?
{
  "errorCode":"ERR_DIRECT_INVOKE",
  "message":"rpc error: code = PermissionDenied desc = access control policy has denied access to appid: nginx-ingress operation: counter verb: POST"
}

#2338

I can take this up if unassigned

@wcs1only  Please, check if the work on this issue is included in #2338, if so, close this.

Keeping this separate from #2338 (which is ready), while I figure out a good way to surface this error from the Publish callback function.

Fix is out for the pubsub issue. As for direct Invoke, Mark and I were unable to reproduce, so this may have been fixed already as part of another effort.


UI for updating leaderboards

Codecov Report

Merging #12 (3c90c0f) into develop (4832d01) will increase coverage by 0.78%.
The diff coverage is 100.00%.

@@             Coverage Diff             @@
##           develop      #12      +/-   ##
===========================================
+ Coverage    93.72%   94.50%   +0.78%
===========================================
  Files           38       41       +3
  Lines          446      510      +64
  Branches        51       67      +16
===========================================
+ Hits           418      482      +64
  Misses          27       27
  Partials         1        1

Impacted Files
Coverage Δ

src/components/RadioGroup.jsx
100.00% <ø> (ø)

src/components/TextInput.jsx
100.00% <ø> (ø)

src/components/tables/TableHeader.jsx
100.00% <100.00%> (ø)

src/modals/LeaderboardDetails.jsx
100.00% <100.00%> (ø)

src/components/Select.jsx
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 4832d01...3c90c0f. Read the comment docs.


Suggestions on how to improve docs (no rules read from config file)?

I'm new to trafik (and like it a lot, THANKS!).
I spent more time than I will happily admit trying to understand why the following configuration file didn't seem to do anything at all:
defaultEntryPoints = ["http"]

[entryPoints]
  [entryPoints.http]
  address = ":80"

[web]
address = ":8086"

[backends]
  [backends.backend1]
    [backends.backend1.servers.server1]
    url = "http://<IP_ADDRESS>:8080"

[frontends]
  [frontends.frontend1]
  backend = "backend1"
    [frontends.frontend1.routes.test_1]
    rule = "PathPrefix:/foo/bar/test-1"

It turns out that if you want traefik to read rules from the file that it's already happily reading, you must add a [file] line, even though it's already reading the file, e.g.
# ...
[file]
[backends]
  [backends.backend1]
    [backends.backend1.servers.server1]
# ...

I assumed (dangerous word, that...) that I only needed a [file] section if I wanted to read from some other file.
I'd like to add a couple of explanatory lines to the documentation, but am unsure what to suggest.  My best idea is to add something after the first sentence of the file backend docs.  It might also be useful to put it someplace more obvious.
There might also be a bug/enhancement here, that any {back,front}ends encountered while parsing the configuration file should be taken to be static configuration, obviating the need for the [file] line.  I don't know the code structure well enough to say whether that's crazy talk or a reasonable idea.
It might also be an error to have a config file that doesn't define any {back,front}ends (which is what my starting point was doing...), but I may be missing something.
Feedback?
Thanks!

Hi @hartzell

I assumed (dangerous word, that...) that I only needed a [file] section if I wanted to read from some other file.

In fact, we took this opposite point of view. Traefik has a static configuration and a dynamic configuration http://docs.traefik.io/basics/#configuration. If you want to use a file to configure your dynamic configuration  (frontends/backends), you need to enable [file] and provide a filname. If you want to put your rules in your global toml configuration file, just leave filename empty ;)
Makes sense ?

When you explain it clearly, it's easy enough to understand.  It's not the only way to think about, and certainly isn't the thing that occurs to me first.
It seems like it's worth a line of extra docs somewhere.  Perhaps an additional comment in the sample file or ....

@hartzell agreed. Also, it's not entirely clear IMO what exactly is allowed in the extra config file. For instance can I add my acme config to rules.toml? (which would be fantastic to be honest)
Based on the documentation I'd think you can only put front- and backend configuration in rules.toml.

I'll close this issue, because I think the question is answered, but feel free to continue the conversation.


chore: rebase satp-dev onto upstream/main

Also fixing a few other bugs which were all necessary to make it work
after a rebase onto upstream/main as of 2024-10-10.

The tsconfig.json file in the root did not contain a reference to the
package at packages/cactus-plugin-ccmodel-hephaestus so it was being
excluded from the compilation.
express version was not up to date with the rest of the monorepo which

Signed-off-by: Peter Somogyvari<EMAIL_ADDRESS>Pull Request Requirements

[x] Rebased onto upstream/main branch and squashed into single commit to help maintainers review it more efficient and to avoid spaghetti git commit graphs that obfuscate which commit did exactly what change, when and, why.
[x] Have git sign off at the end of commit message to avoid being marked red. You can add -s flag when using git commit command. You may refer to this link for more information.
[x] Follow the Commit Linting specification. You may refer to this link for more information.

Character Limit

[x] Pull Request Title and Commit Subject must not exceed 72 characters (including spaces and special characters).
[x] Commit Message per line must not exceed 80 characters (including spaces and special characters).

A Must Read for Beginners
For rebasing and squashing, here's a must read guide for beginners.

Hmm. Seems like the conflicts are unavoidable and the only way to fix them is to force push directly to satp-dev so I'll just do that instead of this PR.
cc: @RafaelAPB


FileNotFoundError， ValueError

version

Python 3.10.13
terminal-plot  2.1.0
tensorboard                2.14.1
tensorboard-data-server    0.7.1

event file existed. tensorboard wrok fine with firefox.
I tried not add \ in filepath, but got another err.
err log
(310) [mifen@hp tmp]$ ls results/tb_logs/ippo_env\=8_adam_gae__jinan-1__2024-07-16_08-59-03/
events.out.tfevents.1721091543.amax

(310) [mifen@hp tmp]$ termplot 'results/tb_logs/ippo_env=8_adam_gae__jinan-1__2024-07-16_08-59-03/events.out.tfevents.1721091543.amax'
Traceback (most recent call last):
  File "/home/mifen/.conda/envs/310/bin/termplot", line 8, in <module>
    sys.exit(run())
  File "/home/mifen/.conda/envs/310/lib/python3.10/site-packages/termplot/main.py", line 481, in run
    main(_args)
  File "/home/mifen/.conda/envs/310/lib/python3.10/site-packages/termplot/main.py", line 441, in main
    plot_logic(
  File "/home/mifen/.conda/envs/310/lib/python3.10/site-packages/termplot/main.py", line 370, in plot_logic
    _plot_for_one_run(plotter, figure_data, data_source.get_consolidated_stats(), i)
  File "/home/mifen/.conda/envs/310/lib/python3.10/site-packages/termplot/main.py", line 312, in _plot_for_one_run
    x_val, y_val = figure_data.get_series(
  File "/home/mifen/.conda/envs/310/lib/python3.10/site-packages/termplot/data_source/tensorboard_source.py", line 73, in get_series
    wall_t, steps, vals = series.T
ValueError: too many values to unpack (expected 3)

(310) [mifen@hp tmp]$ termplot 'results/tb_logs/ippo_env\=8_adam_gae__jinan-1__2024-07-16_08-59-03/events.out.tfevents.1721091543.amax'
Traceback (most recent call last):
  File "/home/mifen/.conda/envs/310/bin/termplot", line 8, in <module>
    sys.exit(run())
  File "/home/mifen/.conda/envs/310/lib/python3.10/site-packages/termplot/main.py", line 481, in run
    main(_args)
  File "/home/mifen/.conda/envs/310/lib/python3.10/site-packages/termplot/main.py", line 425, in main
    monitor = FilesystemMonitor(args.folder)
  File "/home/mifen/.conda/envs/310/lib/python3.10/site-packages/termplot/fs_monitor.py", line 42, in __init__
    self.observer.start()
  File "/home/mifen/.conda/envs/310/lib/python3.10/site-packages/watchdog/observers/api.py", line 280, in start
    emitter.start()
  File "/home/mifen/.conda/envs/310/lib/python3.10/site-packages/watchdog/utils/__init__.py", line 92, in start
    self.on_thread_start()
  File "/home/mifen/.conda/envs/310/lib/python3.10/site-packages/watchdog/observers/inotify.py", line 125, in on_thread_start
    self._inotify = InotifyBuffer(path, self.watch.is_recursive, event_mask)
  File "/home/mifen/.conda/envs/310/lib/python3.10/site-packages/watchdog/observers/inotify_[events.out.tfevents.1721091543.zip](https://github.com/user-attachments/files/16262628/events.out.tfevents.1721091543.zip)
  File "/home/mifen/.conda/envs/310/lib/python3.10/site-packages/watchdog/observers/api.py", line 280, in start
    emitter.start()
  File "/home/mifen/.conda/envs/310/lib/python3.10/site-packages/watchdog/utils/__init__.py", line 92, in start
    self.on_thread_start()
  File "/home/mifen/.conda/envs/310/lib/python3.10/site-packages/watchdog/observers/inotify.py", line 125, in on_thread_start
    self._inotify = InotifyBuffer(path, self.watch.is_recursive, event_mask)
  File "/home/mifen/.conda/envs/310/lib/python3.10/site-packages/watchdog/observers/inotify_buffer.py", line 37, in __init__
    self._inotify = Inotify(path, recursive, event_mask)
  File "/home/mifen/.conda/envs/310/lib/python3.10/site-packages/watchdog/observers/inotify_c.py", line 176, in __init__
    self._add_watch(path, event_mask)
  File "/home/mifen/.conda/envs/310/lib/python3.10/site-packages/watchdog/observers/inotify_c.py", line 401, in _add_watch
    Inotify._raise_error()
  File "/home/mifen/.conda/envs/310/lib/python3.10/site-packages/watchdog/observers/inotify_c.py", line 417, in _raise_error
    raise OSError(err, os.strerror(err))
FileNotFoundError: [Errno 2] No such file or directory

(310) [mifen@hp tmp]$ termplot 'results/tb_logs/'
Traceback (most recent call last):
  File "/home/mifen/.conda/envs/310/bin/termplot", line 8, in <module>
    sys.exit(run())
  File "/home/mifen/.conda/envs/310/lib/python3.10/site-packages/termplot/main.py", line 481, in run
    main(_args)
  File "/home/mifen/.conda/envs/310/lib/python3.10/site-packages/termplot/main.py", line 441, in main
    plot_logic(
  File "/home/mifen/.conda/envs/310/lib/python3.10/site-packages/termplot/main.py", line 370, in plot_logic
    _plot_for_one_run(plotter, figure_data, data_source.get_consolidated_stats(), i)
  File "/home/mifen/.conda/envs/310/lib/python3.10/site-packages/termplot/main.py", line 312, in _plot_for_one_run
    x_val, y_val = figure_data.get_series(
  File "/home/mifen/.conda/envs/310/lib/python3.10/site-packages/termplot/data_source/tensorboard_source.py", line 73, in get_series
    wall_t, steps, vals = series.T
ValueError: too many values to unpack (expected 3)
(310) [mifen@hp tmp]$

events.out.tfevents.1721091543.zip

use latest code
(310) [mifen@hp tmp]$ git clone https://github.com/soraxas/terminal-plot.git

(310) [mifen@hp tmp]$ pip uninstall terminal-plot
  Successfully uninstalled terminal-plot-2.1.0

(310) [mifen@hp tmp]$ pip install terminal-plot/
Successfully installed plotext-5.0.2 terminal-plot-2.1.0

(310) [mifen@hp tmp]$ termplot "results/tb_logs/ippo_env=8_adam_gae__jinan-1__2024-07-16_08-59-03/" --debug
Traceback (most recent call last):
  File "/home/mifen/.conda/envs/310/bin/termplot", line 5, in <module>
    from termplot.main import run
  File "/home/mifen/.conda/envs/310/lib/python3.10/site-packages/termplot/main.py", line 18, in <module>
    from termplot.monitor import AbstractMonitor
ModuleNotFoundError: No module named 'termplot.monitor'

Thanks for reporting. The packaging issue should be fixed in 2.2.0 now.
pip install 'terminal-plot>=2.2.0'

$ termplot data/

$ termplot data/ -ccc

Normally I use it inside tmux, and with termplot folder/ -ccc -f to monitor its progress

ModuleNotFoundError has been fixed at new version. New problem maybe font?
termplot "ippo_env=8_adam_gae__jinan-1__2024-07-16_08-59-03"

termplot "ippo_env=8_adam_gae__jinan-1__2024-07-16_08-59-03" -ccc

This is the integrated terminal in vscode? Does it works on standalone terminal?
You'll have to figure out how to make vs code support the Unicode characters.
Something like this might help. https://dev.to/ri5hirajp/enable-unicode-support-in-vscode-terminal-2ph5

It is vscode's terminal.
Same problem in Windows Terminal(Version: 1.6.10571.0)
try that solution part about change font name but same problem. Thanks for your kindly help.

I see I didn't you are on WSL.
Installing nerdfont in windows terminal might help:
https://medium.com/@vedantkadam541/beautify-your-windows-terminal-using-nerd-fonts-and-oh-my-posh-4f4393f097

Yes, not in wsl. It is a linux server. I tried install nerd font and set "Hack Nerd Font" in vsc/win terminal, not work.
Thank you for you kindly help. Not going to dive into it.


Dont panic beta

working contract registry( depolyed at 0xf4d139fE4f73725dcc6eb364e4593a00F07DC0a9)
Fixed weird things from last commit

Yeah let me try to rebase , All that really is changed is the reg contract and contract.js.


Named regions don't work for c#

Thanks for great extension!
Works:

js and ts: rgba regions and named regions
cs: rgba regions

Doesn't work:

cs: named regions

Oops never mind - I forgot that brackets are needed.
Would be nice if the brackets were not needed.


use ocm-repository-url rather than cfg-name

see: https://github.com/gardener/cc-utils/pull/1077

Thank you @ccwienk for your contribution. Before I can start building your PR, a member of the organization must set the required label(s) {'reviewed/ok-to-test'}. Once started, you can check the build status in the PR checks section below.


refactor: proxy environment logger

Description
Added a proxy that injects the environment name whenever this.environment.logger.{method} is called

Oh, approved without looking at CI. It seems our tests are checking for dated console log messages after this PR


README.md Slack link broken

The Slack link at the bottom of README.md  points to "aws-sig", which apparently no longer exists.  When clicked, it just brings up the Kubernetes Slack with whatever the last channel I was on (i.e. external-dns).  Is the correct channel #aws-authenticator?

#aws-sig was renamed to #provider-aws. The README needs to be updated.


drivers: dma: add DMA driver for NXP PXP engine

The NXP Pixel Pipeline Engine (PXP) is a 2D DMA engine capable of
accelerating display rotation, color space conversion, and limited
2D blending operations. This DMA driver only supports rotation of a
framebuffer, via a set of custom dma_slot values.
The driver enables rotation in concert with the ELCDIF driver. For example, a user can configure the ELCDIF driver to leverage the PXP to rotate the display by 270 degrees with the following settings:
CONFIG_DMA=y
CONFIG_MCUX_ELCDIF_PXP=y
CONFIG_MCUX_ELCDIF_PXP_ROTATE_270=y

If used, LVGL can then be configured to rotate the display using the following call (LVGL rotates the display counter clockwise, and the PXP rotates it clockwise):
lv_disp_set_rotation(lv_disp_get_default(), LV_DISP_ROT_90);

Fixes #59921

@Gigate, will this cover your use case? I'm not sure if there is much more of the PXP functionality we can expose via the DMA API, but I have verified that display rotation functions (with acceptable performance) on the RT1060 and RT1170 EVKs using LVGL, provided rotation is configured as I outline in this PR.

@danieldegrasse thanks for the quick response. I just checked out out this PR, however this doesn't work for my mimxrt1064_evk board. When enabling the configs the screen isn't rotated but the display is blinking in a 0.5 sec interval. Also rotating by 180 degrees doesn't work either, but then there is no blinking.

@danieldegrasse thanks for the quick response. I just checked out out this PR, however this doesn't work for my mimxrt1064_evk board. When enabling the configs the screen isn't rotated but the display is blinking in a 0.5 sec interval. Also rotating by 180 degrees doesn't work either, but then there is no blinking.

Sorry, I should have noticed you were using an RT1064 EVK. This PR requires that LVGL (or whatever graphics middleware is in use) calls display_write with a display buffer equal in size to the screen (or the screen rotated by 90 degrees, when the PXP is enabled).
The relevant Kconfigs are configured on the RT1170 EVK and RT1060 EVK. You can look here to see the settings you need: https://github.com/zephyrproject-rtos/zephyr/blob/main/boards/arm/mimxrt1060_evk/Kconfig.defconfig#L60. In particular, you should set:
CONFIG_LV_Z_VDB_SIZE=100
CONFIG_LV_Z_DOUBLE_VDB=y
CONFIG_LV_Z_FULL_REFRESH=y
CONFIG_LV_Z_VDB_ALIGN=32
CONFIG_LV_Z_BITS_PER_PIXEL=16 (assuming you use an RGB565 display)

@danieldegrasse thanks, I got it working now. However I also got sw rotation working under v3.2.0 in the meantime. Comparing both solutions I noticed, that the sw rotation is way more performant (measuring with CONFIG_LV_USE_PERF_MONITOR=y) . PXP rotation 8% CPU usage and sw rotation 2%.  Also when enabling the debug log under the PXP rotation I get spammed with

mpu: mpu_configure_region: Configure MPU region at index 0x3
mpu: region_init: [3] 0x8011ae00 0x150b000a
mpu: region_allocate_and_init: Program MPU region at index 0x3

Is there something else I need to configure?

Also when enabling the debug log under the PXP rotation I get spammed with

I see these logs with or without PXP rotation enabled. They are related to MPU regions being dynamically configured when task switching occurs.

PXP rotation 8% CPU usage and sw rotation 2%. Also when enabling the debug log under the PXP rotation

I'm currently testing with the latest version of Zephyr, and LVGL 8.3.7 (the version of the module integrated with Zephyr). I'm not able to reproduce these results with software rotation. I assume you are setting sw_rotate=1? I see poor performance, and CPU utilization bouncing between 7 and 20%. With the PXP enabled I see similar CPU usage (maybe a bit more consistent, around 15%), but the subjective performance of UI elements is much better.

I see these logs with or without PXP rotation enabled. They are related to MPU regions being dynamically configured when task switching occurs.

Ok same for me, my sw rotated version was under a different zephyr version (v3.2.0). There the overall performance is way better, but this most likely is a different issue?!

I'm currently testing with the latest version of Zephyr, and LVGL 8.3.7 (the version of the module integrated with Zephyr). I'm not able to reproduce these results with software rotation. I assume you are setting sw_rotate=1? I see poor performance, and CPU utilization bouncing between 7 and 20%. With the PXP enabled I see similar CPU usage (maybe a bit more consistent, around 15%), but the subjective performance of UI elements is much better.

I checked out this PR, and updated to LVGL 8.3.7 (I had 8.2.0 before). Comparing sw rotation and pxp rotation on the mimxrt1064_evk still yields inconclusive results. CPU Performance is bouncing for my sample app in both cases between 4% and 9%. However with CONFIG_LV_DISP_DEF_REFR_PERIOD=16 (to get a higher framerate) the FPS counter is at ~ 42 FPS with PXP rotation and at ~62 with sw rotation.

I checked out this PR, and updated to LVGL 8.3.7 (I had 8.2.0 before). Comparing sw rotation and pxp rotation on the mimxrt1064_evk still yields inconclusive results. CPU Performance is bouncing for my sample app in both cases between 4% and 9%. However with CONFIG_LV_DISP_DEF_REFR_PERIOD=16 (to get a higher framerate) the FPS counter is at ~ 42 FPS with PXP rotation and at ~62 with sw rotation.

I am running the LVGL widgets sample on the RT1060. With the PXP performing rotation, I see FPS bouncing between ~40 and ~20. CPU utilization bounces between ~13 and ~27 percent.
With software rotation, I see FPS more consistently around 62, and CPU utilization bounces between ~13 and ~9 percent. However, the moment I actually interact with the sample (by swiping between screens), FPS drops to 4, and CPU utilization spikes. I do not see these performance dips with the PXP enabled
My current guess for the reasons behind this performance are the following:

When the PXP is enabled, CONFIG_LV_Z_FULL_REFRESH must be on. This means even a minor display update requires updating the entire framebuffer. Since the PXP is involved, the framebuffer rotation will always occur. I suspect this is why the idle CPU usage remains high, because even partial updates to the display require a full framebuffer refresh
When the PXP is disabled, CONFIG_LV_Z_FULL_REFRESH is off. The software rotation is more efficient for partial display updates, as only a subset of the display frame will be modified. However once the full display needs to be updated (IE when swiping between screens in the widgets view), the software rotation becomes less efficient. This is when the FPS dips

To summarize, I'm not entirely sure why the PXP yields high CPU utilization as I am not deeply familiar with the LVGL performance counter code. However, I see subjectively smoother performance when using the PXP, and I do not see framerate drops when interacting with the sample.

I cc @nicusorcitu from NXP. Probably he can tell  more about it.

Hi,
The LVGL CPU load represent the usage of the CPU during execution of the timer handlers. It is not the overall CPU system usage.

CONFIG_LV_DISP_DEF_REFR_PERIOD shall be set according to the display refresh rate.
When you set the CONFIG_LV_DISP_DEF_REFR_PERIOD to 33 ms it means the timer callback to render a frame will get called at every 33ms (it will try to satisfy the 30FPS you expect). During the timer refresh execution process, the PXP might take over and do some of the rendering operations (like blitting images, or filling areas - simple rectangles). The CPU load DOES NOT TAKE in consideration the PXP work or not during rendering process.
With CPU only, if rendering a frame takes 16ms, the CPU load might look like 50% - this is an estimation because there might be other callback timers to get executed and CPU load measure them all.
With PXP enabled, if rendering a frame takes 20ms, the CPU load might look like 60% - when in fact this is not true because part of the frame could have been handled by PXP hardware while the CPU was basically in the idle state.

On FreeRTOS I did a fix for that, so that the CPU load calculation is based on the real time spend in IdleTask. Hopefully we can do a better way of calculation CPU usage in lvgl v9 based on the info provided by the OS. @kisvegabor

You shall not decrease the value of CONFIG_LV_DISP_DEF_REFR_PERIOD to 16ms unless you really expect 60FPS. Doing that, the timer callback will get executed every 16ms and will consume useless the resources if your screen is only 30Hz.

The screen rotation process is outside of the rendering process. Screen rotation time is not measured in the CPU load calculation.
@kisvegabor this is also another request we had it to support the rotation as a task in lvgl v9 so that we can measure that one too. Or split the rotation between multiple units (CPU, PXP, VGLite...) if available.

Thanks,
Nicu.

@kisvegabor this is also another request we had it to support the rotation as a task in lvgl v9 so that we can measure that one too. Or split the rotation between multiple units (CPU, PXP, VGLite...) if available.

I've already added it to the ROADMAP of v9.


Clarify installOptions.rollup.plugins vs. Snowpack plugins

Original Discussion: https://www.pika.dev/npm/snowpack/discuss/270#comment-6987
/cc @quasor, @FredKSchott, @5310
Right now we see a lot of confusion around this. Snowpack v1 traditionally supported "Rollup install plugins". Snowpack v2 added support for Snowpack plugins. We need to go back through our error messages and documentation and make sure it's clear where a plugin should be added, if we ever tell the user to add a plugin.
ex:
- Find a more web-friendly alternative, or add the "rollup-plugin-node-polyfills" plugin to your Snowpack config file.
+ Find a more web-friendly alternative, or add "rollup-plugin-node-polyfills" to installOptions.rollup.plugins in your Snowpack config file.

Resolved via ecec191


Make setup.py consistent with conda recipe

Inconsistencies in setup.py are causing pip check to fail on the conda package.

@tomvothecoder and @forsyth2, it seems like you are testing zstash with a pip based workflow.  I would suggest switching to a mamba and boa based workflow where you build the conda package.  This will be more similar to how the package is used in E3SM-Unified and elsewhere.  The pip installation is missing important tools like mache and mpas_tools, and doesn't check if the conda and pip dependencies are conssitent.

I will do the precomit stuff.  I forgot about it.

Okay, all the testing failures have nothing to do with my changes, I think.

I would suggest switching to a mamba and boa based workflow where you build the conda package.

Created https://github.com/E3SM-Project/zppy/issues/397 and https://github.com/E3SM-Project/zstash/issues/252

Okay, all the testing failures have nothing to do with my changes, I think.

I ran on Perlmutter -- pre-commit checks pass, unit tests pass. I'm not sure why GitHub is marking failures.

@mahf708, by the time a package gets to conda-forge, it's really too late.  Testing needs to be done here.
@forsyth2, my guess is that it's a GitHub issue such as an expired token but I don't know for sure.

@tomvothecoder, here as well, could we get hellp on why CI is failing?

@mahf708, I see.  Yes, we should pytest on conda-forge as well.  But the full test suite probably has to be run on an HPC machine because it requires tools for tape archiving that are not going to be available anywhere else.

@mahf708, it's not pytest it's unittest:
https://github.com/E3SM-Project/zstash/blob/main/.github/workflows/build_workflow.yml#L50
python -m unittest tests/test_*.py

Feel free to add that to https://github.com/conda-forge/staged-recipes/pull/21883.  I think unittest is built in but maybe a dependency is needed?
Also maybe look at the zppy workflow to see what the corresponding tests would be.  Maybe identical.

@tomvothecoder and @forsyth2, it seems like you are testing zstash with a pip based workflow. I would suggest switching to a mamba and boa based workflow where you build the conda package. This will be more similar to how the package is used in E3SM-Unified and elsewhere. The pip installation is missing important tools like mache and mpas_tools, and doesn't check if the conda and pip dependencies are conssitent.

Good point on pip install missing dependencies. @forsyth2 can you open an issue and look into this?
You would need to do some modifications to the workflows to build and install zstash using mamba instead of pip install.

@tomvothecoder, here as well, could we get hellp on why CI is failing?

I think GitHub Actions was down at the time you kicked off the workflows. I reran the workflows and they now pass.

can you open an issue and look into this?
You would need to do some modifications to the workflows to build and install zstash using mamba instead of pip install.

That's #252

I have also updated GitHub actions and pre-commit to be consistent with https://github.com/E3SM-Project/zppy/pull/395

I was able to build the environment with this branch, but when I ran the unit tests, I got:
======================================================================
ERROR: testLs (tests.test_globus.TestGlobus)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/global/u1/f/forsyth/zstash/tests/test_globus.py", line 183, in testLs
    self.helperLsGlobus(
  File "/global/u1/f/forsyth/zstash/tests/test_globus.py", line 161, in helperLsGlobus
    self.preactivate_globus()
  File "/global/u1/f/forsyth/zstash/tests/test_globus.py", line 62, in preactivate_globus
    native_client.login(no_local_server=True, refresh_tokens=True)
  File "/global/homes/f/forsyth/miniconda3/envs/zstash_n250/lib/python3.9/site-packages/fair_research_login/client.py", line 157, in login
    auth_code = self.get_code(requested_scopes, refresh_tokens,
  File "/global/homes/f/forsyth/miniconda3/envs/zstash_n250/lib/python3.9/site-packages/fair_research_login/client.py", line 197, in get_code
    auth_url = self.client.oauth2_get_authorize_url(
TypeError: oauth2_get_authorize_url() got an unexpected keyword argument 'additional_params'

----------------------------------------------------------------------
Ran 64 tests in 271.141s

FAILED (errors=1)

@lukaszlacinski This leads me to believe there is an issue in the version constraints.

Looking at #201, it was https://github.com/lukaszlacinski/zstash/commit/13c266029ef41742bb10f19cb6d8e1be99a4de58 that fixed that exact error.

@forsyth2, okay, it seems like the version of fair-research-login is most likely to be responsible since the constraints on globus are the same as what @lukaszlacinski had.  Let's try going back in that case.

@forsyth2, could you give it another try?  Could you also make an issue about seeing if we can support the latest fair-research-login?  Or if the problem isn't with zppy and instead with globus, we should post an issue on their GitHub (or see if there already is one) about fair-research-login being underconstrained.

could you give it another try?

Tests pass now! Should I go ahead and merge it?

Could you also make an issue about seeing if we can support the latest fair-research-login?

#253

Yes, please merge!


Multilingual model supported language codes in machine readable format

Would be ideal to add the list of actual language codes to the multilingual README, so other systems can do lookups, and to prevent bugs where there is a discrepancy between the internal list and the documentation:
af, sq, ar, an, hy, ast, az, ...

Instead of only:

Afrikaans
Albanian
Arabic
Aragonese
Armenian
Asturian
Azerbaijani
...

I sent a PR https://github.com/google-research/bert/pull/1051

Wikipedia
Name
Notes

af
Afrikaans

sq
Albanian

ar
Arabic

an
Aragonese

hy
Armenian

ast
Asturian

az
Azerbaijani

ba
Bashkir

eu
Basque

bar
Bavarian

be
Belarusian

bn
Bengali

bpy
Bishnupriya Manipuri

bs
Bosnian

br
Breton

bg
Bulgarian

my
Burmese

ca
Catalan

ceb
Cebuano

ce
Chechen

zh
Chinese (Simplified)
zh-CN

zh
Chinese (Traditional)
zh-TW, zh-HK, zh-MO

cv
Chuvash

hr
Croatian

cs
Czech

da
Danish

nl
Dutch

en
English

et
Estonian

fi
Finnish

fr
French

gl
Galician

ka
Georgian

de
German

el
Greek

gu
Gujarati

ht
Haitian

he
Hebrew
Previously iw

hi
Hindi

hu
Hungarian

is
Icelandic

io
Ido

id
Indonesian
Previously in

ga
Irish

it
Italian

ja
Japanese

jv
Javanese
Previously jw

kn
Kannada

kk
Kazakh

ky
Kirghiz

ko
Korean

la
Latin

lv
Latvian

lt
Lithuanian

lmo
Lombard

nds
Low Saxon

lb
Luxembourgish

mk
Macedonian

mg
Malagasy

ms
Malay

ml
Malayalam

mn
Mongolian
in Multilingual Cased (New) only

mr
Marathi

min
Minangkabau

ne
Nepali

new
Newar

nb
Norwegian (Bokmal)
Also no

nn
Norwegian (Nynorsk)

oc
Occitan

fa
Persian (Farsi)

pms
Piedmontese

pl
Polish

pt
Portuguese

pa
Punjabi

ro
Romanian

ru
Russian

sco
Scots

sr
Serbian

sh
Serbo-Croatian

scn
Sicilian

sk
Slovak

sl
Slovenian

azb
South Azerbaijani

es
Spanish

su
Sundanese

sw
Swahili

sv
Swedish

tl
Tagalog
Macrolanguage fil

tg
Tajik

ta
Tamil

tt
Tatar

te
Telugu

th
Telugu
in Multilingual Cased (New) only

tr
Turkish

uk
Ukrainian

ur
Urdu

uz
Uzbek

vi
Vietnamese

vo
Volapük

war
Waray-Waray

cy
Welsh

fy
West Frisian
Macrolanguage fry

lah
Western Punjabi
Macrolanguage pan

yo
Yoruba


fixing manual/latex issues

Pull Request Description
What issue does this change request address? (Use "#" before the issue to link it, i.e., #42.)
This PR addresses the _ in the latex manual generation. This closes #1614
What are the significant changes in functionality due to this change request?
underscores are only escaped out of the math mode.

For Change Control Board: Change Request Review
The following review must be completed by an authorized member of the Change Control Board.

[ ] 1. Review all computer code.
[ ] 2. If any changes occur to the input syntax, there must be an accompanying change to the user manual and xsd schema. If the input syntax change deprecates existing input files, a conversion script needs to be added (see Conversion Scripts).
[ ] 3. Make sure the Python code and commenting standards are respected (camelBack, etc.) - See on the wiki for details.
[ ] 4. Automated Tests should pass, including run_tests, pylint, manual building and xsd tests. If there are changes to Simulation.py or JobHandler.py the qsub tests must pass.
[ ] 5. If significant functionality is added, there must  be tests added to check this. Tests should cover all possible options.  Multiple short tests are preferred over one large test. If new development on the internal JobHandler parallel system is performed, a cluster test must be added setting, in  XML block, the node <internalParallel> to True.
[ ] 6. If the change modifies or adds a requirement or a requirement based test case, the Change Control Board's Chair or designee also needs to approve the change.  The requirements and the requirements test shall be in sync.
[ ] 7. The merge request must reference an issue.  If the issue is closed, the issue close checklist shall be done.
[ ] 8. If an analytic test is changed/added is the the analytic documentation updated/added?
[ ] 9. If any test used as a basis for documentation examples (currently found in raven/tests/framework/user_guide and raven/docs/workshop) have been changed, the associated documentation must be reviewed and assured the text matches the example.

Job Test Fedora 32 on 3af49a5 : invalidated by @Jimmy-INL

Job Test Ubuntu 18-2 Python 3 on 3af49a5 : invalidated by @Jimmy-INL

Job Test Fedora 32 on 3af49a5 : invalidated by @Jimmy-INL

Job Test Fedora 32 on 3af49a5 : invalidated by @wangcj05
fetch issue

Job Test Fedora 32 on 3af49a5 : invalidated by @wangcj05
fetch issue

The issues with the manual have been solved here (since otherwise I could not merge it (I mean I could fix it by hand...but I thought it was better to do it systematically in the code)):
https://github.com/idaholab/raven/pull/1693
I think you can close this PR and delete the branch
@PaulTalbot-INL @wangcj05 @Jimmy-INL @mandd @joshua-cogliati-inl


Upgrade to Ghidra 10.3.1, and fix minor annoyances

Can't remember why I didn't merge this, probably just forgot, as it seems to pass the CI


EKS demo: create-slo.sh fails, as no services available to cloudwatch

This is using the EKS demo version of the repo.
The setup fails at at the create-slo.sh stage.
The reason it fails is because there are no services available for the list-services command to list:
++ aws application-signals list-services --endpoint https://application-signals.ap-southeast-1.api.aws --region ap-southeast-1 --cli-input-json '{
  "StartTime":<PHONE_NUMBER>,
  "EndTime":<PHONE_NUMBER>
}' --output json --query '(ServiceSummaries[?KeyAttributes.Name=='\''pet-clinic-frontend-java'\''].KeyAttributes)[0]'
+ SERVICE_KEY_ATTRIBUTES=null
+ echo null
null

Here is the full output of the script.
Admin:~/environment/application-signals-demo/scripts/eks/appsignals/one-step (main) $ ../create-slo.sh unicorn-pet-rentals ap-southeast-1
++ dirname ../create-slo.sh
+ cd ..
+ CLUSTER_NAME=unicorn-pet-rentals
+ REGION=ap-southeast-1
+ SERVICE_NAME=pet-clinic-frontend-java
+ ENDPOINT=https://application-signals.ap-southeast-1.api.aws
+ echo 'Creating Service Level Objectives'
Creating Service Level Objectives
++ date +%s
+ end_time=1729123740
+ end_time_as_int=1729123740
+ start_time_as_int=1729037340
+ LIST_SERVICES_REQUEST=slo/inputRequest/ListServices/listServices.json
++ sed -e 's|"StartTime": .*|"StartTime":<PHONE_NUMBER>,|' -e 's|"EndTime": .*|"EndTime":<PHONE_NUMBER>|' slo/inputRequest/ListServices/listServices.json
+ LIST_SERVICES_REQUEST_WITH_CORRECT_INPUT='{
  "StartTime":<PHONE_NUMBER>,
  "EndTime":<PHONE_NUMBER>
}'
++ aws application-signals list-services --endpoint https://application-signals.ap-southeast-1.api.aws --region ap-southeast-1 --cli-input-json '{
  "StartTime":<PHONE_NUMBER>,
  "EndTime":<PHONE_NUMBER>
}' --output json --query '(ServiceSummaries[?KeyAttributes.Name=='\''pet-clinic-frontend-java'\''].KeyAttributes)[0]'
+ SERVICE_KEY_ATTRIBUTES=null
+ echo null
null
+ '[' null = '' ']'
+ KEY_ATTRIBUTES=null
+ CREATE_SLO_REQUEST_1=slo/inputRequest/CreateServiceLevelObjective/getOwner99Availability.json
++ sed 's|"KeyAttributes": .*|"KeyAttributes": null,|' slo/inputRequest/CreateServiceLevelObjective/getOwner99Availability.json
+ CREATE_SLO_REQUEST_WITH_CORRECT_SERVICE_ARN_1='{
  "Name": "Availability for Searching an Owner",
  "Description": "Availability larger than 99 for Get Owner operation",
  "SliConfig": {
    "SliMetricConfig": {
      "KeyAttributes": null,
      "OperationName": "GET /api/customer/owners",
      "MetricType": "AVAILABILITY",
      "PeriodSeconds": 60
    },
    "MetricThreshold": 99.0,
    "ComparisonOperator": "GreaterThan"
  },
  "Goal": {
    "Interval": {
      "RollingInterval": {
        "Duration": 1,
        "DurationUnit": "DAY"
      }
    },
    "AttainmentGoal": 99.9,
    "WarningThreshold": 60.0
  }
}'
+ err=0
+ for i in {1..5}
++ aws application-signals create-service-level-objective --endpoint https://application-signals.ap-southeast-1.api.aws --cli-input-json '{
  "Name": "Availability for Searching an Owner",
  "Description": "Availability larger than 99 for Get Owner operation",
  "SliConfig": {
    "SliMetricConfig": {
      "KeyAttributes": null,
      "OperationName": "GET /api/customer/owners",
      "MetricType": "AVAILABILITY",
      "PeriodSeconds": 60
    },
    "MetricThreshold": 99.0,
    "ComparisonOperator": "GreaterThan"
  },
  "Goal": {
    "Interval": {
      "RollingInterval": {
        "Duration": 1,
        "DurationUnit": "DAY"
      }
    },
    "AttainmentGoal": 99.9,
    "WarningThreshold": 60.0
  }
}' --no-cli-pager --region ap-southeast-1
+ output='
Parameter validation failed:
Invalid type for parameter SliConfig.SliMetricConfig.KeyAttributes, value: None, type: <class '\''NoneType'\''>, valid types: <class '\''dict'\''>'
+ err=252
+ grep InvalidParameterValue
+ echo '
Parameter validation failed:
Invalid type for parameter SliConfig.SliMetricConfig.KeyAttributes, value: None, type: <class '\''NoneType'\''>, valid types: <class '\''dict'\''>'
+ break
+ check_if_loop_failed_and_exit 252 'There was an error creating an SLO - GetOwner99Availability, exiting'
+ '[' 252 -ne 0 ']'
+ echo There was an error creating an SLO - GetOwner99Availability, exiting
There was an error creating an SLO - GetOwner99Availability, exiting
+ exit 1

For some reason, the CloudWatch SLO feature is not able to recognise the EKS cluster as a service.
EKS:

CloudWatch:

Someone else reported this issue back in April. Has this repo been tested recently?
Thanks

I noticed that you are using this command:
Admin:~/environment/application-signals-demo/scripts/eks/appsignals/one-step (main) $ ../create-slo.sh unicorn-pet-rentals ap-southeast-1

I don't think this will work by itself. The correct way is to follow this: https://github.com/aws-observability/application-signals-demo?tab=readme-ov-file#deploy-via-shell-scripts by running the whole script.

Here is the full output from the proper script run:
Admin:~/environment/application-signals-demo/scripts/eks/appsignals/one-step (main) $  ./setup.sh unicorn-pet-rentals ap-southeast-1
AWS CLI version is acceptable, continuing...
2024-10-16 22:32:23 [ℹ]  eksctl version 0.192.0
2024-10-16 22:32:23 [ℹ]  using region ap-southeast-1
2024-10-16 22:32:23 [ℹ]  setting availability zones to [ap-southeast-1a ap-southeast-1b ap-southeast-1c]
2024-10-16 22:32:23 [ℹ]  subnets for ap-southeast-1a - public:<IP_ADDRESS>/19 private:<IP_ADDRESS>/19
2024-10-16 22:32:23 [ℹ]  subnets for ap-southeast-1b - public:<IP_ADDRESS>/19 private:<IP_ADDRESS>/19
2024-10-16 22:32:23 [ℹ]  subnets for ap-southeast-1c - public:<IP_ADDRESS>/19 private:<IP_ADDRESS>/19
2024-10-16 22:32:23 [ℹ]  nodegroup "ng-97f3c11a" will use "" [AmazonLinux2/1.30]
2024-10-16 22:32:23 [ℹ]  using Kubernetes version 1.30
2024-10-16 22:32:23 [ℹ]  creating EKS cluster "unicorn-pet-rentals" in "ap-southeast-1" region with managed nodes
2024-10-16 22:32:23 [ℹ]  will create 2 separate CloudFormation stacks for cluster itself and the initial managed nodegroup
2024-10-16 22:32:23 [ℹ]  if you encounter any issues, check CloudFormation console or try 'eksctl utils describe-stacks --region=ap-southeast-1 --cluster=unicorn-pet-rentals'
2024-10-16 22:32:23 [ℹ]  Kubernetes API endpoint access will use default of {publicAccess=true, privateAccess=false} for cluster "unicorn-pet-rentals" in "ap-southeast-1"
2024-10-16 22:32:23 [ℹ]  CloudWatch logging will not be enabled for cluster "unicorn-pet-rentals" in "ap-southeast-1"
2024-10-16 22:32:23 [ℹ]  you can enable it with 'eksctl utils update-cluster-logging --enable-types={SPECIFY-YOUR-LOG-TYPES-HERE (e.g. all)} --region=ap-southeast-1 --cluster=unicorn-pet-rentals'
2024-10-16 22:32:23 [ℹ]  default addons vpc-cni, kube-proxy, coredns were not specified, will install them as EKS addons
2024-10-16 22:32:23 [ℹ]
2 sequential tasks: { create cluster control plane "unicorn-pet-rentals",
    2 sequential sub-tasks: {
        2 sequential sub-tasks: {
            1 task: { create addons },
            wait for control plane to become ready,
        },
        create managed nodegroup "ng-97f3c11a",
    }
}
2024-10-16 22:32:23 [ℹ]  building cluster stack "eksctl-unicorn-pet-rentals-cluster"
2024-10-16 22:32:24 [ℹ]  deploying stack "eksctl-unicorn-pet-rentals-cluster"
2024-10-16 22:32:54 [ℹ]  waiting for CloudFormation stack "eksctl-unicorn-pet-rentals-cluster"
2024-10-16 22:33:24 [ℹ]  waiting for CloudFormation stack "eksctl-unicorn-pet-rentals-cluster"
2024-10-16 22:34:24 [ℹ]  waiting for CloudFormation stack "eksctl-unicorn-pet-rentals-cluster"
2024-10-16 22:35:24 [ℹ]  waiting for CloudFormation stack "eksctl-unicorn-pet-rentals-cluster"
2024-10-16 22:36:24 [ℹ]  waiting for CloudFormation stack "eksctl-unicorn-pet-rentals-cluster"
2024-10-16 22:37:24 [ℹ]  waiting for CloudFormation stack "eksctl-unicorn-pet-rentals-cluster"
2024-10-16 22:38:24 [ℹ]  waiting for CloudFormation stack "eksctl-unicorn-pet-rentals-cluster"
2024-10-16 22:39:24 [ℹ]  waiting for CloudFormation stack "eksctl-unicorn-pet-rentals-cluster"
2024-10-16 22:39:25 [!]  recommended policies were found for "vpc-cni" addon, but since OIDC is disabled on the cluster, eksctl cannot configure the requested permissions; the recommended way to provide IAM permissions for "vpc-cni" addon is via pod identity associations; after addon creation is completed, add all recommended policies to the config file, under `addon.PodIdentityAssociations`, and run `eksctl update addon`
2024-10-16 22:39:25 [ℹ]  creating addon
2024-10-16 22:39:25 [ℹ]  successfully created addon
2024-10-16 22:39:25 [ℹ]  creating addon
2024-10-16 22:39:25 [ℹ]  successfully created addon
2024-10-16 22:39:26 [ℹ]  creating addon
2024-10-16 22:39:26 [ℹ]  successfully created addon
 2024-10-16 22:41:26 [ℹ]  building managed nodegroup stack "eksctl-unicorn-pet-rentals-nodegroup-ng-97f3c11a"
2024-10-16 22:41:26 [ℹ]  deploying stack "eksctl-unicorn-pet-rentals-nodegroup-ng-97f3c11a"
2024-10-16 22:41:26 [ℹ]  waiting for CloudFormation stack "eksctl-unicorn-pet-rentals-nodegroup-ng-97f3c11a"
2024-10-16 22:41:56 [ℹ]  waiting for CloudFormation stack "eksctl-unicorn-pet-rentals-nodegroup-ng-97f3c11a"
2024-10-16 22:42:48 [ℹ]  waiting for CloudFormation stack "eksctl-unicorn-pet-rentals-nodegroup-ng-97f3c11a"
2024-10-16 22:44:16 [ℹ]  waiting for CloudFormation stack "eksctl-unicorn-pet-rentals-nodegroup-ng-97f3c11a"
2024-10-16 22:44:16 [ℹ]  waiting for the control plane to become ready
2024-10-16 22:44:17 [✔]  saved kubeconfig as "/home/ec2-user/.kube/config"
2024-10-16 22:44:17 [ℹ]  no tasks
2024-10-16 22:44:17 [✔]  all EKS cluster resources for "unicorn-pet-rentals" have been created
2024-10-16 22:44:17 [✔]  created 0 nodegroup(s) in cluster "unicorn-pet-rentals"
2024-10-16 22:44:17 [ℹ]  nodegroup "ng-97f3c11a" has 2 node(s)
2024-10-16 22:44:17 [ℹ]  node "ip-192-168-50-157.ap-southeast-1.compute.internal" is ready
2024-10-16 22:44:17 [ℹ]  node "ip-192-168-6-111.ap-southeast-1.compute.internal" is ready
2024-10-16 22:44:17 [ℹ]  waiting for at least 2 node(s) to become ready in "ng-97f3c11a"
2024-10-16 22:44:17 [ℹ]  nodegroup "ng-97f3c11a" has 2 node(s)
2024-10-16 22:44:17 [ℹ]  node "ip-192-168-50-157.ap-southeast-1.compute.internal" is ready
2024-10-16 22:44:17 [ℹ]  node "ip-192-168-6-111.ap-southeast-1.compute.internal" is ready
2024-10-16 22:44:17 [✔]  created 1 managed nodegroup(s) in cluster "unicorn-pet-rentals"
2024-10-16 22:44:18 [ℹ]  kubectl command should work with "/home/ec2-user/.kube/config", try 'kubectl get nodes'
2024-10-16 22:44:18 [✔]  EKS cluster "unicorn-pet-rentals" in "ap-southeast-1" region is ready
Cluster unicorn-pet-rentals has been created successfully in region ap-southeast-1
Enabling Application Signals for EKS Cluster unicorn-pet-rentals in ap-southeast-1 for namespace default

An error occurred (InvalidInput) when calling the CreateServiceLinkedRole operation: Service role name AWSServiceRoleForCloudWatchApplicationSignals has been taken in this account, please try a different suffix.
2024-10-16 22:44:21 [ℹ]  will create IAM Open ID Connect provider for cluster "unicorn-pet-rentals" in "ap-southeast-1"
2024-10-16 22:44:21 [✔]  created IAM Open ID Connect provider for cluster "unicorn-pet-rentals" in "ap-southeast-1"
Creating ServiceAccount
2024-10-16 22:44:22 [ℹ]  1 iamserviceaccount (amazon-cloudwatch/cloudwatch-agent) was included (based on the include/exclude rules)
2024-10-16 22:44:22 [!]  metadata of serviceaccounts that exist in Kubernetes will be updated, as --override-existing-serviceaccounts was set
2024-10-16 22:44:22 [ℹ]  1 task: {
    2 sequential sub-tasks: {
        create IAM role for serviceaccount "amazon-cloudwatch/cloudwatch-agent",
        create serviceaccount "amazon-cloudwatch/cloudwatch-agent",
    } }2024-10-16 22:44:22 [ℹ]  building iamserviceaccount stack "eksctl-unicorn-pet-rentals-addon-iamserviceaccount-amazon-cloudwatch-cloudwatch-agent"
2024-10-16 22:44:22 [ℹ]  deploying stack "eksctl-unicorn-pet-rentals-addon-iamserviceaccount-amazon-cloudwatch-cloudwatch-agent"
2024-10-16 22:44:22 [ℹ]  waiting for CloudFormation stack "eksctl-unicorn-pet-rentals-addon-iamserviceaccount-amazon-cloudwatch-cloudwatch-agent"
2024-10-16 22:44:52 [ℹ]  waiting for CloudFormation stack "eksctl-unicorn-pet-rentals-addon-iamserviceaccount-amazon-cloudwatch-cloudwatch-agent"
2024-10-16 22:44:52 [ℹ]  created namespace "amazon-cloudwatch"
2024-10-16 22:44:52 [ℹ]  created serviceaccount "amazon-cloudwatch/cloudwatch-agent"
Checking amazon-cloudwatch-observability add-on

An error occurred (ResourceNotFoundException) when calling the DescribeAddon operation: No addon: amazon-cloudwatch-observability found in cluster: unicorn-pet-rentals
Installing amazon-cloudwatch-observability add-on
{
    "addon": {
        "addonName": "amazon-cloudwatch-observability",
        "clusterName": "unicorn-pet-rentals",
        "status": "CREATING",
        "addonVersion": "v2.1.3-eksbuild.1",
        "health": {
            "issues": []
        },
        "addonArn": "arn:aws:eks:ap-southeast-1:267269458124:addon/unicorn-pet-rentals/amazon-cloudwatch-observability/16c94bc0-b635-46e5-5fb3-e4199bb3f481",
        "createdAt": "2024-10-16T22:44:54.686000+00:00",
        "modifiedAt": "2024-10-16T22:44:54.709000+00:00",
        "tags": {}
    }
}
Current status: CREATING
Waiting for addon to become ACTIVE...
Current status: CREATING
Waiting for addon to become ACTIVE...
EKS amazon-cloudwatch-observability add-on is now ACTIVE
Adding EBS CSI Controller for EKS Cluster unicorn-pet-rentals in ap-southeast-1 for namespace default
2024-10-16 22:45:39 [ℹ]  1 existing iamserviceaccount(s) (amazon-cloudwatch/cloudwatch-agent) will be excluded
2024-10-16 22:45:39 [ℹ]  1 iamserviceaccount (kube-system/ebs-csi-controller-sa) was included (based on the include/exclude rules)
2024-10-16 22:45:39 [!]  serviceaccounts in Kubernetes will not be created or modified, since the option --role-only is used
2024-10-16 22:45:39 [ℹ]  1 task: { create IAM role for serviceaccount "kube-system/ebs-csi-controller-sa" }
2024-10-16 22:45:39 [ℹ]  building iamserviceaccount stack "eksctl-unicorn-pet-rentals-addon-iamserviceaccount-kube-system-ebs-csi-controller-sa"
2024-10-16 22:45:39 [ℹ]  deploying stack "eksctl-unicorn-pet-rentals-addon-iamserviceaccount-kube-system-ebs-csi-controller-sa"
2024-10-16 22:45:39 [ℹ]  waiting for CloudFormation stack "eksctl-unicorn-pet-rentals-addon-iamserviceaccount-kube-system-ebs-csi-controller-sa"
2024-10-16 22:46:09 [ℹ]  waiting for CloudFormation stack "eksctl-unicorn-pet-rentals-addon-iamserviceaccount-kube-system-ebs-csi-controller-sa"
Checking aws-ebs-csi-driver add-on

An error occurred (ResourceNotFoundException) when calling the DescribeAddon operation: No addon: aws-ebs-csi-driver found in cluster: unicorn-pet-rentals
Installing aws-ebs-csi-driver add-on
{
    "addon": {
        "addonName": "aws-ebs-csi-driver",
        "clusterName": "unicorn-pet-rentals",
        "status": "CREATING",
        "addonVersion": "v1.35.0-eksbuild.1",
        "health": {
            "issues": []
        },
        "addonArn": "arn:aws:eks:ap-southeast-1:267269458124:addon/unicorn-pet-rentals/aws-ebs-csi-driver/b2c94bc1-4c8e-4396-93c4-038712d2cc10",
        "createdAt": "2024-10-16T22:46:11.636000+00:00",
        "modifiedAt": "2024-10-16T22:46:11.648000+00:00",
        "serviceAccountRoleArn": "arn:aws:iam::267269458124:role/AmazonEKS_EBS_CSI_DriverRole_ap-southeast-1",
        "tags": {}
    }
}
Current status: CREATING
Waiting for addon to become ACTIVE...
Current status: CREATING
Waiting for addon to become ACTIVE...
Current status: CREATING
Waiting for addon to become ACTIVE...
EKS aws-ebs-csi-driver add-on is now ACTIVE
Creating ServiceAccount
2024-10-16 22:47:16 [ℹ]  2 existing iamserviceaccount(s) (amazon-cloudwatch/cloudwatch-agent,kube-system/ebs-csi-controller-sa) will be excluded
2024-10-16 22:47:16 [ℹ]  1 iamserviceaccount (default/visits-service-account) was included (based on the include/exclude rules)
2024-10-16 22:47:16 [!]  metadata of serviceaccounts that exist in Kubernetes will be updated, as --override-existing-serviceaccounts was set
2024-10-16 22:47:16 [ℹ]  1 task: {
    2 sequential sub-tasks: {
        create IAM role for serviceaccount "default/visits-service-account",
        create serviceaccount "default/visits-service-account",
    } }2024-10-16 22:47:16 [ℹ]  building iamserviceaccount stack "eksctl-unicorn-pet-rentals-addon-iamserviceaccount-default-visits-service-account"
2024-10-16 22:47:16 [ℹ]  deploying stack "eksctl-unicorn-pet-rentals-addon-iamserviceaccount-default-visits-service-account"
2024-10-16 22:47:16 [ℹ]  waiting for CloudFormation stack "eksctl-unicorn-pet-rentals-addon-iamserviceaccount-default-visits-service-account"
2024-10-16 22:47:47 [ℹ]  waiting for CloudFormation stack "eksctl-unicorn-pet-rentals-addon-iamserviceaccount-default-visits-service-account"
2024-10-16 22:47:47 [ℹ]  created serviceaccount "default/visits-service-account"
deployment.apps/db created
persistentvolumeclaim/ebs-claim created
service/db created
storageclass.storage.k8s.io/ebs-sc created
deployment.apps/mongodb created
persistentvolumeclaim/mongodb-pvc-data created
service/mongodb created
storageclass.storage.k8s.io/ebs-sc-mongodb created
deployment.apps/admin-server-java created
service/admin-server-java created
deployment.apps/pet-clinic-frontend-java created
service/pet-clinic-frontend-java created
deployment.apps/billing-service-python created
service/billing-service-python created
deployment.apps/config-server created
service/config-server created
deployment.apps/customers-service-java created
service/customers-service-java created
persistentvolumeclaim/data created
deployment.apps/discovery-server created
service/discovery-server created
deployment.apps/insurance-service-python created
service/insurance-service-python created
deployment.apps/nutrition-service-nodejs created
service/nutrition-service-nodejs created
deployment.apps/payment-service-dotnet created
service/payment-service-dotnet created
deployment.apps/vets-service-java created
service/vets-service-java created
deployment.apps/visits-service-java created
service/visits-service-java created
namespace/ingress-nginx created
namespace/ingress-nginx unchanged
service/ingress-nginx created
deployment.apps/default-http-backend created
service/default-http-backend created
configmap/nginx-configuration created
configmap/tcp-services created
configmap/udp-services created
serviceaccount/nginx-ingress-serviceaccount created
clusterrole.rbac.authorization.k8s.io/nginx-ingress-clusterrole created
role.rbac.authorization.k8s.io/nginx-ingress-role created
rolebinding.rbac.authorization.k8s.io/nginx-ingress-role-nisa-binding created
clusterrolebinding.rbac.authorization.k8s.io/nginx-ingress-clusterrole-nisa-binding created
deployment.apps/nginx-ingress-controller created
Warning: annotation "kubernetes.io/ingress.class" is deprecated, please use 'spec.ingressClassName' instead
ingress.networking.k8s.io/petclinic-nginx-ingress created
Visit the following URL to see the sample app running: a38d5ea1dc1c44c30b2ae71b8bca6e81-1124858756.ap-southeast-1.elb.amazonaws.com
deployment.apps/traffic-generator created
Started the traffic generator to send traffic to http://a38d5ea1dc1c44c30b2ae71b8bca6e81-1124858756.ap-southeast-1.elb.amazonaws.com
REGION is ap-southeast-1
OPERATION is create
ACCOUNT_ID is<PHONE_NUMBER>24
Setting up the canary execution role
Start creating IAM role CloudWatchSyntheticsRole-PetClinic-267269458124-ap-southeast-1
{
    "Role": {
        "Path": "/service-role/",
        "RoleName": "CloudWatchSyntheticsRole-PetClinic-267269458124-ap-southeast-1",
        "RoleId": "AROAT4OUAJDGDXO3ZB2LT",
        "Arn": "arn:aws:iam::267269458124:role/service-role/CloudWatchSyntheticsRole-PetClinic-267269458124-ap-southeast-1",
        "CreateDate": "2024-10-16T22:50:06+00:00",
        "AssumeRolePolicyDocument": {
            "Version": "2012-10-17",
            "Statement": [
                {
                    "Effect": "Allow",
                    "Principal": {
                        "Service": "lambda.amazonaws.com"
                    },
                    "Action": "sts:AssumeRole"
                }
            ]
        }
    }
}
creating IAM policy
{
    "Policy": {
        "PolicyName": "CloudWatchSyntheticsPolicy-PetClinic-267269458124-ap-southeast-1",
        "PolicyId": "ANPAT4OUAJDGME2DGMC46",
        "Arn": "arn:aws:iam::267269458124:policy/service-role/CloudWatchSyntheticsPolicy-PetClinic-267269458124-ap-southeast-1",
        "Path": "/service-role/",
        "DefaultVersionId": "v1",
        "AttachmentCount": 0,
        "PermissionsBoundaryUsageCount": 0,
        "IsAttachable": true,
        "CreateDate": "2024-10-16T22:50:10+00:00",
        "UpdateDate": "2024-10-16T22:50:10+00:00"
    }
}
Setting up S3 code buckets
Creating S3 code bucket aws-synthetics-code-petclinic-267269458124-ap-southeast-1
make_bucket: aws-synthetics-code-petclinic-267269458124-ap-southeast-1
Creating S3 artifact bucket cw-syn-results-petclinic-267269458124-ap-southeast-1
make_bucket: cw-syn-results-petclinic-267269458124-ap-southeast-1
  adding: nodejs/ (stored 0%)
  adding: nodejs/node_modules/ (stored 0%)
  adding: nodejs/node_modules/pc-add-visit.js (deflated 70%)
Uploading canary script for canary pc-add-visit to S3
{
  "ETag": "\"285e58965428ce04151e9648a3266973\"",
  "ServerSideEncryption": "AES256"
}
ENDPOINT is http://a38d5ea1dc1c44c30b2ae71b8bca6e81-1124858756.ap-southeast-1.elb.amazonaws.com
Creating/updating canary pc-add-visit
{
  "Canary": {
    "Id": "2392c242-a52d-4922-b15c-6a8e14475e2b",
    "Name": "pc-add-visit",
    "Code": {
      "Handler": "pc-add-visit.handler"
    },
    "ExecutionRoleArn": "arn:aws:iam::267269458124:role/service-role/CloudWatchSyntheticsRole-PetClinic-267269458124-ap-southeast-1",
    "Schedule": {
      "Expression": "rate(1 minute)",
      "DurationInSeconds": 0
    },
    "RunConfig": {
      "TimeoutInSeconds": 60,
      "MemoryInMB": 1000,
      "ActiveTracing": true
    },
    "SuccessRetentionPeriodInDays": 31,
    "FailureRetentionPeriodInDays": 31,
    "Status": {
      "State": "CREATING",
      "StateReasonCode": "CREATE_PENDING"
    },
    "Timeline": {
      "Created": "2024-10-16T22:50:22.884000+00:00",
      "LastModified": "2024-10-16T22:50:22.884000+00:00"
    },
    "ArtifactS3Location": "cw-syn-results-petclinic-267269458124-ap-southeast-1",
    "RuntimeVersion": "syn-nodejs-puppeteer-6.2",
    "Tags": {}
  }
}
  adding: nodejs/ (stored 0%)
  adding: nodejs/node_modules/ (stored 0%)
  adding: nodejs/node_modules/pc-create-owners.js (deflated 81%)
Uploading canary script for canary pc-create-owners to S3
{
  "ETag": "\"600e43658e56bd478494025175d760b1\"",
  "ServerSideEncryption": "AES256"
}
ENDPOINT is http://a38d5ea1dc1c44c30b2ae71b8bca6e81-1124858756.ap-southeast-1.elb.amazonaws.com
Creating/updating canary pc-create-owners
{
  "Canary": {
    "Id": "e6034de8-b9b7-466a-a394-2ec77dde9b0d",
    "Name": "pc-create-owners",
    "Code": {
      "Handler": "pc-create-owners.handler"
    },
    "ExecutionRoleArn": "arn:aws:iam::267269458124:role/service-role/CloudWatchSyntheticsRole-PetClinic-267269458124-ap-southeast-1",
    "Schedule": {
      "Expression": "rate(1 minute)",
      "DurationInSeconds": 0
    },
    "RunConfig": {
      "TimeoutInSeconds": 60,
      "MemoryInMB": 1000,
      "ActiveTracing": true
    },
    "SuccessRetentionPeriodInDays": 31,
    "FailureRetentionPeriodInDays": 31,
    "Status": {
      "State": "CREATING",
      "StateReasonCode": "CREATE_PENDING"
    },
    "Timeline": {
      "Created": "2024-10-16T22:50:28.222000+00:00",
      "LastModified": "2024-10-16T22:50:28.222000+00:00"
    },
    "ArtifactS3Location": "cw-syn-results-petclinic-267269458124-ap-southeast-1",
    "RuntimeVersion": "syn-nodejs-puppeteer-6.2",
    "Tags": {}
  }
}
  adding: nodejs/ (stored 0%)
  adding: nodejs/node_modules/ (stored 0%)
  adding: nodejs/node_modules/pc-visit-pet.js (deflated 59%)
Uploading canary script for canary pc-visit-pet to S3
{
  "ETag": "\"a72c792ba1139486969dc38677935d79\"",
  "ServerSideEncryption": "AES256"
}
ENDPOINT is http://a38d5ea1dc1c44c30b2ae71b8bca6e81-1124858756.ap-southeast-1.elb.amazonaws.com
Creating/updating canary pc-visit-pet
{
  "Canary": {
    "Id": "344d77e1-0744-467f-b892-77f9173bf10b",
    "Name": "pc-visit-pet",
    "Code": {
      "Handler": "pc-visit-pet.handler"
    },
    "ExecutionRoleArn": "arn:aws:iam::267269458124:role/service-role/CloudWatchSyntheticsRole-PetClinic-267269458124-ap-southeast-1",
    "Schedule": {
      "Expression": "rate(1 minute)",
      "DurationInSeconds": 0
    },
    "RunConfig": {
      "TimeoutInSeconds": 60,
      "MemoryInMB": 1000,
      "ActiveTracing": true
    },
    "SuccessRetentionPeriodInDays": 31,
    "FailureRetentionPeriodInDays": 31,
    "Status": {
      "State": "CREATING",
      "StateReasonCode": "CREATE_PENDING"
    },
    "Timeline": {
      "Created": "2024-10-16T22:50:33.561000+00:00",
      "LastModified": "2024-10-16T22:50:33.561000+00:00"
    },
    "ArtifactS3Location": "cw-syn-results-petclinic-267269458124-ap-southeast-1",
    "RuntimeVersion": "syn-nodejs-puppeteer-6.2",
    "Tags": {}
  }
}
  adding: nodejs/ (stored 0%)
  adding: nodejs/node_modules/ (stored 0%)
  adding: nodejs/node_modules/pc-visit-vet.js (deflated 55%)
Uploading canary script for canary pc-visit-vet to S3
{
  "ETag": "\"ad92f45ac0255d0070d2c5ee21f1bf71\"",
  "ServerSideEncryption": "AES256"
}
ENDPOINT is http://a38d5ea1dc1c44c30b2ae71b8bca6e81-1124858756.ap-southeast-1.elb.amazonaws.com
Creating/updating canary pc-visit-vet
{
  "Canary": {
    "Id": "3b32c069-49db-43b5-8e2b-148aaa902a01",
    "Name": "pc-visit-vet",
    "Code": {
      "Handler": "pc-visit-vet.handler"
    },
    "ExecutionRoleArn": "arn:aws:iam::267269458124:role/service-role/CloudWatchSyntheticsRole-PetClinic-267269458124-ap-southeast-1",
    "Schedule": {
      "Expression": "rate(1 minute)",
      "DurationInSeconds": 0
    },
    "RunConfig": {
      "TimeoutInSeconds": 60,
      "MemoryInMB": 1000,
      "ActiveTracing": true
    },
    "SuccessRetentionPeriodInDays": 31,
    "FailureRetentionPeriodInDays": 31,
    "Status": {
      "State": "CREATING",
      "StateReasonCode": "CREATE_PENDING"
    },
    "Timeline": {
      "Created": "2024-10-16T22:50:38.900000+00:00",
      "LastModified": "2024-10-16T22:50:38.900000+00:00"
    },
    "ArtifactS3Location": "cw-syn-results-petclinic-267269458124-ap-southeast-1",
    "RuntimeVersion": "syn-nodejs-puppeteer-6.2",
    "Tags": {}
  }
}
  adding: nodejs/ (stored 0%)
  adding: nodejs/node_modules/ (stored 0%)
  adding: nodejs/node_modules/pet-clinic-traffic.js (deflated 64%)
Uploading canary script for canary pet-clinic-traffic to S3
{
  "ETag": "\"a505a6a3688ae3ef43b26a7bb5f6eb40\"",
  "ServerSideEncryption": "AES256"
}
ENDPOINT is http://a38d5ea1dc1c44c30b2ae71b8bca6e81-1124858756.ap-southeast-1.elb.amazonaws.com
Creating/updating canary pet-clinic-traffic
{
  "Canary": {
    "Id": "020ff953-9ebb-41d7-932e-d732579c4e0c",
    "Name": "pet-clinic-traffic",
    "Code": {
      "Handler": "pet-clinic-traffic.handler"
    },
    "ExecutionRoleArn": "arn:aws:iam::267269458124:role/service-role/CloudWatchSyntheticsRole-PetClinic-267269458124-ap-southeast-1",
    "Schedule": {
      "Expression": "rate(1 minute)",
      "DurationInSeconds": 0
    },
    "RunConfig": {
      "TimeoutInSeconds": 60,
      "MemoryInMB": 1000,
      "ActiveTracing": true
    },
    "SuccessRetentionPeriodInDays": 31,
    "FailureRetentionPeriodInDays": 31,
    "Status": {
      "State": "CREATING",
      "StateReasonCode": "CREATE_PENDING"
    },
    "Timeline": {
      "Created": "2024-10-16T22:50:44.310000+00:00",
      "LastModified": "2024-10-16T22:50:44.310000+00:00"
    },
    "ArtifactS3Location": "cw-syn-results-petclinic-267269458124-ap-southeast-1",
    "RuntimeVersion": "syn-nodejs-puppeteer-6.2",
    "Tags": {}
  }
}
  adding: nodejs/ (stored 0%)
  adding: nodejs/node_modules/ (stored 0%)
  adding: nodejs/node_modules/pc-visit-insurances.js (deflated 55%)
Uploading canary script for canary pc-visit-insurances to S3
{
  "ETag": "\"0269a6959fc673ea350fdf2c13516a7b\"",
  "ServerSideEncryption": "AES256"
}
ENDPOINT is http://a38d5ea1dc1c44c30b2ae71b8bca6e81-1124858756.ap-southeast-1.elb.amazonaws.com
Creating/updating canary pc-visit-insurances
{
  "Canary": {
    "Id": "7cf415e9-f450-48b7-84b2-5f149baf747e",
    "Name": "pc-visit-insurances",
    "Code": {
      "Handler": "pc-visit-insurances.handler"
    },
    "ExecutionRoleArn": "arn:aws:iam::267269458124:role/service-role/CloudWatchSyntheticsRole-PetClinic-267269458124-ap-southeast-1",
    "Schedule": {
      "Expression": "rate(1 minute)",
      "DurationInSeconds": 0
    },
    "RunConfig": {
      "TimeoutInSeconds": 60,
      "MemoryInMB": 1000,
      "ActiveTracing": true
    },
    "SuccessRetentionPeriodInDays": 31,
    "FailureRetentionPeriodInDays": 31,
    "Status": {
      "State": "CREATING",
      "StateReasonCode": "CREATE_PENDING"
    },
    "Timeline": {
      "Created": "2024-10-16T22:50:49.627000+00:00",
      "LastModified": "2024-10-16T22:50:49.627000+00:00"
    },
    "ArtifactS3Location": "cw-syn-results-petclinic-267269458124-ap-southeast-1",
    "RuntimeVersion": "syn-nodejs-puppeteer-6.2",
    "Tags": {}
  }
}
  adding: nodejs/ (stored 0%)
  adding: nodejs/node_modules/ (stored 0%)
  adding: nodejs/node_modules/pc-visit-billings.js (deflated 55%)
Uploading canary script for canary pc-visit-billings to S3
{
  "ETag": "\"d568f69a2e78ab6bd00387602fd1221f\"",
  "ServerSideEncryption": "AES256"
}
ENDPOINT is http://a38d5ea1dc1c44c30b2ae71b8bca6e81-1124858756.ap-southeast-1.elb.amazonaws.com
Creating/updating canary pc-visit-billings
{
  "Canary": {
    "Id": "6cda4635-ea89-4d43-a69c-ff071366c4cc",
    "Name": "pc-visit-billings",
    "Code": {
      "Handler": "pc-visit-billings.handler"
    },
    "ExecutionRoleArn": "arn:aws:iam::267269458124:role/service-role/CloudWatchSyntheticsRole-PetClinic-267269458124-ap-southeast-1",
    "Schedule": {
      "Expression": "rate(1 minute)",
      "DurationInSeconds": 0
    },
    "RunConfig": {
      "TimeoutInSeconds": 60,
      "MemoryInMB": 1000,
      "ActiveTracing": true
    },
    "SuccessRetentionPeriodInDays": 31,
    "FailureRetentionPeriodInDays": 31,
    "Status": {
      "State": "CREATING",
      "StateReasonCode": "CREATE_PENDING"
    },
    "Timeline": {
      "Created": "2024-10-16T22:50:54.920000+00:00",
      "LastModified": "2024-10-16T22:50:54.920000+00:00"
    },
    "ArtifactS3Location": "cw-syn-results-petclinic-267269458124-ap-southeast-1",
    "RuntimeVersion": "syn-nodejs-puppeteer-6.2",
    "Tags": {}
  }
}
Waiting a minute for canaries to finish creating or updating.
Done waiting. Starting canaries.
++ aws synthetics get-canary --name pc-add-visit --region ap-southeast-1
++ set +x
Starting canary pc-add-visit
++ aws synthetics get-canary --name pc-create-owners --region ap-southeast-1
++ set +x
Starting canary pc-create-owners
++ aws synthetics get-canary --name pc-visit-pet --region ap-southeast-1
++ set +x
Starting canary pc-visit-pet
++ aws synthetics get-canary --name pc-visit-vet --region ap-southeast-1
++ set +x
Starting canary pc-visit-vet
++ aws synthetics get-canary --name pet-clinic-traffic --region ap-southeast-1
++ set +x
Starting canary pet-clinic-traffic
++ aws synthetics get-canary --name pc-visit-insurances --region ap-southeast-1
++ set +x
Starting canary pc-visit-insurances
++ aws synthetics get-canary --name pc-visit-billings --region ap-southeast-1
++ set +x
Starting canary pc-visit-billings
Wait 10 minutes for canaries to generate traffic
Creating Service Level Objectives
null
There was an error creating an SLO - GetOwner99Availability, exiting
There was an error creating the SLOs, exiting

I can see that when it tried to create the service linked role, it already existed and failed:
An error occurred (InvalidInput) when calling the CreateServiceLinkedRole operation: Service role name AWSServiceRoleForCloudWatchApplicationSignals has been taken in this account, please try a different suffix.

I presume this is the issue. Is there a way to recover from this?

I think this is a benign warning which shouldn't matter. I suspect the issue might be services are not running correctly in the EKS cluster. Could you run kubectl get pod and post the output here? (maybe some pods are not running correctly)


[improve][pip] PIP-264: Enhanced OTel-based metric system

Motivation
Add PIP-264 (copied from https://github.com/apache/pulsar/issues/20197)
Verifying this change

[ ] Make sure that the change passes the CI checks.

This change is a trivial rework / code cleanup without any test coverage.
Does this pull request potentially affect one of the following parts:

If the box was checked, please highlight the changes

[ ] Dependencies (add or upgrade a dependency)
[ ] The public API
[ ] The schema
[ ] The default values of configurations
[ ] The threading model
[ ] The binary protocol
[ ] The REST endpoints
[ ] The admin CLI options
[ ] The metrics
[ ] Anything that affects deployment

Documentation

[ ] doc
[ ] doc-required
[x] doc-not-needed
[ ] doc-complete

Execution plan will be listed and tracked through https://github.com/apache/pulsar/issues/21121


Information about Teams provisioning is incomplete and contains an error

The page casually mentions that you can create Teams by using a <pnp: Teams> XML element. But how does it really work? Is there some guide out there? If yes: please provide a link.
Otherwise I propose the following changes:
Provide a "Copy and paste ready" sample
Copying the provided teams provisioning sample template and applying it fails. This is because the "boilerplate" <pnp:Provisioning> element is missing. You can get the correct syntax by running (New-PnPProvisioningTemplate).ToXML() or by asking Google. But users will copy the code (using the prominent "Copy" button) and wonder why Apply-PnPTenantTemplate fails. (I did that, lazy that I am 😛)
Provide a sample template in the "PnP Provisioning Templates Repository"
The page's second note mentions the PnP Provisioning Templates Repository, "A good resource for tenant templates", but searching this repo I failed to retrieve any demo template showing how to use <pnp:Teams> properly. There should be one that is easily retrievable.
Provide a sample of the recommended Connect-PnPOnline statement
I found a blog post that uses it like Connect-PnPOnline -Url "<your-tenant>" -Scopes "Group.ReadWrite.All","User.Read.All" - do I have to specify those scopes when connecting; seems so, otherwise OAuth fails.  (I'm mentioning this because I'm used to work with SharePoint site templates and PnP where you don't need the -Scopes parameter. So this might be something worth pointing out.)
Provide a corrected XML template
Even after learning of all the above provsioning still failed me. Why? I had to use Fiddler to learn that an empty Description (as shown in the sample XML!) for the team apparently is forbidden. Thus the shown template XML needs to be corrected. E.g. changing Description="" to Description="Test" fixed the error for me and made team provisioning (finally) successful.

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

ID: 3bc20d32-118d-065f-999a-e472744711cf
Version Independent ID: 140b729e-bc65-3036-f356-a2c8bbb69a1f
Content: PnP Provisioning Tenant Templates
Content Source: docs/solution-guidance/pnp-provisioning-tenant-templates.md
Product: sharepoint
GitHub Login: @spdevdocs
Microsoft Alias: spdevdocs

I recommend posting questions specific to PnP provisioning to their project issue list where the team involved in the project can better assist: https://github.com/pnp/PnP-Provisioning-Schema
As for the doc changes, care to submit a PR with your proposed changes?

@andrewconnell I'll give it a try, if it's ok that it might take some days for me to get this done.

Or never...


[TW#28652] Garbled UART when using Power Management

I'm currently running on master. My problem is exactly described in #1729 where support for power management is enabled in menuconfig and Enable dynamic frequency scaling (DFS) at startup is NOT enabled. I've tested this with 160 and 240 CPU freq, as well as 1500000 and 921600 baudrates.

@BrianPugh Do you refer to console UART output (ESP_LOG and printf), or are you using the UART driver? In the latter case make sure that use_ref_tick is set in uart_config_t (docs).
Finally, please add the IDF commit ID, sdkconfig, and some code to reproduce the issue, as requested in the issue template. Thanks.

Commit: Latest Master 1aa8e8d38ebe688c391359b5962707c1d135d07e
Just run the default "hello world" example with the following non-default menu-config:
Enable Power Management
CPU Freq -> 240MHz
Change the UART console frequency to something higher, like 921600.
This produces garbled output; it works fine at lower UART console frequencies, like 115200.

Right, when DFS is enabled, UART will be clocked from REF_TICK clock, which is 1MHz. Normally it is clocked from APB, which is 80MHz. With 1MHz base clock, i think it is not possible to obtain accurate 921600 baud rate, hence the garbled output.

Reasonable and makes sense; could we add this to the power management documentation?


Watch namespace filter regex is incorrect

Today, the regex for filtering the watch namespace is set here as "^[a-z]([-a-z0-9]*[a-z0-9])?$".
This regex does not match the valid regex for kubernetes namespaces, which is: '[a-z0-9]([-a-z0-9]*[a-z0-9])?'. which can be seen in this error message trying to create a namespace:
k create ns AWFEA
The Namespace "AWFEA" is invalid: metadata.name: Invalid value: "AWFEA": a DNS-1123 label must consist of lower case alphanumeric characters or '-', and must start and end with an alphanumeric character (e.g. 'my-name',  or '123-abc', regex used for validation is '[a-z0-9]([-a-z0-9]*[a-z0-9])?')

This issue is causing a major problem for one of our customers whose namespace starts with a number. They do not have cluster level permissions in their cluster and because their namespace doesn't match this regex, the operator is defaulting to cluster level permissions and failing.

I made a PR to update the regex at https://github.com/Altinity/clickhouse-operator/pull/992, I'd appreciate if we could get this merged quickly to unblock our customer! Thank you

Thanks for the quick review @Slach. Is there an ETA when 0.20 may be released? I’d be happy to back port this change to 0.19 if we could get a release quickly. Thanks

hey @Slach any chance you can advise on the above^? Thanks

Hi @mcgrawia , we will backport it to 0.19.1. That should be out next week.

Thanks @alex-zaitsev! will keep an eye out for that

fixed on https://github.com/Altinity/clickhouse-operator/pull/992


pkg/storage: lake packages assume Put and PutIfNotExist atomicity not provided by FileSystem

This issue has been with us for as long as pkg/stroage, but #4274 brings it into focus.
The lake, lake/commits, lake/data, and lake/journal packages all contain uses of pkg/storage.Engine.Put and PutIfNotExist that assume the returned io.WriteCloser will create an object at the given path atomically when its Close method is called. If it does not, those packages can observe empty or partial objects, resulting in transient or permanent errors for lake operations.
While pkg/storage.S3Engine provides this atomicity, pkg/storage.FileSystem does not. We can fix that by changing the FileSystem implementations of Put and PutIfNotExist to create a temporary file and return an io.WriteCloser whose Close method will move the temporary file into place, but that probably isn't the behavior we want for zio/emitter, which implements the -o and -split flags and where I think we want to keep the current behavior of truncating existing files and allowing other processes to observe writes as they happen.
One way to resolve this tension is to make the change described in the previous paragraph while also introducing a new Engine method (call it PutNonAtomic for now, though that's an ugly name) whose semantics match the current (non-atomic) Put implementation provided by FileSystem.

PutIfNotExist currently does not prevent readers from seeing empty or partial objects. But on further reflection, I'm not sure there's any way to get both that and O_EXCL behavior.

Good point.

A community zync user running Zed v14.0.0 recently bumped into a problem for which we believe this issue was the root cause. They reported seeing this stack trace from zed serve when running zed ls.
{"level":"error","ts":1715345700.1837773,"logger":"journal","caller":"journal/store.go:100","msg":"Loading snapshot","error":"malformed zng record","stacktrace":"github.com/brimdata/zed/lake/journal.(*Store).load\n\t/go/pkg/mod/github.com/brimdata/zed@v1.14.0/lake/journal/store.go:100\ngithub.com/brimdata/zed/lake/journal.(*Store).All\n\t/go/pkg/mod/github.com/brimdata/zed@v1.14.0/lake/journal/store.go:242\ngithub.com/brimdata/zed/lake/pools.(*Store).All\n\t/go/pkg/mod/github.com/brimdata/zed@v1.14.0/lake/pools/store.go:40\ngithub.com/brimdata/zed/lake.(*Root).ListPools\n\t/go/pkg/mod/github.com/brimdata/zed@v1.14.0/lake/root.go:235\ngithub.com/brimdata/zed/lake.(*Root).BatchifyPools\n\t/go/pkg/mod/github.com/brimdata/zed@v1.14.0/lake/root.go:185\ngithub.com/brimdata/zed/runtime/sam/op/meta.NewLakeMetaScanner\n\t/go/pkg/mod/github.com/brimdata/zed@v1.14.0/runtime/sam/op/meta/scanner.go:23\ngithub.com/brimdata/zed/compiler/kernel.(*Builder).compileLeaf\n\t/go/pkg/mod/github.com/brimdata/zed@v1.14.0/compiler/kernel/op.go:236\ngithub.com/brimdata/zed/compiler/kernel.(*Builder).compile\n\t/go/pkg/mod/github.com/brimdata/zed@v1.14.0/compiler/kernel/op.go:609\ngithub.com/brimdata/zed/compiler/kernel.(*Builder).compileSeq\n\t/go/pkg/mod/github.com/brimdata/zed@v1.14.0/compiler/kernel/op.go:405\ngithub.com/brimdata/zed/compiler/kernel.(*Builder).Build\n\t/go/pkg/mod/github.com/brimdata/zed@v1.14.0/compiler/kernel/op.go:82\ngithub.com/brimdata/zed/compiler.(*Job).Build\n\t/go/pkg/mod/github.com/brimdata/zed@v1.14.0/compiler/job.go:116\ngithub.com/brimdata/zed/compiler.(*lakeCompiler).NewLakeQuery\n\t/go/pkg/mod/github.com/brimdata/zed@v1.14.0/compiler/lake.go:53\ngithub.com/brimdata/zed/runtime.CompileLakeQuery\n\t/go/pkg/mod/github.com/brimdata/zed@v1.14.0/runtime/compiler.go:58\ngithub.com/brimdata/zed/lake/api.(*local).QueryWithControl\n\t/go/pkg/mod/github.com/brimdata/zed@v1.14.0/lake/api/local.go:120\ngithub.com/brimdata/zed/lake/api.(*local).Query\n\t/go/pkg/mod/github.com/brimdata/zed@v1.14.0/lake/api/local.go:108\ngithub.com/brimdata/zed/cmd/zed/ls.(*Command).Run\n\t/go/pkg/mod/github.com/brimdata/zed@v1.14.0/cmd/zed/ls/command.go:83\ngithub.com/brimdata/zed/pkg/charm.path.run\n\t/go/pkg/mod/github.com/brimdata/zed@v1.14.0/pkg/charm/path.go:11\ngithub.com/brimdata/zed/pkg/charm.(*Spec).ExecRoot\n\t/go/pkg/mod/github.com/brimdata/zed@v1.14.0/pkg/charm/charm.go:63\nmain.main\n\t/go/pkg/mod/github.com/brimdata/zed@v1.14.0/cmd/zed/main.go:64\nruntime.main\n\t/usr/local/go/src/runtime/proc.go:267"}

They were able to share their lake data and we narrowed down the repro to seeing themalformed zng record error when attempting to read the pools/snap.zng with zq. @nwt examined the snap.zng file and observed that it appeared to be truncated. This known open issue is one way we're aware of that such truncation might occur.
Fortunately the interim workaround in this case was simple. The pools/snap.zng file contains snapshot data that will be automatically be recreated when necessary, so the user was able to manually delete it and continue using the lake without hitting the stack trace.


Fix build on macOS and remove vendored packages in favor of Go modules

Thanks! Any special things that went wrong with macOS I need to be aware of in the future?

Thanks! Any special things that went wrong with macOS I need to be aware of in the future?

Nothing in particular, just it would no longer build -- outdated Golang std libraries and changes in macOS. Doing a quick go get -u ./... after nuking the ./vendor and using Go Modules was al that was needed to get it building again 👌
We can probably throw some Github Workflows together if you like? 🤔

Tried, but some errors and blockers on the go-releaser configuration for snap, so I had to postpone that. did add the universal binaries for darwin/macos through on the 1.0.4 release, hopefully they work.


Add docs on ArgoCD deep links

Show how to use ArgoCD deep links with Robusta.
Docs should go in https://docs.robusta.dev/master/setup-robusta/gitops/argocd.html#configuring-argo-links

Hey @aantn, Pritish here, fairly new to the community. Can I take up this issue? Thanks!
(might require some help down the line)

Yes, of course!

@aantn  is it still open can i work on this

@aantn is it still open can i work on this

Hey, sure you can take this up since I don’t have the bandwidth now. So, this issue is up for grab. Cheers🙌🏼

@CIPHERTron  thanks  will try to work on this issue

@CIPHERTron thanks will try to work on this issue

Thank you🙏🏼


#113 footer section

https://vaibhavtalkhande.github.io/fillform.github.io/
fix
#113 footer section
i have fixed all footer section ,built about us page ,contact and added nav to every page.

@VaibhavTalkhande kindly remove the testimonials option from navbar......rest of the option still on there except testimonial

reduced little bit size of image present in about page

rest of thing working properly 👍


Modify proxy yml properties to not depend on service

Currently, proxies are define like this:
service:
  proxy:
    # Do not add with 'http://' at the beginning!
    host: myproxy.host.com
    port: 8080

It must be:
proxy:
  # Do not add with 'http://' at the beginning!
  host: myproxy.host.com
  port: 8080

Modify also ProxyProperty class.

Duplicated.


Missing Sponsor logo on iPhone 5

Seems specific to World Recycle Week -- refs: https://trello.com/c/IHmTzO37
Tested in iPhone 6 (device), iPhone 5S on iOS 9.3 (simulator) and logo appears - does not appear on iPhone 5 (simulator) running iOS

Strangely, it appears for Four Legged Finishers on same device.

This is very strange. I re-ran the build (of current release-1.1.1 branch) running off from localhost instead of the mainbundle.js, and the logo appears on the iPhone 5. Looking into it more...

 Build 1.1.2 Campaign logo doesn't show on some campaigns

Rebundling the app seems to have fixed in 1.1.2(2).