Failing test case: Valinor cannot understand array{k: T|list<T>}

In this test, Valinor is being challenged to understand de-serialization of a given hashmap when given a type array{a-key: T|list<T>}.
Specifically, at the time of this writing, Valinor only picks T during de-serialization, and seems to completely ignore the list<T> portion of the data.
This kind of de-serialization is relevant when dealing with XML structures, where an element could be singular or plural depending on context:
<Invoices>
  <Invoice>
    <!-- in this example, `Item` is singular, and needs to be handled as `Item` -->
    <Item><Price>123</Price></Item>
  </Invoice>
  <Invoice>
    <!-- in this example, `Item` is plural, and needs to be handled as `list<Item>` -->
    <Item><Price>456</Price></Item>
    <Item><Price>789</Price></Item>
  </Invoice>
</Invoices>

Initially discovered by @Tigerman55

@romm btw, if you have better suggestions on how to map those XML structures meanwhile, I'm all ears :D
The "this XML element could be one or many" seems to be very common.

Hey there, thanks for the report and failing test case, it helped me identifying the real-world needs. :)
I opened a separate PR for this, could you take a look at #493 and tell me if it solves your issue?

Thanks @romm: probably checking in the evening.
A suggestion (in general, not just for Valinor), since it's hard to say if your patch "works": keep commits understandable.
For example:

failing commit (this patch)
your commit adding changes (greeen, if fixed)
commit that removes old test, if already included in other tests

This keeps things traceable / makes a meaningful patch history, also for posterity (squash intentionally to be avoided) :)

Procedure followed:
git checkout issue/union-type-mapping-ambiguity
git fetch upstream
git cherry-pick 210b33ed379f66299ae4f21968b35a82d27eb0d6 # picked my changes when resolving conflicts
./vendor/bin/phpunit

Got:
Time: 00:01.602, Memory: 38.00 MB

OK, but some tests were skipped!
Tests: 1550, Assertions: 5500, Skipped: 4.

I guess it's fine, besides the commit squashing hiccup.
It's your project, but please don't squash: commit history is VERY valuable, when commits are meaningful, and I put effort clarifying exactly what's going on in the commit messages too.
I'd say :ship: whenever you feel like it :+1:

Thanks for checking it!

A suggestion (in general, not just for Valinor), since it's hard to say if your patch "works": keep commits understandable.

I usually follow this procedure, in this case it was different because #493 is a big rework of how union types are handled by the mapper, it is not just a fix of what is tested in this PR. I could have merged my own branch here, though, sorry you had to do it. 😅

It's your project, but please don't squash: commit history is VERY valuable, when commits are meaningful, and I put effort clarifying exactly what's going on in the commit messages too.

And I thank you for it, it helps a lot when starting to work on a fix! When merging I usually squash though, because I prefer to have consistent and conventional commit messages in the history. When I need more information about why a commit was made, GitHub allows me to easily find which PR led to it. For instance I can see that a53ef931c565bd3b2917269ca1d79c7f3a5fb672 is related to PR 446:

…which has the history of what happened:

I know opinions may differ and workflow can be improved, but while I'm the main contributor I prefer to stick to this “convention”, mainly for consistency.

Released with 1.11.0, enjoy!


add test for stripping of _pjax in url with multiple parameters

This is a new version of #76

That's exactly what I was looking for. In the current master strip_pjax_param does not work correctly in _pjax key is the last one in the query string, it leaves the trailng &.

Hi @route @koenpunt 👋
I'm upgrading a Rails app from 4 to 6, and when using the latest version of this gem v0.5.0, I can reproduce this "error"... I think we should reopen this issue.

oh! thanks for reopening @route!
@koenpunt could you please rebase with current master? Would be amazing to ship this fix :ok_hand:
Thanks in advance!

Thank you a lot @koenpunt for updating the branch! 👍
@route could you please take a look?

Thanks @koenpunt . Waiting anxious

I see no reason how this test passes after this commit in 2015 https://github.com/rails/rails/commit/394b7be0368cdf992b29c40bf7f501418d630b64

I picked up your branch and created a new PR. Thanks everyone!

Just pushed to rubygems

Thanks @route 👏


Multiple layers

Thanks for sharing this powerful tool!
I am wondering: are you guys considering to add functionality for more than 2 layers? I would like to apply this autoencoder strategy on 3+ data modalities.

Thanks for sharing this powerful tool!
I am wondering: are you guys considering to add functionality for more than 2 layers? I would like to apply this autoencoder strategy on 3+ data modalities.
Thanks for your interest.
I think it is doable in both thoery and practice.  In our case, we focus on a specific biology question, so we did not test the model on data with more modalities.

Thanks for your response. I'll take a look.


Lights Disappear from events after battle ends

I don't know if it's intentional, but events with id stop glowing after the battle ends.

If you made reference to the monsters on the overworld map of the demo, it is intentional: their 'kill switch' are activated when defeating them, so those event no longer produce any light.
If it is not what you were referring to, can you explain me a simple way to reproduce this strange behavior?

Okay so I set up an event with this: <cl: fire 50 #51fffb B25 1>, then activated it upon entry with a plugin command. And I noticed that light stop when I open and close menu window.

I created the simplest map possible attempting to replicate the issue, but I hadn't much result:

https://user-images.githubusercontent.com/70440862/110124615-96ad4f80-7dc2-11eb-862e-3c516a47ebfe.mp4

<cl: fire 50 #51fffb B0 1>

https://user-images.githubusercontent.com/1911661/110138471-efccb180-7dc9-11eb-8780-a9ec02d0505c.mp4

Ok, It seems to be linked to the 'Reset Light' parameter that wasn't activated in my example.
Thanks for your report, I will look at it.

Version 3.9 of the script should do it.


Don't include docs in Array methods, just refer to module docs

[x] Closes #9223
[x] Tests added / passed
[x] Passes pre-commit run --all-files

I haven't quite finished looking for cases of this, and I'd like to find a way to enforce it, but this is what I have so far. I think I've found the main cases Array This is good to go!
As a side benefit of this approach now the Array summary is much more interesting
Before

After

I don't think it actually resolves #9223 as that issue was specifically concerned with dask.dataframe.map_partitions / dask.DataFrame.map_partitions.

:facepalm: good point. I will do this for dataframe.core as well.


Add an option to warn about each undefined name only once

Sometimes I refactor by copying some lines from a source file to a function in a new source file and then
use ruff to find undefined names, which should either be function arguments or module imports. If variable
foo is used in many lines before being set, ruff will give an error message
func.py:2:35: F821 Undefined name foo
for each such line. It would be nice to see this error message only the first time foo is encountered, since fixing the error will cause the other error messages involving foo to also go away.

