Mosaic areas missing at some zoom levels

I am tiling a mosaic, and have found that a specific part of the mosaic displays differently depending on the zoom level. I've tried viewing the tiles in a Leaflet web map and in QGIS, so I'm pretty sure it's not a problem with the software that is viewing the tiles.
I've deliberately rescaled the data so everything looks black in the screenshots below, as this is private data.
When zoomed out, I find a big gap at the bottom of my mosaic:

But when I zoom in a bit, part of this gap gets filled in:

and as I zoom in further, it gets more filled in:

It might be a bit difficult to see in the screenshots, but if you compare to the background map, then you can see that bits that aren't there in the first image, are there in the second and third images.
Do you have any idea what might be causing this? The parameters I'm using for the tiles are assets=COG&exitwhenfull=False&skipcovered=False as I found that when I didn't use exitwhenfull and skipcovered both set to False, I got gaps in my mosaic because of images with no data areas in them overlapping other images. If I remove those two parameters then I still get differences at different zoom levels, although with a slightly different look (because I have extra gaps because of no data areas in the mosaic).
I'm imagining this might be related to some sort of no data issue or something - but I can't quite work out what is going on.
Any ideas or suggestions would be very welcome

Thanks for the quick response @vincentsarago.
I've increased the scan_limit to 100000 and it hasn't helped. I only have about 25 images returned in the relevant search, so I don't think the scan limit would be the problem (unless somehow my pgstac instance had it set abnormally low).
Do you have any other ideas for how to go about debugging it?

I would use https://stac-utils.github.io/titiler-pgstac/mosaic_endpoints/#assets to get the list of assets for the given tiles and also try to run the same query in stac-fastapi.

I've worked out what the problem is - and it was all my fault...sorry!
It turned out that all the areas that weren't displayed were because the URL for that tile was giving a 500 error saying it couldn't access one of the underlying files because there was a space in the URL. I'd had problems with areas of no data earlier (before I turned off exitwhenfull and skipcovered) and was so fixated on the no data issue that I forgot to check the network tab in my browser to check all the tiles were actually being returned properly.
Sorry to waste your time with this - and thank you for your help.


ENOENT - appmap not found

Some users are reporting successful downloads but they're unable to run the background processes due to ENOENT.
The majority of users are on Windows, though this has been observed on Mac and Linux as well.

Fixed with #936


How to remove origin branches from side panel if branch has already been deleted?

Greetings,
I would like to ask if there's a way to remove from the side panel a branch in remotes/origin that has already been deleted. This happens when another user deletes a branch from GitHub. When trying to delete the remote branch, it cannot as it does not find the reference (cause it's already deleted).
The error I get is the following:
error: unable to delete 'branch-name': remote ref does not exist error: failed to push some refs to 'github.com:user/repo.git'

see #590 , there a few ways to deal

there is a new setting in repository configure dialog
right click the remote to prune
use configuration of git itself

Thank you so much @gadfly3173, I didn't know that pruning was the answer to my question


Build checksums

References
Follow-up to #117

Code changes
CI

User-facing changes
Deployers will have access to the checksum file from the GitHub Releases:

Backwards-incompatible changes

Looks like it's in the uploaded artifacts now:


Fetch changelogs for Terraform modules hosted in private registry of Terraform Cloud app.terraform.io

Is there an existing issue for this?

[X] I have searched the existing issues

Feature description
Currently, Changelogs / Release notes are fetched for public Terraform modules hosted on registry.terraform.io.
Unfortunately, that's not working for private modules hosted on Terraform Cloud app.terraform.io.
I saw the same problem with renovate bot and started this discussion there: https://github.com/renovatebot/renovate/discussions/21297#discussioncomment-5528647
TL;DR: There's an "extended API" responding with more information, including the source of the Terraform module, available in public and private terraform.io registry.
In renovatebot that's covered by a separate function calling this "extended API" https://github.com/renovatebot/renovate/blob/cec928d7219a0cce10942867884096c7f5430365/lib/modules/datasource/terraform-module/index.ts#L80
Is this something which could also be implemented in dependabot to get changelogs for private Terraform modules?

👋 Thanks for reporting.
Yeah, this is something we should add support for.
I'm not sure how many users are actually impacted, my hunch is not that many, so although it's probably pretty straightforward to implement this might have to float for a bit unless someone from the community steps up with a PR. If anyone is interested, we'd happily review/answer any questions along the way.


Update from oxigraph/rio

The merge conflicts have been resolved on the branch: https://github.com/ontodev/rio/tree/merge-upstream-ws-changes


Prune repositories no longer needed

What this PR does / why we need it:
This PR gets rid of Bazel's repositories no longer needed by running gazelle update-repos with the -prune option. For that option, see: https://github.com/bazelbuild/bazel-gazelle#update-repos
Also, it reverts the workaround due to https://github.com/pipe-cd/pipe/pull/1344#issuecomment-755075915. We can undo it because we just settled on stop watching container registries.
If there are some reasons why we didn't use the -prune option, I don't mind dropping this patch.
Which issue(s) this PR fixes:
Fixes https://github.com/pipe-cd/pipe/issues/1353
Does this PR introduce a user-facing change?:

NONE

/lgtm

/lgtm

/approve

/approve


Edit popup.html to be dynamic.

Currently, popup.html has the links hardcoded.

Create an edit button.
Redirect to edit.html after clicking the button.
Remove existing hrefs in the accounts icons.

Please assign this to me.

Can i work on this?

I think @maze-runnar has already created a PR for the same. I'll review that only.


How to create multiple handler in one assembly?

I would like to use one dll to handle multiple handler, such as IconHandler, InfoTip, but due to the multi inherent limitation in c#, looks not that easy. I need to copy all the other handler code into my class. Is there any easier way to do it? or tell me why I shouldn't do it in one dll.

What do you mean by copying all the other handler code into your class?
AFAIK you sure can add more than one handler-class into 1 dll. Just add extra classes. You can even write your custom Registration script.
Or what exactly do you want?
Could you provide an example?

Countryen

I was implementing different handler in same class, what I did is my class inherits one handler and multiple Interfaces, and I copied the interface implementation from your handler classes, like:
class myclass : SharpIconHandler, IQueryInfo, IShellExtInit, IContextMenu3 {
// copy the code from SharpInfoTipHandler..
// copy the code from SHarpContextMenuHandler
// Copy the code from ShellExtInitServer
// ...
}

but you are saying I should implemented different classes. I will try this.
BTW, should I assign different GUID to different classes?
Somehow I'm explicitly declaring Guid attribute  on the class as otherwise it will generate a random GUID for me.
I will update once I've done.

Yes, you are right, I shouldn't implement everything into one class, instead, I should create classes for Handler, QueryInfo, ContextMenu respectively, with different GUID
and I got one dll contains all the handlers. the register and custom register function works well.
Thank you!


Compiler problem related to UIDevice.currentDevice calls. Help?

There's a problem with lines 442 and 443 of RFAboutView.swift. If I declare them the following way:
let iOSVersion = UIDevice.currentDevice().systemVersion as String
let device =  UIDevice.currentDevice().model as String

the compiler bugs out compiling the file. It doesn't show me an error in the IDE (tried both Xcode and AppCode), but it just won't compile. I get the following error:
Global variable initializer type does not match global variable type!
%struct._class_t** @"\01L_OBJC_CLASSLIST_REFERENCES_$_"
LLVM ERROR: Broken module found, compilation aborted!

