Replace types.Matcher(s)? with labels.Matcher(s)?

Closes #1682.

cc @aSquare14

cc @aSquare14

Thanks @aSquare14 for looking into this. Will also review tomorrow.

Thanks @aSquare14 for looking into this. Will also review tomorrow.

I'm sorry, but I won't find time to review this today. I'll try again tomorrow.

I'm sorry, but I won't find time to review this today. I'll try again tomorrow.

For more context, this is how a silence looks now in the v1 API:
{
  "status": "success",
  "data": [
    {
      "id": "c8c3dcd6-3832-4107-8b9c-8f40ce200da2",
      "matchers": [
        {
          "Type": 2,
          "Name": "foo",
          "Value": "bar"
        }
      ],
      "startsAt": "2021-01-20T17:23:19.624814507Z",
      "endsAt": "2021-01-20T19:23:03.566Z",
      "updatedAt": "2021-01-20T17:23:19.624814507Z",
      "createdBy": "beorn",
      "comment": "blablab la",
      "status": {
        "state": "active"
      }
    }
  ]
}

This is how it looked before:
{
  "status": "success",
  "data": [
    {
      "id": "c8c3dcd6-3832-4107-8b9c-8f40ce200da2",
      "matchers": [
        {
          "name": "foo",
          "value": "bar",
          "isRegex": true
        }
      ],
      "startsAt": "2021-01-20T17:23:19.624814507Z",
      "endsAt": "2021-01-20T19:23:03.566Z",
      "updatedAt": "2021-01-20T17:23:19.624814507Z",
      "createdBy": "beorn",
      "comment": "blablab la",
      "status": {
        "state": "active"
      }
    }
  ]
}

For more context, this is how a silence looks now in the v1 API:
{
  "status": "success",
  "data": [
    {
      "id": "c8c3dcd6-3832-4107-8b9c-8f40ce200da2",
      "matchers": [
        {
          "Type": 2,
          "Name": "foo",
          "Value": "bar"
        }
      ],
      "startsAt": "2021-01-20T17:23:19.624814507Z",
      "endsAt": "2021-01-20T19:23:03.566Z",
      "updatedAt": "2021-01-20T17:23:19.624814507Z",
      "createdBy": "beorn",
      "comment": "blablab la",
      "status": {
        "state": "active"
      }
    }
  ]
}

This is how it looked before:
{
  "status": "success",
  "data": [
    {
      "id": "c8c3dcd6-3832-4107-8b9c-8f40ce200da2",
      "matchers": [
        {
          "name": "foo",
          "value": "bar",
          "isRegex": true
        }
      ],
      "startsAt": "2021-01-20T17:23:19.624814507Z",
      "endsAt": "2021-01-20T19:23:03.566Z",
      "updatedAt": "2021-01-20T17:23:19.624814507Z",
      "createdBy": "beorn",
      "comment": "blablab la",
      "status": {
        "state": "active"
      }
    }
  ]
}

So in principle, we could provide a customized MarshalJSON method to emulate the old behavior. Not sure if it is worth it, as the v1 API might not be in much use anymore. But it would definitely be the conservative move.

So in principle, we could provide a customized MarshalJSON method to emulate the old behavior. Not sure if it is worth it, as the v1 API might not be in much use anymore. But it would definitely be the conservative move.

@beorn7 totally missed that. Given how trivial is the change to ensure backwards compatibility, I don't see a reason NOT to do it. For the sake of supporting MatchNotEqual and MatchNotRegexp matcher types, will add  isEqual key to the object.

@beorn7 totally missed that. Given how trivial is the change to ensure backwards compatibility, I don't see a reason NOT to do it. For the sake of supporting MatchNotEqual and MatchNotRegexp matcher types, will add  isEqual key to the object.

It's easy to miss because it's not covered by tests. And it's probably not covered because it's the old deprecated v1 API.
But if you could keep the backwards compatibility easily, that would certainly be the best solution.

It's easy to miss because it's not covered by tests. And it's probably not covered because it's the old deprecated v1 API.
But if you could keep the backwards compatibility easily, that would certainly be the best solution.

Actually, now looking at it... the v2 api doesn't support all matcher types, either:
  matcher:
    type: object
    properties:
      name:
        type: string
      value:
        type: string
      isRegex:
        type: boolean
    required:
      - name
      - value
      - isRegex

Actually, now looking at it... the v2 api doesn't support all matcher types, either:
  matcher:
    type: object
    properties:
      name:
        type: string
      value:
        type: string
      isRegex:
        type: boolean
    required:
      - name
      - value
      - isRegex

