Created an alternate implementation of the DVIGFX8 class

I barely got the DVIGFX8 class working in my env.   I was getting a lot of red lines when I could get it to work at all.   I dove into the code and realized that it was just taking too many cycles to generate the tmds scan lines.   So I implemented a TMDS palette and wrote a new main loop that was faster than the dvi_scanbuf_main_16bpp loop.   Give it a look/try and see if it is worth including.   I also implemented an interlaced mode to get the full 480 scan lines generated...   It looks like monitors from the 80/90s on an LCD, but doesn't work on usb hmdi capture dongles.
Thanks,
Toby

Yea, I had my pcbs being made when I saw your show-n-tell, so interesting timing.   I went looking for your code once they arrived.   What I saw was that the amount of time that the DVIGFX8 class took to convert the 8 bit pallet entries to the RGB565 entries for the dvi_scanbuf_main_16bpp loop was sometimes just over the limit and red lines would display.    The DVIGFX16 class worked all the time for me, it was only the DVIGFX8 one that I would get red lines (and at times nothing).    So the flow is that the dvi_dma_irq_handler calls back the DVIGFX8 scanline_callback method which has to convert the scanline to RGB565 and queue it for the dvi_scanbuf_main_16bpp loop to then convert it to tmds.   That should all be happening on the second core, so I'm not sure why you are not seeing any issues.   I just tried your 8bit_single_buffer example again and it was a black screen until I changed the resolution down to 320x240 from 400x240.   Initially I was selecting the "Raspberry Pi Pico" but changed to the Generic RP2040 w/ Boot Stage 2: "W25Q080 QSPI/s".   I am using the USB serial console.

You might check to see if your wait_begin changes work with -Os or -O.   I could only get them to work with debug -Og.


Project form does not validate on submit

In the project form, validation seems to pass the URL validator but submission does not go through.

Removing the URL and tag fields allows the form to validate.

URL form with GitHub validator works; seems to be down to the tag selector.

Error was in templates/project_form.html. The code in lines 62-66,
<select>
    {% for tag in form.tag %}
        <option value="{{tag}}">{{tag}}</option>
    {% endfor %}
</select>

creates something that mimics the WTForms SelectField in the ProjectForm (projects/forms.py), but is not linked to it in any way.
Solution:
{{ form.tag.label }}
{{ form.tag }}

Form now validates on submit.
ISSUE RESOLVED & CLOSED


Wrong description of detokenize() parameter 'tokens'

def detokenize(self, tokens: list):
        """
        Returns a list of tokens for the text <- wrong description
        :param text: text to be tokenized <- wrong description
        :return: A string representing the text extracted from the tokens
        """
        return pp.llama_tokens_to_str(self._ctx, tokens)

Thanks @RostF1rst for pointing that out.
This function was introduced in a PR, so probably the developer was doing copy/paste from the tokenize function.
I will try to fix that in the next release.


How to register the SpringMVC project to spring cloud netflix server?

The frameworker of client is using spring mvc, how can i register the clinet to spring cloud netflix server?

I suggest reading the documentation and looking at this guide


ui: fix citations summ table query link bug

INSPIR-2447

@monaawi still a temporary fix, let's wait for the requirements for "interactivitiy" of author page and resetting the table query.


Option to disable anchor in title block

Hi! Thanks for this library. It's really super fast!
I've some issues when I send the html output to a wysiwyg editor caused by the anchor link added in each title.
Let's say there is a title:
# h1
The output is:

h1

It's a good idea to add an anchor, but that doesn't play well with some wysiwyg editor like prosemiror.
Currently, I manually remove this anchor, but it would be nice to have an option to disable this feature.

yes， i hope too

for this feature. I would like to use custom post processing for adding anchors


Add support for emulator devices

Hi @Viper2k4,
This PR should help with #42: perhaps as a coincidence, I just found out that I got an exception when an emulator is connected to adb, like this:
>adb.exe devices
List of devices attached
emulator-5586   host

I've fixed that, added a unit test for the case and also made sure the CreateFromAdbData method includes the invalid data if an exception is thrown.
Can you let me know whether this fixes the issue for you, or if the issue still reproduces, can you amend #42 and attach the updated error message + stack trace?
Thanks!
PS: I'm looking to do a new release on NuGet soon, after I've completed #43 .
@bartsaintgermain Can you review and approve?

[Current coverage][cc-pull] is 85.07%

