Added 3DS support

Codecov Report

Merging #6 into master will decrease coverage by 8.67%.
The diff coverage is 70.96%.

@@            Coverage Diff             @@
##           master       #6      +/-   ##
==========================================
- Coverage   91.12%   82.45%   -8.68%
==========================================
  Files          20       23       +3
  Lines         665      798     +133
==========================================
+ Hits          606      658      +52
- Misses         59      140      +81

Impacted Files
Coverage Δ

nintendeals/classes/prices.py
64.70% <33.33%> (ø)

nintendeals/classes/games.py
71.69% <44.00%> (-19.97%)
:arrow_down:

nintendeals/classes/platforms/n3ds.py
47.36% <47.36%> (ø)

nintendeals/noj/info.py
65.11% <53.57%> (-26.69%)
:arrow_down:

nintendeals/noe/listing.py
76.56% <69.23%> (-16.92%)
:arrow_down:

nintendeals/noa/external/algolia.py
92.00% <75.00%> (-1.62%)
:arrow_down:

nintendeals/noe/info.py
85.89% <78.26%> (-5.41%)
:arrow_down:

nintendeals/noa/info.py
88.75% <81.25%> (-7.09%)
:arrow_down:

nintendeals/noj/search.py
85.00% <81.25%> (-8.34%)
:arrow_down:

nintendeals/noa/search.py
85.71% <82.35%> (-8.04%)
:arrow_down:

... and 12 more

Continue to review full report at Codecov.

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


Better checking and gm_defaults, better coverage, code dump.

Removing some code to make sure that useful code is tested!

Tests passing, and ignores working. Merging.


[tzatziki-spring] Spring-Web dependencies are transitive

It leads to a classpath poisoning since an application would behave differently based on the dependency presence or not in the production classpath.
Set those dependencies to provided and eventually handle the @LocalServerPort differently with a ServerPortFactory which would only load the property @ConditionalOnWebApplication

Hi all,
I'm working a spring boot none web application, when I try to use tzatziki I have the below error:
Caused by: io.cucumber.core.backend.CucumberBackendException: Error creating bean with name 'com.decathlon.tzatziki.steps.SpringJPASteps': Unsatisfied dependency expressed through constructor parameter 1: Error creating bean with name 'com.decathlon.tzatziki.steps.SpringSteps': Unsatisfied dependency expressed through field 'localServerPort': Failed to convert value of type 'java.lang.String' to required type 'int'; For input string: "${local.server.port}"
	at io.cucumber.spring.SpringFactory.getInstance(SpringFactory.java:137)
	at io.cucumber.java.AbstractGlueDefinition.invokeMethod(AbstractGlueDefinition.java:47)
	at io.cucumber.java.JavaHookDefinition.execute(JavaHookDefinition.java:64)
	at io.cucumber.core.runner.CoreHookDefinition.execute(CoreHookDefinition.java:46)
	at io.cucumber.core.runner.HookDefinitionMatch.runStep(HookDefinitionMatch.java:21)

It seems that SpringSteps tries to use the local port regardless of the type of the application

This PR https://github.com/Decathlon/tzatziki/pull/158 fixed the issue


Dms v2 to SD2

This configuration add DMS v2 checking, since this is the recommended one.

this config looks good and newest apimon image contains also changes on otcextensions which introduce sdk proxy for dmsv2
so next week we can try rollout

after first implementation it was found out that 2nd API provided in metric is wrongly defined.
It's missing mandatory query parameter and also it's not compatible with newly created endpoint dmsv2 as dmsv2 fetches also project ID while this API works without project ID.
The best way is to remove /products API from the metric defintion to avoid constant raise of minor issue due to error code 400

the removal of problematic API has fixed the issue. The implementation has been rolled out on PROD without problems


Add CMake support

Because CMake is becoming increasingly popular.

The tests fail due to not having strdup() available. It's not standard to begin with and I'm pretty sure Automake is shimming it in or doing magic on the compiler detection, which it technically shouldn't be doing. The general "best practice" for strdup() is to write it yourself.
char * strdup(const char *str) {
    char * dup = malloc(sizeof(char) * (strlen(str) + 1));
    if (!dup) return 0;
    return strcpy(dup, str);
}

It looks like AC_PROG_CC_C99 is doing -std=gnu99:
checking for gcc option to accept ISO C99... -std=gnu99

I'm sort of surprised strdup doesn't work in c99 mode anymore.

Like I said, strdup was never standardized, so c99 technically doesn't include it (I suppose some compilers could offer it, but you can't guarantee it).
The solution here can take a few forms. :)

I am not sure we want to maintain both automake and cmake. Should we instead switch to cmake and remove automake? If so, is there any particular reason why we should do that? Preferably with some more technical arguments than "it's more popular" :)
As for the strdup issue, I think that's a valid problem but should be raised and fixed as a separate issue.
strdup seems to be available in POSIX.1-2001 while we are compiling for c99.
I made this PR to fix that: https://github.com/spotify/sparkey/pull/35

CMake is more popular but that's not why I use it.
Firstly, it supports Ninja (and a slew of other build systems). Ninja has cut down my build times immensely, and I take any chance I get to work with it.
It also supports windows out of the box, including support for both MSVC as well as Cygwin or any other Unix-ey subsystem you want to run.
Though the number one reason why I use it is for its include_subdirectory command, which lets me nest all of my projects with the dependencies they need and keep a clean, out of source build for all of it (assuming all of the dependencies use CMake).
This lets me build my entire game engine, for example, with a single command and have the engine and all of its dependencies build using Ninja (takes ~30 seconds to build 6000 files).
The only down side is its sometimes awkward syntax. However, in my personal opinion it's loads more readable and maintainable than Automake's cryptic macro system.

Poul-Henning Kamp wrote a pretty amusing thrashing of autoconf and why we shouldn't use it anymore: https://queue.acm.org/detail.cfm?id=2349257

@a1kon Thanks for the link, that article speaks to my soul.

I am fine with changing to cmake if you also remove automake usage in the same PR

:+1: Will do, and will rebase on top of #35 as well.

Couldn't rebase off of #35 as it looks like @spkrka has a private repo.

Next problem - more GNU99-specific stuff. Not sure how standard you want to be but some of this definitely isn't portable.
[11/26] Building C object src/CMakeFiles/sparkey-bench.dir/bench.c.o
FAILED: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc    -O2 -Wall -Wextra -Wfloat-equal -Wshadow -Wpointer-arith -Werror -pedantic -std=c99 -D_POSIX_C_SOURCE=199309L -D_GNU_SOURCE -MD -MT src/CMakeFiles/sparkey-bench.dir/bench.c.o -MF src/CMakeFiles/sparkey-bench.dir/bench.c.o.d -o src/CMakeFiles/sparkey-bench.dir/bench.c.o   -c ../src/bench.c
../src/bench.c:45:26: error: use of undeclared identifier 'DT_DIR'
        if (d->d_type == DT_DIR) {
                         ^
../src/bench.c:47:33: error: use of undeclared identifier 'DT_REG'
        } else if (d->d_type == DT_REG) {
                                ^
2 errors generated.
[11/26] Building C object src/CMakeFiles/sparkey-cli.dir/main.c.o
ninja: build stopped: subcommand failed.

Rebased.
New errors are due to non-standard GNU extensions (other byproducts of using -std=gnu99).
Not sure how standard you want this to be, but if requiring a gnu99-compliant compiler is required we can do that as well.


Issues with the new Adaptive Banner

Hey All!
i have an issue with the new adaptive banner.
We are trying to use it in our application and when we request the size inside a Future Builder it Always returns 411x62
independent where the code is located.
Also when we try to request the ad, the banner most of the times is cut in half because of the height it was given
Here the code we are using:

FutureBuilder<AnchoredAdaptiveBannerAdSize?>(
      future: AdSize.getAnchoredAdaptiveBannerAdSize(
        Orientation.landscape,
        context.mediaQuerySize.width.truncate(),
      ),
      builder: (BuildContext context,
          AsyncSnapshot<AnchoredAdaptiveBannerAdSize?> snapshot) {
        if (!snapshot.hasData) {
          return Container();
        }
        final sizes = [snapshot.data ?? AdSize.largeBanner]; // Return the
        return Container(
          constraints: BoxConstraints(
            minHeight: sizes.first.height.toDouble() + 10,
          ),
          child: _getBanner(sizes)       //here we call PublisherBannerAd and return the AdWidget
);
      },
    );

Should we do something else?
Thanks!

@bparrishMines
Ok I Just Tried with the new Update from yesterday(and the example) and now it is still cutting but not always..
Here you can see an ad that is cut:

Also I saw that you are not supporting PublisherBannerAd i try to cast ad to PublisherBannerAd and it gives me the error:
type 'PublisherBannerAd' is not a subtype of type 'BannerAd?' in type cast
Is there any reason not to support it?
Thanks

@atrope I'm assuming you're referring to the Ad with the shoe that is cut off. Are you passing the full width of the device when retrieving the AdSize. According to Adaptive Banner Implementation Notes, they work best when

The adaptive banner sizes are designed to work best when using the full available width. In most cases, this will be the full width of the screen of the device in use. Be sure to take into account applicable display cutouts.

Also, when are you casting to PublisherBannerAd. In the AdListener callback or after instantiating a BannerAd?

Hey @bparrishMines  yes that's the on, sorry for not clearly pointing that out.
yes i am passing the full width as your example shows.
I Am also following your example and casting it after it has loaded and getting the width/height after setting the banner.

Could you verify that snapshot.data is not retuning null? The Ad looks as if it wants to show a large banner, but the height is set to the AdaptiveBannerAdSize height. But, I'm not sure how this would happen.
Also, what Ad is being created in _getBanner. I don't think I would be able to debug this without having a small sample of what is being done in that method.

hey @bparrishMines  i have changed the code to reflect 100% what you've done in your example.
I will try to produce a sample and put it here.

Hello @bparrishMines With 0.13 the Casting problem was solved 🥳
As for the cut banner, I talked with my google rep and she directed me to this article:
https://support.google.com/admanager/answer/9464128
I had to create a new Ad Unit and LI on Ad Manger for this Adaptive banner to work.
Maybe we should have this banner documented when referring to Adaptive Banners?
Also i was confusing Adaptive Anchored Banners with Adaptive Inline Banners that would also provide InLine adaptive banners (I Guess those will be coming soon :))
I Guess This issue can be closed :)