Yes, but it doesn't break by simply replacing types.Matchers with labels.Matchers. (The v1 API uses the JSON marshaling of the respective Matchers type, while v2 has Swagger marshaling of the protobuf type.)
So yeah, to truly support negative matchers for silences, the v2 code has to be adjusted, too, which means getting into the Swagger definitions and regenerate the code etc.
But I think the scope of this PR is merely to replace types.Matchers with labels.Matchers, without changing anything else yet, i.e. back the current feature set with labels.Matchers. Next step would be to extend the APIs and the web UI to actually support negative matching. (And in the UI, that's actually a bit more involved because we probably want to replace the current two text inputs and a checkbox for regexp with just one text input similar to what we have for alert filtering. Also, deep-linking into a filled silence creation form needs to support the new matching, but the old links should still keep working.)

Yes, but it doesn't break by simply replacing types.Matchers with labels.Matchers. (The v1 API uses the JSON marshaling of the respective Matchers type, while v2 has Swagger marshaling of the protobuf type.)
So yeah, to truly support negative matchers for silences, the v2 code has to be adjusted, too, which means getting into the Swagger definitions and regenerate the code etc.
But I think the scope of this PR is merely to replace types.Matchers with labels.Matchers, without changing anything else yet, i.e. back the current feature set with labels.Matchers. Next step would be to extend the APIs and the web UI to actually support negative matching. (And in the UI, that's actually a bit more involved because we probably want to replace the current two text inputs and a checkbox for regexp with just one text input similar to what we have for alert filtering. Also, deep-linking into a filled silence creation form needs to support the new matching, but the old links should still keep working.)

amtool also needs to support negative matching with silences. (Luckily, it is already using labels.Matchers.)

amtool also needs to support negative matching with silences. (Luckily, it is already using labels.Matchers.)

So yeah, as said, just keep this PR to what the headline says: Remove types.Matcher(s) from the codebase without changing anything feature-wise yet.

So yeah, as said, just keep this PR to what the headline says: Remove types.Matcher(s) from the codebase without changing anything feature-wise yet.

Given how trivial is the change to ensure backwards compatibility

Famous last words, right there. I've tried plugging MarshalJSON on three different places and every time I end up breaking the same test - ./test/with_api_v1/acceptance.TestSilenceDelete. Will try digging deeper tomorrow.

Given how trivial is the change to ensure backwards compatibility

Famous last words, right there. I've tried plugging MarshalJSON on three different places and every time I end up breaking the same test - ./test/with_api_v1/acceptance.TestSilenceDelete. Will try digging deeper tomorrow.

Good luck. (o:

Good luck. (o:

Argh, I obviously need to run make all in order for the acceptance tests to be against latest changes. @beorn7 adding a new key shouldn't break compatibility, so I've added the isEqual key in order not to serve wrong data to v1 clients. Is that okay?

Argh, I obviously need to run make all in order for the acceptance tests to be against latest changes. @beorn7 adding a new key shouldn't break compatibility, so I've added the isEqual key in order not to serve wrong data to v1 clients. Is that okay?

Sounds good. I'll have a look ASAP.

Sounds good. I'll have a look ASAP.

Let me just rebase on top of master given that #2460 just got merged.

Let me just rebase on top of master given that #2460 just got merged.

LGTM 🥳

LGTM 🥳


Bug: Defined Routes work only for GET method, POST, PUT, DELETE return 303 redirect to main page

PHP Version
8.0
CodeIgniter4 Version
4.2.4
CodeIgniter4 Installation Method
Manual (zip or tar.gz)
Which operating systems have you tested for this bug?
Windows, Linux
Which server did you use?
apache
Database
MySQL 8.0
What happened?
I am trying implement basic REST API and I am facing peculiar problem with routes. I have defined routes
$routes->group(
    'api/v1',
    [
        'namespace' => 'App\Controllers\Api\V1',
        'filters' => 'ApiGuard',
    ],
    static function ($routes) {
        $routes->resource('companies', [
            'placeholder' => '(:num)',
            'only' => ['index', 'show', 'create', 'update', 'delete', 'edit']
        ]);
    }
);

And I have defined functions as such
<?php

namespace App\Controllers\Api\V1;

use CodeIgniter\API\ResponseTrait;
use CodeIgniter\HTTP\IncomingRequest;
use App\Models\Api\V1\AuthenticationModel;
use CodeIgniter\RESTful\ResourceController;

class Companies extends ResourceController
{
    use ResponseTrait;
    /**
     * Instance of the main Request object.
     *
     * @var CLIRequest|IncomingRequest
     */
    protected $request;
    protected $format = 'json';

    public function index()
    {
        $AuthModel = new AuthenticationModel();
        $response = $AuthModel->select('company_id, com.*')
            ->join('companies AS com', 'company_id = com.id')
            ->where('api_token', $this->request->getHeaderLine('X-Api-Token'))
            ->findAll();
        return $this->respond($response);
    }

    public function show($id = null)
    {
        $AuthModel = new AuthenticationModel();
        $response = $AuthModel->select('company_id, com.*')
            ->join('companies AS com', 'company_id = com.id')
            ->where('api_token', $this->request->getHeaderLine('X-Api-Token'))
            ->where('company_id', mb_substr($this->request->getUri()->getSegment(4), 0, -5))
            ->findAll();
        return $this->response->setJSON($response);
    }

    public function create($id = null)
    {
        print_r('test');
        $response = 'test';
        return $this->respond($response);
    }
    public function update($id = null)
    {
        print_r('test');

        $response = [
            'test' => 'test'
        ];
        return $this->respond($response);
    }
    public function edit($id = null)
    {
        print_r('test');
    }
    public function delete($id = null)
    {
    }
}

And only GET method works, POST, PUT and DELETE redirect to main page.
Steps to Reproduce
Create Controller which extends ResourceController, add appropiate rules as shown in https://codeigniter.com/user_guide/incoming/restful.html and send request via postman.
Expected Output
Reaching defined function in routes
Anything else?

CSRF token verification enabled in filters? For all POST requests, this is often confusing for beginners as there is no error notification.
If protection is enabled, you need to add code CSRF to postman or disable routes API in  filter file

Yes! I have CSRF enabled. I will look into exempting API calls from this check. over 20 hours of scratching my head. I thought it is something wrong with me. For a future would be great if there was a error message. And yes indeed I am self taught novice trying to wire some ideas

See https://www.codeigniter.com/user_guide/libraries/security.html#redirection-on-failure
Error message can be read and redirect disable

@rorysteward I sent a PR #6406


Change Calc "length" function to a symbol instead

The length of an object or list is pretty fundamental, and seems to be used a lot, so it would be nice to have a more compact way to reference it, but would still be a meaningful symbol, so it would be easy to remember.
One possibility is @# ... I would like to just use @ but since this is the format prefix, the grammar gets really tricky.

Another possibility is just to use @# as a format. The grammar would work (so far I haven't been able to get the grammar to work right with the other possibilities), but this should be easy. The downside is that formats currently only work between expressions, so a lot of places where we would use "length" would get to be more complicated (using an interpolated string, for instance), thus negating the utility of this change. But I'll play around with it anyway...

Well, due to the complexities of dealing with rangeExpr vs expr with "length" it appears that parsing length without the built-in function protocol isn't going to work. Going to close this as unworkable (at least for now).


Android version?

Any samples of how to do this as an Android app?
I need to support both (especially since Android sells 5 devices per 1 sold by Apple).

Already working on it here: https://github.com/benoitvallon/react-native-nw-react-calculator/pull/1
:smiley:

It will be nice to see Android example as well as isomorphic version (aka universal JavaScript)

@ColCh a universal javascript version was in the list of things that I would have liked to do in this project although I think it will not be a very good example because this project is really simple (doesn't really involve routes for example).
But if you still would like to see it, please create an other issue as this one was specific to android.
Thank you


Bring back type checking in CI

cc @wemeetagain @tuyennhv Are we intentionally not running check types in ci anymore?
@mpetrunic I prefer bringing it back, it was removed when we optimize CI last time as I remember, need to check with @wemeetagain
Originally posted by @tuyennhv in https://github.com/ChainSafe/lodestar/pull/1431#issuecomment-679028782

We already check types when we build


fix(ITs): activated config-gov ITs

:tada: This PR is included in version 0.0.9 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Supports New Folder Structure

Updates for preceding/succeeding titles and bug fix used for the MHLDs transformer.

Closing in favor of #3


Need clarification or help about dragging a query to move it across folders

To move a query from one folder to another the article mentions "drag-and-drop a query onto the folder." Need more illustration of how to do this. If a folder is open how do I drag a query and at the same time open another folder? As I expected, dragging doesn't work across 2 different tabs/windows.
Also, if it is possible to move multiple queries at once (a bulk operation), then document it. If not, please mention as a limitation for now.

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

ID: 2a0aaa6c-4ed9-119c-539b-8a54c5ff562f
Version Independent ID: e4bae907-2938-c870-4798-731b927edc94
Content: Manage and organize your queries in Azure Boards and Azure DevOps - Azure Boards
Content Source: docs/boards/queries/organize-queries.md
Product: devops
Technology: devops-agile
GitHub Login: @KathrynEE
Microsoft Alias: kaelli

@ashishguptaiitb -- Ashish, thank you for your question and feedback.  Please consider these resources:

Azure DevOps Services
Azure DevOps on Stack Overflow

@KathrynEE -- Kathryn, please look into this potential documentation issue.

Thanks for sharing the resources @WilliamAntonRohm . I checked that these resources are very high-level pages and do not contain the specific answer that I am looking for. Why I think the help page in question should contain this info? Because SEO - upon searching via Google, this is the first article I landed on and it has a relevant title. It has partly relevant info (just not complete, hence this issue to complete it). I am almost at the source of the info - at least where Google wants me to be. Thinking not as a MSFT employee but as a customer, I think I am in the right place and the info is documented elsewhere (or missing). In either case, the info should be moved here (or documented afresh), without me having to check out generic resources and again start searching for what I already searched. I'm afraid our customers also go into such loops when we suggest generic pages with a genuine intent to help.

@ashishguptaiitb - Thank you for your inquiry. Draggins a query across different tabs and windows doesn't work. Also, you can only drag a query that is outside a folder into a folder.
You can't select more than one query at a time in the web portal, so you can't do a bulk move into a folder from the web portal.
However, you can do multi-select and bulk move into a folder from Visual Studio/Team Explorer.
I will update the article to reflect these limitation and implementation elements.


Fix corgi pup fixture

About the PR

It was wierd before, now it not
Why / Balance

Technical details

Media

[x] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Breaking changes

Changelog

all this those is move the sprite a few pixels up


Database persistence: connection to a redis host with SSL/TLS encryption can be opted-in

Hi,
So following this issue https://github.com/Netflix/conductor/issues/1424 (tldr; I needed conductor to be able to connect to a redis host with TLS encryption enabled), here is a small pull request that enables encrypted communication between conductor and the configured redis host. The encryption can be opted-in by setting workflow.dynomite.cluster.hosts.useSSL to true in settings.properties.
What I did is setting up an SSL context using platform default security providers and random generator (cf. Java documentation). As I said in my issue message, I am not an expert in SSL/TLS encryption, so I would be happy to get feedbacks about that, to know if that is the recommended/safest choice or not.
The conductor-postgres-persistence:test tasks fails on my machine but it does not seem to fail on the latest travis build, and I do not think to have touched anything related to it (but I may be mistaken), however the conductor-redis-persistence:test runs fine.
Thank you for reviewing this :)

Hey @DemisB, are you still planning to work on this feature?

Hello @kishorebanala, sorry for leaving this PR inactive for so long, I have been away without a computer for pretty much the whole year 2020. I still plan on working on this feature, hopefully within the upcoming weeks!


fix(ytmusic-borders): change colors

Made in favor of #37
I think these changes are more in line with the policies regarding "we dont change the appearance, only the colors".
Before:

After:

Still don't know what the radius of that account applet should be? Probably 5 like it was?

let me know when its ready for a merge :heart:

let me know when its ready for a merge :heart:

@kerichdev
There is one misc change I have in my mind though, just a small color correction to the "usage popups" you might get?
I am on vacation currently so can't add that myself :3
I can probably just make an extra PR for it?
So yeah, can merge

sure, an extra pr later on sounds good - i don't have lots of time for development myself these days
thanks for the contributions!!


Bloxy uses an outdated, bloated package, 'request' for HTTP requests

Use axios instead, less bloated, way lighter.
Right now bloxy is very heavy, considering the results here, bloxy is awfully bloated and most of it is, in fact, the package request.
Transferring to Axios (or any other, up to date HTTP request package) shouldn't be very difficult or time-consuming.

I will perform a performance test to see the performance of axios and the performance of the request.
If the difference is not great enough, I will continue to use request.
Personally I doubt I am going to change as request has a lot of features that axios don't have.
We'll see.

I highly support this idea. Request got deprecated and even it's authors discourage it's use. It's bloated and there are better alternatives, like node-fetch, got or axios.
Most of them have more features than request, and the performance is better too so I don't see why you shouldn't change.

Their size is much smaller than request. If you search, you will find countless articles that say that request is outdated, big and slow while other libraries (most of them praise axios as the most popular choice, but node-fetch or got are bit easier to use in my opinion) are more updates, much smaller and faster.


An example for creating AWS AMIs with packer.

I have written a working AWS AMI builder using this library and thought it is worth to put the link in this repo.

Pull Request Test Coverage Report for Build 31

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 98.667%

Totals

Change from base Build 29:
0.0%

Covered Lines:
53

Relevant Lines:
53

💛  - Coveralls


Game crashes when i call GetColor("_BaseColor")

What is the game you are using with IL2CPP Resolver?
SCP:SL
Details:
when I call GetColor or SetColor methods with name _BaseColor via unityexplorer everything runs fine but when I call using il2cpp resolver the game crashes.
Screenshots/Video:
No response
Minimal, Complete and Verifiable Example code:
Unity::CComponent* clr = gm->GetComponent("MeshRenderer")->GetMemberValue<Unity::CComponent*>("material");
Color cv=clr->CallMethod<Color>("GetColor","_BaseColor");
printf_s("%f\n",cv.r);
printf_s("%f\n",cv.g);
printf_s("%f\n",cv.b);

unchecked code, try it.
note: do not use any native struct in unity, just treat them as Component
Unity::CComponent* cv=clr->CallMethod<Unity::CComponent*>("GetColor","_BaseColor");
cv->GetMemberValue<float>("r");
cv->GetMemberValue<float>("g");
cv->GetMemberValue<float>("b");


Add Type Alias and Fix Record Type Translation in ts2mls

Related Issue: #134

I think we may separate namespace and alias from class and trait parsing(case (KEYWORD(k @ ("class" | "trait" | "type" | "namespace")), l0) :: c), because their syntax should be different. e.g. a namesapce should not have a parent namespace. :thinking:

I find it's better to be very lax and do semantic validation afterwards, because parsing errors are usually worse than semantic errors.

OK! And to keep NewParser.scala unchanged, I genetate type alias like this type Option: (None) | (Some<A>). Is this syntax acceptable?

Not really no, we need = here. It's fine to extend NewParser.scala for that. But it should check that = is used for aliases and : for classes.

Also fixed a typo getTypeParametes.

After addressing the comments don't forget to use "squash and merge" and clean up the commit message.


Changes for windows compile

Modified cmake.
altered WinSock include.
Changed calloc to std::vector

@nsg I think this looks great, I'd like to squash and merge this one. What do you think?

@petterarvidsson yes, looks good! +1 for a squash and merge.

@caseymcc I wanted to remove the two last commits, therefore I squashed your branch locally to only keep your commit. This was merged here: https://github.com/konstructs/client/commit/7d538a2b39023c6afa7248aa81ec5593c7abc983
I will therefore close this PR now. In the future, please take the time to tidy up the commits in your PR using rebase so that it can be merged directly. This will also leave it as merged rather than closed as in this case.
Thank you for your contributions!

For refernce: https://github.com/konstructs/client/pull/201/commits/a9520fbe6d01da1a74059796598846627c5047bc is now part of master.


Hybird key switching works incorrectly for alpha = 4

In test change special primes to 4 primes. The difference in key switched polynomial and expected polynomial result (i.e. polynomial multiplication) is of logQ bits. Instead it should not be more than 10-15 bits.

Wrong place


Create MANIFEST.in

Hello Daniel,
some files are missing in the SDIST on Pypi, so I added this file.
Otherwise, the SDIST can't be compiled:
>>> Jobs: 9 of 10 complete, 1 failed                Load avg: 0.93, 0.30, 0.10
 * Package:    dev-python/Adax-local-0.1.3
 * Repository: HomeAssistantRepository
 * Maintainer<EMAIL_ADDRESS> * Upstream<EMAIL_ADDRESS> * USE:        abi_x86_64 amd64 elibc_glibc kernel_linux python_targets_python3_9 test userland_GNU
 * FEATURES:   network-sandbox preserve-libs sandbox userpriv usersandbox
>>> Unpacking source...
>>> Unpacking Adax-local-0.1.3.tar.gz to /var/tmp/portage/dev-python/Adax-local-0.1.3/work
>>> Source unpacked in /var/tmp/portage/dev-python/Adax-local-0.1.3/work
>>> Preparing source in /var/tmp/portage/dev-python/Adax-local-0.1.3/work/Adax-local-0.1.3 ...
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/dev-python/Adax-local-0.1.3/work/Adax-local-0.1.3 ...
>>> Source configured.
>>> Compiling source in /var/tmp/portage/dev-python/Adax-local-0.1.3/work/Adax-local-0.1.3 ...
 * python3_9: running distutils-r1_run_phase distutils-r1_python_compile
python3.9 setup.py build -j 6
Traceback (most recent call last):
  File "/var/tmp/portage/dev-python/Adax-local-0.1.3/work/Adax-local-0.1.3/setup.py", line 6, in <module>
    with pathlib.Path("requirements.txt").open() as requirements_txt:
  File "/usr/lib/python3.9/pathlib.py", line 1252, in open
    return io.open(self, mode, buffering, encoding, errors, newline,
  File "/usr/lib/python3.9/pathlib.py", line 1120, in _opener
    return self._accessor.open(self, flags, mode)
FileNotFoundError: [Errno 2] No such file or directory: 'requirements.txt'
 * ERROR: dev-python/Adax-local-0.1.3::HomeAssistantRepository failed (compile phase):
 *   (no error message)
 *
 * Call stack:
 *     ebuild.sh, line  127:  Called src_compile
 *   environment, line 2930:  Called distutils-r1_src_compile
 *   environment, line 1255:  Called _distutils-r1_run_foreach_impl 'distutils-r1_python_compile'
 *   environment, line  490:  Called python_foreach_impl 'distutils-r1_run_phase' 'distutils-r1_python_compile'
 *   environment, line 2608:  Called multibuild_foreach_variant '_python_multibuild_wrapper' 'distutils-r1_run_phase' 'distutils-r1_python_compile'
 *   environment, line 2149:  Called _multibuild_run '_python_multibuild_wrapper' 'distutils-r1_run_phase' 'distutils-r1_python_compile'
 *   environment, line 2147:  Called _python_multibuild_wrapper 'distutils-r1_run_phase' 'distutils-r1_python_compile'
 *   environment, line  782:  Called distutils-r1_run_phase 'distutils-r1_python_compile'
 *   environment, line 1246:  Called distutils-r1_python_compile
 *   environment, line 1029:  Called esetup.py 'build' '-j' '6'
 *   environment, line 1688:  Called die
 * The specific snippet of code:
 *       "${@}" || die -n;

Btw, I hope you don't mind I use your component in https://github.com/onkelbeh/HomeAssistantRepository, like I do already with many of your other work.

Sorry, seems my mouse was too fast :-)


Not working with image

Readmore js is not working properly with an image only. Can any please suggest any solution.

I am finding it's not working properly with an image AND content. I have a block with an image in the hidden section and when expanded the section height is still not tall enough, it looks like possibly the height of the image is not being factored in.

I discovered what is causing this bug -- for me at least. If you have an image using srcset then the height of it is NOT calculated. Using the same image, same setup exactly, but without srcset and it works perfectly.

Was this issue fixed, as srcset is only becoming more and more standard practice?


Introduction to Matplotlib

Hey DCP participants, good to see you here
This issue will helps readers in giving all the guidance that one needs to learn about Matplotlib. Tutorial to Matplotlib and how it's applied using sample code.
"Project Title" should be the "Issue Title" mentioned here.
If you like to work on this issue, follow the given guidelines for code as well as for the README. You have to be as elaborative as possible. Make sure you also maintain the project structure provided. Just comment and get it assigned. Issues are alloted on FCFS basis.
The main intention of this repo is to educate beginners with all the concepts related to datascience so that they could feel confident to apply these things learnt in practical exposure.
Enjoy your open source journey ahead. 😎

I want to work on this issue under Hacktoberfest 21. Please assign it to me.

Yes sure, provide the details of the approach you would follow? @Rishita11

I will start from scratch, explaining what is Matplotlib, how to install it, creating different types of graphs with Pyplot, and few other things along with the code snippet.

Ok great. Issue assigned to you. @Rishita11


loading uint32 from numpy

Is this a bug?
In [18]: xnd.from_buffer(np.uint32(3))
Out[18]: xnd([3, 0, 0, 0], type='4 * uint8')

I would expect the output to be xnd(3, type='uint32').

Yes, it's a bug in NumPy. :-)
import numpy as np
from _testbuffer import ndarray

x = np.uint32(3)
y = ndarray(x)
print(y.shape)
print(y.strides)

247         if (PyObject_GetBuffer(exporter, base, flags) < 0)
(gdb) n
250         nd->head = &nd->staticbuf;
(gdb) p base
$1 = (Py_buffer *) 0xacc180
(gdb) p *base
$2 = {buf = 0xd0b700, obj = 0xd0b6f0, len = 4, itemsize = 1, readonly = 1, ndim = 1, format = 0x658c1b "B", shape = 0xacc190,
  strides = 0xacc198, suboffsets = 0x0, internal = 0x0}
(gdb) q

Supposed to be fixed in master over at NumPy:
https://github.com/numpy/numpy/pull/10564

Ah great! Thanks for finding this for me.


How to use promises with firebase?

So I import import PromiseKit and then try
  FIRDatabase.database().reference().child("somechild").removeValue().then  {

}
obviously this doesnt work, and i was wondering what I'am missing to make promises work with firebase

What I'am trying to accomplish is to remove four firebase references all at once with a single catch method. With nodeJs I would easily use
Promise.all ([
someRef.remove(),
someRef.remove(),
someRef.remove(),
someRef.remove()
]).then (function({
}).catch({
//handle error
})
what is the equivalent for that in swift

Check out when.

So I import import PromiseKit and then try
FIRDatabase.database().reference().child("somechild").removeValue().then  {…}
obviously this doesnt work...

We don't currently have an extension for Firebase the way we do for e.g. Alamofire, so we have no out-of-the-box functionality like this unfortunately. We probably should, as we used to for Parse and Firebase is the common replacement. We make this kind of stuff easy though. For example, to create an overload of Firebase's removeValue() that returns a Promise:
extension FIRDatabaseReference {
    func removeValue() -> Promise<FIRDatabaseReference> {
        return PromiseKit.wrap { resolve in
            removeValue(completionBlock: resolve)
        }
    }
}

Then you can use removeValue() as in your example above. This will also, in turn, let you utilize our when, as @zlangley mentioned, which acts as Promise.all from your example:
PromiseKit.when(resolved: [someRef1.removeValue(), someRef2.removeValue(), someRef3.removeValue(), someRef4.removeValue()]).then { results in
    //…
}

Take note of the two variants of when though (when(resolved:) and when(fulfilled:)) as they behave differently.


Help Needed On My Image

Challenge Add Borders Around your Elements has an issue.
User Agent is: Mozilla/5.0 (Windows NT 6.1; rv:53.0) Gecko/20100101 Firefox/53.0.
Please describe how to reproduce this issue, and include links to screenshots if possible.
My code:

<link href="https://fonts.googleapis.com/css?family=Lobster" rel="stylesheet" type="text/css">

CatPhotoApp

<img class="thick-green-border"

Kitty ipsum dolor sit amet, shed everywhere shed everywhere stretching attack your ankles chase the red dot, hairball run catnip eat the grass sniff.

Purr jump eat the grass rip the couch scratched sunbathe, shed everywhere rip the couch sleep in the sink fluffy fur catnip scratched.

Hi @nsidem there's something wrong with your code. next time you should ask first at Help room before posting a github issue.

@nsidem yes, please ask for help in the chat room. This area is for issues with the site itself.


Revise documentation to better describe API layers

First, thanks again for all this work!
Second I'm going to dwell on the non-perfect parts of automerge-swift experience (for me), but generally it seems to do what I want and I plan to use it... (assuming I can ever actually progress my own app code far enough). I'm not sure that I've ever followed an open source projects development quite so closely. I love the core, and also can't wait for more packaged versions of the networking stuff. The local-first architecture enabled by automerge really excites me.
My general thought is that I wonder if automerge-swift is trying to do too much. When I first started looking at the package I was expecting expecting something along the lines of Document Data Model, but with a Swift API.
Then I started reading the Five Minute Quick Start and got very confused. It didn't look like JSON, there was this new concept of encoders. The code didn't fit the JSON automerge model that I was expecting. Also I wasn't sure what to do with AutomergeText. I wondered if maybe lists and maps weren't yet supported by Swift wrapper.
Once I realized that those things were all extras built over the Document everything got much easier to use and understand. I think these extras might be useful, but I feel they also distract from the core of what automerge does and how it can be most efficiently used.
Small issue, but I'm also unsure about adding Observable to Document. I understand it makes working with SwiftUI easier, but it also (to me) distracts from the core API. I'm not sure it can scale usefully if your document has many items, it seems to lead API in wrong direction. Adds a new concept that isn't really core to automerge. I think of automerge more like a magic data structure, that does diffs and patches, and application code is responsible for wrapping those changes up into events.
Should you actually change anything? Very possibly not :) Extracting package seems like a lot of work to me, and it doesn't really affect functionality. I would maybe add a somewhere early in the documentation (such as in Five Minute QuickStart) that there are two levels of API in the project... use Document directly for low level API.
What I'm really interested in now is the network stuff, so I hesitate to post any of this and possibly slow you down. :/
Thanks,
Jesse

Thanks @jessegrosjean - love the feedback, and I'll definitely work to capture more before taking any big specific actions like splitting things up. That said, I'll definitely work on improving the documentation to make it clear there's two levels of API in this package, well - after I finish up the work on the automerge-repo and peer to peer syncing support that I've been working on in the demo app.

related feedback: #86

@jessegrosjean If you're inclined, I'd love you to take a look at the proposed updated documentation in https://github.com/automerge/automerge-swift/pull/127 - I included instructions in the PR for pulling it down and building it in Xcode directly, as I don't have a location to publish it (the GitHub pages are hosting the current set), but if that would be significantly easier for you, I can arrange a fork of the repo somewhere with a link to read through.
I just finished a first pass, and it's probably full of typos and errors, but I thought I'd let it sit a few days and then come back with an editing eye to fix up any terrible flubs along those lines.

I think the API layers section helps a lot and would have solved my initial confusion.
Few random thoughts:
"The lowest layer lets you interact with the Automerge document" it's a mouthful, but maybe "cross platform" could fit in there somewhere... "The lowest layer lets you interact with the cross platform Automerge document API". Not really that important.
In the section Using the dynamic schema > Document-based Model I would remove the discussion of AutomergeText. That confuses me, because I understand that section to be about the core API. Leave AutomergeText discussion to custom coder discussion.
I'm not sure if the transferrable conformation for automerge documents should be listed as an API layer. Seems less important to then the other layers to me and could just be mentioned in Saving, loading, section.
Hope that helps

Awesome feedback @jessegrosjean , thank you!


add builder checks for check_compatibility

@bramstein Apologies for breaking the builder. Since you folks are now relying on it as well, I'm going to write some unit tests so we don't break anything going forward. The test in this PR ensures that your PR works. I plan to add more going forward.

@m4rc1e That's great, thanks! We have very similar tests internally that run through CI whenever we update our foundry template repository. That's how we caught this quite early :smile:


SSL for Plesk IP

Is it possible to secure my Plesk CP if I access it via an IP address and not a domain name?
IE I access my CP via XXX.XX.X.XXX:8443

It is the restriction of Let's Encrypt CA: https://community.letsencrypt.org/t/certificate-for-public-ip-without-domain-name/6082 and https://community.letsencrypt.org/t/certificate-for-static-ip/84


Make operations have explicit types and unify them under a trait

Currently, we have a struct that determines which operation to execute based on the operation field which is an enum.
I propose to have different structs for different operations and unify them under a trait so we can have a vector of trait objects to execute a series of transformations.
This will also allow us to implement new methods on these structs that map a JsonValue to the operation while checking if everything is valid. Also, we can implement custom Deserialize on this struct to do this using serde so the user can directly deserialize from a JSON string.
This architecture is similar to the original jolt implementation so this will make using their tests easier and make our API closer to the original.
What do you think? @galibey @sehz

Sounds good to me


Error : Cannot get final name for export 'getRuntime' of ./node_modules/openai/_shims/auto/runtime-node.mjs

Checked other resources

[X] I added a very descriptive title to this issue.
[X] I searched the LangChain.js documentation with the integrated search.
[X] I used the GitHub search to find a similar question and didn't find it.
[X] I am sure that this is a bug in LangChain.js rather than my code.
[X] The bug is not resolved by updating to the latest stable version of LangChain (or the specific integration package).

Example Code
const chain = ConversationalRetrievalQAChain.fromLLM(
      model,
      vectorStore.asRetriever()
    );
    // Format the messages
    const formattedChatPrompt = await chatPrompt.formatMessages({
      text: question,
    });

    const res = await chain.invoke({
      question,
      chat_history: formattedChatPrompt,
    });

Error Message and Stack Trace (if applicable)
Failed to compile.

<EMAIL_ADDRESS>+ 66 modules
Cannot get final name for export 'getRuntime' of ./node_modules/openai/_shims/auto/runtime-node.mjs```

### Description

I am trying to use Langchain + NextJs for hosting my chatbot , and it works fine in the development server ,
But when I try to compile my code to host on the vercel server, I am getting the error

### System Info

Langchain info ->
```elixir
<EMAIL_ADDRESS>| MIT | deps: 17 | versions: 265
Typescript bindings for langchain
https://github.com/langchain-ai/langchainjs/tree/main/langchain/

keywords: llm, ai, gpt3, chain, prompt, prompt engineering, chatgpt, machine learning, ml, openai, embeddings, vectorstores

dist
.tarball: https://registry.npmjs.org/langchain/-/langchain-0.1.34.tgz
.shasum: 3c28a6bde69c5f4ac3931376d34187de0e44e43a
.integrity: sha512-4TVH2mzhITrLPOeyfGucfqo1+360DJMl4+ItG56ApxVY1krO4hV0EkqcRLAxW06W6sIue8mIU70WbyhBYH68Ug==
.unpackedSize: 4.1 MB

dependencies:
@anthropic-ai/sdk: ^0.9.1     binary-extensions: ^2.2.0     langchainhub: ~0.0.8          p-retry: 4                    zod: ^3.22.4
@langchain/community: ~0.0.47 js-tiktoken: ^1.0.7           langsmith: ~0.1.7             uuid: ^9.0.0
@langchain/core: ~0.1.56      js-yaml: ^4.1.0               ml-distance: ^4.0.0           yaml: ^2.2.1
@langchain/openai: ~0.0.28    jsonpointer: ^5.0.1           openapi-types: ^12.1.3        zod-to-json-schema: ^3.22.3

maintainers:
- nfcampos<EMAIL_ADDRESS>- jacoblee93<EMAIL_ADDRESS>- andrewnguonly<EMAIL_ADDRESS>- davidduong<EMAIL_ADDRESS>- hwchase17<EMAIL_ADDRESS>- basproul<EMAIL_ADDRESS>
dist-tags:
latest: 0.1.34     next: 0.1.29-rc.0

published 2 days ago by jacoblee93<EMAIL_ADDRESS>
Platform -> windows 10
Node -> v20.9.0

@dosu
I tried doing this
/** @type {import('next').NextConfig} */
const nextConfig = {
  transpilePackages: ['html-to-text'],
  webpack: (config ) => {
    config.externals = [...config.externals, "hnswlib-node","closevector-hnswlib-node","langchain","openai","@langchain", "@langchain/community","@langchain/groq"];

    return config;
  },
};

export default nextConfig;

and now my openai error is gone somehow
but now new error comes of @langchain/core
<!--StartFragment-->
<EMAIL_ADDRESS>+ 15 modules
--
14:07:23.264 | Cannot get final name for export 'Tool' of<EMAIL_ADDRESS>14:07:23.264 |
14:07:23.269 |
14:07:23.270 | > Build failed because of webpack errors

<!--EndFragment--> ```
and this doesnt seem to go away even if i add @langchain or something in my externals

hello @dosu,
I tried to run npm run build and this error popped up.

here are my next.config.js configurations:


[CLOSED] Add DirectoryReadOnlyException()

Issue by Yomodo from Tuesday Jan 13, 2015 at 22:27 GMT
Originally opened as https://github.com/alphaleonis/AlphaFS/issues/86

Inherits from System.IO.IOException.

Comment by alphaleonis from Wednesday Jan 14, 2015 at 10:40 GMT

Can a directory even be Read-only on an NTFS system?

Comment by Yomodo from Wednesday Jan 14, 2015 at 14:31 GMT

Yup.

Comment by Yomodo from Wednesday Jan 14, 2015 at 15:27 GMT

And yet, this works:
string dir = @"C:\_Junk\testFolder";

if (!System.IO.Directory.Exists(dir))
    System.IO.Directory.CreateDirectory(dir);

// Outputs: "Directory"
Console.WriteLine(System.IO.File.GetAttributes(dir));

System.IO.File.SetAttributes(dir, System.IO.FileAttributes.ReadOnly);

// Outputs: "ReadOnly, Directory"
Console.WriteLine(File.GetAttributes(dir));

// Throws: System.IO.IOException: Access to the path 'C:\_Junk\testFolder' is denied.
System.IO.Directory.Delete(dir);

Comment by alphaleonis from Wednesday Jan 14, 2015 at 14:34 GMT

According to MSDN:
FILE_ATTRIBUTE_READONLY
A file that is read-only. Applications can read the file, but cannot write to it or delete it. This attribute is not honored on directories. For more information, see "You cannot view or change the Read-only or the System attributes of folders in Windows Server 2003, in Windows XP, or in Windows Vista.

Comment by Yomodo from Wednesday Jan 14, 2015 at 15:44 GMT

http://referencesource.microsoft.com/#mscorlib/system/io/file.cs,770
Browsing .NET source reveals Win32 SetFileAttributes is used for directories.
I guess MSDN docs are incorrect or outdated.

Comment by alphaleonis from Wednesday Jan 14, 2015 at 16:02 GMT

Okay, cool... Maybe it was just in earlier versions of windows then or something. I think you can't set it from Windows Explorer anyway, but then again, Windows Explorer doesn't support long paths either so I guess that's not a very good source for information ;)

Comment by Yomodo from Wednesday Jan 14, 2015 at 16:07 GMT

@alphaleonis Right! That was a copy paste. grrrr

Comment by alphaleonis from Wednesday Jan 14, 2015 at 16:04 GMT

@Yomodo  but doesn't the new exception have the wrong error code? (DIR_NOT_EMPTY)?
(the s_errorCode field)


Feature request: adding console.log(string,bytes32)

I often find myself needing to log bytes32 and currently this only works with console.logBytes32.
Is there a possibility of extending console to add in console.log(bytes32) or console.log(string,bytes32)?

Related: https://github.com/NomicFoundation/hardhat/issues/1440

Maybe console2 could pick up these changes quicker than waiting for changes to console.
And couldn't I just be required to explicitly cast to bytes32 in the case of ambiguity. For example: console.log('var', bytes32(0x1337)). This would still be a nicer UX compared to console.logBytes32, imo, but either is good.

I agree, not having to use console.logBytes32 would be a better DX.

I'd say PRs for things like this into console2.sol are good, but we should leave console.sol 1:1 with hardhat. @ZeroEkkusu let me know if that seems reasonable.

And couldn't I just be required to explicitly cast to bytes32 in the case of ambiguity. For example: console.log('var', bytes32(0x1337)). This would still be a nicer UX compared to console.logBytes32, imo, but either is good.

Yea if there's ambiguity in your call solc will just force you to cast and be explicit, which I think is ok

Agree with console/console2.

Is there a possibility of extending console to add in console.log(bytes32) or console.log(string,bytes32)?

As hinted at above, the reason it's console.logBytes32(bytes32) and why we shouldn't add support for console.log(bytes32) (and similar for the overload with a leading string arg) is because then something like console.log("x") becomes ambiguous, as solc doesn't know if "x" is bytes32 or a string. So this would end up being a big breaking change for users by requiring type casts to existing code. As a result I'm going to close this 🙂
If you'd prefer the overload + required casting, I'd suggest leaving a comment on https://github.com/foundry-rs/foundry/issues/3782 since there may eventually be a vm.consoleLog type of cheat


[Godot 4 alpha 5] Editor crashed when setting font size to bigger

Godot version
v4.0.alpha5.official [d7d528c15]
System information
Windows11, Vulkan, NVIDIA GT 1050ti
Issue description
Godot Editor crashed when setting font size to bigger.
Steps to reproduce

Create an empty project and scene, and add "RichTextLabel" node.
Create a "Font" resource on the node, with any OTF or TTF.
Change the value of font size to bigger.

Minimal reproduction project
No response

Can't reproduce with fd0716cba
Please provide minimal project

OK, But I don't know why I can't attach .zip to Github(I got "is not included in the list"), so I placed it on Google Drive.
https://drive.google.com/file/d/1dN2PP9vmpd_9KYCPtDFjLwVM96uo8azR/view?usp=sharing

I also found out the font that only support English character won't make the editor crash when I changing the size.

I tested this project on Linux Mint, but it won't crash when doing the same behaviour.

Can't reproduce, font size is limited by texture's size (1024 x 1024), but even it is won't fit its printing errors, but won't crash.

I got the same Issue with Godot v3.5.beta4. It seems to be also present in beta2 and beta3 but not in beta1.
I cannot reproduce it on Linux and MacOS so it seems to be exclusive to Windows.
Video ends, when Godot crashes:
https://user-images.githubusercontent.com/16074028/163862544-79fe17b0-3222-4ce7-8a58-9c70586952e9.mp4
Minimal reproduction:
large-font-minimal-reproduction.zip

Maybe it has something to do with the freetype update?
https://github.com/godotengine/godot/pull/55124
This was also cherrypicked for 3.5.beta2.

I just built Godot from source (on Windows with MinGW) and wasn't able to reproduce it.
I tried:

master
3.x
https://github.com/godotengine/godot/commit/b6968ab0602bfe72c71d4efcafe608f9cac36252 (wich is the commit 3.5.beta4 is built with)

I also tried with target=debug_release.
None of them crashed with methods above 🤔.
I wonder if this has something to do with the way the prerelease binaries are built?

Nevermind... it does crash with use_lto=yes

Maybe it has something to do with the freetype update?
https://github.com/godotengine/godot/pull/55124
This was also cherrypicked for 3.5.beta2.

I'm pretty sure it's the freetype version at this point.
When I reverted the commit from the PR on the 3.x branch it didn't crash anymore.
I also tried to update to freetype to 2.12.0 but hat some conflicts in the linking phase.
Couldn't test on master though because I didn't manage to get a running build with the use_lto option active.
I'll give it another try tomorrow but if anybody has inputs regarding the two building issues I faced I'd be very thankful 😁

Likely fixed by https://github.com/godotengine/godot/pull/61805.

Likely fixed by #61805.

Just tested on alpha14 and it seems to work fine. Thanks!


Auto updates disable themselves on restart (foss)

Describe the bug
Auto updates disable themselves on restart with the foss version. I guess this is for fdroid, but theres also people who arent using that, so maybe the fix should be a info panel popping up to say it shouldnt be enabled if you are using a store to update it with
To Reproduce

Enable "Check for updates"
Restart the app
The option turns itself off

Expected behavior
Keep itself on
Screenshots
Smartphone (please complete the following information):

Device: Samsuck A33 5G
OS: OneUI 6.0 (Android 14)

interesting, this should be disabled only for fist launch on foss version, thanks, i will take a look


Update content.mdx

The Lucia links for authorization have been updated

Description (required)
Updated the Lucia Authorization links.

Related issues & labels (optional)

Closes #
Suggested label:

my discord username: tanner_kandor

Hello! Thank you for opening your first PR to Astro’s Docs! 🎉
Here’s what will happen next:

Our GitHub bots will run to check your changes.
If they spot any broken links you will see some error messages on this PR.
Don’t hesitate to ask any questions if you’re not sure what these mean!

In a few minutes, you’ll be able to see a preview of your changes on Vercel 🥳

One or more of our maintainers will take a look and may ask you to make changes.
We try to be responsive, but don’t worry if this takes a few days.


additional margin to code, kbd:[] and menu:[]

Hi @mojavelinux, could you tell me if it is possible to extend fragment of the inline code in a way that it doesn't eat next characters?
== test 1

Lorem `ipsum` dolor sit `amet`, consectetur adipiscing elit.
Maecenas feugiat fermentum kbd:[pretium]. Cras eu dolor imperdiet justo mattis
pulvinar. Cras nec lectus ligula. Proin ``elementum``luctus elit, a tincidunt quam
facilisis non. Nunc quis mauris non turpis finibus luctus. Maecenas ante
sapien, sagittis quis accumsan in, feugiat quis sem. Praesent et auctor libero.

My first silly attempt was to change
module InlineTextAligner
  module_function
  def render_behind fragment
    document = fragment.document
    text = fragment.text
    x = fragment.left

    ##################################
    if (border_offset = data[:border_offset])
      x += border_offset
    end
    if (border_width = data[:border_width])
      x += border_width
    end
    ##################################

    y = fragment.baseline
    align = fragment.format_state[:align]
    if align == :center || align == :right
      if (gap_width = fragment.width - (document.width_of text)) != 0
        x += gap_width * (align == :center ? 0.5 : 1)
      end
    end
    document.draw_text! text, at: [x, y]
    fragment.conceal
  end

But as expected (by me :) ) it didn't work.
So is it even possible? To extend the inline code fragment on X?
Now you have to kind of tune the border offset and border width otherwise it highlights before and after characters.

Nope, this is not possible. Prawn doesn't provide any way to do it. That's why we have border-offset. Because the best we can do is extend the background/border.
You could hack it by inserting a thin space, but that's pretty brute force and not very precise.
I've filed an issue in Prawn for this to be considered. See https://github.com/prawnpdf/prawn/issues/1128 If it gets implemented there, then we can add left-to-right padding to inline elements.

Although your hack is very clever, it doesn't work because it modifies the fragment too late. We need to be able to control the width of the fragment that Prawn uses when arranging the text fragments. And as far as I can see (and best remember), that's not possible.

Ok, I see. Thx!

We need to be able to control the width of the fragment that Prawn uses when arranging the text fragments.

It appears this might now be possible (after recent updates to the converter). I'll look into it.

Btw, you were actually on the right path. It just requires changes in a few more places.

I think I got it. It's a little patchy, but it works very well.

Thx a lot! Can't test it yet (on vacation) but will definitely do it in a week or so.

Just tested it -- works flawlessly! Awesome, thank you!

I'm so happy to hear that. Thanks for testing!


Docker error Config provider Config.Reader failed module Mix is not available

Describe the bug
When running docker compose, the docker image returns an error
To Reproduce
Steps to reproduce the behavior:
docker compose up of
https://github.com/papercups-io/papercups/blob/master/docker-compose.prod.yml
version: "3.2" services:   papercups:     image: papercups/papercups:latest     ports:       - "3000:3000"       - "4000:4000"     command: sh -c "sleep 10 && /entrypoint.sh db createdb && /entrypoint.sh db migrate && echo 'running' && /entrypoint.sh run"     depends_on:       - db     environment:       DATABASE_URL: "ecto://postgres:postgres@db/postgres"       # PUT YOUR OWN SECRET KEYBASE HERE (MUST BE AT LEAST 64 BYTES)       SECRET_KEY_BASE: "dvPPvOjpgX2Wk8Y3ONrqWsgM9ZtU4sSrs4l/5CFD1sLm4H+CjLU+EidjNGuSz7bz"       BACKEND_URL: "localhost"       MIX_ENV: "prod"       REQUIRE_DB_SSL: "false"       REACT_APP_FILE_UPLOADS_ENABLED: 1       # Replace with your domain name       REACT_APP_URL: "app.papercups.io"   db:     image: postgres:alpine     container_name: papercups     ports:       - "5432:5432"     environment:       POSTGRES_PASSWORD: postgres
See error
`
ERROR! Config provider Config.Reader failed with:
** (UndefinedFunctionError) function Mix.env/0 is undefined (module Mix is not available)
Mix.env()
(stdlib 3.14) erl_eval.erl:680: :erl_eval.do_apply/6
(stdlib 3.14) erl_eval.erl:888: :erl_eval.expr_list/6
(stdlib 3.14) erl_eval.erl:240: :erl_eval.expr/5
(stdlib 3.14) erl_eval.erl:232: :erl_eval.expr/5
(stdlib 3.14) erl_eval.erl:233: :erl_eval.expr/5
(stdlib 3.14) erl_eval.erl:888: :erl_eval.expr_list/6
(stdlib 3.14) erl_eval.erl:411: :erl_eval.expr/5
{"init terminating in do_boot",{undef,[{'Elixir.Mix',env,[],[]},{erl_eval,do_apply,6,[{file,"erl_eval.erl"},{line,680}]},{erl_eval,expr_list,6,[{file,"erl_eval.erl"},{line,888}]},{erl_eval,expr,5,[{file,"erl_eval.erl"},{line,240}]},{erl_eval,expr,5,[{file,"erl_eval.erl"},{line,232}]},{erl_eval,expr,5,[{file,"erl_eval.erl"},{line,233}]},{erl_eval,expr_list,6,[{file,"erl_eval.erl"},{line,888}]},{erl_eval,expr,5,[{file,"erl_eval.erl"},{line,411}]}]}}
init terminating in do_boot ({undef,[{Elixir.Mix,env,[],[]},{erl_eval,do_apply,6,[{},{}]},{erl_eval,expr_list,6,[{},{}]},{erl_eval,expr,5,[{},{}]},{erl_eval,expr,5,[{},{}]},{erl_eval,expr,5,[{
Crash dump is being written to: erl_crash.dump...done
`

Same thing happens if simply running the following command
docker run -e DATABASE_URL="ecto://postgres:postgres@db/postgres" -e SECRET_KEY_BASE="dvPPvOjpgX2Wk8Y3ONrqWsgM9ZtU4sSrs4l/5CFD1sLm4H+CjLU+EidjNGuSz7bz" -e BACKEND_URL="localhost" papercups/papercups:latest

This has been introduced by 4dcaa5d44a6e69a1fed0b2ffe8392499f3af8b9f, specifically with the following line: https://github.com/papercups-io/papercups/blob/692b2abae0f96f57f2e285f979b10bfe70127dcc/config/runtime.exs#L168
Mix.env() should not be used at runtime, see https://hexdocs.pm/mix/1.12/Mix.html#env/0
As a workaround you can remove the following lines and build the Docker image yourself:
https://github.com/papercups-io/papercups/blob/692b2abae0f96f57f2e285f979b10bfe70127dcc/config/runtime.exs#L164-L169

Thanks @paescuj
I have built a docker image following your suggestion and it worked.
I am not familiar enough with Elixir.. would it require a refactor of that part?
In the meanwhile, I forked the repo and added an if statement to make the appsignal configuration optional.
I've made the following pull request accordingly : https://github.com/papercups-io/papercups/pull/904.

@aboutphilippe I'm also not very familiar with Elixir and I don't know what the exact intention is regarding AppSignal. So, I think the best thing would be to let the maintainers fix this issue accordingly.


Autoconfigured NettyServerCustomizer for webflux does not log for 4XX/5XX response code

Hi, not sure if this is a bug in generall or just an issue with our setup.
We are using spring-cloud-starter-gateway 3.0.6 (webflux netty based spring application) and by adding
org.zalando:logbook-spring-boot-webflux-autoconfigure:3.1.0 we only see request/response logging for a 2XX successfull request/response call. By hitting 403 or 404 no request/response logs are printed.
However, using the LogbookWebFilter from the logbook webflux component all incoming request/responses are printed as expected regardless of the resulting response status code.
This currently brings us to the solution to not use the webflux autoconfigure package and add something like this to our application by our own:
Bean
@Order(Ordered.HIGHEST_PRECEDENCE)
@ConditionalOnWebApplication(type = REACTIVE)
public WebFilter logbookServerFilter(Logbook logbook) {
    return new LogbookWebFilter(logbook);
}

A debug session using the debug log level showed us that the LogbookServerHandler got removed if the application ran into an error, we assume that this is the reason why the final "write" is never happening.

reactor.netty.ReactorNetty               : [1c159a01-13, L:/[0:0:0:0:0:0:0:1]:8080 - R:/[0:0:0:0:0:0:0:1]:54112] Added decoder [LogbookServerHandler] at the end of the user pipeline, full pipeline: [reactor.left.httpCodec, reactor.left.httpTrafficHandler, LogbookServerHandler, reactor.right.reactiveBridge, DefaultChannelPipeline$TailContext#0]
reactor.netty.http.server.HttpServer     : [1c159a01-13, L:/[0:0:0:0:0:0:0:1]:8080 - R:/[0:0:0:0:0:0:0:1]:54112] Handler is being applied: org.springframework.http.server.reactive.ReactorHttpHandlerAdapter@72bc5a26
r.n.http.server.HttpServerOperations     : [1c159a01-13, L:/[0:0:0:0:0:0:0:1]:8080 - R:/[0:0:0:0:0:0:0:1]:54112] Last HTTP response frame
r.n.http.server.HttpServerOperations     : [1c159a01-13, L:/[0:0:0:0:0:0:0:1]:8080 - R:/[0:0:0:0:0:0:0:1]:54112] No sendHeaders() called before complete, sending zero-length header
r.n.http.server.HttpServerOperations     : [1c159a01-13, L:/[0:0:0:0:0:0:0:1]:8080 - R:/[0:0:0:0:0:0:0:1]:54112] Decreasing pending responses, now 0
r.n.http.server.HttpServerOperations     : [1c159a01-13, L:/[0:0:0:0:0:0:0:1]:8080 - R:/[0:0:0:0:0:0:0:1]:54112] Last HTTP packet was sent, terminating the channel
r.netty.channel.ChannelOperations        : [1c159a01-13, L:/[0:0:0:0:0:0:0:1]:8080 - R:/[0:0:0:0:0:0:0:1]:54112] [HttpServer] Channel inbound receiver cancelled (subscription disposed).
reactor.netty.ReactorNetty               : [1c159a01, L:/[0:0:0:0:0:0:0:1]:8080 - R:/[0:0:0:0:0:0:0:1]:54112] Removed handler: LogbookServerHandler, pipeline: DefaultChannelPipeline{(reactor.left.httpCodec = io.netty.handler.codec.http.HttpServerCodec), (reactor.left.httpTrafficHandler = reactor.netty.http.server.HttpTrafficHandler), (reactor.right.reactiveBridge = reactor.netty.channel.ChannelOperationsHandler)}

We can see from the logs that the handler is applied, but also that LogbookServerHandler got removed encountering an application error.
Expected Behavior
NettyServerCustomizer from org.zalando:logbook-spring-boot-webflux-autoconfigure:3.1.0 should log all incoming requerst/responses regardless of the resulting response status.
Actual Behavior
NettyServerCustomizer from org.zalando:logbook-spring-boot-webflux-autoconfigure:3.1.0 only logs for incoming requerst/responses if  HTTP 2XX.
Steps to Reproduce

Spring Netty based web application (version 3.X.X)
org.zalando:logbook-spring-boot-webflux-autoconfigure:3.X.X
Send application request which leads to non 2XX response code
No request/response logs printed out
Send application request which leads to 2XX response code
Request/response logs printed out as expected

Your Environment

Version used:  3.0.1

Hi @gedankennebel could you help with narrowing down the problem here a bit? I used https://github.com/spring-cloud-samples/spring-cloud-gateway-sample as a base and added logbook (version 3.1.0) there, and wasn't able to reproduce the issue, both success and error logs were printed. Could it be specific to the configuration you're having?


Fix LoginState#requests leak in tests

The problem was that we were closing the 2 channels, and then niling them out;
the requests loop was therefore unable to receive close messages, since the channels
had been nilled out.
fix vet error in chat_test

r? @patrickxb

My fix caused a test flake.  Let's try another tack.

LGTM!


OSM doesn't show map for person <1917

I find out that the OSM map not is shown (white field) at my site when the person is born before 1917. Maybe something with privileges?
born in 1918:

born in 1916:

@Joppla Are you logged in when you take these screenshots?

This is when I'm logged in. When I m logged out, there is no map data, but that seems me correct:

Ok. Mind checking your browser console for errors on the 1916, logged in one?

I don't understand, what your question is.

The browser console is the place where the browser logs errors. You can find the instructions for opening it in firefox here and in chrome here

See above. From testing I know that if there is any mistake in the javascript code for leaflet you will get immediately a white screen.

I find out that it is not connected to the year 1917. Other persons give other results. Strange.

I will do today an update, but it seems me that there are more and more white screens. Even at persons they were working well before yesterday.

The new 1.8 version give still a white screen. In the console there are the following messages:

Where can I find a 1.7 version? I like to test when it went wrong.

I replaced the original 1.7 version. This version shows the maps correct.

Can you get it to consistently happen for one person, or is it random whether it happens or not?

It seems me consistently. But .... what happen with the color_i when there are more people than colors? Because one of the changes was that we added sibblings and spouces to the map, so more people, so more colors needed ... Maybe that generate the error in leaflet. The white screen is for me typical an error in the code for leaflet.

With deleting the line color_i++ it seems me working (with all markers in the same color) :-)

Ah, yep. Good catch. Try changing this line to $color_i = ($color_i + 1) % count($colors);

That works correct!
It should be maybe nice to use different scale of colors for parents, sibblings and children.
fe:

parents in the 3rd / 4th row from under, self, spouse and siblings the middle row and children the lowest. But there are many possibilities. What do you think?

please, can you look to issue #24


Add error checking in common types methods

📝 Summary
This PR handle errors in several types' methods.
⛱ Motivation and Context
I tried to create a PublicKey from 0x1, which should not work and it did because an underlying error in the conversion method was not handled.
📚 References
See this comment for more context.

✅ I have run these commands

[x] make lint
[x] make test
[x] go mod tidy

Oh great, thanks!


Upload data failed

Hello,
I tried to upload the data with Uploader, but always got AWS Glue Job failed in Step 6 - [Monitor uploads]
I've well configured all the steps and there wasn't any error showed in the configuration steps.
I checked the logs in CloudWatch, but don't understand what could the error be from my side.
Do you have any idea on the problem?
Thanks for your help!
Xiyue

[ ] [ v3.0.0]

Mappings:
  Application:
    Solution:
      Id: "SO0222"
      Name: "amcufa"
      Version: "v3.0.0"

[ ] Region: eu-west-1
[ ] [CloudWatch Logs ]
2024-07-08 14:50:33,217 ERROR [main] glue.ProcessLauncher (Logging.scala:logError(73)): Error from Python:Traceback (most recent call last):
File "/usr/lib64/python3.7/argparse.py", line 1787, in parse_known_args
namespace, args = self._parse_known_args(args, namespace)
File "/usr/lib64/python3.7/argparse.py", line 1993, in _parse_known_args
start_index = consume_optional(start_index)
File "/usr/lib64/python3.7/argparse.py", line 1923, in consume_optional
arg_count = match_argument(action, selected_patterns)
File "/usr/lib64/python3.7/argparse.py", line 2088, in _match_argument
raise ArgumentError(action, msg)
argparse.ArgumentError: argument --country_code: expected one argument
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/tmp/amc_transformations.py", line 70, in check_params
args = getResolvedOptions(sys.argv, required)
File "/opt/amazon/lib/python3.6/site-packages/awsglue/utils.py", line 119, in getResolvedOptions
parsed, extra = parser.parse_known_args(args[1:])
File "/usr/lib64/python3.7/argparse.py", line 1794, in parse_known_args
self.error(str(err))
File "/opt/amazon/lib/python3.6/site-packages/awsglue/utils.py", line 76, in error
raise GlueArgumentError(msg)
awsglue.utils.GlueArgumentError: argument --country_code: expected one argument
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/tmp/amc_transformations.py", line 124, in
params = check_params(required=REQUIRED_PARAMS, optional=OPTIONAL_PARAMS)
File "/tmp/amc_transformations.py", line 73, in check_params
sys.exit(1)
SystemExit: 1

Update: new errors
2024-07-09 13:50:16,915 ERROR [main] glue.ProcessLauncher (Logging.scala:logError(73)): Error from Python:Traceback (most recent call last):
File "/tmp/amc_transformations.py", line 70, in check_params
args = getResolvedOptions(sys.argv, required)
File "/opt/amazon/lib/python3.6/site-packages/awsglue/utils.py", line 119, in getResolvedOptions
parsed, extra = parser.parse_known_args(args[1:])
File "/usr/lib64/python3.7/argparse.py", line 1787, in parse_known_args
namespace, args = self._parse_known_args(args, namespace)
File "/usr/lib64/python3.7/argparse.py", line 2022, in _parse_known_args
', '.join(required_actions))
File "/opt/amazon/lib/python3.6/site-packages/awsglue/utils.py", line 76, in error
raise GlueArgumentError(msg)
awsglue.utils.GlueArgumentError: the following arguments are required: --destination_endpoints
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/tmp/amc_transformations.py", line 124, in
params = check_params(required=REQUIRED_PARAMS, optional=OPTIONAL_PARAMS)
File "/tmp/amc_transformations.py", line 73, in check_params
sys.exit(1)
SystemExit: 1

Update:
I redeployed the cloudformation stack. The errors about the destination_endpoints is fixed. Actually it was because cloudFormation stack update don't well replaced the Glue Job library and notebook with the new version.
But I met a new bug:
The Glue Job status shows succeeded, but I got failed in Uploads status like the image shows below

In the logs of glue job I got this:
Writing 295028 rows to s3://amc-uploader-v3-etl-artifacts-4bolkg/amc/ns_one_shot_unified_profiles/ADDITIVE/CSV/null/amcv7agsrv7|eu-west-1_pcplZllWv/fileName.csv-0.gz
Do you think it's the null in the S3 URI caused the problem?

@xiyue-55 Thanks for submitting this issue. I've a couple follow-up questions:

What country code did you specify when you performed the upload?
Did you perform the upload using the web application or programmatically by, for example, a custom script?
How did you install the this solution? Did you upgrade a previous stack or create a new stack with the latest template (https://solutions-reference.s3.amazonaws.com/amazon-marketing-cloud-uploader-from-aws/latest/amazon-marketing-cloud-uploader-from-aws.template)?

Hi Ian,

The country code is IT,
I did use uploader web application
I have redeployed the whole solution, the countryCode bug is not resolved. As I mentioned in my post, I've upgraded Uploader in AWS CloudFormation by updating the stack => replace existing template. But a lot of code is not updated. So in the future, should I always create a new stack when there's a new release?
The insatnceId problem is resolved as we don't correctly configured the Data Upload AWS Account in the settings.

Thanks for your help!

Yes, you should always create a new stack when there's a new release because some versions do not support the upgrade option.
I'm glad to hear you were able to resolve the InstanceId problem.
Regarding the null country code, I'm having trouble reproducing this issue with the following procedure. Does this procedure reflect what you did when you saw the Glue job fail with an error about the null country code?

Deploy new stack with latest AMC Uploader template
Log into the web application, setup the AMC connections on the Settings page.
Select a file on Step 1
Select a destination instance on Step 2
Select "Add to Existing Dataset" on Step 3, and select "OVERLAP_REPLACE", then select a country code, and CSV/JSON file format. Click Next
Click Next on Step 4 - Define Columns.
Click Submit on Step 5 - Confirm Details.

Hi,
Except the point 5, on the Step 3 I choosed ADDICTIVE, the others were exactly like you describe.

When you saw the error in the Glue job, did you specify any PII fields?
Country code will become null when a user uploads a dataset that does not contain any PII fields. This is a bug that will be fixed in the next release. I think you encountered this bug.
The log you specified above does, in fact, include PII fields, but it also says OVERLAP_REPLACE. Since you said you chose ADDITIVE, I think that the above log is not from the same transaction that produced the Glue job error.

Hi,
In fact I have tested both ADDITIVE and OVERLAP_REPLACE, the 2 has the same bug. But all my datasets contain PII. The bug appears only when I add data into existing dataset. When importing data with a new created dataet, there's no problem.

It sounds like your Glue jobs always fails because it's missing the country_code argument when you try to upload to an existing dataset. I have not been able to reproduce that problem. In fact, country code is supposed to be null when uploading to an existing dataset.
To troubleshoot this further, we may need to access your Ads account. Please contact your Ads account manager or amc-support to open a ticket with our developer team.

Hello Ian,
I don't see why the bug is from the Amazon Ads accoun. And the error is raised at File "/opt/amazon/lib/python3.6/site-packages/awsglue/utils.py", line 119, in getResolvedOptions. The function getResolvedOptions read only the arguments passed into a gluejob, which is from the endpoint start_amc_transformation in APIHandler lambda function.
The country_code is optional in the endpoint start_amc_transformation, but then the error is not treated in the Glue job.

I am going to publish a patch release that includes the following change, later this week:
https://github.com/aws-solutions/amazon-marketing-cloud-uploader-from-aws/pull/265
That change resolves a defect which may be related to the problem you encountered. However, because I haven't been able to reproduce the error you found, I am not sure. If you setup a ticket with your Ads account manager, then I should be able to access your AMC Uploader installation to verify. I say "Ads account manager" because they can give me access to your AWS account. I agree, the error you saw is in the Glue job from this solution, rather than your Amazon Ads account.

Thanks alot Ian!  Otherwise, I'll create a ticket with Ads account manager to find a further solution with you
Xiyue

@xiyue-55 We published v3.0.2 today. I think it might solve the defect that you encountered.


Backport 1.3: Fix failing pkparse test case

The first three test cases from test_suites_pkparse.data failed because
the key file they read requires DES to be read. However, POLARSSL_DES_C
was missing from the dependency list.
NOTE:

This is a backport for PR https://github.com/ARMmbed/mbedtls/pull/829

Reviewed, approved, tested and merged with mbedtls-1.3.


[WebToolsE2E][Aspire] The Aspire dashboard Console log displays duplicate log entries when click the Console button multiple times.

INSTALL STEPS

Clean machine: Win11 x64 23h2 ENU
Install SDK 8.0.303
Install Aspire 8.1.0

REPRO STEPS

Open CMD, create an Aspire Starter App using following commands:

dotnet new aspire-starter -o AspireStarterApp
cd AspireStarterApp/AspireStarterApp.AppHost

Dotnet run the project in CMD, and open URL in the browser.
dotnet run
Click the "Console" option on the Aspire dashboard left, and select the apiservice/webfrontend resource.
Click the Console button multiple times

Note:

This issue also repro on Aspire 8.1.1-preview.1.24376.1.

ACTUAL
The Aspire dashboard Console logs displays duplicate log entries when click the Console button multiple times.

EXPECTED
Log entries not duplicated in the Aspire dashboard Console logs when click the Console button multiple times.

Similar to this issue: https://github.com/dotnet/aspire/issues/4213

Verify this issue fixed on the latest Aspire 9.0.0-preview.4.24467.9


Panic while running join datatypes/schema.rs:165:10

Describe the bug

select * from foo as f1 JOIN foo as f2 ON f1.bar = f2.bar;
thread 'main' panicked at 'index out of bounds: the len is 1 but the index is 1', /Users/alamb/.cargo/registry/src/github.com-1ecc6299db9ec823/arrow-4.3.0/src/datatypes/schema.rs:165:10
note: run with RUST_BACKTRACE=1 environment variable to display a backtrace

To Reproduce
echo "1" > /tmp/foo.csv
cargo run -p datafusion-cli

> CREATE EXTERNAL TABLE foo(bar int)
STORED AS CSV
LOCATION '/tmp/foo.csv';
0 rows in set. Query took 0.000 seconds.
> select * from foo as f1 JOIN foo as f2 ON f1.bar = f2.bar;
thread 'main' panicked at 'index out of bounds: the len is 1 but the index is 1', /Users/alamb/.cargo/registry/src/github.com-1ecc6299db9ec823/arrow-4.3.0/src/datatypes/schema.rs:165:10

Expected behavior
Expected output of 1 row, with columns f1.foo and f2.foo each with value 1
Additional context
Likely follow on work from https://github.com/apache/arrow-datafusion/pull/55

Interestingly, it seems like f2.bar is causing some issues:
> select f1.bar from foo as f1 JOIN foo as f2 ON f1.bar = f2.bar;
+-----+
| bar |
+-----+
| 1   |
+-----+
1 row in set. Query took 0.020 seconds.
> select f1.bar, f2.bar from foo as f1 JOIN foo as f2 ON f1.bar = f2.bar;
thread 'main' panicked at 'index out of bounds: the len is 1 but the index is 1', /Users/alamb/.cargo/registry/src/github.com-1ecc6299db9ec823/arrow-4.3.0/src/datatypes/schema.rs:165:10
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace


SNP and SNPEffect both visible in Network View Interactive Legend

The real problem:
SNP and SNPEffect are both different and both need to remain. The problem is, when a user creates a network with both SNP and SNPEffect, and clicks on the SNP, it renames the SNPEffect to SNP.
Previously what we thought the problem was:
SNP and SNPEffect were combined (I believe - please confirm), yet sometimes a user can come across both SNP and SNPEffect in a single network view's interactive legend. The functionality works strangely when clicked, with their numbers changing.

(https://github.com/Rothamsted/knetmaps.js/blob/4d8db08b35f65b99aa52b7b27881c8a9056d392f/css/knet-style.css#L89)
This will require some investigating to really find what's going wrong, but @KeywanHP @marco-brandizi, am I right in thinking that we tried to combine SNP and SNPEffect at some point? If so, which do we want to keep? SNP?

What I remember is that maybe there is some code that is confused by the two have the same prefix.

Example:
Search with this gene list but NO keywords in Wheat:
TRAESCS3B02G280700
Then click on the gene... It'll have SNPEffect and SNP

I also don't see SNP in the key for a gene that I think should show SNP...

Also SNP is never available in Evidence View

This is because SNPs are intermediate nodes and not end nodes of a graph path. Can be changed if we felt like users wanted to see number of SNPs linked to genes or users wanted to searach for SNP id/name.

The problem then only remains in Network view, as described at the top of the ticket.

Just a reminder that this is knetmaps code and needs to be changed in the original knetmaps repository, not in the Knetminer copy (it's under generated/ for a reason). Then, the scripts to link that code from knetminer needs to point to the proper version and needs to be re-run to download the last updates.
I usually do that by first running client-base::/update.js with a specific package URL and release (see the script source), which updates that package only and not all the Js dependencies.
The same script can also update all of the Js dependencies it manages, which is something I do before issuing a new Knetminer release, and after having updated the URLs and versions in the script itself.

@lawal-olaotan, this still doesn't work for me, as you can see here, SNP/SNPEffect interfere each other.
Moreover, I've removed the 202204_upgrades, after merging it dev-2.2. This is the branch to be used to maintain the old version of Knetmaps. Details were here.
In my last commits, I've also added a JSON test case for this issue. Adding tests and test case data is good practice.

@marco-brandizi I must be missing it - what's wrong with how it is functioning in your video?

SNPEffect can't be enabled until SNP is. Now I see there is only one effect node, which is connected to SNPs only, so is this behaviour expected? @KeywanHP

Yep, normal behaviour I think, but Keywan can confirm

Yes expected behaviour: Gene -> SNP -> SNPEffect. We currently have only one class of SNPEffect in the KG, i.e. stop-gained. There are many other classes that we can add in the future: https://pcingola.github.io/SnpEff/se_inputoutput/#effect-prediction-details

I've tried linking this fix in knetmaps.js to the master branch and it seems to work. @KeywanHP, @Arnedeklerk, please test it on ci-test. Thanks, @lawal-olaotan. Later, I'll take care of issuing a new release for knetmaps and linking that.


RawRwLock::wait_for_readers needs an Acquire to synchronize with unlock_shared

This fixes the TSAN failures in the testsuite.
Fixes #257
cc @Gankra

Awesome, and nice find!
On Thu, Nov 12, 2020 at 12:24 PM Amanieu<EMAIL_ADDRESS>wrote:

This fixes the TSAN failures in the testsuite.
Fixes #257 https://github.com/Amanieu/parking_lot/issues/257
cc @Gankra https://github.com/Gankra
You can view, comment on, or merge this pull request online at:
https://github.com/Amanieu/parking_lot/pull/260
Commit Summary

RawRwLock::wait_for_readers needs an Acquire to synchronize with
unlock_shared

File Changes

M src/raw_rwlock.rs
https://github.com/Amanieu/parking_lot/pull/260/files#diff-57fd8b3de0ffe5d7a0b8b8d01634d655692cf2a35cc2feb6097c55b408522bda
(6)

Patch Links:

https://github.com/Amanieu/parking_lot/pull/260.patch
https://github.com/Amanieu/parking_lot/pull/260.diff

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Amanieu/parking_lot/pull/260, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAIVRYDLNYMWSGMG6XT63F3SPQK4DANCNFSM4TTSEJNQ
.

Anything blocking landing this?


v5 organic improvement suggestions

While migrating to v5 of the API we noticed that some fields were missing and got great assistance in addressing that (https://github.com/pinterest/api-quickstart/issues/89) which is really appreciated! Now we have been using v5 for some time and would like to share our understanding of the state of Pinterest Organic and feedback what we think would be good improvements for the future.
User account level daily organic data
user_account/analytics is a very fast and easy way to fetch high level aggregate organic performance data per day. This endpoint is useful for us for creating an overview report on this level. Great stuff!
Pin level daily organic data
To get detailed organic performance data for pins, per day, we can use /pins to fetch metadata for all existing pins and then for every pin we can call pins/{pin_id}/analytics to get organic performance metrics on a daily basis.
This seemingly works to get only organic data and not miss any pins, but this leads to us having to make a lot of API calls to find out the latest pin activity for the past 7 days. The absolute majority of the calls will not generate any data and will only unnecessarily burden your systems. Since we do not know what pins had any activity, we need to query the analytics endpoint for every single one of the pins. We ran into rate limiting issues when we tried to fetch organic data in this way.
analytics/top_pins only returns the top 50 pins and since v5 does not include pin meta data. So going this route will potentially miss some data and still requires additional requests to get pin meta data. Top pins doesn't include the USER_FOLLOW metric either, which a lot of our clients are missing from v3, and we we would need to call pins/{pin_id}/analytics for each relevant pin_id to retrieve USER_FOLLOW which would again burden your API a lot.
Feedback
Ideally we would like to query for all pins that have any organic metrics for a specified date range. I.e. ask questions like “what pins had impressions (or any organic metrics, really) the last 7 days?” and ideally get both metadata and metrics for those pins in one response from one endpoint. This would fit our use case the best while burdening your servers the least. This data would then be possible to aggregate to the user_account/analytics without missing any relevant data points.

Thanks very much for your feedback! I understand what you're saying. Would you be willing to submit it via this official feedback form? Once you do that, I can follow through internally to make sure that your comments about Pin analytics are being considered by the appropriate product managers.

Thanks @davidchaiken, I've submitted the form!

Thanks, @JacobFunnel.
The Pinterest development team says that they "love the level of detail in your feedback!" There's some good news about recent improvements in our API in areas that address at least some of your needs. For example, we recently made an update to the GET/Pin endpoint which should help address your concern.  You're now able to request pin_metrics when calling this endpoint and get the pin's lifetime and last 90 day performance returned. We hope that this feature reduces your need to additionally call the GET/Pin Analytics endpoint for summary metrics.
There's at least one other related feature that should be launching soon. I'll clarify the timing and get back to you -- soon, I hope.

Hi, @JacobFunnel. Here's the rest of the response from the development team at Pinterest.

As of this week, the LIST/Pin endpoint supports the pin_metrics parameter. So, you can get analytics for a set of pins from a single API call.
The idea of only returning data for pins that have shown change is an interesting concept. They are thinking about what it might take to implement this suggestion.

That's all of the information that I can provide for now, so I'm closing this issue.

Hi @davidchaiken! Thanks you for helping us share our feedback and thanks to the development teams for making these improvements! We will look forward to trying out these new features. Please let me know if point 2. makes it into an API update in the future, that would be exciting stuff! :)

Will do! Thanks for your feedback and partnership.


'Our Partners' page should be a modular page w/ partner modules

'Our Partners' page should be a modular page w/ partner modules instead of the current hard coded template.

 Modular Pages


Simplify route initialization

Simplifies how we initialize routes and cleans up unnecessary structs/functions.

Thanks for this - good info for me to learn here.  I appreciate it!
/lgtm

/approve
What is the bot waiting for here?  :thinking:


Alert System fix

This is similar to why the tests were broken in 0.9.x
the CKey/CSecret refactor didn't happen in 0.8.x
Needs testing to actually send a message.

Also in rpcserver.cpp and rpcserver.h  - also needs the "sendalert" command added to the CRPCComannd list.

Hi @wellenreiter01  - I've made the change as you requested.
With Lizhi's code comments, GitHub found the characters and converted them automatically, which is why the comments lines look changed...I didn't actually edit them at all.


ARRK - Check result when the name of the company is entered in the search bar

Description : Verify the result of the searching on https://peviitor.ro/ after entering the name of the company ("ARRK") inside the search bar.
Precondition : The website is up and running

Step 1:    Open the URL in the browser (https://peviitor.ro/)
Expected result : you can see the homepage of the website and you can see the searching bar

Step 2 :  Go to the search bar and see if it is editable by clicking inside of it.
Expected result : The search bar is editable and functional and you can write any text inside it.

Step 3 : Type "Arrk"(the name of the company) inside the search bar.
Expected result : After typing the name of the company, press enter and then you should see under the search bar jobs of this company


[TACHYON-424] Add additional documentation to s3 client.

https://tachyon.atlassian.net/projects/TACHYON/issues/TACHYON-424
Following up on the #896 's nice to have comments. Unit tests for private methods will be added in a separate PR/ticket.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/Tachyon-Pull-Request-Builder/3168/
Test PASSed.


Some thing is not working please check it okay.

here the login page is not working. Please check!

/create

/createjira

/createjira


Thank you for great package but Nova Slug field with translatable doesn't work !

Text::make(__('Title'), 'title')->translatable(),
Slug::make('Slug')->from('Title'), // not affected

Hi! You can choose one language to use - for example use Slug::make('Slug')->from('title.en').


Update NacosDataParserHandler.java

修复无法正确校验多个dataId扩展名
Describe what this PR does / why we need it
Does this pull request fix one issue?

Describe how you did it
Describe how to verify it
Special notes for reviews

 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.

this impl has been abandoned, thanks for your help, this pr will be closed.


remove dubplicated if-confition for secrets creation

Issues

Changelog

[ ] List your changes here
[ ] Make a changie entry

Tophatting

 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.

Hey @jkrebstadt - I looked a this and it appears this secret is only actually needed if you are using the embedded mysql statefulset.  This secret is not used by the OpsLevel application.  The mysql credentials are injected to the DATABASE_* env even when using the .Values.mysql.external: true - So this is why i left it like this.  https://github.com/OpsLevel/helm-charts/blob/main/charts/opslevel/templates/opslevel/secret.yaml#L14

Hey @jkrebstadt - I looked at this when doing #48 and it appears this secret is only actually needed if you are using the embedded mysql statefulset as your database. This secret is not used by the OpsLevel application. The mysql credentials for external mysql's are injected to the DATABASE_* env even when using the .Values.mysql.external: true - So this is why i left it like this. https://github.com/OpsLevel/helm-charts/blob/main/charts/opslevel/templates/opslevel/secret.yaml#L14

Hey @rocktavious,
Thanks for verify, i just checked the pattern.


Replace lex usages

Summary
This PR replaces most usages of lex function. The remaining references are in tests which will be removed at the end because they're all tied up with Stylist and Indexer.

I'm going to merge this as the change is very nominal but feel free to review.


[UI] Role type is missing in Role creation wizard

Describe the issue:
Role type is missing in Role creation wizard > summery
And there is no any input field to provide /select Role type
How to reproduce:
Login to console > manage
2. Create a new Role
3. Provide name > add permissions > assign Group /user > vew summary section
Environment information (Please complete the following information; remove  any unnecessary fields) :

Product Version:5.11 m36 snapshot
OS:  Mac
Database: H2
Userstore:LDAP
Browser: Firefox 80.0.1 (64-bit)

Please refer attached screenshot:

Also, the permissin deselection won't work properly.


Add assert to catch browser issue

Invalid instances of LdLocalObj are showing up in browser dumps. Add an assert to catch those instruction emissions at compile time.

:+1:


[Question] Does it works for apple watch devices?

Apple's XCUITest supports watchOS, so in principle, it should be possible. But the demand for this feature seems to be quite low, and there's not much prior art. If someone would like to work on getting this supported in Maestro (and then commit to maintaining it) we're always happy to accept contributions.
For reference, here's Appium issue tracking this: https://github.com/appium/appium/issues/4829

Since this issue is a question and not a request, I'll consider it answered and close it.


Support multiple and dynamic signing certificates

In our organisation we roll the signing certificate for our ADFS servers every year.  During the roll over period the server provides two certificates which may be valid, so when a SAML response is provided it is valid if it is signed with either of those signatures.
This change has two methods that can be used when passport-saml is used by a long running service that will persist over the certificate roll over period.  The first change is to allow the cert configuration key to be an array, this allows for the old and new certificates to be checked during the roll over period.  The second change is to allow the cert configuration key to be a function that returns the valid certificate or certificates, this allows the service to poll the ADFS server for what the valid certificates are at this moment and update the signing certificates used by passport-saml as they change.

Hi, I'm a new co-maintainer trying to help out a little.
Please reference the portions of the SAML spec that relate to the changes you are making. If your proposed changes are spec-compliant, I'm inclined to accept a version of this, since supporting multiple certs during a transition seems useful.
Also take a look at the latest version of tests/test.js. I refactored to create TEST_CERT at the top to store a single copy of a cert that was commonly being re-used, so it doesn't need to be copy/pasted throughout the test file, making it harder to read.
At some point soon, we should also think about breaking up the growing test file into multiple files.

It would also be helpful if you could explain how this relates to the other multiple certs PR that was pre-existing: #204.   This if branch goes forward, it also needs to updated to resolve conflicts.

@markstos I wasn't aware of #204 until you pointed it out.  It is doing part of what is being done in this PR.  The differences between #218 and #204 are:

#204 supports 2 certs rather than an arbitrary number of certs (which is fine for my use case)
#204 uses a new parameter alt_cert for the second cert because it "didn't want to introduce type fluidity" and have the cert parameter overridden to accept either a string or an array
#218 allows for certs to be dynamically updated which #214 doesn't support, #214 requires the service to be reinitialised with the new certs

In terms of referencing these changes in the SAML spec I found this:

A relying party SHOULD allow for the use of any of the included keys.

when referring to signing/encryption keys in the SAML metadata https://www.oasis-open.org/committees/download.php/56785/sstc-saml-metadata-errata-2.0-wd-05.pdf <IP_ADDRESS> [E68].
I am happy to base this change off #204 or go as is, if you can let me know what your preference is.

@richjharris your approach seems more flexible, although the author of #204, @austburn is welcome to weigh in.
One thing I noticed in this PR is when using cert as a function, it's synchronous, but the suggested use is to poll a server, which would be an async operation. So using a callback pattern seems more appropriate there. Or have I missed something about how it's used as a sync function to check for certs?

It's been a while since I've been active on this change -- initially I threw together #204 to address a looming cert rollover. #218 seems to provide more flexibility and I like the ability to poll for cert changes :+1: . I'm fine if this change represents the availability to support cert rollover as it's supported my many other SAML libs.

@markstos the way I use the function version of the cert option is I have a scheduled task that polls the current valid certs and stores them and in the function which is passed as the cert option I return the certificates which were fetched in the poll.  This allows the function to be synchronous.
I've had a look at where validateSignature is called and it wouldn't require any breaking changes to make it async rather than sync if you would prefer it to work that way.

@markstos I've rebased this PR from master but I haven't made any changes on making the function async pending your feedback

@richjharris Let's make the cert function async to support that usage model.It's easy to make your sync use-case run async, but it's unwieldy if you want to make an async call with a sync API.

@markstos I've pushed a commit to make the cert function async.

This update looks great ! I would love to see it merged.

Indeed something I was just looking for. Hope it gets merged soon!

@richjharris Assuming my doc-update to reflect the async change looks good, I think this is ready to release. https://github.com/bergie/passport-saml/pull/218/commits/707b31532650650706e1a2d42f0dee4be02b039b
@cadesalaberry, @kallelat thanks for the peer-feedback. It's helpful to know others are looking for the same feature.

@markstos 👍  looks good.

Released and published
On Tue, Oct 31, 2017 at 7:03 PM richjharris<EMAIL_ADDRESS>wrote:

@markstos https://github.com/markstos 👍 looks good.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/bergie/passport-saml/pull/218#issuecomment-340932552,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AABk5VmvqcB3dbjtceIasnvkCgNXtldRks5sx6cpgaJpZM4NrFTH
.


UI Changes

Standardize the social icons and change the style of the button
Add footer

Made UI changes via 79d65b1
Footer yet to be implemented.

In dark mode the contrast is bad. Cards remain white while the background turns dark. Maybe we can take inputs from https://material.io/design/color/dark-theme.html?

I too feel that the contrast is bad, moreover, I added a package through which the mode change is happening, will figure out some ways sometime soon.

@abhinavsri360 That package doesn't seem to be changing anything in the cards at present. Maybe if it goes to a lighter shade of grey, it should look fine

@aravindvnair99 Yeah, even I am planning to not use the package and code it right away.

I think the issue is resolved now via ed3c5c65e4ef731001b50e0e879eab163751908d
wdyt? @srilaasya @aravindvnair99

@abhinavsri360 Looks better now. It doesn't automatically pick though based on OS setting. And doesn't persist through reload as well. Previously it did.

Cool, I'll set state using local storage for this.


How to use extra-files?

I'm trying to use Release Please to create a release of my WebExtension. I need to update the version number in package.json, package-lock.json and also src/manifest-chromium.json and src/manifest-chromium.json.

I use Release Please Action:
name: Release
on:
  push:
    branches: [main]

jobs:
  release-please:
    runs-on: ubuntu-latest
    permissions:
      contents: write
      pull-requests: write
    steps:
      - name: Run Release Please
        uses: google-github-actions/release-please-action@v3
        with:
          command: manifest-pr

With .release-please-manifest.json: {}

And release-please-config.json:
{
  "packages": {
    ".": {
      "release-type": "node",
      "extra-files": [
        {
            "type": "json",
            "path": "webext/manifest-chromium.json",
            "jsonpath": "$.version"
        }, {
            "type": "json",
            "path": "webext/manifest-firefox.json",
            "jsonpath": "$.version"
        }
      ]
    }
  }
}

But the package.json and package-lock.json files are not updated. And only the formatting is changed in manifest-*.json files. https://github.com/regseb/testcase/pull/6
How can I add two files to a Node project release (which isn't monorepo)?

All 4 of the json files already have the version at 1.0.0 in your test repo. The release PR is for 1.0.0 so there is nothing to update. The next version should make changes to those version fields.

If you're using the manifest (release-please-config.json), there's an accompanying .release-please-manifest.json that declares the latest releases on that branch (to save on API calls). In your case, it should look something like:
{
  ".": "1.0.0"
}

This tells release-please that there was already a 1.0.0 release. Otherwise, it assumes you want an initial version (which for node strategies is 1.0.0).