Implement Kotlin generator support

Resolves #1
Description
Where I work, we've been using Arkana on our iOS projects and we're big fans of the project, so would like to adopt it for our Android projects too, which is why we thought it would be helpful to kick off the process of adding Kotlin support.
This PR adds a KotlinCodeGenerator and modifies the execution entry point to determine which generator to run based on the specified --lang argument flag.
The following changes have also been made:
Arkana Arguments

Added a --lang flag used to specify the generator to use for e.g. kotlin. Defaults to swift.

Arkana YAML config

Added a kotlin_package_name option which is used by the Kotlin generator to determine the package name of the generated module. Defaults to com.arkanakeys.
Added a kotlin_sources_path option which is used by the Kotlin generator to determine the path for generated Kotlin classes. Defaults to src/main/kotlin.
Added a should_generate_gradle_build_file option which is useful if your result_path is a path of an existing module and you would like to avoid generating a new build.gradle file.

Generated module structure

Generated sources
{namespace}Environment.kt
Contains interface declaration for the environment-specific keys.

{namespace}.kt
Contains the Keys object:

Thank you @rogerluan! Looking forward to the feedback from everyone 😊

Note
Partial review for now!
I left some minor comments so far, as I haven't reviewed the core logic of the PR. Some things I noticed (also piggy backing on some of the comments that were already left above by other reviewers):

We should be updating the README as well to reflect all the changes (e.g. remove the "coming soon" section, adding proper usage documentation for the new kotlin features, perhaps add some more instructions on how to adequate your project for kotlin generation, etc).

Kotlin unit tests are super valuable as they guarantee the actual encoding/decoding is working as expected, and that it doesn't regress in the future :) could you add those?

Do the generated kotlin files pass a standard kotlin linter out-of-the-box? One with a "widely adopted" style guide 😇

Last but not least, could you also implement an e2e test to be run in CI via Rakefile, like we're doing with Swift? These references will be helpful:

https://github.com/rogerluan/arkana/blob/main/.github/workflows/swift-tests.yml
https://github.com/rogerluan/arkana/blob/2bf88668fc970e313437e99a66c815055dabeecc/Rakefile#L15L22

Looking forward to continue reviewing this PR when I have some extra time! It's looking promising! 🙌

Thanks @JARMourato, @marceltex & @rogerluan for taking the time to go through the PR 🙏🏼 , will work on addressing all the raised issues and push all the necessary changes, including making sure all the generated code passes Kotlin's official codeing conventions

Hi @rogerluan, sorry for the delay, I've been a bit busy the last two weeks, but I finally got around to making the requested changes which address the following points:

The readme has been updated to include information about Android/Kotlin support.
Updated the Kotlin code generator to generate Kotlin unit tests when should_generate_gradle_build_file is set to true.
Updated the Rakefile to include a test_kotlin task. This required the addition of a couple of support files which I included inside spec/fixtures/kotlin to be able to run the Kotlin tests outside a normal Android project.
Updated the Kotlin code template to ensure the generated code is in line with the official JetBrains Kotlin code style.

I made some changes to the Kotlin erb templates to adjust the code style/formatting, more specifically the line breaks 😊 I think they look better this way. Here's a visual diff of the changes if you're curious:
Click here to expand

Yaay 🎉 thank you for taking the time to review and clean up the PR @rogerluan. Really glad I was able to contribute to this project! ❤


jetbrains IDEs minor version updates

Motivation for this change
Minor version updates of various JetBrains IDEs
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
Built on platform(s)

[ ] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Fits CONTRIBUTING.md.

Verified that idea-community works on NixOs

cc https://github.com/NixOS/nixpkgs/pull/30345 & @Mic92


[New game]: HOOKSHOT FISHING  👾

🎮 Game Request
Game logic and basic description

Go fishing with your trusty hookshots! There are several fish floating around, and you have a limited amount of time to catch as many as you can.

Point down the features
Game points
Select program in which you are contributing
GSSoC23
Code of Conduct

[X] I follow CONTRIBUTING GUIDELINE of this project.

Hey @0xabdulkhalid !
Thank you for raising an issue 💗
You can self assign the issue by commenting /assign in comment 😀
Make sure you follow CODE OF CONDUCT and CONTRIBUTING GUIDELINES 🚀
Don’t Forget to ⭐ our GameZone🎮
Make sure you join our Discord🕹

/assign

Hey @0xabdulkhalid ! Thank you so much for your raising the issue💗
It’s all yours, you can come anytime again and make some contributions! 🚀
Alone, we can do little, but together we can do so much! 😇


Installation with "go get" does not handle version

Summary

"go get" installation does not handle version and produces binary incompatible with gopassbridge (version mismatch).
Steps To Reproduce

go get github.com/gopasspw/gopass-jsonapi

The first problem is this error complaining about uninitialized gopass store.
If possible it shouldn't be necessary to have an initialized store to run "help", "version" or "configure".

Failed to initialize gopass API: store not initialized. run gopass init first

Second error only happens when using "go get" for to compile the binary:

$ ./gopass-jsonapi --version
Incorrect Usage. flag provided but not defined: -version

Expected behavior