No idea what the issue is. The code works great outside RFAboutView.swift, so it's apparently not syntax related. I don't know if this is a compiler bug, or there's just something screwed up on my machine, but I just can't fix it. Maybe someone has some insight in this. Thanks!
Until this compiles on my machine these variables will stay empty, unfortunately :(

facing the same issue (in another project), is there a solution?

Found the issue, I used this in the same file. I guess it might be broken C makro in swift UIDevice header. I advice to use the proper UIDevice.currentDevice() only :P
if (UI_USER_INTERFACE_IDIOM() == .Pad) {
    navController.modalPresentationStyle = .FormSheet;
}

While that was not my issue (I'm not using userInterfaceIdiom) it did cause me to revisit this problem. Seems like something changed in the last Xcode version and it's compiling fine now. The more you know.


incorrect prediction from torchscript model converted from xgboost classifier trained with multi-label dataset

Hi, I tried to convert a xgboost model trained with multi-label data, but the prediction is not correct. I have a notebook here.
I'm actually not sure if multi-label is supported in hummingbird, please help to verify this. Thank you!

Hi @louis-huang! Hummingbird supports multiclass for xgboost. You can check a test here.
Hummingbird does not support categorical values for tree models. Can it be that the dataset has categorical features?

Hi @interesaaat , I want to try multi-label not multi-class model. This is an example from xgb: https://xgboost.readthedocs.io/en/stable/tutorials/multioutput.html

@louis-huang The tree representations for a multi-class model vs. a multi-label classification model are essentially the same, with a separate tree ensemble for each class. So the Hummingbird for multi-class should work in theory. Some preprocessing may be necessary.
Internally, XGBoost builds one model for each target similar to sklearn meta estimators, with the added benefit of reusing data and other integrated features like SHAP. .

Thanks @gorkemozkaya for chiming in. We already have some infra for multi-label for sklearn multioutput regression. Shouldn't be too hard I feel to make it work for xgboost as well. Contributions welcome! :)

@interesaaat @louis-huang I think the problem is that Hummingbird is normalizing each row output so that the probabilities will add up to 1. If we could remove that normalization it would support multi-label. For now, I propose a workaround, by separating the n-way multi-label classifier into n separate binary classifiers, and the output probabilities match: notebook link

We support different post transformations. So maybe by setting POST_TRANSFORM to None it will remove the normalization step.

Thanks @interesaaat, this was helpful! I verified that the outputs match if we override the default post-transform by passing the  extra_config = {'post_transform': 'LOGISTIC'}   argument, and then take the last n_classes columns of the output.
By default it is using the SOFTMAX post_transform, which is not the right transform for multi-label. The library needs to decide the transform based on the objective attribute of the XGBoost classification model. I.e it should be changed such that multi:softprob maps to SOFTMAX, whereas binary:logistic maps to LOGISTIC. But it needs a slightly different version of the LOGISTIC that does not doubles the number of output columns. For now, we can just take the last n_classes columns.

Thanks for pointing out the post_transform @interesaaat This helps us a lot! Thank you @gorkemozkaya to verify this and providing suggestions!


Clean up TL base classes

Every layer needs a very simple base class.

SiUart also breaks interface

Does not see how SiUart breaks interface (parameter names should be changed). Last time I have seen at Loe it was written better.

different parameter name... exactly. Should be solved. But anyway, a general clean-up is necessary.

Leo is probably still working with the SVN ... :-)

No. He has this concept to check in very 3 mounts.

Suggest change name SiSerial to Serial and SiVisa to Visa because they do not implement any protocol like SiX.
What you think?

full ack

Should have like SiTransfareLayer as base class for SiX?
Can this API be unified?
Any ideas? Split something?
I still like that basil give you ability to have name mapping.

I recommend using abstract base class (import abc) for this kind of implementation. I can do this in the development branch.
Anyway I'm currently working on reading the calibration ROM for all types of adapter cards. The support for all adapter cards I would like to have in the new release.

I agree with the ideas, but what about renaming the TransferLayer that requires adress, data not SiTransferLayer but something that fits to its task. Since we have multiple end points a fitting word would be MultiplexingTransferLayer (http://en.wikipedia.org/wiki/Transport_layer)

And I guess it is Transport and not Transfer layer

It looks it is ok now?


Test: Sample Data CSV (The Simpsons)

Generate 20 rows of sample test data for a CSV file where each row contains the following fields:
First Name
Last Name
Street Address
City
State
Zip
Donation Amount
Donation Date
Each row should be a different person. The people should be named after characters from The Simpsons. The Donation Amount field should be a random value between $5 and $100. The Donation Date field should be a random date between 1/1/2005 and 12/31/2015.

The doesn't work label is because of the file name/extension being hardcoded. See this issue in the main repo for status:
https://github.com/busse/kodumisto/issues/21


Add a file for documenting fullerite development

Really nice, succinct but gets all the important points across. Nicely done.

I think it contains the main points. +1


Create new user with sync attributes

I do not know if this is possible at all....
When the user logs in and adds the user to the user table with the sync attributes I have set up; which is perfect.... Since I am using Adldap for authentication, I need no registration and therefore have no create user method set up. I have created a method that will search an adldap group of about 300-400 users and return those users successfully.
$users = $this->adldap->getProvider('default')->search()->users()->rawFilter($filter)->get();
I would like to pre enter these users into my users table the same way it does when I log in for the first time. I would like to do this because I need to be able to create permission and roles for each user ahead of time. Is there someway to call what method does the actual table insert when you log in?

Hey @jtoler,
Yup it's possible, you actually just need to use the trait Adldap\Laravel\Traits\ImportsUsers trait.
Here's an example of usage:
class UserController extends Controller
{
    use ImportsUsers;

    /**
     * Returns a new auth model instance.
     *
     * @return \Illuminate\Database\Eloquent\Model
     */
    public function createModel()
    {
        $model = $this->auth->getProvider()->getModel();

        return new $model();
    }

    public function import()
    {
        $users = $this->adldap->getProvider('default')->search()->users()->rawFilter($filter)->get();

        foreach ($users as $user) {
            $this->getModelFromAdldap($user, str_random());
        }
    }
}

Thanks!

No problem :)

Actually can you please possibly answer one more thing?
foreach ($users as $user) {
       $this->getModelFromAdldap($user, str_random());
}

What if I wanted to change a $user variable? Like say I wanted to set $user->department = "Department"? If I do it before the getModelFromAdldap would it change anything?

If you manually set the Adldap users department, that will be what is imported into your local website database.

You sir, are awesome! Thanks again!

One last issue I would like to fix... I am trying to implement Entrust for roles and permissions.
https://github.com/Zizaco/entrust
This works inside my routes.php as a function:
$user1 = App\User::find(1);
$role = Role::where('name','=','Custom Role')->first();
$user1->attachRole($role);

But this doesn't work in the import function.
$role = Role::where('name','=','Custom Role')->first();
$user->attachRole($role);

I get:
Fatal error: Call to undefined method Adldap\Models\User::roles()
I assume because however Entrust creates those methods the getModelfromAdldap does not find them? Would I have to possibly create a "ldapAtrributeHandler" of some sort? I could just say User::find($id) in the import loop but that would most likely double the time the import function is already taking looking for 400+ users.

I get:
Fatal error: Call to undefined method Adldap\Models\User::roles()

That would be correct. The $user variable show above is an instance of Adldap\Models\User, not your laravel App\User model.

Would I have to possibly create a "ldapAtrributeHandler" of some sort?

Actually, I'd recommend overriding the ImportsUsers trait method syncModelFromAdldap(User $user, Authenticatable $model). That way you have both models in hand. Be sure to call the parent trait method though.

Could you be so kind as to show me what you mean exactly with the example you gave me in your first reply above?

Could you be so kind as to show me what you mean exactly with the example you gave me in your first reply above?

Of course, here's an example:
use Adldap\Laravel\Traits\ImportsUsers;
use Adldap\Models\User;
use Illuminate\Contracts\Auth\Authenticatable;

class UserController extends Controller
{
    use ImportsUsers {
        syncModelFromAdldap as traitSyncModelFromAdldap;
    }

    /**
     * {@inheritdoc}
     */
    public function syncModelFromAdldap(User $user, Authenticatable $model)
    {
        $this->syncModelFromAdldap($user, $model);

        $role = Role::where('name', '=', 'Administrator')->first();

        if ($user->inGroup('Domain Admins')) {
            // Looks like this AD user is a domain admin.
            // We'll give them the administrator role.
            $model->attachRole($role);
        }
    }
}

That makes sense now! Although every time I run the import it duplicates the users and attached roles. Is it because of the createModel()? I want it to be a new user or update the user every time it is ran.

Ah yes you're right, typo! Changed:
From:
foreach ($users as $user) {
    $this->syncModelFromAdldap($user, str_random());
}

To:
foreach ($users as $user) {
    $this->getModelFromAdldap($user, str_random());
}

Doing that gives me this error:

Type error: Argument 2 passed to App\Http\Controllers\UserImportController::bindAdldapToModel() must implement interface Illuminate\Contracts\Auth\Authenticatable, null given

This is what I have based off your kind and much appreciated help... I do have those lines commented out in importAUsers() when I get this error based off that change.
use Adldap\Contracts\AdldapInterface;
use Adldap\Laravel\Traits\ImportsUsers;
use Adldap\Models\User;
use Illuminate\Contracts\Auth\Authenticatable;
use App\Role;

class UserImportController extends Controller
{
    use ImportsUsers {
        syncModelFromAdldap as traitSyncModelFromAdldap;
    }

    /**
     * @var AdldapInterface
     */
    protected $adldap;

    /**
     * Constructor.
     *
     * @param AdldapInterface $adldap
     */
    public function __construct(AdldapInterface $adldap)
    {
        $this->adldap = $adldap;
    }

    /**
     * Returns new a new eloquent user instance.
     *
     * @return Models\User
     */
    public function createModel()
    {
        return new \App\User();
    }

    /**
     * {@inheritdoc}
     */
    protected function syncModelFromAdldap(User $user, Authenticatable $model)
    {
        // We're calling the parent trait sync method. This will actually create
        // the user in our local database if they don't already exist.
        $this->traitSyncModelFromAdldap($user, $model);

        // Grab our local administrator role.
        $role = Role::where('name', '=', 'staff')->firstOrFail();
        $model->attachRole($role);
    }

    /**
     * Imports users into the local database.
     *
     * @internal param $users
     */
    public function importAllUsers()
    {
        // Import A users
        foreach ($this->getAUsers() as $user) {
            // Assign user as a member of department
            $user->department = 'Department 1';
           /** This is where I would really like to set the roles. But trying it your way for now and have this commented out .**/
            //$role = Role::where('name', '=', 'staff')->firstOrFail();
            //$model->attachRole($role);
        }

        // Import B users
        foreach ($this->getBUsers() as $user) {
             $user->department = 'Department 2';
            $this->getModelFromAdldap($user, str_random());
        }
    }

Ohhh yes apologies, you need to return the laravel model inside the syncModelFromAdldap() method:
/**
 * {@inheritdoc}
 */
protected function syncModelFromAdldap(User $user, Authenticatable $model)
{
    // We're calling the parent trait sync method. This will set all attributes on the
    // model that we have in our adldap_auth.php configuration.
    $this->traitSyncModelFromAdldap($user, $model);

    // Grab our local administrator role.
    $role = Role::where('name', '=', 'Administrator')->firstOrFail();

    // Check if our AD user is a domain admin.
    if ($user->inGroup('Domain Admins')) {
        // Looks like this AD user is a domain admin.
        // We'll give them the administrator role.
        $model->attachRole($role);
    }

    return $model;
}

How could I set the role in each for loop? Because the way I have it set up, I only know what their role should be if inside the for loop. Example: I tried to do something like this...
foreach ($this->getAUsers() as $user) {
            // Assign user as a member of department
            $user->department = 'Department 1';
            $model = $this->syncModelFromAdldap($user, $this->createModel());
            $role = Role::where('name', '=', 'staff')->firstOrFail();
            $model->attachRole($role);
}

Just so you know I am feeling bad to keep asking for you help with this!

There is no central group in LDAP so each getXUsers gets particular group already.

The method getModelFromAdldap() returns the updated / created laravel user model.
/**
 * Imports users into the local database.
 *
 * @internal param $users
 */
public function importAllUsers()
{
    // Import A users
    foreach ($this->getAUsers() as $user) {
        // Assign user as a member of department
        $user->department = 'Department 1';

        $model = $this->getModelFromAdldap($user, str_random());

        $role = Role::where('name', '=', 'staff')->firstOrFail();

        $model->attachRole($role);
    }

    // Import B users
    foreach ($this->getBUsers() as $user) {
        $user->department = 'Department 2';
        $this->getModelFromAdldap($user, str_random());
    }
}

Thanks! Those were the only things holding me back from finishing this up. Sorry for such the bother!

Perfect! No problem at all. Please don't hesitate to create another issue if you encounter anything further, thanks :)

Hi @stevebauman,
Is this still possible in version 3.0.5??

Hi @epas1117, there was a lot of discussion here, what exactly are you wanting to know is still possible?
You can import users using the import command, or you can create a command / database seeder to import and sync users yourself if you would prefer:
use App\User;
use Adldap\Laravel\Facades\Adldap;

class DatabaseSeeder extends Seeder
{
    /**
     * Run the database seeds.
     *
     * @return void
     */
    public function run()
    {
        $users = Adldap::search()->users()->get();

        foreach ($users as $user) {
            User::firstOrCreate([
                'username' => $user->getAccountName(),
                'name' => $user->getCommonName(),
            ]);
        }
    }
}

Is this what type of functionality you're looking for?

I want to use the trait "Adldap\Laravel\Traits\ImportsUsers" like you said in the post above, so I can search users from a group form the AD and to import/synchronize that users to my local database.
Thx for answering.


Some Google fonts don't work due to a faulty CSS

When Kirki generates CSS for Google Fonts, it doesn't add quotes around the name of Google font. It causes some fonts (like Exo 2) to not to work. Plus, it is not a valid W3C CSS.

If a font name contains white-space, it must be quoted.
To avoid mistakes in escaping, it is recommended to quote font family names that contain white space, digits, or punctuation characters other than hyphens.
– www.w3.org

CSS that is currently generated:
.class {
  font-family: Exo 2, Helvetica, Arial, sans-serif;
}

CSS that should be generated
.class {
  font-family: "Exo 2", Helvetica, Arial, sans-serif;
}

Great catch! :+1:
Fixed in the develop branch.

@aristath Thank you for a speedy fix :+1:

Seems like this happens again @aristath.


Copilot is giving wrong and gibbrish answers for whole day now

i asked this:
make this monokai pro theme instead: "workbench.colorCustomizations": { "tab.activeBackground": "#1e2127", "tab.inactiveBackground": "#282c34", "tab.activeForeground": "#80cbc4", "tab.inactiveForeground": "#4b5263" },
i get:
Sure, if you want to customize these colors to resemble the Monokai theme, you can update your settings.json as follows:
"workbench.colorCustomizations": { "tab.activeBackground": "#272822", // Monokai background color "tab.inactiveBackground": "#1e1f1c", // Slightly darker for inactive tabs "tab.activeForeground": "#f8f8f2", // Monokai foreground color "tab.inactiveForeground": "#75715e" // Slightly dimmer for inactive tabs }
This will give your active and inactive tabs a Monokai-like appearance. Please note that these are just example colors and you might need to adjust them to your liking.

Similar problem with formatting json

also, i am seeing that the copilot forgets everything....and just keeps describing waht code ishare instead

I have encountered a similar situation

Thank you for filing the issue!
I don't understand your request and what's wrong with response

make this monokai pro theme instead: "workbench.colorCustomizations": { "tab.activeBackground": "#1e2127", "tab.inactiveBackground": "#282c34", "tab.activeForeground": "#80cbc4", "tab.inactiveForeground": "#4b5263" },

Its a setting for vs code (using json)


Include file markdown showing

Some markdown showing instead of the include on this page.

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

ID: e2437c95-370a-8dfb-dce8-63628175c6db
Version Independent ID: 5af86e89-9738-50cd-72a7-a907b5bdc107
Content: Vision classifier model with Azure Custom Vision Cognitive Service - Azure Example Scenarios
Content Source: docs/example-scenario/dronerescue/vision-classifier-model-with-custom-vision.yml
Service: architecture-center
Sub-service: example-scenario
GitHub Login: @jocontr
Microsoft Alias: pnp

Thanks for reporting - this issue is under review. This is a Microsoft Internal DevOps Bug ID # 512248

@asears, Thanks for the feedback! We are currently investigating and will update you shortly.


Prometheus node anti-affinity for ARM hosts

What is missing?
Node anti-affinity for prometheus pods for ARM hosts. Essentially this:
nodeAffinity:
  preferredDuringSchedulingIgnoredDuringExecution:
    nodeSelectorTerms:
    - matchExpressions:
      - key: kubernetes.io/arch
        operator: NotIn
        values:
        - arm

Why do we need it?
Prometheus performance is much worse on 32-bit systems such as ARM (not ARM64). To prevent monitoring performance degradation in multi-arch environment, but still allow scheduling when there is no other choice preferredDuringSchedulingIgnoredDuringExecution can be used.
Environment

kube-prometheus version: all

Anything else we need to know?:

This seems useful as a patch that people can optionally apply.

@brancz @paulfantom
Little update :) Can you add node selector for all applications (can't find it)? For example.
We have several zones like DMZ, internal and work.
DMZ - is a zone in the DMZ network segment
Internal - is a zone in the internal network segment
Work - is a common zone for all applications inside the internal network segment
So, prometheus\grafana\alertmanager\operator\etc  must be deployed in the internal zone (not important will it be one server or several).

Recent refactoring made this obsolete. We now have a more flexible way of defining affinity rules.
As for nodeSelectors, we are not going to implement additional fields as this can be already handled with:
prometheus+: {
  prometheus+: {
    spec+: {
      nodeSelector: {
        SOMENODESELECTOR
      }
    }
  }
}

A real-world example of such usage can be seen in https://github.com/thaum-xyz/ankhmorpork/blob/master/apps/monitoring/jsonnet/main.jsonnet#L318-L320


Copyright Problem with wording in README

Hi Raph,
Please update your README file.
For users that don't understand what is written in your README file, some developers will take it to imply you mean to say that they can declare their code as MIT - here is a solid example:
https://github.com/fontforge/libspiro/issues/16

Seems clear enough to me, but I'll take a PR to clarify it further.

Raph please remove your hxSpiro2019 fork as I do not wish to release that library as GPL.
https://github.com/raphlinus/hxSpiro2019
I prefer to have the way clear of similar code style if I decide to attempt a clean MIT port of spiro in the future although that's not currently likely, sorry as we discussed the intention of the 2019/20 versions were to move to MIT but seems derivative was an oversight the intricacies of when a port is derivative are likely complex, it is just simpler to remove than have three unmaintained GPL versions especially as 2019 has no example tests yet anyway.
hxSpiro will remain GPL and online.


fix: [CDS-54201]: add delegate version in container step

Harness Developer Pull Request
Thanks for helping us make the Developer Hub better. The PR will be looked at
by the maintainers.
What Type of PR is This?

[ ] Issue
[ ] Feature
[ ] Maintenance/Chore

If tied to an Issue, list the Issue(s) here:

Issue(s)

House Keeping
Some items to keep track of. Screen shots of changes are optional but would help the maintainers review quicker.

[ ] Tested Locally
[ ] Optional Screen Shoot.

Preview environment: https://hdh.pr.harness.io/pr-823


runtime(mermaid): Syntax fix

Fixed the syntax for mermaid-js roughly.
Since it is mixed up with tons of diagram syntaxes, this won't be complete, though.

runtime(mermaid): Fix arrow syntax

Fixed it has dropped some of arrows (such as ->> in sequenceDiagram syntax).

runtime(mermaid): Disable syntax for identifier to avoid false match

The syntax for mermaidIdentifier is probably for method name in classDiagram syntax,
but it also unexpectedly matches node(text) or such in flowchart syntax.

runtime(mermaid): Add some C++ type syntax highlight

Added more major type names to be highlighted (probably for classDiagram).

Can you please update the last change header of the file?
Would you be willing to maintain this file?  Then please also add yourself as maintainer.

Perhaps I had better send PR to the syntax's maintainer's repo https://github.com/craigmac/vim-mermaid ?
Tried to fix it anyway, but I think it is beyond me to be a maintainer since I'm not familiar with Vim syntax settings.

Changed header.
Also posted the same patch to the maintainer's repo.
I'd like to wait for review anyway.

LGTM. I've switched to using treesitter highlighting, so if you want to maintain this file I can add you. You appear to be more familiar with Vim syntax highlighting than I was!

Thank you for review & merge :)


Set up s3 bucket replication policy for the storage bucket

In order to have greater redundancy and backup we should set up s3 to replicate module data to another region

Getting started on this one, any preference for the second region @lucacasonato ? can also be another input variable

Let's make it another input var. I would prefer eu-central-1 or eu-west-1.


Register anonymous function by name, if it has a special property displayName

Hi,
I just encountered a simple problem with Gulp 4. I tried to use functions everywhere, mainly named functions but also some anonymous functions (see below why I need some anonymous functions too).
I encountered the problem that anonymous functions cannot be given a name directly and because of that the log is not very useful. Instead I have to register all of them using gulp.task(name,fn) and then refer subsequently to them by name.
Since I like prefer to leave functions as they are, but still having some useful log, I would propose that Undertaker also considers a new property taskName. If an anonymous function contains this property, it will be registered using this name.
So I could do:
var anonFunction = function (cb) {console.log('foo'); cb()}
anonFunction.taskName = 'bar';

gulp.task(anonFunction)   // gets public registered as 'bar'

gulp.task('blabla',gulp.series(namedFunction,anonFunction)); // just used inline, with useful log

So what do you think? To me this seems more DRY / refactorable (less strings) than using gulp.task(name,fn). See below the original use case I stumpled upon this (task factory function).
Detailed Use Case when I stumpled upon this
I found that some of the tasks in my gulpfile are copying files from one location to the other and are very similar in that sense. So I created a factory function for suchlike tasks:
function getSimpleCopyTask(fnName, pathConfig){
    var fn = function () {
       return gulp.src(pathConfig.src, {dot: true})
            .pipe(changed(pathConfig.dest))
            .pipe(gulp.dest(pathConfig.dest));
    };
    fn.name = fnName;
    return fn;
}

Now I wanted to use it like that:
gulp.task('build:fdn',gulp.parallel(
    buildConfigServer,
    getSimpleCopyTask('buildCommon',config.paths.common),
    getSimpleCopyTask('buildConfigUi',config.paths.configUi)
));

Everything works as expected, however the logger logs the simplyCopyTasks as <anonymous> and not as buildCommon or buildConfigUi as desired. The reason for that is obvious --> I'm attempting to write to the property fn.name in the getSimpleCopyTask function, which is non-writable property.
Node Undertaker reads this property in 5:8 to get a name from a function
if(typeof name === 'function'){
    fn = name;
    name = fn.name;
  }

I would propose to add, which probably already fixes my problem:
name = fn.taskName || fn.name

I've considered using Function.displayName
My suggestion for the current implementation would be to do gulp.task(taskName, anonFn) inside your factory function.  It doesn't hurt to register them.
Let's see if this is a popular request before we go implementing.

Just tried it out:
Change of L14 in Undertaker buildTree.js to:
var name = task.taskName || task.name ||  || '<anonymous>';
Change of L7 in Undertaker task.js to:
name = fn.taskName || fn.name
Already seems to work fine :-)

@phated Yeah Function.displayName would be fine too :+1:
Registering the function inside the factory would work, however then I still have to refer to the function afterwards by name and it also pollutes my top level task list (--tasks-simple) and the shell completion, even though I never will want to execute those tasks directly :smile:  I just need their name for the log.

You probably knew this already:
function simpleCopy(pathConfig) {
    return gulp.src(pathConfig.src, { dot: true })
        .pipe(changed(pathConfig.dest))
        .pipe(gulp.dest(pathConfig.dest));
}

function buildCommon() {
    return simpleCopy(config.paths.common);
}

function buildConfigUi() {
    return simpleCopy(config.paths.configUi);
}

gulp.task('build:fdn', gulp.parallel(
    buildConfigServer,
    buildCommon,
    buildConfigUi
));

Why not just set the name attribute instead of the taskName attribute? name and displayName are standard attrs, I don't think we should come up with a new one. Our stuff already works with the name attr no matter how it was defined

@contra displayName would be fine for me (probably better than taskName) but the current gulp4 doesn't read that.  name is an non-writable property of functions (also anonymous functions).
just try this snippet in your browser:
var anonFunc = function(){};
console.log(anonFunc.name);  // --> ""
anonFunc.name = "anonFunc"
console.log(anonFunc.name); // --> ""  (unchanged)

@geekflyer Ah didn't know that it was non-writable. displayName would probably be best IMO

displayName ftw :+1: :-)
In the meantime for I will use @heikki 's suggestion, which is ok for my particular use case:
function simpleCopy(pathConfig) {
    return gulp.src(pathConfig.src, {dot: true})
        .pipe(changed(pathConfig.dest))
        .pipe(gulp.dest(pathConfig.dest));
}