Merging [#44][cc-pull] into [master][cc-base-branch] will increase coverage by 7.06%

3 files (not in diff) in ...pAdbClient/Receivers were modified. more

Partials -2
Hits +2

3 files (not in diff) in SharpAdbClient/Logs were modified. more

Misses +7
Partials -6
Hits +23

10 files (not in diff) in ...lient/DeviceCommands were modified. more

Misses -2
Partials -24
Hits +39

21 files (not in diff) in SharpAdbClient were modified. more

Misses +7
Partials -71
Hits +162

@@           master        #44   diff @@
========================================
  Files          52         52
  Lines        1596       1741   +145
  Methods         0          0
  Branches      228        237     +9
========================================
+ Hits         1245       1481   +236
- Misses        248        260    +12
+ Partials      103          0   -103

Powered by Codecov. Last updated by [60de289...b57ed1e][cc-compare]
[cc-base-branch]: https://codecov.io/gh/quamotion/madb/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/quamotion/madb/compare/60de289477c3d177d5e58e13e31755bb884054f2...b57ed1e08634cad9deaa12e0b5576007beff1ded
[cc-pull]: https://codecov.io/gh/quamotion/madb/pull/44?src=pr


not all figure titles are using class=figureTitle

Recommendation for Figures. This will keep the image and the title together

Figure 16.1-1: XDM Actor Diagram

I think this one is done and should be closed

@vassilpeytchev is this one done and should be closed?

is this solved with #81

Solved by #81


Missing terminate emitter for figure intended?

Hi there,
just ported over your wonderful figure element and played around a little bit with it. I recognized that there doesn't seem to be an unobserve call once the images have been lazy loaded, because in withMountWhenInView.js is no destroyed method defined and terminated is not being called. This leads to retriggering the mounted() function when scrolling the element(s) in view again without any effects. For a classic lazy loading functionality we might want to unobserve the element after the src has been exchanged or is this intended by design (e.g. to retrigger more advanced visual animations in both directions)? If it is intended I guess I could simply extend the figure class and call this.$emit('terminate') within the destroyed function to get the expected behavior so this question is just for clarity and maybe for a little improvement for you if this was not intended that way.

Hey @iuscare,
Thanks for the report!
It seems like this could indeed be an improvement of our Figure component as it is never terminated, triggering the mounted method each time it appears but without any effect as the image is already loaded.
This behaviour is not intended, as this component only aims to lazy-load images. We have the ScrollAnimation and ScrollReveal components for advanced animation based on the scroll state.
I will add this to our to-do list for the next release.


Probe for canvas fingerprinting

When a user visits a page, the fingerprinting script first draws text with the font and size of its choice and adds background colors (1). Next, the script calls Canvas API’s ToDataURL method to get the canvas pixel data in dataURL format (2), which is basically a Base64 encoded representation of the binary pixel data. Finally, the script takes the hash of the text-encoded pixel data (3), which serves as the fingerprint ...
-- https://securehomes.esat.kuleuven.be/~gacar/persistent/index.html#canvas-results

Around the web

https://en.wikipedia.org/wiki/Canvas_fingerprinting
https://browserleaks.com/canvas

pixel-perfect-fingerprinting-canvas-in-html5.pdf from https://hovav.net/ucsd/dist/canvas.pdf

When a user visits a page, the fingerprinting script first draws text with the font and size of its choice and adds background colors (1). Next, the script calls Canvas API’s ToDataURL method to get the canvas pixel data in dataURL format (2), which is basically a Base64 encoded representation of the binary pixel data. Finally, the script takes the hash of the text-encoded pixel data (3), which serves as the fingerprint ...
-- https://securehomes.esat.kuleuven.be/~gacar/persistent/index.html#canvas-results

https://github.com/Modernizr/Modernizr/tree/master/feature-detects/canvas


Fix private properties appearing in custom class doc Property Descriptions

This fixes one of the issues mentioned in #67704, namely private properties appearing in Property Descriptions.
I just copy-pasted this from the part of the code that updates the Properties list, which does work, but it might be a better idea to filter properties in the same way methods are filtered in _update_method_descriptions.
Bugsquad edit:

Fixes #72705

Thanks!


Metering in subscription API [GET, DELETE]

Subscription API (get and delete) is giving a null pointer error as it is unable to get the id required to build the message for the data broker.

GET API: parse the response for resource-id
DELETE API: Use postgres tables to get the resource id for the subscription id.

closed with #394


KAFKA-10727; Handle Kerberos error during re-login as transient failu…

…re in clients (#9605)
We use a background thread for Kerberos to perform re-login before tickets expire. The thread performs logout() followed by login(), relying on the Java library to clear and then populate credentials in Subject. This leaves a timing window where clients fail to authenticate because credentials are not available. We cannot introduce any form of locking since authentication is performed on the network thread. So this commit treats NO_CRED as a transient failure rather than a fatal authentication exception in clients.
Reviewers: Ron Dagostino<EMAIL_ADDRESS>Manikumar Reddy<EMAIL_ADDRESS>Committer Checklist (excluded from commit message)

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation (including upgrade notes)

I built the branch locally and ran GssapiAuthenticationTest successfully

What version of the client was this fix released/backported to?


node 16 first tests

Proposed changes
Describe the big picture of your changes here to communicate to the
maintainers why we should accept this pull request.
If it fixes a bug or resolves a feature request, be sure to link to
that issue.
Types of changes
What types of changes does your code introduce to the project: Put
an x in the boxes that apply

[ ] Bugfix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Documentation (improve documentation)
[ ] Continuous Integration (functionality that improve automation or testing)
[ ] Breaking change (fix or feature that would cause existing
functionality to not work as expected)

Checklist
Put an x in the boxes that apply. You can also fill these out after
creating the PR. If you're unsure about any of them, don't hesitate to
ask. We're here to help! This is simply a reminder of what we are going
to look for before merging your code.

[ ] I have read the CONTRIBUTING doc
[ ] I have signed the Contributor License Agreement
[ ] I have updated the RELEASE NOTES
[ ] I have added tests that prove my fix is effective or that my
feature works
[ ] I have added necessary documentation (if appropriate)
[ ] Any dependent changes have been merged and published in
downstream modules

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

@Valecant as by #93 description

Node.js 12 actions are deprecated. For more information see: https://github.blog/changelog/2022-09-22-github-actions-all-actions-will-begin-running-on-node16-instead-of-node12/. Please update the following actions to use Node.js 16: actions/checkout, docker/metadata-action, docker/setup-qemu-action, docker/setup-buildx-action, docker/build-push-action, docker/build-push-action, docker/setup-buildx-action, actions/checkout

This means that the following actions need to be updated:

actions/checkout
docker/metadata-action
docker/setup-qemu-action
docker/setup-buildx-action
docker/build-push-action

Across the different workflows to use the latest version, which hopefully uses node 16. e.g. https://github.com/docker/setup-qemu-action/releases/tag/v2.0.0


VS Dev Prompt 2022 locations still point to 2019 ones

The paths for where the Developer Command Prompt lives point to the 2019 location still instead of the 2022 location (in this section)

"%ProgramFiles(x86)%\Microsoft Visual Studio\2019\Community\Common7\Tools\VsDevCmd.bat"

And similar should instead be

"%ProgramFiles%\Microsoft Visual Studio\2022\Community\Common7\Tools\VsDevCmd.bat"

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

ID: 513f1e35-aba1-8b92-845e-1ed4ccad8e62
Version Independent ID: 45eb46ce-a9b1-f141-5a97-c448b9349c48
Content: Command-line shells & prompt for developers - Visual Studio (Windows)
Content Source: docs/ide/reference/command-prompt-powershell.md
Product: visual-studio-windows
GitHub Login: @TerryGLee
Microsoft Alias: tglee

@michael-hawker Appreciate the feedback; we've fixed that. Thanks for helping to improve the Visual Studio documentation!


Part Integration Phase 1

Existing code functionality goes through an integration phase.

Closing due to not being a specific feature or user story.


user feed is gone

on production
tal's feed is gone

gun db got corrupted.
user().get('trust')  is missing items so unable to decrypt feed items


Undo shortcut

Thanks @Hummer12007, I didn't know we could bind to Ctrl!

:tada: This PR is included in version 1.7.5 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Failed to install apex

I have tried to install apex as the readme requested， but have failed. What should I do？

Thanks for reporting it. This error seems to be related to the connections set up by your git. If your git can not work correctly, you may want to try to replace the git clone operation by downloading the whole repo manually. Then follow the instructions in the official README:

Download repo "apex" from https://github.com/NVIDIA/apex and unzip it to folder "apex".
Run

cd apex
pip install -v --disable-pip-version-check --no-cache-dir --global-option="--cpp_ext" --global-option="--cuda_ext" ./

@fizzking feel free to let us know if it does not work.

@fizzking feel free to let us know if it does not work.

ok i will try it as soon as possible

I have tried to download apex into folder according to what you said, but still cannot install apex

You may try the python-only installation:
pip install -v --disable-pip-version-check --no-cache-dir ./

Thanks！ I successfully installed apex

Great. Just let us know if you still face any issue in train the model! I will later submit a PR to revise our README to mention python-only installation of apex.

Meanwhile, let me close this first. @fizzking feel free to reopen / create new issues.


Claude 3.5 Haiku Now Avalible

Issue
Claude 3.5 Haiku is now available through the Anthropic API, Amazon Bedrock, and GC Vertex AI.
Given Sonnet's current dominance of the aider leader-board, upgrading the weaker model (touted by Anthropic as having the coding ability of Claude 3 Opus) may extend or augment this dominance.
Request: "aider --sonnet" be upgraded to use both of the SOTA 3.5 models (Sonnet 3.5 (10/22), and Haiku 3.5) as opposed to (Sonnet 3.5 (10/22), and Haiku 3.0)
See landing page for Claude 3.5 Haiku here:
https://www.anthropic.com/claude/haiku
Apologies for posing as an Issue, but could not find another on this. - JM
Version and model info
No response

Very interested in seeing how this performs.  I was poking around aider/models.py to see how to add it, but since the normal path is via litellm, until they update their models list, it isn't just a quick change.  As of right now, Nov. 4/24 it isn't on the list yet: https://raw.githubusercontent.com/BerriAI/litellm/main/model_prices_and_context_window.json

This is on the new leaderboard and aider --haiku uses it in the latest release.
You can get it like this:
aider --upgrade

# or...

python -m pip install --upgrade --upgrade-strategy only-if-needed aider-chat

If you have a chance to try it, let me know if it works better for you.


Use Launchpad Whitelist Generic

We were using the generic whitelist from names before, then I implemented a version in Launchpad.
This PR is just to plug in the generic whitelist to the airdrop contract.

Codecov Report
Base: 76.91% // Head: 77.58% // Increases project coverage by +0.67% :tada:

Coverage data is based on head (65f7bfb) compared to base (eafeced).
Patch has no changes to coverable lines.

Additional details and impacted files
@@                                  Coverage Diff                                  @@
##           humanalgorithm/add-to-levana-collection-whitelist     #464      +/-   ##
=====================================================================================
+ Coverage                                              76.91%   77.58%   +0.67%
=====================================================================================
  Files                                                     51       51
  Lines                                                   2157     2155       -2
=====================================================================================
+ Hits                                                    1659     1672      +13
+ Misses                                                   498      483      -15

Impacted Files
Coverage Δ

contracts/sg-eth-airdrop/src/helpers/build_msg.rs
100.00% <ø> (+6.25%)
:arrow_up:

contracts/whitelist-generic/src/helpers.rs
59.09% <0.00%> (+59.09%)
:arrow_up:

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

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


Increase of exceptions thrown after upgrading to .NET 7 and Microsoft.Data.SqlClient 5.0.1

Describe the bug
We've seen a dramatic increase of exceptions thrown after upgrading to .NET 7 and EF Core 7. EF Core 7 uses Microsoft.Data.SqlClient (>= 5.0.1) but EF Core 6 used Microsoft.Data.SqlClient (>= 2.1.4). We had an explicit dependency on 4.1.0 though.
We started upgrading our services before Christmas and around the same time the amount of exceptions started to increase from a few a month to 10-50 on some days.
The only change we have done that we figure might have an impact is upgrading from .NET 6 to .NET 7 and Microsoft.Data.SqlClient from 4.1.0 to 5.0.1.
We first noticed this because DistributedLock.SqlServer started to drop locks. After some back and forth in that issue I realized that I had accidently suppressed all exceptions from when the lock was lost. When logging the exceptions they all came from Microsoft.Data.SqlClient. We also got some exceptions from EF Core so it doesn't seemt to be specific to DistributedLock.SqlServer. In that issue another user had the same issue but they use SQL Server on-prem while we use Azure SQL. So the only common nominator between all issues and exceptions seems to be Microsoft.Data.SqlClient.
This issue seems to be similar, but not identical, to #1527.

Exception from DistributedLock.SqlServer

Exception message: BeginExecuteNonQuery requires an open and available Connection. The connection's current state is closed.
Exception type:	System.InvalidOperationException
Failed method: Medallion.Threading.Internal.Data.DatabaseCommand+<ExecuteAsync>d__12`1.MoveNext

Call Stack:
System.InvalidOperationException:
   at Microsoft.Data.SqlClient.SqlCommand.ValidateCommand (Microsoft.Data.SqlClient, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=23ec7fc2d6eaa4a5)
   at Microsoft.Data.SqlClient.SqlCommand.InternalExecuteNonQuery (Microsoft.Data.SqlClient, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=23ec7fc2d6eaa4a5)
   at Microsoft.Data.SqlClient.SqlCommand.BeginExecuteNonQueryInternal (Microsoft.Data.SqlClient, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=23ec7fc2d6eaa4a5)
   at Microsoft.Data.SqlClient.SqlCommand.BeginExecuteNonQueryAsync (Microsoft.Data.SqlClient, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=23ec7fc2d6eaa4a5)
   at System.Threading.Tasks.TaskFactory`1.FromAsyncImpl (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Microsoft.Data.SqlClient.SqlCommand.InternalExecuteNonQueryAsync (Microsoft.Data.SqlClient, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=23ec7fc2d6eaa4a5)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Medallion.Threading.Internal.Data.DatabaseCommand+<ExecuteAsync>d__12`1.MoveNext (DistributedLock.Core, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=12bc08512096ade0: /_/DistributedLock.Core/Internal/Data/DatabaseCommand.cs:151)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Medallion.Threading.SqlServer.SqlApplicationLock+<ExecuteReleaseCommandAsync>d__16.MoveNext (DistributedLock.SqlServer, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=12bc08512096ade0: /_/DistributedLock.SqlServer/SqlApplicationLock.cs:73)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Medallion.Threading.Internal.Data.MultiplexedConnectionLock+<ReleaseAsync>d__12`1.MoveNext (DistributedLock.Core, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=12bc08512096ade0: /_/DistributedLock.Core/Internal/Data/MultiplexedConnectionLock.cs:175)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Medallion.Threading.Internal.Data.MultiplexedConnectionLock+<ReleaseAsync>d__12`1.MoveNext (DistributedLock.Core, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=12bc08512096ade0: /_/DistributedLock.Core/Internal/Data/MultiplexedConnectionLock.cs:175)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Redacted.Hosting.Worker.Lock.NonConcurrent.NonConcurrentLock+<ExecuteAsync>d__9.MoveNext (Redacted.Hosting.Worker, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null: /_/Hosting/Redacted.Hosting.Worker/Lock/NonConcurrent/NonConcurrentLock.cs:125)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Redacted.Hosting.Worker.CronJob+<ExecuteContinuously>d__15.MoveNext (Redacted.Hosting.Worker, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null: /_/Hosting/Redacted.Hosting.Worker/CronJob.cs:346)

Exception from DistributedLock.SqlServer

Exception message: A transport-level error has occurred when receiving results from the server. (provider: Session Provider, error: 19 - Physical connection is not usable)
Exception type:	Microsoft.Data.SqlClient.SqlException
Failed method: Medallion.Threading.Internal.Data.DatabaseCommand+<InternalExecuteAndPropagateCancellationAsync>d__13`2.MoveNext

Call Stack:
Microsoft.Data.SqlClient.SqlException:
   at Microsoft.Data.SqlClient.SqlCommand.EndExecuteNonQueryAsync (Microsoft.Data.SqlClient, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=23ec7fc2d6eaa4a5)
   at System.Threading.Tasks.TaskFactory`1.FromAsyncCoreLogic (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Medallion.Threading.Internal.Data.DatabaseCommand+<InternalExecuteAndPropagateCancellationAsync>d__13`2.MoveNext (DistributedLock.Core, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=12bc08512096ade0: /_/DistributedLock.Core/Internal/Data/DatabaseCommand.cs:181)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Medallion.Threading.Internal.Data.DatabaseCommand+<ExecuteAsync>d__12`1.MoveNext (DistributedLock.Core, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=12bc08512096ade0: /_/DistributedLock.Core/Internal/Data/DatabaseCommand.cs:151)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Medallion.Threading.SqlServer.SqlApplicationLock+<ExecuteAcquireCommandAsync>d__15.MoveNext (DistributedLock.SqlServer, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=12bc08512096ade0: /_/DistributedLock.SqlServer/SqlApplicationLock.cs:66)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Medallion.Threading.SqlServer.SqlApplicationLock+<Medallion-Threading-Internal-Data-IDbSynchronizationStrategy<System-Object>-TryAcquireAsync>d__13.MoveNext (DistributedLock.SqlServer, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=12bc08512096ade0: /_/DistributedLock.SqlServer/SqlApplicationLock.cs:56)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Threading.Tasks.ValueTask`1.get_Result (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Medallion.Threading.Internal.Data.MultiplexedConnectionLock+<TryAcquireAsync>d__7`1.MoveNext (DistributedLock.Core, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=12bc08512096ade0: /_/DistributedLock.Core/Internal/Data/MultiplexedConnectionLock.cs:96)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Medallion.Threading.Internal.Data.MultiplexedConnectionLock+<TryAcquireAsync>d__7`1.MoveNext (DistributedLock.Core, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=12bc08512096ade0: /_/DistributedLock.Core/Internal/Data/MultiplexedConnectionLock.cs:96)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Medallion.Threading.Internal.Data.MultiplexedConnectionLockPool+<TryAcquireAsync>d__8`1.MoveNext (DistributedLock.Core, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=12bc08512096ade0: /_/DistributedLock.Core/Internal/Data/MultiplexedConnectionLockPool.cs:103)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Medallion.Threading.Internal.Data.MultiplexedConnectionLockPool+<TryAcquireAsync>d__8`1.MoveNext (DistributedLock.Core, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=12bc08512096ade0: /_/DistributedLock.Core/Internal/Data/MultiplexedConnectionLockPool.cs:103)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Medallion.Threading.Internal.DistributedLockHelpers+<Wrap>d__1`1.MoveNext (DistributedLock.Core, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=12bc08512096ade0: /_/DistributedLock.Core/Internal/DistributedLockHelpers.cs:43)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Threading.Tasks.ValueTask`1.get_Result (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Medallion.Threading.Internal.DistributedLockHelpers+<ThrowTimeoutIfNull>d__18`1.MoveNext (DistributedLock.Core, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=12bc08512096ade0: /_/DistributedLock.Core/Internal/DistributedLockHelpers.cs:142)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Threading.Tasks.ValueTask`1.get_Result (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Medallion.Threading.Internal.Helpers+<Convert>d__1`2.MoveNext (DistributedLock.Core, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=12bc08512096ade0: /_/DistributedLock.Core/Internal/Helpers.cs:24)
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e)
   at Redacted.Hosting.Worker.Lock.NonConcurrent.NonConcurrentLock+<GetHandleAsync>d__10.MoveNext (Redacted.Hosting.Worker, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null: /_/Hosting/Redacted.Hosting.Worker/Lock/NonConcurrent/NonConcurrentLock.cs:207)

I don't seem to be able to find a (relevant) exception from EF Core, unfortunately.
To reproduce
Not sure how to replicate since it only occurs on Azure and not during local development.
Expected behavior
Don't throw any more exceptions than previous versions.
Further technical details
Microsoft.Data.SqlClient version: 5.0.1, 5.1.0-preview
.NET target: .NET 7
SQL Server version: Azure SQL (in my case, see also this issue)
Operating system: Azure App Service, seems to be Windows 2016
Additional context
The chart is for 90 days back, counting from 2023-02-24.

traces
| where timestamp > ago(90d)
| where customDimensions["OriginalFormat"] in ("Lost lock for job {Job Name}.") // <-- Workaround since we didn't log exceptions properly
| where cloud_RoleName in ("Our worst", "Offenders")
| order by timestamp desc
| summarize count() by bin(timestamp, 7d)
| render timechart

have you tried 5.1.0 (unclear from your post) ?

No, only preview2. I plan to test 5.1.0 but from what I can tell 5.1.0 doesn't seem to address anything that could be related to this problem. Another one in the issue over at DistributedLock tested 5.1.0 with no luck.

@OskarKlintrot

Not sure how to replicate since it only occurs on Azure and not during local development.

Do you mean this is happening when you target Azure SQL DB? If yes, a minimal repro still would be a very helpful asset to address the source of the problem.

Do you mean this is happening when you target Azure SQL DB?

For me, yes. I never have workers (where we see the issue) running locally for long enough to know if I would have the same issue locally. @hoerup though have seen similar issues using an on-prem SQL Server (see this comment).

If yes, a minimal repro still would be a very helpful asset to address the source of the problem.

I will do my best to replicate the issue in a repo and environment that I can share. I will need a few days, at least, though.
Since my last comment last week I upgraded some services to use 5.1.0 but unfortunately that made no difference.

I just got a repo together that hopefully will reproduce the error. I tried to create a new env that looks as similar as possible to one where we seen this issue. I just moved big chunks of code that might be relavant from our code base to a new project and made it compile again. It looks horrible... I'll check back on the logs in a few days and see if it seems to work. Or rather not work :)
The repo is here if anyone is interested: https://github.com/OskarKlintrot/Rebug

Any luck with the repo @OskarKlintrot ?

Any luck with the repo @OskarKlintrot ?
Unfortunately it's rock solid when I try to repo it. Not sure why, we do have some load on our databases in the test env but it's very little. I wonder if I can create an artificial load on the db some how and see if that makes a difference. I've seem some of the issues in #1527 in our environments but I haven't seen them either.

Maybe this is the cancellation token issue. Try 5.0.2
I'm using 5.1.0, do you mean 5.2.0-preview?

I mean 5.0.2 or 5.1.1

I mean 5.0.2 or 5.1.1

I'm not following, is there something in 5.0.2 and 5.1.1 that's not in 5.1.0?

Yes

I forgot to test 5.0.2/5.1.1 (just curious, how come 5.0.2 contains something that is not in 5.1.0?) but now that my repo have been running for a month (I messed up so it was running for weeks without access to the database, I fixed that about a month ago) there's a few exceptions. It's 47 exceptions from 4 different days. So maybe not the most consistent repo but at least it's something...

just curious, how come 5.0.2 contains something that is not in 5.1.0

some older versions are still maintained and 5.0.2 was released after 5.1.0

@OskarKlintrot any luck with 5.1.1?

@madelson I don't think so but I'm seeing something else that's very weird. We had daily exceptions in April until 28:th. That's when I moved all our databases in our test env to a single elastic pool. After that we only had exceptions in May 1:st, 12:th and 15:th. Unfortunately, we hade a bunch the 15:th after I deployed 5.1.1. So now it seems to be much harder to replicate reliably in our test environments but it still doesn't seem to work properly.

This seems to be fixed now in later versions (unsure exactly which since it gets upgraded as a transitive dependency to EF Core). I just run my query from the top and don't get anywhere near the numbers in the original post. The small amount that is left seem realistic to be from "naturally occurrent events", such as shutting down of old services after deploying new versions, intermittent network and/or database issues etc.


[Genetics] Add types to downloadtable helper

Pull Request Template (PR Tittle)
Should match thease format: [Scoped application (Genetics || Platform || Package || AppConfig)]: Short description mentioning the affected page and/or section component
Description
Please include a summary of the change and which issue is fixed. List any dependencies that are required for this change.
Issue: #2871
Deploy preview: (link)
Type of change
Non breaking refactor
How Has This Been Tested?
Manual
Checklist:

[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[x] Any dependent changes have been merged and published in downstream modules

Thanks @riyavsinha. Could you please do the same as https://github.com/opentargets/ot-ui-apps/pull/139 and merge main and re-generate yarn.lock?


Mobile support

@tradziej User may touch text without any intension of editing it.
If we open input/text-box on first click then it may be frustrating to user.
I think showing edit icon on first touch and than showing input/text-box on edit icon touch will be good.
@tothpeter What do you think ?

@anilmaurya
Tough question, we use this addon in an app at my company, the app works on mobile as well, and it behaves pretty much the same, user taps on the text and then they can edit it, or not if the editing is disabled (usually there's an edit page, where the user tap it on purpose, and there's a show page where all the inplace addons are disabled). I believe we should keep things simple as possible and follow industrial standards here.
I asked around what my mobile developer friends are using and we agreed that the most common scenario reads as follow:

There's a main switch checkbox (usually at the top of the page), and the user can use it to enable or disable editing globally on the page. Our addon is already capable of it, you can achieve it simple by using the disabled option.

So I think we should leave the behavior as it is now, considering the single tap, and displaying an edit button, it is configurable and flexible enough. (maximum adding an option to prevent the activate event to fire when the user clicks on the text, so only the edit button will trigger it)
@tradziej Your commit says "Do not show edit icon/button on mobile" but it only ads an extra event listener.  I bet you experienced that the addon does not clickable out of the box on mobile, at least in safari I'm sure. Does it solve this problem?

@tothpeter Yes, that was a reason.
I know we could use CSS workaround: https://github.com/tradziej/ember-inplace-edit/commit/8a1d8499376128d007e1abaa667fdcea2a6819cf
but then it's not focusing on iOS devices.
Probably it stopped working after this change: https://github.com/anilmaurya/ember-inplace-edit/commit/d7680868b749370dc018a55cfe7adba08a5a1987
Could you look at it?

@tradziej Safari is a bit stingy on mobile devices when it comes to focus()ing textboxes. You should invoke focus() from inside the the click event handler synchronously to make it happen, but we have to wait the rendering hereö to finish, so it won't work pragmatically. But I've just tested out: if you add autofocus="true" to the input and textarea, it will work like charm on mobile as well. Thanks for drawing our attention to it. I will add it to the plugin as soon as we could agree on this pull request.
@anilmaurya I've just realized the addon works on 2 steps on mobile as you described above, and this pull request would shorten it into 1 step. Well, I think we could follow this direction, here are my reasons:

In all of our apps in my company, we rule the addon's disabled property globally on the page level, so on the edit pages where the user expects to edit the content, everything is editable the fastest and easiest way: single click on it and boom, just like when you are editing your LinkedIn profile. On the contrary on the show pages the addon is disabled, so it only displays the text.
There are a few guidelines they suggest: if the users have to click more then 3 times to reach what they want, that could make them inpatient. So we should keep this path as short as possible.

What do you think?

@tothpeter Ok, Lets move in direction of single click edit.

@tradziej Thanks for your contribution :heart:


PictureSprites don't seem to render on PIXI v4.0.1

I'm trying to use your PictureSprite plugin in order to learn the plugin structure for PIXI version 4.
I have a scene with several sprites that all work perfectly when they are PIXI.Sprite objects.  If I change them to PIXI.PictureSprite objects, then nothing is rendered.
There are no error messages in the console, the sprites simply aren't rendering.  I can only assume that something is wrong in the PictureRenderer code.  Perhaps in the _renderNormal function.
Any help would be greatly appreciated as PIXI 4 is very unfamiliar to me.

Well, I have found the reason why.  The vertices never get calculated.  Removing the this.transform.updated solves the issue.
PIXI.PictureSprite.prototype._renderWebGL = function (renderer)
{
    this.calculateVertices();
    //use different plugin for rendering
    renderer.setObjectRenderer(renderer.plugins.picture);
    renderer.plugins.picture.render(this);
};

Oh right :) Yes, That was fixed in pixi-picture but not here.


Example on how to use paging

Hello folks,
Just started coding for some new side project using this library to get some data from Spotify. Basic usage is well documented and fairly easily, thanks for that!
B I could not find an example using pagination. Taking a rough look at the code and the documentation I could not really see how pagination would work (except taking the URL contained in “next” and handling the whole thing on your own which does not feel right to me).
Searching the web I also didn’t find an example but found people asking the same question on stackoverflow (answering it themselves afterwards by saying use “getItems()” which, to my understanding, only gives you the results of the current page) - so I think an example or some explanation in the README would be great.
Thanks. ;)
Cheers
Florian

I saw the remark on asking questions on SO - but I think explaining this in the documentation would be helpful for the project itself, not only for me asking this ;)

This wrapper currently only mirrors what the Spotify web api provides. Adding methods that allow navigating to different pages would be a nice pull request :)

Hm, I kind of expected this to be the answer but still hoped for another one ;)
But yes, this would be very useful - I guess in most cases of information retrieval one would like to have an easy option to get the full answer.
I will implement something for my project and if I am happy with it I might consider creating a PR and contributing it back. Although, there are quite some ways to implement this so some discussion in advance might be good. Let me think about a proper way of adding this. ;)

Kind of late, but I did create a hacky solution for retrieving a full paging response some time ago: https://github.com/Selbi182/SpotifyDiscoveryBot/blob/master/src/main/java/spotify/bot/api/SpotifyCall.java
Then you just pass the builder into the method, like so:
List<TrackSimplified> tracksOfAlbum = SpotifyCall.executePaging(spotifyApi.getAlbumsTracks(id));

One of the traps I fell into was not realizing early on that there are actually two types of paging used, one called PagingCursorbased and one simply Paging. In my case, the former cost me some headache, so I only implemented it for string-based cursors for now. As such, this might not be pull-request worthy yet, but it could probably be patched up with some effort (hah).

What about making those requests returning pagination objects implement something like
fun next(nextUrl: String): GetCurrentUsersSavedAlbumsRequest

So there is an easy way to iterate over results while leveraging serialization?

Sorry to get back to this just yet... I actually implemented the pagination handling as iterator triggering new requests only when necessary. A simple, not yet fully finished approach: https://github.com/FlorianLoch/audiobooks-on-spotify-crawler/blob/master/src/main/java/ch/fdlo/hoerbuchspion/crawler/util/PaginationIterator.java
I consider the iterating approach to be superior to the list based one as it possibly avoids requests not being necessary (say you just want to fetch 200 entries not all of them). The approach linked also makes use of the builder for creating additional requests. I have to admit, I was not aware that there are two types of pagination...
As I see there is some interest in this I might do a PR based on my linked code.

Additionally I wrote some decorators implementing the IHttpManager interface taking care of stuff like the rate limit (which becomes a thing iterating pages as mentioned by @Selbi182). As this is a separate, although linked, concern it should not be handled by the iterator itself. Same actually holds true for handling errors and triggering retries etc.

What about the PR you mentioned? :)

Let's go with Kotlin for an example here:
fun <T> getAllPagingItems(requestBuilder: AbstractDataPagingRequest.Builder<T, *>): List<T> {
    val list = arrayListOf<T>()

    do {
        val paging = requestBuilder.build().execute()
        list.addAll(paging.items)
        requestBuilder
                .offset(paging.offset + paging.limit)
    } while (paging.next != null)

    return list
}

Closing this issue as an example is now provided. I'd still welcome PRs as mentioned above though!

Here are my Java wrappers :
 private <T> List<T> fetchAllPagingItems(final AbstractDataPagingRequest.Builder<T, ?> builder) {
    try {
        final List<T> items = Lists.newArrayList();

        Paging<T> paging;
        do {
            paging = builder.build().execute();

            final T[] pagingItems = paging.getItems();

            items.addAll(Arrays.asList(pagingItems));

            builder.offset(paging.getOffset() + paging.getLimit());
        } while (paging.getNext() != null);

        return items;
    } catch (final Exception e) {
        throw new RuntimeException(e);
    }
}

private List<Artist> fetchAllFollowedArtists(final GetUsersFollowedArtistsRequest.Builder builder) {
    try {
        final List<Artist> items = Lists.newArrayList();

        PagingCursorbased<Artist> paging;
        do {
            paging = builder.build().execute();

            final Artist[] artists = paging.getItems();

            items.addAll(Arrays.asList(artists));

            final String lastArtistId = artists[artists.length - 1].getId();

            builder.after(lastArtistId);
        } while (paging.getNext() != null);

        return items;
    } catch (final Exception e) {
        throw new RuntimeException(e);
    }
}

Wondering if GetPlaylistsItemsRequest should extend AbstractDataRequest<PagingCursorbased<PlaylistTrack>> instead of AbstractDataRequest<Paging<PlaylistTrack>>?
I was trying to implement a way to retrieve more than 100 elements from my playlist and did not find how so far.
Anyone succeeded?

@dadoonet Maybe this will help, it's how I implemented getting all tracks of a playlist.
https://github.com/Selbi182/SpotifyDependencies/blob/master/src/main/java/spotify/services/PlaylistService.java#L63
https://github.com/Selbi182/SpotifyDependencies/blob/master/src/main/java/spotify/api/SpotifyCall.java#L96

Thanks a ton @Selbi182 !


update grpc to fix a potencial memory leak issue

Signed-off-by: qupeng<EMAIL_ADDRESS>What have you changed?
Update grpc to fix a potencial memory leak issue.
What is the type of the changes?
Engineering.
How is the PR tested?
Unit tests.
Does this PR affect documentation (docs) or should it be mentioned in the release notes?
No.
Does this PR affect tidb-ansible?
No.
Refer to a related PR or issue link (optional)
Benchmark result if necessary (optional)
Any examples? (optional)

/bench

/merge

/run-all-tests


Bump component versions

Update:

learning locker to v5.1.0
xapi-service v2.9.9

I think the previous version bump to 4.11 is not pushed to docker hub due to missing tags in the repo.

Thank you for your feedback @combor! I've added missing release tags (Docker images will be published within the hour).
Don't get offended, but I'll close this PR since we are using a script to automate the publication of every release (see bin/release). :pray:

Closing this in favor to #46

Thanks!


[FEAT]: Implement Optional Two-Factor Authentication (2FA)

Description
Develop an optional Two-Factor Authentication (2FA) system for our application to enhance account security. This feature will allow users to enable 2FA using Time-based One-Time Passwords (TOTP) generated by authenticator apps like Google Authenticator or Authy. The system should integrate seamlessly with our existing authentication flow and provide a smooth user experience for enabling, using, and disabling 2FA.
Acceptance Criteria
API Endpoints Implementation

Enable 2FA: POST /api/auth/2fa/enable
Verify 2FA: POST /api/auth/2fa/verify
Disable 2FA: POST /api/auth/2fa/disable
Generate Backup Codes: POST /api/auth/2fa/backup-codes

All endpoints should accept HTTP POST requests and be accessible only to authenticated users.
Enable 2FA Endpoint
Request Body
{
    "password": "current_password"
}

Success Response (200 OK)
{
    "status_code": 200,
    "message": "2FA setup initiated",
    "data": {
        "secret_key": "JBSWY3DPEHPK3PXP",
        "qr_code_url": "https://api.qrserver.com/v1/create-qr-code/?size=150x150&data=otpauth://totp/App:user@example.com?secret=JBSWY3DPEHPK3PXP&issuer=YourApp"
    }
}

Verify 2FA Endpoint
Request Body
{
    "totp_code": "123456"
}

Success Response (200 OK)
{
    "status_code": 200,
    "message": "2FA verified and enabled",
    "data": {
        "backup_codes": ["12345678", "23456789", "34567890", "45678901", "56789012"]
    }
}

Disable 2FA Endpoint
Request Body
{
    "password": "current_password",
    "totp_code": "123456"
}

Success Response (200 OK)
{
    "status_code": 200,
    "message": "2FA has been disabled"
}

Generate Backup Codes Endpoint
Request Body
{
    "password": "current_password",
    "totp_code": "123456"
}

Success Response (200 OK)
{
    "status_code": 200,
    "message": "New backup codes generated",
    "data": {
        "backup_codes": ["98765432", "87654321", "76543210", "65432109", "54321098"]
    }
}

Failure Response (for all endpoints)
{
    "status_code": 400,
    "error": "Invalid request",
    "message": "Specific error message"
}

Purpose
Implement an optional Two-Factor Authentication system to enhance account security for users who choose to enable it, providing an additional layer of protection against unauthorized access.
Requirements

Use a secure TOTP algorithm compatible with common authenticator apps.
Generate and store a unique secret key for each user enabling 2FA.
Provide a QR code for easy secret key input into authenticator apps.
Generate one-time backup codes for account recovery.
Update the login flow to require 2FA code input for users with 2FA enabled.
Implement rate limiting on 2FA verification attempts to prevent brute force attacks.
Ensure all 2FA-related data is encrypted at rest and in transit.
Add 2FA status to the user model in the database.
Implement proper error handling and user feedback for all 2FA operations.
Provide clear instructions for users throughout the 2FA setup process.

Expected Outcome
Users can optionally enable 2FA for their accounts, significantly enhancing their account security. The system seamlessly integrates with the existing authentication flow and provides a user-friendly experience for managing 2FA.
Status Codes and Error Responses
200 OK
[Success responses are already defined for each endpoint above]
400 Bad Request
{
    "status_code": 400,
    "error": "Invalid request",
    "message": "Specific error message"
}

Possible specific error messages:

"Invalid TOTP code"
"Invalid password"
"Missing required fields"
"2FA is already enabled for this account"
"2FA is not enabled for this account"

401 Unauthorized
{
    "status_code": 401,
    "error": "Unauthorized",
    "message": "Authentication required"
}

403 Forbidden
{
    "status_code": 403,
    "error": "Forbidden",
    "message": "You do not have permission to perform this action"
}

429 Too Many Requests
{
    "status_code": 429,
    "error": "Too many requests",
    "message": "You have exceeded the rate limit. Please try again in X seconds",
    "data": {
        "retry_after": 300
    }
}

500 Internal Server Error
{
    "status_code": 500,
    "error": "Internal server error",
    "message": "An unexpected error occurred. Please try again later"
}

Additional Error Handling Requirements

Ensure all error responses follow the above format for consistency.
Log detailed error information server-side for debugging, but never expose sensitive details in the response.
For the 429 error, include a "retry_after" value in the response to inform the client when they can retry the request.
Implement proper error handling in the client application to provide user-friendly messages based on these error responses.

Testing

Verify the 2FA setup process, including QR code generation and secret key storage.
Test the TOTP verification process with valid and invalid codes.
Ensure backup codes work correctly for account recovery.
Verify that disabling 2FA removes all associated data.
Test rate limiting on failed 2FA attempts.
Verify that 2FA is correctly enforced during login for users who have enabled it.
Test 2FA functionality across different devices and authenticator apps.
Perform security testing to ensure 2FA cannot be bypassed.
Verify proper error handling and user feedback for all 2FA operations.
Conduct load testing to ensure 2FA doesn't significantly impact system performance.

This issue is currently implemented by interns
@chukssomzzy - fastapi
@rb-isiaq - express


hot reloading is not working for v3 alpha.1

I have cloned the repo on master (3.0.0-alpha.1) and install dependencies with node v6. Everything executes fine but when I modify any React component the hot reloading does not work (need to refresh the page manually to get the changes reflected). I have tried with 3.0.0-alpha.0 and hot reloading works fine.
You can see from the attached screenshot that __webpack_hmr requests are being cancelled (Chrome v51 on a Mac), I guess that is probably the issue but still cannot figure out what is the difference between alpha0 and alpha1 that is causing that.
Any ideas ? Thanks in advance.

👍 for me as well :(

Weird. I just did a fresh npm install and can't reproduce. Does it work in any other browser?

Edit: I did a fresh install on latest master, let me try the exact tag. Could you try the inverse (see if latest master works)?

Sorry I guess I wasn't clear, it didn't work for me on the latest master. I guess I should try the alpha.1 tag, will do that later on.

On 28 Jul 2016, at 20:21, David Zukowski<EMAIL_ADDRESS>wrote:
Edit: I did a fresh install on latest master, let me try the exact tag. Could you try the inverse (see if latest master works)?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

@alanrubin don't worry about trying the tag, I doubt it will change, and anyways it should work on latest master. If you could try another browser (or an incognito chrome window) that would help.

It didn't work with Chrome in Incognito mode neither with Firefox.
But I found the solution, in config/index.js, I have replaced the server_host settings by 'localhost' instead of 'localip' and that did the job. Is that something we should have by default ? I guess the problem was that my hmr was using my local IP but the webpage was being accessed with localhost (although I tried to access the webpage using the local IP and with server_host as 'localip' but that didn't work as well)

It should still work with localhost even with localipconfigured. Do you have anything abnormal in your hosts file? The push for localip instead of localhost as the hostname was so users could access their dev server from other devices, and it seemed to be working fairly well.

Nothing really abnormal, pretty much what is showed here. @bowenisdum do you see anything different with your hosts file ? I have checked and my firewall is off as well - I'm running Yosemite on a Mac Pro Mid 2015. If that works for most of the people using this project I guess it is probably something local to my machine. Maybe it is worth adding a line to the FAQ ? I can do a PR for that

I am having the same issue, but replacing server_host with 'localhost' did the trick for me... Apparently, the problem was with hamachi supplying a different local address

@alanrubin a FAQ entry would probably be wise, though I think it would also be helpful to also put it in the instructions for getting started where people are more likely to see it.

I can confirm the @alanrubin 's experience. I'm using Windows 10 as an environment and switching localip to 'localhost' fixed the issue. I also tried leaving it on the localip and accessing the website via IP, but that didn't manage to make things better.

For me this was resolved with uninstalling BitDefender which was blocking eventsource messages for whatever reason.  Turning off BitDefender wasn't enough, I had to completely uninstall it.  Using the eventsource-polyfill is another possible solution.

When the app tries to load the hot-reload bundle, it tries to use the ip.address() like <IP_ADDRESS>, while the app is running on http://localhost:3000. Hence, the browser gives me an Access-Control-Origin error. I was able to resolve this by using 'localhost', instead of ip.address().


A pure jade wrapper for marko instead of gulp plugin?

Hi! I've recently gotten in to Marko and coming from Jade I can't let go of the syntax :)
But this seems to be a gulp plugin, yes? If so I was wondering would you be interested in a pure jade wrapper that provides a 1-to-1 functionality of Marko but for something like .jade-marko files? I whipped up a small such library for my own use: jade-marko. But as you can see it's very limited, it doesn't implement all of the functions, let alone the intricacies of jade and marko syntax collisions (which you seem to have solved beautifully btw).
What would your thoughts be for such a library?

I'm no longer a developer. Feel free to do your own thing using this lib for inspiration... I've become totally disillusioned by the state of web dev and the slow progress being made to improve it!!!


Change bindings for 'fold heading at cursor' and 'unfold all headings'

The two methods utilize very common key bindings:

'Fold heading at cursor', ctrl-p, is very commonly used for paste.
'Unfold all headings', ctrl-o, is very commonly used for opening new files.

Maybe moving these to two other ctrl-alt-[something] bindings would make more sense.

Thanks @mm-gmbd
Since most people will have different keybinding preferences, I removed the keybindings altogether. I have seen that many packages use this approach nowadays, and it makes sense. The bindings are now only a recommendation in the README file.


Proversity/cam2 97

Description
Adding support to play youtube videos inside the app,  avoiding  the current redirection to youtube app. These changes supports transcripts while maintaining default video behavior.
GIFs

Reviewer

[ ] @ryangadams
[ ] @jagonzalr

How to test this PR
Add the following in the core config settings :
YOUTUBE_VIDEO:
    ENABLED: True
    YOUTUBE_API_KEY: 'YOUR_API_KEY'

Open a youtube video available in the course

Does this require tests to be written?

@ryangadams  I have included some tests in the last commit

I approve.


consecutive quantization for the same model with different config  bug

the layer config will be incorrect, need to be cleared in the end of the quantization

need to reload the model


Incomplete visibility of Facilities in select Facilities modal

Expected behavior
All facilities available for selection should be fully visible within the modal without the need for excessive scrolling.
Steps to reproduce the issue
Login the app with valid user credentials.
Go to Groups tab.
For any group, open the select facilities modal.
Scroll through the list of facilities available for selection.
Notice that not all facilities are visible within the modal.
Environment details
App version : V1.7.0
App environment : UAT
Additional information
https://jam.dev/c/3c818cc2-edfc-4993-a3db-85e22c1b6834

Same as this ticket #274 , closing other task

This will be covered in the new UI of facility groups under #293 . Closing this ticket.


Add explicit warning about running on Windows

Add explicit note this project can not be run on Windows machine

Created PR: https://github.com/kineticadb/kinetica-udf-api-java/pull/2


Potential PATH issue in Polybar module?

I have a rather strange bug that only shows up when I'm running a custom script in polybar, and only when I run polybar as a service (as generated by home-manager). I describe the issue here in the Polybar issue tracker, but I have a feeling it might be more of a home-manager issue than a polybar issue? I can't tell.
My best guess is that this is a PATH thing--that polybar is trying to run some commands, but doesn't have those commands in its path.

The services running under systemd are typically having a very reduced PATH. In my case
$ systemctl --user show-environment | grep ^PATH=
PATH=/nix/store/920k63py2w97xpfyb5ps9l6wbidvzfjz-coreutils-8.29/bin:/nix/store/hlgglqv1vm88frmysq2laifavxjhaf55-findutils-4.6.0/bin:/nix/store/iywd02hbirf506q740z0v6zyrvsa9gcf-gnugrep-3.1/bin:/nix/store/wkgszaq2dkc4asapcbx6ypd7xdnzad9f-gnused-4.4/bin:/nix/store/3hmpbbcv1db42m9g34c9g4q6qinw50x4-systemd-237/bin:/nix/store/920k63py2w97xpfyb5ps9l6wbidvzfjz-coreutils-8.29/sbin:/nix/store/hlgglqv1vm88frmysq2laifavxjhaf55-findutils-4.6.0/sbin:/nix/store/iywd02hbirf506q740z0v6zyrvsa9gcf-gnugrep-3.1/sbin:/nix/store/wkgszaq2dkc4asapcbx6ypd7xdnzad9f-gnused-4.4/sbin:/nix/store/3hmpbbcv1db42m9g34c9g4q6qinw50x4-systemd-237/sbin

But it does include coreutils so, e.g.,
$ /nix/store/920k63py2w97xpfyb5ps9l6wbidvzfjz-coreutils-8.29/bin/env --version
env (GNU coreutils) 8.29
Copyright (C) 2017 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by Richard Mlynarik and David MacKenzie.

On the other hand, the polybar service seems to set the PATH variable and therefore probably overwrites the ambient setting.
You could try doing echo $PATH > /tmp/foo in your script to see what it says.

I think my script needed emacsclient, and head and one or two more. I rewrote the script (in BASH), removing the utilities, and expanding emacsclient to the full path (i.e. /run/current-system/sw/...), and now it works! Thanks for the help with this, @rycee.

Glad it worked out for you! 👍


[Operator] Add flip op, and support kwargs in pointwise_dynamic

Support kwargs in pointwise_dynamic.
Add flip op as a pointwise op.

As a principle, pointwise_dynamic can be used to generate pointwise operation for nd tensors with strided layout. But flip is not a pointwise operation in this sense.
So if we can find (on construct) a specific strided layout for the input and the output, we can turn flip into a view+copy, where the copy can be implemented with pointwise_dynamic.
Unfortunately torch tensors do not support negative strides(while numpy does support it), so there is no torch public api that can create a view for clipped input.
But for triton kernels generated by pointwise_dynamic with strides as inputs, negative strides are supported out-of-the-box. Torch tensors as parameters to triton kernels are merely a pointer. So if we can get the pointer to the first element of the flipped view.
This is actually not a big issue. For an nd tensor, for each flipped axis, we can shift the pointer to the last position at that axis. Then we get the pointer to the first element of the flipped view.
For example:
a is a 1d tensor
[1, 2, 3, 4]
pointer to flipped a's first element is a[3] or more precisely(a.data_ptr() + (a.size(0) - 1) * a.stride(0)).
a is a 2d tensor
[0 1 2 3
 4 5 6 7
 8 9 10 11]

pointer to `flipped(a, 0)`'s first element is
`a.data_ptr() + (a.size(0) - 1) + a.stride(0)`

pointer to `flipped(a, 1)`'s first element is
`a.data_ptr() + (a.size(1) - 1) + a.stride(1)`

As a general case
pointer to `flipped(a, axes)`'s first element is

`a.data_ptr() + sum(((a.size(i) - 1) + a.stride(i)) for i in axes)`

Strides for flipped view are the same strides from the input tensor, with strides for the flipped axes set to negative values.

As a principle, pointwise_dynamic can be used to generate pointwise operation for nd tensors with strided layout. But flip is not a pointwise operation in this sense.
So if we can find (on construct) a specific strided layout for the input and the output, we can turn flip into a view+copy, where the copy can be implemented with pointwise_dynamic.
Unfortunately torch tensors do not support negative strides(while numpy does support it), so there is no torch public api that can create a view for clipped input.
But for triton kernels generated by pointwise_dynamic with strides as inputs, negative strides are supported out-of-the-box. Torch tensors as parameters to triton kernels are merely a pointer. So if we can get the pointer to the first element of the flipped view.
This is actually not a big issue. For an nd tensor, for each flipped axis, we can shift the pointer to the last position at that axis. Then we get the pointer to the first element of the flipped view.
For example:
a is a 1d tensor [1, 2, 3, 4] pointer to flipped a's first element is a[3] or more precisely(a.data_ptr() + (a.size(0) - 1) * a.stride(0)).
a is a 2d tensor
[0 1 2 3
 4 5 6 7
 8 9 10 11]

pointer to flipped(a, 0)'s first element is a.data_ptr() + (a.size(0) - 1) + a.stride(0)
pointer to flipped(a, 1)'s first element is a.data_ptr() + (a.size(1) - 1) + a.stride(1)
As a general case pointer to flipped(a, axes)'s first element is
a.data_ptr() + sum(((a.size(i) - 1) + a.stride(i)) for i in axes)
Strides for flipped view are the same strides from the input tensor, with strides for the flipped axes set to negative values.
Unfortunately, torch cannot generate a flipped view with negative strides. So we may need to generate code for negative strides properly. We may extend pointwise_dynamic to be more powerful to support this later.

We will reconstruct the pointwise codegen soon.


Add short 'what is bosh-lite section'

In trying to figure out what bosh-lite does or the problem it solves, I'm checking the README.md and the project description. Neither seem to explain what bosh-lite does other than A lite development env for BOSH, which is fairly nondescriptive. Could we have a section outlining what it does or the context it's used in?

Hi - bosh-lite is a pretty specific solution for BOSH development work, which I think the "A local development environment for BOSH using Warden containers in a Vagrant box." part from the readme attempts to describe. It does kind of assume you're at least familiar with the BOSH ecosystem.
Perhaps it'd be helpful if you could describe how you found this repo so we can better know your context and who else we should be describing it to.

I have recently started using BOSH and asked a coworker what bosh-lite is. He brought up the GitHub page assuming bosh-lite devs would be better at explaining it but there wasn't much explanation. Just a suggestion to help people exploring bosh-lite for the first time who may not be overly familiar with bosh.

@cppforlife, perhaps this repo's URL could point to https://bosh.io/docs/bosh-lite.html where bosh-lite is summarized a bit better.
Separately, I also notice bosh-lite doesn't link to http://bosh.io/docs/warden-cpi.html which may also be a useful link somewhere in the readme.

@dpb587-pivotal sounds reasonable. will update readme.

Updated README with a bit more info. Feel free to reopen if you think more information should be included.


DbeaverCommandLine behavior when using -data launch option

Use case
trying to open several SQL connections (one call to dbeaver-cli.exe per connection) into one and the same "portable" instance of dbeaver (whose data folder is specified in dbeaver-cli.ini)
Expected behavior
after each call to dbeaver-cli, a new connection pops up in dbeaver's "Connections" tab. This is what happens when -data flag is not set in dbeaver-cli.ini.
Actual behavior
after each call to dbeaver-cli, a new instance of dbeaver is launched, as if the previous instance is not detected.
Reproduction steps

In dbeaver-cli.ini , add

-data
<data folder>

In one terminal, input the following. It will launch dbeaver.

dbeaver-cli.exe

In another terminal, input the following. It should add the connection to the existing instance, but instead, it launches a new instance.

dbeaver-cli.exe -con "<connection string>"

PS : my example uses dbeaver-cli.exe but the behavior should be the same with dbeaver.exe

The issue might be here
https://github.com/dbeaver/dbeaver/blob/904787f313b25d016d9c1bfa8425fa6edf726f49/plugins/org.jkiss.dbeaver.core.application/src/org/jkiss/dbeaver/core/application/DBeaverApplication.java#L210
Why use defaultHomePath and not instanceLoc (or another variable that contains the instance current path - valued with the -data option if I am not mistaken) ?

is it still actual?

there is no update on issue for a long time. If it is still actual for you, feel free to reopen the ticket


New Versioning Scheme

Currently, our README.md defines the following versioning scheme:
The versions will follow the spec. So if the spec is released at 1.0.
Then all versions in the 1.x.y will follow the 1.x spec.

In https://github.com/package-url/packageurl-go/pull/57 we realized how impractical this is, hence I thought about releasing a v1.0.0 and creating a v1.1.0 release after merging the aforementioned PR.
Also, I thought about dropping this version scheme in general and instead we could go with version directories: v1/ or v2/, like some other APIs do.
WDYT? @pombredanne  @sschuberth

Oh never mind.. while writing this, I realized the README.md actually mentions v1.x.y already 🤔  not sure what I thought.
How far away are we from spec -> v1.0?


refactor: some minor issues sorted out around summary statistics

I have moved some of the methods initially shipped with summary statistics, but thinking about them more closely, they can be re-used in the other processes eg. when ingesting curated associations.
Now GWAS Catalog harmonized sumstats can be ingested as follows:
study_id = 'GCST90016941'
file = f'{sumstats_path}/33462485-GCST90016941-EFO_0007874.h.tsv.gz'
pvalue_threshold = 5e-6
distance_threshold = 2.5e5

df = spark.read.csv(file, sep='\t', header=True)

leads = (
    SummaryStatistics
    .from_gwas_harmonized_summary_stats(df, study_id)
    .pvalue_filter(pvalue_threshold)
    .window_based_clumping(distance_threshold)
)

print(type(leads))
leads.df.printSchema()
leads.df.show()

Codecov Report

Merging #106 (8ab0e88) into main (0b8b9b7) will not change coverage.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##             main     #106   +/-   ##
=======================================
  Coverage   82.15%   82.15%
=======================================
  Files          45       45
  Lines        1261     1261
=======================================
  Hits         1036     1036
  Misses        225      225

Impacted Files
Coverage Δ

src/otg/common/spark_helpers.py
100.00% <ø> (ø)

src/otg/common/utils.py
97.36% <100.00%> (+2.92%)
:arrow_up:

src/otg/dataset/summary_statistics.py
81.25% <100.00%> (-5.99%)
:arrow_down:


Fix aftman regex pattern and update some tags to resolve deprecation warnings.

Wouldn't it be possible to only merge .json files?

LGTM to merge now. @sasial-dev


changed example to align to existing tables

changed dependant table to one referenced in sourcing section

changed output table for transformer to "transformed_table1" - think this would be more understandable as a modified version of the original table

changed sink table to align to transformer output table names

noticed this inconsistency with table names, and thought this might tie in more with existing table names to show a trail of input tables, to transformed tables, and out to sink tables


Linking artifacts and processing jobs

This PR adds links the artifacts with those processing jobs that are using the artifact as input.
Since we removed the 'processing_status' attribute from the artifacts, you can know check if it being processed by doing:
is_processing = len(artifact.jobs(status='running')) > 0

Although it may seem complex, the main advantage is that artifact.jobs(status='running') actually returns the jobs, so you can ask in which step are they or which parameters are being used.

:+1:

:+1:


Automate anywhere config

This change will automatically generate yaml config files that the sample game will use to read settings and connect to GameLift Anywhere.
This setup expects the plugin settings file GameLiftSettings.yaml to have been generated.
Using the menu buttons "Apply [Windows/MacOS] Sample [Client/Server] Build Settings" will automatically generate the files and place them in the project root. This will allow you to connect to Anywhere using the plugin settings within Unity Editor.

I have also added AnywhereFleetSettingsBuildProcessor which will run after a build is complete annd will generate the config file in that build folder.
I also identified that while server settings keys were defined within the sample game project, client settings keys were defined within Runtime, so I have changed it so the sample game has the definitions and passes the values through to Runtime inside the existing configuration object
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Summary from discussion during our sync today:

We should update the SampleGame server code to pull settings directly from StateManager with the editor pre-processor so that a config file is not needed when running in the editor.
When clicking Launch Server from the Anywhere plugin UI, it should update to the server pre-processor (probably a one-liner to call the same method used by the dropdown).
We should investigate if it's possible to update the server vs client pre-processor property as part of switching between Dedicated Server and clients build targets in the Unity Build Manager.

When clicking Launch Server from the Anywhere plugin UI, it should update to the server pre-processor (probably a one-liner to call the same method used by the dropdown).

I have added functionality to the button to swap into server configuration and enter play mode

We should investigate if it's possible to update the server vs client pre-processor property as part of switching between Dedicated Server and clients build targets in the Unity Build Manager.

I have added BuildTargetChangedHandler.cs which will receive a callback when the build target is changed, and add/remove the UNITY_SERVER symbol as appropriate.

We should update the SampleGame server code to pull settings directly from StateManager with the editor pre-processor so that a config file is not needed when running in the editor.

So its a bit awkward with StateManager being in assembly AmazonGameLiftPlugin.Editor so we don't want to tie SampleGame assembly to an Editor assembly. I'll catch up with you later to decide on solutions to this.


[Request] PIR and Flame Module Sensor

PIR sensor
The PIR sensor itself has two slots in it, each slot is made of a special material that is sensitive to IR. The lens used here is not really doing much and so we see that the two slots can 'see' out past some distance (basically the sensitivity of the sensor). When the sensor is idle, both slots detect the same amount of IR, the ambient amount radiated from the room or walls or outdoors. When a warm body like a human or animal passes by, it first intercepts one half of the PIR sensor, which causes a positive differential change between the two halves. When the warm body leaves the sensing area, the reverse happens, whereby the sensor generates a negative differential change. These change pulses are what is detected.
(https://learn.adafruit.com/pir-passive-infrared-proximity-motion-sensor/how-pirs-work)
Flame module sensor
A flame sensor module that consists of a flame sensor (IR receiver), resistor, capacitor, potentiometer, and comparator LM393 in an integrated circuit. It can detect infrared light with a wavelength ranging from 700nm to 1000nm. The far-infrared flame probe converts the light detected in the form of infrared light into current changes. Sensitivity is adjusted through the onboard variable resistor with a detection angle of 60 degrees. Working voltage is between 3.3v and 5.2v DC, with a digital output to indicate the presence of a signal. Sensing is conditioned by an LM393 comparator.
(https://www.pcboard.ca/flame-sensor-module)
Benefits
Those hardwares would be a great addition for the security and fire detection system respectively for a smart home.
Context
Currently those cannot be used? Are there any alternatives that can replace those 2 if those 2 won't be implemented here?

Both modules, you ask for support, have digital output. There is no need to add special support for any of it.
Just configure it as a digital input of suitable GPIO module.

No new module required, as koleo9am showed.


MenuBar not visible in 1.0.0-beta5

When I switch tabs dynamically and switch to a Swing control in a SwingPanel, MenuBar doesn't show up, it needs to manually resize the window to show up.
How to solve this problem? What are the alternative methods?

How to solve this problem? What are the alternative methods?

Could you share some small reproducer to this issue?

I tried version 1.0.0 and still have problems.

You can reproduce the problem with the official Demo -widgets- Gallery.
You need to make 4 changes to the Demo.

Modify main.kt

MenuBar {
Menu("File", mnemonic = 'F') {
Item("New", onClick = {  })
Item("Open", onClick = {  })
Item("Import", onClick = {  })
}
}

Modify Chips.kt

ComboBox("",
0,
mutableListOf("1", "2"),
onItemSelected = {
print("lihj, ComboBox $it")
})

3.Add file ComboBox.kt  in Common lib

@Composable
expect fun ComboBox(
title: String?,
selectIndex: Int? = 0,
items: MutableList,
onItemSelected: (String) -> Unit
)

4.Add class ComboBox.kt in desktop platform

`@Composable
actual fun ComboBox(
title: String?,
selectIndex: Int?,
items: MutableList,
onItemSelected: (String) -> Unit
) {
Row(modifier = Modifier
.fillMaxWidth()
.wrapContentHeight()
.padding(0.dp, 8.dp, 0.dp, 0.dp),
verticalAlignment = Alignment.Top,
horizontalArrangement = Arrangement.Center) {
title?.let {
Text(text = title,
fontSize = 14.sp,
modifier = Modifier.padding(0.dp, 6.dp, 0.dp, 0.dp))
}
SwingPanel(
background = Color.White,
modifier = Modifier
.size(100.dp, 30.dp),
factory = {
JPanel().apply {
background = JColor.WHITE
//                    add(JComboBox(items.toTypedArray()).apply {
//                        selectedIndex = selectIndex ?: 0
//                        addItemListener {
//                            if (it.stateChange == ItemEvent.SELECTED) {
//                                onItemSelected.invoke(it.item as String)
//                            }
//                        }
//                    })
val value = SpinnerNumberModel(5,0,10,1)
layout = BoxLayout(this, BoxLayout.Y_AXIS)
.apply {

                        val spinner = JSpinner(value).apply {
                            setBounds(0,0,50,30)
                        }
                        add(spinner)
                    }
            }
        }
    )
}

}`

I tried with 1.0.0 on Mac (only added MenuBar itself as other changes doesn't seem related to it). What is your OS?

I tried with 1.0.0 on Mac (only added MenuBar itself as other changes doesn't seem related to it). What is your OS?

I use Windows 10 Professional.
I guess this has something to do with Swing showing the hide on the Compose UI.

I also got the same problem frequently. The menu is not visible until windows got resized. Calling window.invalidate() does not hepl too.

Please check the following ticket on YouTrack for follow-ups to this issue. GitHub issues will be closed in the coming weeks.


Reader View

Is your feature request related to a problem? Please describe.
Instead of opening the website I'd love to view the articles directly inside the app alternatively
Describe the solution you'd like
A new view would open (preferably not a Bottom sheet as there's already one) with the date, title, image, body, author and so on
Additional context
Not necessary imho

Plus "Read you" fixes your issue with the content being incomplete by parsing the linked website.

You can set the app to open links in-app in the settings.

I just can't find the settings xD. I do enjoy the apps design a lot!


Is browserify required to use TypeScript with Cypress-cucumber-preprocessor?

The current Readme suggests it is?
"As of Cypress v4.4.0, TypeScript is supported out-of-the-box. To use it, add this to your plugins/index.js:
const browserify = require('@cypress/browserify-preprocessor');
const cucumber = require('cypress-cucumber-preprocessor').default;"
https://github.com/TheBrainFamily/cypress-cucumber-preprocessor
I'd like to clarify, as I don't need it unless cypress-cucumber-preprocessor requires it.

Is browserify required to use TypeScript with Cypress-cucumber-preprocessor?

No, and here's an example of using without browserify (but rather webpack).

To others that stumble upon this for similar reason to mine: You can rid yourselves of many dependencies by excluding the dependency on @cypress/browserify from this package by using https://yarnpkg.com/package/noop-package
…that is, add this to your package.json
{
    "resolutions": {
        "cypress-cucumber-preprocessor/@cypress/browserify-preprocessor": <EMAIL_ADDRESS>    },
}


Emmet NOT working in .hbs files or files with language set to Handlebars

I've tried all the solutions I was able to goggle, but NONE make Emmet work in .hbs files or other files with language set to Handlebars.
What to do about it?

Add this to your User settings.json:
"emmet.triggerExpansionOnTab": true


Balloon Defense Game added

PR Description 📜
Please include summary related to the issue you have fixed and describe your PR in brief over here by specifying the issue number on which you were working below
Fixes #5156

Mark the task you have completed ✅

[x] I follow CONTRIBUTING GUIDELINE & CODE OF CONDUCT of this project.
[x] I have performed a self-review of my own code or work.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] My changes generates no new warnings.
[x] I have followed proper naming convention showed in CONTRIBUTING GUIDELINE
[x] I have added screenshot for website preview in assets/images
[x] I have added entries for my game in GameZone's README.md
[x] I have added README.md in my Game folder
[x] I have added working video of the game in README.md (optional)
[x] I have specified the respective issue number for which I have requested the new game.
[x] I have added my Game to gamesData.json file and it is loading properly on main website as intended.

Add your screenshots(Optional) 📸

Thank you soo much for contributing to our repository 💗

Thank you @AmruthaPariprolu ,for creating the PR and contributing to our GameZone 💗
Review team will review the PR and will reach out to you soon! 😇
Make sure that you have marked all the tasks that you are done with ✅.
Thank you for your patience! 😀

@ishita-43 pls review this pr

Thank you  @AmruthaPariprolu , for your valuable time and contribution in our GameZone 💗.
It’s our GameZone, so Let’s build this GameZone altogether !!🤝
Hoping to see you soon with another PR again 😇
Wishing you all the best for your journey into Open Source🚀


remove duplicate html id

Fixes... nothing but I'd feel better. :P

Something isn't working with darkmode in the PR @mktcode
See here

It's the css variables... simply didn't think about that. Sorry for that.
And the duplicate id doesn't do that much harm I guess... but it should be renamed then still.

It's the css variables... simply didn't think about that. Sorry for that.
And the duplicate id doesn't do that much harm I guess... but it should be renamed then still.

Yes agree, can you make another PR for that?


Update repositories.txt

add WZ, an Arduino library for Dart WZ-S and Prosense WZ-H3 formaldehyde sensors

@ArduinoBot this issue has been fixed

A problem was found with your submission https://github.com/leonlucc/WZ
❌ ERROR: The repository has no tags. You need to create a release or tag that matches the version value in the library's library.properties file.


WebWindowListener cannot access ModuleScoped or ScriptScoped instances

Since at least HtmlUnitDriver version 2.28.2, the browser will spawn its own threads for specific window operations. When implementing a WebWindowListener, this cannot access any ModuleScoped or ScriptScoped instances, as the calling thread is not known to jFunk's scope caches.

Fixed with release 3.3.0


Specify changes to linter defaults in the GHA itself

Instead of including .lintr in every repo in the organization and keeping them all in sync with each other.

Works, so .lintr in every repo in the organization should be deleted.

The lintr files are also used by vscode, that's why I primarily added them

What do you mean, they are "used by" VS Code? Does VS Code lint every time you make any change to the source code?
I'd prefer if we rely on GHA for this so that everyone is on the same page. Additionally, GHA uses the latest lintr from GitHub, so we are always up-to-date.

If you don't have a .lintr file, the defaults are used. But maybe I can also define defaults globally, not workspace specific.

Closing this since it is already implemented.
@strengejacke Okay, I won't delete the .lintr files, but make sure to check in on this action once in a while to see which defaults we are choosing and syncing the local file with those settings.
https://github.com/easystats/workflows/blob/db1b951367207b5b9bb45d29f97107466fde9c86/.github/workflows/lint.yaml#L31-L43


Fix(docs): InMemoryStore example error

When executing the code in the document about InMemoryStore, the following two errors occurred, so I fixed them.

SyntaxError: positional argument follows keyword argument

TypeError: BaseStore.get() missing 1 required positional argument: 'key'

@os1ma thanks for fixing!


Feature: Implement File object sync

We will add a feature that allows users to select a file in X provider and have that synced to Y provider.
Requirements

More than one provider configured in module
Must list providers available
Must have events that shows a) When sync starts b) Sync Progress c) When sync completes

https://github.com/fairDataSociety/fairdrive-opfs/tree/feat-file-object-sync


[Question] Error when nuxt/pwa module is used

Hi and thanks for partytown integration for nuxt!
When I tried to use this module with nuxt2 project (that also has @nuxt/pwa module), sometimes I see 404 error saying that /~partytown/partytown-sandbox-sw.html file couldn't be found. I guess this is because they are both registered at the same root scop, so only one of them is working.
I am a noob at service workers, so I was wandering, maybe you could help to find out how to have both of them? :)

Never mind, my issue was that I had workbox: { enebled: false } in nuxt.config. So a self-destroying service worker was registered and it also unregistered partytown service worker. Seems like changing setting to workbox: false fixed the issue

No problem at all - glad it was resolved!


group with nested platform don't work

Having this gemfile
group :postgresql do
  gem 'pg', :platforms => :ruby
  gem 'activerecord-jdbcpostgresql-adapter', :platforms => :jruby
end

Using jruby and running:
bundle install --without postgresql

It installs activerecord-jdbcpostgresql-adapter, even if it's inside the postgresql group.

related #835


fix(autocomplete): don't scroll panel when option is visible

When scrolling down to an option well below the fold and then scrolling back up a couple of options, it feels jarring to have the selected option "stick" to the bottom of the panel. This fix keeps the panel from scrolling when the selected option is fully visible.
cc @kara

Before

After

@jelbourn could I get this assigned? 😄

@kara I would really appreciate if you could review this! I think it makes keyboard scrolling feel more natural.

@kara changes made!


Design and implement post-rendering validation

TL;DR
As a template developer, I want to be able to add checks after template rendering to make sure the resulting code is correct. If these validations fail, I want the CLI to show an error message to the user telling them that the template spec file that they're is buggy, and ask them to file a bug to the template owner.
Ideas for use cases:

Assert that the resulting code can build and compile
Assert that a given string or regex does or doesn't appear. For example, "template_replace_me" shouldn't appear because it should be replaced in rendering.
Assert that unit tests pass
EDIT: maybe also go mod tidy

One possible design: the template spec.yaml file could declare a list of validations, like:
- validations:
  - validator: 'go_lint'
  - validator: 'go_compile_and_test'
  - validator: 'strings_must_not_appear'
    strings:
      - 'template_replace_me'

Detailed design
No response
Alternatives considered
No response
Additional information
No response

Meeting note: I'm going to work on this, and @chloechien will contribute npm support. We will want a design doc.

How to validate a template could vary a lot. How about we leave it to the template repo GH workflow to do? My rough thoughts are:
I'm in my template repo. As a presubmit check, it would:

Use the abc CLI (either latest or head) to render the result into a folder
From this folder I could do various checks

The basic one: check if the content matches my "want" version - the CLI could provide this functionality since it's so common
Run lint and unit tests - the CLI doesn't need to worry about this; I get to choose what tools to use to run my test or lint
All kinds of other checks if needed


[W4.4][W11-A1] wang zi

@alexawangzi
Some comments added. Please ack & close the PR after reading comments.