fzf completion is incorrect when I set breakpoint at runtime

Hello,
First, thanks for making this simple yet awesome tool!  :D
Here's the bug description:
When I set breakpoint after I run the program, the fzf tab auto-completion for symbol name encounters weird behavior.
For example, if I type B then press <tab>, the first character of each symbol name is overwritten as B.
See the following screenshot. The function name foo::B::func() is displayed as Boo::B::func(). Thus, if I press enter for completion, it will fill the name as Boo::B::func().
It seems that GEP has some problem with searching non-prefix string.

Here's the source.cpp:
#include <iostream>
using namespace std;

namespace foo {
class B {
  public:
    void func()
    {
        cout << "B:func" << endl;
    }
};
}
int main()
{
    foo::B b;
    b.func();
    return 0;
}

Here's my system info:
Ubuntu 20.04 (WSL 1) with all packages installed from APT
g++ (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0
GNU gdb (Ubuntu 9.2-0ubuntu1~20.04.1) 9.2
Python 3.8.10

Please note that the above example is very simple. I don't if this problem occurs BEFORE I run the program.

Hi, thanks for the bug report!
I tried print B<tab> with the source.cpp you provided, then I got:

The result is buggy because these function names start with b instead of B.
But somehow I can't reproduce the same bug you found. (showing Boo::B::func())
What's the prefix before you press the tab? Did you also do something like print B<tab>?

I typed b B<tab>.
And, obviously, you triggered another bug about fuzzy search ignoring case.  😂

I typed b B<tab>.

I just successfully reproduced the bug here.
I'll try to fix it.
Thanks for the detailed bug report 🙏

Hi @YalandHong, I made a patch for this issue in #15.
The bugs seem fix for me with it (it still have some room for improvement tho, but I don't have good idea currently :p)
Can you help me to test if that patch also works for you? Thanks!

I confirmed. It works fine for me.
Thanks for the patch!

Great, thanks for helping test it!


Email displayed attached to account is not the primary email address

Issue Type: Bug
I am signed in to Visual Studio Live Share through GitHub. However, it keeps displaying an email address that isn't my primary email address and one I do not want seen. I have tried to change this. Signing out of Live Share, deleting my Live Share account, removing the email address from GitHub and also setting my emails in GitHub as private etc. Nevertherless, when I make an account again that email address is still displayed.
Extension version: 1.0.2427
VS Code version: Code 1.47.1 (485c41f9460bdb830c4da12c102daff275415b53, 2020-07-14T00:13:57.513Z)
OS version: Linux x64 5.4.0-40-generic

System Info

Item
Value

CPUs
Intel(R) Core(TM) i3 CPU       M 370  @ 2.40GHz (4 x 2205)

GPU Status
2d_canvas: enabledflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onoop_rasterization: disabled_offprotected_video_decode: unavailable_offrasterization: disabled_softwareskia_renderer: disabled_off_okvideo_decode: unavailable_offviz_display_compositor: enabled_onviz_hit_test_surface_layer: disabled_off_okwebgl: enabledwebgl2: enabled

Load (avg)
2, 2, 2

Memory (System)
7.52GB (1.03GB free)

Process Argv
workshop.html --no-sandbox

Screen Reader
no

VM
0%

DESKTOP_SESSION
Lubuntu

XDG_CURRENT_DESKTOP
LXQt

XDG_SESSION_DESKTOP

XDG_SESSION_TYPE
x11

Duplicate of #3606


Error thrown if dns_suffix variable includes trailing dot

The variable dns_suffix assumes the trailing dot is not included. If the dot is applied, say with the value example.com., the following error occurs:
Error: Error applying plan:
1 error(s) occurred:
* google_dns_managed_zone.env_dns_zone: 1 error(s) occurred:
* google_dns_managed_zone.env_dns_zone: Error creating DNS ManagedZone: googleapi: Error 400: Invalid value for 'entity.managedZone.dnsName': 'example.com..', invalid

Notice the ... I assumed that dns_suffix should be a true suffix to a FQDN.
Once I updated from example.com. to example.com, the plan worked.
Thoughts for potential solution:

The documentation should explicitly specify to not include the trailing dot (This makes the most sense to me)
Usage of the dns_suffix variable should check for the trailing dot

Hi @mattysweeps, thanks for reporting this issue. We decided to update the documentation to warn users that they should not use trailing dots on dns_suffix.
The reasoning behind not doing checks for trailing dots is because we use in multiple places and that will add unnecessary complexity.
cc @ciriarte

Thanks @cdutra,
Sounds good to me :)


Clang build issue when using c_forpair due to anomymous struct

It seems that the use of an anonymous struct in the c_forpair macro is not supported in clang. The generated code from this macro contains an anonymous struct similar to:
  for ( struct { int i, j; } _ = { 25, 35 }; ; )
    ;

This will compile on GCC (as does c_forloop). However, clang gives an error: "error: declaration of non-local variable in 'for' loop".
This could be a clang issue, though.

Hi, it seems like there are some debate whether this conforming C99 or not.
I'm not getting error or any warning with clang-12 and gcc-11 with -Wall -std=c99 -pedantic. I do get a warning with MSVC,
So, it may be non-conforming, but because all "major" compilers allow it (with newest versions), I'll keep it for now. It's not a very important macro, and can be removed / replaced by using c_foreach .

I checked on reddit.com, this is conformant C code, and a bug in clang < version 12. Upgrade to v12 or newer.


Some improvements

We are using jsonmon in our production environment. For that case we needed some improvements und small fixes. This PR is intended to be transparent as possible on all changes due to their commits.
So the key changes are:

Fixed: possible update issues on checks due to the missing pointer reference in array declaration
Changed: Code readability due to context related extractions to separated files
Changed: the way checks gets updated - by their own instead of a worker
Changed: checks are using mutex read locks now
Added: more informative logging - checks logging the reason why on status change
Added: option to configure log level and log format with environment variables:

LOG_LEVEL
LOG_FORMAT

Added: GNUmakefile to handle the build(matrix) tasks
Removed: global mutex lock

would fix #15 and maybe #16 (doesn't know your exact issue)

hey. thanks for sharing, I will take some time to review this.
at this moment I took a quick glance and the only thing I dislike at this moment is that godeps are moved out of the repo. why I don't like it:

I think that Godep authors suggest to keep dependencies in target repo and it's considered the best practice
This easens up third-party builds (like https://packager.io or Heroku)

I have replaced Godeps with govendor since I had some issues with Godeps (Beta) lately and govendor is more mature. I really dislike the behaviour of Godeps changes my packages in $GOPATH on godeps restore which could result in detached heads and go get wouldn't work anymore. So this could be somewhat annoying while working on multiple projects. Depends on the way everyone is working with $GOPATH :)

frankly, I didn't use govendor, but now will take a look. is not keeping the vendored source files (not only their repo and hash) a best practice for govendor (my previous comment applies not to govendor vs godeps, but to removing vendored deps from the repo)?

BTW, what is the reason to use godep restore at all? that is: you check in the dependencies in vendor and then only run update when you have a new version of dependencies in $GOPATH (and it updates the vendor copy from the GOPATH one, but not vice versa). I thought, that's the way to use godeps.

BTW, I also suspect that your Makefile may work with GNU Make only (but currently don't have the BSD make at hand to check it). If that's really the case, we may want to rename Makefile' to GNUmakefile'

please explain me, why we don't need mutex locks. that is: we still have a global checks struct. concurrent reading (web ui) and writing to it (check) is unsafe (although, it's not necessarily will hit you in a short run). golang-nuts thread for reference: https://groups.google.com/forum/#!topic/golang-nuts/gWaAoFQKjaA

and a comment about the build system. I agree that may be environments that don't want the Ruby dependency. but on the other hand the new makefile-based system is not 100% equivalent. namely two things that personally I like in the old one:

it runs go install to a standard location, so I'm able to run the latest binary from my $PATH on my workstation
it puts the .zip files to ~/Downloads (personal preference again)
I don't think it's a good idea to hardcode this behaviour to the new build system, so probably we want to support them both (that is: as for now I'm against removing the Ruby-based build scripts, but we may add the makefile as a second option).

Maybe its my personal preference to have a dependency definition and pulling them if needed. So govendor doesn't work against the /vendor content. So I can re-add those files and we are good to go if you want.
The Makefile works indeed with GNU make only. I can rename this file.
The mutex topic: We have ignored this possible race condition due to the fact that there are no high frequency updates. I will add a test and the mutex lock.

frankly, about the dependencies:

yes, I would like to keep the dependencies bundled
I would like to keep godep, not govendor. it seems like godep is the standard, so I would like to keep using it unless we really have some problems with it.

if the godep restore is your only grief, I would like to keep godep (again: from my point of view you don't need this command at all in your workflow, but ymmv).
to illustrate my point: I eventually want to provide Linux Yum and Apt repos for installing and updating jsonmon and it seems like all the build solutions favor godep.

so, to sum this all:

please revert the old Ruby build system. it's OK if we have both make and rake buildsystems.
please revert godeps
please revert mutexes. It took a long time for me to actually set up them right, although initially I was on 'it seems that nothing crashes without them' page as well. so the latest thing I want to do is just to throw them out. we still need them.

just saw your commit on mutexes. let me explain why I've done it like I did (one global lock for checks, not separate). we have a global []check array and we need to lock it all, not by parts. the previously mentioned golang-nuts thread explains, why this is essential.
it seems like I'm OK with other changes, but would like to review it all.

The current difference between a global mutex and one per check is: it is very clear what object the mutex protects from the readability point of view. Technically it's the same as locking/unlocking them all per loop. Important to mention here is the Read Lock/Unlock since web requests would block each other and the checks themself. Feel free to play with the given test and enabled race detector. The checks are save now.
Further reading: https://hackernoon.com/dancing-with-go-s-mutexes-92407ae927bf
btw thanks for this discussion :)

thanks, will investigate the locks once more.
it seems that /vendor is still blacklisted in .gitignore, that's trivial, but let's not forget this

I launched this version and have more comments: logging is good. I assume by design that if we're logging to stdout, it's probably Linux and systemd. So I provide my stdout logs with systemd priority codes. <3> is error, <7> is debug, no tag is info and eq <6>.
I would strongly like that:

We kept the message levels that used to be. For some reason the failed check is info now and used to be an error, for example.
We added the new debug logs as <7>..., so it's possible to skip them when we don't want to see them or ship to logserver.

on my tests your version uses slightly more memory. It can be described with the fact that it uses a different data structure: as one particular change, it always sets name (to shell or web).
please elaborate on why do we need this.

Name gets set only once if empty and is used for logging to have an idea which check fails. Below this the endless loop in given interval.

launched the latest code:

now we have double or triple newlines between log entries
not sure if  or  are journald-compatible priorities, need to check

still too much infos, e.g. Running web check, retry # 1 is definitely debug

1 & 3 are fixed

The loglevels are taken from syslog package und since the logger calling the underlying methods they should definitively match.

in this version I'm really missing the 'check is back normal' log message (it was notice)


MM-21224: System console shows wrong authentication method

Summary
This field currently either displays “Email” or “MFA” based on whether or not MFA is turned on. That is all, never SAML nor LDAP.
Updated to display the appropriate login method. And if MFA is configured, whether or not MFA is turned on.
Ticket Link
https://mattermost.atlassian.net/browse/MM-21224
Related Pull Requests
Screenshots

/update-branch

Creating a new SpinWick test server using Mattermost Cloud.

Test server creation failed. See the logs for more information.

Test server destroyed

Creating a new SpinWick test server using Mattermost Cloud.

Test server creation failed. See the logs for more information.

Test server destroyed

/cherry-pick release-5.21

Error trying doing the automated Cherry picking. Please do this manually
+++ Updating remotes...
Fetching upstream
Fetching origin
+++ Updating remotes done...
+++ Creating local branch automated-cherry-pick-of-#4600-upstream-release-5.21-1582171140
Branch 'automated-cherry-pick-of-#4600-upstream-release-5.21-1582171140' set up to track remote branch 'release-5.21' from 'upstream'.
+++ Downloading patch to /tmp/4600.patch (in case you need to do this again)

+++ About to attempt cherry pick of PR. To reattempt:
  $ git am -3 /tmp/4600.patch

Applying: Update Authorization to include LDAP, SAML
Applying: move strings to localized strings
Applying: Update Authorization to include LDAP, SAML
Using index info to reconstruct a base tree...
M	components/admin_console/system_user_detail/__snapshots__/system_user_detail.test.jsx.snap
M	components/admin_console/system_user_detail/index.js
M	components/admin_console/system_user_detail/system_user_detail.jsx
M	components/admin_console/system_user_detail/system_user_detail.test.jsx
Falling back to patching base and 3-way merge...
Auto-merging components/admin_console/system_user_detail/system_user_detail.jsx
CONFLICT (content): Merge conflict in components/admin_console/system_user_detail/system_user_detail.jsx
Patch failed at 0003 Update Authorization to include LDAP, SAML
Use 'git am --show-current-patch' to see the failed patch
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".

+++ Conflicts detected:

UU components/admin_console/system_user_detail/system_user_detail.jsx

+++ Aborting in-progress git am.

+++ Returning you to the master branch and cleaning up.

@sbishel Well, it seams like to have to do this manually. I hoped I could have helped.


Create a version of prevous_session_label that takes any date, not just sessions

previous_session_label requires that the date you pass actually be a session.
We should have an equivalent that takes any date and a calendar and passes back the session occurring prior to that date. Vague pseudo-code:
def last_valid_session(dt, exch='NYSE'):
    cal = tc.get_calendar(exch)
    if cal.is_session(date):
        return cal.previous_session_label(dt)
    else:
        while not cal.is_session(dt):
            dt = dt-1
        return dt

@gmanoim-quantopian it sounds like you might want some variation of minute_to_session_label?
The behavior of that function is, essentially "if the input minute is during market hours, return the session containing that minute". Otherwise, roll to the next/previous market minute (depending on direction), and take the corresponding session.
So, for example:
direction='next'
In [22]: nyse.minute_to_session_label(pd.Timestamp('2019-02-07', tz='US/Eastern'), direction='next')
Out[22]: Timestamp('2019-02-07 00:00:00+0000', tz='UTC', offset='C')

In [23]: nyse.minute_to_session_label(pd.Timestamp('2019-02-07 9:15', tz='US/Eastern'), direction='next')
Out[23]: Timestamp('2019-02-07 00:00:00+0000', tz='UTC', offset='C')

In [24]: nyse.minute_to_session_label(pd.Timestamp('2019-02-07 9:45', tz='US/Eastern'), direction='next')
Out[24]: Timestamp('2019-02-07 00:00:00+0000', tz='UTC', offset='C')

In [25]: nyse.minute_to_session_label(pd.Timestamp('2019-02-07 16:00', tz='US/Eastern'), direction='next')
Out[25]: Timestamp('2019-02-07 00:00:00+0000', tz='UTC', offset='C')

In [26]: nyse.minute_to_session_label(pd.Timestamp('2019-02-07 16:01', tz='US/Eastern'), direction='next')
Out[26]: Timestamp('2019-02-08 00:00:00+0000', tz='UTC', offset='C')

direction='next'
In [5]: nyse.minute_to_session_label(pd.Timestamp('2019-02-07 9:25', tz='US/Eastern'), direction='previous')
Out[5]: Timestamp('2019-02-06 00:00:00+0000', tz='UTC', offset='C')

In [6]: nyse.minute_to_session_label(pd.Timestamp('2019-02-07 9:35', tz='US/Eastern'), direction='previous')
Out[6]: Timestamp('2019-02-07 00:00:00+0000', tz='UTC', offset='C')

In [7]: nyse.minute_to_session_label(pd.Timestamp('2019-02-07 16:05', tz='US/Eastern'), direction='previous')
Out[7]: Timestamp('2019-02-07 00:00:00+0000', tz='UTC', offset='C')

The main reason why last_valid_session doesn't exist as you're describing it is that there aren't very many contexts where you want to convert an intraday value to a session label, and where utc-midnight (aka 8:00pm eastern) is the right boundary, especially not for an arbitrary calendar. Most of the time the right boundary is market open, market close, or midnight in the timezone of the calendar.

Yep - basically exact that, but maybe even with a different name? It just isn't clear to me off the bat that I should use that.
This came up in the context where I knew that the date I had wasn't a trading day (Sunday in the US), but I wanted to find what the previous NYSE trading day was.

Ah, I understand now. When you wrote "previous_session_label requires that the date you pass actually be a session.", I assumed that the non-session values you had were intraday minutes, as opposed to midnight UTCs for non-trading days.
If you know you already have a "date", the easiest way to do what you want is probably to use calendar.day:
# This coming saturday
In [15]: pd.Timestamp('2019-02-09', tz='UTC') - nyse.day
Out[15]: Timestamp('2019-02-08 00:00:00+0000', tz='UTC')

In [16]: pd.Timestamp('2019-02-09', tz='UTC') + nyse.day
Out[16]: Timestamp('2019-02-11 00:00:00+0000', tz='UTC')

I'd also be less worried about making {next,previous}_session_label work in cases like this, where the value you've passed is a "date" that's not necessarily a market date.

That's perfect actually, just unexpected for me (as a first time user). I'm not quite sure what I would expect +/- to do, but I wouldn't expect it to go to next/previous. Thanks!


Portfolio Exercise 02 - added new regex-patterns

As requested in the task, I added three new regex-patterns to the text_patterns.py.
Furthermore I added a fourth pattern for unknown questions or answers to react to them.
If no pattern from the psychobabble is found the bot responds, that the user should clarify the problem / write something else (return-statement @main.py).

Your two changes on the main file and the text_patterns work, they are good to go, well done!

@l4nz8 pull request ready to be merged


Resize based on image orientation.

It would be cool to have an option to resize images at different sizes based on whether they are portrait or landscape oriented images. I didn't seem an option for this so I assume it isn't currently possible.

:+1:

Hi @patrickcate @JosefJezek
Could you please clarify what you mean.
For example, suppose we have two images:

500 x 200 - landscape oriented
200 x 500 - portrait oriented

If I have a landscape image 500 x 200, I may want to resize it to a certain width (say 100px wide). A 200 x 500 portrait image to 100px wide would be much larger however due to the increase height. It would be nice to resize these portrait images at a different width, or resize to a height measurement.
Right now my use case is I have a lot of website photos which contain both portrait and landscape photos. When batch resizing them at different widths the landscape photos are fine, but the portrait ones are too large at the same width. Being able to resize the portrait ones to a different width or height would easily solve the issue. I could manually separate the two orientations and resize them differently in separate tasks, but this isn't a smooth workflow to maintain. Being able to set different resizes based on the photos orientation would be solve this perfectly.

I think it has already been implemented in release https://github.com/mahnunchik/gulp-responsive/releases/tag/1.0.7
max option allows you to do what you describe :wink:
More info here: https://github.com/lovell/sharp#max
Is that what you wanted?

The max size option works if you want to resize a portrait image differently by height, but unfortunately not if you want to resize by another width.

Hi @patrickcate
Current behavior of max option.
For example we have two files:

file A - 500 x 200 pixels
file B - 200 x 500 pixels

Config:
{
  width: 100,
  height: 100,
  max: true
}

File A will be resized to 100 x 40
File B will be resized to 40 x 100
Is it what you want? Or not?

Please reopen if necessary.


Win32 binaries

Building binaries for https://github.com/sindresorhus/clipboardy/issues/30
Build is failing now – If someone wants to continue working this, welcome 🦄

Hey @floatdrop - could you explain what all you're changing here? Been a minute since I've built something on windows.
Thanks :)

@Qix- I'm trying to build Win32 binaries. One build is hanged, because of wrong path to executables. It will terminated by timeout soon.

 I'll let @sindresorhus review.

@Qix- this is still wip unfortunately.

I don't think we should build 32-bit binaries. People should just use 64-bit. Clipboardy gets 123,945 downloads a month, and we've gotten only one single complaint about it being missing.
@floatdrop You're free to add it if you feel strongly about it, but I'm not going to review this.

Oh, that's what this PR is for.
FWIW "win32" just refers to windows, not windows 32-bit. :) :+1: to what @sindresorhus said.

Just noting we got a request for this over at VSCodeVim
https://github.com/VSCodeVim/Vim/issues/2074
So I wouldn't say it is a wasted effort if it cuts down on some noise/debugging/troubleshooting for all.
I just happened to check this repo last week to see this PR so I knew what was going on with our user without much wasted time...
Thanks for the package! It has been great!

Let's try different approach.


⚠ UdeS website (prod) has degraded performance

In b1e2e7c, UdeS website (prod) (https://www.usherbrooke.ca/) experienced degraded performance:

HTTP code: 200
Response time: 1499 ms

Resolved: UdeS website (prod) performance has improved in f7ae913.

Resolved: UdeS website (prod) performance has improved in 2b40f6d.


Better facebook error handling

Resolves #352 and #263. Provides better error handling for Facebook Graph requests.

One comment, LGTM to merge once that's fixed.

That DDoS attack was nuts! At least GitHub is back now...
Travis is going to take a while to catch up on all the backlog though.

Looks like Travis is failing because of github being down intermittently I will try again later

Travis passed, so merge at will.


Codecalm tutorial on simsity

Hi Vincent.
Since I discovered you my barrier towards Python has eroded! Thank you. I'm a Data Scientist who wants to check if simsity can help with retrieving similar regions based on environmental variables.

Closing due to radio silence.


New garage-sign recipe.

@patrickvacek
The homepage is not https://github.com/advancedtelematic/aktualizr and I'm in the middle of clarifying the licensing issue. Otherwise looks good to me.

@OYTIS I did wonder about that. But what is the correct homepage? I wasn't sure what else to put.


myJaxon extends Jaxon || myResponse extends Response

@feuzeu  how can i do this in version 4??
class myJaxon extends Jaxon { }
class myResponse extends Response { }

Hi,
What are you trying to do? Migrate from an older version? Customize the library?
Tell me so I can suggest the best way to do it with the latest version of the library.
There has been many hacks on Xajax because the library lacks many features, and did not cover some use cases.
They are no more needed with Jaxon.

@feuzeu my jaxon version now is v3.8.2
/* load Jaxon autoload */
require_once(SD_LIBS . 'ajax/jaxon_core/vendor/autoload.php');
use Jaxon\Jaxon;
use Jaxon\Response\Response;
class myJaxon extends Jaxon {/* my code*/ }
class myResponse extends Response { /* my code */ }
how can i do this in version 4?

Repeating the same thing does not help.
You are not using the library the right way. Your code must be in your own classes or functions, that you export to js with Jaxon.
If you don't want to use the library as it is advised, I'm sorry but I can't help.

Thierry,
I have been following this thread. You tell the poster that he is "not
using the library the right way."
I have been using the library for some time now. Lately I have been trying
to migrate to version 4.x
Each page in my site has a class registered with Jaxon along with the PHP
code to get things registered and
a second class which acts like a view hence I name them ClassNameView.
For my contact page I have the following.

The contact class registered with Jaxon and the requisite PHP code.

register(Jaxon::CALLABLE_CLASS, Contact::class);

//Is this the page load?
if(! $jaxon->canProcessRequest())
{
  $view = new ContactView($jaxon);  //No. Instance the view class and
display the page.
}else{
  $jaxon->processRequest(); //Yes. Call the Jaxon processing engine.
}

2.The ContactView class to display the HTML:

class ContactView
{
    use PageClassTraits;

    public function __construct($jaxon)
    {
        $this->jaxon = $jaxon;
        $this->setup();     //Common initializations
        $this->PageSetup();
    }

    //Do whatever preprocessing is needed for this page
    //then display it.
    public function PageSetup()
    {
        $this->smarty = $this->di->getSmarty();  //Instance the Smarty
engine
        $this->JaxonCode();  //Generate the Jaxon JS/CSS scripts and assign
with Smarty

        $this->smarty->assign('title', 'Sharla Dawn - Contact');
        $this->showPage("Contactcontent.tpl"); //show the contact template
in the Page wrapper template
    }
}

Is this the right way? It generally works OK but doesn't really feel right.

I have spent a lot of time reading your code but still feel confused.
Would it be possible to create some examples more disconnected from Xajax
and relevant to the latest Jaxon versions?
I would be happy to assist in this if I can be sure I am "using the library
right." :)

Regards,
Ed Robinson

On Fri, Sep 15, 2023 at 6:41 PM Thierry Feuzeu<EMAIL_ADDRESS>wrote:

> Closed #118  as
> completed.
>
> —
> Reply to this email directly, view it on GitHub
> ,
> or unsubscribe
>
> .
> You are receiving this because you are subscribed to this thread.Message
> ID<EMAIL_ADDRESS>>

--
Ed Robinson
Ph:<PHONE_NUMBER>

@feuzeu I want simply to extends jaxon to my class.

@feuzeu I want simply to extends jaxon to my class.

I do not recommend.

Hi Ed,
What you are doing in your ContactView class is out of the scope of the Jaxon library, which only requires that you insert its js and css codes in your pages. How you do that is up to you, and will generaly depend on the framework/library your app is using, Smarty in this case.
So from the Jaxon library perspective, this code is correct.
<?php
class Contact
{
  // Your code here
}

use Jaxon\Jaxon;
use function Jaxon\jaxon;

//Instance the core Jaxon class
$jaxon = jaxon();

//Register the contact class:
$jaxon->register(Jaxon::CALLABLE_CLASS, Contact::class);

//Is this the page load?
if(! $jaxon->canProcessRequest())
{
  // Display the page.
}else{
  $jaxon->processRequest(); //Yes. Call the Jaxon processing engine.
}

I may suggest to move your class definitions in different files that you include or autoload, but it is not mandatory.
As you may have noticed, your app code is in your Contact class.
Unless you are in very specific cases, there's no need to extend neither the Jaxon main class, nor the Response class.

Theirry,
Thank you for your reply.
My contact class is contained in Contact.php along with the code after the
class definition which sets things up and instances the
view class if necessary. I don't see a need for putting this setup code in
a different file.
I included the ContactView class in my email. It is instanced in my code at
page load. This is a separate class file which receives
the Jaxon instance in its constructor. It calls the JaxonCode trait:
/**
 * Generate and assign the Jaxon framework client css and js code
 *
 * @return void
 */
private function JaxonCode()
{
      $this->smarty->assign("jaxonjs",     $this->jaxon->getJs());
      $this->smarty->assign("jaxoncss",    $this->jaxon->getCss());
      $this->smarty->assign("jaxonscript", $this->jaxon->getScript());
}

This is how I get the Jaxon code to the browser. Works perfectly and is
transparent to the Jaxon version.
Initially, I had ALL of the code in the contact class as I had done since
Jaxon V2.
However, when I tried to register the class it failed with an error message
to the
effect that there was no valid object or method. I finally gave up and
placed the code
after the class definition.
Ed
On Sat, Sep 16, 2023 at 8:41 AM Thierry Feuzeu @.***>
wrote:

Reopened #118 https://github.com/jaxon-php/jaxon-core/issues/118.
—
Reply to this email directly, view it on GitHub
https://github.com/jaxon-php/jaxon-core/issues/118#event-10389810189,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAFCS5YHJWFWEE3P2XJX6LLX2W27ZANCNFSM6AAAAAA42GF2KI
.
You are receiving this because you commented.Message ID:
@.***>

--
Ed Robinson
Ph:<PHONE_NUMBER>

Hi Ed,
The general rule is to have only the class code in the file with the class name.
The code to configure and start the library may go at the entry point of your application, which depends on how it is built.
For example, Jaxon provides middlewares for applications that adhere to the PSR-15 standard.
https://www.jaxon-php.org/docs/v4x/about/psr-standards.html

With the Slim framework for example, the Jaxon library is setup in the index.php file, and adds its middlewares to the routes to pages that need its features.
https://github.com/jaxon-php/jaxon-demo-slim/blob/main/public/index.php


Windows has no drops metric for bytes

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is.

Metric
Windows
Linux

forward_count (packets)
✔
✔

forward_bytes
✔
✔

drop_count (packets)
✔
✔

drop_bytes
❌
✔

Is it possible to get packet size for drops like we do forwards?
https://github.com/microsoft/retina/blob/ac26b1d865eff2451eac964b68a7838c31d3b7e8/pkg/plugin/windows/hnsstats/hnsstats_windows.go#L142

@vakalapa I was looking further into the issue and it looks like we'd need a change in the hcsshim repo to include the drop bytes metric. More specifically, their API call to the query the HNS stats - https://github.com/microsoft/hcsshim/blob/main/internal/hns/hnsendpoint.go#L100


An independent MPI

This PR implement an independent MPICH version of MPI
Additions
docker/main/mpich/Dockerfile
docker/main/mpich/README.md
docker/main/mpich/mpich-test/entrypoint.sh
docker/main/mpich/mpich-test/mpi_hello_world.c
docker/main/mpich/mpich-test/mpi_hello_world.f90
Removals

Changes

Testing

MPI C version and f90 version tested
Run instruction in README.md

Screenshots
Notes

Todos

Checklist

[x ] PR has an informative and human-readable title
[x ] Changes are limited to a single goal (no scope creep)
[x] Code can be automatically merged (no conflicts)
[x ] Code follows project standards (link if applicable)
[ ] Passes all existing automated tests
[x ] Any change in functionality is tested
[ ] New functions are documented (with a description, list of inputs, and expected output)
[ ] Placeholder code is flagged / future todos are captured in comments
[ ] Visually tested in supported browsers and devices (see checklist below :point_down:)
[ ] Project documentation has been updated (including the "Unreleased" section of the CHANGELOG)
[x ] Reviewers requested with the Reviewers tool :arrow_right:

Testing checklist
Target Environment support

[ ] Windows
[x ] Linux
[ ] Browser

Accessibility

[ ] Keyboard friendly
[ ] Screen reader friendly

Other

[ ] No linting errors or warnings

Given how stale this has gone, I am going to close it. If we see a need to introduce this in the future, we can always reopen.


[SCHEMA] add physio to schema or EEG, MEG, iEEG, PET, ASL, DWI

Fixes #890
This updates the schema so that all modalities support the physio and stim suffixes.
This might need an update counterpart on the validator side.

pinging our schema master @tsalo & BEP lead @mnoergaard @melanieganz @patsycle @HenkMutsaerts

I think we can definitely think of different ways the schema could be "refactored" (and I usually am not a big fan of duplications) but I am not sure we are there yet in terms . Though we could easily get there if we apply to this anat.
But whatever is decided should be done in a separate PR IMHO

@Remi-Gau It looks like proc and split come after recording in those rules, and that seems to be reflected in the filename templates, so it must be an issue with how the entities themselves are organized. On the bright side, it doesn't look like proc, split, and space can appear with recording in any valid filenames at the moment, so we could reorder those entities if we want. Since space is a mixed raw/derivative entities (raw for MEG/EEG/iEEG and derivative for other datatypes), I think we still want that at the end, but I believe we could reorder the entities to be proc --> split--> recording --> space without being backwards-incompatible. WDYT?

yes that was exactly my thought too.

It does seem strange that proc is allowed for physio data. Shouldn't it denote multiple versions of the same data processed using different devices or algorithms? Other entities that indicate multiple versions from the same run are dropped for physio data (echo, for example). Then again, fMRI physio allows rec, which seems strange in the same way.

Also, should split be included? Since the MEG data are separated based on file size, are physio files going to be split up in the same way?

Tempted to say that if we have rec for func data then we should have it too for proc for meg.
For split: I am not as sure.
Pinging several of the people discussing these types simultaneous recording in issues #86
@CPernet @dorahermes @robertoostenveld

yes physio is assumed to be .. but does not have to ..

I think it really comes down to whether we can consider the entity "within-acquisition" or "between-acquisition". Entities denoting data from the same recording, like echo and part, should not be included in the physio filenames. The same rule applies to events files. I think there must have been a decision point in the past where the maintainers had to decide if events and physio files would be duplicated across echoes or not, but instead they chose to leverage the inheritance principle. I lean toward that, but the big issues for me are (1) rec's behavior doesn't seem consistent with that idea, and (2) I don't know how split should be treated.
Based on the following line from the Scans file section of the spec, I'd assume that split should be treated like echo:

Each neural recording file SHOULD be described by exactly one row. Some recordings consist of multiple parts, that span several files, for example through echo-, part-, or split- entities. Such recordings MUST be documented with one row per file.

I am still unsure about what how to deal with this split case for physio file with MEG.
People having to split their acquired physio data in 2 to match the content of the MEG feels like an extra curation step and potential source of error.
Also as mentioned by @tsalo the events.tsv are supposed to follow a <match> pattern but don't have the proc and split entity.
This is template for MEG that would come out of merging this PR as is.
sub-<label>/
    [ses-<label>/]
        meg/
            sub-<label>[_ses-<label>]_task-<label>[_acq-<label>][_run-<index>][_proc-<label>][_split-<index>]_meg.<extension>
            sub-<label>[_ses-<label>]_task-<label>[_acq-<label>][_run-<index>][_proc-<label>][_split-<index>]_meg.json
            sub-<label>[_ses-<label>]_acq-<calibration>_meg.dat
            sub-<label>[_ses-<label>]_acq-<crosstalk>_meg.fif
            sub-<label>[_ses-<label>][_task-<label>][_acq-<label>][_space-<label>]_markers.mrk
            sub-<label>[_ses-<label>][_task-<label>][_acq-<label>][_space-<label>]_markers.sqd
            sub-<label>[_ses-<label>]_task-<label>[_acq-<label>][_run-<index>]_events.json
            sub-<label>[_ses-<label>]_task-<label>[_acq-<label>][_run-<index>]_events.tsv
            sub-<label>[_ses-<label>]_task-<label>[_acq-<label>][_run-<index>][_proc-<label>][_split-<index>][_recording-<label>]_physio.json
            sub-<label>[_ses-<label>]_task-<label>[_acq-<label>][_run-<index>][_proc-<label>][_split-<index>][_recording-<label>]_physio.tsv.gz
            sub-<label>[_ses-<label>]_task-<label>[_acq-<label>][_run-<index>][_proc-<label>][_split-<index>][_recording-<label>]_stim.json
            sub-<label>[_ses-<label>]_task-<label>[_acq-<label>][_run-<index>][_proc-<label>][_split-<index>][_recording-<label>]_stim.tsv.gz

Right - I agree with @tsalo opinion from https://github.com/bids-standard/bids-specification/pull/894#issuecomment-947701229

I think it really comes down to whether we can consider the entity "within-acquisition" or "between-acquisition". Entities denoting data from the same recording, like echo and part, should not be included in the physio filenames. The same rule applies to events files. I think there must have been a decision point in the past where the maintainers had to decide if events and physio files would be duplicated across echoes or not, but instead they chose to leverage the inheritance principle.

He points out two issues:

(1) rec's behavior doesn't seem consistent with that idea, and (2) I don't know how split should be treated.

re: 1) --> no idea
re: 2) --> Just looked into this ... are we being inconsistent in the spec? :grimacing:
split --> rows in scans.tsv :zap: inconsistent?
The (MEG-centric) documentation of the split entity and MEG split files both say:

If there are multiple parts of a recording and the optional scans.tsv is provided, remember to list all files separately in scans.tsv and that the entries for the acq_time column in scans.tsv MUST all be identical, as described in Scans file.

Yet the scans section says:

Each neural recording file SHOULD be described by exactly one row. Some recordings consist of multiple parts, that span several files, for example through echo-, part-, or split- entities. Such recordings MUST be documented with one row per file.

:face_with_head_bandage:
MNE-BIDS writes one row per "split" (instead of one row per neural recording, even if there are multiple "splits"), see: https://github.com/mne-tools/mne-bids/blob/c85dafaaac0ff79127b9513e130c566bc2313e0e/mne_bids/write.py#L458-L474 or try it yourself (click on details):

# %%
# do first:
# pip install mne
# pip install mne-bids
import os

import mne
import mne_bids
import numpy as np

# %%
# Create raw
nchannels = 100
ntimes = int(1e7)
data = np.random.randn(nchannels, ntimes)

info = mne.create_info(ch_names=[f"{i}" for i in range(nchannels)],
                       sfreq=1000, ch_types="mag")

raw = mne.io.RawArray(data, info)

# %%
# Save raw to FIFF
raw_fname = os.path.join(os.path.expanduser("~"), "Desktop", "test_raw.fif")
raw.save(raw_fname)
raw = mne.io.read_raw_fif(raw_fname)