Following command completes successfully and outputs the latest released version of gopass-jsonapi:
docker run --rm golang bash -c 'go get github.com/gopasspw/gopass-jsonapi && ./bin/gopass-jsonapi --version'

Environment

OS: checked with Docker on Mac, probably independent of OS
OS version: Linux ef82b619761e 4.19.121-linuxkit #1 SMP Tue Dec 1 17:50:32 UTC 2020 x86_64 GNU/Linux
gopass-jsonapi Version: gopass-jsonapi version 1.11.1
Installation method: compiled from source

Additional context

see discussion from https://github.com/gopasspw/gopassbridge/issues/171#issuecomment-789670449

gopass itself updates the file version.go on every release. This is then checked in to git and available when fetching with go get.

I've update the post-release helper in gopasspw/gopass to also write a version.go into the integrations. This should be automatically fixed with the next release.


Backported data is intermittently inconsistent due to updating in-place

Problem
When a backported dataset is updated, it overwrites the old object in S3. This invalidates all previous walden versions, which no longer point to data with a valid checksum.
Proposed solution
Overwrite the walden record, but not the S3 object. Instead, treat S3 as an append-only store and use the has in the S3 path.
Example
977. walden://backport/latest/dataset_5085_google_mobility_trends__2020_values...
Traceback (most recent call last):
  File "/Users/lars/Documents/owid/etl/.venv/bin/etl", line 5, in <module>
    main()
  File "/Users/lars/Documents/owid/etl/.venv/lib/python3.9/site-packages/click/core.py", line 1130, in __call__
    return self.main(*args, **kwargs)
  File "/Users/lars/Documents/owid/etl/.venv/lib/python3.9/site-packages/click/core.py", line 1055, in main
    rv = self.invoke(ctx)
  File "/Users/lars/Documents/owid/etl/.venv/lib/python3.9/site-packages/click/core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/Users/lars/Documents/owid/etl/.venv/lib/python3.9/site-packages/click/core.py", line 760, in invoke
    return __callback(*args, **kwargs)
  File "/Users/lars/Documents/owid/etl/etl/command.py", line 93, in main
    run_dag(
  File "/Users/lars/Documents/owid/etl/etl/command.py", line 159, in run_dag
    time_taken = timed_run(lambda: step.run())
  File "/Users/lars/Documents/owid/etl/etl/command.py", line 166, in timed_run
    f()
  File "/Users/lars/Documents/owid/etl/etl/command.py", line 159, in <lambda>
    time_taken = timed_run(lambda: step.run())
  File "/Users/lars/Documents/owid/etl/etl/steps/__init__.py", line 440, in run
    self._walden_dataset.ensure_downloaded(quiet=True)
  File "/Users/lars/Documents/owid/etl/vendor/walden/owid/walden/catalog.py", line 196, in ensure_downloaded
    files.download(url, filename, expected_md5=self.md5, quiet=quiet)
  File "/Users/lars/Documents/owid/etl/vendor/walden/owid/walden/files.py", line 90, in download
    raise ChecksumDoesNotMatch(f"for file downloaded from {url}")
owid.walden.files.ChecksumDoesNotMatch: for file downloaded from https://walden.nyc3.digitaloceanspaces.com/backport/latest/dataset_5085_google_mobility_trends__2020_values.feather

The file got updated at 2:01pm which was 30 minutes before we discovered the bug. Is it possible that we didn't have up to date walden catalog? Running etl dataset_5085 --backport on a fresh ETL builds it correctly.
As for the other error
requests.exceptions.HTTPError: 403 Client Error: Forbidden for url: https://walden.nyc3.digitaloceanspaces.com/backport/latest/dataset_1002_incidence_of_managerial_or_professional_jobs_and_collective_bargaining_by_gender__blau_and_kahn__2017_config.json

I was able to replicate it with etl dataset_1002 --backport. The problem is that deleted / archived datasets were not removed from walden index. There's a PR with a fix if you have some spare time. In the meantime I'll remove those problematic datasets from walden index.

Had another transient error like this now:
File "/Users/lars/Documents/owid/etl/vendor/walden/owid/walden/files.py", line 90, in download
    raise ChecksumDoesNotMatch(
owid.walden.files.ChecksumDoesNotMatch: for file downloaded from https://walden.nyc3.digitaloceanspaces.com/backport/latest/dataset_5205_covid_2019__hospital__and__icu_config.json:
        walden index checksum = 0311fc0c8bc869fec8993374a3389fd9
        downloaded checksum = 2fff8f6ce31279f069126fee41191568

10 mins later it seemed to clear itself after a git pull.
I wonder if we could avoid them by swapping /latest/ in the object store path with /<hash>/ when storing them to S3. That way it works both before and after a backport, and this transient issue should disappear.
@Marigold Thoughts?

Haven't seen this one yet, but you're right that this could happen, especially with covid updates.
Using hash in path is a neat idea, I'll check how hard would it be and whether there might be any side effects.

Got this again now, it's very often for me. I'm going to try patching it
(.venv) lars@juniper owid/etl (master) » etl --backport --private
Detecting which steps need rebuilding...
Running 787 steps:
1. walden-private://backport/latest/dataset_5220_covid_19__johns_hopkins_university_values...
Traceback (most recent call last):
  File "/Users/lars/Documents/owid/etl/.venv/bin/etl", line 5, in <module>
    main_cli()
  File "/Users/lars/Documents/owid/etl/.venv/lib/python3.9/site-packages/click/core.py", line 1130, in __call__
    return self.main(*args, **kwargs)
  File "/Users/lars/Documents/owid/etl/.venv/lib/python3.9/site-packages/click/core.py", line 1055, in main
    rv = self.invoke(ctx)
  File "/Users/lars/Documents/owid/etl/.venv/lib/python3.9/site-packages/click/core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/Users/lars/Documents/owid/etl/.venv/lib/python3.9/site-packages/click/core.py", line 760, in invoke
    return __callback(*args, **kwargs)
  File "/Users/lars/Documents/owid/etl/etl/command.py", line 77, in main_cli
    return main(
  File "/Users/lars/Documents/owid/etl/etl/command.py", line 116, in main
    run_dag(
  File "/Users/lars/Documents/owid/etl/etl/command.py", line 200, in run_dag
    time_taken = timed_run(lambda: step.run())
  File "/Users/lars/Documents/owid/etl/etl/command.py", line 207, in timed_run
    f()
  File "/Users/lars/Documents/owid/etl/etl/command.py", line 200, in <lambda>
    time_taken = timed_run(lambda: step.run())
  File "/Users/lars/Documents/owid/etl/etl/steps/__init__.py", line 437, in run
    self._walden_dataset.ensure_downloaded(quiet=True)
  File "/Users/lars/Documents/owid/etl/vendor/walden/owid/walden/catalog.py", line 201, in ensure_downloaded
    owid_cache.download(url, filename, expected_md5=self.md5, quiet=quiet)
  File "/Users/lars/Documents/owid/etl/vendor/walden/owid/walden/owid_cache.py", line 100, in download
    raise ChecksumDoesNotMatch(f"for file downloaded from {s3_url}")
owid.walden.files.ChecksumDoesNotMatch: for file downloaded from https://walden.nyc3.digitaloceanspaces.com/backport/latest/dataset_5220_covid_19__johns_hopkins_university_values.feather

Thanks @larsyencken, don't be afraid to cut deep if you need to. You'd have to be pulling latest walden changes before backporting and it's even possible it could fail if some updates were pushed to walden in the meantime.

Another transient error like this, this time on prod.
owid.walden.files.ChecksumDoesNotMatch: for file downloaded from https://walden.nyc3.digitaloceanspaces.com/backport/latest/dataset_4864_share_of_one_person_households__owid_based_on_un_and_other_sources_values.feather

Mojmir and I agreed to delay backport-related changes until we're clearer on architecture options, so that we know the work will be used.

Bumping it because it's still an issue with reliably building the ETL.

Another case breaking prod:
owid.walden.files.ChecksumDoesNotMatch: for file downloaded from https://walden.nyc3.digitaloceanspaces.com/backport/latest/dataset_5712_food_security__suite_of_food_security_indicators__fao__2022_05_17_config.json:
	walden index checksum = c65b2a99e22983a7b94768367239f6c7
	downloaded checksum = de14cfd4751dece384e393a0d1cadc8c

After looking into more of these cases, I can't work out why they are happening, but they are not temporary fast-track issues.
In situations like these, an existing walden cache has the file with the right checksum, but it cannot be downloaded anymore from the original source -- no fresh ETL clone on a fresh machine will build properly, not when backports are included.
Bumping the priority once more.

@larsyencken I've been able to replicate this for dataset 5669 which breaks ETL build. It looks like the file in S3 got updated 5 days ago, but walden index didn't get updated and is 10 days old. I'm still searching through logs what could have happened, I'd guess it wasn't able to push to walden for some reason (someone else pushing to walden at the same time?).
Using hashes as versions should fix the build.  I was updating broken UN SDG in production, I ran backport locally and forgot to push changes to walden... Using the hashes should prevent these kinds of bugs in the future (or at least raise a different more useful error).

Keeping this one open, it's something @Marigold aims to fix with Snapshots.

@larsyencken I already have a PR for that. If you are not busy and can take a look I'd really appreciate it! (Pablo has been pretty busy lately).

Fixed with Snapshots.


[BUG] Prompt.confirm default

Describe the bug
This isn't exactly a bug, but rather some unexpected behaviour with Confirm.ask().
In some situations I would like to confirm something with the user, but set the default response to Yes instead of No. I thought I'd just stick in a default=True argument to the function to see what happens, and it kind of works 😅 Hitting enter gives the default response. The problem is that the default is shown in brackets but the [y/N] suffix remains unchanged, instead of being [Y/n].
This isn't really a problem for me - I'll just not specify a default (I actually prefer requiring an explicit response, but I was converting from click.confirm() which always has a default). I just thought I'd flag the behaviour.
Feel free to close if it's a feature and not a bug 😄
To Reproduce
from rich.prompt import Confirm
if Confirm.ask("Do you like rich?", default=True):
  print("Is the correct answer!")
else:
  print("Boo")

$ python test.py
Do you like rich? [y/N] (True):
Is the correct answer!

Platform

Rich 3.4.0
iTerm2
Mac OSX

Ah. I copied this from click, and did wonder why it was capitalized that way, but it didn't occur to me the upper case letter was the default. Obvious now.
I don't find that terribly intuitive. Perhaps its because it's the first time I've seen that convention. How about leaving the choices lower case, but putting the default in text form in braces. Like this:
Do you like rich? [y/n] (y)

Works for me 👍🏻

Fixed in v4.0.0

Brilliant stuff - thank you!


Rename traits-related methods/vars to "traitSet"

Im sure I've missed something somewhere........

[consider][minor] 34c63e2 commit message has odd line-wrapping.

Good spot, thanks, for some reason it always line wraps in my editor so hadn't seen that one! 🦅 👀 . Fixed in the rebase.


fix issue #210

Fix for symfony versions older than 5.1

Maybe you should try reverting to the code as it was before the use of ParameterBag::(all) instead of just replacing all by get.
This might help : https://github.com/omines/datatables-bundle/commit/5ccdc1283ff1931c8259796447b8e69f48ea5302#diff-61b5fd05500a451a286bcb197689d2f2bf1e7baa895cf0d76da759041478a52b

Maybe you should try reverting to the code as it was before the use of ParameterBag::(all) instead of just replacing all by get.
This might help : https://github.com/omines/datatables-bundle/commit/5ccdc1283ff1931c8259796447b8e69f48ea5302#diff-61b5fd05500a451a286bcb197689d2f2bf1e7baa895cf0d76da759041478a52b


New lighthouse

Hi @dvelasquez,
can you please publlish package with updated deps? I  saw it is ready by bot commit. I have problem with viewer on new lightouse reports.
Many thanks.

Hi @michalmatuska after some time out I'll update all dependencies to their latest versions and fix any related problem.


Hardcoded php path

It would be nice if it was possible to set the path to php so one can run a different version than the system default.

Do you mean you want to choose a custom php path  like this :

If you want something like that you can do it from phpstorm / intellij Settings .
From : File menu > Settings > Languages & Frameworks > PHP
Press the button next  to the drop down and the above dialog will appear .

Yes, or just a field in which I can paste the path to php. The problem I run into is that the run command does not work because it is hardcoded to the system default php (which is too old).

I would like that to be configurable to /path/to/php artisan serve --host=localhost --port=8000 than the plugin will also work for me.

I should get the command from the PhpStorm settings but instead I sent php command without getting it from the settings . I will fix it soon . Thanks for reporting

Solved on commit https://github.com/3mmarg97/LaravelStorm/commit/a763cb0d2ff0a716b018d866f862bba35b145e18 (Not released yet)


Add CLI jar to release assets on tag

Create new GitHub action to build CLI RPM tool on release GitHub event and upload target target/rpm-adapter.jar to release assets similar to https://github.com/artipie/white-paper/blob/master/.github/workflows/build-latex.yml#L28

The job #123 assigned to @sammers21/z, here is why; the budget is 30 minutes, see §4; please, read §8 and §9; if the task is not clear, read this and this; @sammers21/z is not a member of this project yet, but they can request to join, as §1 explains; we should be aware that @sammers21/z is on vacation; this ticket may be delayed; there will be no monetary reward for this job

@rultor release, tag=0.7.2

Job was finished in 17 hours, bonus for fast delivery is possible (see §36)

@sereshqua/z please review this job completed by @sammers21/z, as in §30; the job will be fully closed and all payments will be made when the quality review is completed

@rultor release, tag=0.7.2

@g4s8 OK, I will release it now. Please check the progress here

@rultor release, tag=0.7.2

@g4s8 Done! FYI, the full log is here (took me 8min)

@0crat quality good


Working on docs

Making the class path 2015 compliant
fix the config path (the same error was in the jeffrey's package)

Thank you!!


TN-1935-IRONMAN-TEST-ORG

https://jira.movember.com/browse/TN-1935

Looks good- NB this will need to branch from master instead if we need to update any prod/demo sites before the next release though

@ivan-c  thanks for flagging. They specifically said that they don't need this on prod. Wouldn't be surprised if they do eventually, but next usual release would be soon enough.


use apiLevel instead of forceApi when building the apk

The change in PR https://github.com/iBotPeaches/Apktool/pull/3100 made it so forceApi was not set anymore. However, the code to build an APK with a specific API level was not updated, causing issues where a newer API level is required.
This PR completely removes forceApi and uses the existing apiLevel config value.

thanks for the find. Looks like an embarrassing thing I missed in that review.


Update content of /api/*

It works, that the /api routes are ignored, however the content inside there is not updated and I need to delete the folder manually.
Same applies for the _app.tsx file

It's a known problem with static sites that require the CLI to build first all the translations... This is because when you execute the yarn dev:
"dev": "next-translate && next dev",

The next-translate build is independent of next dev. So then touching the pages_ content the hotreloading is not executing again the next-translate command.
In order to work in the future with static sites + hotreloading in dev we want to replace the next-translate cli command, to a next.config.js plugin, ex: withStaticSiteTranslations(config) translating the pages in every hotreloading process.

@aralroca yea, that sound's great.
Now that you are talking about it. I was confusing me a little, that you focus so much on static sites in the docs. My site is not really static at all, but the library still works fine without having a server

I think that we can easily fix this by just exporting everything from the original file instead of copy the content. I'm going to change the milestone of this to 0.15.0 in order to prioritize this 🙂

Hi! That works nicely for me, this copy all data in api folder, all files even in subfolder :
cli/builder.js
function buildPageInAllLocales(pagePath, namespaces) {
 const prefix = pagePath
   .split('/')
   .map(() => '..')
   .join('/')
 const rootPrefix = prefix.replace('/..', '')

 // _app.js , _document.js, _error.js, /api/*
 if (isNextInternal(pagePath)) {
   if (pagePath.includes('/api/')) {
     fs.mkdirSync(`${finalPagesDir}/api`, { recursive: true })
     copyFolderRecursiveSync(pagePath, path.dirname(pagePath.replace(currentPagesDir, finalPagesDir)))
   }
   fs.copyFileSync(pagePath, pagePath.replace(currentPagesDir, finalPagesDir))
   return
 }

 function copyFolderRecursiveSync(source, targetFolder) {
   var target = path.join(targetFolder, path.basename(source));

   //check if folder needs to be created
   if (!fs.existsSync(targetFolder)) {
     fs.mkdirSync(targetFolder);
     //copy
     if (!fs.lstatSync(source).isDirectory()) {
       fs.copyFileSync(source, target)
     }
   }
 }

@bilLkarkariy your proposal is fixing another issue than this one! This issue is about hot reloading on file changes.
By the way! Thanks for your contribution. I'm going to add it to the code base.

@bilLkarkariy your code is introduced into the code base by #138, it's available on >0.15.1

@bilLkarkariy your proposal is fixing another issue than this one! This issue is about hot reloading on file changes.
By the way! Thanks for your contribution. I'm going to add it to the code base.

Oh ! Thank you very much !!!

This will be automatically fixed after https://github.com/vinissimus/next-translate/issues/303 (1.0.0)

Closing this. Already implemented on 1.0.0-canary.1. The 1.0 will be released approximately 1-2 weeks. 😊

@bilLkarkariy your proposal is fixing another issue than this one! This issue is about hot reloading on file changes.
By the way! Thanks for your contribution. I'm going to add it to the code base.
Hi @aralroca  !
I know it's been a while and I did not contribute as much as all others contributors, but may I ask if you can add me for this one as a contributor?

Thanks!

@bilLkarkariy already added in canary branch: https://github.com/vinissimus/next-translate/tree/canary


Graceful Shutdown

Hey!
Thanks for the code, it was really helpful for us!
I was wondering how the JVBs can be shutdown gracefully.
I know there is a graceful_shutdown.sh script which does this, but I was wondering how it will work with GCP.
Any ideas?

That shutdown script should indeed work! We're using it at the moment.
I'm currently transitioning to a K8s solution based on https://github.com/hpi-schul-cloud/jitsi-deployment. Maybe I'll release that soon. Let me know if you're interested.
The advantage of k8s is more flexible scaling: the resources that don't use too much resources like jicofo and prosody can share CPUs (between shards even) because shards can live on the same hosts.


Add push notifications

As a developer I want a way to receive push notifications from a mediator to go fetch queued messages. Relevant discussion for ACA-Py: https://github.com/hyperledger/aries-cloudagent-python/issues/950
Relevant Rocketchat discussion: https://chat.hyperledger.org/channel/aries-cloudagent-python?msg=PiCe7t2SSqnFCBcMk
The mechanisms discussed could allow for an open source way (Firebase) of doing push notifications from a mediator.

Work in Progress:
https://github.com/hyperledger/aries-framework-javascript-ext/tree/main/packages/push-notifications


Update main.py

Hello @Mr-Sunglasses! Thanks for opening this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file main.py:

Line 36:1: E265 block comment should start with '# '

Hello @Mr-Sunglasses! Thanks for updating this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file main.py:

Line 36:1: E265 block comment should start with '# '

Hello @Mr-Sunglasses! Thanks for updating this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file main.py:

Line 36:1: E265 block comment should start with '# '

Hello @Mr-Sunglasses! Thanks for updating this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file main.py:

Line 36:1: E265 block comment should start with '# '

Hello @Mr-Sunglasses! Thanks for updating this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file main.py:

Line 36:1: E265 block comment should start with '# '

Hello @Mr-Sunglasses! Thanks for updating this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file main.py:

Line 36:1: E265 block comment should start with '# '

Hello @Mr-Sunglasses! Thanks for updating this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file main.py:

Line 36:1: E265 block comment should start with '# '

@pep8speaks suggest diff

Hello @Mr-Sunglasses! Thanks for updating this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file main.py:

Line 39:1: E265 block comment should start with '# '

@pep8speaks suggest diff


Would Read-Only scale out work with sharded databases using elastic pools?

Azure documentation issue guidance
Thanks for opening an issue in the Azure technical documentation repository.
We use GitHub issues as the primary channel for customer and community feedback about the Azure documentation.
Creating an issue
We prefer that you create documentation feedback issues using the Feedback link on the published article - the feedback control on the doc page creates an issue that contains all the article details so you can focus on the feedback part.
You can also create a feedback issue here in the repo. If you do this, please make sure your issue lists:

[ ] The relevant Azure service or technology.
[ ] A link to the published documentation article that you have feedback about.
[ ] Clear, specific feedback that the author can act on.

Pull requests and article contributions
If you know the change that is needed in an article, we encourage you to submit the changes directly using a pull request. If the change is large, or if you want to contribute an entire article, follow these guidelines:

[ ] Don't surprise us with a big pull request or a pull request with a new article! Submit an issue that describes the details of the proposed large change or new article.
[ ] Include the service or technology area.

We'll route the issue to the appropriate content team for review and discussion.
Tech support and product feedback
If you would like to contact Microsoft about other things, such as product feedback or tech support, please review these guidelines:

If you need technical support using Azure, the paid and free support options are described here: https://azure.microsoft.com/support/options/.

Each article in the Azure technical documentation contains a product feedback button - it's best to submit product feedback directly from a relevant article. Otherwise, you can submit product feedback for most Azure products in the following product feedback forum: https://feedback.azure.com/forums/34192--general-feedback.

@thomshib Thank you for your feedback! Could you link the URL of the documentation you were following? That way, we can pass your feedback to the appropriate content author.

@thomshib We will now proceed to close this thread. If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.


TypingError when iterating over homogeneous tuples

In [30]: @nb.jit(nopython=True)
def foo(data):
    return data[0] + data[1]
   ....:

In [31]: @nb.jit(nopython=True)
def bar(x, y):
    total = 0
    for row in zip(x, y):
        total += foo(row)
    return total
   ....:

In [32]: x = y = np.arange(3)

In [33]: foo((x[0], y[0]))    # Works fine
Out[33]: 0

In [34]: bar(x, y)    # Typing error
---------------------------------------------------------------------------
TypingError                               Traceback (most recent call last)
...
Failed at nopython (nopython frontend)
Invalid usage of getitem with parameters ((int64, int64), int64)
 * parameterized

Works to index into a homogeneous tuple of (int64, int64), but fails if iterating over a series of them. Numba version 0.21.0.

the error is due to row being typed to heterogenous tuple

Fixed by #1505. Closing.


Validate local git repo when ignoring files

Related to #4956

Proposed Changes

Check if the local Git repository is valid if we enable IGNORE_GITIGNORED_FILES because we rely on git check-ignore in that case.

Readiness Checklist
Author/Contributor

[x] I included all the needed documentation for this change.
[x] I provided the necessary tests.

Reviewing Maintainer

[x] Label as breaking if this is a large, fundamental change.
[x] Label as either: automation, bug, documentation, enhancement, infrastructure.

@zkoppert going ahead with this simple change. :)


I too added my name "Arica Chakraborty" to contributions.md

@uemarica, I'm quite elated about your pull request. I wanna evolve this project to addresses various problems faced by first-time contributors. I'd love to learn about your journey in open source community, the problems, pain points you had etc.
Could you explain how you felt when you went through the tutorial, made a pull request and learned that I merged it?
We’ve recently added Facebook share and tweet feature to our web app. Could you please go to https://roshanjossey.github.io/first-contributions/#social-share and share your first contribution to open source?
Also, check out projects with easy issues while you’re there.


[Feature Request] Known authorities supported in MSAL

Internal epic
Refer this

Feature superseeded by WithInstanceMetadata(false). Therefore won't fix https://github.com/AzureAD/microsoft-authentication-library-for-go/commit/dac2c13522a7c85a08d7f31e52477b5e357834de


Retryable exception for empty OpenAI embedding.

Description:
The OpenAI "embeddings" API intermittently falls into a failure state where an embedding is returned as [ Nan ], rather than the expected 1536 floats.  This patch checks for that state (specifically, for an embedding of length 1) and if it occurs, throws an ApiError, which will cause the chunk to be retried.
Issue:
I have been unable to find an official langchain issue for this problem, but it is discussed (by another user) at https://stackoverflow.com/questions/76469415/getting-embeddings-of-length-1-from-langchain-openaiembeddings
Maintainer: @dev2049
Testing:
Since this is an intermittent OpenAI issue, I have not provided a unit or integration test.  The provided code has, though, been run successfully over several million tokens.

thanks for opening this @wewebber-merlin! Do we know if root cause of this is on OpenAI side or LangChain side?

Hi @baskaryan !
The root cause here is definitely the OpenAI side: I assume for some reason their embeddings service fails and produces nonsense output, but they fail to check for it and instead return it to the user as if it succeeded.
That said, this failure is relatively frequent---we're processing large volumes (100s of 1000s) of largish documents (emails and attachments), and seeing the failure perhaps twice per thousand documents---and the current langchain API provides no reasonable way of dealing with this that is not more complicated than bypassing langchain and making the calls directly to OpenAI.
Nevertheless, I'm happy to kick this upstairs (i.e. pursue with OpenAI) if you prefer not to check for and handle this behavior in langchain.
I also note a lint failure due to lack of type annotations; I will correct if you do wish to proceed with this patch.


WGSL: Assign to swizzle expression not allowed

Currently the WGSL emitter will generate code that assigns to a swizzle expression, which does not seem to be allowed.
Affected tests:

tests/language-feature/swizzles/matrix-swizzle-write-swizzle.slang
tests/language-feature/swizzles/matrix-swizzle-write-array.slang

Example output:
WGPU error: Error while parsing WGSL: :9:5 error: cannot assign to value of type 'vec2<f32>'
    m_0[i32(0)].xy = vec2<f32>(1.0f, 4.0f);
    ^^^^^^^^^^^^^^

 - While validating [ShaderModuleDescriptor]
 - While calling [Device].CreateShaderModule([ShaderModuleDescriptor]).

For reference: Swizzle L-values are not allowed in WGSL: https://github.com/gpuweb/gpuweb/issues/4833


Update extension button does not give feedback to user

Open extensions viewlet - some extensions need update
Click the update button - there is no indication that an update is taking place
I can click on the update button infinite number of times. I would expect the update button gets disabled after first click

I can click on the update button infinite number of times. I would expect the update button gets disabled after first click


SQL Transport: ipv6 address do not work. (regression)

Contact Details
No response
Version
8.x
On which operating system(s) are you experiencing the issue?
Windows, Linux
Using which broker(s) did you encounter the issue?
No response
What are the steps required to reproduce the issue?
Use a SQL transport and setting the host to a ipv6 address, like ::1

What is the expected behavior?
It should work.
What actually happened?
MassTransit.ConfigurationException: 'Host cannot be empty'
Broke for us when updating from MassTransit 8.2.2 to 8.2.5.
Looks like it was introduced with https://github.com/MassTransit/MassTransit/commit/6c571c8bcfacf69852a29eed32102b261db0e253
Various TrimHost/ParseHost-methods that do string.Split(":") won't work with ipv6 addresses as they contain colons.
Related log output, including any exceptions
No response
Link to repository that demonstrates/reproduces the issue
No response

Well, the SQL transport wasn't even in 8.0.5, so I'm not sure how that's relevant.

I'm trying to remember why the colon was parsed since SQL uses a , for the port, and \ for the instance name. There was something that uses the : and I can't remember what it is now.

Sorry, complete messed up on the versions, I've corrected them.

Can you provide the full configuration example? For instance, IPv6 addresses are required to be in [] when specified.

Config
    "SqlTransportOptions": {
      "Host": "::1",
      "Database": "MassTransit_Sample",
      "Schema": "mt",
      "Role": "transport",
      "Username": "user",
      "Password": "...",
      "AdminUsername": "user",
      "AdminPassword": "..."
    }

Setup
services.Configure<SqlTransportOptions>(options => Configuration.GetSection("SqlTransportOptions").Bind(options));
services.AddSqlServerMigrationHostedService(create: true, delete: false);

services.AddMassTransit(
	x =>
	{
		x.SetKebabCaseEndpointNameFormatter();
		x.UsingSqlServer((context, cfg) =>
		{
			cfg.AutoStart = true;
			cfg.UseSqlMessageScheduler();
			cfg.ConfigureEndpoints(context);
		});

		AddConsumers(x);
	}
);

Brackets does not seem to change things.


switch to https for sanger urls

We are switching to https/domain name instead of http/ip. Not yet sure if http+different port will come back for Sanger, but if needed I will create a new pull request.
Thanks,

Thanks for the update, merging.


Added docstrings

As per #10 , I added docstrings to most of the functions and classes. I have some knowledge of the DIscord API, but may have gotten something wrong, so do let me know if anything looks fishy.

Ok, I see some style checks have failed. I'll look into this soon-ish.

Requested a few changes before I merge the pr.

Mark them as resolved when you fixed things :)

I made some fixes to the docstrings. Let me know how I did this time :)

Looks pretty good! Most of the issues are you using https://discord.com/developers/docs instead of https://discord.dev

Any progress on this?

I think I will merge it and fix issues later.


Add feature for showing error locations

Codecov Report

Merging #48 (a9f4204) into master (454047b) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #48   +/-   ##
=======================================
  Coverage   81.97%   81.97%
=======================================
  Files           5        5
  Lines         172      172
=======================================
  Hits          141      141
  Misses         31       31

Impacted Files
Coverage Δ

vipers/src/assert.rs
100.00% <ø> (ø)

Continue to review full report at Codecov.

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


feat(client): ts-migration for the Mobile Layout component

Checklist:

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the main branch of freeCodeCamp.
[x] I have tested these changes either locally on my machine, or GitPod.

Related to the issue  #43778

Hey @Ismailtlem, thank you for taking this on!


fix(radio): clear aria attributes from host node

If the aria-* attributes are set on the host node via static bindings, we can end up with both the host and the input having the same aria-label which might be read out by a screen reader. These changes clear the attributes from the host.
Fixes #16913.

We probably do on some other components as well, but I wanted to see what @jelbourn's take is on this.


okio-extras

What's done:

Added saveourtool/okio-extras to settings.gradle.kts

See also:
https://github.com/saveourtool/save-cli/commit/67267e58aff886359a9461b2da21a0b998e4bb80

@0x6675636b796f75676974687562

https://scans.gradle.com/s/seosg3ubpcuyw/failure#1

The cause of the problem is that both save-cli 0.3.7 and the newly-released save-cli 0.3.8 depend on the snapshot version of sarif-utils (0.2.0-SNAPSHOT), and the latest snapshot version now depends on okio-extras.
So, from the standpoint of :save-agent, the versions haven't changed but the dependencies have.

@sanyavertolet save-cli 0.3.8 released, so you can change lib.versions and retry

The build seems to pass (at least, locally).
Yet, I suggest we switch to the released sarif-utils version in save-cli: saveourtool/save-cli#507.


Move all the microbenchmark code into one directory.

Motivation:
Allmost all our benchmarks are in src/main/java but a few are in src/test/java. We should make it consistent.
Modifications:
Move everything to src/main/java
Result:
Consistent code base.

Noticed this while running the ssl benchmarks. Also I think we should do the same in 4.0 which means means move all to src/main/java WDYT ?

They were moved from test to main a while ago [1] and moving them all to the same location sgtm.
[1] https://github.com/netty/netty/commit/f3fb77f4bce9d11d7b54878e91728674f6ee5342

Cherry-picked into 4.1 (a80d341) . Will do another PR for 4.0


relation "langchain_pg_collection" does not exist

After creating the vector store,
vectorstore = PGVector(
    embeddings=embeddings,
    collection_name=collection_name,
    connection=connection,
    use_jsonb=True
)

I try to run:
vectorstore.add_documents(docs, ids=[doc.metadata['id'] for doc in docs])
I'm getting this error message: relation "langchain_pg_collection" does not exist
I'm using python3.10, psycopg3, and langchain-postgres v0.0.3

For anyone else facing this issue, I was able to figure it out by running these two commands after vectorstore.drop_tables():
vectorstore.create_tables_if_not_exists()
vectorstore.create_collection()


Replace rather than modify default arrays.

When constructing a mapInteractor with options, make sure the whole set is replaced.  We use jquery's extend method.  When using this on something like $.extend([1, 2, 3], [4, 5]), you end up with [4, 5, 3], but for this purpose we want to end up with just the new array.
Also, give default names and an owner to the mapInteractor map actions so that they can be more easily referenced.

LGTM other than the side note.

We don't. It is a convenience for other applications that may want to modify the default actions. They can ask for actions based on name and owner to be certain that it is the default action and not one that was created somewhere else.

should we document it somewhere?


refac: MediatR out of IIntegrationEventProcessor

Description
Remove MediatR usage from the event processors.

Codecov Report
Attention: 232 lines in your changes are missing coverage. Please review.

Comparison is base (21978a1) 83.07% compared to head (76491d8) 80.15%.
Report is 339 commits behind head on main.

Files
Patch %
Lines

...essages/RequestAggregatedMeasureMessageReceiver.cs
0.00%
32 Missing :warning:

...uration/Middleware/UnHandledExceptionMiddleware.cs
0.00%
29 Missing :warning:

.../Api/Authentication/DevMarketActorAuthenticator.cs
0.00%
27 Missing :warning:

source/Api/EventListeners/InboxEventListener.cs
0.00%
24 Missing :warning:

source/Api/OutgoingMessages/PeekRequestListener.cs
0.00%
21 Missing :warning:

...frastructure/ArchivedMessageEntityConfiguration.cs
0.00%
17 Missing :warning:

source/Api/Program.cs
80.30%
13 Missing :warning:

...pi/EventListeners/ProcessInitializationListener.cs
0.00%
11 Missing :warning:

.../Authentication/BearerTokenAuthenticationMethod.cs
56.52%
10 Missing :warning:

...rce/Api/OutgoingMessages/DequeueRequestListener.cs
0.00%
10 Missing :warning:

... and 13 more

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #697      +/-   ##
==========================================
- Coverage   83.07%   80.15%   -2.93%
==========================================
  Files         456      457       +1
  Lines       10418    10842     +424
==========================================
+ Hits         8655     8690      +35
- Misses       1438     1916     +478
+ Partials      325      236      -89

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Remove unused helpers and update docs

This PR:

Removes unused helpers
Refreshes README in root directory
Replaces helm/external-dns-app/Configuration.md with helm/external-dns-app/README.md generated by helm-docs

Towards https://github.com/giantswarm/roadmap/issues/411

Checklist

[ ] Added a CHANGELOG entry

more for v3


Fix "Feasts that follow" links

Since updating the Feast select field on the chant create page, the autoFillFeast function did not work correctly anymore. Clicking on one of the Feasts that follow links would not autopopulate the Django Autocomplete Light field as it did with the default dropdown select.
In django autocomplete with select2, items are loaded async. So if you want to programatically select, you need to add the value first. This is also explained in the select2 documentation
Now, the autocomplete widget acts as expected, matching the behaviour of OldCantus and NewCantus before updating the autocomplete widgets. Fixes #1050

I wondered this as well, and it seems that clicking on another feast doesn't add any duplicates to the list.


feat:Created custom button to view leave details in Substitute Booking doctype.

Feature description
Create custom button to view leave details in Substitute Booking doctype.
Solution description
Created  custom button labelled View and a dropdown Leave Application List.On clicking Leave Application List  leave details of the employee can be viewed.
Output

Is there any existing behavior change of other features due to this code change?
-No
Was this feature tested on the browsers?

Mozilla Firefox

@ZakkiyathLulu Resolve the conflicts