gulp.task('build:fdn', gulp.parallel(
    buildConfigServer,
    function buildCommon() {return simpleCopy(config.paths.common);},
    function buildConfigUi() {return simpleCopy(config.paths.configUi);}
));

Just a question, why an anonymous function is advantageous here?
And what I really mean is: why not enforce named functions, they give more useful stacktraces. Or is the latter so somewhat rude?

@stringparser When using a factory for creating a commonly used gulp task (gulp task = function) the factory cannot yield named functions. As a workaround I'm wrapping at the moment the output of the factory into a named function, but I would like to avoid this / make it shorter.
Also when using displayName the stractrace has the same usefulness as with a named function, since displayName is considered special (at least by Mozilla).
Here a simplified example, which shows the difference between using only named functions vs. setting displayName in a factory.
// example with named functions only
function factory(config) {
    return gulp.src(config.src)
        .pipe(changed(config.dest))
        .pipe(gulp.dest(config.dest));
}

gulp.task('buildComponents', gulp.parallel(
    doStuff1,
    function buildComponent1() {return factory(config.component1);},
    function buildComponent2() {return factory(config.component2);},
    function buildComponent3() {return factory(config.component2);})
);

// example with displayName instead
function factory(config){
    var fn = function () {
        return gulp.src(config.src)
            .pipe(changed(config.dest))
            .pipe(gulp.dest(config.dest));
    };
    fn.displayName = config.name;
    return fn;
}

gulp.task('buildComponents', gulp.parallel(
        doStuff1,
        factory(config.component1),
        factory(config.component2),
        factory(config.component2))
);

@geekflyer I understand, to dry stuff is always nice. Still... I don't know :smile_cat:. What about have a reporter just like test runners do being one form of it what we have for logging now?

Well, in fact you can do it already by replacing the listeners for start, stop, etc. though you will have to figure how to pass the metadata from your factory function to the listener.

@stringparser well that sounds a bit too hacky imho. The integrated logger would still then log things like Starting '<anonymous>'...  . I can hardly change that from outside.