# %%
# Save raw to BIDS
root = os.path.join(os.path.expanduser("~"), "Desktop", "split_test_bids")
os.makedirs(root, exist_ok=True)
bids_path = mne_bids.BIDSPath(subject="1", session="1", task="rest", root=root)
mne_bids.write_raw_bids(raw, bids_path)

# %%

or am I misunderstanding the above :point_up: This part from scans.tsv

Such recordings MUST be documented with one row per file

I am confused now whether "a recording" is the combination of all splits ... OR each split file.

I am confused now whether "a recording" is the combination of all splits ... OR each split file

@sappelhoff the recording is the combination of all splits, but you must log each file separately within the scans.tsv file.

suggestion for this PR:
we get all the non MEG related things in with version 1.7 and we have an open PR left to only deal with the MEG physio aspect of this.

Coming back to this ...

we get all the non MEG related things in with version 1.7 and we have an open PR left to only deal with the MEG physio aspect of this.

generally I agree.
BUT: is the only "MEG related thing" that is open the question of what to do with the split entity for physio and stim files?
If yes, the I think @tsalo's comment from https://github.com/bids-standard/bids-specification/pull/894#issuecomment-947701229 is valid (now that also my misunderstanding above was cleared up, thanks btw):

Based on the following line from the Scans file section of the spec, I'd assume that split should be treated like echo:

is the only "MEG related thing" that is open the question of what to do with the split entity for physio and stim files?
If yes, the I think @tsalo's comment from #894 (comment) is valid (now that also my misunderstanding above was cleared up, thanks btw):

Based on the following line from the Scans file section of the spec, I'd assume that split should be treated like echo:

I think this is the only MEG specific issue.
Happy to make split for MEG behave the way split does for MRI.


Date Range query produces "ValueError: Syntax Error".

Hi,
While trying to filter using date ranges, I get a Syntax Error. I have gone through all the queryParser docs in tantivy to see if I had a formatting issue. The following code demonstrates the problem.
Simply copy and paste the python code to reproduce:
from datetime import datetime
import os
import tantivy

schema_builder = tantivy.SchemaBuilder()
schema_builder.add_text_field("title", stored=True)
schema_builder.add_date_field("date_published", stored=True, indexed=True)
schema_builder.add_text_field("body", stored=True)
schema = schema_builder.build()

# Creating our index (in current working directory)
index = tantivy.Index(schema, path=os.getcwd() + '/index')

# Adding all the data.
writer = index.writer()
date = datetime(2022, 8, 2)
writer.add_document(tantivy.Document(
    date_published = date,
    title="The Old Man and the Sea",
    body="He was an old man who fished alone in a skiff in \
    the Gulf Stream and he had gone eighty-four days \
    now without taking a fish."
))
writer.commit()

index.reload()
searcher = index.searcher()

query = index.parse_query('date_published:[2002-10-02T15:00:00Z TO 2023-10-02T18:00:00Z]', ['date_published'])
print(query)
result = searcher.search(query, count=True, limit=5)

This produces the following error:

To confirm that I didn't have a formatting issue for query string, I recreated the code in rust, and it worked fine.
use tantivy::schema::*;
use tantivy::collector::TopDocs;
use tantivy::doc;
use tantivy::Index;
use tantivy::query::QueryParser;
use tantivy::Score;
use tantivy::{DocAddress, DateTime};
use std::env::current_dir;

fn main() {
    let mut schema_builder = Schema::builder();
    let title = schema_builder.add_text_field("title", TEXT | STORED);
    let body = schema_builder.add_text_field("body", TEXT);
    let num_options: NumericOptions = NumericOptions::default();
    let date = schema_builder.add_date_field("date_created", num_options | STORED | INDEXED);
    let schema = schema_builder.build();
    let mut index_path = current_dir().unwrap();
    index_path.push("index");
    let index = Index::create_in_dir(&index_path, schema.clone()).unwrap();

    let mut index_writer = index.writer(100_000_000).unwrap();

    let mut doc = doc!(
        title => "The Old Man and the Sea",
        body => "He was an old man who fished alone in a skiff in \
                the Gulf Stream and he had gone eighty-four days \
                now without taking a fish.",
    );

    doc.add_date(date, DateTime::from_unix_timestamp(1659423709));
    index_writer.add_document(doc).unwrap();

    index_writer.commit().unwrap();

    let reader = index.reader().unwrap();
    let searcher = reader.searcher();
    let query_parser = QueryParser::for_index(&index, vec![title, body]);

    let query = query_parser.parse_query("date_created:[2002-10-02T15:00:00Z TO 2023-10-02T18:00:00Z]").unwrap();
    let top_docs: Vec<(Score, DocAddress)> =
    searcher.search(&query, &TopDocs::with_limit(10)).unwrap();

    for (_score, doc_address) in top_docs {
        let retrieved_doc = searcher.doc(doc_address).unwrap();
        println!("{}", schema.to_json(&retrieved_doc));
    }
}

This has the output as :

Not sure if this is a bug, or some error from my side,
Would really appreciate some help here.

Working against current tantivy master, I don't get the same error:
$ python issue55.py
Query(RangeQuery { field: Field(1), value_type: Date, left_bound: Included([128, 0, 0, 0, 61, 155, 9, 240]), right_bound: Included([128,
0, 0, 0, 101, 27, 5, 32]) })
SearchResult(hits: [(1, DocAddress { segment_ord: 0, doc: 0 }), (1, DocAddress { segment_ord: 1, doc: 0 }), (1, DocAddress { segment_ord:
 2, doc: 0 })], count: 3)

I did modify the python reproducer in two ways:

Use makedirs to ensure the index dir is created
print the result at the end

Here is my full issue55.py:
from datetime import datetime
import os
import tantivy

schema_builder = tantivy.SchemaBuilder()
schema_builder.add_text_field("title", stored=True)
schema_builder.add_date_field("date_published", stored=True, indexed=True)
schema_builder.add_text_field("body", stored=True)
schema = schema_builder.build()

# Creating our index (in current working directory)
index_path = os.getcwd() + '/index'
os.makedirs(index_path, exist_ok=True)
index = tantivy.Index(schema, path=index_path)

# Adding all the data.
writer = index.writer()
date = datetime(2022, 8, 2)
writer.add_document(tantivy.Document(
    date_published = date,
    title="The Old Man and the Sea",
    body="He was an old man who fished alone in a skiff in \
    the Gulf Stream and he had gone eighty-four days \
    now without taking a fish."
))
writer.commit()

index.reload()
searcher = index.searcher()

query = index.parse_query('date_published:[2002-10-02T15:00:00Z TO 2023-10-02T18:00:00Z]', ['date_published'])
print(query)
result = searcher.search(query, count=True, limit=5)
print(result)

Perhaps all this means is that a new release of tantivy-py is needed.

Perhaps all this means is that a new release of tantivy-py is needed.
Very nice bug report, I don't think I can solve anything more than you've done yourself, but just to add a bit of context:

You're right, the current tantivy* on pipy are outdated, tantivy is 0.13 https://pypi.org/project/tantivy/#history.
I'm unsure if we have ownership of these packages on pipy, but as you've found out for the time I'd say you have to build from scratch a 0.17 version using the git repo using pip install git+https://github.com/quickwit-oss/tantivy-py/.
It might be the occasion to create a tantipy pipy package since the bad word play was missed.... ;) Probably needs discussion!

it looks like its a single maintainer on pypi re @poljar

@Sidhant29 now that a new version of tantivy-py is out, does this status change?

@Sidhant29 now that a new version of tantivy-py is out, does this status change?

Confirmed new version v0.20.1 on installation through pip.
The new version resolves this issue.
Closing this issue.


<EMAIL_ADDRESS>hash check failed

output:

scoop install project64
Installing 'project64' (3.0.1) [64bit]
setup-project64-3-0-0-5632-f83bee9 (4.2 MB) [=================================================================] 100%
Checking hash of setup-project64-3-0-0-5632-f83bee9 ... ERROR Hash check failed!
App:         games/project64
URL:         https://www.pj64-emu.com/file/setup-project64-3-0-0-5632-f83bee9/
First bytes: 4D 5A 50 00 02 00 00 00
Expected:    5892d6bef423076a103991c78690083a87536865ea848c0eccf2e4f94a64033b
Actual:      93f3db8dc5642d39fcc44eaf43811cdbdf912690f95041e924e038e76f36f921