Hello @bparrishMines With 0.13 the Casting problem was solved 🥳
As for the cut banner, I talked with my google rep and she directed me to this article:
https://support.google.com/admanager/answer/9464128
I had to create a new Ad Unit and LI on Ad Manger for this Adaptive banner to work.
Maybe we should have this banner documented when referring to Adaptive Banners?
Also i was confusing Adaptive Anchored Banners with Adaptive Inline Banners that would also provide InLine adaptive banners (I Guess those will be coming soon :))
I Only realized that there is one problem.
Is it possible to return the Loaded Banner size?
I Know we can get the request size via the "banner.sizes" but i was looking for the actual rendered banner size.

I created https://github.com/googleads/googleads-mobile-flutter/issues/276 to track work on retrieving the loaded AdSize. I'm going to go ahead and close this issue.


[No QA] Commit version changes for the NSE

Details
Adds the info.plist version change for the Notification Service Extension that we added in https://github.com/Expensify/App/pull/34170
Fixed Issues
$ https://github.com/Expensify/App/issues/33961
Tests
None
Offline tests
None
QA Steps
None

[ ] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

Android: Native

Android: mWeb Chrome

iOS: Native

iOS: mWeb Safari

MacOS: Chrome / Safari

MacOS: Desktop

The ad-hoc iOS build keeps failing because it can't install pods 😕
[!] CocoaPods could not find compatible versions for pod "hermes-engine":
  In snapshot (Podfile.lock):
    hermes-engine (from `../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec`)

  In Podfile:
    hermes-engine (from `../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec`)

It seems like you've changed the version of the dependency `hermes-engine` and it differs from the version stored in `Pods/Local Podspecs`.
You should run `pod update hermes-engine --no-repo-update` to apply changes made locally.
Error: Final attempt failed. Child_process exited with error code 1

Running pod install locally yields no missing Podfile.lock changes.

Actually now that I think about it, the build workflow is totally separate from the create new version workflow so it doesn't make sense to test that. I think we can just move forward with No QA.

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/roryabraham in version: 1.4.25-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/mountiny in version: 1.4.25-10 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅


Arithmetic underflow/overflow when calling  relayMessages()

Hi Team,
I have recently encounter below error: ← [Revert] panic: arithmetic underflow or overflow (0x11). I figured out that it is caused by calling GmpTestTools.relayMessages(); second time in same test.
What exactly I did to get this error?

Created function test_teleportTokens() and everything I did below is under this single test.
Prepared whole setup, deployed source and destination contracts on 2 different chins
I minted some NFT tokens on source chain.
I have sent cross-chain message to destination chain triggering mint same tokens on destination chain
Called  GmpTestTools.relayMessages(); to actually perform sent messages from source to dest chain
Everything worked perfectly fine now we have same tokens minted on source and destination chain
Now I called transfer tokens on destination chain to other user -> this triggered another cross-chain message from dest to source chain this time to update tokens ownership.
Transaction passes, so I call GmpTestTools.relayMessages(); second time in same test to trigger proper function on source chain this time
I receive mentioned Arithmetic underflow/overflow error
I created second function test_teleportTokensBackward and I just recreated second part of 1st test, so sending tokens from dest to source chain and this test passes without any problem
Conclusion -> my contracts and logic are built fine, but somehow relayMessage() function is bugging out while called 2nd time in one go.

So my question is, how do I avoid this issue? Do I need to somehow reset relayMessages before calling it 2nd time or do I need to do something else or this is currently unavoidable and only way to test things is to just use Arithmetic underflow/overflow when calling  relayMessages() function just one time per test function?