Yes, you would have to remove the log listeners and after add yours but it will work.
In any case, I agree with you @geekflyer, too hacky. displayName is much simpler.

This has been added as of https://github.com/gulpjs/gulp/commit/eb2beaa640945d13bb8254a8be1173f89efccc1e

If anyone still has this problem, I found a workaround to give any string name to an anonymous function:
const fn = Object.values({
  ["testTask:watch"]: () => {}
})[0];

Example with dynamic strings:
https://jsfiddle.net/ao7buhnr/
PS: It cannot be extracted into a function.


Allow listeners to change execution status

Listeners using the v3 API can set the status and message of each executed keyword and a control structure, but these changes do not affect the actual test execution. For example, changing keyword status from PASS to FAIL changes the status of the keyword in the log file, but subsequent keywords are executed normally as if the keyword would PASS. Similarly, changing keyword status from FAIL to PASS changes keyword status in the log file, but the failure still propagates and the test fails.
We should enhance the execution logic so that if the test status or message is altered by listeners, that change is taken into account. This would allow failing or skipping test, suppressing failures and so on.

I see this is created for keywords. Is this already working for test cases?
for example in the start_test hook?

This only works with keywords. Being able to do, for example,
def start_test(data, result):
    if some_condition():
        result.status = 'SKIP'

and get the test skipped would be convenient. Please submit a separate issue about that with a reference to this related issues.


powershell console left with incorrect colors in some situations

Having an issue where sometimes the console colors are getting screwed up.  Here is a code sample that shows the point:
var styleSheetGlobalStatus = new StyleSheet(Color.White);
			styleSheetGlobalStatus.AddStyle("\\*CG[^*]+\\*", Color.Green, a => a.Substring(3, a.Length - 4));
			styleSheetGlobalStatus.AddStyle("\\*CY[^*]+\\*", Color.Yellow, a => a.Substring(3, a.Length - 4));
			styleSheetGlobalStatus.AddStyle("\\*CR[^*]+\\*", Color.Red, a => a.Substring(3, a.Length - 4));
			styleSheetGlobalStatus.AddStyle("\\*CC[^*]+\\*", Color.Cyan, a => a.Substring(3, a.Length - 4));
			Console.WriteLineStyled("*CC1* *CG2* *CY3* *CR4*", styleSheetGlobalStatus);
			Console.BackgroundColor = Color.Black;

What is interesting is that only when the background color is set to black does it screw up (and that is with the background set to black).   In addition if you leave the writelinestyled off it doesn't happen.
Standard command shell is fine.  Trying to use the app with a powershell script combo so just not using powershell is not an option.
The behavior I see is that the powershell window starts out with background black, foreground white.  After running this the foreground color is set to black.

Thanks for raising this issue!
Does the code listing that you've included above show the only writes to the console that have occurred in your application prior to the time at which you see the unexpected behavior (i.e. the foreground color being set to black)?  In other words, is your application only making the 4 color changes (Green, Yellow, Red, Cyan) before the issue occurs, or is it making more color changes that aren't shown in your code listing?  I've attempted to reproduce this, and haven't been able to.  I have two thoughts:

I doubt this is due to your application being executed from Powershell, so no worries there.
My guess is that your application is attempting to use more than 16 different colors in the same console session.  This is likely have unexpected consequences, as it can overwrite certain important colors in the console's color table -- colors such as the console's foreground color and background color.

I can't say much more than that without having a better idea of how you're using Colorful.Console.

Well my code snippet above is the only thing needed in static void Main(string[] args)  to cause the foreground color to screw up.  I commented out my entire powershell user profile as well to make sure it wasn't another 3rd party item.   I do have the powershell colors set to the colors of cmd.exe (white foreground black background) but even if you count that as 2 colors, the above code as 6 colors, that is only 8 colors total.

Interesting.  May I ask what operating system you're using?

win 10 1703 15063.413

Thanks.  I'll spend more time looking into this tomorrow.  In the meantime, let me know if you observe anything else that may help us to understand what is going wrong, here.

One more thought: have you tried a more minimal use-case, e.g.
var styleSheetGlobalStatus = new StyleSheet(Color.White);
styleSheetGlobalStatus.AddStyle("\\*CG[^*]+\\*", Color.Green, a => a.Substring(3, a.Length - 4));
Console.WriteLineStyled("*CC1* *CG2* *CY3* *CR4*", styleSheetGlobalStatus);
Console.BackgroundColor = Color.Black;

Maybe only start with one color change, and then increase to two, and so on, until the issue occurs.

I did, 4 is my actual use case, but 4 seems to be the magic number as well (at least for the above test case).  I saw other irregularities when mixing with posh-git and several runs but those were likely due to the 16 color issue eventually kicking in.  (Note here posh git is not enabled).

I ran into a similar issue with the default powershell console.
I couldn't replicate this in any other console, including powershell in cmder/conemu or any other linux/mac terminal.
Console.ForegroundColor = Color.Yellow;
var test = Console.ReadKey(true);

This set the entire background of the console to yellow until exiting that terminal.

Hello @tomakita,
im writing a logging library and want to use your library to bring some colors to the output and got the same issue with PowerShell.

For sourcecode see https://github.com/najlot/Log

Unfortunately, this is a show-stopper for this library. Is it possible to use VT codes where supported by later versions of Windows 10?

I have this issue as well. It only appears in the actual powershell.exe console. When opening a cmd.exe console and running powershell followed by dotnet .\Program.dll the program behaves as expected.
No matter how many times you switch between 1-4 colors, upon using a 5th color powershell.exe's background changes to the color that was just used. (The actual colors don't seem to matter)

Thanks for all of these reports.  I'm guessing that the way in which Colorful.Console writes colors into the console buffer breaks some aspect of the way in which PowerShell depends on the console buffer.  I'm not sure if I'll be able to fix this without knowing more about how PowerShell depends on the buffer, and I'm a little too busy to do that right now, but will put this on my to-do list.
Regarding VT codes in Win 10, see https://github.com/tomakita/Colorful.Console/issues/24

I am experiencing the same issue, when using Windows Terminal with Powershell Core.
Just a simple console app with this code
Console.BackgroundColor = Color.MidnightBlue;
Console.ForegroundColor = Color.White;
Console.Clear();
Console.WriteLine("some text");

Powershell (showing green text when it should be white)

Cmd

I am experiencing the same issue, when using Windows Terminal with Powershell Core.
Just a simple console app with this code
Console.BackgroundColor = Color.MidnightBlue;
Console.ForegroundColor = Color.White;
Console.Clear();
Console.WriteLine("some text");

Powershell (showing green text when it should be white)

Cmd


Fix image and favicon not show on card link

Fix image and favicon not show on card link

Thanks for the PR!!
and sorry for late replay

please run npm run fix and make sure npm run lint is ok!

Thanks for fixing it!

Thanks for fixing it!

You're welcome.


resolution does not understand function types as generic bounds

Consider:
typedef T Func1<T>();

// NOTE: return T here just so we can see what inferred type is.
// The actual expectAsync returns F.
T expectAsync<T, F extends Func1<T>>(F callback) {
  // BUG: this is an implicit cast, but we should know it returns a T.
  // BUG: this is a dynamic call but it shouldn't be.
  return callback();
}

main() {
  var y = expectAsync(() => 123);
  // this inference seems to work.
  int z = y;
  print(z);
}

as @leafpetersen were discussing, this doesn't really feel like a strong mode specific bug, but I'm not sure what the Dart 1 behavior is and seems fine to just fix it in strong mode.

still reproduces.

dartdevk also has both bugs (dynamic call and implicit cast)

This language feature was added recently; 2.15 I think.


Allow for chemistry units to work with non-cosmological simulations.

Minor adjustments were made to chemistry_functions.cpp and chemistry_functions_gpu.cu to enable non-cosmological calculations.
The cosmological unit conversions have been moved into COSMOLOGY ifdef logic. I believe the unit system is CGS, with density (rho_0), factors of a, and factors of h applied after the CGS units are initially defined.
There was also an adjustment replacing a call to dev_conserved with a call to total energy E that avoids referencing n_cells in chemistry_functions.cpp.
This needs to be tested with an RT test compilation and calculation. So I'm assigning to @evaneschneider but I suspect Nick needs to test since he raised the issue.
Would close #190.

Hi Brant, can you pull the changes from RT into this branch and then reissue the PR there? I'm trying to discourage people targeting PRs directly to main (so that we can fully test them before merging them in).

I actually tried/meant to submit to RT (I branched from RT originally). My mistake.


[ONNX] Add Slice-10 to ONNX importer

@mbencer since this is about the same as #4513 which is reviewed, can this be considered fully reviewed?

@mbencer since this is about the same as #4513 which is reviewed, can this be considered fully reviewed?

I'm waiting for approving some changes requested by especially dldt side (in this PR there are more reviewers) - if decision about merging to release branch is made I'll synchronize both versions.


three dot range notation with spaces confuses parser

From https://github.com/DanielXMoore/Civet/issues/836#issuecomment-1848893323:
Currently,
for [0..1]
  console.log 'Hello Civet!'
for [0 .. 1]
  console.log 'Hello Civet!'
for [0...1]
  console.log 'Hello Civet!'

gives
for (let i = 0; i <= 1; ++i) {
  console.log("Hello Civet!");
}
for (let i1 = 0; i1 <= 1; ++i1) {
  console.log("Hello Civet!");
}
for (let i2 = 0; i2 < 1; ++i2) {
  console.log("Hello Civet!");
}

but
for [0 ... 1]
  console.log 'Hello Civet!'

returns ParseError.
Also,
for i in [0 ... list]
  console.log 'Hello Civet!'

becomes
for (const i in [0(...list)]) {
  console.log("Hello Civet!");
}

which seems a pointless function call.
There should be an appropriate parser for ... used as infix.

Ah, now I see how this is getting parsed: x ...y and x ... y also have a legitimate parse as x(...y).
I'm afraid this is an inherent ambiguity, so I'd hesitate to force range behavior here.  I can add documentation that there can be no space before ... in ranges. Open to better ideas though.

Doesn't CoffeeScript handle this by putting the rest ... the other way, making the function call x y...?

CoffeeScript (2) and Civet support both.
CoffeeScript doesn't have typing so it doesn't have a second meaning of : to disambiguate from.  Requiring .=/:= or let/const in typed declarations is crucial for Civet achieving this disambiguation.