Please try again or create a new issue by using the following link and paste your console output:
https://github.com/Calinou/scoop-games/issues/new?title=project64%403.0.1%3A+hash+check+failed

Fixed by https://github.com/Calinou/scoop-games/issues/502. Thanks for the report :slightly_smiling_face:


Unable to launch Fusion Obstacle Visualization Tool

Hi team,
I want to use the Fusion Obstacle Visualization Tool described here (https://github.com/ApolloAuto/apollo/blob/r6.0.0/docs/howto/how_to_run_offline_sequential_obstacle_perception_visualizer.md), and my Apollo version is the latest. But the building process showed that it cannot find the modules and I noticed that it seems to be excluded from the current version. So how can I use the tool and its corresponding ones (export_sensor_data:export_sensor_data) in the current version?
Thanks.

Can anyone help me please?

If so, you can try the rollback 3.0.0 version. There is a related discussion here #2527

Thanks @daohu527 . I have tried but it seems to have problem related to docker image that the OpenGL went wrong:

Since my computer uses Nvidia 2080 GPU, it is not possible for me to roll back the driver to previous version like 3XX mentioned in other issues. Is it possible that this function will be added into the current master branch since my computer does not have such problems (OpenGL) with the latest Apollo system?


Timeouts from cla-assistant?

URL to the linked Repo/Org: https://github.com/cypress-io/cypress/pull/4755/
Steps to reproduce the problem:

Visit https://cla-assistant.io/

What is the expected result?
Loading of repos
What happens instead?
I was having my cla assistant show as pending in my GitHub checks.

So, I went to visit https://cla-assistant.io/ to see if there was some issue linking the repo or if I could have it recheck, but now the XHR request in https://cla-assistant.io/ to https://cla-assistant.io/api/github/call is just resulting in a 524 response code
GitHub status reports no issues: https://www.githubstatus.com/

<!DOCTYPE html>

<title>cla-assistant.io | 524: A timeout occurred</title>
<meta charset="UTF-8" />
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1" />
<meta name="robots" content="noindex, nofollow" />
<meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1" />
<link rel="stylesheet" id="cf_styles-css" href="/cdn-cgi/styles/cf.errors.css" type="text/css" media="screen,projection" />

              Error
              524
              Ray ID: 4fb4769c5b7ca318 • 2019-07-24 08:20:06 UTC

A timeout occurred

  You

Browser

  Working

  Hong Kong

Cloudflare

  Working

  cla-assistant.io

Host

  Error

What happened?

The origin web server timed out responding to this request.

What can I do?

If you're a visitor of this website:

Please try again in a few minutes.

If you're the owner of this website:

The connection to the origin web server was made, but the origin web server timed out before responding. The likely cause is an overloaded background task, database or application, stressing the resources on your web server. To resolve, please work with your hosting provider or web development team to free up resources for your database or overloaded application. Additional troubleshooting information here.

    Cloudflare Ray ID: 4fb4769c5b7ca318
    •
    Your IP: <IP_ADDRESS>
    •
    Performance & security by Cloudflare

@jennifer-shehane Thank you for reaching out to us again and providing detailed insights into the problem .. CLA Assistant should be working without any performance issue now. We are aware that users are facing performance issues lately. Hopefully, in our next release,  this performance issue should be resolved. We will keep this issue open till then.
I just retriggered the check for this Pull Request and It looks good now. In case, If you need it then you can use the API get call: https://cla-assistant.io/check/cypress-io/cypress?pullRequest=4755

Great 👍 Yeah, I see that it's loading quite quickly now. Was able to retrigger checking the PRs and everything is good.


Fix mac address verification

Before this fix there was a problem with upper or lower case mac address

LGTM,
@SchSeba can you add a short description in commit msg explaining why its needed ?

LGTM

There are some issues with mlnx CI should be fixed later today / tommorow.

@adrianchiris done

/test-all


docs: add a docs section for Github Pages Deployment

closes #814
PR Checklist
Please check if your PR fulfills the following requirements:

[x] The commit message follows our guidelines: https://github.com/analogjs/analog/blob/main/CONTRIBUTING.md#-commit-message-guidelines
[ ] Tests for the changes have been added (for bug fixes / features)
[x] Docs have been added / updated (for bug fixes / features)

PR Type
What kind of change does this PR introduce?

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] CI related changes
[x] Documentation content changes
[ ] Other... Please describe:

Which package are you modifying?

[ ] vite-plugin-angular
[ ] vite-plugin-nitro
[ ] astro-angular
[ ] create-analog
[ ] router
[ ] platform
[ ] content
[ ] nx-plugin
[ ] trpc

What is the current behavior?

Closes #814
What is the new behavior?
Does this PR introduce a breaking change?

[ ] Yes
[x] No

Other information
[optional] What gif best describes this PR or how it makes you feel?

@brandonroberts can you please review again? I just created an 'Analog Publish Github Pages' Github Action and added the information to the docs too.

@d-koppenhagen nice!

One suggestion for the GitHub Action is to refer to Analog as AnalogJS instead of Analog.js. Its better for SEO that way

I will do so!


Still in CONNECTING state

First time I've used sockets in a while...
I'm building a simple react voting example that allows a room of people to click as many times and as fast as they want on one of 6 choices and that will cast their vote.
This definitely seems like an issue with how fast everything can process each vote.
However, I'm not sure where to start?
This is the bulk of the code:
  const onVote = vote => {
    console.log({ vote, ws });
    ws.json({
      action: 'sendMessage',
      data: JSON.stringify(vote)
    });
  };

  const onMessageReceied = ({ data }) => {
    console.log({ data });
    const voteData = JSON.parse(data);
    console.log({ onMessageReceied: voteData });
    setBallotsList({ ...ballotsList, ...voteData });
  };

  useEffect(() => {
    console.log({ ballotsList });
    ws = new Sockette(config.site.api, {
      timeout: 5e3,
      maxAttempts: 1,
      onopen: e => console.log('connected:', e),
      onmessage: e => onMessageReceied(e),
      onreconnect: e => console.log('Reconnecting...', e),
      onmaximum: e => console.log('Stop Attempting!', e),
      onclose: e => console.log('Closed!', e),
      onerror: e => console.log('Error:', e)
    });
    return function cleanup() {
      ws && ws.close();
      ws = null;
    };
  }, [ballotsList]);

You just have to wait for connection to be established before you can start sending messages.

The issue is normal WebSocket exposes readyState and sending may be postponed if it's not 1 (WebSocket.OPEN).


Contour representation thickness over parallel surfaces

In some cases, like liver surfaces parallel to the contour, the contour representation may produce overly thickened contours

We might be able to mitigate this by reducing the thickness of the contour selectively by weighting the thickness by the cosine of the angle between the fragment's normal and the surface's normal. A similar principle may apply to the distance contours strategy.

we could also reduce the thickness of the contour


Feat/primitive gizmos

The PR is in a reviewable state now in the sense that the basic implementations are there. There are still some ToDos that I'm aware of:

[x] docs for all the new structs and traits
[x] implement Default and derive other useful traits for the new structs
[x] Take a look at the notes again (Do this after a first round of reviews)
[x] Take care of the repetition in the circle drawing functions

Objective

TLDR: This PR enables us to quickly draw all the newly added primitives from bevy_math in immediate mode with gizmos
Addresses #10571

Solution

This implements the first design idea I had that covered everything that was mentioned in the Issue https://github.com/bevyengine/bevy/issues/10571#issuecomment-1863646197

Caveats

I added the Primitive(2/3)d impls for Direction(2/3)d to make them work with the current solution. We could impose less strict requirements for the gizmoable objects and remove the impls afterwards if the community doesn't like the current approach.

Changelog

implement capabilities to draw ellipses on the gizmo in general (this was required to have some code which is able to draw the ellipse primitive)
refactored circle drawing code to use the more general ellipse drawing code to keep code duplication low
implement Primitive2d for Direction2d and impl Primitive3d for Direction3d
implement trait to draw primitives with specialized details with gizmos