Hi @Beliavsky, Thanks for reporting this issue. I understand the motivation for this request, but it seems difficult for Ruff to know which variables it is safe to omit the warnings for. We want to avoid new undefined name warnings popping up after making changes (fixing one issue should not result in more issues that you weren't aware of before).
Given:
bar = 5
print(foo)

if foo:
	print(foo + bar)

def inner():
	print(foo - bar)

foo + 2

Now, the obvious fix is to define foo at the top of the module. That would fix all errors:
foo = 10
bar = 5
print(foo)

if foo:
	print(foo + bar)

def inner():
	print(foo - bar)

foo + 2

However, you could define foo in other places where it only resolves some of the warnings:
# In the function
bar = 5
print(foo)

if foo:
	print(foo + bar)

def inner():
	foo = 40
	print(foo - bar)

foo + 2

# In the if branch
bar = 5
print(foo)

if foo:
	foo = 10
	print(foo + bar)

def inner():
	print(foo - bar)

foo + 2

# After the first use
bar = 5
print(foo)

foo = 10

if foo:
	print(foo + bar)

def inner():
	print(foo - bar)

foo + 2


Connect dialog should use wallet v2 after v0.4.0 desktop wallet release

Create a single button for connecting via JSON RPC for both desktop and cli wallet apps

Blocked by #2059


Enhanced Error Handling and Validation for Service Account Token Retrieval

This release includes major enhancements and bug fixes on the script that acquires and employs OpenID Connect tokens with Google Cloud service accounts. Some new improvements consist of the improvement of exception handling and validation to provide better and more secure operations.
Firstly, the script now uses named exceptions instead of the broad ones, which makes it easier to identify the problems encountered during the process of the script execution. For example, `google. auth. exceptions. It has been changed to ‘GoogleAuthError’ instead of the generic Exception to be able to capture specific errors that may occur when it comes to the authentication process. This increases the accuracy in debugging and gives better message to the user in case of an error.
Furthermore, the script also contains a strong mechanism of checking the service account credentials and token retrieval step. New changes to the code include checking the type of credential used and ensuring that at least the required scopes are present which makes the script only attempt to fetch a token when the environment and credentials are set correctly. This check may help to avoid possible problems connected with incompatible environments or permissions.
The script also changes the way it handles the responses from the IAP-protected application for the better. It has a better error handling logic for HTTP responses especially when the service account has insufficient privileges to access the application. This helps the users to easily identify the problem if it is related to authorization and find the solution to it without having to navigate through the entire code.
In light of these changes, the script’s functionality, security and usability have been improved by fixing some of the bugs that were present in the previous version, improving the exception handling mechanism and enforcing proper validation and error handling during the token retrieval and request processes.

This pull request contains a set of important fixes and enhancements of the script that is used to fetch and use Open Id Connect tokens for service accounts. The primary changes include:

Enhanced Exception Handling: Some generic Exception instances were replaced with more specific exceptions in order to provide better understanding and to make the process of debugging easier. This change helps in minimizing the errors that may have occurred and reduces the passing of errors as other types of errors.

Improved Validation and Error Reporting: Implemented more strict error handling and provided more descriptive error messages to be able to address a number of failure cases. This includes enhanced handling of permission denied errors or other unusual response from the API.

Code Optimization: Some changes have been made in order to optimize the token retrieval and the performance of the script. This involves improving on the logic of checking for various credentials and the various responses that are expected.

These updates are intended to improve the robustness of the script and to make it easier to modify, for example, by improving error handling or by making the output of the script easier to follow when using the -d flag.
Changes:

Refactored the get_service_account_token and main functions to use specific exceptions instead of generic ones.
Enhanced the error messages to help in handling the permission related as well as response related problems more efficiently.
Improved the flow of service account credentials and token retrieval algorithms.


Update scene-understanding.md

Added links to the SU sample/sample scenes

Docs Build status updates of commit 1a37db8:
:clock10: Pending: waiting for processors (6 builds ahead of you)
:warning: Docs Build is busy, currently there are 6 builds ahead of this one, for more information you can view the Build queue graph on the Docs Portal.

Docs Build status updates of commit 1a37db8:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

mixed-reality-docs/scene-understanding.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


[CLOSED] Status badges

 Issue by bestie
Tuesday 25 February 2014 at 12:20 GMT
Originally opened as https://github.com/alphagov/specialist-publisher/pull/17

bestie included the following code: https://github.com/alphagov/specialist-publisher/pull/17/commits

 Comment by bradwright
Tuesday 25 February 2014 at 13:31 GMT

We don't use Travis CI, so not sure what merging this pull request would add to the project.

 Comment by bestie
Tuesday 25 February 2014 at 13:33 GMT

Fair enough, I got confused because I saw the content models repo using Travis

 Comment by bestie
Tuesday 25 February 2014 at 13:34 GMT

I've removed the commit that added Travis, so it's just Code Climate now.

 Comment by bradwright
Tuesday 25 February 2014 at 13:36 GMT

Thanks :+1:


Add ssl support

Whoops! Didn't mean to open this pull request yet.
Closing for now, until request is in acceptable state.


[SPI/DV] Regression Failure Fixes And Testplan Update

Fixed regression failures
Testplan update for unmapped tests

Signed-off-by: Viswanadha Bazawada<EMAIL_ADDRESS>

also fix this CI failure

Whitespace check failed. Please run util/fix_trailing_whitespace.py on the above files.


Auto update cache by default?

Hi!
Thanks for writing tealdeer, it's been great to use.
I've found having to manually update the cache to be confusing, especially on first-use. Consider the reference tldr package versus tealdeer:
❯ paru -S tldr
❯ tldr tldr

  Displays simple help pages for command-line tools, from the tldr-pages project.
  More information: <https://tldr.sh>.

❯ paru -S tealdeer
❯ tldr tldr
Warning: Cache not found. Please run `tldr --update`.

I had to dig throug the documentation and GitHub issues to find https://github.com/dbrgn/tealdeer/issues/90 and https://dbrgn.github.io/tealdeer/config_updates.html. At which point I had to seed the config:
❯ tldr --seed-config

Then enable auto cache update:
[updates]
-auto_update = false
+auto_update = true
auto_update_interval_hours = 720

Does it make sense to enable this behaviour by default?

Right now I'd prefer not to enable auto-updates by default, but we should improve the documentation.

If it is not against spec, we could inform about the existence of auto_update in the result text of tldr --update

That sounds like a good idea as well. And/or link to the docs.

I see. Would you be able to help me understand why enabling auto-updated by default may not be desirable? Is there some sort of middleground to be reached where the first run of tealdeer fills the cache? More simply; can tealdeer fill the cache if empty instead of forcing the user to run tldr -u? What are your thoughts?
Thank you for the quick responses by the way! 😄

I think the main point is that we don't want to go ahead and start placing files on the system right after installing the program / without users explicitly telling us to do so. Personally, I see the client as an offline-only tool with the occasional updating of the cache

Yes, I see it like @niklasmohrin. Downloading files and placing them in your file system should be done with user consent by default. It's the same with most other index/cache based tools on Linux, for example package managers like apt or pacman. However, we can definitely highlight the auto-update feature more prominently.

Your points make sense and I agree that auto-updat by itself may not be a desirable default.
As suggested in my previous comment, is there some sort of middleground to be met where tldr -u is not a requirement to use tealdeer? At current, tealdeer won't work without first running tldr -u. This is not the case with the reference implementation where it just works. This can be observed with containers:
❯ docker run docker.io/archlinux sh -c 'pacman -Sy --noconfirm tldr && tldr tldr'
...
installing tldr...
:: Running post-transaction hooks...
(1/1) Arming ConditionNeedsUpdate...

  tldr

  Displays simple help pages for command-line tools, from the tldr-pages project.
  More information: https://tldr.sh.

  - Show the tldr page for a command (hint: this is how you got here!):
    tldr command

  - Show the tldr page for `cd`, overriding the default platform:
    tldr -p android|linux|osx|sunos|windows cd

  - Show the tldr page for a subcommand:
    tldr git-checkout

  - Update local pages (if the client supports caching):
    tldr -u

Whereas tealdeer:
❯ docker run docker.io/archlinux sh -c 'pacman -Sy --noconfirm tealdeer && tldr tldr'
...
installing tealdeer...
:: Running post-transaction hooks...
(1/1) Arming ConditionNeedsUpdate...
Cache not found. Please run `tldr --update`.

While there is an increase in ease of use, falling back to looking up pages has several downsides for us.

More code to maintain for page lookup itself
Configuration - sometimes, you might really not want to go online (say, you are on a tethered connection), so configuration options must be added
Added benchmark setups. We have setup benchmarks against other clients and ~we would have to~ I would expect us to benchmark both on- and offline lookup
Right now, you can "trust" tealdeer to never connect to the internet if you didn't explicitly allow it to do so. In my opinion, this behavior is a virtue and we should always try to keep it that way

Furthermore, I don't think that having to run tldr --update once is a problem at all, we are telling users exactly what they need to do to get started with tealdeer. Probably, they are already in the "setting-things-up" mode as they installed the software seconds ago.
I agree that we could promote auto-update more directly, but for the other thing, I don't really think that the benefits outweigh the costs here.


Locking with open seat fails silently

Reported: @TheFreal
Replicated: Yes
Attempting to close the scooter while the seat box is open should cause an error popup to be shown. This behavior is implemented, but broken.
Blocking the button whenever the seat is reported open will not be an acceptable fix for this, as the seat status is polled again after pressing the button to avoid false negatives.

Huzzah! Fixed in c43dc14.


RulesQuota default

Rulesquota defaults to 64kb on premises, but cloud provisioned mailboxes seem to default to 256kb now.

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

ID: 3e79e0e9-786b-dbfa-df44-9436545f00aa
Version Independent ID: 153ce2d2-dab5-9c8f-c511-ee3bc8ee2dbc
Content: Set-Mailbox (exchange)
Content Source: exchange/exchange-ps/exchange/Set-Mailbox.md
Service: exchange-powershell
GitHub Login: @chrisda
Microsoft Alias: chrisda

@chrislehr, I've determined that 64 KB is the default value in Exchange 2010 SP3RU30. 2013 CU23, 2016 CU17, 2019 CU6 and Exchange Online have default values of 256 KB. I updated the topic accordingly .
Thanks for the feedback.
Closing


Added ID to the TextView in the layout

In another pull request I added rest.

@golebier You are not supposed to solve the exercises by submitting pull requests to this repository.
If you find bugs or mistakes sure, you can help fix them. But I don't think it is the case with the current changes you sent in this PR.
I suggest that you fork this repository and push your solutions to the exercises there.


Add MIT LICENCE and CONTRIBUTING files

This looks good to me. Wondering if we want to add the current README https://github.com/gctools-outilsgc/design-system-code/blob/master/README.md to a contributing file, then have the old repo's README copied here? What do you think Seb?

The old README has a description of what the project is and the new README has instruction how to install dependencies and build the Gatsby site.  I think they should be combined into the new one with a link to the CONTRIBUTING.  I will add a commit here with that change


Singleton Input class

Input class is a singleton. Therefore, its copy constructor and copy operator is supposed to be delete functions to prevent from copying this class.
However, in WindowsInput.cpp, the line,
Input* Input::s_Instance = new WindowsInput();
is trying to use copy operator(which I have void operator=(const Input&) = delete;) in Input class.
If an Input constructor is explicitly declared and defined, it seems like this problem will be solved, but I not sure how this is working.

There is one thing I don't quite understand.
I explicit add 	Input(const Input&) = delete; and void operator=(const Input&) = delete;.
When I call Input* Input::s_Instance = new WindowsInput();, it will throw an error attermpting to reference a deleted function.
However, if I explicitly declare Input() = default;, the compilation would suceed.
Does anyone know how this works?

In Input.h we only define the variable without having any instance:
https://github.com/TheCherno/Hazel/blob/f52b813db65cd7275da56003c501914ad1c7515a/Hazel/src/Hazel/Input.h#L24
Meaning, when creating the first instance (using new WindowsInput()) it will resolve all the static fields, resulting in s_Instance to have a default constructed instance.
We got 2 options:

As we're doing now, overwriting the s_Instance
Initialize the s_Instance
static Input* s_Instance = nullptr;

Can you try that? set Input::s_Instance to nullptr, then deleting, it should work?
If it was up to me, I would also declare a protected Input default constructor as
protected:
    Input() = default;

I implemented @LovelySanta's suggestion and found that creating the protected default constructor for Input and deleting the copy constructor and copy operator compiled with no errors without having to initialize s_Instance to nullptr. Not sure why this works, but it compiles and runs without error so it seems fine.
I thought I'd also note that it seems that initializing s_Instance must be done in a translation unit (not in Input.h) which would require creating Input.cpp or doing it somewhere else like in Application.cpp.

I implemented @LovelySanta's suggestion and found that creating the protected default constructor for Input and deleting the copy constructor and copy operator compiled with no errors without having to initialize s_Instance to nullptr. Not sure why this works, but it compiles and runs without error so it seems fine.

Making the default constructor private/protected has nothing to do with it. That only prevents the user from making an Input class (only derived classes allowed).
The line that actualy fixes your errors is static Input* s_Instance = nullptr;.

Assume it is not there.
We create a new WindowsInput, derived from the Input class. It will create an Input (base class) instance. While it is creating this (first) instance of the Input class, it will resolve all static fields that are not initialized. This means creating an Input class using default constructor to initialize that s_Instance. After the constructor, it wants to assign a WindowsInput to an existing Input instance, where it wants to use the copy constructor or assignment operator.
Now assume it is there.
It won't be initialised, as it is a nullptr, not actualy pointing to an object, it will point to null. Once it tries to assign the WindowsInput, it won't try to use the copy constructor or assignment operator, and just let the s_Instance point to our newly created WindowsInput.

This is something we might want to fix, we never know what we'll be adding in the future to the Input class. Hence why I'll mark it as an optimalisation.

The line that actualy fixes your errors is static Input* s_Instance = nullptr;.

I think you misunderstood me. This was not fixing my errors simply because it was not in my code.
I have done some more testing and I think the error when deleting the copy constructor and copy operator is not to do with the copy operator, but rather the creation of the WindowsInput instance. As far as I can tell the following happens:

We delete the copy constructor and copy-assignment operator.
As per the Microsoft Docs page (the first bullet point) and because we declare the copy constructor (even if only to delete it), the default constructor is not generated anymore.
We get a compiler error on construction of WindowsInput because no default constructor exists.

This is why explicitly declaring the default constructor solves the issue. You are right in saying the protected label has nothing to do with it.
As far as I can tell the compiler sees the Input* Input::s_Instance = new WindowsInput(); line as the initialization of s_Instance and so it doesn't call the copy-assignment operator. I don't think static members are initialized by default constructors, since then they could be initialized multiple times if multiple instances are created. Also the wording on cppreference's default constructor page under the "Implicitly-defined default constructor" section seems to imply only non-static members are initialized.
Thus, it seems that all that's needed is to delete the copy constructor, delete the copy-assignment operator, and declare the (preferably protected) default constructor:
protected:
	Input() = default;
public:
	Input(const Input&) = delete;
	Input& operator=(const Input&) = delete;

First of all, let me say that I agree with your implemenation and what does/doesn't need to be present. I only think you misunderstood me a bit with this:

I don't think static members are initialized by default constructors, since then they could be initialized multiple times if multiple instances are created. Also the wording on cppreference's default constructor page under the "Implicitly-defined default constructor" section seems to imply only non-static members are initialized.

Static members are initialised 100% sure before you use anything that has to do with the class/getting/setting the variable. The only thing that is not clear is when they are initialised as there are 2 main answers to this (see this nice stackoverflow post where I assumed it was before you created the WindowsInput instance (2nd option of the stackoverflow post).

@LovelySanta @Puddlestomper Thanks for the discussion on this issue and awesome external references.


ci flow testing

ci flow testing

Building VM-Manager Code

Building VM-Manager Code

Build successful.
job/satg-aee-android-ci/job/VM-MANAGER-PR-FLOW/121/


Issue with serialization SoapFault

Monolog version: 2.0.2
Occurs an error during serialization SoapFault, when property details has value of complex type.
Error(code: 0): Object of class stdClass could not be converted to string at /app/vendor/monolog/monolog/src/Monolog/Formatter/LineFormatter.php:184

An example of SoapFault:
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
  <SOAP-ENV:Body>
    <SOAP-ENV:Fault>
      <faultcode>SOAP-ENV:Client</faultcode>
      <faultstring>Недостаточно баллов</faultstring>
      <detail>
        <ns3:FaultResponse xmlns:ns3="http://api.direct.yandex.com/v5/general">
          <requestId>2577205305276726399</requestId>
          <errorCode>152</errorCode>
          <errorDetail>Недостаточно баллов для выполнения операции</errorDetail>
        </ns3:FaultResponse>
      </detail>
     </SOAP-ENV:Fault>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Commit 633bcd526 not fixes issue in this case, because reset() returns stdClass{requestId, errorCode, errorDetail}.

I have the same problem

I was having the same problem but then as soon as I started trying to fix it my soap resource fixed itself and I couldn't dig in.
I think the description of the problem with the assumptions in using reset are accurate though.
I was going to play with refactoring the if/ternary logic out and letting var_export or print_r just dump what ever was given. Replacing it with something like:
            if (isset($e->detail)) {
                if  (is_string($e->detail)) {
                    $str .= ' detail: ' . $e->detail;
                }
                elseif (is_object($e->detail) || is_array($e->detail)) {
                    $str .= ' detail: ' . var_export($e->detail, true);
                }
            }

The problem here is that php claim detail property as string (you can look at the __construct method https://www.php.net/manual/en/class.soapfault.php ), but in fact it's not only string.
So if it mixed property we have to use some kind of serialization, var_export looks nice.
I use json_encode as ad-hoc solution, I think it is more friendly for logging systems.

Refs https://github.com/Seldaek/monolog/issues/1391

Fixed by https://github.com/Seldaek/monolog/pull/1462


Consider a "brief" native mode only showing C frames below the last Python frame

Is there an existing proposal for this?

[X] I have searched the existing proposals

Is your feature request related to a problem?
We default to showing pure Python stacks, both for performance and for legibility to people who aren't systems programmers, but often these aren't very useful for figuring out exactly why a program had a hang or crash, since it's not always clear what might be happening inside of the current Python call. The solution to this is running with --native or --native-all mode, but these modes are both very verbose.
Describe the solution you'd like
@alicederyn has pitched an idea for me: it might be possible to eliminate some of the noise and performance implications of --native mode while still providing enough information to puzzle out deadlocks or blocking happening in the C code called from the user's Python code if have a mode that only shows the C frames after the last Python frame. That is, instead of our pure-Python stacks:
Traceback for thread 112 [] (most recent call last):
    (Python) File "/test.py", line 17, in <module>
        first_func()
    (Python) File "/test.py", line 6, in first_func
        second_func()
    (Python) File "/test.py", line 10, in second_func
        third_func()
    (Python) File "/test.py", line 14, in third_func
        time.sleep(1000)

And instead of the hybrid stacks that we show with --native:
Traceback for thread 112 [] (most recent call last):
    (C) File "???", line 0, in _start ()
    (C) File "???", line 0, in __libc_start_main ()
    (C) File "Modules/main.c", line 743, in Py_BytesMain (/usr/lib/libpython3.8.so.1.0)
    (C) File "Modules/main.c", line 689, in Py_RunMain (/usr/lib/libpython3.8.so.1.0)
    (C) File "Modules/main.c", line 610, in pymain_run_python (inlined) (/usr/lib/libpython3.8.so.1.0)
    (C) File "Modules/main.c", line 385, in pymain_run_file (inlined) (/usr/lib/libpython3.8.so.1.0)
    (C) File "Python/pythonrun.c", line 472, in PyRun_SimpleFileExFlags (/usr/lib/libpython3.8.so.1.0)
    (C) File "Python/pythonrun.c", line 439, in pyrun_simple_file (inlined) (/usr/lib/libpython3.8.so.1.0)
    (C) File "Python/pythonrun.c", line 1085, in pyrun_file (/usr/lib/libpython3.8.so.1.0)
    (C) File "Python/pythonrun.c", line 1188, in run_mod (/usr/lib/libpython3.8.so.1.0)
    (C) File "Python/pythonrun.c", line 1166, in run_eval_code_obj (/usr/lib/libpython3.8.so.1.0)
    (Python) File "/test.py", line 17, in <module>
        first_func()
    (C) File "Python/ceval.c", line 4963, in call_function (inlined) (/usr/lib/libpython3.8.so.1.0)
    (C) File "Objects/call.c", line 284, in function_code_fastcall (inlined) (/usr/lib/libpython3.8.so.1.0)
    (Python) File "/test.py", line 6, in first_func
        second_func()
    (C) File "Python/ceval.c", line 4963, in call_function (inlined) (/usr/lib/libpython3.8.so.1.0)
    (C) File "Objects/call.c", line 284, in function_code_fastcall (inlined) (/usr/lib/libpython3.8.so.1.0)
    (Python) File "/test.py", line 10, in second_func
        third_func()
    (C) File "Python/ceval.c", line 4963, in call_function (inlined) (/usr/lib/libpython3.8.so.1.0)
    (C) File "Objects/call.c", line 284, in function_code_fastcall (inlined) (/usr/lib/libpython3.8.so.1.0)
    (Python) File "/test.py", line 14, in third_func
        time.sleep(1000)
    (C) File "Python/ceval.c", line 4963, in call_function (inlined) (/usr/lib/libpython3.8.so.1.0)
    (C) File "Modules/timemodule.c", line 338, in time_sleep (/usr/lib/libpython3.8.so.1.0)
    (C) File "Modules/timemodule.c", line 1866, in pysleep (inlined) (/usr/lib/libpython3.8.so.1.0)
    (C) File "???", line 0, in __select ()

We'd show a stack that switches to showing C frames automatically after the last Python frame:
Traceback for thread 112 [] (most recent call last):
    (Python) File "/test.py", line 17, in <module>
        first_func()
    (Python) File "/test.py", line 6, in first_func
        second_func()
    (Python) File "/test.py", line 10, in second_func
        third_func()
    (Python) File "/test.py", line 14, in third_func
        time.sleep(1000)
    (C) File "Python/ceval.c", line 4963, in call_function (inlined) (/usr/lib/libpython3.8.so.1.0)
    (C) File "Modules/timemodule.c", line 338, in time_sleep (/usr/lib/libpython3.8.so.1.0)
    (C) File "Modules/timemodule.c", line 1866, in pysleep (inlined) (/usr/lib/libpython3.8.so.1.0)
    (C) File "???", line 0, in __select ()

This could be faster than running with --native, as we should be able to avoid unwinding and symbolizing the entire call stack and instead stop when we reach the first _PyEval_EvalFrameDefault call (though currently we do all the unwinding before any of the symbolizing, and that would need to change if we wanted to break out of unwinding early).
@pablogsal feels this would be a confusing default, but is willing to consider it as a --native=brief or --native-all=brief flag.
Alternatives you considered
No response

This may also be of interest: https://www.benfrederickson.com/profiling-native-python-extensions-with-py-spy/

This may also be of interest: benfrederickson.com/profiling-native-python-extensions-with-py-spy
Apologies if you've already seen this and implemented it or decided it's not a good fit 😅

Thanks for the link! This information is a bit outdated (handling the native pthread id) because I changed this in CPython so we store the pthread id in the thread object so there is no need for dealing with registers (which is also very brittle). We have also a better way for older versions that rely on glibc internals but is actually much more resilient than that approach.
Also, in any case, all of that is already in pystack, what we are discussing in this issue if I understand correctly is just modifying the reporter under some option to just show the native stack under the Python stack.

I would like to work in this issue


build(deps): bump golang from 1.17 to 1.20

:tada: This PR is included in version 1.2.0-beta.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

:tada: This PR is included in version 1.2.0-beta.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Typo in malware list

Hi Scafroglia93,
There is a typo in your malware list: https://raw.githubusercontent.com/scafroglia93/blocklists/master/blocklists-malware-traffic.txt
"from adespartc.us" (missing a single .)

fixed
thanks


Link to provider terms

After installing the production Android app and activating the Whim Urban 30 plan for Helsinki, the user is asked to enter data into the HSL website. However, this externally hosted form provides no details about how the data is collected. It is unclear whether the Whim terms apply. I suggest adding a link above the button to the provider policy. Screenshot attached.

Hi,
Thank for the good feedback. This is forwarded to our product development.
I will close this issue because we will not be able to provide a follow up on this issue here.


Feature request: page breaks

It would be neat if some markdown, HTML, or CSS sentinel value could be interpreted by mdpdf as a "page break."
I love this tool, but often spend a lot of time futzing with CSS, or tweaking copy, to e.g. get a heading to flow to the next page (rather than dangling at the end of a page, with its content starting on the next page).
A couple options, off-hand:

--hr-page-breaks: interpret Markdown --- (normally an HTML
 tag) as a page break

 or similar

In the meantime, I'm using a spacer element like:

While debugging, a border is helpful:

You can do page breaks using this

I've referenced back to @nuckle's answer a few times in the last 6mos, it seems to work in general (not just with mdpdf) when saving web pages to PDF. Ty!


As a Devops, I would like to clean up cache in or workflows to prevent false errors

We have a use case were commits were reverted as such that files previously present were removed. The pipeline for yaml linting failed since it is looking for files that are no longer there :

Will be fixed in https://github.com/ai-cfia/github-workflows/pull/102


TypeError: Cannot read properties of undefined (reading 'nullValue')

Thanks for stopping by to let us know something could be better!
PLEASE READ: If you have a support contract with Google, please create an issue in the support console instead of filing on GitHub. This will ensure a timely response.

Is this a client library issue or a product issue?
Client library issue

Did someone already solve this?

Search the issues already opened: https://github.com/googleapis/nodejs-logging-winston/issues
Search the issues on our "catch-all" repository: https://github.com/googleapis/google-cloud-node
Search or ask on StackOverflow (engineers monitor these tags): http://stackoverflow.com/questions/tagged/google-cloud-platform+node.js
No

Do you have a support contract?
No

Environment details

OS: node:16.15.0-alpine Docker image
Node.js version: 16.15.0
npm version: 8.5.5
@google-cloud/logging-winston version: 4.1.0

Steps to reproduce
We are getting a high number of Sentry errors in production reporting an unhandled error from this library: TypeError: Cannot read properties of undefined (reading 'nullValue'). I attached a screenshot below showing where the error is being thrown. See the full Sentry error for more details. Unsure how to reproduce.

Any updates on this?

Any updates on this?

@francescov1 , sorry for delayed answer and thanks for your patience. Based on image you shared, seems that error happens in GAX layer which is harder to debug if we missing the overall picture - if there a code snippet you can share how the library is used? Also seems that your @google-cloud/logging-winston library version is 4.1.0 - I wonder if it wold be possible to upgrade the library to latest version snd see if error persists.

@losalex Here's the code we are using (and then using the logger object to log messages and errors in our application).
import winston from 'winston';
import * as GcpTransport from '@google-cloud/logging-winston';

export const logger = winston.createLogger({
  level: 'info',
  format: winston.format.combine(winston.format.timestamp(), sanitizeLogs()),
  exitOnError: false,
  transports: [
    new GcpTransport.LoggingWinston(),
    new SentryTransport({ level: 'error' })
  ]
});

Will try upgrading

Hi @losalex , we're still seeing this occur after upgrading to the latest version. Is there any other info I can provide? We're getting a large amount of these coming in, and are worried that its causing us to miss critical logs.

@francescov1 , sorry for long time it takes to clarify the issue - I am still on it and currently working with our GAX team to get an idea why this issue is happening. Just out of curiosity - would you please be able to remove the SentryTransport from code and see if an issue still repro?

@francescov1 , would you be able also to add a code which performs logging as well? What kind of methods you use to log entries? After preliminary analysis, it seems this problem might require some effort to debug and apparently as of now we cannot identify exactly what is a problem. Can you please also let me know the environment where logging library is used?

@losalex I am not currently active on this project anymore, @lncramer can you take this over?

Thank you @francescov1 for an update!
Can I ask you to update to latest nodejs-logging-winston library? My latest update 733 contains a GAX fix which will print to stderr failing payload which could be useful to understand a failure.

Lowering priority - awaiting for input

Closing this issue since it seems there are no response. Feel free to comment or reopen per need


Flag id for Erzya langauge is presently absent

Flag for quick identification of Erzya-language keyboard
When working with several languages alternately, it saves a lot of time if I can identify the input language by simple coloring instead of a bare keyboard icon.
In earlier Mac versions, there has been a flag present, such as https://commons.wikimedia.org/wiki/File:Erzya_Flag.svg

The flag icon is there in the source, just waiting for a new release 🙂
A new release depends on getting our build infra moved to a new system called TaskCluster. It is done for several core components, and will happen with all lang-XXX repositories in the next few days. After that we will take on the keyboards.
@Eijebong is the one responsible for the TaskCluster upgrade.


QR reader unable to read certain QR codes.

In general this newest version works fine, and is able decode the  QR code .However, for some  images,  it is  not able  to decode the QR code and returns a result of Nil.
The online version at ZXing.org/w/decode successfully decodes the QR code for these problem images.
The problem images are attached.

Thanks
Rashid

Hi, I'm using this as well but whenever I set to AVCaptureSessionPresetHigh, the camera app doesn't rotate and I can't toggle the cancel button and the camera button. Any help?

I would recommend using an AVCaptureSessionPreset which uses HD-ready resolution. On higher resolution I really find it difficult to detect valid barcodes (1d and 2d). In addition, the load of cpu increases heavily.


Update to cats-effect 3

Upgrade library to latest cats-effect 3 versions

@ChristopherDavenport any chance of getting this one merged soon, we're in the process of upgraded some libraries for a migration to ce3 and this is one of the last hold outs. Thanks for such an awesome project btw!


Speed...

So I'm using the default configurations and I can connect and have internet... but it's unbearably slow. Youtube video descriptions and thumbnails are the only thing that will load for me. In chrome I get the error DNS_PROBE_FINISHED_BAD_CONFIG. All I did was add AdGuardDNS rules to the adblocking. A little help please? :)

Ran it again, working fine now. AVOID ADGUARD ADLIST!


KAFKA-14618; Fix off by one error in snapshot id

The KRaft client expects the offset of the snapshot id to be an end offset. End offsets are exclusive. The MetadataProvenance type was createing a snapshot id using the last contained offset which is inclusive. This change fixes that and renames some of the fields to make this difference more obvious.
Committer Checklist (excluded from commit message)

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

I filed a follow-up jira here https://issues.apache.org/jira/browse/KAFKA-14622

Can you file a JIRA for creating a test that would have caught this?

Yes. When I implement https://issues.apache.org/jira/browse/KAFKA-14619, we can reliably catch this kind of issues in JUnit integration tests.


Schema.org markup on home page

In addition to https://github.com/SynBioHub/synbiohub/issues/986
There are issues with:

the provider is listed as<EMAIL_ADDRESS>
  "provider": [
<EMAIL_ADDRESS>  ],

the DataCatalog description has html tags in it:

"SynBioHub is a design repository for ...

fixed now


⚠ Roblox Devhub has degraded performance

In f0be737, Roblox Devhub (https://developer.roblox.com) experienced degraded performance:

HTTP code: 200
Response time: 1677 ms

Resolved: Roblox Devhub performance has improved in e653764.


modify memory-unit do not work

At first, I build by GiB.Then I set memory-unit=MiB,but it seem like "limits:aliyun.com/gpu-mem: 3 " still deploy by GiB.

maybe  cache,after redeploy it is ok.


SerialPort settings in configuration file

Low level serial settings should be inside the configuration setup. e.g. 115200 8N1
A preferred serial could be added and shown as the default if present e.g. /dev/ttyUSB

I think this thing is already present in software.

I have checked it into the configuration file present inside tests/files and there is no fields for those settings. If they are already present please update those files

Did you check only-settings.json or only-settings-partial.json files inside tests/files?


cannot fetch data in production: Electron  better-sqlite3

I have an electron app based on electron-react-boilerplate that's using an SQLite database with typeorm and better-sqlite3 driver, everything works like charm in development mode but I'm facing an issue when I build a production bundle:
Error occurred in handler for 'login': Error: Error has occurred in =>login:user_not_found
the database file is located under app.asar.unpacked/database/database.sqlite
I'm aware that this folder missing some read/write permission.
"asarUnpack": [       "**\\*.{node,dll}",       "database/database.sqlite"     ],     "files": [       "dist",       "node_modules",       "package.json",       "database"     ],

This looks like a duplicate of https://github.com/JoshuaWise/better-sqlite3/issues/126, unless you can reproduce this in isolation.
I'd try asking on StackOverflow as well. The error message does not look like it's coming directly from better-sqlite3, so you might want to provide steps to reproduce this and an error that points to better-sqlite3.

Here is the database path from inside the production electron type, I tried to open it directly using sqlite3 command line but I faced the same Error: unable to open database file (same error in all temporary directories on other platforms: win and mac).
am I doing anything wrong? if so please help me to configure. I assume it's a read/write disk permissions


Why do we need crystal-windows-installer when WSL can be enabled by changing one line?

You mention here in the wiki that in order to use WSL with this extension we need to install the crystal-windows-installer package (which requires WSL to work anyway), but I've found that isn't the case at all.
If shell: "bash" is added to spawnOptions in this file then it magically starts working through WSL.
I've posted this as a question instead of just submitting a PR because I have zero experience with extension development and there may well be a valid reason for not doing it this way. Is there?

Hi @Pyroglyph Thank you for this issue!

If shell: "bash" is added to spawnOptions in this file then it magically starts working through WSL.

Great idea, I haven't tried that, let me test it! :+1:


Using WEBSITE_RUN_FROM_PACKAGE = URL results in 0 functions found using Azure Functions V4

note: moved from https://github.com/Azure/azure-sdk-for-js/issues/30183

Package Name: @azure/functions
Package Version: 4.5.0
Operating system: Linux
nodejs

version: 20

Describe the bug
When we push up a zip file into an storage blob and set WEBSITE_RUN_FROM_PACKAGE to be a URL to this blob as described in the documentation then we get no functions found. This is required for using a Dynamic Y1 plan.
However, if we push the same zip using a normal Zip Deploy to a Basic plan with WEBSITE_RUN_FROM_PACKAGE set to 1 then we do see the functions.
If we downgrade the @azure/functions library and use a v3 folder structure with a host.json at the root and a folder for each function containing a function.json file then we do see the functions with WEBSITE_RUN_FROM_PACKAGE set to a URL.
This appears to be a problem with Azure Functions v4.
To Reproduce
Steps to reproduce the behavior:

Create a super simple zip file containing only the package.json with a main of ./index.js, index.js (with a http handler that returns 200) and the most basic host.json

package.json

{
  "name": "functions-test",
  "version": "1.0.0",
  "main": "./index.js",
}

host.json

{
  "version": "2.0",
  "extensionBundle": {
    "id": "Microsoft.Azure.Functions.ExtensionBundle",
    "version": "[4.0.0, 5.0.0)"
  }
}

index.js

import { app } from '@azure/functions';

app.http('test', {
  methods: 'GET',
  handler: () => ({ status: 200 }),
});

Upload this to a storage blob
Create a function app with WEBSITE_RUN_FROM_PACKAGE to be a URL to the storage blob and FUNCTIONS_NODE_BLOCK_ON_ENTRY_POINT_ERROR to be true
Ensure the function app's identity has read access to the storage blob
Restart the function app

Expected behavior
Once restarted we should see a function called test in the interface and hitting the /api/test URL would give us a 200 response. In reality we see nothing and in the logs we get the following error:

No job functions found. Try making your job classes and methods public. If you're using binding extensions (e.g. Azure Storage, ServiceBus, Timers, etc.) make sure you've called the registration method for the extension(s) in your startup code (e.g. builder.AddAzureStorage(), builder.AddServiceBus(), builder.AddTimers(), etc.).

Screenshots

Additional context
The reason we want to use this method over WEBSITE_RUN_FROM_PACKAGE=1  is so we can use the Dynamic Y1 tier in Azure Functions which has this value set to the ZIP URL as a requirement.
We don't want to downgrade our @azure/functions package as this is used elsewhere in our monorepo and would like to reduce the potential for package problems here as well.

Hi @ajwhitehead88 can you make sure your zip package has the "package.json" file included at the root? The v4 model reads the "main" field to know which files to load, so if that file is missing you might get "no functions found". In general, please check the contents of the zip package to make sure it matches the working version exactly. I suspect either a missing file or different folder structure is causing the issue here.
If that doesn't help, please follow these instructions to share your app info privately: https://github.com/Azure/azure-functions-host/wiki/Sharing-Your-Function-App-name-privately

Hi @ejizba - Yes that is correct. We have a package.json with the "main" field pointing to a single index.js with a simple v4 http handler. Also a basic host.json.
I'll set up a simple resource group now that replicates the issue and provide you the details.

Hi @ejizba - I have used the second method from that link as I don't get any functions visible to call.
GUID: 996f6286-ec34-437f-a1fd-415493222de9
Region: UK South
UTC: around 2024-06-27T08:44:37.603Z
Is this enough to get what you need?

I think we might be getting somewhere with it, it might be due to how pnpm is ]creating a symlinked node_modules folder](https://pnpm.io/symlinked-node-modules-structure).
If we use normal npm to create the folder and ensure our filenames match the function names (???) then it appears to work as expected.
Will keep looking

@ajwhitehead88 sorry for the delay, were you able to get this figured out? I didn't look at your guid information, but your theory related to pnpm definitely sounds like it could be the cause.

@ejizba - No probs, we have worked around the pnpm issue using a small "hack" in our github action for now.
We pnpm deploy the package folder into it's own place and then uses npm to replace the node_modules folder which solves our symlinking issue. There is a potential second issue where the function name has to match the file name I believe which is a minor annoyance but nothing that stops the functions from working.
In our GitHub Action:
      - run: pnpm install --prefer-offline --frozen-lockfile

      - run: pnpm --filter package-to-deploy  build

      - run: pnpm --filter package-to-deploy deploy --prod /tmp/deploy

      # PNPM -> NPM fix to reduce node_modules size
      - run: |
          jq 'del(.devDependencies)' package.json > package.tmp
          mv package.tmp package.json
          rm -r node_modules
          npm i --omit=dev
        working-directory: /tmp/deploy

We've had a call with some folks from Azure to iron out the last bits so think there might be some headway soon but otherwise we have working code at the moment so all good for now but would be nice to remove that extra run action in the future.

Glad you got everything figured out! Just curious, how are you actually deploying at the end of the day? I would say the best alternative to your existing workaround is to force your deployment mechanism to automatically copy symlinked files into the deployment package. For example, back when I worked on the VS Code extension we fixed this problem in VS Code here. Depending on your deployment mechanism, you might have to file a new issue if they don't support this.

There is a potential second issue where the function name has to match the file name I believe which is a minor annoyance but nothing that stops the functions from working.

This is the default behavior for the sake of cleanliness, but for the V4 model you can name your files whatever you want as long as they are included by the "main" field in your package.json.
I'm going to go ahead and close this issue. I think this is more of a deployment tooling issue and as mentioned above would recommend you follow up with your deployment mechanism if desired

No problem, things are working now with the workarounds so think we are relatively clear and we can look at this further down the line on our side 👍
We were deploying with GitHub Actions to then trigger a pulumi action. Doing things manually via the Azure portal caused the same problem so we ruled out both tools fairly early we believe but it is worth another look regardless!


VTK8 - Different shadows are appearing in this test. May need investigation.

Different shadows are appearing in this test. May need investigation. http://portal.nersc.gov/project/visit/tests/20180417-22:00/surface_trunk_serial/compositing_01.html
-----------------------REDMINE MIGRATION-----------------------
This ticket was migrated from Redmine. As such, not all
information was able to be captured in the transition. Below is
a complete record of the original redmine ticket.
Ticket number: 3127
Status: Pending
Project: VisIt
Tracker: Bug
Priority: Normal
Subject: VTK8 - Different shadows are appearing in this test. May need investigation.
Assigned to: -
Category: -
Target version: 3.0
Author: Eric Brugger
Start: 05/17/2018
Due date:
% Done: 0%
Estimated time:
Created: 05/17/2018 11:49 am
Updated: 05/22/2018 12:45 pm
Likelihood: 3 - Occasional
Severity: 4 - Crash / Wrong Results
Found in version: trunk
Impact:
Expected Use:
OS: All
Support Group: Any
Description:
Different shadows are appearing in this test. May need investigation. http://portal.nersc.gov/project/visit/tests/20180417-22:00/surface_trunk_serial/compositing_01.html
Comments:

Comparing 2.13.3 and 3.0.0b, the shadows are definitely missing. Here are the before and after images. The top image is 3.0.0b.

The script to reproduce the images:
compositing_test.py.txt


Merge and update event: excessive event handler's calls

I found the odd behavior of update handler and merge.
Example:
const tree = new Baobab();
tree.set('test', {});
tree.select('test', 'value').set(1);

// Add update event handler
tree.select('test', 'value').on('update', (e) => console.log('update:', e.data.currentData, e.data.previousData));

tree.select('test', 'value').set(2)
// Update handler's output: update: 2 1

tree.select('test', 'value').set(2)
// Update handler wasn't called

tree.select('test', 'value').set(3)
// Update handler's output: update: 3 2

tree.select('test', 'anothervalue').set(1);
// Update handler wasn't called because it is another cursor

Before, everything was OK. Update handler was called only when data was changed.
tree.select('test').merge({ 'anothervalue': 1});
// Update handler's output: update: 3 3

tree.select('test').merge({ 'anothervalue': 1});
// Update handler's output: update: 3 3

I think it is bad behavior because data wasn't changed and cursor ['test', 'value'] always had the same value.
What do you think about this?

I am not sure to understand your case but what you need to know is that Baobab never perform data diff for performance reasons but instead compare paths. In the merge case, you edit the parent path, so I cannot infer that the underlying values have change or not, hence the event.

But I might change some handler strategies in the future.


Migrate 'LegendRamp' component from makeStyles to styled-component + cleanup

Description
This PR includes a refactorization of LegendRamp component, all classes from makestyles are been converted to styled components
Shortcut:  297037
Type of change

Refactor

Acceptance
The code resultant must return same styles component visualization as the same before changes

Overview a general visualization from v1.x to v2.x

Basic checklist

Good PR name
Shortcut link
Changelog entry
Just one issue per PR
GitHub labels
Proper status & reviewers
Tests
Documentation

A couple of test are failing due to weird behaviour of getComputedStyles related with background and linear-gradient, this function doesn't return background value when linear-gradient are applied. I need research a bit more

ok, let us know when this PR is ready for review please. Thanks!!

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

6 of 6 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.003%) to 71.348%

Totals

Change from base Build<PHONE_NUMBER>:
0.003%

Covered Lines:
1947

Relevant Lines:
2511

💛  - Coveralls

@vmilan the PR is ready to check it out.


Update Plugin Artifacts Links for v0.137.9

Automated changes by create-pull-request GitHub action

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


the bin transform should not consume {reverse}

since it doesn't make use of it… instead pass it up so we can stack the resulting bins in the desired order.
solves https://stackoverflow.com/questions/68056843/in-observable-plot-how-to-sort-order-the-stack-from-a-bin-transform/68057660
build and test: https://observablehq.com/@fil/stack-bins-ordered-439

Same analysis — I didn't see a better way to fix this than by having the bin transform explicitly "save it for later", since it makes no sense to order the elements in the bins. But I agree it goes a little against the genericity of the transforms composition.

It raises the question: should the sort transform then similarly apply after the bins have been constructed, rather than before?

There's one case where sort must be done before stacking: when we compute the wiggle offset (which minimizes the total movement), the data should be sorted according to the stack's "location" dimension (x if we're using stackY).
https://github.com/observablehq/plot/pull/177#issuecomment-789062973
However in that use case: 1. it doesn't matter if it's done before or after binning 2. it doesn't matter if the data are sorted or sorted reverse—they just have to be "aligned".
If we need to be explicit about where {reverse} is applied (or want to apply it several times with different targets), there's always the possibility of using a combination of spread (as in this example) and Plot.transform.
The full example would become something like:
Plot.rectY(
  data,
  Plot.stackY({
    ...Plot.binX(
      { y: "count", fill: "first", title: (d) => JSON.stringify(d[0]) },
      Plot.transform({
        x: "body_mass",
        fill: "species",
        z: "species",
        // order: "value" // ***
        sort: "sex",
        reverse: true // applies on "sort", consumed by Plot.transform hence not passed up by Plot.bin
      })
    ),
    order: "value", // alternatively, could be defined in ***
    reverse: true // applies on "order"
  })
).plot()

Also related https://github.com/observablehq/plot/issues/297

This is what I meant
https://github.com/observablehq/plot/compare/fil/fix-bin-reverse...mbostock/fix-bin-sort
but thinking about it some more, I’m not sure it makes sense: if the bin transform is composed with the stack transform, then yes, the reverse option will be consumed. But the sort option will not be consumed—it’ll just be ignored—since that sort option is only consumed by maybeTransform (which we’re talking about bypassing). So I think maybe the root of the confusion here is that there are two different reverse options, one for the stack transform, and one for the basic transform:
https://github.com/observablehq/plot/blob/7e45462fc1e8026ba9daebbae4f7371da0ad6ceb/src/transforms/stack.js#L53
https://github.com/observablehq/plot/blob/7e45462fc1e8026ba9daebbae4f7371da0ad6ceb/src/mark.js#L230
Here we want to pass through the reverse option to the stack transform, but not the reverse option to the basic transform (which should travel together with the sort option, unlike the stack transform, which uses an order option).
So, I’m thinking that being explicit about who the reverse option is intended for is actually desirable here. It does have a meaning (together with the sort option) for the bin transform, albeit a subtle one affecting the order of the data within the bin. That would suggest doing stackY({..binX(…), reverse: …}) if you do want to pass the reverse option explicitly to the stack transform.
But we still don’t have a way to apply sort and reverse after binning, because the basic transform always composes transforms in a fixed order:
https://github.com/observablehq/plot/blob/7e45462fc1e8026ba9daebbae4f7371da0ad6ceb/src/mark.js#L235-L237
This makes me think that maybe the basic transforms should be pulled out into functions, so you can say binX(sort(order, options)) if you want to sort before binning and sort(order, binX(options)) if you want to sort after binning. And similarly filter(test, options) to replace the filter option and reverse(options) to replace the reverse option. We should ideally maintain backwards-compatibility even if we deprecate the existing options, though.

Closing in favor of #494.


Failed popups display continuously in p4 comparing mode

Does this issue occur when all extensions are disabled?: Yes/No

VS Code Version: 1.83.1
OS Version: Windows 10 Enterprise, version 20H2, build 19042.2965

Steps to Reproduce:

Install the extension "Unity" (It will install more extensions for C# automatically)
Use the extension "Perforce for VS Code" as a Perforce integration for VS Code.
Open a C# project (Unity) under Perforce workspace.
Edit a C# source file.
Select the panel "Source Control" on the left side.
Click on the file that was edited in step 4. The editor shows the file in version comparing mode.
There are 2 failed popups displayed with messages as below. They keep popping up every time you scroll the editor.

Request textDocument/semanticTokens/range failed.
Request textDocument/inlayHint failed.
Please notice that no failed popup when the C# source file is edited in normal mode (open it from the panel Explorer).

/causedByExtension

This issue is caused by an extension, please file it with the repository (or contact) the extension has linked in its overview in VS Code or the marketplace for VS Code. See also our issue reporting guidelines. If you don't know which extension is causing the problem, you can run Help: Start extension bisect from the command palette (F1) to help identify the problem extension.
Happy Coding!


Load balancer to multiple containers of same app

Hi,
I want to know if I can do the following with this?
nginx_proxy (Also load_balancer)
|_website1_container1
|_website1_container2
|_website1_container3
|_website2_container1
|_website2_container2
|_website2_container3
If it's possible how can I achieve it?

@evertramos Thanks. Also, how can make this work behind a proxy? I already try to embed it in the docker-compose.yml under enviroment, and also in the .conf file for docker.
I obtain the following:
Traceback (most recent call last):
File "/usr/lib/python3.6/site-packages/urllib3/connectionpool.py", line 597, in urlopen
self._prepare_proxy(conn)
File "/usr/lib/python3.6/site-packages/urllib3/connectionpool.py", line 807, in _prepare_proxy
conn.connect()
File "/usr/lib/python3.6/site-packages/urllib3/connection.py", line 316, in connect
conn = self._new_conn()
File "/usr/lib/python3.6/site-packages/urllib3/connection.py", line 169, in _new_conn
self, "Failed to establish a new connection: %s" % e)
urllib3.exceptions.NewConnectionError: <urllib3.connection.VerifiedHTTPSConnection object at 0x7ff5952486d8>: Failed to establish a new connection: [Errno -3] Try again
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.6/site-packages/requests/adapters.py", line 449, in send
timeout=timeout
File "/usr/lib/python3.6/site-packages/urllib3/connectionpool.py", line 641, in urlopen
_stacktrace=sys.exc_info()[2])
File "/usr/lib/python3.6/site-packages/urllib3/util/retry.py", line 399, in increment
raise MaxRetryError(_pool, url, error or ResponseError(cause))
urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='acme-v01.api.letsencrypt.org', port=443): Max retries exceeded with url: /directory (Caused by ProxyError('Cannot connect to proxy.', NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x7ff5952486d8>: Failed to establish a new connection: [Errno -3] Try again',)))
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.6/site-packages/simp_le.py", line 1583, in main
return main_with_exceptions(cli_args)
File "/usr/lib/python3.6/site-packages/simp_le.py", line 1567, in main_with_exceptions
persist_new_data(args, existing_data)
File "/usr/lib/python3.6/site-packages/simp_le.py", line 1457, in persist_new_data
client = registered_client(args, existing_data.account_key)
File "/usr/lib/python3.6/site-packages/simp_le.py", line 1395, in registered_client
client = acme_client.Client(directory=args.server, key=key, net=net)
File "/usr/lib/python3.6/site-packages/acme/client.py", line 274, in init
net.get(directory).json())
File "/usr/lib/python3.6/site-packages/acme/client.py", line 1168, in get
self._send_request('GET', url, **kwargs), content_type=content_type)
File "/usr/lib/python3.6/site-packages/acme/client.py", line 1117, in _send_request
response = self.session.request(method, url, *args, **kwargs)
File "/usr/lib/python3.6/site-packages/requests/sessions.py", line 533, in request
resp = self.send(prep, **send_kwargs)
File "/usr/lib/python3.6/site-packages/requests/sessions.py", line 646, in send
r = adapter.send(request, **kwargs)
File "/usr/lib/python3.6/site-packages/requests/adapters.py", line 510, in send
raise ProxyError(e, request=request)
requests.exceptions.ProxyError: HTTPSConnectionPool(host='acme-v01.api.letsencrypt.org', port=443): Max retries exceeded with url: /directory (Caused by ProxyError('Cannot connect to proxy.', NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x7ff5952486d8>: Failed to establish a new connection: [Errno -3] Try again',)))

@maufonfa
I quiet did not understand what you trying to run behind a proxy.... to run loadbalancer you should look to traefik with kubernetes... you will be fine with that I think.


Embed Block messages

Closes #81
This builds off https://github.com/crossbeam-rs/crossbeam-channel/pull/100, and reverts back to the use of UnsafeCell within Slot<T>.
There are a few things I would like to discuss in this PR:

[ ] I changed the naming of slots to msgs. I don't have a strong preference on naming, but found myself thinking of that field as messages anyways so I did it for clarity.
[ ] I am unsure if msgs needs to be type UnsafeCell<Slot<T>>; 0]. The type [Slot<T>; 0] still passes, and allows a few get()s to be removed. I see the importance of msg in Slot<T> being UnsafeCell, but it's not as clear in this situation.
[ ] There is a new msg_count field in Block<T>. Do we want to consider embedding msg_count in start_index and just do some bitwise operations to retrieve the respective values? It would decrease the memory size of a Block<T> but also limits the size that start_index can be (which will still be large).

Any other feedback is welcome!

This looks pretty good! :)
Regarding block allocation and deallocation, it seems we always turn a *mut Block<T> into a Shared<Block<T>> right after allocation, and we only destroy blocks in Shared<Block<T>> by turning them into *mut Block<T>. I therefore suggest to change the signatures like this:
impl<T> Block<T> {
    fn new<'a>(start_index: usize, msg_count: usize) -> Shared<'a, Block<T>>;
    unsafe fn destroy(ptr: Shared<Block<T>>);
}

The constructor doesn't really need to be unsafe because it doesn't do anything crazy. This will save us a lot of conversion between Shared and raw pointers and reduce the number of unsafe blocks.
Regarding the Travis failure, let's bump the minimum required Rust version to 1.28. (bump it in README.md and in .travis.yml).
Some bikeshedding:

slots vs msgs: I think of msg as a single concrete message and of slot as a place where a message can be stored but isn't necessarily present at all times (i.e. a slot can be empty or filled). So I'd probably go with slots.

msg_count reminds me of Vec::len(), while it's actually more like Vec::capacity(). I'd probably name this field cap because it's the capacity of a block, i.e. how many messages the block can hold. Note that we already have a constant named BLOCK_CAP, which would now be good to rename to MAX_BLOCK_CAP. :)

Regarding UnsafeCell, msgs doesn't need to be of type [UnsafeCell<Slot<T>>; 0]. Note that Slot<T> itself consists of ready (of type AtomicBool, which allows shared mutability) and of msg (of type UnsafeCell<ManuallyDrop<T>>, which is already an UnsafeCell). So we're covered.
We could shave off a few bytes from Block<T> by embedding msg_count into a few bits of start_index or into the tag of next, but I wouldn't worry about it now. I believe the overall impact of the additional field is very small anyway.

@stjepang Thank you for the explanations! Good catch on the method signatures; I'll change those.


Increase cf app instances to 2

Description
Increase cf app instances to 2, in order to avoid downtimes during diego cell evacuations
Motivation and Context
As a stratos operator, in order to not have downtime during CF maintenance, I need to ensure stratos follows CF app best practices at https://docs.cloudfoundry.org/devguide/deploy-apps/prepare-to-deploy.html#increase-availability
How Has This Been Tested?
Manual test.
Documentation mentions stratos is compatible with a cluster mode
https://github.com/cloudfoundry-incubator/stratos/blob/v2-master/docs/overview.md

Cloud Foundry Session Affinity is used to ensure that when scaling up the Console Application to multiple instances, the user is also directed to the instance which will know about them and their endpoints (since each Application instance will have its own local SQLite store).

Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] Docs update
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)

Checklist:

[ ] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] I have followed the guidelines in CONTRIBUTING.md, including the required formatting of the commit message

I think we'd rather retain the default of a single instance when there is no persistent storage (for more info see here). This is a message I think we need to make clearer in the docs (#3406).


Card Holder can reset the cards

Describe the feature you'd like to have added
Having a set of already-configured cards in the card holder can be a bit of a pain to reset.  To do so, you'd have to first turn off the card holders auto-collect function, eject the affected cards, put the cards in a crafting table (2x2 or 3x3), then put the card back into the holder.
Instead, I suggest either

a single button that'll reset all cards in the card holders inventory to default setting, re-sort/re-organize the cards
{key modifier}-[right/left]click to reset the individual cards.

Additional information
No response

I'll add it to the 'nice to have' features list :)


Project descriptions field: edit vs display show different text

Reported on the Markup Safe 3 board by @jinluyuan
Steps

Go a project on osf.io that you are an admin on

On the project overview page, click on the project description to edit

In the edit text field, enter <ch&nge>

Also enter, <>&

Save changes

Expected
I would expect to see exactly what I type after save. #4 should show up as <>&
Actual
#3 get escaped out entirely and #4 looks like  <>&

#4 is the expected behavior: If you entered <>&, then it should display as written. If it rendered differently (as <>&), that would indicate that the text you entered was being treated as code. We do not want that.
#3 is more problematic. In a local test, it wasn't "escaped" (rendered as inert text)- rather, the sanitizer removed the parts of your input that looked like HTML. Since that was all that was entered, the result was a blank description. This can be confirmed by adding more text outside the <brackets> and seeing that it is preserved after submission.
Pinging @jinluyuan to see if there's something I'm missing.

Clarification
Trello card
The original card described this issue like this:

... [T]his issue with project descriptions only occurs on Staging. This issue also only involves the angled brackets < > and not the ampersand &

@nicipfeiffer's comment shows successful replication of the bug:

I am able to replicate the bug where entering "<>&" in the project description and saving shows "<> &" on the project overview page in the description. It also appears that way on the search results page.

@abought's comment provides explanation to the behavior above

Ah, the problem was only on the first instance of data entry? (rather than whenever you toggle between fields) I think that makes sense under the currently twisted definition of logic we are using.

Because bleach instantly changes < to < on save, the field now accurately represents what was saved in the database. (aside from the trickery we do to make ampersands look good)

By contrast, on production, we get the exact opposite bug: sequences were being inserted in as code, so that typing <>& and saving on production displays <>&.

The problem
Essentially, the issue is that before this release, if a user inputted angled brackets (< and >) into the project description, the angled brackets would be displayed in the description. However, with the Markup Safe 3 feature, now the angled brackets are not displayed properly; instead they have escaped into < >.
This is a critical issue because angled brackets are common in science, specifically for math equations. For example, a user would not be able to include a statement like "the p-value < 0.05" in the description.
This issue does not concern the ampersand & since it displays properly when inputted.

The text is a literal depiction of how the data is stored in the database and will remain an issue so long as we use bleach in the current form as our sanitizer. That said, I do recognize that for abstracts, these symbols have value.
We have had problems in the past with < and > being unescaped in the display layer, so while we can special case ampersands, < and > are much trickier cases. Any change made here will need more thought and some care. Long term, the optimal fix would be to convert the entire OSF to markupsafe + deprecate/replace use of bleach (which is what is putting the escaped text into the database).
It might help to clarify the title to a single focused issue, such as "cannot use > or < in project description field".


docs: add article about Kubernetes Dashboard

Issue - https://github.com/clastix/capsule/issues/551
Slack discussion - 1, 2, 3
I don't know English well, so if I've worded something incorrectly, please correct me.

@zvlb I fixed some typos and the missing setting to get it published in the menu.
Waiting for the website preview, tho it's superb! <3


Make releases with Circle

All commits now run the test and release-test jobs. The release job is only run on main and when tagged.
This is an adaptation of the barebones implementation found on the goreleaser website: https://goreleaser.com/ci/circle/

Already implemented.


Please add a "stop debugging and reactivate mods" button

Very important if the module gets into a weird state.  I am currently dealing with "0 modules still in lsit, remaining steps infinity" which is has rendered the module unusuable without clearing it out.

Added this.
Though i'd be kinda interested in how you encountered "0 modules still in list". If you have steps to reproduce that, please add an issue for it! (Although i got a small fix for that in the next patch as well, so that shouldn#t happen again)


Unable to configure mq multi instance on Azure AKS

Hi Team,
I'm trying to spin up multi-instance mq in AKS, when I try to run the install.sh script the pod is not coming up and in events it is showing up unable to mount or attach volumes. But when I check the relevant PVCs the status is showing as bound. not sure what exactly is causing this error. Looking for assistance on this issue.
Thanks in Advance
Pod Events:
Unable to attach or mount volumes: unmounted volumes=[qm data log], unattached volumes=[default mqsc-cm-helmsecure ini-cm-helmsecure qm data log kube-api-access-sg6pr trust0]: timed out waiting for the condition
Unable to attach or mount volumes: unmounted volumes=[data log qm], unattached volumes=[data log kube-api-access-sg6pr trust0 default mqsc-cm-helmsecure ini-cm-helmsecure qm]: timed out waiting for the condition
Unable to attach or mount volumes: unmounted volumes=[qm data log], unattached volumes=[qm data log kube-api-access-sg6pr trust0 default mqsc-cm-helmsecure ini-cm-helmsecure]: timed out waiting for the condition
MountVolume.MountDevice failed for volume "pvc-68153b01-3341-4b98-a9b3-97da5f92fea1" : rpc error: code = Internal desc = volume(rg-aksnodes-rbs-dip-nonprd-e2-01#f999eab35c0084287808317#pvcn-68153b01-3341-4b98-a9b3-97da5f92fea1###multi-mq) mount f999eab35c0084287808317.file.core.windows.net:/f999eab35c0084287808317/pvcn-68153b01-3341-4b98-a9b3-97da5f92fea1 on /var/lib/kubelet/plugins/kubernetes.io/csi/file.csi.azure.com/4db2af01f85980738f013d75431e57c42e780c51163016cafe11251f668ca304/globalmount failed with mount failed: exit status 32 Mounting command: mount Mounting arguments: -t nfs -o rw,vers=4,minorversion=1,sec=sys f999eab35c0084287808317.file.core.windows.net:/f999eab35c0084287808317/pvcn-68153b01-3341-4b98-a9b3-97da5f92fea1 /var/lib/kubelet/plugins/kubernetes.io/csi/file.csi.azure.com/4db2af01f85980738f013d75431e57c42e780c51163016cafe11251f668ca304/globalmount Output: mount.nfs: access denied by server while mounting f999eab35c0084287808317.file.core.windows.net:/f999eab35c0084287808317/pvcn-68153b01-3341-4b98-a9b3-97da5f92fea1
(combined from similar events): Unable to attach or mount volumes: unmounted volumes=[log qm data], unattached volumes=[log kube-api-access-sg6pr trust0 default mqsc-cm-helmsecure ini-cm-helmsecure qm data]: timed out waiting for the condition

Have you tried the multi-instance sample. Looking at the error message it appears the wrong mount options are being used. The sample creates a new storage class with the correct mount options. It’s worth saying that most people use NativeHA as it avoids the storage issues, and generally provides better performance.

Hi @callumpjackson
Yes, we have tried the multi-instance scripts which is throwing the volume mount error,
Thanks in Advance.

Sorry for the delayed follow-up, did you manage to resolve this issue?

Close due to inactivity - feel free to re-open if applicable.


printf: add missing vector length modifiers

The length modifier is required with a vector specifier.
Fixes https://github.com/KhronosGroup/OpenCL-CTS/issues/2039

Could we get this merged please?

Merging as this should be uncontroversial, and has 2 different vendor approvals already.


tideways-daemon: init at 1.8.28

Description of changes
Packaged the Tideways Daemon/CLI/PHP-Probe for Nix.
So it's possible to Profile a PHP application with an Tideways subscription.
Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[X] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[X] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[X] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[X] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[X] Fits CONTRIBUTING.md.

You have any preference here?

You have any preference here?

How about extension.nix ? :)

@shyim Can we move on with this?

@shyim Do you think you could have a look at this PR at some point?


CloudMessaging sample, cannot find IMessageDelegate definition

i've implemented my AppDelegate.cs for my project using the sample CloudMessaging AppDelegate as and example.  In both my solution and the GoogleApisForiOSComponents solution visual studio does not find a definition for IMessageDelegate.
Is there a missing "using" statement or missing code?

ach, sorry.  Wrong created the wrong issue!  WIll close and open the correct one.


Add weekday Int property

The weekDay property has been renamed to weekdayName since it is
the string representation of the weekday and I’ve added a property for
conveniently accessing the day of the week as an int.

Excellent. Thanks!


[BEAM-9547] Add initial implementation of sample

This PR adds basic support for sample. We should be able to point to sample(n) as an order-insensitive alternative to the frequently used head() operation.

GitHub Actions Tests Status (on master branch)

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

I was actually thinking about this and sample with weights is actually not as simple as multiplying the weights themselves by a uniform distribution and taking the top N. For example, suppose one has an element with weight 2, and a million elements with weights 1. With this algorithm the weight-two element would not be just twice as likely to be the top element, it'll be there 50% of the time. We probably should disallow this until we can work out the math.
It does work for equal weights of course.

https://www.cti.gr/images_gr/reports/99-06-02.ps looks like it does the trick. Rather than weight * random(), one needs to take the largest N of random() ^ (1/weight). This is the same as the log(random()) / weight. I'll prepare a PR.

nice thank you for checking out the math, I'll send you a PR to update. It would be nice if we could validate this somehow but I'm not sure how to test deterministically and efficiently


Don't Merge! PR real time test for source branch full build

Docs Build status updates of commit 675fdf1:
:clock10: Pending: waiting for processors (26 builds ahead of you)
:warning: Docs Build is busy, currently there are 26 builds ahead of this one, for more information you can view the Build queue graph on the Docs Portal.

Docs Build status updates of commit 675fdf1:
:clock10: Full build: the average full build time is 7 min(s) 43 sec(s), this is based on the last 30 build(s) for this repository.

Docs Build status updates of commit 675fdf1:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docfx.json
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Inconsistent return object of user_playlist_tracks

If given a playlist_id user_playlist_tracks returns a paging object,
if given a full url it returns playlist object (full). Tested on this playlist.
Code snipper below demonstrates the difference:
import spotipy
from spotipy import util

token = util.prompt_for_user_token(
    username,
    client_id=_client_id,
    client_secret=_client_secret,
    redirect_uri=_redirect_uri,
)
sp = spotipy.Spotify(auth=token)

url = "https://open.spotify.com/user/didrik0510/playlist/7ehrAeEI4icxsqlvGX02gW?si=LaDb4nMATFqmeGVgvhHObQ"
id_ = "7ehrAeEI4icxsqlvGX02gW"
print(sp.user_playlist_tracks(username, url).keys())
print(sp.user_playlist_tracks(username, id_).keys())

Having it written in the documentation would be nice, with the explanation what input results in what output type.

I had a similar problem in the past. I don't remember if this commit was enough for the fix but do check out if this helps https://github.com/plamere/spotipy/pull/324/commits/baf96493cc9b6aa51073c59a9f74edf6df444549.

If given a playlist_id user_playlist_tracks returns a paging object,

This is the correct behaviour.

if given a full url it returns playlist object (full). Tested on this playlist.

This should return the same paging object as passing the playlist_id. But with the full HTTP URL, sp.user_playlist_tracks ends up mimicking sp.playlist which is an incorrect behaviour.


TEST PR for Jenkins-Github Integration

### This is a TEST PR which will be DELETED after validating the integration test.

Starting pipeline for PR validation -> PR-88-1

Starting pipeline for PR validation -> PR-88-4

Starting pipeline for PR validation -> PR-88-6

Starting pipeline for PR validation -> PR-88-1

Verified Github-Jenkins integration of docker-pega-web-ready. Closing PR on the same note.


Support agent-check

https://github.com/haproxy/haproxy/blob/master/doc/configuration.txt
Its quite useful when your applications are taking control of setting specific weights or even bringing the backend down or up
haproxy performs a tcp check where you specify the current load of each of backend server and therefore it also manipulates weights
an example: https://github.com/helpshift/herald
https://icicimov.github.io/blog/server/HAProxy-dynamically-adjust-server-weight-using-external-agent/

From Edin in Slack https://appscode.slack.com/archives/C0XQFLGRM/p1533121284000265

https://twitter.com/copyconstruct/status/1028769758726901760?s=19

This is a potential solution to support the workflow in #1196

https://cbonte.github.io/haproxy-dconv/1.9/configuration.html#5.2-agent-check


💡 [REQUEST] - Allow to have multiple icon sets specified

Describe the feature
When using Quasar Framework via Quasar CLI, it's possible to have multiple icon sets at the same time. It would be helpful to have the same option in Nuxt.
Additional information

[ ] Would you be willing to help implement this feature?
[ ] Does this feature have a potential to break existing features?

Its possible to import mulltiple icon sets via extras.fontIcons at nuxt.config.ts.
export default defineNuxtConfig({
  quasar: {
    extras: {
      fontIcons: [
        // Enter any number of icon set collections you want that comes with `@quasar/extras`
      ]
    }
  }
}

Unless you mean something else, can you provide an example of what you mean.

It works! Now I have a config like this:
quasar: {
  plugins: ["Dialog", "Loading", "LoadingBar", "Notify", "Dark"],
  extras: {
    font: "roboto-font",
    fontIcons: ["mdi-v7"],
  },
},

With this setup I can use both material-icons (enabled by default via iconSet) and mdi-v7 set explicitly in extras.fontIcons. What's the difference between extras.fontIcons vs iconSet then?

iconSet is the icon set used by quasar components. (Like QEditor, QDate, QColorPicker)
extras.fontIcons simply imports font icon sets so you can use them with QIcon or any of the components with a icon prop.

Thanks @Maiquu . This makes it clear :)


Complete missing names for integrated contributor data

Occasionally in the corpus list of translations, a contributor is perfectly identified by one or more identifiers, but has the name missing name. This is created by the dataprofile SPARQL query in case no name label is found:
https://github.com/kbrbe/beltrans-data-integration/blob/5f34c735ee6c4bb04c78f15fe1d7d6d682981128/data-integration/dataprofile-aggregated.sparql#L285
In the current corpus version this occurs only 20 times.
For cases like http://data.bibliotheken.nl/id/thes/p069444668 the source really does not provide a schema:name.
Currently the label of an integrated record is added from the data source based on which the record is created.
Updates from other data sources do not add names as otherwise we get too many variants.
However, sometimes at least one of the data integration sources contains a label or at least a family or given name.
A subsequent step after the integration could try to add labels for integrated records without label.

Five of the twenty cases had the following authors: Colette (14729237);missing name(p068975686,cb119298072).
In this particular case, the missing name of the author was Colette, thus these three are actually the same person authority. The correct label could have been fetched from the KBR data (14729237).
However, the existing ISNI wasn't extracted from KBR XML thus never ended up in the RDF representation.
The ISNI was not properly identified, because in the catalogue the string ends with a newline. The following commit adapted the code: https://github.com/kbrbe/beltrans-data-integration/commit/46730dacf0ba66e5d1ae1d060e742c8d41724dc6
Now leading or trailing spaces, newlines etc are first removed before it is tried to identify the ISNI identifier.


Ensure storage options are properly initialized

If one of storage GraphRoot or RunRoot are specified, but the other is not, c/storage will not use the default, and will throw an error instead. Ensure that in cases where this would happen, we populate the fields with the c/storage defaults ourselves.

@TomSweeneyRedHat I think this resolves the issue you were seeing in the baseline tests

/approve

@mheon, ack.  I'll give it a test run.  FWIW, looks like F28 Cloud tests aren't hip atm.

yeah LGTM

bot, retest this please

bot, retest this please

I don't think so - I don't think --root is a very common option, it's mostly just for tests (your baseline tests, the integration tests, etc)

bot, retest this please

LGTM

bot, retest this please

/lgtm


Writable/Readable loading animation isnt working

The Writable/Readable loader css isnt loading. When you click the button it becomes hidden instead of using loading animation.

Fixed in https://github.com/direktiv/direktiv-ui/pull/310


Received an unexpected status code: 412

Describe the bug
I logged in with my Apple ID, but the verification failed.
Received an unexpected status code: 412. If you continue to have problems, please submit a bug report in the Help menu.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
Able to log in and use normally
Screenshots

Version

OS: 13.5.2
Xcodes:1.10.0

I encountered a 412 error when I attempted to log in with a user not associated with an Apple Developer account. It was crucial to accept the developer program license agreement before I could log in successfully.

当我尝试使用未与 Apple 开发者帐户关联的用户登录时，遇到 412 错误。在成功登录之前，接受开发者计划许可协议至关重要。

Thank you for your answer, I can use it normally


feat: add REST support and usher in a 0.4.0 release

Sure, I'll wait with the release

Please do merge though, so I can rebase the Ruby update work atop it.


Possible to set CT values instead of RGB?

Hello,
I was wondering if there was a way to manually set color temperature (CT) values for Philips WIz bulbs using HomeKit. Another developer on the Hubitat side of things has created a device code for these bulbs here, which allows users to set the CT values (in addition to RGB/HSV). This lets us control the brighter light settings as well as the pre-installed scenes (CT values #6000-6032). I was wondering if there was any way to control these capabilities in Homebridge, as well.
TL;DR - If I could get Siri to turn any of these bulbs a true white (or activate any of their pre-installed scenes without Siri shortcuts) using my voice, I would be so happy.
Thanks!

Please see https://github.com/kpsuperplane/homebridge-wiz-lan#color. It's out of my hands unfortunately


Change price info label

Change price info label from "Incl. shipping" to "Shipping incl." for better readability and easier understanding.


Learning to contribute to the open source (#85288)

added my name to the contributors.md file

Added Fahim to Contributors.md

Final merge commit


I checked the checkbox to remeber this computer, but everytime a new fingerprint is created.
Do you have any ideas do avoid this?

Sorry I use it only for continuous deployment, not for local development.

Thank you for the answer.
I figured out and discovered why. I just have to map the volume ~/.android into /root/.android like this:
docker run -it --rm \
    ...
    -v ~/.android:/root/android \
    ...
    marcoturi/ionic adb devices

Just for curiosity, could you give me an example how do you use this image?

Thank you @byjg for sharing the solution, I'm going to close this issue.
About the using of this image, take a look to this repo. In summary, after every push on my repo (mirrored on gitlab), gitlab pick this image from the docker registry and use it to run npm commands for unit test, e2e and finally build for android. Final build is available in gitlab artificts.
Feel free to ask anything else


Code clean-up: create functions and error handling

Problem
The code currently does not have very many functions that can provide more modularity and clarity to the code. It also has some error handling but not a bunch. It tends to fail and shut down, but if dealing with large jobs (multiple modules for multiple counties), the code should be written to keep going. These seemed like intertwined tasks so I put them in the same ticket.
Goal
Update the different submodules of the program to use functions. Implement error handling so that the code will continue the larger orchestration regardless of where it hits the error.
Modules Completed

[ ] orchestrator
[x] scraper
[ ] parser
[ ] cleaner
[ ] updater

Scraper has been re-written to have more modular functions in this pull request.
Next is parser.

This ticket is going to be broken down into smaller tickets and assigned to different folks. Tickets here:
#103
#115
#118
#122
#124
#128

Accordingly, this ticket can be closed.


Update ARCSI release to version 3.6.1

Updated to the latest version of ARCSI

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.


setup automations to publish and refresh the service libraries - PHP

For the v1 and beta graph service libraries, we're currently relying on the generator pipeline to refresh the metadata (CSDL), kick off the generation process and commit changes to the target repo. The pipeline needs to be updated to also refresh the OpenApi descriptions, and use kiota instead of typewriter for the source generation.
AB#10343

closed by https://github.com/microsoftgraph/MSGraph-SDK-Code-Generator/pull/715


NacosConfigurationProperties does not support prefix

springboot  annotation ConfigurationProperties  supports prefix .
but NacosConfigurationProperties  does not .
will NacosConfigurationProperties  support prefix propertie one day ?

To support

wait nacos-client 1.0.2

#118


chore: run tests on all platforms

Currently tests run only on linux ubuntu-latest. We should ideally run all tests on all supported platforms for all pull requests.
Supported Platforms
          [
            linux-x64-gnu,
            linux-x64-musl,
            linux-arm64-gnu,
            linux-arm64-musl,
            linux-ia32-gnu,
            darwin-arm64,
            darwin-x64,
            win32-x64-msvc,
            win32-x64-gnu,
            win32-arm64-msvc,
            win32-ia32-gnu,
          ]

/bounty 50$

/attempt 1427

fixed in #1432


ASU mobile menu fixes. Incorporates elements into global navigation.

Work within closes #6.

Total scope of work:

Deploy asumobile.js file to assemble the mobile menu elements once the page has been loaded.
jQuery solution, not a JSON solution. Keeps the methodology of doing this work inline with other ASU Engineering products.
Altered view at the 990px mark to no longer display the side navigation.
Adjusted global header and footer CSS for additional look/feel concerns.


Version update?

Are you planning on updating to the most recent versions of Minecraft?

there's another mod called simply colored blocks and yes its available for 1.16.5.