The alternative is to adopt a different range syntax. Aussie++ is a mostly non-serious language but I do like its ranges: [0 TO 2], [0 TO 2), (0 TO 2], and (0 TO 2). Coming from a mathematical background these are more intuitive than two dots vs three (especially considering that two dots makes 0..toString() ambiguous), and they technically allow you to describe a fully-open range (though ime that's rarely needed).

We could add a check so that x ... y won't parse as function application and require x ...y if we wanted to apply the function.

Forbidding x ... y as application in all situations seems like the simplest way.
It looks like we already have a[...x] as a.slice(0, x) while keeping [... x] as a spread. This is consistent with CoffeeScript2. https://civet.dev/playground?code=YVsuLi54XQpbLi4ueF0%3D
https://coffeescript.org/#try:a[...x]
[...x]

Implemented in 0.6.60.


Pull request for issue #249

Hopefully this works.  I'm new at editing jupyter notebooks.

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

Cool!  Thanks for the opportunity.


Prepare Storybook guidline and template

I have created a branch and there is a template for button.
plz review it and tell your opinion
@pournasserian


When calling to ErrorHandlingDeserializer2.failedDeserializationFunction pass also the topic

Hi there!
I'm facing a case where I want to be able to process deserializing errors and having the topic name in the context.
By following Gary's post
(https://www.confluent.io/blog/spring-for-apache-kafka-deep-dive-part-1-error-handling-message-conversion-transaction-support)
about error handling I can see the class ErrorHandlingDeserializer2 being the best fit for processing deserialization
errors, however when checking the
code
I can see the topic name being present in the code but not being passed to the failedDeserializationFunction.
After checking a bit about a possible solution I came to this snippet:
@FunctionalInterface
public interface FailedDeserializationFunction<R> {

    R apply(byte[] data, Headers headers, String topic);

	default <V> FailedDeserializationFunction<V> andThen(Function<? super R, ? extends V> after) {
		Objects.requireNonNull(after);
		return (byte[] data, Headers headers, String topic) -> after.apply(apply(data, headers, topic));
	}
}

which would be used quite similar to the old BiFunction:
    private FailedDeserializationFunction<T> failedDeserializationFunction;

...

	@Override
	public T deserialize(String topic, byte[] data) {
		try {
			return this.delegate.deserialize(topic, data);
		}
		catch (Exception e) {
			return this.failedDeserializationFunction != null
					? this.failedDeserializationFunction.apply(data, null, topic)
					: null;
		}
	}

And this solution could be used in a breaking change approach (applying directly the changes in
ErrorHandlingDeserializer2) or rolling the code in a new ErrorHandlingDeserializer class (number 3 or better name).
I'm quite newbie when it comes to contributing to OSS, I tried to grasp the contributing rules before jumping here so I hope the format of the case and the proposal fit what's expected
in the community.
Regards.

GitterChat here.
Rather than creating a TriFunction (or QuadFunction if we include the isKey field), we should probably just deprecate the current BiFunction and add a new field
Function<DeserializeFailureInfo, T>

Where DeserializeFailureInfo is a POJO with the 4 fields (and possibly a reference to the delegate as well, in case the function needs to inspect that too).

One question, when you say "deprecate the BiFunction" you mean keeping both cases together for some time?
In such case, considering that in the deserialize method only one function can be called...what would be the rule for using function or the other?

Priority to the new one?
Assert that only can be set at a time?

Yes, we don't like breaking APIs - especially in a point release 2.2.8. So we leave the old one around until 2.3 or 2.4.
With a comment @deprecated in favor of #setsetFailedDeserializationFunction(Function).
Yes, the new one would take precedence (we could either assert or just ignore the old one if present). We can say that in the javadoc too.


Clicking Xref when in strings view does not take you to xref location

Reproducing:

Go to strings view and select a string that has an Xref.
Double click on the Xref.

The expected behavior would be to view the graph that is previewed in the tool tip. What actually happens is that you are taken to a different position in the strings view.

Yep, I can reproduce this as well. https://www.youtube.com/watch?v=rQA_Wx81yyc

fixed in dev


Documentation of components with Markdown

This pull request includes a first draft of more detailed documentation of each of the components, written in Markdown. This is used for the built-in documentation site that's included with Fabric (http://localhost:2020) and will soon be integrated in the documentation site.
I'd like to expand out this documentation to include far more details, but wanted to get it into a pull request and into Fabric soon so that our team and community can contribute.
Merging this in should provide enough details for each component that we can close #381.

Approved!


Lost about half a day of work with a broken generation

Describe the bug
I built an app (I am on a Paid plan) and it was getting somewhere until one of the key file was interrupted in between losing previous iterations. I refreshed and see no history for that chat. There is no way to restore previous state or undo!
Given the critical file it was, ask it to regenerate has lost all context and the core app is essentially broken beyond repair... unless I start all over. Very hard to go through the same refinment cycles and land where I was.
Link to the Bolt URL that caused the error
https://bolt.new/~/sb1-edqnsa
Steps to reproduce
Any broken generation. Refresh app and all previous iterations lost!
Expected behavior
You'd expect versioning, even if this isnt Git per se!
Screen Recording / Screenshot
No response
Platform
Browser name = Chrome
Full version = <IP_ADDRESS>
Major version = 129
navigator.appName = Netscape
navigator.userAgent = Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36
performance.memory = {
  "totalJSHeapSize": 46322211,
  "usedJSHeapSize": 41722415,
  "jsHeapSizeLimit":<PHONE_NUMBER>
}
Username = SharadKumar
Chat ID = 926aeebfe7d3

Additional context
Help help help!!!

We've just found what the root cause to the loss of work bug is, we're going to ship a fix soon 👀
we'll track this issue in https://github.com/stackblitz/bolt.new/issues/50


Swift nullability

It would be great if there FastImageCache was annotated for nullability so it was easier to use via Swift :)

Any interest in submitting a PR?

If I have time to PR all of these recent issues I opened, I definitely will!

Would love a PR to help FIC work better with Swift :-)

@mallorypaine that issue may be closed :)


added form for database insertion

[ ] Created a method called current_user in your ApplicationController
[ ] Created forms to perform the following functions:

Creates a Post on behalf of the current_user (use the method that you created in your ApplicationController).
Create a comment on behalf of the current_user (use the method that you created in your ApplicationController).

[ ] Allow Users to add likes to Posts.

@touredri Is this the first time you're requesting a review for this milestone? It appears as a re-review.

the second @brytebee , but I don't know why the first reviewer didn't mention anything here


unknown directive "mail"

Is it possible to enable to mail module? I want to use NPM as a mail proxy server, however I am getting the error [emerg] unknown directive "mail" in....
Eg.
mail {
    server_name mail.example.com;
    auth_http   http://<IP_ADDRESS>:9000;

    # disabling xclient command
    xclient off;

    server {
        listen     25;
        protocol   smtp;
        smtp_auth  none;
    }
}

It looks like it needs to be compiled with the --with-mail flag to be able to use the "mail" directive.

Mail module added to the latest image.


restart scheduler is required when index.html is edited?

static/visualiser/index.html
When I edit this file, I have to restart the center scheduler to make the modification effective.
why? is there any solution to make the modification effective by refresh the browser?

Hmm, it that perhaps a Browser or Tornado setting? I've never developed on the visualizer tbh. :)

I think tornado setting options could be found to enable the modification effective immediately, but I can not found it.
And another solution is that after modify index.html, just restart the center planner.  But after that, all the tasks are cleared from the visualizer.

@leafjungle what? luigid, if properly configured, should save a state file on exit and read it. It was made for this purpose I think, so you can restart the server (on upgrades) without losing state.

@Tarrasch ,
(1)I see, I stop the luigid by kill -9 , which is not the correct way.
(2) I am wonderring a problem: when I am restarting the luigid, I run a new task, will this task be skipped?
(3) each time after editing index.html, I do not want to restart luigid. I find that tornado will not reload any modification if debug set to false.
so tornado setup option should add: debug=true .

@Tarrasch , But I am wondering how to add "debug=True" option to tornado ~

The problem is solved by editing server.py, add "debug": True to settings of tornado Application.

@leafjungle, cna you show more in detial where you added "debud": True? For future reference I mean.

@Tarrasch
server.py
settings = {"static_path": os.path.join(os.path.dirname(file), "static"), "unescape": tornado.escape.xhtml_unescape}
-->
settings = {"static_path": os.path.join(os.path.dirname(file), "static"), "unescape": tornado.escape.xhtml_unescape, "debug": True}


[Bug]: Unable to complete scans for Chinese AWS accounts

What happened?
I've tried to run all-checks scan using Prowler v3, however, prowler suddenly stops execution and is only able to show me the report for the 3 services:
Date: 2022-12-21 16:47:49

This report is being generated using credentials below:

AWS-CLI Profile: [default] AWS Filter Region: [all]
AWS Account: [xxxxxxxxxx] UserId: [XXXXXXXXXXX:xxxxxx]
Caller Identity ARN: [arn:aws-cn:sts::xxxxxxxxxx:assumed-role/xxx/xxx]

Executing 244 checks, please wait...

-> Scan completed! |▉▉▉▉▉▉▉⚠                                | (!) 43/244 [18%] in 30.5s

Overview Results:
╭───────────────────┬───────────────────╮
│ 26.0% (13) Failed │ 68.0% (34) Passed │
╰───────────────────┴───────────────────╯

Account xxxxxxxxxx Scan Results (severity columns are for fails only):
╭────────────┬────────────┬───────────┬────────────┬────────┬──────────┬───────╮
│ Provider   │ Service    │ Status    │   Critical │   High │   Medium │   Low │
├────────────┼────────────┼───────────┼────────────┼────────┼──────────┼───────┤
│ aws        │ account    │ PASS (3)  │          0 │      0 │        0 │     0 │
├────────────┼────────────┼───────────┼────────────┼────────┼──────────┼───────┤
│ aws        │ cloudwatch │ PASS (1)  │          0 │      0 │        0 │     0 │
├────────────┼────────────┼───────────┼────────────┼────────┼──────────┼───────┤
│ aws        │ iam        │ FAIL (13) │          2 │      3 │        6 │     2 │
╰────────────┴────────────┴───────────┴────────────┴────────┴──────────┴───────╯
* You only see here those services that contains resources.

How to reproduce it
Steps to reproduce the behavior:

What command are you running?
prowler aws -M HTML
Environment you have, like single account, multi-account, organizations, etc.
Single AWS account in the Chinese partition
See error
After I enabled log-level=DEBUG I can see the following errors for each set of checks:

2022-12-21 16:52:24,271 [File: check.py:343]    [Module: check]  ERROR: KeyError[325]: 'aws-cn'
2022-12-21 16:52:24,274 [File: check.py:343]    [Module: check]  ERROR: KeyError[325]: 'aws-cn'
2022-12-21 16:52:24,276 [File: check.py:343]    [Module: check]  ERROR: KeyError[325]: 'aws-cn'

Moreover, I can see some errors related to hitting the Global AWS endpoints instead of Chinese ones:
2022-12-21 16:52:23,503 [File: connectionpool.py:1001]  [Module: connectionpool]         DEBUG: Starting new HTTPS connection (1): globalaccelerator.us-west-2.amazonaws.com:443
2022-12-21 16:52:24,232 [File: connectionpool.py:456]   [Module: connectionpool]         DEBUG: https://globalaccelerator.us-west-2.amazonaws.com:443 "POST / HTTP/1.1" 400 106
2022-12-21 16:52:24,232 [File: parsers.py:240]  [Module: parsers]        DEBUG: Response headers: {'Date': 'Wed, 21 Dec 2022 14:52:24 GMT', 'Content-Type': 'application/x-amz-json-1.1', 'Content-Length': '106', 'Connection': 'keep-alive', 'x-amzn-RequestId': 'ab20be38-cf2a-4207-a87a-5bcad84bf168'}
2022-12-21 16:52:24,233 [File: parsers.py:241]  [Module: parsers]        DEBUG: Response body:
b'{"__type":"UnrecognizedClientException","message":"The security token included in the request is invalid"}'
2022-12-21 16:52:24,234 [File: hooks.py:238]    [Module: hooks]  DEBUG: Event needs-retry.global-accelerator.ListAccelerators: calling handler <botocore.retryhandler.RetryHandler object at 0x111af2370>
2022-12-21 16:52:24,234 [File: retryhandler.py:211]     [Module: retryhandler]   DEBUG: No retry needed.
2022-12-21 16:52:24,235 [File: globalaccelerator_service.py:40]         [Module: globalaccelerator_service]      ERROR: us-west-2 -- ClientError[27]: An error occurred (UnrecognizedClientException) when calling the ListAccelerators operation: The security token included in the request is invalid

It says token is invalid because the region is the wrong one for some reason.
Expected behavior
Prowler v3 is able to scan Chinese AWS accounts
Screenshots or Logs
From where are you running Prowler?
Please, complete the following information:

Resource: workstation
OS: MacOS Monterey
AWS-CLI Version [aws --version]: aws-cli/2.7.2 Python/3.9.12 Darwin/21.6.0 source/x86_64 prompt/off (I suppose it's not needed anymore as you guys are using boto3 as an AWS client)
Prowler Version [./prowler -V]: Prowler 3.0.0
Shell and version: zsh 5.8.1 (x86_64-apple-darwin21.0)
Others:

Additional context
Add any other context about the problem here.

Hi @daftkid, thank you for using Prowler Version 3!
Please, can you execute prowler aws --log-level ERROR --verbose and send us all the logs?

@sergargar please see it here in gist: https://gist.github.com/daftkid/41ee659572d706742dbdd99c6aeffbcd

Hi @daftkid, can you run it using the fix-cn-partition branch?
Thanks again!

@sergargar please see it here: https://gist.github.com/daftkid/52a5a9aefbaa2393245df02faec5d0c6
I executed it via ./prowler.py instead of just prowler

Hi @daftkid, I think we've got it. If you can please test it again against the fix-cn-partition branch. We had a typo calling the AWS China partition cn instead of aws-cn.
Thanks!

@sergargar please see it here: https://gist.github.com/daftkid/d2d414a847e579b22b580a2c264f614a
I can also see some errors for GlobalAccelerator and other services, prowler queries AWS Global partition instead of the Chinese one. Also, some services are not available in China (e.g. shield) so it also fails to run API queries.

Hi @daftkid, thank you for the logs. We will solve that issues shortly.
It seems that the problem related with this issue is solved, right? Can you complete now a scan in a Chinese AWS Account?

Hi @sergargar Yep, I can run all of the checks, some of them are still failing but that will be fixed eventually I believe as almost all errors are related to the fact that some services are not available in the Chinese AWS partition.

Thank you again @daftkid !!
Could you launch the scan in the branch fix-global-services and send us the ERROR logs?
We've fixed a lot of errors in the China Partition.

@sergargar  please see below
{"timestamp": "2022-12-22 18:08:18,088", "filename": "awslambda_service.py:124", "level": "ERROR", "module": "awslambda_service", "message": "cn-northwest-1 -- ClientError[112]: An error occurred (AccessDeniedException) when calling the GetFunctionUrlConfig operation: Unable to determine service/operation name to be authorized"}
{"timestamp": "2022-12-22 18:09:14,054", "filename": "ec2_elastic_ip_shodan.py:38", "level": "ERROR", "module": "ec2_elastic_ip_shodan", "message": "ERROR: No Shodan API Key -- Please input a Shodan API Key with -N/--shodan or in config.yaml"}
{"timestamp": "2022-12-22 18:10:02,638", "filename": "kms_service.py:75", "level": "ERROR", "module": "kms_service", "message": "cn-northwest-1 -- ClientError:71 -- An error occurred (AccessDeniedException) when calling the GetKeyRotationStatus operation: User: arn:aws-cn:iam::xxxxxxxxxxxxxxx:user/oleksandr.mykytenko is not authorized to perform: kms:GetKeyRotationStatus on resource: arn:aws-cn:kms:cn-northwest-1:xxxxxxxxxxxxxxxxx:key/key_id because no resource-based policy allows the kms:GetKeyRotationStatus action"}
{"timestamp": "2022-12-22 18:10:14,164", "filename": "route53_service.py:115", "level": "ERROR", "module": "route53_service", "message": "us-east-1 -- ClientError[106]: An error occurred (UnrecognizedClientException) when calling the ListDomains operation: The security token included in the request is invalid."}
{"timestamp": "2022-12-22 18:10:29,871", "filename": "globalaccelerator_service.py:40", "level": "ERROR", "module": "globalaccelerator_service", "message": "us-west-2 -- ClientError[27]: An error occurred (UnrecognizedClientException) when calling the ListAccelerators operation: The security token included in the request is invalid."}
{"timestamp": "2022-12-22 18:10:42,050", "filename": "trustedadvisor_service.py:47", "level": "ERROR", "module": "trustedadvisor_service", "message": "cn-northwest-1 -- EndpointConnectionError[31]: Could not connect to the endpoint URL: "https://support.cn-northwest-1.amazonaws.com.cn/""}

Thanks @daftkid, seems that trusted advisor is not available in cn-northwest-1 region.
Can you execute it again with the new changes in branch fix-global-services? Both route53 and globalacceleator should disspaear.

Hi @sergargar please see below:
{"timestamp": "2022-12-23 10:02:42,005", "filename": "awslambda_service.py:124", "level": "ERROR", "module": "awslambda_service", "message": "cn-northwest-1 -- ClientError[112]: An error occurred (AccessDeniedException) when calling the GetFunctionUrlConfig operation: Unable to determine service/operation name to be authorized"}
{"timestamp": "2022-12-23 10:03:38,303", "filename": "ec2_elastic_ip_shodan.py:38", "level": "ERROR", "module": "ec2_elastic_ip_shodan", "message": "ERROR: No Shodan API Key -- Please input a Shodan API Key with -N/--shodan or in config.yaml"}
{"timestamp": "2022-12-23 10:04:27,967", "filename": "kms_service.py:75", "level": "ERROR", "module": "kms_service", "message": "cn-northwest-1 -- ClientError:71 -- An error occurred (AccessDeniedException) when calling the GetKeyRotationStatus operation: User: arn:aws-cn:iam::xxxxxxxx:user/oleksandr.mykytenko is not authorized to perform: kms:GetKeyRotationStatus on resource: arn:aws-cn:kms:cn-northwest-1:xxxxxxxxx:key/xxxxxxxx-xxx-xxx-xxx-xxx because no resource-based policy allows the kms:GetKeyRotationStatus action"}
{"timestamp": "2022-12-23 10:04:38,978", "filename": "aws_provider.py:180", "level": "ERROR", "module": "aws_provider", "message": "KeyError[157]: 'route53domains'"}
{"timestamp": "2022-12-23 10:05:06,659", "filename": "trustedadvisor_service.py:47", "level": "ERROR", "module": "trustedadvisor_service", "message": "cn-northwest-1 -- EndpointConnectionError[31]: Could not connect to the endpoint URL: "https://support.cn-northwest-1.amazonaws.com.cn/""}

Thank you @daftkid, can you test it again? We've just solved the r53 error.

@sergargar please see here:
{"timestamp": "2022-12-23 11:16:12,834", "filename": "awslambda_service.py:124", "level": "ERROR", "module": "awslambda_service", "message": "cn-northwest-1 -- ClientError[112]: An error occurred (AccessDeniedException) when calling the GetFunctionUrlConfig operation: Unable to determine service/operation name to be authorized"}
{"timestamp": "2022-12-23 11:17:07,381", "filename": "ec2_elastic_ip_shodan.py:38", "level": "ERROR", "module": "ec2_elastic_ip_shodan", "message": "ERROR: No Shodan API Key -- Please input a Shodan API Key with -N/--shodan or in config.yaml"}
{"timestamp": "2022-12-23 11:17:57,686", "filename": "kms_service.py:75", "level": "ERROR", "module": "kms_service", "message": "cn-northwest-1 -- ClientError:71 -- An error occurred (AccessDeniedException) when calling the GetKeyRotationStatus operation: User: arn:aws-cn:iam::xxxxx:user/oleksandr.mykytenko is not authorized to perform: kms:GetKeyRotationStatus on resource: arn:aws-cn:kms:cn-northwest-1:xxxxx:key/xxxxx-xxxxx-xxxxx-xxxxx-xxxxx because no resource-based policy allows the kms:GetKeyRotationStatus action"}
{"timestamp": "2022-12-23 11:18:15,852", "filename": "route53_service.py:125", "level": "ERROR", "module": "route53_service", "message": "cn-northwest-1 -- EndpointConnectionError[116]: Could not connect to the endpoint URL: "https://route53domains.cn-northwest-1.amazonaws.com.cn/""}
{"timestamp": "2022-12-23 11:18:45,903", "filename": "trustedadvisor_service.py:47", "level": "ERROR", "module": "trustedadvisor_service", "message": "cn-northwest-1 -- EndpointConnectionError[31]: Could not connect to the endpoint URL: "https://support.cn-northwest-1.amazonaws.com.cn/""}

@daftkid you can try it again

@sergargar it seems it does not complain about r53 :)
{"timestamp": "2022-12-23 12:29:44,985", "filename": "awslambda_service.py:124", "level": "ERROR", "module": "awslambda_service", "message": "cn-northwest-1 -- ClientError[112]: An error occurred (AccessDeniedException) when calling the GetFunctionUrlConfig operation: Unable to determine service/operation name to be authorized"}
{"timestamp": "2022-12-23 12:30:39,974", "filename": "ec2_elastic_ip_shodan.py:38", "level": "ERROR", "module": "ec2_elastic_ip_shodan", "message": "ERROR: No Shodan API Key -- Please input a Shodan API Key with -N/--shodan or in config.yaml"}
{"timestamp": "2022-12-23 12:31:28,644", "filename": "kms_service.py:75", "level": "ERROR", "module": "kms_service", "message": "cn-northwest-1 -- ClientError:71 -- An error occurred (AccessDeniedException) when calling the GetKeyRotationStatus operation: User: arn:aws-cn:iam::xxxxx:user/oleksandr.mykytenko is not authorized to perform: kms:GetKeyRotationStatus on resource: arn:aws-cn:kms:cn-northwest-1:xxxxx:key/xxxxx-xxxxx-xxxxx-xxxxx-xxxxx because no resource-based policy allows the kms:GetKeyRotationStatus action"}

Awesome, thank you for all the help @daftkid ❤
I close the issue since it is solved.


Improve NatSpec documentation

This PR generally improves NatSpec doc on the contracts and replaces PR https://github.com/coinbase/smart-wallet/pull/17

I removed the usage of named parameters in the last commit https://github.com/coinbase/smart-wallet/pull/18/commits/bd548a8b732127309cdfbdf82c3a9a4fd5b5c7a5. I think we're good to merge.


[Bug]: Workflow with extra JS object other than Main is failing after execution start

Is there an existing issue for this?

[X] I have searched the existing issues

Description
Workflow with extra JS object other than Main is failing after execution start
Steps To Reproduce

Go to workflow
Create new jsobject
Trigger workflow, observe it fails.

Public Sample App
No response
Environment
Release
Severity
Medium (Frustrating UX)
Issue video log
No response
Version
Cloud

Closing this as it does not have an appropriate label associated with a pod

Bumping this issue up to prod because it should have made it's way there by now if it was not fixed

Hey team! Please add your planning poker estimate with Zenhub @nsarupr @srix


Unify init block with assignment

class TomlFloat(content: String) : TomlValue(content) {
    var value: Float
    init {
        value = content.toFloat()
    }
}

can be unified to
class TomlFloat(content: String) : TomlValue(content) {
    var value: Float = content.toFloat()
}

Doesn't SingleInitRule already handle this?

Yep, just tested it. Already works as expected :)


Urgent: revert "feat: add Anthropic support (#288)"

This reverts commit 25c8e422977ebc4ee298bf3b0fa06620500404b1.

I'm glad you understand the situation. Could you please resolve the issue as soon as possible? Otherwise, the other PR won't pass the pipelines. Thanks.

We have already fixed this issue.


Resolved test failures

Resolving https://github.com/cucumber/cucumber-rails/issues/354

(Thanks for working on this!)

@olleolleolle Not a problem. It looks like it's still a little messed up, so I might need to go back to the drawing board a little. I have a strong feeling it is entirely due to gem versions.

So it turns out I wasn't entirely correct. For some reason, running bundle exec rails g scaffold would attempt to run the cucumber tests, which would subsequently fail and return a non-zero exit code, failing the features.
Removing successfully from the And I successfully run ... steps resolves the issues in Ruby 2.4. This may not be ideal, but given the assertions are still valid I don't think it's such a big deal at the moment. At least this way we'll have passing tests. :)

So far,  the tests are passing for ruby versions 2.1.10 and up, but not for 2.0.0, due to the following error:
expected "private method include' called for ActionDispatch::Assertions:Module (NoMethodError)
/home/travis/.rvm/gems/ruby-2.0.0-p648/gems/turbolinks-5.1.0/lib/turbolinks.rb:25:in block (2 levels) in <class:Engine>'
/home/travis/.rvm/gems/ruby-2.0.0-p648/gems/activesupport-4.0.13/lib/active_support/lazy_load_hooks.rb:38:in instance_eval'
/home/travis/.rvm/gems/ruby-2.0.0-p648/gems/activesupport-4.0.13/lib/active_support/lazy_load_hooks.rb:38:in execute_hook'
/home/travis/.rvm/gems/ruby-2.0.0-p648/gems/activesupport-4.0.13/lib/active_support/lazy_load_hooks.rb:45:in block in run_load_hooks'
/home/travis/.rvm/gems/ruby-2.0.0-p648/gems/activesupport-4.0.13/lib/active_support/lazy_load_hooks.rb:44:in each'
/home/travis/.rvm/gems/ruby-2.0.0-p648/gems/activesupport-4.0.13/lib/active_support/lazy_load_hooks.rb:44:in run_load_hooks'
/home/travis/.rvm/gems/ruby-2.0.0-p648/gems/actionpack-4.0.13/lib/action_controller/base.rb:257:in <class:Base>'
/home/travis/.rvm/gems/ruby-2.0.0-p648/gems/actionpack-4.0.13/lib/action_controller/base.rb:163:in <module:ActionController>'
/home/travis/.rvm/gems/ruby-2.0.0-p648/gems/actionpack-4.0.13/lib/action_controller/base.rb:4:in <top (required)>'
/home/travis/build/cucumber/cucumber-rails/lib/cucumber/rails/action_controller.rb:1:in <top (required)>'
/home/travis/.rvm/gems/ruby-2.0.0-p648/gems/activesupport-4.0.13/lib/active_support/dependencies.rb:229:in require'
/home/travis/.rvm/gems/ruby-2.0.0-p648/gems/activesupport-4.0.13/lib/active_support/dependencies.rb:229:in block in require'
/home/travis/.rvm/gems/ruby-2.0.0-p648/gems/activesupport-4.0.13/lib/active_support/dependencies.rb:214:in load_dependency'
/home/travis/.rvm/gems/ruby-2.0.0-p648/gems/activesupport-4.0.13/lib/active_support/dependencies.rb:229:in require'
/home/travis/build/cucumber/cucumber-rails/lib/cucumber/rails.rb:8:in <top (required)>'
/home/travis/build/cucumber/cucumber-rails/tmp/aruba/rails-3-app/features/support/env.rb:7:in require'
/home/travis/build/cucumber/cucumber-rails/tmp/aruba/rails-3-app/features/support/env.rb:7:in <top (required)>'
/home/travis/.rvm/gems/ruby-2.0.0-p648/gems/cucumber-1.3.20/lib/cucumber/rb_support/rb_language.rb:95:in load'
/home/travis/.rvm/gems/ruby-2.0.0-p648/gems/cucumber-1.3.20/lib/cucumber/rb_support/rb_language.rb:95:in load_code_file'
/home/travis/.rvm/gems/ruby-2.0.0-p648/gems/cucumber-1.3.20/lib/cucumber/runtime/support_code.rb:180:in load_file'
/home/travis/.rvm/gems/ruby-2.0.0-p648/gems/cucumber-1.3.20/lib/cucumber/runtime/support_code.rb:83:in block in load_files!'
/home/travis/.rvm/gems/ruby-2.0.0-p648/gems/cucumber-1.3.20/lib/cucumber/runtime/support_code.rb:82:in each'
/home/travis/.rvm/gems/ruby-2.0.0-p648/gems/cucumber-1.3.20/lib/cucumber/runtime/support_code.rb:82:in load_files!'
/home/travis/.rvm/gems/ruby-2.0.0-p648/gems/cucumber-1.3.20/lib/cucumber/runtime.rb:184:in load_step_definitions'
/home/travis/.rvm/gems/ruby-2.0.0-p648/gems/cucumber-1.3.20/lib/cucumber/runtime.rb:42:in run!'
/home/travis/.rvm/gems/ruby-2.0.0-p648/gems/cucumber-1.3.20/lib/cucumber/cli/main.rb:47:in execute!'
/home/travis/.rvm/gems/ruby-2.0.0-p648/gems/cucumber-1.3.20/bin/cucumber:13:in <top (required)>'
/home/travis/.rvm/gems/ruby-2.0.0-p648/bin/cucumber:23:in load'
/home/travis/.rvm/gems/ruby-2.0.0-p648/bin/cucumber:23:in <main>'
/home/travis/.rvm/gems/ruby-2.0.0-p648/bin/ruby_executable_hooks:15:in eval'
/home/travis/.rvm/gems/ruby-2.0.0-p648/bin/ruby_executable_hooks:15:in <main>'" to have output string includes: "1 scenario (1 failed)
1 step (1 failed)"

@olleolleolle , @aslakhellesoy Would it be possible for us to cease official support for Ruby 2.0.0? If so, I can remove 2.0.0 from the .travis-ci.yml file and we'll be able to have a test suite that passes. :)

I'm currently working on re-adding Ruby 2.0.0 support. Let's hold off on Merging for the moment. :)

I ended up monkey patching the ActionDispatch::Assertions module so that calls to the private method include won't raise exceptions on Ruby 2.0.0 (and instead will trigger ActionDispatch::Assertions.send(:include)).
The tests now pass for Ruby 2.0.0, along with the other versions. Are you happy for me to merge this into Master?

👍

👍 @xtrasimplicity that is great. Yes you can merge to master. Thanks!

Reopening as Rails 4.0 and 4.2 have failed on Ruby 2.1.0. I haven't been able to reproduce this on my development environment, nor on a Ubuntu 14.04 vagrant box. Strangely, the code on xtrasimplicity:bug_fix/TestsFailing and cucumber:master are identical, and the tests were successful prior to merging the PR. Restarting the failing jobs results in it failing again, so it is definitely reproduceable.
I'll take a look into this again tomorrow, but I'd welcome any suggestions. :)

@xtrasimplicity may you remove [WIP] mark?

@dlibanori done!


[Feature Request] Improve the Getting Started documentation.

Feature Request
I don't want to clone a github repository for starting a new project. I want to install covalent in a existing project. I'd be nice a fresh instalation guide that includes:

List of necessary packages;
Angular-cli.json: scripts, styles and dependencies needed;

What is the motivation / use case for changing the behavior?
The other Angular2+ UI libraries have this option and it's fairly easy to get a new project up and running.
For example:

Clarity
https://vmware.github.io/clarity/get-started
PrimeNg
https://www.primefaces.org/primeng/#/setup

Its the same steps pretty much (just skipping the clone part), start from this step https://github.com/Teradata/covalent/blob/develop/docs/GETTING_STARTED.md#install-covalent-core-module 😄
We will update our docs site with that documentation though.

That's exactly what I needed, thank you.

Closing since we updated the site with the GETTING_STARTED.md


add err msg about renaming collision

update:
this error message should be propagate to upper level to print more useful infomation - Done.

now it will print something like this:
thread 'main' panicked at src/transform/mod.rs:104:60:
called `Result::unwrap()` on an `Err` value:
Err: on rename Fieldset "BSLOTR", new name "SLOTR" already exist
Err: on rename Fieldset "BCLRFR", new name "CLRFR" already exist
Err: on rename Fieldset "BSR", new name "SR" already exist
Err: on rename Fieldset "ACR1", new name "CR1" already exist
Err: on rename Fieldset "ADR", new name "DR" already exist
Err: on rename Fieldset "AFRCR", new name "FRCR" already exist
Err: on rename Fieldset "AIM", new name "IM" already exist
Err: on rename Fieldset "ACR2", new name "CR2" already exist

ooh very nice, printing all the errors instead of the first is much better. thanks!


Static imports jsDelivr have to use https:

jsdelivr.com does not support http anymore, so all the reference in the dode like:
<script src="//cdn.jsdelivr.net/react/15.4.2/react.min.js"></script>
have to be updated to:
<script src="https://cdn.jsdelivr.net/react/15.4.2/react.min.js"></script>

@redbass Thanks 👍

Merged 🎉


Here is the bulb that didnt get picked up:

heres the bulb:
https://www.homedepot.com/p/Philips-Color-and-Tunable-White-A19-LED-60-Watt-Equivalent-Dimmable-Smart-Wi-Fi-Wiz-Connected-Wireless-Light-Bulb-562702/313616477

Here's the log after it was found:
[2/12/2022, 8:48:42 AM] [WizSmarthome] [Discovery] Sending discovery UDP broadcast to <IP_ADDRESS>:38899
[2/12/2022, 8:48:42 AM] Homebridge v1.4.0 (HAP v0.10.0) (Homebridge 2394) is running on port 51151.
[2/12/2022, 8:48:42 AM] [WizSmarthome] Adding new accessory: Wiz Tunable White Bulb 6c299043df3e
[Wiz Tunable White Bulb 6c299043df3e@Wiz Tunable White Bulb 6c299043df3e@Active] Characteristic not in required or optional characteristic section for service Lightbulb. Adding anyway.
[2/12/2022, 8:48:42 AM] A platform configured a new accessory under the plugin name 'WizSmarthome'. However no loaded plugin could be found for the name!
[2/12/2022, 8:48:42 AM] [WizSmarthome] Adding new accessory: Wiz Tunable White Bulb 6c299043d862
[Wiz Tunable White Bulb 6c299043d862@Wiz Tunable White Bulb 6c299043d862@Active] Characteristic not in required or optional characteristic section for service Lightbulb. Adding anyway.
[2/12/2022, 8:48:42 AM] A platform configured a new accessory under the plugin name 'WizSmarthome'. However no loaded plugin could be found for the name!
[2/12/2022, 8:48:42 AM] [WizSmarthome] Adding new accessory: Wiz Tunable White Bulb 6c2990479892
[Wiz Tunable White Bulb 6c2990479892@Wiz Tunable White Bulb 6c2990479892@Active] Characteristic not in required or optional characteristic section for service Lightbulb. Adding anyway.
[2/12/2022, 8:48:42 AM] A platform configured a new accessory under the plugin name 'WizSmarthome'. However no loaded plugin could be found for the name!

I use this same bulb in my home and I have successfully connected to HomeKit using this plugin on Homebridge.

Make sure it's this WiZ:

Did you get this resolved?


[BEAM-12092] Bump jackson-module-scala to 2.12.2

Bump jackson-module-scala to 2.12.2

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[x] Choose reviewer(s) and mention them in a comment (R: @username).
[x] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[x] Update CHANGES.md with noteworthy changes.
[x] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.

GitHub Actions Tests Status (on master branch)

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

R: @lukecwik or @iemejia

Run Spark ValidatesRunner

Run Spark ValidatesRunner Java 11

Run Java Spark PortableValidatesRunner Batch


mingw: fix for #369

Hello,
Here the fix for issue #369

I'd gladly merge the first (CMake) part of the commit if you could extract it in a separate one because it makes sense to me, but the second one is not correct IMHO.

@vadz  here the log
[ 72%] Building CXX object src/backends/odbc/CMakeFiles/soci_odbc.dir/standard-into-type.cpp.obj
C:\WORK\GitHub\dev\soci\src\backends\odbc\standard-into-type.cpp: In member function 'virtual void soci::odbc_standard_into_type_backend::post_fetch(bool, bool, soci::indicator*)':
C:\WORK\GitHub\dev\soci\src\backends\odbc\standard-into-type.cpp:175:53: error: ISO C++98 does not support the 'I' scanf flag [-Werror=format=]
           if (sscanf(buf_, "%" LL_FMT_FLAGS "d", &ll) != 1)
                                                     ^
C:\WORK\GitHub\dev\soci\src\backends\odbc\standard-into-type.cpp:175:53: error: format '%d' expects argument of type 'int*', but argument 3 has type 'long long int*' [-Werror=format=]
C:\WORK\GitHub\dev\soci\src\backends\odbc\standard-into-type.cpp:183:53: error: ISO C++98 does not support the 'I' scanf flag [-Werror=format=]
           if (sscanf(buf_, "%" LL_FMT_FLAGS "u", &ll) != 1)
                                                     ^
C:\WORK\GitHub\dev\soci\src\backends\odbc\standard-into-type.cpp:183:53: error: format '%u' expects argument of type 'unsigned int*', but argument 3 has type 'long long unsigned int*' [-Werror=format=]
cc1plus.exe: all warnings being treated as errors

I using
c:\WORK\GitHub\dev\soci\build.gcc48>
c:\WORK\GitHub\dev\soci\build.gcc48>gcc --version
gcc (x86_64-posix-seh-rev1, Built by MinGW-W64 project) 4.8.3
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

c:\WORK\GitHub\dev\soci\build.gcc48>

Could you please provide me with your configuration to check?

@vadz also please check #369 itself. You'll find the same issue in logs.

E.g. using g++.exe (tdm64-1) 4.9.2 and compiling this:
#include <stdio.h>

int main() {
    long long ll = 0x1234567890abcdefLL;
    printf("I64 = %I64d\n", ll);
    printf("ll  = %lld\n", ll);
}

I get
$ g++ -Wall i64.cpp
i64.cpp: In function 'int main()':
i64.cpp:6:30: warning: unknown conversion type character 'l' in format [-Wformat=]
     printf("ll  = %lld\n", ll);
                              ^
i64.cpp:6:30: warning: too many arguments for format [-Wformat-extra-args]

In fact I also get exactly the same result using MinGW-w64 build of 4.8.0 and plain MinGW32 build of 4.8.1
Where does your MinGW build come from? I have a huge collection of MinGW versions here, going back to 3.4.5, but none of them identifies like -posix- something... Is it a Cygwin version maybe?

@vadz I use http://mingw-w64.org/doku.php/download/mingw-builds
But you've forget to add -pedantic to your build.
Full build parameters for SOCI
-pedantic -Werror -Wall -Wpointer-arith -Wcast-align -Wcast-qual -Wfloat-equal -Wredundant-decls -Wno-long-long -std=gnu++98  -Wno-variadic-macros
You can see it here https://travis-ci.org/snikulov/soci/jobs/80389595

@vadz BTW, I think that "-fPIC" can be completely and safely removed at all.
According to log from travis-ci this option added by cmake for shared libs.

Oops, yes -pedantic does make the error appear. What I don't understand is that %lld is still flagged as an error, with or without pedantic, why doesn't this happen when building SOCI?
FWIW warnings or not, both format specifiers do work fine during run-time...

@vadz pedantic just force to use standard without ms-extension.
Because -Wno-long-long inhibit the warning messages about long long usage.

Yes, I understand what -pedantic does. But I do use -Wno-long-long and still get warnings about %lld. I.e. for me the only way to print out a long long without warnings with MinGW is to use %I64d without -pedantic (-std=c++98 is ok though).

@vadz so what is your proposal?

The only solution I see right now is to remove -pedantic and leave the code as is.
The worrying thing is that I still don't understand what changed to break this. I64 was there since 2012 (see b82364ee) and -pedantic since 2010 (see 6ef88a25), has it really been broken since 3+ years?

@vadz Well, no problem. I can remove it.
@mloskot do you agree to lower warning letter and use non-standard ms extension with gcc on Windows platform?

@snikulov Yes, I agree with @vadz that for MinGW, it seems we have to %I64d without -pedantic.

@mloskot @vadz Ok. I've updated PR. Let's wait for Travis :)