GizmoPrimitive2d for all the 2D primitives
GizmoPrimitive3d for all the 3D primitives
(question while writing this: Does it actually matter if we split this in 2D and 3D? I guess it could be useful in the future if we do something based on the main rendering mode even though atm it's kinda useless)

This PR currently includes some other general changes to Gizmos which could be factored out. They are:

Generalizing circle drawing to ellipse drawing for gizmos
Soon ™  Arc3d drawing support for gizmos

The prior was pretty straight-forward. For the latter, here are some references how other game engines implement Arc3d, which I used for orientation:

unity - https://docs.unity3d.com/ScriptReference/Handles.DrawWireArc.html
unreal blueprints - https://docs.unrealengine.com/5.2/en-US/BlueprintAPI/GeometryScript/PolyPath/CreateArcPath3D/
godot (doesn't seem to have built in arcs, here's a lib that implements it) - https://github.com/nyxkn/godot-draw3d/blob/main/addons/draw3d/draw_3d.gd#L212-L240

Some general notes for reviewers:

I'll try to add an example to prove everything is working fine
If you want I can split out the new general functionalities of Gizmos into a separate PR (Ellipses & Arcs)

@Jondolf Can you take a look over this and review it if you find some time?

I think the 3D arc should be in a separate PR since it's new functionality that isn't related to the primitives, which are the core focus of this PR. But the ellipse might be fine since it's needed for the primitives too.
I responded about the API in the issue and added a proposal for an alternative: https://github.com/bevyengine/bevy/issues/10571#issuecomment-1883854471. I felt like it'd be too long and slightly off-topic to post here.

@rodolphito I will when this branch is ready. Atm I'm facing the problem described in https://github.com/bevyengine/bevy/issues/10571#issuecomment-1893429450 which blocks this here from a merge anyways.

Resolved the last issue with this and also removed the nix files

I'm wondering if Self::Output<'_> is 2018 idioms..

Just so I don't forget: This needs a rebase on this https://github.com/bevyengine/bevy/pull/11540 and some adjustments because of it.

Another reason why having translation and rotation as arguments could be useful: the primitive gizmo method is in a trait, so you could make a generic system or method that renders the given primitive at some position. If the position and rotation are in the primitive-specific builders, a generic system like this is not possible (the gizmo is always at the origin).
Example use case: bevy_xpbd has a physics debug rendering pipeline. I could convert each collider to a primitive if possible, and call the primitive gizmo method for collider visualization. If I can't do this with generics, each primitive type must be handled individually.

TLDR of what I'd personally change:

Remove position, rotation, and color from all builders
Change API to gizmos.primitive_2d(primitive, translation, rotation, color)

Every primitive is centered at the origin by default, and supports rotation

Split primitives into 2D and 3D files
If you want to keep support for e.g. segments starting from a point instead of being centered at the origin, you could add that as a configuration option. But imo all primitives should be centered at the origin by default.

Sorry if this is a lot 😅 and feel free to disagree! This is just what I would find to be the most useful and consistent API

Makes sense! I implemented everything as requested. Should be more in line with the rest of the gizmo code. Another nice side effect of these changes is that the code is much "simpler". Less code = easier to maintain, so yay 🎉
The only thing that I didn't use from the review is the translation name. I used position instead to make it even more similar to the rest of the gizmo methods.
Thanks for the review 😁 👍🏼

I suggested translation because I don't consider e.g. lines and planes to have a specific "position"; they can simply be translated relative to the origin. This is probably nitpicking though, so position is fine too :)
I made a slightly stripped down version of the 3d_gizmos example:
https://github.com/bevyengine/bevy/assets/57632562/6942b2ad-98c6-4769-bb52-23d0948ef274
The primitives look good, but I see two things that I consider to be issues.
Firstly, I think the primitives (capsule, cylinder, cone, and conical frustum) should be upright instead of facing Z. I asked about this on the Discord, and heard that gizmos should typically face negative Z, but I think we agreed that it's reasonable for these primitives to be upright. The primitive meshes and colliders would most certainly be upright, so making gizmos differ from this is probably not a good idea.
It's also just intuitive in my opinion; if I draw a cone with no rotation, I'd expect it to be upright like a traffic cone, not pointing towards Z or negative Z. The names of the properties of the primitives also suggest this: e.g. cylinders and cones currently have a height property, not length.
Secondly, in my opinion, cones and conical frusta should not start at the base, but instead be centered on the origin like other primitives (i.e. the center of the cone is at the geometric center, half-way between the tip and base). Cylinders, conical frustums, and cones can be treated as different versions of the same shape: many engines only have a cylinder, but it's actually a conical frustum since it has two radii; cylinders and cones are a special case of this. They should all be positioned similarly, centered at the origin, like other primitives.
For reference, Godot has conical frusta (called cylinder) centered like this for both the mesh and collider, Parry has cone and cylinder colliders centered, and Blender also centers cylinders (but doesn't seem to have two radii for them).
Side note: The gizmo examples cycle through primitives with the Up/Down arrow keys, but the text overlays don't say this.

Good points 👍🏼  I'll tackle these asap.
The upright thing makes total sense and I already thought about if I should make that change. I used Z up mainly for my mental model while developing since I'm used to it from other applications using mainly 2D structures with an optional Z coordinate in specific cases.
As for the centering: That's also reasonable to further unify implicit assumptions, so cool.
I'll also add UI text telling the example users how to navigate the 3D gizmos.

FYI, Capsule was renamed to Capsule3d and a Capsule2d primitive was added: #11585
It should probably be added as a 2D gizmo too, it'd just be two semicircles and lines to connect them

FYI, Capsule was renamed to Capsule3d and a Capsule2d primitive was added: #11585
It should probably be added as a 2D gizmo too, it'd just be two semicircles and lines to connect them

Yeah I saw that. Solid addition btw! Really cool seeing the primitives evolve. They grow up so fast! 🥲

@Jondolf Examples are updated now and you can take a look at most primitives (except for the polygon ones)

Leaving this until Monday's merge train: if you have time to write docs this weekend, great! But I'm comfortable merging this either way.


fix issue jest 14766

fix issue https://github.com/jestjs/jest/issues/14766

@SimenB Thanks for the reminder, it has been updated.
The idea originates from Playwright and Puppeteer

https://github.com/microsoft/playwright/blob/main/packages/playwright-core/src/server/chromium/crCoverage.ts#L88
https://github.com/puppeteer/puppeteer/blob/main/packages/puppeteer-core/src/cdp/Coverage.ts#L252
But I don't know why, hope someone can explain.

I tried to do some research as well as to why this is important. Searching GitHub reveals a whole bunch of places where Debugger.enable is combined with Profiler.enable but a reason in a commit message or so is nowhere to be found.
But to repeat @cenfun's link: https://github.com/puppeteer/puppeteer/blob/88df4075171cdd87ad60241dd77028c96b1a7d9b/packages/puppeteer-core/src/cdp/Coverage.ts#L240-L248
This is code written by the Puppeteer authors themselves (i.e. Google) and the do the same.
I also have a repro if you'd like:
https://github.com/actions-rs-plus/core.
If you clone, npm i etc and then do JEST_JUNIT_OUTPUT_DIR=reports/ JEST_JUNIT_OUTPUT_NAME=unit-tests-report.xml npm run test:ci -- --runInBand --coverage you'll see missed lines.
Apply the patch above in node_modules/collect-v8-coverage and all jumps back to 100%.

@SimenB is there anything preventing this from being merged? Can I help in any way to push this forward?

@HarelM I can't speak for Simen, but in our own internal repositories we tried to implement this patch ourselves, and while it worked and fixed coverage reporting for us, it caused steep performance regressions in Jest.

@HarelM I can't speak for Simen, but in our own internal repositories we tried to implement this patch ourselves, and while it worked and fixed coverage reporting for us, it caused steep performance regressions in Jest.

What good is performance if the data produced is garbage. I'd rather have my tests run slower and have accurate results than faster tests with coverage that is meaningless.

@mudcovered sure, but why not expect both? Performance and correctness were once possible. Why not now? Also FWIW, you can take a less impactful hit to performance if you use the Babel coverage provider, which absolutely shouldn't be necessary if you already have compiled JavaScript.
It's completely reasonable to expect better from an industry standard testing framework, especially since Node 18 is currently in maintenance mode and will be out of support come April.

Hi @SimenB
Is there a decision to merge this one actually? Or we have to find another solution?


ring polygon support

Please add support to create a donut shaped polygons in google_maps_flutter. That is a polygon that have holes or island inside..
Secondly, it would be very useful if the Polygon class has method to do geometric operations on them such as Union and Subtraction. If it is not possible, can someone show me an algorithm to do such things with provided List?
Thank you google_maps_flutter team!

Hi @BataraSurya
the shape of the polygon you want to draw comes down to your implementation,
you may want to look at this article and this SO question
Please see https://flutter.dev/community for resources and asking questions like this,
you may also get some help if you post it on Stack Overflow and if you need help with your code, please see https://www.reddit.com/r/flutterhelp/
Closing, as this isn't an issue with Flutter itself. If you disagree, please write in the comments and I will reopen it.
Thank you


Mobile Video

Hello, great plugin, just wondering how you disable the video on mobile devices. I'm still seeing a call to the video even though it's not playing. Does it take any bandwidth up at all at mobile?

Hey @b3nhartl3y. I'm having to do this myself, and I've found an option if you don't mind using another plugin (it is lightweight). Harvey.js is basically media queries in javascript: http://harvesthq.github.io/harvey/
So in the JS, you'll want something like:
Harvey.attach('screen and (min-width: 600px)', {
    on: function() {
        $('.home-hero').vide({
           // your stuff here
        });
    },
    off: function() {
        var instance = $('.home-hero').data('vide');
        instance.destroy();
    }
});

I've used 600px as an example minimum width. If the device is larger than that, it will follow 'on' and activate/load the Video.  That should mean that the video isn't loaded on mobile. Works when I tested it on mobile.

This seems like the biggest deal with this plugin. Would love a solution. Downloading a background video on mobile is irresponsible. Anyone have any ideas?

Couldn't get Harvey to work, but actually the plugin is probably over kill now this is available:
matchmedia
matchmedia usage
Here's an example of how I got it working:
`
var isMobile = window.matchMedia("only screen and (min-width: 400px)");
if (isMobile.matches) {
	var target = $('#vide')
	target.vide({
	  mp4: "video.mp4",
	  webm: "video.webm"
	  ogv: "video.ogv",
	  poster: "poster.png"
	}, {
		posterType: "jpg",
		loop: true,
		muted: true,
		position: "0% 0%",
		resize:true
	});
}else{
	var target = $('#vide')
	target.vide({
	  poster: "poster.png"
	}, {
		posterType: "jpg",
		loop: true,
		muted: true,
		position: "0% 0%",
		resize:true
	});
}

`
This solution means no Video is even loaded, let alone run on mobile. Saves bandwidth and means you don't have to change any css to ensure the poster and videos fit in your element layout.

This works, but your "isMobile" variable is counter-intuitive. I would change the "min-width" media-query to "max-width" so that "isMobile" is true.

Simple Solution, This will trigger video fallback and shows image on mobile screens
@media screen and (max-width: 767px)
{
#parent-div-name video
{
display: none
}
}

Couldn't get Harvey to work, but actually the plugin is probably over kill now this is available:
matchmedia
matchmedia usage
Here's an example of how I got it working:
var isMobile = window.matchMedia("only screen and (min-width: 400px)");

if (isMobile.matches) {
    var target = $('#vide')
    target.vide({
      mp4: "video.mp4",
      webm: "video.webm"
      ogv: "video.ogv",
      poster: "poster.png"
    }, {
        posterType: "jpg",
        loop: true,
        muted: true,
        position: "0% 0%",
        resize:true
    });
}else{
    var target = $('#vide')
    target.vide({
      poster: "poster.png"
    }, {
        posterType: "jpg",
        loop: true,
        muted: true,
        position: "0% 0%",
        resize:true
    });
}

This solution means no Video is even loaded, let alone run on mobile. Saves bandwidth and means you don't have to change any css to ensure the poster and videos fit in your element layout.

Sure? Video starts playing


fix: fixed cbor dependency

1. Description

1.1. Checklist

[ ] The title of my PR starts with a Conventional Commit prefix (fix:, feat:, docs: etc).
[ ] I have read the Contributor Guide and followed the process outlined for submitting PRs.
[ ] I have updated/added tests for ALL new/updated/fixed functionality.
[ ] I have updated/added relevant documentation in docs and added dartdoc comments with ///.
[ ] I have updated/added relevant examples in examples.

1.2. Breaking Change

[ ] Yes, this is a breaking change.
[ ] No, this is not a breaking change.

1.3. Related Issues

Codecov Report

Merging #486 (bef3968) into main (911d5fc) will increase coverage by 6.81%.
The diff coverage is n/a.

:exclamation: Current head bef3968 differs from pull request most recent head 3a4e98b. Consider uploading reports for the commit 3a4e98b to get more accurate results

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
@@            Coverage Diff             @@
##             main     #486      +/-   ##
==========================================
+ Coverage   77.11%   83.92%   +6.81%
==========================================
  Files         173        6     -167
  Lines        1586      112    -1474
==========================================
- Hits         1223       94    -1129
+ Misses        363       18     -345

see 167 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Mobile / small screen left menu is purple, not blue

Setup

occurs on Pivot demo website
when on screen size width 600px or less
MediaWiki version: 1.30, 1.31, possibly all
Pivot version: 2.1, 2.2, possibly all

Issue
Purples are used for the left side bar on small screens including cell phones, and small tablets. Does not match desktops or other colors in theme (dark slate blue etc). Shade #8c489f is particularly bright and unpleasant.
Left menu that is always visible on desktops is blue.
Problem code appears to be in pivot.css
ul.off-canvas-list li label { 	background: #c3c3e5; 	border: none; 	color: #222; } ul.off-canvas-list li a { 	border: none; 	background: transparent; 	color: #8c489f; } ul.off-canvas-list li a:hover {     background: #eeffee; } .right-off-canvas-menu, .left-off-canvas-menu { 	background: #f1f0ff; }
###Potential improvement
A branch with a grayscale sidebar would be very welcome, or separate CSS in which to set all colors in the theme.

You can override colors by creating the page MediaWiki:Pivot.css, then using your browser's web inspector to find the css style names to target, by adding something like:
ul.off-canvas-list li label {
    background: #c3c3c3;
}
.right-off-canvas-menu, .left-off-canvas-menu {
    background: #f9f9f9;
}
ul.off-canvas-list li a {
    color: #2f2f2f;
}


Suggestion: Highlight seedless birdhouses in red

When doing birdhouse runs, I occasionally forget to add seeds to the birdhouse once it's placed. If the seedless birdhouses were highlighted in red it would make that much more difficult to accidentally do.
This feels like a fairly simple addition with no drawbacks. Just a little quality of life thing.
I apologize if it's been suggested in the past or if it's already a feature and I'm just unaware.
Thanks boys love the client <3

The birdhouse timer page does show seedless birdhouses, but I agree; a red highlight over the actual birdhouse would be great.

it could have the same highlight as the furniture in the mahogany homes


no labels, images labelled even though i got " Labeled dataset created - ready for distillation."

Search before asking

[X] I have searched the Autodistill issues and found no similar bug report.

Bug
no images, labels generated even after running the code: https://colab.research.google.com/drive/1DqvrUVmnhlhrmRC_OfWI3nQqQX1GlgkN?usp=sharing
Dataset: https://www.kaggle.com/datasets/dpamgautam/grocery-dataset
import supervision as sv

dataset = sv.DetectionDataset.from_yolo(
    images_directory_path=IMAGES_DIRECTORY_PATH,
    annotations_directory_path=ANNOTATIONS_DIRECTORY_PATH,
    data_yaml_path=DATA_YAML_PATH)

len(dataset)

Output
0

Environment
Kaggle notebook
!pip install -q \
autodistill \
autodistill-grounded-sam \
autodistill-yolov8 \
supervision==0.9.0 \
roboflow

Minimal Reproducible Example
no images, labels generated even after running the code: https://colab.research.google.com/drive/1DqvrUVmnhlhrmRC_OfWI3nQqQX1GlgkN?usp=sharing
Additional
No response
Are you willing to submit a PR?

[ ] Yes I'd like to help by submitting a PR!

Hello there! Can I confirm your dataset is in the YOLOv5 PyTorch TXT format?

Hello there! Can I confirm your dataset is in the YOLOv5 PyTorch TXT format?

Here is the dataset

That is a large dataset for me to download. Can you confirm the dataset type for me so I don't have to download it?

That is a large dataset for me to download. Can you confirm the dataset type for me so I don't have to download it?

it is a kaggle dataset:
originated from : https://github.com/gulvarol/grocerydataset
<img width="315" alt="Screenshot 2023-11-17 at 10 15 09 AM" src="https://github.com/autodistill/autodistill/assets/20493493/a3868dc7-e9eb-43ff-a618-2daacac15284

">
Let me know if this helps

Hello there! You should pass in a folder that only contains images to the .label() function. This function does not look in sub-folders. Make sure that the extension of images is equal to the extension="" value you pass into the .label() function.
For example:
base_model.label(input_folder="images", output_folder="dataset", extension=".jpg")

will label all .jpg folders in the images folder.

Hello there! You should pass in a folder that only contains images to the .label() function. This function does not look in sub-folders. Make sure that the extension of images is equal to the extension="" value you pass into the .label() function.
For example:
base_model.label(input_folder="images", output_folder="dataset", extension=".jpg")

will label all .jpg folders in the images folder.

Thanks for getting back to me. So it does not work work on multiple sub folder with images classified differently? . I already defined the ontology part before using grounding Dino to label the images.
I have shared the notebook for your reference, love to hear if there are ways to do it? . I have tried on single folder of images and it works fine but would love to try on folder with multiple folders by defining the ontology.
thanks again

So it does not work work on multiple sub folder with images classified differently?

This is correct.

I have tried on single folder of images and it works fine but would love to try on folder with multiple folders by defining the ontology.

We don't have plans to support labeling data that is in multiple folders, although we encourage you to file a PR to autodistill if this is something that you would like to see in the library!

Thanks for your instant reply . Love to create a PR for it.
I wrote an article to spread the word about Autodistill :
https://ai.plainenglish.io/unlocking-the-power-of-autonomous-image-annotation-with-autodistill-39388e72128a?sk=71e8acd82ab342c2e2dd67acefe79f23
Thanks Again !!
On Tue, Nov 21, 2023 at 06:49 James @.***> wrote:

So it does not work work on multiple sub folder with images classified
differently?
This is correct.
I have tried on single folder of images and it works fine but would love
to try on folder with multiple folders by defining the ontology.
We don't have plans to support labeling data that is in multiple folders,
although we encourage you to file a PR to autodistill if this is
something that you would like to see in the library!
—
Reply to this email directly, view it on GitHub
https://github.com/autodistill/autodistill/issues/90#issuecomment-1820768576,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AE4LJNJBRQNITQ63PCPNE4DYFSIMTAVCNFSM6AAAAAA7P4U3KGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMRQG43DQNJXGY
.
You are receiving this because you authored the thread.Message ID:
@.***>


Looking for advice on non-standard feeds tags...

I have dived into the code  a little and am looking at modifying for non-blog rss feeds.  The industry I am focused on doesn't have a standard for feed tags.  Is there an easier way to manage such diverse tag "sets" or is it a lot of manual modification to the code depending on the feeds unique qualities?
Thank you in advance.

Can you tell a bit more about the feeds, what would their markup or schema look like?
Right now the solution uses 'feedparser', which works on a broad set of Atom and RSS feeds (XML based). It wouldn't be too difficult to add support for something else, I'd be happy to help with that.

Thanks for the kind offer.  Let me review the feedparser docs and reply with a little more insight and an example.  All the best.


(docs): Add documentation for Cloudflare KV cache

We are close to releasing @envelop/response-cache-cloudflare-kv
See issue - https://github.com/n1ru4l/envelop/issues/2055
Pull request - https://github.com/n1ru4l/envelop/pull/2057
This PR updates the graphql yoga documentation to showcase the soon to be released plugin. These docs would be very helpful for those using graphql on Cloudflare Workers and looking for a cache solution.

[!WARNING]
Don't merge this PR until the linked PR for Envelop has been merged and deployed.

Hi @AdiRishi, If I well remember, this is still not usable right ? We still have some types issues ?

@EmrysMyrddin that's correct, we haven't solved the type issue yet.


TinyCss doesnot support @font-face.

@font-face in css files gives off ParseError. Please Confirm

I've noticed this as well. Bootstrap makes use of @font-face. This can cause lots of reported errors when using tinycss to verify CSS correctness.

I don’t have more to add to my comment above.

This should be fixed with 100%-tested commit:7ac8bc3. Tests and reviews are welcome!

Tests now pass with 2.7, 3.3, 3.4, 3.5, pypy and pypy3, with isort, flake8 and coverage.


Distinguish between warning and error on debug page

This issue is imported from pivotal - Originaly created at Sep 8, 2016 by Thijs Kinkhorst
The attribute schema allows to define attribute validation errors (uid missing, sho missing) and warnings (displayName missing, mail missing). However, the difference between the two cannot be seen on the debug page.
https://github.com/OpenConext/OpenConext-engineblock/issues/207

This concerns the debug page, for instance: https://engine.surfconext.nl/authentication/sp/debug
Change the color (using HTML/CSS or, easier, another SVG) to yellow, as discussed via another channel, and the message for warning in:

debugidpresponse.phtml (Alex Rothuis - Oct 28, 2016)

You can test it my removing e.g. the mail attribute from your Mujina idp. Then you should get a warning but not an error that mail is missing.
For texts I think this one should be reworded because it now confuses people, the "required" is confusing if something is just a warning:
https://github.com/OpenConext/OpenConext-engineblock/blob/f5c2c635118dc0b351e1c8d6368ef1f8897fd790/languages/en.php#L269
I would recommend to use "should have at least" for warning and "requires at least" for error. If these are not easily splittable, then just reword to "should have at least". (Thijs Kinkhorst - Dec 12, 2016)

Splitting them seems non-trivial as the corresponding validator is tailored specifically to error messages. I would prefer to change the wording for both, the icon implies the severity of the 'should have at least'. (Alex Rothuis - Dec 12, 2016)

:+1: (Thijs Kinkhorst - Dec 12, 2016)


dependency conflict

The sqlalchemy version dependency is different from docs and src.
docs:

Prerequisites
You will need the following softwares to run, build and test the dialect. Everything apart from Python and pip can be installed via pip itself.

Python 3.x or higher
pip 22 or higher
SQLAlchemy > 1.3.24 and < 2.0
vertica-python 1.1.1 or higher

src:
    install_requires=(
        'six >= 1.10.0',
        'sqlalchemy<2.0.0,>=1.4.0',
        'vertica-python>=1.1.1'
    ),

Is it must be higher than 1.4.0?
I would like to use this dialect for Superset, but apache-superset is not supported sqlalchemy 1.4.0 now.
if I install sqlalchemy==1.4.46:
apache-superset 2.0.1 requires sqlalchemy!=1.3.21,<1.4,>=1.3.16, but you have sqlalchemy 1.4.46 which is incompatible.

if I install sqlalchemy== 1.3.16:
vertica-sqlalchemy-dialect 0.0.1 depends on sqlalchemy<2.0.0 and >=1.4.0

I think that this issue is releted to DataHub test failure. (https://github.com/datahub-project/datahub/pull/7059)
Could you support the sqlalchemy version lower than 1.4?


Update zh-HANT.coffee

translation admin and league to zh-HANT

Hi, @ray0814. Thanks for the translations! So we can merge this in, can you sign the CLA?

Thanks!


[Firestore] Error adding document: Error: 4 DEADLINE_EXCEEDED: Deadline exceeded after 269.549s,metadata filters: 0.002s,LB pick: 0.002s,remote_addr=<IP_ADDRESS>:443

[REQUIRED]

Operating System version: Linux
Firebase SDK version: 12.1.0
Firebase Product: Firestore
Node.js version: 20.5.0
NPM version: 9.8.0

I am using firebase admin sdk for this but I have attached the version number for both-
"firebase": "10.11.1",
"firebase-admin": "12.1.0",
Step 3: I have a serverless webapp which has a mostly modest write rate i.e. less than 3-4k per day.  The hourly peak for writes is about 500 and for reads it is about 38k. Each of my vercel function is deployed separately but I am not sure if the DAO setup is shared between all of them or if they all get their own instances.
In dao files, I initialize the admin app and use getFirestore to generate a db client to query.
 database = getFirestore(app);
It is weird that these errors report anywhere from 90 seconds to 200 + seconds of delay since our db is fairly small and the number of queries is also low enough that they shouldn't be blocked for this long. Most of these are user driven actions so updates of individual documents or collections will have a few seconds of gaps between them.  I am nowhere close to the limits to be facing this.
I am also curious if there is a limitation on the number of connections a single database client can make with firestore db using getFirestore(app) since our connection usage peaks at 10.
Steps to reproduce:
There is no standard pattern to this. I get it regularly but only intermittently for the same queries.

Drive-by comment: If the problematic query contains an "or" clause, it could be related to https://github.com/googleapis/nodejs-firestore/issues/2055, for which a backend fix will be rolling out in August 2024.

@dconeybe it is mostly happening in write queries. I am pasting a sample here
export const abcdyz = async (
    abcdy: AB,
): Promise<boolean> => {
    const db: FirebaseFirestore = getDBInstance();
    const collection = db.collection('abcdy');
    collection
        .add(abcdy)
        .then(docRef => {
            console.log('Document added with ID:', docRef.id);
        })
        .catch(error => {
            console.error('Error adding document:', error);
            return false;
        });
    return true;
};

While the AB object is probably a few bytes I am not sure it is big enough to cause any issues in writes

Hi @Drpepper78 , thank you for reporting this issue. Could you please confirm:

if you have reached Maximum Writes per second
If this is only happening to writes

This could be a similar issue as https://github.com/firebase/firebase-admin-node/issues/2495, which is fixed in newer SDK version. Please try upgrading the SDK and see if the issue persists.

@milaGGL

I am certain our writes per second are not high enough to impact this. That said, I haven't found any documentation on what the exact figure is. Even the url you linked doesn't actually specify that limit.
https://firebase.google.com/docs/firestore/best-practices
This is the only place where I have found the lower bound which appears to 500 writes per second. I am sure we aren't eve at 50 writes per second right now.

I don't believe that's the case. We do get some errors in reads as well. Our system is read heavy but writes are more impacted by this than reads. The query impacted the most is a write query which writes  a few kb of data into an audit collection. It always makes a new entry. There are no indexes or read queries for this collection.

Additional data point if it helps - this db is in native mode based on google cloud and not datastore mode.
I am speculating here but is there some sort of limit on per document operation? If a document is being written to, can it still be read at the same time on another connection? Are there collection level limitations on writes per second?
Based on the issue you linked I will add these env variables
GRPC_VERBOSITY=debug
GRPC_TRACE=all

and check if I am able to get any more insights.  Thanks

Hi @milaGGL another update is that I just noticed in the stack trace of my read API that the error stack seems to be from a write request invoked elsewhere. This seems to be a vercel issue where logs are assigned incorrectly. I have opened an issue with them but until I get a response we can assume that issue mainly lies with writes and we are well below the write limits.

Have you tried upgrading the SDK to the newest version? This could be due to the broken grpc library.

Hi @milaGGL , I am getting same error. We might have the same issue.
Firestore v7.10
Google-Gax v4.3.3

Here's the trace. This might help Drpepper too:
Unhandled Rejection: Error: 4 DEADLINE_EXCEEDED: Deadline exceeded after 266.535s,metadata filters: 0.001s,LB pick: 0.002s,remote_addr=***.***.***.***:443
    at callErrorFromStatus (/var/task/node_modules/google-gax/node_modules/@grpc/grpc-js/build/src/call.js:31:19)
    at Object.onReceiveStatus (/var/task/node_modules/google-gax/node_modules/@grpc/grpc-js/build/src/client.js:193:76)
    at Object.onReceiveStatus (/var/task/node_modules/google-gax/node_modules/@grpc/grpc-js/build/src/client-interceptors.js:360:141)
    at Object.onReceiveStatus (/var/task/node_modules/google-gax/node_modules/@grpc/grpc-js/build/src/client-interceptors.js:323:181)
    at /var/task/node_modules/google-gax/node_modules/@grpc/grpc-js/build/src/resolving-call.js:129:78
    at process.processTicksAndRejections (node:internal/process/task_queues:77:11)
for call at
    at ServiceClientImpl.makeUnaryRequest (/var/task/node_modules/google-gax/node_modules/@grpc/grpc-js/build/src/client.js:161:32)
    at ServiceClientImpl.<anonymous> (/var/task/node_modules/google-gax/node_modules/@grpc/grpc-js/build/src/make-client.js:105:19)
    at /var/task/node_modules/@google-cloud/firestore/build/src/v1/firestore_client.js:237:29
    at /var/task/node_modules/google-gax/build/src/normalCalls/timeout.js:44:16
    at repeat (/var/task/node_modules/google-gax/build/src/normalCalls/retries.js:82:25)
    at /var/task/node_modules/google-gax/build/src/normalCalls/retries.js:125:13
    at OngoingCallPromise.call (/var/task/node_modules/google-gax/build/src/call.js:67:27)
    at NormalApiCaller.call (/var/task/node_modules/google-gax/build/src/normalCalls/normalApiCaller.js:34:19)
    at /var/task/node_modules/google-gax/build/src/createApiCall.js:112:30
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
Caused by: Error
    at _firestore._traceUtil.startActiveSpan (/var/task/node_modules/@google-cloud/firestore/build/src/write-batch.js:438:27)
    at DisabledTraceUtil.startActiveSpan (/var/task/node_modules/@google-cloud/firestore/build/src/telemetry/disabled-trace-util.js:16:16)
    at WriteBatch.commit (/var/task/node_modules/@google-cloud/firestore/build/src/write-batch.js:436:43)
    at /var/task/.next/server/app/api/chats/start/route.js:1:5050
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5) {
  code: 4,
  details: 'Deadline exceeded after 266.535s,metadata filters: 0.001s,LB pick: 0.002s,remote_addr=***.***.***.***:443',
  metadata: Metadata { internalRepr: Map(0) {}, options: {} },
  note: 'Exception occurred in retry method that was not classified as transient'
}


ctrl+c not working on Safari

Hi,
Using Safari the library send out the error event correctly, but it doesn't seem to copy the text if i use cmd-C combination. Even the online example doesn't seem to work.
I'm using the "data-clipboard-text" attribute and Safari 9.0.3 for Mac.

@beyondsanity Were you able to get this working?
I can confirm this too. Seems to be something on the Angular side - I tested both with this directive and my own directive, wrapping clipboard.js. No go. It does work with the non Angular version over at https://clipboardjs.com/ though...
Also using the "data-clipboard-text" attribute and Safari 9.0.3 for Mac.

@mgustafsson1 sorry for the late response.
I ended up using an hidden textarea (with opacity set to 0) and the "data-clipboard-target" directive attribute.

@beyondsanity Thanks! I'll give that a go...

Hi guys,
Sorry for the delayed response. I've tested this issue on safari and it works fine. Please use the latest version and re-open the issue if it persists..

On Safari (Version 9.1.1 (11601.6.17)), the last example

Only the bottom part works, while the top part does not work.
On the top part, after clicking on "Copy to clipboard" and pressing Command+C, the content of data-clipboard-text is not copied.
From my experience, it seems it only works on Safari when the clipboard text/target is shown. I had to do what @beyondsanity suggested to make it work on Safari.


Order vignettes

For now, I suggest to use the opusreader2-1-<-vignette-one> way of ordering. See also:
https://github.com/r-devel/r-project-sprint-2023/discussions/9

for now there is only one vignette, if there will be a second at a later point in time.


[usm] Improve behavior of HTTPS slow-start

What does this PR do?
Add a best-effort fallback approach to monitor HTTPS traffic in connections that are older than system-probe. In other words, this allows system-probe (in certain cases) to monitor HTTPS traffic even when the TLS handshake is missed.
Thanks @guyarb for writing the test!
Motivation

Additional Notes

Possible Drawbacks / Trade-offs

Describe how to test/QA your changes

Reviewer's Checklist

[ ] If known, an appropriate milestone has been selected; otherwise the Triage milestone is set.
[ ] Use the major_change label if your change either has a major impact on the code base, is impacting multiple teams or is changing important well-established internals of the Agent. This label will be use during QA to make sure each team pay extra attention to the changed behavior. For any customer facing change use a releasenote.
[ ] A release note has been added or the changelog/no-changelog label has been applied.
[ ] Changed code has automated tests for its functionality.
[ ] Adequate QA/testing plan information is provided if the qa/skip-qa label is not applied.
[ ] At least one team/.. label has been applied, indicating the team(s) that should QA this change.
[ ] If applicable, docs team has been notified or an issue has been opened on the documentation repo.
[ ] If applicable, the need-change/operator and need-change/helm labels have been applied.
[ ] If applicable, the k8s/<min-version> label, indicating the lowest Kubernetes version compatible with this feature.
[ ] If applicable, the config template has been updated.

Rebased to main and added a commit with a fix


Errors in graphql schema autogen

Describe the bug
The current implementation of the auto-generation of .tailcallrc.graphql has the following problems with scalars:

The HashSet of scalars leads to a change in the position of the scalar after every run.
It's unable to generate documentation for Scalars

/bounty 100$

@tusharmath can I work on this ?

Yes please go ahead.

/attempt #1331

@ologbonowiwi @Bhavyajain21 already have pr.. I am waiting in queue for him to attempt.. I have locally made some changes but haven't raised pr yet.. please let me do this one

Hello @ssddOnTop @ologbonowiwi @Bhavyajain21 I appreciate your interest in this issue, but I'm currently working on it and making progress


Remove zero-padding of months

The pull-request removes the zero-padding of months in conversion_table so that they're perceived as radix 10 by both Python 2 and Python 3.
Whitespace from otherwise blank lines has been removed.
The final L from the constant<PHONE_NUMBER>427387904L has been removed so that the number also also works in Python 3 (but probably not in Python 2 earlier than 2.4 (PEP-0237)).

Changes merged via #9


Fixing options not getting passed into chain when using schema

call instead of apply does the trick

Doh, just saw the test actually wants an options array? Is there a good reason for that?

Ok, I see what's going on. I think this should accept both. Will change accordingly, and submit new pul req


Error on generating container.

Version: 2.0.0-dev.11
Code:
@MappableLib(
  createCombinedContainer: true,
  discoveryMode: DiscoveryMode.package,
)
library models;

import 'package:dart_mappable/dart_mappable.dart';

/// Exports of mappable models.

dart run build_runner build output:
[INFO] Generating build script completed, took 300ms
[INFO] Reading cached asset graph completed, took 46ms
[INFO] Checking for updates since last build completed, took 302ms
[WARNING] dart_mappable_builder on lib/src/models.dart:
An unexpected error occurred.
This is probably a bug in dart_mappable.
Please report this here: https://github.com/schultek/dart_mappable/issues

The error was:
Could not format because the source could not be parsed:

line 14, column 15 of .: An escape sequence starting with '\u' must be followed by 4 hexadecimal digits.
   ╷
14 │ import 'models\user.dart' as p6;
   │               ^^
   ╵

#0      DartFormatter.formatSource (package:dart_style/src/dart_formatter.dart:144:7)
#1      DartFormatter.format (package:dart_style/src/dart_formatter.dart:72:12)
#2      MappableBuilder.generateContainerFile (package:dart_mappable_builder/src/mappable_builder.dart:101:69)
<asynchronous suspension>
#3      Future.wait.<anonymous closure> (dart:async/future.dart:522:21)
<asynchronous suspension>
#4      MappableBuilder.build (package:dart_mappable_builder/src/mappable_builder.dart:35:7)
<asynchronous suspension>
#5      runBuilder.buildForInput (package:build/src/generate/run_builder.dart:52:7)
<asynchronous suspension>
#6      Future.wait.<anonymous closure> (dart:async/future.dart:522:21)
<asynchronous suspension>

[SEVERE] dart_mappable_builder on lib/src/models.dart:

Could not format because the source could not be parsed:

line 14, column 15 of .: An escape sequence starting with '\u' must be followed by 4 hexadecimal digits.
   ╷
14 │ import 'models\user.dart' as p6;
   │               ^^
   ╵
[INFO] Running build completed, took 2.8s
[INFO] Caching finalized dependency graph completed, took 24ms
[SEVERE] Failed after 2.8s

Are you on windows?

Are you on windows?

Yes.

Fixed in 2.0.0-dev.13