Hi @Lohann
Thank you for taking a look into this. Let me know if you need more details or code examples.
There is also another thing I would like to ask about. In usual tests we use setUp() function to execute some code before every single test in our Test.t.sol, and if we put GmpTestTools.setup() in setUp() function and run tests one by one with foundry --mt flag everything works good. But if we run forge test, so all tests at once then this error pops up: [FAIL: setup failed: vm.createFork: Could not instantiate forked environment with fork url: https://evm.shibuya.astar.network] setUp() (gas: 0). If you have any idea how to solve this one as well it would be great. Thank you in advance for your time and help

Hi @Nlferu, thank you for reporting this issue, will investigate. Are you using the examples from this repo? is there a easy way to reproduce this issue?

we put GmpTestTools.setup() in setUp() function and run tests one by one with foundry --mt flag everything works good. But if we run forge test, so all tests at once then this error pops up: [FAIL: setup failed: vm.createFork: Could not instantiate forked environment with fork url https://evm.shibuya.astar.network] setUp() (gas: 0) or [FAIL: backend: failed while inspecting].

I see, if you can provide some setup or way to reproduce the issue will be a great help, also make sure you are using the latest forge command line tool version, we found some issues in previous versions.


Add margin in file tree

Please add more margin (5px for example) in file tree
Because without a margin it is too close to a vertical line, which is not very aesthetic

@okineadev, what file icon theme are you using? Thanks!

https://marketplace.visualstudio.com/items?itemName=PKief.material-icon-theme


Frame receiving hook with member functions

Hi.
This issue is similar to #43.
Function
uvgrtp::media_stream::install_receive_hook(void *arg, void (*hook)(void *, uvgrtp::frame::rtp_frame *))

provides a way of pulling frames via callback function, but this doesn't work with member functions. The conversion is not provided.
Also, which is the recommended way of getting frames, pulling in a loop, or installing a hook? Hook seems much more convenient.
Thank you.

Oh, this was already mentioned in #57.. Yikes.

There's really no recommended way, it just depends on your use case. Kvazzup uses hooking because of the way its filters are implemented but I've also used polling in applications that had a small and simple event loop in the main() function.

@wowaser It is possible to use classes with the RTP (unlike the RTCP) in current implementation. You just have to pass the class as a void parameter (arg) and then have the installed function be static where you call the converted arg->function(frame).
C++ API for this will probably come in 2.2 version of uvgRTP.

My view is that with hooks, there is no extra delay or CPU usage compared to pulling, but when using pulling, the code is clearer and easier to synchronize. Make the decision based on which is more important.
I'm closing this since it is already possible to use classes with current RTP API and #57 will bring the C++ API to uvgRTP.


Add more tests for F32x4

This brings the coverage up to 21.21%
I will add the same tests for I32x4 next.

Awesome, thanks!


swift repl suppresses warnings

Description
~ swift repl
Welcome to Apple Swift version 5.9.2 (swiftlang-<IP_ADDRESS>.56 clang-15<IP_ADDRESS>.5).
Type :help for assistance.
  1> #warning("test")
  2> let a = "sdad""
error: error while processing module import: error: repl.swift:5:15: error: unterminated string literal
let a = "sdad""
              ^

#warning at line #1 is suppressed but the error at line #2 is not.
Reproduction
[Provided in the previous section]
Expected behavior
I expect warnings to be emitted as well.
Environment
Swift 5.9.2, current 5.10 nightly, current main toolchain, none work as expected as of writing this issue.
Additional information
No response

Use-case: checking to see if a nightly image actually solves a warning (like the Sendable warnings).
I just use swift -e for that right now.

In swift repl mode, lldb will only output errors. One workaround is to use LLDB_SWIFT_DUMP_DIAGS=1 to see all diagnostics. e.g.
$ LLDB_SWIFT_DUMP_DIAGS=1 swift repl Welcome to Apple Swift version 5.10 (swiftlang-<IP_ADDRESS>.3 clang-15<IP_ADDRESS>.999). Type :help for assistance.   1> #warning("warn") repl.swift:1:10: warning: warn #warning("warn")


Create dbt converter for Airbyte Snapchat source connector

The goal of this task is to ensure the Airbyte Snapchat connector output can be used to run Fivetran's dbt analytical model.
Definition of Done:

Create a pull request that adds new tables or views, enabling the execution of Fiventran's dbt with Airbyte output data.
Update the documentation inside the connector folder to explain how to configure the user dbt package to run the analytical model.

Resources:

Check example of how it was done for Zendesk Support connector

This seems interesting and I will work on this! @marcosmarxm

Hey @marcosmarxm
Please see this and lmk if any modifications are needed!

Fivetran Stream
Airbyte Stream

ad_account_history
❌ It doesn't exist

ad_history
ads

ad_hourly_report
ads_stats_hourly

ad_squad_history
adsquads

ad_squad_hourly_report
adsquads_stats_hourly

campaign_history
campaigns

campaign_hourly_report
campaigns_stats_hourly

creative_history
❌ It doesn't exist

creative_url_tag_history
❌ It doesn't exist

Note:

adaccounts seems to be related to present state and not history likewise for creative_history and creatives
we dont have tag related stuff for creative_url_tag_history

Waiting for your approval for the next step!

Fivetran Stream
Airbyte Stream

ad_account_history
it is called adaccounts

ad_history
ads

ad_hourly_report
ads_stats_hourly

ad_squad_history
adsquads

ad_squad_hourly_report
adsquads_stats_hourly

campaign_history
campaigns

campaign_hourly_report
campaigns_stats_hourly

creative_history
creatives

creative_url_tag_history
❌ It doesn't exist

Can you check Snapchat API documentation and compare with Fivetran columns for creative_url_tag_history from where these values come from?

@Suraj-Vishwakarma70 the creative_url_tag_history is a table created from created_history.web_view_properties.url.
Example: www.example.com/product?utm_source=new+subscribers&utm_medium=email&utm_campaign=black+friday+sale&utm_content=first+cta+button
The table will be:

key
value

utm_source
new+subscribers

utm_medium
email

...

@Suraj-Vishwakarma70 can you give an update about the status of this task?

Hey @marcosmarxm
I didnt quite understand what to do with creative_url_tag_history....Since we dont have that table directly , we will need to directly make a new table by extracting URL parameters from the web_view_properties.url field in the creative_history stream ....or something like thar right?
Apart from this I'll make a PR with commits of transformations for all other tables today!


support rangeQuery and regexpQuery in constant_keyword field type

Description
Support rangeQuery and regexpQuery in constant_keyword field type
Related Issues
Resolves #[Issue number to be closed when this PR is merged]

Check List

[x] Functionality includes testing.
[ ] API changes companion pull request created, if applicable.
[ ] Public documentation issue/PR created, if applicable.

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

@gaobinlon, can you please have a look when you are free.

@dblock can you help review the PR? very thank you.

Thanks for a more thorough review than me @reta. 100% agreed with everything you are asking for ;)

@kkewwei -- do you think it would make sense to push this logic down into ConstantFieldType?
In particular, it would allow people to do more complex string matches on index name in IndexFieldType (beyond what's possible with IndexNameExpressionResolver).

@kkewwei -- do you think it would make sense to push this logic down into ConstantFieldType?
In particular, it would allow people to do more complex string matches on index name in IndexFieldType (beyond what's possible with IndexNameExpressionResolver).

@msfroh You mean we should keep the ConstantFieldType simple?  I have no opinion or experience with this, it's just that the common query(rangeQuery and regexpQuery) on the field will throw exceptions.

@msfroh You mean we should keep the ConstantFieldType simple? I have no experience with this, it's just that the common query(rangeQuery and regexpQuery) on the field will throw exception, it seems worth to implement.

Right now, we have two subclasses of ConstantFieldType: IndexFieldType and ConstantKeywordFieldType. This change is improving ConstantKeywordFieldType, which is great!
My question was whether we could move the logic into the parent class (ConstantFieldType), so that both the subclasses could get the benefit "for free".
That said, I think the current matches logic in ConstantFieldType doesn't fit well for something like a range query. The refactoring required (maybe replace matches with a protected abstract getValue() method?) is probably more scope creep than we need in this PR.
Maybe we could open a follow-up issue to move things around so both ConstantFieldType subclasses could share the bulk of the implementation.
@hasnain2808  -- do you have any thoughts on this, as the original implementer of constant_keyword?

@msfroh, thank you for your suggestion.
At first, I will try to put the methods in the subclass, and then see if there's anything to simplify.

@msfroh, I looked at the details. For IndexFieldType, it is used for index name matching. Index name matching can support wildcard matching, but does not support regexp and range matching.
At present it seems useless to putrangeQuery and regexpQuery in the parent class.

For IndexFieldType, it is used for index name matching. Index name matching can support wildcard matching, but does not support regexp and range matching.

Not yet!

So it seems useless to putrangeQuery and regexpQuery in the parent class at present .

The idea is that if we do move it to the parent, then we can support these query types on index names.
Again, though -- I think we can safely defer that to another issue. (I don't even know if anyone actually wants to be able to filter on index names by range or regex.)


Pass parameters to a policy assignment inherited from parent MG - Custom LZ

Community Note
Am trying to pass in parameters to a policy assignment which is inherited from the parent MG. Is there any work around?
Below is what am trying to achieve,
Am having a custom LZ called "A" and there are two child MG "A1" and "A2" for this custom lz "A".
There are few policies which are inherited from "A" to "A1" and "A2".  And just for "A1" and  on one of the inherited policies from "A" I would like to pass in a parameter/value. Is this possible?
To achieve this I tried to exclude the policy assignment in A1 which got inherited from "A" and then directly assign a policy to "A1" with the preferred value, but that didn't work for me. Because exclusion didn't work on the child custom lz.
A real world example is, I have the in-built policy "Audit-AppGW-WAF" assigned to "A" with "Deny" effect and to the child "A1" I would like to change it to "Audit" and for "A2" I would like to change it to "Deny"
Any insight is appreciated.

Hi @VenkateshJayachandra
Can I ask the reason for the management group design?
If you have this sort of requirement then it may be the hierarchy is not optimal.
Thanks

I can answer that @matt-FFFFFF - unfortunately this is one of those 1/100 scenarios where we’ve had to deviate a little from the standards.  The environment we’re working on has multiple third parties who also look after the environment.  In this case we have a requirement to have multiple “staging” areas - specifically around security where there is a requirement for workloads to be moved to an MG that a third party can use to “test” their Sentinel alerts in a “staging” LAW, that is separate from the “production” LAW, which means we need to pass different parameters for the activity and diagnostic logging whilst this testing takes place.  Once it is signed off the subs are then moved to the Corp or Online MGs.  The second child MG has all Corp level policies assigned to it, albeit all set to audit, as there are multiple brownfield subscriptions that need to be migrated and the client would like a safe area to move these to to evaluate and remediate policy compliance without any policies being set to deny.  It’s basically a small canary environment.
A long story, hopefully that makes sense.

@gbr759 That's understandable but not everyone has this kind of architecture and is working with such Corp/Online setup. Moving subscriptions between different MGs where different policies are "working" can cause a lot of "pain". In the end it makes totally sense that parameters which are closer to the final "object" overwrites the above ones.


Release 1.0 stable

I think the client is stable enough for first release. I've release Beta 2 Beta 3. Please give it a try and report back any problems. If there is no serious issues, I will release 1.0 in a week (target 2/28/2017).

Actually to be clear it is 1.0.0b3 there were some missing requirements in setup.py which broke the build and were fixed in 1.0.0b3

agree 1.0.0b3 should be good (https://github.com/kubernetes-incubator/client-python/compare/v1.0.0b2...v1.0.0b3)

Updated first comment to to beta 3. I wrote it before we found the bug in beta 2 setup.

Few questions:

How do you want us to report issues, open up the issue right away or report it first elsewhere and then if it is valid open it up?
Are we going to see up to date examples with the better approach of setting up/loading the kubernetes config?
I actually do have an situation where I'm not sure if it counts as an issue but I my problem is as such. When accessing the namespace hardware information my expectation is that I should be able to access the dictionary keys as ordinary members but it does not seem the case for the below two cases:

 1. response.spec.containers[0].resources.limits["cpu"]
 2. response.spec.containers[0].resources.limits["memory"]

Am I right to have the prior expectation or is this working as intended?

I think like the rest of kubernetes, slack channel of SIG is the best starting point, then maybe creating issues.
We have some examples on that, what do you have in mind? PR is welcome :)
That should work if cpu or memory is in that map (that is not there all the time). Check if "cpu" in ... first.

In addition to what @mbohlool said, would love to see code snippets in the issues, so we can then turn that into unit or e2e tests quickly.
Thanks,
dims

I'm on the kubernetes.slack.com, is there a dedicated channel for talking about this codebase?

Follow up question, what will the protocol be now for new releases, lets say we find a bug and a fix goes in, when do we bump it?

Depends on the problem and how severe it is. We can decide on a case by case basis for now I guess.

Look like I need to call the stable release 1.0.1 to make sure it is bigger than 1.0.0b*.

Can we go with v1.1.0 instead? My reasoning is that if we go off of http://semver.org/ we are releasing a minor change and so the minor should be bumped once we deem it fit for public consumption.  If we see that there are any issues then we deliver a fix and that would be considered a patch such as the recent delivery we did on exec and extra data from the channel.
Sent from my iPhone

On Feb 26, 2017, at 4:18 AM, Mehdy Bohlool<EMAIL_ADDRESS>wrote:
Look like I need to call the stable release 1.0.1 to make sure it is bigger than 1.0.0b*.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.

@mbohlool 1.0.0 is higher than 1.0.0b in all the typical tools like pip etc. So we should be good. if we do see a problem, then we can release a 1.0.1

Hi @mbohlool & @dims, which release version will we be going with?

@dims Sure, I was wondering if we can just skip any problem by using 1.0.1, but if packaging tools understand that 1.0.0 > 1.0.0b then we should be good.

@mrmcmuffinz It's valid semver to have a beta suffix which is deemed less than the final release with the unsuffixed number http://semver.org/#spec-item-11

@mbohlool ok, though how does that fit with what is in in CHANGELOG.md  as I see v1.0.1?
@WilliamDenniss ok, I don't disagree with that statement nor do I see where I made the opposite claim. Could you please clarify where the misunderstanding is?

@mrmcmuffinz I will change that.

The release is live: https://github.com/kubernetes-incubator/client-python/releases/tag/v1.0.0


./thirdparty/javacpp is empty

Whether Deepwater repo is cloned or zip-downloded, the ./thirdparty/javacpp folder is empty. I just noticed that someone has forked it, could it be that it has been force pushed? Could someone please advise/work on a fix? Thanks.

./thirdparty/javacpp and other directories in thirdparty directory are git submodules, i.e., another Git repositories. When you build TensorFlow or MXNet with H2O and execute git submodule update --init --recursive command as per README, these repositories will be cloned.

except that when I do as you said (also as in
https://github.com/h2oai/deepwater/tree/master/tensorflow), I get the
following error (tried twice from a Mac OSX and Ubuntu 14.04):
$ cd ./thirdparty
$ git submodule update --init --recursive
fatal: Not a git repository (or any of the parent directories): .git
Any ideas?
Thanks,
-Mo
On Mon, Oct 31, 2016 at 1:33 PM, surekhajadhwani<EMAIL_ADDRESS>wrote:

./thirdparty/javacpp and other directories in thirdparty directory are git
submodules, i.e., another Git repositories. When you build TensorFlow or
MXNet with H2O and execute git submodule update --init --recursive
command as per README, these repositories will be cloned.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/h2oai/deepwater/issues/15#issuecomment-257380079, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AGQHR2NZGFbiqkKkV0QSJaaVqShXTVkUks5q5jRpgaJpZM4KlKIX
.

NM, it's working properly. Thanks.


Integrate (some) AMP Story tests

This PR supersedes #52.
This very lightly integrates a single test from amp-story/linter into the AMPBench UI.
Before:

After (URL not AMP Story):

After (URL is valid AMP Story)

After (URL is not valid AMP Story)

I've tried to make this first integration as minimal and non-intrusive as possible. (May attempt some refactorings in the future.) The main point of bumpiness is that the AMP Story tests are async but ampbench tests are sync, so there a bit of code to convert between types.
Another issue is with the build system. The AMP Story tests are written in TypeScript, so the build and deployment systems have also been changed to handle this. (One workaround would be to have the AMP Story tests in a completely separate npm project. This way ampbench wouldn't need to know any TypeScript at all. However I think the long-term future is to have the code integrated more tightly, rather than less tightly so I'd rather not do this.
This is ready for review, PTAL.

Sorry, a few commits there to fix merge conflicts, might've accidentally re-introduced a lot of individual commits, though the diff should be almost the same.
This should be merged via a "squash and merge", there's no need to keep the individual commits around.


issue #477: Add baetyl_cron_app sql

Codecov Report

Merging #483 (af007e5) into master (3a75487) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #483   +/-   ##
=======================================
  Coverage   62.81%   62.81%
=======================================
  Files          92       92
  Lines        7664     7664
=======================================
  Hits         4814     4814
  Misses       2078     2078
  Partials      772      772

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 3a75487...af007e5. Read the comment docs.


Test Cases

A first pass at tests for sw_parser

I haven't added any assertions yet, but the requests will at least error if something is horribly wrong.

Refactored for the new profile import location.
Also added a fixture (using my imported profile) to support tests that depend on a summoner and it's mons/runes/etc.  ATM I'm using it in tests in my "planner" module, but I figure it might be useful in other PRs/tests before my planner PR is ready.

I left this sitting for some time because the sw_parser app is being completely refactored into a different app. I didn't have any direction to give until now. In general I'd say copy the filesystem organization and testing approach I'm using in the data_log app.

Fixtures should be added for required data to use during testing, like a user or bestiary data. Fixture should live in the same app as the test routines that rely on them. Don't rely on persistent test database with preloaded data.
Only put objects that are required specifically by the tests in the fixtures. (use dumpdata --pks option). Nulling out foreign keys by hand is preferable - i.e. profile import does not need Skill objects, just Monster objects populated.
Sample data should be stored in a separate file and not direct in code.

Since I've modified so much on the data log parsing side of things, I don't expect any work to update that for this PR. I'd prefer it be removed, and if you don't mind I will grab a lot of the sample data for usage in the new tests as I write them.

I was only trying to capture logs as a basis for the logs refactor.  If you have already captured alternative test cases, this duplicates that effort and can be closed.

... and of course if there's something worth preserving, feel free to do so.

P.S. While I agree with the use of fixtures (vs imports) in practice, I strongly suggest preserving the original JSON files.  Remember that the logs are tightly coupled to the summoner's profile.  I don't use fixtures often, but I assume that you'll create a massive headache if you were to make changes to the underlying models.  What happens to the fixtures?  Do you import, migrate, and regenerate them?
If you keep the JSON (and maybe a management command that generates fixtures), it's trivial to generate them any time the underlying data structures change.

Yes, all sample game data used in testing is original format since parsing the game data is what is being tested. Fixtures are only (at this moment) for a few instances of various bestiary models that back foreign keys required by the log data, such as monsters, summon scrolls, etc.


wrong parentage GO:0031262  Ndc80 complex

GO:0031262 Ndc80 complex is_a GO:0180019 Knl1/Spc105 complex. Something has gone awry :-)

what should it be?

is_a GO:0032991 protein-containing complex
knl1/spc105 are two separate subcomplexes of the outer kinetochore.

This problem is discussed in this ticket, I just dodn't have time to fix it before I went off.
https://github.com/geneontology/go-ontology/issues/25544
The fix is to remove the logic definitions and assert the parents.
v

If this is the same issue as in #25544, should this be closed?

I think so


CI: sshd: "Received disconnect from ::1 port 22:2: Too many authentication failures"

Seen on macOS 13 (Van_313_10, py313-mode_localhost-ansible10-strategy_linear) job https://github.com/mitogen-hq/mitogen/actions/runs/11700584431/job/32586284545?pr=1184
PLAY [integration/ssh/templated_by_inv.yml] ************************************

TASK [meta _raw_params=reset_connection] ***************************************
Wednesday 06 November 2024  09:54:28 +0000 (0:00:00.011)       0:04:56.538 ****

TASK [meta _raw_params=reset_connection] ***************************************
Wednesday 06 November 2024  09:54:28 +0000 (0:00:00.054)       0:04:56.592 ****

TASK [meta _raw_params=reset_connection] ***************************************
Wednesday 06 November 2024  09:54:28 +0000 (0:00:00.059)       0:04:56.652 ****

TASK [meta _raw_params=reset_connection] ***************************************
Wednesday 06 November 2024  09:54:28 +0000 (0:00:00.111)       0:04:56.764 ****

TASK [meta _raw_params=reset_connection] ***************************************
Wednesday 06 November 2024  09:54:28 +0000 (0:00:00.030)       0:04:56.795 ****

TASK [meta _raw_params=reset_connection] ***************************************
Wednesday 06 November 2024  09:54:28 +0000 (0:00:00.029)       0:04:56.824 ****

TASK [Templated variables in inventory ] ***************************************
Wednesday 06 November 2024  09:54:28 +0000 (0:00:00.014)       0:04:56.839 ****
[WARNING]: Platform darwin on host tt-password is using the discovered Python
interpreter at /usr/bin/python3, but future installation of another Python
interpreter could change the meaning of that path. See
https://docs.ansible.com/ansible-
core/2.17/reference_appendices/interpreter_discovery.html for more information.
[WARNING]: Platform darwin on host tt-host-key-checking is using the discovered
Python interpreter at /usr/bin/python3, but future installation of another
Python interpreter could change the meaning of that path. See
https://docs.ansible.com/ansible-
core/2.17/reference_appendices/interpreter_discovery.html for more information.
[WARNING]: Platform darwin on host tt-port is using the discovered Python
interpreter at /usr/bin/python3, but future installation of another Python
interpreter could change the meaning of that path. See
https://docs.ansible.com/ansible-
core/2.17/reference_appendices/interpreter_discovery.html for more information.
[WARNING]: Platform darwin on host tt-ssh-executable is using the discovered
Python interpreter at /usr/bin/python3, but future installation of another
Python interpreter could change the meaning of that path. See
https://docs.ansible.com/ansible-
core/2.17/reference_appendices/interpreter_discovery.html for more information.
[WARNING]: Platform darwin on host tt-private-key-file is using the discovered
Python interpreter at /usr/bin/python3, but future installation of another
Python interpreter could change the meaning of that path. See
https://docs.ansible.com/ansible-
core/2.17/reference_appendices/interpreter_discovery.html for more information.
fatal: [tt-remote-user]: UNREACHABLE! => changed=false
  msg: |-
    Failed to connect to the host via ssh: Warning: Permanently added 'localhost' (ED25519) to the list of known hosts.
    Permission denied, please try again.
    Received disconnect from ::1 port 22:2: Too many authentication failures
    Disconnected from ::1 port 22
  unreachable: true
ok: [tt-password]
ok: [tt-host-key-checking]
ok: [tt-port]
ok: [tt-ssh-executable]
ok: [tt-private-key-file]

PLAY [integration/ssh/templated_by_play_keyword.yml] ***************************

refs #1133, #1184

Use community.general.launchd, once https://github.com/ansible-collections/community.general/pull/9102 is merged/released


How do you generate the keyboard images?

Hi! This is a great product! Can you let me know how you generate the keyboard images? They're really great! Thanks!

Well that image is generated with HTML & CSS:
https://github.com/Vonng/Capslock/blob/5b17a11522ac67e518939de07557d49243265fbe/mac/images/capslock-v3.html


Encoding

Hi,
A suggestion.
Many people have not heard of character encodings, and Excel does not offer automatic detection, even in the latest version, 365.
Choosing the right encoding for csv files may confuse many users.
Perhaps the files could also be offered as odf or xlsx files?
Utf-8 might be a better bet for the csv files themselves.
L

Hi,
I see, office 2021 will support:

CSV (UTF-8) support

I uploaded xlsx files in release:
You can download it

Csv files, better to use editor to open it like: EmEditor or notepad++

Hi,
词汇.csv: utf-8 with confidence 0.99
汉字.csv: GB2312 with confidence 0.99  <---- Check this one
语法.csv: utf-8 with confidence 0.99
音节.csv: utf-8 with confidence 0.99

Hi,
I see, office 2021 will support:

CSV (UTF-8) support

I uploaded xlsx files in release:
You can download it

Thanks, I had not looked at the release, only the csv files

Many thanks!
fixed


Unable to locate application support path if Title of game includes special signs

I discovered it because a title in my game.project contains them and it vows an error:
ERROR:SCRIPT: saver/saver.lua:82: Unable to locate application support path for "Witchcrafter: Empire Legends": (-21)

My proposition to fix it is to modify this line in M.get_save_path():
local directory_path = DIRECTORY_PATH

to add extraction of signs that are not letters, number or underscore:
local directory_path = DIRECTORY_PATH:gsub("%W", "")

Or you can even add it above when DIRECTORY_PATH is defined.
local DIRECTORY_PATH = sys.get_config_string("saver.save_folder", PROJECT_NAME):gsub("%W", "")

This addition works in my case.

Nice catch, thanks!

Fixed in develop
Expose the saver.save_folder property to allow not rely on the project title. Apply your solution (with excluding spaces and underscores) on PROJECT_TITLE only


[WIP] Add support for VPC deployment for GCP via terraform overrides

Fixes | Closes | Resolves #1211

Please remove anything marked as optional that you don't need to fill in.
Choose one of the keywords preceding to refer to the issue this PR solves, followed by the issue number (e.g Fixes # 666).
If there is no issue, remove the line. Remove this note after reading.

Changes introduced in this PR:

Defines terraform override variables to able to deploy in VPC for GCP.

Types of changes
What types of changes does your PR introduce?
Put an x in the boxes that apply

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds a feature)
[ ] Breaking change (fix or feature that would cause existing features to not work as expected)
[x] Documentation Update
[ ] Code style update (formatting, renaming)
[ ] Refactoring (no functional changes, no API changes)
[ ] Build related changes
[ ] Other (please describe):

Testing
Requires testing

[x] Yes
[ ] No

In case you checked yes, did you write tests?

[ ] Yes
[ ] No

Documentation
Does your contribution include breaking changes or deprecations?
If so have you updated the documentation?

[ ] Yes, docstrings
[ ] Yes, main documentation
[ ] Yes, deprecation notices

Further comments (optional)
If this is a relatively large or complex change, kick off the discussion by explaining why you chose the solution you did and what alternatives you considered and more.

This looks great to me @aktech and I was able to test this out locally


Code actions of import can be more smart

They are apparently in alphabetical order. Is it possible to configure this? To prioritize the typing import over others?
Such as when I always do that, then the language server can be known of my habit? Or can we reorder it depending on the usage frequency?

This isn't limited to auto-import. If you try to use the code fix to add an import for an existing usage of Dict you'll have the same issue.

Since Pylance does not keep track of usage, it won't be able to suggest the appropriate lib based on usage frequency. Might be a feature that Intellicode/CoPilot might be able to implement since those make suggestions based on usage and AI models.


realtime page can't use

because of clickhouse table structure change and the timezone not pass to backend,the realtime page is empty

Are you using a clickhouse database?  That feature is experimental and currently can't be recommended.
Otherwise I'm seeing the way we're taking in dates for realtime data hasn't been touched in 2 years or so.


fix(core): make sure pausedMutations always execute in serial

when resumePausedMutations is called multiple times, we are starting the second paused mutation even though the first one has not yet finished. This can happen when a focus event and an online event happen in short succession
closes https://github.com/TanStack/query/issues/4896

@jligeza I've reverted, and here is the same PR again in draft version. I won't get around to taking another look soon, but maybe you want to look into or know why this happened 🤔

Codecov Report
Base: 91.84% // Head: 91.85% // Increases project coverage by +0.00% :tada:

Coverage data is based on head (b52ddd0) compared to base (8991d7c).
Patch coverage: 100.00% of modified lines in pull request are covered.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@           Coverage Diff           @@
##             main    #4906   +/-   ##
=======================================
  Coverage   91.84%   91.85%
=======================================
  Files         111      111
  Lines        4134     4135    +1
  Branches     1063     1065    +2
=======================================
+ Hits         3797     3798    +1
  Misses        316      316
  Partials       21       21

Impacted Files
Coverage Δ

packages/query-core/src/mutation.ts
93.87% <100.00%> (-0.19%)
:arrow_down:

packages/query-core/src/mutationCache.ts
100.00% <100.00%> (ø)

packages/query-core/src/queryClient.ts
96.95% <100.00%> (ø)

packages/query-core/src/retryer.ts
98.98% <100.00%> (+0.03%)
:arrow_up:

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

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

Works for me.


Proposed fix for issue 501

Adds proposed function signature overload.

You need to also include the generated baseline

Generated baseline is now included.

Sorry i merged that too fast. i think there is one more change needed.. instead of using "additional-signatures" use "override-signatures" to avoid having the extra signature at the bottom.

Ref #501


Cannot build gp-ocean-clip template

this.tree.add is not a function error.  Likely due to use of polygon-clipping, either issue with latest version, or something with now being directly used.

This seems to be the issue, webpacks being given too narrow a set of paths to resolve modules and it can only find v0.14 of splaytree at the top-level (used by martines lib) instead of v3.x of splaytree it needs, which is at node_modules/polygon-clipping/node_modules/splaytree
https://github.com/webpack/webpack/issues/6538
Testing out removing the resolves.modules section altogether

I'm testing going with adding the default search to the top per this ticket - https://github.com/webpack/webpack/issues/7606


[Bug]: Polybar PulseAudio empty string in label-muted doesn't render

Checklist

[X] I have read the appropriate section in the contributing guidelines
[X] I believe this issue is a problem with polybar itself and not a misconfiguration on my part
[X] I have searched for other open and closed issues that may have already reported this problem
[X] I have checked the known issues page for this problem.
[X] I have followed the debugging guide to narrow down the problem to a minimal config.

Steps to reproduce
polybar -q main -c "$DIR"/config &
Load pulseaudio module below with polybar. You shall see the icon and the spacing both are not there.
Minimal config
[module/volume]
type = internal/pulseaudio

; Sink to be used, if it exists (find using `pacmd list-sinks`, name field)
; If not, uses default sink
sink = alsa_output.pci-0000_12_00.3.analog-stereo

; Use PA_VOLUME_UI_MAX (~153%) if true, or PA_VOLUME_NORM (100%) if false
; Default: true
use-ui-max = false

; Interval for volume increase/decrease (in percent points)
; Default: 5
interval = 5

format-volume = <ramp-volume> <label-volume>

format-muted-prefix = 婢
format-muted-prefix-font = 2
format-muted-prefix-foreground = ${color.RED}

label-volume = %percentage%%
label-muted = ""
label-muted-foreground = #757575

ramp-volume-0 = 奄
ramp-volume-1 = 奄
ramp-volume-2 = 奄
ramp-volume-3 = 奔
ramp-volume-4 = 奔
ramp-volume-5 = 奔
ramp-volume-6 = 墳
ramp-volume-7 = 墳
ramp-volume-8 = 墳
ramp-volume-9 = 墳
ramp-volume-font = 2
ramp-volume-foreground = ${color.BLUE}

ramp-headphones-0 = 
ramp-headphones-1 = 

; Right and Middle click
click-right = pavucontrol

Polybar log
No response
Expected behavior
Running the polybar module, I should be able to see just the icon without any sort of spacing.
I should be able to pass in
label-muted=""
Actual behavior
The image below is what I currently see with label-muted = " ".

This is what I see without the space:

Window Manager and Version
bspwm 0.9.10
Linux Distribution
Archcraft 2022.07.18
Polybar version
polybar 3.6.3

Features: +alsa +curl +i3 +mpd +network(libnl) +pulseaudio +xkeyboard

X extensions: +randr (+monitors) +composite +xkb +xrm +xcursor

Build type: Release
Compiler: /usr/bin/c++
Compiler flags: -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security         -fstack-clash-protection -fcf-protection -Wp,-D_GLIBCXX_ASSERTIONS -g -ffile-prefix-map=/build/polybar/src=/usr/src/debug -flto=auto -O3 -DNDEBUG -Wall -Wextra -Wpedantic -Wsuggest-override
Linker flags: -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -flto=auto -Wall -Wextra -Wpedantic -Wsuggest-override  -Wall -Wextra -Wpedantic -Wsuggest-override

Additional Context / Screenshots
No response

Not a bug, this is expected behavior.
If a format (format-muted in your case) is empty, its prefix and suffix will not be shown.


use a Sequnce for the Board

Add new type for adjacent mine count to constrain values. Use Sequence for Game Board over List type.


Improve Kubernetes logo

@dankohn noted in another issue that we should improve the Kubernetes logo:
https://github.com/coreinfrastructure/best-practices-badge/issues/980#issuecomment-343303262
He pointed to this:  https://raw.githubusercontent.com/cncf/artwork/master/kubernetes/name_logo_color.png

We always scale the logos to the same height (logos are really different, and that makes them easier to handle).  The problem is that the Kubernetes logo we originally used has some top/bottom space, which resulted in the current oddness.  I'll try the the name_logo_color.png file pointed to, that may be the fix.  (Or not - but we won't know until we try).

We have a PR that fixes this, but something weird happened with the FOSSA check per #983.  The FOSSA check passed but somehow that didn't get noticed.  We'll wait to merge this for a little bit, so that the FOSSA folks can try to track down the process issue.


inited Helm config failed

Describe the bug
I try to run iter8 for the first time. But in the Helm installation step, I got the error below:
INFO[2023-04-19 17:42:01] inited Helm config
ERRO[2023-04-19 17:42:05] experiment launch failed                      stack-trace=below ...
::Trace:: unable to build kubernetes objects from release manifest: error validating "": error validating data: [ValidationError(Job.spec.template.spec): unknown field "resources" in io.k8s.api.core.v1.PodSpec, ValidationError(Job.spec.template.spec.securityContext): unknown field "readOnlyRootFilesystem" in io.k8s.api.core.v1.PodSecurityContext]
Error: experiment launch failed

To Reproduce
Run the tutorial of Kserve for performance testing
Screenshots

Desktop (please complete the following information):

OS: MacOS 12.6
iter8 version: 13
Kubernetes version: 1.22.2

were you following one of the tutorials or trying something else? Can you provide the full command you tried?

@Alan-Cha FYI.
Perhaps, the iter8 chart needs to be reverted back? It may be that the kubescape linting related changes to iter8 has broken something?

@kalantar were you following one of the tutorials or trying something else? Can you provide the full command you tried?

I just follow the example in Kserve tutorial for the first time.

Resources appear to be set in the wrong place. They should be set per-container as in this example.
Same is the case readOnlyRootFileSystem. Security context for pod and container are different objects. Please see API reference here. Security context for pod is through the podSecurityContext object, while for a container is through the securityContext object.

We will want to add CI to the hub repo to catch this in a test as part of the fix. We should also add tests for the other charts (at the minimum, the tests should check for a successful Helm install).

@anhquan075 I believe that this issue has been resolved with the latest version of Iter8 v0.13.14. I tested the Kserve tutorial on Kubernetes v1.22.7 without any issue. Please try again and let me know if there are any probelms.
For now, I will close the issue and I will reopen it you have any other concerns.


Displaying nested arrays?

I have this:
tp [[1,2,3],[44,55,66]], :second, :last, object_class: lambda{|ary| ary.first}

which I expect something like:

SECOND
LAST
OBJECT_CLASS

2
3
1

55
66
44

but I get a:
NoMethodError: undefined method `first' for 1:Fixnum
    from (irb):181:in `block in irb_binding'
    from /Users/gamov/.rvm/gems/ruby-1.9.3-p545@ector/gems/table_print-1.5.1/lib/table_print/fingerprinter.rb:38:in `call'
    from /Users/gamov/.rvm/gems/ruby-1.9.3-p545@ector/gems/table_print-1.5.1/lib/table_print/fingerprinter.rb:38:in `block in populate_row'
    from /Users/gamov/.rvm/gems/ruby-1.9.3-p545@ector/gems/table_print-1.5.1/lib/table_print/fingerprinter.rb:35:in `each'
    from /Users/gamov/.rvm/gems/ruby-1.9.3-p545@ector/gems/table_print-1.5.1/lib/table_print/fingerprinter.rb:35:in `populate_row'
    from /Users/gamov/.rvm/gems/ruby-1.9.3-p545@ector/gems/table_print-1.5.1/lib/table_print/fingerprinter.rb:19:in `block in hash_to_rows'
    from /Users/gamov/.rvm/gems/ruby-1.9.3-p545@ector/gems/table_print-1.5.1/lib/table_print/fingerprinter.rb:18:in `each'
    from /Users/gamov/.rvm/gems/ruby-1.9.3-p545@ector/gems/table_print-1.5.1/lib/table_print/fingerprinter.rb:18:in `hash_to_rows'
    from /Users/gamov/.rvm/gems/ruby-1.9.3-p545@ector/gems/table_print-1.5.1/lib/table_print/fingerprinter.rb:9:in `lift'
    from /Users/gamov/.rvm/gems/ruby-1.9.3-p545@ector/gems/table_print-1.5.1/lib/table_print.rb:41:in `block in table_print'
    from /Users/gamov/.rvm/gems/ruby-1.9.3-p545@ector/gems/table_print-1.5.1/lib/table_print.rb:40:in `each'
    from /Users/gamov/.rvm/gems/ruby-1.9.3-p545@ector/gems/table_print-1.5.1/lib/table_print.rb:40:in `table_print'
    from /Users/gamov/.rvm/gems/ruby-1.9.3-p545@ector/gems/table_print-1.5.1/lib/table_print.rb:73:in `tp'

If you try without the lambda, you get the improbable following:
>> tp [[1,2,3],[44,55,66]], :first, :second
FIRST          | SECOND
---------------|-------
Method Missing | 1
Method Missing | 2
Method Missing | 3
Method Missing | 44
Method Missing | 55
Method Missing | 66

It would be very handy to be able to display arrays of arrays with table_print. Unfortunately, currently, it seems that tp flatten them before displaying the table.
or am I doing something wrong?

Just came across this. Could you point out where this bug is?


Support for File Upload

Hey! Stumbled upon this project, it looks really promising, and the code is very clean, thank you very much for building this!
I wanted to build support for file uploading. For this, I added this into claude_client.py:
    def convert_file(
        self, organization_uuid: str, file_path: str
    ) -> Optional[JsonType]:
        """Uploads a file"""
        CONVERT_DOCUMENT_API_ENDPOINT = "/api/convert_document"
        request_body = {
            "organization_uuid": organization_uuid,
            "file": open(file_path, 'rb'),
        }
        header = {}
        header.update(self._get_default_header())
        header.update({"content-type": "multipart/form-data"})
        response = custom_requests.post(
            self._get_api_url(CONVERT_DOCUMENT_API_ENDPOINT),
            headers=header,
            request_body=request_body,
        )
        if not response.ok:
            return None
        return response.json()

However, this request fails due to the encoding in custom_requests.py#L53.
Could you please nudge me into the right direction, what I have to change/look further into? I've also noticed that your message endpoint do have support for attachments, but are passed an empty List every time. Any thoughts on how you'd like to have an message endpoint which supports files as well?
If you do not wish to have file uploads in your project, just close this issue, no worries.

Hi @Xceron , thanks for working on this. The empty attachments list is just a placeholder, and I would like to have attachments in the future.
tbh I haven't experimented with attachments yet, so I'll look into this further and get back to you.

ok @Xceron turns out its pretty involved.
In your current code, when you just call open() on the file, it will return some random object which can't be decoded, so I would fix that first.
However, the bigger issue is that the /api/convert_document endpoint actually uses a FormData field, which is a little hard to do with vanilla urllib. Ex.

If you can somehow make it work with the requests library or if you find a clean way to do this with urllib, I would greatly appreciate that.

Hey, thanks for getting back to me!
I am kinda stuck, let me walk you through the things I did:

Imported the claude API request to /api/convert_document/ into postman as is and tried uploading a file -> returns permission error for me
Then I used https://requestcatcher.com/ to see how the requests look like in the backend (too lazy to spin up a server, this is a simple solution) and send the postman request, including the file, to it
Then recreated the same request/file upload in python

The result then looks like this:
    def convert_file(
            self, organization_uuid: str, file_path: str
    ) -> Optional[JsonType]:
        """Uploads a file"""
        payload = {"organization_uuid": organization_uuid}

        debug_request_catcher = "test"

        files = [
            ('file', (file_path, open(file_path, 'rb'), 'application/pdf'))  # TODO: Infer mimetype from file extension
        ]
        header = {}
        header.update(self._get_default_header())
        response = requests.request(
            "POST",
            f"https://{debug_request_catcher}.requestcatcher.com/test",
            headers=header,
            data=payload,
            files=files
        )
        if not response.ok:
            return None
        return response.json()

The file uploads successfully to requestcatcher, so the upload itself works. However, if I change the endpoint to claude, I will get permission errors (just like in postman). So I seem to be missing something. There is also a different project which reverse engineered the API in nodejs, their upload endpoint is here. However, I am not that good in understanding nodejs to see my error.

@Xceron I think the requests library does something under the hood that makes the claude api reject any requests using it, or at least, thats what I experienced so far.
Thats why I made the custom_requests.py library in urllib, since these seemed to bypass whatever the issue with the requests library was.
I node.js fetch likely uses a different underlying set of headers/params/etc. I looked into that a bunch when I initially started reverse engineering and that was my conclusion.

@Xceron that sounds interesting. I tried hacking at this problem as well, and I basically just made my own FormData class as an input parameter to my custom requests post method.
Form data is basically just a special body + a few extra headers on top of POST, so it shouldn't be too difficult to implement with the current framework.
I can try getting an implementation of this soon.

Hi @Xceron , I managed to implement sending attachments. You can take a look at the changes I made in this commit: ddb21ae.
Since requests didn't work, I made my own FormData class and manually encoded files. An example use case is as follows:
# all the boilerplate setup....
client = claude_client.ClaudeClient(SESSION_KEY)
organizations = client.get_organizations()
claude_obj = claude_wrapper.ClaudeWrapper(client, organizations[0]['uuid'])

conversation_uuid = claude_obj.get_conversations()[0]['uuid']
claude_obj.set_conversation_context(conversation_uuid)

# Actual attachment sending
attachment = claude_obj.get_attachment('/some/random/attachment.pdf')
response = claude_obj.send_message("", attachments=[attachment])
print(response)

Let me know if it works.

Hi @Xceron , I managed to implement sending attachments. You can take a look at the changes I made in this commit: ddb21ae.
Since the requests library still doesn't work, I made my own FormData class and manually encoded files. An example use case is as follows:
# all the boilerplate setup....
client = claude_client.ClaudeClient(SESSION_KEY)
organizations = client.get_organizations()
claude_obj = claude_wrapper.ClaudeWrapper(client, organizations[0]['uuid'])

conversation_uuid = claude_obj.get_conversations()[0]['uuid']
claude_obj.set_conversation_context(conversation_uuid)

# Actual attachment sending
attachment = claude_obj.get_attachment('/some/random/attachment.pdf')
response = claude_obj.send_message("", attachments=[attachment])
print(response)

There are some dumb parts about this implementation (especially the part about checking whether or not a file is a text based file). If you think anything can be changed, feel free to open a PR. Also, if you are up for it, maybe you can explore why requests vs urllib seems to have different behavior.
Let me know if this works for you.

Hey, thanks for coming back to me! The current method does not work for me with any binary file, i.e., PDFs. I went through the code and cannot see any inherent bugs when I traced a request. The only difference between your code and a manual request seems to be the generation of the boundary. Maybe Anthropic changed this on their end? If it works for you: Are you on Linux or macOS? I am using Windows, but did not see any errors indicating an error with the file reading itself.

@Xceron I've tested on macOS. Do you get a 403 or 500 status code? Also I think the actual boundary text shouldnt matter as long as you place it in the right locations.
MacOS for example might have a boundary that looks like ----Webkitxxxxxxxxxx.... but the requests library boundary looks like a hash.
Ill take a closer look.

I dont get any error at all as I end up getting into this: https://github.com/AshwinPathi/claude-api-py/blob/713e045e53004f3cc6bee7941bb97b1776d49e63/claude/custom_requests.py#L224

@Xceron  I added some additional fields to the Response message, but on my Mac (and on a Linux computer I've also tested this on), it seems to work. I'm not too sure what could be going on without getting detailed logs.
Maybe as a start, you can omit the response handling code to always throw an error so you can check out whats going on.  . https://github.com/AshwinPathi/claude-api-py/blob/713e045e53004f3cc6bee7941bb97b1776d49e63/claude/custom_requests.py#L215
If you need any more information from me, let me know.

I cannot reproduce the error with the new version, seems to be fixed. Thank you very much for your work and patience!


example service template does interesting things

afaict, the example service template will use the additional arguments as part of the metrics endpoint. which seems kind of pointless? For me Environment="ARGS=--web.endpoint=/metrics --web.listen-address=:9854 --collect.interval=600" meant that the endpoint was literally /metrics --web.listen-address=:9854 --collect.interval=600

Thanks, fixed.

Thank you, glad to be able to help.


HTML standards testing

We would be safer if we will always test our html to ensure that it conforms standards. Do not confuse with linting.
This can be part of larger tester, or we can use directly some tool like HTML_CodeSniffer

Also related to https://github.com/LotusTM/Kotsu/issues/268


edpm_deploy_baremetal role and CI Job

With this PR, we do the following:-

Create a new ansible role edpm_deploy_baremetal that create
the compute nodes with BMAAS and provision them.
Enhance 06-deploy-edpm.yml to deploy edpm on compute nodes
which are provisioned with bmaas. We will only include the
edpm_deploy_baremetal role based on edpm_compute_baremetal flag.
Define a new job for testing Bmaas workflow and update some file
filters.

As a pull request owner and reviewers, I checked that:

[x] Appropriate testing is done and actually running
[x] Appropriate documentation exists and/or is up-to-date:

[x] README in the role
[x] Content of the docs/source is reflecting the changes

/recheck

recheck

recheck

role docs: https://logserver.rdoproject.org/80/180/37ccfd17a2f1ec19608471fec1c9347f25756f52/github-check/cifmw-doc/cf7536a/doc_build/html/Roles/edpm_deploy_baremetal.html

/lgtm


World change messages

Every time you change a world, it always sends a message no matter who the player is. Can you add or is there an option to not send the messages? I searched the config file there's nothing. Thank you.

Edit localization.yml and set the message to hide to '' (two single quotes)


Create sparql-reference.md

made a start on this, will do this bit by bit

Think this is a good start, we can add more bit by bit later - would like a review that i didnt say anything stupid though lol

SPARQL basics needs a bit of relooking at - will add it to the board


Added missing metro dev dependency

Summary
Added the Metro dev dependency which was missing earlier.

Changelog

[Internal] [Fixed] - Added the Metro dev dependency which was missing earlier.

Metro is not a dev dependency of React Native. Metro is part of the cli so it will already be part of the dependency tree.


arangoimp issue and a general question

my environment running ArangoDB
I'm using the latest ArangoDB of the respective release series: 3.1
Mode: Single-Server
On this operating system: Windows, version: 10
My problem is:
When I open arangoimp.exe file it asks me to enter a password, when it is entered and I press (Enter) it will automatically be closed... So what is the solution ?
My another question is:
Can I have the result of the AQL query by graph ?

arangoimp is meant to be invoked in an interactive shell (like cmd, bash or powershell)
You can use arangoexport to dump parts of a graph:
https://docs.arangodb.com/3.3/Manual/Administration/Arangoexport.html

Hi @mohamadHassanHijab
Did you manage to invoke arangoimp ?
Please send us a feedback
Best

Hi @OmarAyo ,
Yes, It works and I manage to invoke arangoimp.

Perfect !
I'm going to close this ticket, note that tickets can be reopened at any time.
Best


Render bounds

Hey @liabru. This isn't an issue but a request for help, so let me know how I can buy you a beer.
I have a strange problem that you can see in action on: http://richardson.co.nz/
On initial render, everything works great. However something in my resize code is not behaving correctly. If you load the page with a short browser window and expand it vertically, you'll notice elements in the game will be removed as if the canvas was in the old location.
I'm pretty sure this is something to do with render.bounds. I'm resizing the canvas element to fit the screen but I can't figure out how the render.bounds should be calculated. Any time I try to recalculate them based on canvas size, it distorts the rendering. world.bounds are set to Infinity in all directions so it doesn't seem to be that either.
I was hoping you might look at it for five seconds and point me in the direction I should be looking. Again, sorry for the request for help ☹

Not sure I can replicate a problem so maybe you fixed it?
This is a long shot but take a look at the new Render.lookAt function which handles fitting objects in view no matter what the canvas aspect ratio is by scaling.
You can use it like this:
    Render.lookAt(render, {
        min: { x: 0, y: 0 },
        max: { x: 800, y: 600 }
    });

You can also pass it a body or array of bodies and then set a padding e.g.:
    Render.lookAt(render, player, {
        x: 400,
        y: 300
    });

Can you reopen this issue? I'm facing similar problem and haven't solved it yet. My objective is to preserve aspect ratio while user resizes browser window ( this is needed for portrait / landscape orientation support for mobile ). I have included the code below:
CSS
html, body
{
  padding: 0;
  margin: 0;
  min-height: 100%;
  overflow: hidden;
}

HTML

<canvas></canvas>

Script
Constructor
// ...
    this.container = container; // div element reference
    this.canvas = canvas; // canvas element reference
    this.engine = Engine.create();
    this.render = Render.create({
      element: container,
      canvas: this.canvas,
      engine: this.engine,
      options:
      {
        hasBounds: true,
        width: 400,
        height: 400,
        background: '#AAA',
      }
    });
    Render.run(this.render);
    Engine.run(this.engine);

   // ...
   // add a simple physics object
   // ...

   // reset min bounds ( ? )
    this.render.bounds.min = { x:0,y:0 };

    // Save starting render bounds to calc scale ratio later
    this.renderBounds =
    // Autofit max bounds to current render bounds
    this.render.bounds.max =
    {
      x : this.render.options.width,
      y : this.render.options.height
    };

    // Initial render bounds ratio
    this.renderRatio = this.renderBounds.x / this.renderBounds.y;

    // attach event listener & force event resize
    window.addEventListener("resize", this.eResize.bind( this ) );
    this.eResize();
// ...

Resize event
// On browser resize, change canvas size to fit full width
function eResize()
{
    // resize canvas
    this.canvas.width = window.innerWidth;
    this.canvas.height = window.innerWidth * this.renderRatio;

    // Current screen scale ratio relative to starting canvas size
    var screenRatio = this.renderBounds.x / window.innerWidth;

    // calculate new render bounds based on old size times new ratio
    this.render.bounds.max =
    {
      x : this.renderBounds.x * screenRatio,
      y : this.renderBounds.y * screenRatio
    };

    // Doesn't fix problem :
    // Render.lookAt( this.render, {
    //   min: {x:0,y:0},
    //   max: {x:10000,y:10000}
    // });

    // Doesn't fix problem :
    // Expend world bounds on resize
    // this.world.bounds.min = { x: -333, y:-333 };
    // this.world.bounds.max = {
    //   x : 10000,
    //   y : ( 333 + this.renderBounds.y ) * screenRatio
    // };
}


feat: expose theme type var

This PR takes a try to type Theme in all official packages correctly, instead of omitting it or setting it to any.
c.c. This should close #1270, and previous related PR #1002, #1003
Attentions Required

Currently, I type all themes as T, neither T extends {} nor T extends Record<string, unknown>, as this kind of restriction doesn't make any sense to me.
CI is broken, as there're several decisions that have to be made
Currently, @unocss/preset-uno is the default preset, this means we cannot type the them e as a generic. The below code is theoretically not correct.
https://github.com/unocss/unocss/blob/2180281ba36fab75b395330bf76c89f845c4e8df/packages/unocss/src/vite.ts#L8-L19

I'm open to that. Without restriction provides more flexibility, and maybe some people are more comfortable with that. I would suggest extracting the Theme interface to a standalone package then.

Any plans to resurrect this PR?


Replace AllPost Link by Article's Board

[閒聊]Gundam Versus 開箱文(含…(PlayStation)
https://www.ptt.cc/bbs/ALLPOST/M.1499556148.A.35B.html
to
https://www.ptt.cc/bbs/PlayStation/M.1499556148.A.35B.html

close by bcd88b3dc12a660c2e8035f733f9f4e34e53a1b6


Geocoder. Country specific setting.

Currently it is possible to define a country for the geocoder. This functionality does not work any more. It should either be removed or fixed.
To fix it the results should be filtered.

This code is legacy and will be replaced in the new angular ready version


Grid with Multi-Select (similar to SyncFusion or Telerik)

**Is your feature request related to a problem?
Yes. I have a requirement to display data in a table grid and allow users to multi-select specific rows to take an action on.
Describe the solution you'd like
Similar to the screenshot below, I'd like the ability to either left click each row in the row itself, or via a check box button, Ideally shift and control click would be supported as well for selection sections quickly. Another thing that is commonly missing in multiselect is how to handle paging. This doesn't need to be solved in the first iteration, but I do want to call it out. Typically "select all" ignores the filets you have placed on the data, ideally select all would honor the filters.
Describe alternatives you've considered
Telerik or SyncFusion
Additional context

Amazing turn around Enchev. I see you even updated the demo page. Great representation of what Radzen offers.


How to use retrieve() in python3 code

Can a example be given how to use recipes/Python/577009_Improvements_urllibURLopenretrieve/recipe-577009.py in actual code?

On python2, it can be used through urllib.URLopener().retrieve('EXAMPLEURL'). However in python3, either urllib3 or requests (https://stackoverflow.com/questions/2018026/what-are-the-differences-between-the-urllib-urllib2-urllib3-and-requests-modul?rq=1) is used. Official recommendation is to use either of these two http libraries in py3.


Proposal: Creation of a German-translation Repository

Summary: Andreas and I are keen to progress the German translation for the Plurality project. Building upon our previous discussions, here's our roadmap and request:
1. Repository Setup

Request: Create a "German-translation" repository under the @pluralitybook Github account.
Reason: Hosting under the @pluralitybook Github account will give the translation effort more authenticity and prominence in the community. This centralized location will serve as our primary hub for the translation work.

2. Onboarding Phase

Aim: Onboard our translation contributors in August.
Activities: Set expectations, distribute tasks, and establish initial milestones.

3. Execution Phase
Goal: Sync our translation completion with at least the current English version by year-end.
4. Community Building
Plan: Organize community sessions in Germany for engagement and alignment.
5. Maintenance and Oversight

Maintainers: Andreas (@XQTstrategy) and I (@erichfi).
Role: Ensure efficient translation reviews, updates, and overall quality control.

Next Steps:
As we get the repo set up, Andreas and I will be hands-on with community building. We’re also keen on ensuring we can publish translations seamlessly. Looking forward to your thoughts.

This sounds great to me!  Make sure to coordinate with @taipeicityeth, who is coordinating all translation forks.

Hi @taipeicityeth, how can we create the German Repository?

hey guys! apologies that didn't see this til now,
please join our newly spun-up Discord server here:
https://discord.com/channels/1133444567031627846/1143668522094964806
here's an onboarding flow we created:
https://taipeicityeth.notion.site/Plurality-Translation-Contributor-Onboarding-8b21ee9cebab42b8b89f8f6a897f849a?pvs=4
one difference I see here compared to what's proposed here is creating the translation repository under the plurality-book account vs forked by the point of contact for each community, let's discuss further what's preferred in the Discord?
Would you guys also be interested in building the German community in the official plurality Discord? could be a great place for translations to stay up to date with each other and for different communities to engage with each other as well
hope to chat soon in Discord, cheers!

hey @XQTStrategy, @erichfi, following up here to see how things are going. Were you guys able to create a fork? or do you still prefer it the fork under the @pluralitybook account? let us know how we can help get you guys going, and what you think of the above
best,
Jacky

That sounds great! Looking forward, please let us know when you have it set up or have other questions, cheers!

hey @XQTStrategy @erichfi, following up here on how things are going, any luck with setting up the repository? anything we could help with?

Hey all, @XQTStrategy @erichfi just wanna follow up here, the Japanese and Ukrainian translation forks are set up in case a reference would be helpful to you guys!

Ukrainian: https://github.com/vlree-alt/plurality-ukrainian
Japanese: https://github.com/nishio/plurality-japanese


[execution_manager] Add unit tests for ConflictResolveWorkflowExecution

What changed?
Added unit tests for ConflictResolveWorkflowExecution.

Why?
Improving unit tests coverage.

How did you test it?

Potential risks

Release notes

Documentation Changes

Pull Request Test Coverage Report for Build 018fcfa6-57ec-44e8-9c83-8f24a3d2a3c1
Details

0 of 0   changed or added relevant lines in 0 files are covered.
24 unchanged lines in 8 files lost coverage.
Overall coverage decreased (-0.003%) to 69.652%

Files with Coverage Reduction
New Missed Lines
%

service/history/task/transfer_standby_task_executor.go
2
86.33%

service/matching/tasklist/task_list_manager.go
2
76.09%

service/history/execution/mutable_state_util.go
2
78.52%

service/history/queue/timer_queue_processor_base.go
3
77.87%

service/history/task/fetcher.go
3
85.57%

common/types/history.go
4
45.35%

service/history/engine/engineimpl/record_activity_task_started.go
4
68.87%

service/frontend/wrappers/metered/metered.go
4
66.67%

Totals

Change from base Build 018fcf32-23d9-4d7d-a579-94202b6c6918:
-0.003%

Covered Lines:
102993

Relevant Lines:
147868

💛  - Coveralls


cache / preprocess heatmap response data

Every time people access the flamescope's heatmap, the server processes the perf output data which makes the user awaited. So I am considering to cache preprocessed or first-returned data.
Structure of the response is quite simple;
{
    "columns": [0, 1, .....],
    "rows": [980, 960....],
    "values": [ [2, 2, ...], [...], [...], ....],
    "maxvalue": 16,
}

The most quick hack to cache it is storing in sessionStorage in local browser. Better idea is to save the data as a metadata beside actual data (In that case, we need to decide naming convention for metadata). Other idea is to store data in DB.
I am going to implement a cache anyway, but I want to ask this before starting, which is,  what kind of cache is easier to accept for you?.

When you mention cache, is that from going back and forth between the heatmap and flame graph visualization, or changing profiles?

Preprocess in the other hand is a different problem. I definitely wouldn't do it in the browser session storage, given the size limits, but might be Ok to have a task to preprocess all heatmaps and store them on disk.

I agree with you on both points of avoiding using databases and browser storages for each reason. I will move on to this in a few weeks. Is it OK to be default behavior to store preprocessed data next to the profile?


feat: Add the reason for map camera movement

As discussed in https://github.com/googlemaps/android-maps-compose/issues/49, this PR exposes the reason value passed back in GoogleMap.OnCameraMoveStartedListener(int reason) callback so that developers can tell the reason that the camera started moving (e.g., user gesture, developer animation, API animation):
https://developers.google.com/android/reference/com/google/android/gms/maps/GoogleMap.OnCameraMoveStartedListener#onCameraMoveStarted(int)
For constant values see:
https://developers.google.com/android/reference/com/google/android/gms/maps/GoogleMap.OnCameraMoveStartedListener#constants
The PR also adds demo code to LocationTrackingActivity to print the reason that the camera moves, as well as assertions to test behavior in an existing unit test.

Before submitting your PR, there are a few things you can do to make sure it goes smoothly:

[x] Make sure to open a GitHub issue as a bug/feature request before writing your code!  That way we can discuss the change, evaluate designs, and agree on the general idea
[x] Ensure the tests and linter pass
[x] Code coverage does not decrease (if any source code was changed)
[x] Appropriate docs were updated (if necessary)

Fixes https://github.com/googlemaps/android-maps-compose/issues/49 🦕

@arriolac Good idea! I convert to an enum in https://github.com/googlemaps/android-maps-compose/pull/154/commits/819179ec6d98e27b54740a8b6c0eefa5ae4dcee3.
I wasn't sure how to handle the case where a new Maps SDK constant is passed back from the GoogleMap.OnCameraMoveStartedListener that isn't known to the maps-compose library (e.g., if the Maps SDK is updated). I ended up mapping these unknown constants to another CameraMoveStartedReason enum value  UNKNOWN(-2), but let me know if you have a better idea of how to handle this.


Making sure other divs are collapsed before opening the readmore

I have a bunch of similar divs on a page with each one having a readmore link. How can I make sure that no other div is open before expanding one.
Any help would be appreciated!

Solved!

Solved!

Looking for this as well. Any info on how you did it?


Enable bitcode + chroma threshold

-Recompiles the ios/Libraries binaries with bitcode enabled for arm64, armv7, x86_64
-Enables bitcode for "Release" scheme (however bitcode only gets enabled during archive builds apparently)
-Sets the chroma_threshold_sensitivity default to a more sensible 0.1 that filters out a smaller color space surrounding the target chroma key filter.
Note: Had to remove GVRSDK from Virokit.podspec

I'll keep this PR pending as I'm working on bringing back GVR.

I don't believe this will cause any problems with GVR. The only reason i included: "Note: Had to remove GVRSDK from Virokit.podspec" is because I noticed that in the latest ViroKit.podspec in /viro it is missing.


deploy an odh-trino-dev trino db

I need a vehicle for experimenting with various trino management mechanisms, where I can play with tooling that may break a trino deployment while I develop it.  For one example, testing https://github.com/os-climate/trino-github-group-provider

Moving this to High Priority as we have upcoming design discussions on the Data Vault with LSEG and need to validate our proposed approach soon.

what bucket should I use for the starting catalogsource for this dev deployment?

Okay trino dev instance is live, created a new bucket for this called ocp-odh-data-dev-bucket1-s3.
Info:
Trino dev namespace: https://console-openshift-console.apps.odh-cl1.apps.os-climate.org/k8s/ns/odh-trino-dev/pods
Admin user creds: https://console-openshift-console.apps.odh-cl1.apps.os-climate.org/k8s/ns/odh-trino-dev/secrets/trino-admin-acct
Rules.json and other config files stored in git here: https://github.com/operate-first/apps/tree/master/kfdefs/overlays/osc/osc-cl1/trino-dev/configs
I've added it in Cloudbeaver as well.

Awesome work!  Thank you!
Heather Ackenhusen
Principal Technical Program Manager
+1<PHONE_NUMBER> (mobile/text msg/whatsapp)
OS-Climate (Linux Foundation Contractor)

From: Erik Erlandson @.***>
Sent: Monday, November 29, 2021 8:13:38 AM
To: os-climate/os_c_data_commons
Cc: Subscribed
Subject: Re: [os-climate/os_c_data_commons] deploy an odh-trino-dev trino db (Issue #99)
thanks @HumairAKhttps://url.emailprotection.link/?buEq4eyNl9NRYRhKUfm4VcEm7YZrV15AfWHL0vd1w2sPcm5ySW-N7rQHSunj_6O2GN_GkWiv8QIYjWohAZ2m0Fg~~ !
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHubhttps://url.emailprotection.link/?bSUl4zEAISKljB5PdD2UQauX-scH9uyNNobW1l20SkKk9_b_0JgoU9bYNtrJFFyBrYjbFQIDeMtNpE2X5zFHO7HlvRFLdcSS7k_myX8nORhARc0E6PzguYLb8czeC7PJo, or unsubscribehttps://url.emailprotection.link/?bAkK-809Wb5noCAgXTs9zjw3ZMzN5zlPMaG-gsYo_s-fA_0Q2PK0_lkdmYySOU97SJwMFi8edrs4G10B9XNZxecVvnAZXBZHEJETRccmzQV49HsITxi4lCyUbrFeX4GEgSzagmubHSIr5xkB2cMVnoHj15xG_U3hPf2A3BQC4yzs~.
Triage notifications on the go with GitHub Mobile for iOShttps://url.emailprotection.link/?baeC4nVGI3gtQjEFG8AaYmRSPZZ33HB1Gu9EN1hgFLtygZMnLIpSTiq2o0brEVvP3mmCnCvAU9wgRg0Z9dT20OQiGhVpbvmomnooa-ATNe247cW75TsplY066ZuTF5vYF6KrqFSiWfG0Qj1X2tBy_FC5XLkk68ArAhsPr4gRsuGA~ or Android<https://url.emailprotection.link/?bACQAE2dkzMNZSraWKSNZeueg3_0jrqaJYiB50rO1gTuiJyiM
%20VoyNKdUBExxKIlHlg8MkF1L6Ko1jmV3DeBVh88OGweuGi-wo5eG3kfAruYqVi2ywx0D6R6CXoBdCeyLtHm89dMo_LpcU8G0bDrFHkfbch15RA5JVy7aBxuMhDY60nh6DlwXGCB01Rz_m3Y38IVM9nv4t6IsPCpksjI1B3w~~>.


react-svgr.com breaking on production

🐛 Bug Report
https://react-svgr.com/ is not loading
To Reproduce

Visit https://react-svgr.com/

https://user-images.githubusercontent.com/45557594/202135704-88c20a76-13fd-497a-aeb1-544ec0e03770.mov
Expected behavior
Website should load correctly
Link to repl or repo (highly encouraged)
Not applicable
Run npx envinfo --system --binaries --npmPackages @svgr/core,@svgr/cli,@svgr/webpack,@svgr/rollup --markdown --clipboard
Paste the results here:

I don't see any problem on my side :/

It is also breaking on my side. Probably it is breaking on specific browsers and version.
This is Chrome 107.0.5304.110 (Official Build) (64-bit)  on Linux

This is Firefox 107.0 (64-bit) on Linux

This is Opera Version:93.0.4585.11 on Linux

Interestingly, it loads fine in Edge Version 107.0.1418.42 (Official build) (64-bit) on Linux.

Broken in Chrome Version 112.0.5615.165 (Official Build) on my Linux machine. Worked in Firefox tho