@vadz @mloskot Could you please review?

Thanks, I've merged this now, please let me know if I did anything wrong as I didn't test this at all.

@vadz unfortunately removing pedantic does not solved issue completely :(
I've found that http://sourceforge.net/p/mingw-w64/mailman/message/29704782/ for MinGW it's better to provide -Wno-pedantic-ms-format
Looks like it was changed since 4.7.1

OK, let's see if it works in #392.

Changes Unknown when pulling a1bd7fcf4b00e3492e9115cb06379aeb47e56ac9 on snikulov:mingw_gcc_fix into ** on SOCI:master**.


[9.0] Do not clear trial_ends_at value to NULL

Clearing an existing trial_ends_at value to NULL breaks the user's "generic" trial period.

I think this is indeed a valid change. I believe the trial_ends_at should indeed not be affected when a customer was deleted in Stripe.

No plans to make this change on a point release in case there are unexpected billing behavior changes for existing applications.

@taylorotwell should I send this PR again for another branch? master maybe?

@taylorotwell should I send this PR again for another branch? master maybe?

@hafezdivandari yes please do so.

@driesvints Done: #614


fix: gridform validation

Overview
see https://codecademy.slack.com/archives/CQ98K8PT6/p1594914009272600 for context
(we dont want browser validation to take over our form error handling)
PR Checklist

[ ] Related to Abstract designs:
[ ] Related to JIRA ticket: ABC-123
[ ] I have run this code to verify it works
[ ] This PR includes unit tests for the code change

Note: I couldn't add aria-required to all fields
The attribute aria-required is not supported by the role checkbox. This role is implicit on the element input.eslintjsx-a11y/role-supports-aria-props
Note: there is probably much more accessible things to be done here, but if it's cool let's merge this temporarily until maybe @JoshuaKGoldberg and i can pair more on this

📬Published Alpha Packages:@codecademy/gamut-labs@1.7.42-alpha.09a8f5.0<EMAIL_ADDRESS>
🚀 Styleguide deploy preview ready!https://5f10884fbe7f62daf2af45ac--codecademy-styleguide.netlify.appDeploy Logs

📬Published Alpha Packages:@codecademy/gamut-labs@1.7.42-alpha.357724.0<EMAIL_ADDRESS>
📬Published Alpha Packages:@codecademy/gamut-labs@1.7.42-alpha.73e56a.0<EMAIL_ADDRESS>
🚀 Styleguide deploy preview ready!https://5f1096acfa0224408c165f7c--codecademy-styleguide.netlify.appDeploy Logs

📬Published Alpha Packages:@codecademy/gamut-labs@1.7.42-alpha.7fc4eb.0<EMAIL_ADDRESS>
🚀 Styleguide deploy preview ready!https://5f109a7b4ed982021ddc724e--codecademy-styleguide.netlify.appDeploy Logs

📬Published Alpha Packages:@codecademy/gamut-labs@1.7.42-alpha.249f75.0<EMAIL_ADDRESS>
🚀 Styleguide deploy preview ready!https://5f109cb15cf9e402322bd352--codecademy-styleguide.netlify.appDeploy Logs

@JoshuaKGoldberg i think we need to use aria-labelledby to associate them to get that, it would be a good follow up

Although yeah, if it could be done by using the label that would be easier/better.

📬Published Alpha Packages:@codecademy/gamut-labs@1.7.42-alpha.d00b4c.0<EMAIL_ADDRESS>
🚀 Styleguide deploy preview ready!https://5f10be673977d273f81233ce--codecademy-styleguide.netlify.appDeploy Logs


[BACKLOG-34804] Cherry-Picking RogueOne changes from master branch

This is not the correct branch to cherry pick for 11/25 release.


Java off heap allocation profiling (with mprotect event) issue

Dear experts,
According to https://youtu.be/c755fFv1Rnk, I use profiler.sh -d <duration> -e mprotect -f <absolute path of html file>  <java pid> to profile java off-heap object allocation, but interestingly, there are ~50% samples just show mprotect.
My JDK is JDK11, async version is 2.9, and I run java application in container, and set kernel.perf_event_paranoid=1 and kernel.kptr_restrict=0 in the host machine.
Could u please kindly let me know if there is any wrong? Thanks in advance!
sh-4.2# ./profiler.sh -v
Async-profiler 2.9 built on Nov 26 2022
Copyright 2016-2021 Andrei Pangin
sh-4.2# ./profiler.sh -d 60 -e mprotect -f /tmp/sample.html 1
Profiling for 60 seconds
sh-4.2# java -version
openjdk version "11.0.10" 2021-01-19 LTS
OpenJDK Runtime Environment Corretto-<IP_ADDRESS>.1 (build 11.0.10+9-LTS)
OpenJDK 64-Bit Server VM Corretto-<IP_ADDRESS>.1 (build 11.0.10+9-LTS, mixed mode)
sh-4.2#

It works, turned out to be GC related. Thanks @apangin !

Dear @apangin , sorry to interrupt you again...
My previous assumption is GC related, am I right? If possible, could u please kindly let me know how can I correlated these native async profiler sampling to specific functions? Thanks in advance!
There are two parts: deoptimization & _GI_Clone

I'm not sure I understand. Neither of these stack traces come from GC.
This SO answer explains how to find cause of deoptimization. In any case, I don't think deoptimization relates to off-heap memory leak. From your profile, netty buffers are more likely suspect.

Thanks @apangin for ur clear explanation with SO answer!


I can't claim the front end developer certificate

I already completed the whole map, except the waypoints added in the last update, and wanted to claim the certificates. I clicked the link in the map and reached a page which says

Let's confirm that you have completed all of our basic and intermediate Bonfires, and all our basic and intermediate Ziplines. Click the button below to verify this.

After clicking the button, I received the message

Looks like you have not completed the neccessary steps. Please return to the challenge map.

Do I need to complete the new waypoints too?
Edit: the new waypoints are related to the sections "Get Started with Free Code Camp" and "Gear up for Success"

@jbmartinez You should not need to complete any of the Waypoints - we only look at Bonfires, Ziplines and Basejumps. Could you pair with either me or @BerkeleyTrue later today so we can try to figure out what happened? Thanks for reporting this.

I'm running into this same problem. I see this: "Looks like you have not completed the neccessary steps. Please return to the challenge map."
However, I have completed all the relevant steps:

I'm looking into it

I've found the issue. Expect a patch soon

Fix is live. Please give it a try.

It's working fine, thank you!

@BerkeleyTrue I was able to claim my certificate, but my name isn't filled in on the certificate:
http://www.freecodecamp.com/nickbarry/front-end-certification

@nickbarry, I think https://github.com/FreeCodeCamp/FreeCodeCamp/issues/3654 should help.

Yep, @bugron , that did it! Thanks.

Hi,
sorry for my bad english,
I already completed erverthing to get the front end certificate but when i tried to get the certificate the buttons [open link in a new tab] doesn´t work. And I only come to step 3 not to step 4.
Please help.

Hi,
I completed all of the Front-End steps and on the certification step I was presented with a certificate with the wrong name and completion date.

check
https://forum.freecodecamp.org/t/how-can-i-get-a-copy-of-my-front-end-certificate/146927/8