Calculate reward for chainvine referral donations

related to https://forum.giveth.io/t/chainvine-referral-program/910

Referral reward is 10 percent ( we put this percentage in config to can easily change it) of givback reward ( after calculating  givback factor)

Purple list doesn't affect referral reward ( FYI purple list addresses are not eligible for getting givbacks)

We send reward for those donations that are eligible for givback ( for instance if someone donate to unverified project we don't send reward for referrer)

New donor dilemma
4.1.  Also, another point is do we want to only let the program run for “new donors”? If so, we need to make sure that a user is donating for the first time, before we count them as a referral.(questioned by @ahmadabugosh )
4.2 What should we do about users that are already in our DB but didn't donate yet and now donate with a referral link

Please correct me if I'm mistaken.
@MoeNick
I can jump to this issue anytime you say

New donor dilemma
4.1. Also, another point is do we want to only let the program run for “new donors”? If so, we need to make sure that a user is donating for the first time, before we count them as a referral.(questioned by @ahmadabugosh )
4.2 What should we do about users that are already in our DB but didn't donate yet and now donate with a referral link
IMO, irregardless of any devwork involved, if i had to design this system...
If the donor is new, then the Referal gets 10% of their GIVbacks for the rest of this round and the next round.
If the donor is not new, but they click the link, the referrer should get the 10% of their GIVbacks THAT 24HR period.
I assume there is development consideration here.... so that may not be possible... but thats what makes sense to me.

@CarlosQ96  has implemented impact-graph side and I implemented givback-calculation side, now it's implemented and deployed on https://givback.develop.giveth.io/api-docs/#/default/get_calculate, @divine-comedian  as you are the best one who is familiar with givback-calculation API I would appreciate if you can test it

We use a fraction of eligible donations to referrer if donations is referral ( now it's 10 percent but its configurable)
It doesn't matter if referrer is in purple list or not, we distribute reward for him
If the user that came with the referral link is a new donor we will give a referral reward to the referrer for the current round and the next round
If the use that came with the referral link is not a new donor we will give reward for next 24 hours ( 24 hours from when user clicked on link, and also the time is configurable)
example: user A make a donation with 100$ value, A send a referral link to user B and that user donate to a verified project with 200$ value, now when calculating givback reward we assume, user A has donated (100 + 10% * 200) = 120$  and user B has donated 200 * 90% = 180$ and we calculate givbacks based on this info

@CarlosQ96 has implemented impact-graph side and I implemented givback-calculation side, now it's implemented and deployed on https://givback.develop.giveth.io/api-docs/#/default/get_calculate, @divine-comedian as you are the best one who is familiar with givback-calculation API I would appreciate if you can test it

We use a fraction of eligible donations to referrer if donations is referral ( now it's 10 percent but its configurable)
It doesn't matter if referrer is in purple list or not, we distribute reward for him
If the user that came with the referral link is a new donor we will give a referral reward to the referrer for the current round and the next round
If the use that came with the referral link is not a new donor we will give reward for next 24 hours ( 24 hours from when user clicked on link, and also the time is configurable)
example: user A make a donation with 100$ value, A send a referral link to user B and that user donate to a verified project with 200$ value, now when calculating givback reward we assume, user A has donated (100 + 10% * 200) = 120$  and user B has donated 200 * 90% = 180$ and we calculate givbacks based on this info

Understood, however since we mix in referral donations with all the other donation data (on production) it is hard to anaylze the accuracy of the results or even who might have made a referral or received referral rewards.
It might be useful to consider building an API and table similar to eligible-donation where we can see all the referral relationships across a period of time.
For every referral donation we could show:

txHash, date, USD value of donation, donorAddress, donorName, USD value of referral rewards, referrerAddress, referrerName

since we won't have the GIVbacks amount until we calculate a price of GIV we can only estimate the USD value of their referral reward. If we're able to see all of this data somehow separate from the rest of donation data it will be much easier to analyze.
then maybe we can show a new column in GIVbacks calculation showing how much they earned or lost from referrals, if applicable.
using your example as an example :smile: :
example: user A make a donation with 100$ value, A send a referral link to user B and that user donate to a verified project with 200$ value, now when calculating givback reward we assume, user A has donated (100 + 10% * 200) = 120$ and user B has donated 200 * 90% = 180$ and we calculate givbacks based on this info.

GIV price is 0.2

under column heading referralRewards
User A = +100 ($20 / 0.2)
User B = -100 ($20 / 0.2)
User C = 0 or empty (they did not interact with the referral program)
What do you think?

@CarlosQ96 has implemented impact-graph side and I implemented givback-calculation side, now it's implemented and deployed on https://givback.develop.giveth.io/api-docs/#/default/get_calculate, @divine-comedian as you are the best one who is familiar with givback-calculation API I would appreciate if you can test it

We use a fraction of eligible donations to referrer if donations is referral ( now it's 10 percent but its configurable)
It doesn't matter if referrer is in purple list or not, we distribute reward for him
If the user that came with the referral link is a new donor we will give a referral reward to the referrer for the current round and the next round
If the use that came with the referral link is not a new donor we will give reward for next 24 hours ( 24 hours from when user clicked on link, and also the time is configurable)
example: user A make a donation with 100$ value, A send a referral link to user B and that user donate to a verified project with 200$ value, now when calculating givback reward we assume, user A has donated (100 + 10% * 200) = 120$  and user B has donated 200 * 90% = 180$ and we calculate givbacks based on this info

Understood, however since we mix in referral donations with all the other donation data (on production) it is hard to anaylze the accuracy of the results or even who might have made a referral or received referral rewards.
It might be useful to consider building an API and table similar to eligible-donation where we can see all the referral relationships across a period of time.
For every referral donation we could show:

txHash, date, USD value of donation, donorAddress, donorName, USD value of referral rewards, referrerAddress, referrerName

since we won't have the GIVbacks amount until we calculate a price of GIV we can only estimate the USD value of their referral reward. If we're able to see all of this data somehow separate from the rest of donation data it will be much easier to analyze.
then maybe we can show a new column in GIVbacks calculation showing how much they earned or lost from referrals, if applicable.
using your example as an example 😄 :
example: user A make a donation with 100$ value, A send a referral link to user B and that user donate to a verified project with 200$ value, now when calculating givback reward we assume, user A has donated (100 + 10% * 200) = 120$ and user B has donated 200 * 90% = 180$ and we calculate givbacks based on this info.

GIV price is 0.2

under column heading referralRewards
User A = +100 ($20 / 0.2) User B = -100 ($20 / 0.2) User C = 0 or empty (they did not interact with the referral program)
What do you think?

Nice, Thanks @divine-comedian  for your great feedbacks, I'll try to start implementing them at the beginning of next week

@divine-comedian
Now we have two fields
named: ** isReferrerGivbackEligible**, ** referrerWallet** in eligible donations response, so you can know if the donations have referrer or not, and the referrer is eligible to get reward or not

in the other hand, in /calculate response we have an array named givbacks that show each user how much donated and how much givbacks would receive, in this array I added these values to each item:
totalReferralDeductedUsdValue, totalReferralDeductedUsdValueAfterGivFactor, totalReferralAddedUsdValue, totalReferralAddedUsdValueAfterGivFactor
With these params you can know each user how much recieved referral rewards, or how much deducted from that user's donations, aggregating all those data in a new webservice needs more time and I think makes our codes complex, but if you think you need it I can do that ( but as I my time is almost limited, and I think with current data we can test the referral reward flow I guess we can go forward)

@maryjaf can you confirm it? if so put in done please

Is it possible to add the totalReferralAddedAfterGivFactor in GIV tokens?
Right now it is only in USD.
I would like to add this to the forum post in the form of GIV tokens if possible.

actually nvm.. I can just use a formula in the spreadsheet


Fixed CSS for Case study page

Fixed CSS for the Case studies page, especially this: https://beam.apache.org/case-studies/kio/.

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[x] Choose reviewer(s) and mention them in a comment (R: @username).
[ ] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.

GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI.

R: @timrobertson100

Thanks @chermenin

@timrobertson100 Sorry, seems these changes have broken the Ricardo page https://beam.apache.org/case-studies/ricardo/. I'll try to fix it another way. Could you revert this PR?

What's wrong with the Ricardo page, please? It looks OK to me (although perhaps a little narrow)
I'll check in later today and revert, or can apply your fix if you get there first

I see the following with these changes on my local:

And I guess all of that just can be fixed in https://github.com/apache/beam/pull/16702 :)


Add network configuration options for remote servers

Currently, Armok Vision assumes remotefortressreader listens from TCP port 5000 (or the env DFHACK_PORT if it exists) on localhost.
However, AV has the potential to serve as a DF network client (multiplayer at last! /s). Could you add an option in the startup prompt to specify to a remote server/port? Currently the prompt only asks for a preferred resolution, graphics quality, keybindings (which seem to be ignored on macOS), and whether it should be windowed.
It's probably possible to work around this with a SOCKS proxy, but an explicit option to specify a remote hostname/port would be much simpler (and require less overhead).

While it is true that DFHack allows outside connections now, the RFR plugin requires quite a bit of work before it is suitable for using with more than one person at a time.


Pf 60 create password schema

Changes to models:
+ Password {
+    password
+    UserId referencing User
+ }

user:
- password
+ virtual password referencing Model Password

Changes to queries:
mutation {
    signup(
-        record: {
-            name: "someValidName"
-            email: "someValid@mail"
-            password: "Password1"
-        }
+       name: "someValidName"
+       email: "someValid@mail"
+       password: "Password1"
) {
-        record {
-           name
-           email
-           password
-        }
+     name
+     email
+     password
    }
}

- mutation {
+ query {
    login(email: "some@email", password: "yourPassword")
}

Admin queries (UserTCAdmin):
- password

I am aware of the changes (Y)


Add dockerfile, requirements and code style

Requirements, submodule, dockerfile (with specified used so we don't have to run as root), formatting with black/isort (copied from transformers repo)

Haven't tried this yet since I don't have an environment to run docker containers with GPUs unfortunately.
But the changes look good to me.


CFGetTypeID() is brittle

CFTypeID type should be defined as a typedef to a DWORD.
CFGetTypeID() is brittle; better to check if the object responds to _cfTypeID and return that.
CFTypeID CFGetTypeID(id cfobj)
{
    if ([cfobj respondsToSelector:@selector(_cfTypeID)])
        return [cfobj _cfTypeID];
    else
        return 0;
}

@implementation NSArray
- (CFTypeID)_cfTypeID
{
    return CFArrayGetTypeID();
}
@end

On Apple's CoreFoundation framework, CFTypeID is defined as a 32-bit unsigned integer on 32-bit architectures, and a 64-bit unsigned integer on 64-bit architectures (even going so far as being an unsigned long long on LLP64 architectures, like Windows).
After doing some digging, it seems the function implemented in CFType.mm is commented out, and doesn't match the declaration in CFBase.h. That said, how it is implemented is fragile. Depending on how MS decides to do Core Foundation types, passing an id for CF types may not be valid.

Good digging. ULONG_PTR might be better then. I forgot that it was commented out, still it should be fixed before uncommenting :-)


Two small fixes for quite once all trim ranges have been captured

delete_instance_func_ should be set to nullptr when CaptureManager::DestroyInstance is called since functions register with std::atexit() will be called even when the process is terminated normally (when main returns)
Also a few small ammends in the relevant documentation

CI gfxreconstruct build queued with queue ID 47857.

CI gfxreconstruct build # 3247 running.

CI gfxreconstruct build # 3247 passed.


Screen flickers black when toggling fullscreen

Issue Type: Bug
After upgrading from 1.29 to 1.29.1 I'm seeing screen flickering when toggling fullscreen on 3 different PCs. When entering fullscreen there's an immediate frame where I can see what's underneath VS Code, then a frame or two where my entire display is black (don't even see windows components), then a fraction of a second later there's another black flicker. There's a very similar chain of events when exiting fullscreen.
This particular machine is the worst. 2x GTX 780 Ti in SLI. Driver version 416.94.
VS Code version: Code 1.29.1 (bc24f98b5f70467bc689abf41cc5550ca637088e, 2018-11-15T19:13:36.375Z)
OS version: Windows_NT x64 10.0.17134

System Info

Item
Value

CPUs
Intel(R) Core(TM) i7-4770K CPU @ 3.50GHz (8 x 3492)

GPU Status
2d_canvas: enabledchecker_imaging: disabled_offflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onnative_gpu_memory_buffers: disabled_softwarerasterization: enabledvideo_decode: enabledvideo_encode: enabledwebgl: enabledwebgl2: enabled

Memory (System)
15.94GB (13.31GB free)

Process Argv

Screen Reader
no

VM
0%

Extensions: none

This is much less pronounced on machines other than my main one, and I've started seeing it in other applications. I suspect it may not be vscode so I'm closing this for now. If I am able to narrow it back down to vscode later I'll reopen.


torch-cl Error

Hi, I've been trying to get this to work for a good couple hours—installed torch-cl according to all the directions multiple times, but whenever I try to run neural-style I get this result:
jones@Cypress-linux:~/neural-style$ th neural_style.lua -gpu -1 -print_iter 1
/home/jones/torch-cl/install/bin/luajit: /home/jones/torch-cl/install/share/lua/5.1/trepl/init.lua:384: ...e/jones/torch-cl/install/share/lua/5.1/loadcaffe/ffi.lua:10: /home/jones/torch-cl/install/lib/lua/5.1/libloadcaffe.so: undefined symbol: _ZNK6google8protobuf7Message11GetTypeNameEv
stack traceback:
[C]: in function 'error'
/home/jones/torch-cl/install/share/lua/5.1/trepl/init.lua:384: in function 'require'
neural_style.lua:6: in main chunk
[C]: in function 'dofile'
...s/torch-cl/install/lib/luarocks/rocks/trepl/scm-1/bin/th:145: in main chunk
[C]: at 0x00405e90
Anyone have any suggestions?

One common mistake is to use the system's luarocks to install loadcaffe. Try installing loadCaffe again, but pointing directly to the luarocks inside the Torch install directory.


Cannot find an image when running demo

Hello. I followed your instructions to run the demo. However, when I was running the command
"python main.py --video_file data/videos/ayush.mp4 --path results/ayush   --camera_params "1671.770118, 540, 960" --camera_model "SIMPLE_PINHOLE"   --make_video",
a FIleNotFoundError occurs:
FileNotFoundError: [Errno 2] No such file or directory: '/tmp/tmprh9hg3hs.png'
I wonder where can I obtained these images? Or whether I ignore something?

Emmmm I suddenly found that I didnt download the ffmpeg. I wonder whether it is the reason?

I also encountered this problem, installing ffmpeg can solve it.

I also met this problem, and even if I installed ffmpeg, this problem still existed, have you solved it now？

I also met this problem, and even if I installed ffmpeg, this problem still existed, have you solved it now？

Installing ffmpeg doesn't help me, unfortunately


Add new kill-others-on-fail option (#55)

This rebases and resolves merge conflicts from @pawojciechowski's PR #64
I really want to get this in. Please let me know what more needs to happen to get this merged :)

🎉 wahoo! Thanks! Can't wait to use this!

I forgot to notify you, @kentcdodds.
v3.4.0 is published 😉

Thanks! I've already put it to good use! Works great :D


Update and rename NearFutureElectrical-DecayingRTGs.netkan to NearFutureElectricalDecayingRTGs.netkan, with Nertea seal-of-approval

Same as the others, reason for changing identifier?

Same reason as the other pull request. Copypasta for convenience/documentation:
Standardization. Plus, these are very new. I would be surprised if there was anyone pointing at them yet.
Also note that I did ask to let me handle adding these updates, including the new sub-packs... they were not present yet, thus choosing an indentifier would have fallen to me and there would have been no issue. I only discovered less than an hour ago that someone already added them despite my request to the contrary.

Merged without ident rename! Again, thank you so much for your continuing work!


Issue regarding loading normal maps with spritesheets

Version

Phaser Version: Phaser 3.6.0

Operating system: Windows 10

Browser: Google Chrome v.112.0.5615.138 (64bit)

Description

Encountered an issue where sometimes, most noticeably in unfavorable network conditions, when loading a normal map image for a spritesheet, the normal map image doesn't fully load.
Example Test Code
The issue was first observed in one of the fellow Discord member's project where the frames of a spritesheet were not being loaded.  We confirmed this with the following code:
preload()
{
    window.savedThis = this;

    // Adding a filecomplete hook so that we can look at the loaded frames
    this.load.on(`filecomplete-spritesheet-${pt.Tiles}`, function (key, type, data) {
        console.log("finished loading", key, type, data, savedThis.textures.get(pt.Tiles).frames);
    });

    this.load.spritesheet({
        key: pt.Tiles,
        url: "assets/main-tileset/breakout-extruded.png",
        normalMap: "assets/main-tileset/breakout-extruded_n.png",
        frameConfig: {
            frameWidth: 16,
            frameHeight: 16,
            spacing: 2,
            margin: 1,
            startFrame: 0,
            endFrame: 99
        }
    })

    ...
}

When loading the page normally, all of the 100 frames were correctly being logged to the console.  But in intermittent cases, we were receiving the log that there aren't any frames in .frames
This was later confirmed when looking at the following online example: https://labs.phaser.io/edit.html?src=src/game%20objects/lights/sprite%20sheet%20light.js
When I disabled caching and set the network emulation to 3G in Chrome' dev tools, I got these warnings in the online normal example:

Additional Information
Network emulation and disabling caching is done from Chrome Dev tools:

The problem is that when the normal map loads second, it adds itself to the cache as a single-frame image.

Okay, I haven't been able to figure out how to edit the files correctly to test... but it must have something to do with a1e77e9 since that's where this functionality was added?
I noticed there is a situation in SpriteSheetFile.js where the order the files are passed to this.cache.addSpriteSheet() change, could this be causing it?
//  We do, but has it loaded?
if (linkFile.state >= CONST.FILE_COMPLETE)
{
    //  Both files have loaded
    if (this.type === 'normalMap')
    {
        //  linkFile.data = Image
        //  this.data = Normal Map
       this.cache.addSpriteSheet(this.key, linkFile.data, this.config, this.data);
    }
    else
    {
        //  linkFile.data = Normal Map
        //  this.data = Image
        this.cache.addSpriteSheet(this.key, this.data, this.config, linkFile.data);
    }
}

Having a similar problem, I think. Every once in a while, it glitches and shows the entire spritesheet rather than the slices for the tiles.

linkedFile.addToCache()

Where to change? Or is a fix in the works?
Thanks.

Samme referenced a potential fix in the engine, I wasn't able to figure it out how to implement it myself when I looked a few months ago.
I changed back to the "old" way to load normal maps.
this.load.image("spritesheet-normal", "assets/spritesheet-normal.png");

this.load.spritesheet("spritesheet", "assets/spritesheet.png", {
  frameWidth: 16,
  frameHeight: 16,
  margin: 1,
  spacing: 2,
});

this.load.once("complete", function (loader: Phaser.Loader.LoaderPlugin) {
  const sheet = loader.textureManager.get("spritesheet");
  const normalMap = loader.textureManager.get("spritesheet-normal");
  const normalMapSrcImg = normalMap.getSourceImage();

  if (
    normalMapSrcImg instanceof HTMLImageElement ||
    normalMapSrcImg instanceof HTMLCanvasElement
  ) {
    sheet.setDataSource(normalMapSrcImg);
  }
});

Wish I could figure out how to fix the issue with the engine.

Thanks. It's so weird that it's so occasional in nature. Props to the OP who figured out why it might be happening.
With the "old way," I can then add.sprite and have the normal maps attached? It's just not as clean?
Appreciate the comment/code.
I'm new to Phaser - developing a roguelike hooked up to ChatGPT...

Yeah, doing it that way does still "attach" the normal map to the sprite-sheet, so any sprite referenced will already have the normal map ready for the lighting pipeline.
However, even this way I have noticed a couple times the normal map loaded as the main sprite image (resulting in a very trippy looking map) so there might be another issue still, if you implement it this way and experience that too please mention it!

Thanks. I'll give it a try.
It's like 1 out of 100 tries... but random...and, yeah, very trippy haha...
I love the lighting effect, but I need stability for my upcoming soft launch...
I wonder if size has something to do with it? I'm around 75k or so here...
After trying the "old" method, I'll report back and take a screenshot if it happens again.
Knowing how to change the core code for "linkedFile.addToCache()" (or that a fix is coming) would be helpful, though.
Thanks again.

Updating from 3.55 to 3.6 seems to have resolved the issue where the normal map loads as the spritesheet image, so if you haven't, definitely try that

I'm on 3.6 and it's still happening, though infrequently... :/

Are you loading it as the code example I posted above?
With that method I haven't had the missing frames nor psychedelic episodes.

Oops. Sorry, no. I've been hunting other bugs. Still have the newer / easier method with 3.6.0.
I'll get the loader way plugged in then report back if it's still happening. Thanks again.

Are you loading it as the code example I posted above?
With that method I haven't had the missing frames nor psychedelic episodes.

Don't want to jinx it, but so far so good with loading the long method. Thanks again!

Thank you for submitting this issue. We have fixed this and the fix has been pushed to the master branch. It will be part of the next release. If you get time to build and test it for yourself we would appreciate that.


[Bug Report] Unable to play YouTube tracks

Describe the bug
When given a YouTube track, the bot comes into the channel, loads the track but is unable to play it and leaves.
To Reproduce
Steps to reproduce the behavior:

Play command with any YouTube tracks.

Expected behavior
Bot comes into the channel. Loads the track. Leaves the channel without playing it.
Screenshots

Debug Info
Windows 10

Duplicate of #370


.ci: Fix runtime CI scripts to work with Jenkins

This commit slightly improves CI scripts so that they work both for
Semaphore and our future Jenkins CI.
Fixes #481

Coverage remained the same at 81.68% when pulling 5d566435265c4c11700b8d0a222e4070a7a09a1a on sboeuf/test_jenkins into 8a21d77e75884d3094244618db812fd01cadad07 on master.

lgtm


make units accessible for users

Each "Merkmal" must have a unit. Can we make the unit accessible for the user? What is the best way?

In some tables (e.g. 1000A-1001), value columns contain alternating data entries with different units (in this case counts and percentages) that are resolved in another column (value_units). This column is currently removed by prettify_table, such that the value column becomes essentially unusable.
ToDo: Split the value column into two columns, each with a label indicating the unit.

Not sure if this is helpful, but pint (GitHub, ReadTheDocs) is an excellent Python library for handling units. It also comes with an integration into pandas. Custom units can easily be defined as necessary.


Centre date on calendar view

Hi @kizitonwose, awesome library!
Do you know if I can easily centre a date into the calendar view.
Using scrollTo date method the selected date is on top so this isn't working for my case.
Thanks

Do you know if I can easily centre a date into the calendar view.

This is currently not possible. However, you can scroll to a date in the past to make the target date look centered. While you cannot guarantee that the target date will be at the exact center of the view with this workaround, the target date will not be at the top either.


[usecase-wrt] Update bootstrap framework to usecase-wrt-android

Update usecase-wrt-android samples for bootstrap framework

@yunxliu Pls solve the conflict


feat: support supabase storage

Fixes #34728
What's in this pr :

Added new aws-sdk version 2 dependency which support supabase s3 storage.
Added methods to establish connection with supabase.
Added some print statements to know the control flow.
Modified listFilesInBucket method for supports both amazon s3 and supabase s3.
Added one constant for Supabase S3 storage.

Issue :
The dependency we have for the Amazon S3 plugin is v1 of the aws-sdk, which does not support Supabase S3. To address this, we need to use aws-sdk v2, which uses different APIs. I managed to connect with Supabase S3, but I'm unable to perform queries because the existing code relies on the v1 dependency. This causes conflicts related to method types and leads to complexity.
Screenshots :

In the terminal, we got the output of Supabase results:
From testSupabaseStorage method :

From listFilesInBucket method :

@AnnaHariprasad5123 Thank You for putting the effort into analyzing and documenting all the details about this issue.
Can you add some clarification on the following point.

The dependency we have for the Amazon S3 plugin is v1 of the aws-sdk, which does not support Supabase S3.

Do we have any source link (any documentation, blog etc.) which proves that Supabase S3 does not support v1 of AWS SDK? If yes, can you please share that.

I managed to connect with Supabase S3, but I'm unable to perform queries because the existing code relies on the v1 dependency. This causes conflicts related to method types and leads to complexity.

Yes, this is expected because of the dependency updation. Migrating from AWS SDK v1 to v2 requires a lot of code refactoring as per this documentation without doing which we would not be able to proceed further with this implementation.
cc: @Nikhil-Nandagopal @rohan-arthur @carinanfonseca

There is no documentation or blog regarding this. I tried using the v1 dependency to connect to Supabase, but it's not working. I visited the Supabase site and found that they use the latest version of the AWS SDK. Supabase has recently made its storage S3-compatible, so it can be done with the newer version of the AWS SDK.
Current Dependency:
We are currently using a dependency that supports Amazon S3, Google Cloud Storage, and other similar services.
Issue:
The existing dependency lacks features to connect with Supabase.
Solution:
I found that version 2 of the AWS SDK provides the necessary capabilities to connect with Supabase Storage and perform operations.
Current Dependency :
<dependency>
      <groupId>com.amazonaws</groupId>
      <artifactId>aws-java-sdk-s3</artifactId>
      <exclusions>
        <exclusion>
          <groupId>com.fasterxml.jackson.core</groupId>
          <artifactId>*</artifactId>
        </exclusion>
      </exclusions>
    </dependency>

The provided dependency represent first version of the AWS SDK for Java :

groupId: com.amazonaws
artifactId: aws-java-sdk-s3
exclusions: This section excludes the com.fasterxml.jackson.core library.

This refers to the AWS SDK for Java v1 (version 1). It uses the com.amazonaws package name and is considered legacy by AWS. While still functional, it's not actively developed and  have limitations compared to v2.
Why Supabase might not work with this dependency:
Supabase likely relies on functionalities or APIs introduced in the AWS SDK for Java v2. Since v1 is not actively maintained and may lack newer features, Supabase might not be compatible with it. Additionally, the exclusion of the com.fasterxml.jackson.core library in the second dependency could cause issues if Supabase utilizes it for data serialization/deserialization.
Version 2 dependency :
<dependency>
  <groupId>software.amazon.awssdk</groupId>
  <artifactId>s3</artifactId>
  <version>2.17.174</version>
</dependency>

The provided dependency represent second version of the AWS SDK for Java :

groupId: software.amazon.awssdk
artifactId: s3
Version: 2.17.174

This points to the AWS SDK for Java v2 (version 2). It uses the software.amazon.awssdk package name and offers a more modern, efficient, and actively maintained API compared to v1.

@AnnaHariprasad5123 thank you for your analysis. At this point, it looks difficult to continue further without regressing on the other functionaliies, hence I am closing this PR.
Thanks for your valuable time and effort 🙏
You can find more issues to contribute from this list.
Ref: https://github.com/appsmithorg/appsmith/issues/34728#issuecomment-2255581943
cc: @rohan-arthur @Nikhil-Nandagopal


add ability to configure a default service tag to query by

This is an enhancement along the lines of serverListQueryTags. Instead of having to define a query tag to filter each serviceId by, you can now add a default query tag that all service id's will be filtered by.
This also adds a convenience method to ConsulDiscoveryProperties to select the appropriate tag for a given serviceId, delegating to the default tag if a corresponding tag is not found in the serverListQueryTags map.

Oops, just noticed the java 8 test failure, updated.

@Fitzoh Can you give me a little more concrete example of what this solves?

Sure @spencergibb .  Our consul instance is currently shared across multiple environments, and we have 1 instance of each service on each environment.
Our route definitions look something like this:
zuul:
   routes:
    service1:
      path: /service1/foo/**
      serviceId: service1
    service2:
      path: /service2/bar/**
      serviceId: service2
    service3:
      path: /service3/baz/**
      serviceId: service3

We only want services to talk to their associated services in the same environment, so we're using the server-list-query-tags to restrict each service lookup to the environment tag.
spring:
  cloud:
    consul:
      discovery:
        enabled: true
        server-list-query-tags:
          service1: ${environment}
          service2: ${environment}
          service3: ${environment}

This gets a little tedious as the number of services grow, so this PR adds in the ability to set up a default query tag for each environment.  The updated config would look like this:
spring:
  cloud:
    consul:
      discovery:
        enabled: true
        defaultQueryTag: ${environment}

While still giving you the ability to override the query tags for specific services if necessary.
spring:
  cloud:
    consul:
      discovery:
        enabled: true
        defaultQueryTag: ${environment}
        server-list-query-tags:
          service1: bar

Have you signed the Contributor License Agreement?

I think so, can't find a confirmation though. Just signed a new one, confirmation is<PHONE_NUMBER>03092133.

Thanks @Fitzoh for the quick response.

Closed with some polish via 2b38a3c2758e6b7972a68ddd0e70f4f1eb8ce73e


Import sequence failure

Import sequence fails to complete when using system python's path due to incorrect parsing of syspath string property.

Should be fixed in commit #b8b22c3. Leaving issue open until test on Windows

Couple of fixes for windows. Tested in win10 amd64, with pre-built OpenEMS binaries, blender 4.1.1, openEMS v0.0.36 RC-2 (MSVC). See updated install instructions for Windows in README


split the crate in 2 separate crates

This has been long overdue.
This split cosmogony into 2 crates:

cosmogony_model with all the cosmogony types, that will be pushed to crates.io
cosmogony: only used by the cosmogony binary, used to create the hierachy.

In addition to being cleaner, this remove the dependency on libgeos for cosmogony_model :tada:
As a side addition I also cleanup the disable_geom parameter, as it is now completely useless.
Note: I haven't done the travis yet, I first want your thoughts on this, If the split is ok for you, I think we can do an automatic deployment only for cosmogony_model,
I thus add the WIP label, I'll need to change the travis before merging

It looks good to me :+1:
So Travis would only publish a new "cosmogony_model" crate, right ?

Yes I think we only need this crate, I don't plan to release cosmogony anymore.
Do you know a way to thus mark cosmogony deprecated in crates.io ?
I don't think I can call the new sub crate cosmogony :cry:

ok, I renamed cosmogony_model to cosmogony and cosmogony (the root project) to cosmogony_builder
this way the users can only update the version of cosmogony

oops good catch for the .dockerignore and the typo, corrected :wink:


Fuse.JSON missing

I cannot build the Firebase Database project because a Fuse.JSON dependency is non-existent.
Please help

Right, Idk why this is not implemented in master 🤔
For now just copy/clone the repo https://github.com/ollef/Fuse.JSON in the root of Fuse.Firebase

Thanks a million mate! You helped massively.
On 5 Feb 2018 11:58 p.m., "Jesús Alberto Martínez Mendoza" <
<EMAIL_ADDRESS>wrote:

Right, Idk why this is not implemented in master 🤔
For now just copy/clone the repo https://github.com/ollef/Fuse.JSON in
the root of Fuse.Firebase
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/fuse-compound/Fuse.Firebase/issues/62#issuecomment-363235359,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABlFLcalSXzHqp9OMHtQLQy4sCGI3v6aks5tR3mKgaJpZM4R5p_i
.

We have now include Fuse.JSON inside the repo, you no longer need to import it manually


Excel..lent (unintended)

Excel..lent
Important information
Level
+unintended behaviour

Error code
None

Description
Excel doesn't close itself after the program is closed.
Visuals
C:\WINDOWS\system32>taskkill /f /im excel.exe
SUCCESS: The process "EXCEL.EXE" with PID 17396 has been terminated.
SUCCESS: The process "EXCEL.EXE" with PID 10556 has been terminated.
SUCCESS: The process "EXCEL.EXE" with PID 3744 has been terminated.
SUCCESS: The process "EXCEL.EXE" with PID 17980 has been terminated.
SUCCESS: The process "EXCEL.EXE" with PID 17932 has been terminated.
SUCCESS: The process "EXCEL.EXE" with PID 12944 has been terminated.
SUCCESS: The process "EXCEL.EXE" with PID 2472 has been terminated.
SUCCESS: The process "EXCEL.EXE" with PID 16984 has been terminated.
SUCCESS: The process "EXCEL.EXE" with PID 16164 has been terminated.
SUCCESS: The process "EXCEL.EXE" with PID 4104 has been terminated.

@gawdn

    xlWkb.Saved = True     xlWkb.Close     xlApp.Quit     DoEvents
This fixed the issue.


Palette merge strategy.

In order to improve developer experience and design consistency custom palettes should be merged with the default to ensure no missing values and to allow minimal required customization.

[ ] Custom palettes are merged width the UUI default palette.
[ ] Documentation updated.

Need validation that this is  expected/desired behavior or if overriding would be the expected/desired behavior?

current behavior is overriding with exported UUI_PALETTES and UUI_TYPOGRAPHY


Follow v-link with left button only to allow opening in a new tab by middle clicking

Links using v-link don't react properly to middle clicking (i.e.: open in a new tab). Links should only navigate to destination if left-clicked.

Good catch, thanks!


how can i POST new ACL to es?

hi fg,
could you tell me how can i post new ACL to ES which has a ACL configuration already?
![image](https://cloud.githubusercontent.com/assets/3774872/12050197/46787162-af2c-11e5-9cde-8c9f8ff70d00.png

Auto close this issue because it refers to Search Guard 1 which is decommissioned now. For details pls. see https://github.com/floragunncom/search-guard-attic/wiki . If this issue is still valid for Search Guard 2 (for elasticsearch 2.x) feel free to reopen it (or to file a new one). Pls. do not longer report issues for Search Guard 1 (for elasticsearch 1.x). We sincerely apologize for the inconvenience this may have caused. Thanks for contributing!


[ENH] Parametrize model saving for deep classifiers and regressors

Reference Issues/PRs
Fix #407

What does this implement/fix? Explain your changes.

Remove unnecessary pickle stuff from base deep classifier
same as 1. but for base deep regressor
Add parameters to save best and last models
If the best model is to be saved then the user chooses a name for the file (by default now its deleted, this will happen if the parameter is set to False)
Use base class method to save last model with a chosen file name
Added some missing tags for deep classifiers

Does your contribution introduce a new dependency? If yes, which one?
no

What should a reviewer concentrate their feedback on?
if they agree with code architecture of model saving and removal of pickle stuff

Did you add any tests for the change?
no need

PR checklist

For all contributions

[x] The PR title starts with either [ENH], [MNT], [DOC], or [BUG] indicating whether the PR topic is related to enhancement, maintenance, documentation, or bug.

all looks good, does this mean it will now pass test_save_estimators_to_file? Or is that dependent on pickle?

all looks good, does this mean it will now pass test_save_estimators_to_file? Or is that dependent on pickle?

I think this test is for pickle only, @MatthewMiddlehurst can you confirm ?

Not had a look through this properly yet. I think the test would currently require pickling, but the methods used here and the ones in the test don't currently match up anyway. We should eventually enable testing for saving deep learners however we decide to do it though.

I can take care of the test once we get this in.


Feature: Windows build is not compiled with SimSIMD, f16 support for cosine distance

Describe what you are looking for
The pip-installable package for Windows seems to be not compiled with SimSIMD (can be seen in index.specs), which makes it ~3-10x slower than the Linux build.
Additionally, It seems that cosine distance supports AVX512 with dtype='f32' , but it fallbacks to AVX2 with dtype='f16'. So we need to make a choice between optimization for speed or optimization for storage. It would be great to support AVX512 with float16 as well and of course, to have SimSIMD support in pip-installable package for Windows.
I can contribute to the implementation if there is no known limitation for these.
Can you contribute to the implementation?

[X] I can contribute

Is your feature request specific to a certain interface?
It applies to everything
Contact Details
<EMAIL_ADDRESS>Is there an existing issue for this?

[X] I have searched the existing issues

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Hi, @monatis! Indeed, that issue exists. I use GCC attributes to annotate function-level compilation settings in SimSIMD. If you can find a way to make them work with MSVC - we will be able to accelerate the Windows build 🤗
Would you have time to work on that?

Hi @ashvardanian thanks for the quick response!
Yes, I can work on it this weekend.
My use case is semantic search on consumer-grade hardware, so every bit of optimization counts.

:tada: This issue has been resolved in version 2.10.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


RTL support

Hi! Thanks for the commit. Is there any way you can turn this into a modifier class, e.g. .progress-indicator.rtl ? This way the user does not have to modify the sass and recompile, and can just use the minified version. I know it will produce more code, but it makes the use of it easier in the long run.
Also, do you have examples of this in action? I have modified the direction: rtl property on the entire document for testing, but it looks a bit funky, so it would good to see what the intended effect is.
You can also add the .rtl example in the index page if you'd like -- but certainly not expected.


#76: Tutorials: Badges

As users go through the tutorials, we'd like to track their progress and give rewards for their achievements. For example, they can be shown in a separate pane of the user's profile.

This issue has been mirrored in Jira: https://reddata.atlassian.net/browse/GROK-14753

This issue has been mirrored in Jira: https://reddata.atlassian.net/browse/GROK-16014


[ACR] Update tests.yml

Clean up duplicate env variables.

Hi @benbp , can you help to review this PR? It is similar to the ones that you reviewed in AppConfig and Tables.


Multistage build to reduce the size of docker image for frontend service

Reduced docker image size of frontend service from ~1.2gb to ~500 mb.

Issues:

Zookeeper facing issue

zookeeper                  | [2023-02-07 13:26:37,906] WARN Unexpected exception (org.apache.zookeeper.server.NIOServerCnxn)
zookeeper                  | EndOfStreamException: Unable to read additional data from client, it probably closed the socket: address = /<IP_ADDRESS>:54006, session = 0x0
zookeeper                  |    at org.apache.zookeeper.server.NIOServerCnxn.handleFailedRead(NIOServerCnxn.java:163)
zookeeper                  |    at org.apache.zookeeper.server.NIOServerCnxn.doIO(NIOServerCnxn.java:326)
zookeeper                  |    at org.apache.zookeeper.server.NIOServerCnxnFactory$IOWorkRequest.doWork(NIOServerCnxnFactory.java:522)
zookeeper                  |    at org.apache.zookeeper.server.WorkerService$ScheduledWorkRequest.run(WorkerService.java:154)
zookeeper                  |    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
zookeeper                  |    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
zookeeper                  |    at java.base/java.lang.Thread.run(Thread.java:829)

Similarity service failing to be built using docker

#0 2.796 Collecting scikit-image==0.19.2
#0 2.803   Downloading scikit_image-0.19.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (13.5 MB)
#0 18.64      ━━━━━━━━━━━━━━━━━━━━━━━━━━━╸             9.4/13.5 MB 11.5 MB/s eta 0:00:01
#0 18.66 ERROR: Exception:
#0 18.66 Traceback (most recent call last):
#0 18.66   File "/usr/local/lib/python3.8/site-packages/pip/_vendor/urllib3/response.py", line 438, in _error_catcher
#0 18.66     yield
#0 18.66   File "/usr/local/lib/python3.8/site-packages/pip/_vendor/urllib3/response.py", line 519, in read
#0 18.66     data = self._fp.read(amt) if not fp_closed else b""
#0 18.66   File "/usr/local/lib/python3.8/site-packages/pip/_vendor/cachecontrol/filewrapper.py", line 90, in read
#0 18.66     data = self.__fp.read(amt)


Create tool tsp-client

Per Issue #6838, this PR scaffolds out a new tool to invoke the TypeSpec compiler using Node/npm.
The largest enhancement is avoiding the need to clone the specs repository as URLs are supported as entrypoints rather than requiring the TSP files all be locally available.
Eventually this tool will grow to support all of the scenarios covered in https://github.com/Azure/azure-sdk-tools/blob/main/doc/common/TypeSpec-Project-Scripts.md

This looks very nice.
I'm wondering a little bit if we could do anything with the TSP compiler host API to make it so that you don't even have to parse the files and traverse the import nodes, and we could just invoke compile with our own custom host. For example, if we could wire up a host that by default does a sparse checkout of the entrypoint's directory, then simply checks out more directories if they're imported from outside of that tree, you could just call compile and have it be done... maybe?

I'm wondering a little bit if we could do anything with the TSP compiler host API to make it so that you don't even have to parse the files and traverse the import nodes, and we could just invoke compile with our own custom host. For example, if we could wire up a host that by default does a sparse checkout of the entrypoint's directory, then simply checks out more directories if they're imported from outside of that tree, you could just call compile and have it be done... maybe?

Potentially! Though I think the default algorithm that looks for package.json up the tree might cause us to sparse checkout every level of the path up to the root of the repo. Unless we tried to handle that specially and ignore it.

/check-enforcer override


Feature Request: Ability to drag and drop between calendars

Feature request:
The ability to drag between calendars.  It's sort of weird that I can apply the mwl-draggable property to an external object and drag it all over the screen but if i want to drag an existing event which also has mwl-draggable= true I can drag it outside of it's current calendar.
I'm trying to implement my own version of the week view with hours since the existing one seemed to be lacking and this is my stumbling block
###Plunker
http://plnkr.co/edit/ZPYoKalCYJFxORhnhALE?p=preview
Versions
Angular: 1.6.6
Calendar library: 0.30.0
Browser name and version: Chrome ( Latest )

One idea was presented in #595 (using interactjs global listener), the idea was also suggested in #288. Maybe those threads can help you?

I guess I can see how that would allow me to drop the event in the appropriate calendar but the event disappears and hides under the other calendars when dragging it.  Do I need to do something to the event cell?

Rather with overflow and/or z-index ;)

I tried to modify the template to set setting the z-index and overflow in my custom template but it still falls behind the other cals.
http://plnkr.co/edit/ZPYoKalCYJFxORhnhALE?p=preview

#595 has something of an explanation of how I achieved this

Looks like this was already solved here: https://github.com/mattlewis92/angular-bootstrap-calendar/issues/595#issuecomment-340076690 Thanks for your sharing your solution! 😄


Reword visibility preference for clarity

Preference settings are typically verbs ("Do this") but the always-shown visibility setting wasn't. Currently, it reads On top of other windows which is rather confusing for the end user.
This minor change moves it to Keep Toggl on top of other windows which should hopefully be a bit more clear.

I agree, this is much better. Thank you for your contribution, Sir!


where clause is not supported in add materialized view clause

Feature request
Problem:
Currently the where clause is not supported in add materialized view clause and a query with a where clause cannot hit a materialized view.
Example:
1.table Name:TABLE1
2.data model:Duplicate Key Model, DUPLICATE KEY(TDATE,COLUMN1,COLUMN2)
3.materialized views:
CREATE MATERIALIZED VIEW test1_mv as
SELECT TDATE,SUM(MONEY) MONEY,SUM(SUM(MONEY)) OVER(PARTITION BY TDATE) SUM_MONEY
FROM TABLE1 M GROUP BY TDATE ORDER BY TDATE WHERE TDATE=date'2022-01-01';

4.problems:
--problem1:
ERROR 1064 (HY000): The where clause is not supported in add materialized view clause,*********
--problem2:
ERROR 1064 (HY000): The materialized view only support the single column or function expr. Error column: sum(sum(MONEY)) OVER (PARTITION BY TDATE)

Alternatives my considered
I hope to achieve the following:

Materialized views can support where clauses
The materialized view can use the window function
Add the where clause to the query statement to match the materialized view

Additional context
StarRocks version：2.2.2 community edition

this feature will be supported in version 2.4

Thanks,Please ask when version 2.4 will be released? @imay

@JohnHuang93 You can try the async Material View feature in V2.4.
But for sync MV, StarRocks doesn't support where clause and window functions.


"IndexError: list index out of range" raised by _check_carry_type in lax/control_flow/loops.py

Description
import chex
import jax

@chex.dataclass(frozen=True)
class Class:
    field: int

def f(x, _):
    return x, None

jax.lax.scan(f, Class(field=3), length=10)

$ python3 -m pip install -U jax==0.4.35
$ python3 test.py
$ python3 -m pip install -U jax==0.4.36
$ python3 test.py
Traceback (most recent call last):
  File "/Users/carlos/test.py", line 14, in <module>
    jax.lax.scan(f, Class(field=3), length=10)
  File "/Users/carlos/venv/lib/python3.12/site-packages/jax/_src/traceback_util.py", line 180, in reraise_with_filtered_traceback
    return fun(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^
  File "/Users/carlos/venv/lib/python3.12/site-packages/jax/_src/lax/control_flow/loops.py", line 303, in scan
    _check_carry_type('scan body', f, init, out_tree_children[0], carry_avals_out)
  File "/Users/carlos/venv/lib/python3.12/site-packages/jax/_src/lax/control_flow/loops.py", line 383, in _check_carry_type
    + f'  * {diffs[-1]}.\n')
             ~~~~~^^^^
IndexError: list index out of range

As shown above, this issue was introduced between 0.4.35 and 0.4.36.
It is caused by this line of code triggering this line of code. If I insert the following lines right before it:
print(in_carry_tree)
print(out_carry_tree)
print(diffs)
exit()

this is the output:
PyTreeDef(CustomNode(Class[[GetAttrKey(name='field')]], [*]))
PyTreeDef(CustomNode(Class[('field',)], [*]))
[]

There are two mismatches: [] vs. (), and the presence or absence of GetAttrKey.
A class without fields also triggers this error.
System info (python version, jaxlib version, accelerator, etc.)
jax:    0.4.36
jaxlib: 0.4.36
numpy:  1.26.4
python: 3.12.7 (main, Oct  1 2024, 02:05:46) [Clang 15.0.0 (clang-15<IP_ADDRESS>)]
device info: cpu-1, 1 local devices"
process_count: 1
platform: uname_result(system='Darwin', node='Carloss-MacBook-Pro-2.local', release='23.6.0', version='Darwin Kernel Version 23.6.0: Mon Jul 29 21:14:46 PDT 2024; root:xnu-10063.141.2~1/RELEASE_ARM64_T6031', machine='arm64')

I did a bisect and it looks like this is caused by #24906. @IvyZX can you have a look please?

The issue is in chex, and is fixed at HEAD. Upgrading chex to the latest commit works for me:
pip install -U --force --no-deps 'git+https://github.com/google-deepmind/chex@f0b6b503a5fb625a380a6b318ec1f6d2abd9b9bf'

We just need a new release of chex, I think.

https://github.com/jax-ml/jax/pull/25355 should also fix this on JAX python level. A new JAX release might come out today that includes this.


loaders cleanup

Follow up from https://github.com/opencollective/opencollective-api/pull/8718
Removed the controversial things from the PR so we can merge this small cleanup.
The goal is to simplify and remove things that are unnecessary or unclear.

This was a good one but some changes were introduced in the meantime that are making it conflicting and difficult to fix.
Should have merged when this was warm.


Update the UI for Add New Work to improve UX

Descriptive summary
Suggestions for cleaning up the UI that the user works with when adding a new work.
@hannahfrost Please review if you have a chance to make sure this reflects your understanding of our discussion.
Rationale
Currently there is inconsistency in wording and visual presentation of form elements among the four tabs of the page. These suggestions also (sort of) address @newmanld's comment in #675 about the tab order, although after discussing, @hannahfrost and I would like to try putting the Files tab first and leaving the others in their current order. So the new tab order would be:

As shown in the mockup above, I'd also suggest removing the icons from the tabs. There are a lot of icons in the application and I'm not sure using them here provides enough value to justify the additional visual clutter and inconsistency with other tabs that don't use an icon.
Files tab
The mockup below represents new and updated text, removing headings, and moving the cloud upload button to be inline with the other upload buttons:

For copy and paste purposes, here is the text in the first two paragraphs:

Each work must have one or more files associated with it. Add files from your local system or a cloud provider.

Note that if you use a cloud provider to upload a large number of files within a short period of time, the provider may not be able to accommodate your request. If you experience errors uploading from the cloud, let us know via the contact form.

(where "contact form" is linked as before)
Add the plus icon to, and remove btn-lg from, the cloud button for consistency.
I understand there might be some complications with where to show the progress bar, etc. with this rearrangement but I'm hoping we can figure that out after the visible elements are rearranged.
Descriptions tab
The only update here is to remove the first two intro paragraphs.

Relationships tab
New intro paragraph text, updates to the form labels, and removing the "This Work..." heading:

This work must be a member of one administrative set. Optionally, it can belong to one or more collections.

Sharing tab
Rename tab. More significantly, we suggest rearranging the form elements to more closely match the pattern we are using the Add/Edit Admin Sets Participants  tab, since they are very similar features.

Specific updates here are:

Intro text (I wonder if we can remove the text next to the "Private" choice in the Save Work sidebar with this update?):

Regardless of the visibility settings for this work, you can also share it with other users and groups.

Move the add user/group controls to the top, under the "Add Sharing" heading.

Show "Add group/user" labels for each row of controls.

Replace the plus icon with an Add button (to match what we do on the Participants tab).

Update to the heading "Currently Shared With" and list the users/groups the work is shared with.

@ggeisler Quick comment - I note that the Files tab is first on the Add New Works by Batch, so it's best to be consistent.

@ggeisler Thanks for gathering these details together. It correctly reflects what we discussed yesterday.

These changes look good.  The only thing that stands out to me as inconsistent is the size of the headings on the Sharing tab.  "Add Sharing" and "Currently Shared With" are significantly larger than any of the text on any of the other tabs.

Thanks for the review of style issues. I'd like to push back against some of the other changes.

Each work must have one or more files associated with it.

This is not necessarily true; it can be turned off in configuration, so this text should not show if the requirement is turned off.
Similarly, all the text about the 'cloud providers' should not display if browse-everything is not in use.
The reason the description tab is first in this create workflow (but not in the batch upload workflow) is because it's irrelevant to users who want to create a work but not attach a file. Switching the tabs is not helpful for our use case.
These changes regress hyrax back toward the 'self-deposit IR' use case, which we had been attempting to broaden away from. I would prefer to see them as configuration if they are made.

We have configured our self-deposit IR to allow works without files.    I agree with @hackmastera that for our use case switching the tabs may not be helpful.   We would discuss with our product owners overriding locally to switch the order of tabs back to description first, which supports the suggestion from @hackmastera to make the order of tabs a configuration option.
Per the note that this may sort of address my comments in #675:  That comment was not about tab order per se, but whether the choice of admin set is something that belongs on a relationships tab that is (appropriately for other relationships) third in order.    We may need to amass more use cases about admin sets to understand if the choice (if a given user is authorized to choose between two or more admin sets) should be made before choosing work types, i.e. before seeing this form?

@elrayle The headings on the Sharing tab are actually the only headings on any of the tabs; the other bolded text you see in tab pages are labels. That said, I do think the headings on the Sharing tab are too large. What you see in the mockups is what is currently in the app. I plan to revise the heading sizes throughout the app at some point but want to do it consistently so it might be better to be done separately from this work.
@hackmastera @newmanld Our goal is definitely not to move back towards the self-deposit IR use case. Neither @hannahfrost nor I were aware that there was a current use case of works without files. Given that is a valid use case, I'll update the mockups to reflect your feedback. Also, without thinking through the details yet, I'd like avoid unnecessary configuration (e.g., omit or reword text instructions rather than have to have a configuration to display specific text instructions) if possible.

@ggeisler sounds great, thanks! 👍

One approach for the instructions is to drive it from the locales file.  If a site doesn't want it to display, the label can be set to an empty string.  The only down side is that the empty string, in some cases, effects spacing.

Two thoughts on admin sets...

There are several circumstances in which a user cannot select an admin set.

The site only defines the default admin set.
The user only has permission to create works in the default admin set.
There are multiple admin sets, but the current user only has permissions to create works in one.

In the case where the user can only create works in the default admin set, should the selection be hidden to avoid confusion?  Users of this app are unlikely to know the concept of an admin set.

Use Case:  We have an app that has two work types.  For one type, at least one file is required.  For the other type, files are not allowed.  In our app, we overwrote the code for the tabs and only show the Files tab for the work type that requires files.  It is hidden for the other work type.  It's always better to not have to customize the code.  Are others hiding tabs?

I just saw issue #678 which is related to 1 in the previous comment.

I'm not sure I understand the discussion about not moving hyrax back toward self-deposit here. Isn't self-deposit an ongoing and intentional use of hyrax?

@julesies absolutely; I meant narrowing back onto an exclusively self-deposit use case. The current intention of the project as I understand it is to continue broadening to include more use cases in addition to self-deposit IR.

@ggeisler thanks for sharing these, they are looking great. I have a few thoughts on the suggestions.
Generally, I think for many students and faculty users, they may never use the relationships and sharing tabs. I would hate to lose the "private" functionally from the visibility section. Private remains to be the most consistently understood term in our repo. If you are just looking at numbers, I find that the majority of self-deposit users are students, using the repository 1 time as a requirement of graduation. And then there is a set of repeat users managing content over time. I was wondering if it would be terrible to have the visibility settings "repeated" on the sharing tab - maybe not editable but viewable? So it is more obvious that it's an additive action?
Regarding the text on the relationships page. Isn't the behavior that the deposit will go into the "default" admin set? I wonder if some more language about how it work would be appropriate?
Not suggesting exact wording, but thinking of getting across something like...."this work will be added to the admin set listed, unless you select another. A work must belong to one admin set. "

@julesies Thanks for your use case and sharing your concerns. As @hackmastera said, I didn't mean to imply that the direction is away from self-deposit, just broadening beyond that (sorry for the confusion). Your other feedback is useful; I think our next step is to look at all the discussion in this ticket, as well as #674, #675, and #678, and work out a design that supports the various related use cases. I think we can make progress on that next week, when @hannahfrost might be available to add her feedback.

Based on the comment thread above, below are some updates to consider:
Tab order
Based on @hackmastera's explanation about how adding works are different in the batch upload case, we should not change the tab order as previously suggested.
Descriptions tab
No change from the original mockup design proposed above.
Files tab
Updates to deal with 1) works are not always required to have files, and 2) an implementor might not have browse_everything configured:
If browse_everything is in use:

If browse_everything is not in use:

Don't display the introductory text except the first sentence
Don't display the browse_everything button

Relationships tab
There has been much related discussion about configuring administrative sets: limited types of works per admin set, specifying workflow per work type, etc. After reading through all the relevant tickets, I don't think any of that really affects the Relationships tab, other than deciding what a user sees on this tab if their choice of admin set is restricted because of work type or user/group permissions. So perhaps there are just two variations to consider here.
1. User has choice of admin set
When a user actually does have the choice of more than one admin set with which to associate the work, the tab is pretty much as in the original mockup above:

2. User does not have a choice of admin set
In cases where the user does not have a choice of admin set (e.g, the work type or user/group permissions dictate that the work goes to the default admin set, or other specific admin set), two options to consider:
A. Disable admin set select menu
The screenshot below doesn't illustrate it too well, but in this approach we still show the admin set select menu (so a new user learns it plays a role in things, and a user who already knows about admin sets from other deposits doesn't wonder why the selection is not where it was before) but disable it with the specified choice indicated, so the user knows what admin set the work is going into but can't change it.

B. Hide admin set select menu
Alternatively, we could hide the selection of admin set entirely when the user can't change it. The advantage here is for one-time users or users who will never deposit a work that allows admin set selection, since it effectively hides something they never need to know exists.

(These updates don't incorporate any changes to address the additional wording suggestion @julesies made in a comment above about the Relationships tab. I understand the suggestion and am willing to make updates to the mockups if others think they are necessary but I personally feel that if users see a select menu and can change the options, we don't need to explicitly tell them they can change their admin set choice.)
Sharing tab
I didn't make any updates to the Sharing tab. The main comment on this tab was @julesies point that -- if we followed my earlier suggestion that maybe with the proposed redesign of the Sharing tab we could get rid of the wording next to the Private radio button in the Visibility section of the sidebar -- we'd lose explanation important for one-time or infrequent users. @julesies proposed some additional text that might go on the Sharing tab.
@julesies explanation convinces me that we should not remove the wording next to the Private radio button. But I'm not so excited about adding more explanatory text to the Sharing tab or repeating things that are already in the sidebar next to the tab; I think we can actually make things more clear with less, rather than more, explanation by keeping the UI simpler. But if others feel more clarity is needed I'm happy to make further updates to the Sharing tab design.

👍  @ggeisler thanks for these updates!

@ggeisler This looks really good. I really appreciate your thoughtful consideration. I totally agree less than more! It seems really challenging to serve the needs of infrequent vs frequent users where we have both (trained) library staff and self-deposit users who the service managers may never have the chance to talk to/train.
I was trying to think about faculty or students who might click on the Relationships tab (options a and b above) and I think my concern is really the terms and potential confusion between Admin Set and Collections. And this really hinges on how a repo's admin sets are set up.
I was thinking...if a general self-deposit repository has the following Admin Sets:

Default Collection (zero step workflow) (could be named any faculty/student research output)
ETDs (unique workflow)
Senior Honors Theses (unique workflow)

...A user might see the collections part only listed and not understand why the ETD or the Senior Honors These would not be listed, when they could Navigate/or discover their work within an admin set from the homepage (and it will appear on the work view?). In other words do you think users would assume that Collections=Admin Sets? I wonder if we could do some usability testing around these terms or if any has already been done?
It may be that in our instance we solve this by renaming Admin Sets and Collections to something else (not that I know what!).

@ggeisler @julesies @hackmastera et al. Post-spring-break catching up is now underway. Lots of good stuff here.
With regard to the terms "admin set" and "collection" in the UI - I also struggle with what will make sense to users. Admin set makes sense to us (maybe? finally?), but I expect it will often break down into confusion once presented to general users. I've spent time trying to come up with alternatives, but so far have yet to find anything satisfying. Maybe we need a brainstorming session over beer sometime.
For the relationships tab, I'm in favor of option 2A. I think transparency about the admin set relationship is important for all users, including us insiders, at least during this early stage of the app and this introduction of this kind of functionality.
And +1 to use cases of deposits without files. We need to support this. It was on my radar, but not in mind when @ggeisler and I were working on this earlier. Thanks.

+1 to @julesies and @hannahfrosts comments about confusion currently between Admin Sets - presented as collections on opening page I think of Hyrax 1.0  - and Collections - presented as a facet under Type?  The Display Sets working group of which I'm a participant and @elrayle chairs, has also discussing this and I think there is an opportunity when the UI/UX and Dev work are done to incorporate display sets to resolve the UI/UX issues with Collections.
I lean toward 2A on the relationships tab and also +1 to use cases of deposits without files.

@hannahfrost this might not be the best venue for this question, but is there any discussion about making collections an optional feature? i'm not sure we have a real need for them need for them ATM and since they are so present in the UI, maybe it would make sense for me to disable them. I might not be getting the need to make the user collections so prominent.
Maybe we could just call everything collections and collapse the concept in the discovery UI, but in edit form label the type like "Professor Plum's"/"User Collections" or "University Library's". @newmanld is this the kind of thing you all are discussing in the display sets group?

@julesies -   I recommend the high level document just shared on hydra tech and hydra community by @vantuyls, and the documentation from the Display Sets WG (see also child pages) here: https://wiki.duraspace.org/display/hydra/Display+Sets+Working+Group.  In particular https://wiki.duraspace.org/display/hydra/Requirements+-+Display+Sets    The initial work of the Display Sets WG is complete and a UI/UX WG is starting.

As part of the Collections Extensions WG, we've further refined the Relationships tab for New/Edit Work. The goal is to make the Relationships tab for Collection and Work have the same basic layout and affordances.
When someone is ready to start work on this ticket, we should probably create separate tickets for each Work tab, because of the amount of changes and updates that have occurred since the original creation of this ticket.

In a post hyrax 2.1 world, a lot has changed since these recs were made so I'm going to close this one.


raft: set leader id in stepFollower

Follower has already set its leader ID from
previous append messages from the leader, but
to be consistent,  this adds a line to set its
leader id from leader snapshot message.

/cc @xiang90 @heyitsanthony thanks.

lgtm

thanks. merging in greens.


Consider supporting extends property

Hey, thanks for the library.
I might implement this at some point, but it would be great if this library supported the extends property, and followed the compiler rules up the config tree.

Oh, it does support this? I found an issue when using extends but maybe I misunderstood the usage


Node3D children using top_level in different position in-editor vs. runtime

Godot version
v4.2.beta3.official [e8d57afae]
System information
Godot v4.2.beta3 - Ubuntu 22.04.3 LTS 22.04 - X11 - Vulkan (Forward+) - dedicated NVIDIA GeForce RTX 2060 (nvidia; 535.113.01) - Intel(R) Core(TM) i5-9400F CPU @ 2.90GHz (6 Threads)
Issue description
UPDATE:
I was mistaken about the Sphere. It also moves to a different position when running. Overall, it's confusing that stuff is not in the same position between the editor and runtime.
This image shows how in the editor, the position of things is different to when the game runs. This seems a bit weird to me.
At first I thought it was any child of a Node3D, so I added a MeshInstance sphere (set as top_level) and it works fine! So, it's only the MultimeshInstance nodes that go a bit haywire.

Steps to reproduce

Put a Multimesh node in a Node3D and set it as top_level.
Move the parent around in the editor and compare that to
Running the scene.

I made a small repo, see below for the project.
Minimal reproduction project
Repo here:
https://gitlab.com/dbat/top-level-issue

It looks like the issue was with global transforms being applied locally when a tree is entered. The PR https://github.com/godotengine/godot/pull/84643 should fix that, with the additional change that position info should update immediately between local and global transform upon checking the top_level box. This prevents the game from running with outdated information, which previously only updated when the object was moved again.


Long term stats & energy draft

Implement long term stats changes to sensor class
Draft changes to support a cumulative power sensor (awaiting pychonet update)
Update device name to match the user's configured name in config flow
Prefix entity names to include user's configured name to prevent conflicts in names and ids when multiple devices of the same class exist

Yeah fair enough I delete my original comment because I figured there was more to that change.
Scott
Get Outlook for iOShttps://aka.ms/o0ukef

From: khcnz @.>
Sent: Monday, September 6, 2021 7:16:45 PM
To: scottyphillips/mitsubishi_hass @.>
Cc: Scott Phillips @.>; Review requested @.>
Subject: Re: [scottyphillips/mitsubishi_hass] Long term stats & energy draft (#37)
@khcnz commented on this pull request.

In custom_components/echonetlite/sensor.pyhttps://github.com/scottyphillips/mitsubishi_hass/pull/37#discussion_r702742780:

 """Representation of an ECHONETLite Temperature Sensor."""

def init(self, instance, op_code, attributes, units: UnitSystem, name=None) -> None:

I saw a comment from you about this but it's disappeared. The idea with the native values thing is to never do conversions based on the users configured unit systems - always pass the raw values the system gives you and let HA do any conversions within the sensor platform.
—
You are receiving this because your review was requested.
Reply to this email directly, view it on GitHubhttps://github.com/scottyphillips/mitsubishi_hass/pull/37#discussion_r702742780, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AGHQNDB5EQLCVUEHHGTDKHLUASBH3ANCNFSM5DN23RRA.
Triage notifications on the go with GitHub Mobile for iOShttps://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Androidhttps://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

Long term stats

I am actually deeply envious that you can measure your HVAC power consumption. I feel robbed...


user_details Boolean fields

Type: Bug
Version: 0.2.21
Django: 1.9.2
File: social/pipeline/user.py
Function: user_details
Description:
Sometimes user model can store boolean flags obtained from checkbox.
In this case details dict will contain boolean variable (which could be equal to False)
In this case the code
if value and hasattr(user, name):
will never let the field name to update, because value == False

I've added a fix for this on social-core. Only None values will be ignored.


GDCMImageIO bug, DICOM file cannot be decompressed unencapsulated representation

Error reading a large file, ITK ERROR: GDCMImageIO(0x7fdbbd523570): Buffer size 19887104 is not valid.
Originally reported via SimpleITK #1434, see sample file there. Also see discussion on GDCM mailing list.

Hi @dzenanz,
Mathieu asked that this bug be assigned to him and it looks like I can't assign issues. Please assign, thanks.

@malaterre Thank you for working on this issue!

@malaterre, will you be able to look at this issue? Thank you.


build time validation of steps with only optional inputs to be marked as optional

Fixed in https://github.com/oracle/helidon-build-tools/pull/623


[MBL-1738] iPadOS 18 - Navbar overlay issue in "Follow Friends" screen

📲 What

Moved the call to setNavigationBarHidden from viewWillAppear to viewDidAppear in the "Follow Friends" screen.

🤔 Why
The change was needed to fix an issue where the UINavigationBar was overlaying the content of the "Follow Friends" screen when running the app on a device with iPadOS 18 and Xcode 16.
This issue appears to be caused by layout changes introduced in iPadOS 18, where the tab bar is now at the top of the screen. By calling setNavigationBarHidden in viewDidAppear instead of viewWillAppear, we ensure that the layout has been fully constructed, which prevents the UINavigationBar from incorrectly overlaying the content.
🛠 How
The setNavigationBarHidden function was moved from viewWillAppear to viewDidAppear so that the layout is fully built before manipulating the visibility of the navigation bar. This change resolves the layout issue observed in iPadOS 18.
👀 See
Jira issue

Before 🐛
After 🦋

✅ Acceptance criteria

[ ] Ensure the UINavigationBar no longer overlays the "Follow Friends" screen on iPadOS 18.

SwiftFormat found issues:

File
Rules

Kickstarter-iOS/Features/FindFriends/Controller/FindFriendsViewController.swift:38:1
warning: (trailingSpace) Remove trailing space at end of a line.

  Generated by :no_entry_sign: Danger


[WAF - Reliability Review] - avm/res/cache/redis

Check for previous/existing GitHub issues

[X] I have checked for previous/existing GitHub issues

Issue Type?
Feature Request
Module Name
avm/res/cache/redis
(Optional) Module Name if not listed above
No response
(Optional) Module Version
No response
Description
Hello team,
The AVM core team are performing a review of all AVM modules to ensure they are aligned to the WAF reliability pillar by default, and in the future they will be checking against other WAF pillars also. This is a requirement we have before we can go v1.0.0 for any AVM module.
Links to AVM specs:

https://azure.github.io/Azure-Verified-Modules/specs/shared/#id-sfr2---category-composition---waf-aligned
https://azure.github.io/Azure-Verified-Modules/specs/shared/#id-sfr5---category-composition---availability-zones

Links to WAF Reliability, APRL & Product Docs recommendations used for analysis:

https://learn.microsoft.com/azure/well-architected/reliability/checklist
https://learn.microsoft.com/en-us/azure/azure-cache-for-redis/cache-how-to-zone-redundancy?toc=%2Fazure%2Freliability%2Ftoc.json&bc=%2Fazure%2Freliability%2Fbreadcrumb%2Ftoc.json
https://learn.microsoft.com/en-us/azure/well-architected/service-guides/azure-cache-redis/reliability
https://azure.github.io/Azure-Proactive-Resiliency-Library/services/database/redis-cache/
https://azure.github.io/PSRule.Rules.Azure/en/rules/Azure.Redis.AvailabilityZone/#configure-with-bicep

Whilst reviewing this module the following issues have been found that are non-compliant with the AVM specs that need to be resolved in a new version release:

Change the parameter of zoneRedundant to default to true
Change the parameter of skuName to default to Premium
Change the parameter of zones to default to [1,2,3]

May be able to remove the var for AZ logic https://github.com/Azure/bicep-registry-modules/blob/main/avm/res/cache/redis/main.bicep#L108-L110

Change the parameter of replicasPerMaster to default to 3

Please make these changes in a PR to the parameter defaults so a new minor version can be published.
Thanks
The AVM Core Team
(Optional) Correlation Id
No response

@hundredacres, can you please take a look at this one? Thanks!

PR here: https://github.com/Azure/bicep-registry-modules/pull/1621


Lock movement of camera as well

Thank you for the camera lock feature since v1.1.10.
Appreciate your work!
Is it possible to add a second function to lock the camera translation/movement as well?

Hey Floyer, you are right in the next version I will completely freeze the controls of the camera. Coming soon...

Hello Mr.Andy  I added js file  and after that i tried created 3d model, when i press refresh  button it is not rendering 3d view

Hello Mr.Andy  I added js file  and after that i tried created 3d model, when i press refresh  button it is not rendering 3d view

Hello @Umarkhabiliy, please open a new issue, instead of commenting in a issue that is off topic. I need more info to help you. Screenshots, config, the model files, the error in the browser console. One of the most common source of errors is that the path of the model file is not the correct one.

@Floyer007 last version 1.1.13 will do a final implementation of your request (full freeze)

Great!
So one for all rotations and one for movement?
Just locking rotation and unlock movement will be a scenario for top down view of large buildings an still navigate in them.

No I've done only lock camera. For lock rotation zoom and movement separately I have to do another type of coding

Please accept the current approach. I have to rethink the way to address your second requirement

Alright, I will look at it as well.


setDefaultParams() must be of the type string

I've updated ps_mbo to the latest version available for prestashop 1.7.8 and now the admin panel doesn't work anymore.
I get this error:
PrestaShop\Module\Mbo\Addons\ApiClient::setDefaultParams() must be of the type string, null given, called in appProdProjectContainer.php on line 3494
And the only way to enter in backoffice is to delete the module from db, delete the cache and force AdminModulesCatalog as controller in marketplace.
Any hint?

Hello @afxgroup,
Thanks for your feedback.
The class PrestaShop\Module\Mbo\Addons\ApiClient is instantiated through Symfony services, and maybe something is missing or is not well initialized before the call.
https://github.com/PrestaShopCorp/ps_mbo/blob/11daf498405de04f3b9ff145bb0fb673f1c86e40/config/services/addons.yml#L7
Some questions :

PHP Version ?
Have you tried to clear the cache after installing the module ?

There's some issue on cache clear, and it may cause trouble after module installation/upgrade.

In the meantime, we try to reproduce it.

Yes, i've cleared the cache several times of course
PHP version 7.4.33 on nginx
This is my addons.yml:
  _defaults:
    public: true

  # Addons API Client
  mbo.addons.client.api:
    class: PrestaShop\Module\Mbo\Addons\ApiClient
    arguments:
      -<EMAIL_ADDRESS>    calls:
      - method: setDefaultParams
        arguments:
          - "@=service('translator').getLocale()"
          - "@=service('prestashop.adapter.data_provider.country').getIsoCodebyId()"
          - "@=service('prestashop.adapter.legacy.configuration').get('_PS_BASE_URL_')"
          - "@=service('prestashop.core.foundation.version').getSemVersion()"```

It seems upgraded from version 2.33 (if I remember correctly) to 3.1.1

@afxgroup
We tried to reproduce it, but with no success :(
https://github.com/PrestaShopCorp/ps_mbo/assets/1721887/3641e57d-7729-41a0-95dc-7c468dd7c02b
Can you try to dump somewhere the values of the needed arguments ?

As we don't have any news, I close the issue.
Feel free to reopen it if needed, or open another if you find something else.
Thanks !

Hello @afxgroup
Very long time ago, you opened this bug, and we unfortunately did not find a solution.
But today, we found the root cause.
Your user in back-office (table ps_employee) may have a value in id_lang that was not present in the table ps_lang.
So the default param @=service('translator').getLocale() was null.
Some other features in the BO should not have worked as expected in this case (maybe silent errors, less visible).

Thanks for reply
i've checked the languages and the problem was in a language no more in DB
However i get this error now on Marketplace:
Oh no.. something went wrong There has been a problem on our side. Refresh your page and if the problem persists, try again later.
While: Modules in the spotlight] Has no problem

@afxgroup
You can try to reset the module, maybe, the language problem causes another problem on the installation process.

That did the trick.
Thank you

Glad we could finally help you!
Thank you for your patience 🙏


feat: reduce the minimal dai amount for the topup

🐝 PR preview in Swarm
Preview URL: https://bah5acgzasa4337vot7pdllafhybbjyjhslvzm7mbwxwzlkusaa3dgn6v3coq.bzz.link
Swarm Hash: 9039bdfeae9fde35ac053e0214e12792eb967d81b5ed95aa9200363337d5d89d
Commit Hash: ad85cc0902930c9b78d453384e29efcd1b7e77f7
Commit Message: feat: reduce the minimal dai amount for the topup


Select field label and value

Summary
Say I'm using a SelectField for creating a form and I want to be able to have a different label from the value of the option, right now I can't do that with the default component.
Basic example
The api I would propose would look like this
{
    name: 'gridCols',
    label: 'Grid columns',
    component: 'select',
    options: [
       {value:  'grid-cols-3', label: '3' }
    ]
},

We could probably also keep the old API if you just pass in an array of Strings
Motivation
I think the use case described above explains it well enough. I also think it would keep it inline with the other elements within forms, most of them have a way to modify the way something is displayed for the end-user.

Absolutely! The type for option should be :
type Option = string | {
  value: string
  label: string
}