[as2_gazebo_assets] Crazyflie model not flying

Hi!
I have been playing with the project_crazyflie example and I was trying to set the "model_type" to crazyflie, but the platform errors.
Looking through the code it seems that in as2_gazebo_assets/src/as2_gazebo_assets/models/drone.py you hard code a DroneTypeEnum to only have the quadrotor_base and hexrotor_base, which are currently the only allowed values to model_type.
However I also see that as2_gazebo_assets/model you have a number of sdfs including the crazyflie sdf.
So how do I spawn the crazyflie model for the simulation?
I couldn't find any guidance on this in the docs, only that the only two models in simulation are the quadrotor_base and hexrotor_base.
Cheers!

To add more info, I added CRAZYFLIE: crazyflie to the DroneTypeEnum, while setting model_type to crazyflie and lo and behold the crazyflie did spawn!
But it wasn't going to take off and the controller was complaining... so I'm assuming that there are topic mismatches if using the crazyflie model?

Hi @mhl787156 ,
We are not including the crazyflie in the DroneTypeEnum because there are some issue in the model that cause an unstable flight. The documentation lists the models available for gazebo.
There is no plan in the near future to fix this, you can take a look at the models in this repo and check if they made some changes that fix it.

Hi @pariaspe
Okay so I managed to connect up the crazyflie, I have the props spinning on the arm message.
Just needed to update the robotNamespace and I think the gazebo topic names are no longer /gazebo/command/... and are now just /command/... (basically just copied over quadcopter_base)
Things fail when I request a takeoff though, props spin but vehicle doesnt move. I'm guessing that the takeoff command isn't getting through to the model which is causing Goal Rejected errors for subsequent behaviours?

I haven't looked into your behaviours and commands yet, would be able to point me to some places which I might want to look at? Where is the link between the behaviour and sending a controller command?
Thanks!

Just to add, I tried to call the cf0/TakeoffBehaviour manually on the cli (after arming) and I get the following as expected:
> ros2 action send_goal /cf0/TakeoffBehavior as2_msgs/action/Takeoff "{takeoff_height: 2.0, takeoff_speed: 0.5}"
Waiting for an action server to become available...
Sending goal:
     takeoff_height: 2.0
takeoff_speed: 0.5

Goal accepted with ID: 972eac11b0c34533a715f25ca9cf4395

Result:
    takeoff_success: false

Goal finished with status: ABORTED

Trying to figure out if its Aerostack side or gazebo side.
From Kimberley's issue: https://github.com/bitcraze/crazyflie-simulation/issues/57#issue-2150687102
I'd like to try and access gazebo directly and run something like the following:
gz topic -t /crazyflie/gazebo/command/motor_speed --msgtype ignition.msgs.Actuators -p 'velocity:[250,250,250,250]'
However running gz topic in the tmux shell, or any shell doesn't seem to find the running Gazebo instance?

Hey @mhl787156 , I'm out of the office until next Wednesday. I'll take a look and test your PR when I come back, but it seems an issue while creating the tf_tree. Thanks for the debugging!

No worries take your time!
Yes you are right, it is an issue with the TF tree! Above is from when I tried changing the as2_behaviours_motion to crazyflie/body as base link. But I'm assuming something in the system has hardcoded a look up to base_link as the base link.
In the PR i've made the simpler change of just setting the crazyflie base link to base_link and it removes most of the above issues!

Hi @pariaspe just trying to look into the velocity issue now!
Do you have any suggestions on how to tune the attitude or angular rates? Those most be broken to produce such a bad velocity response...
And do you know how to streamline the testing process? Its rather tedious having to compile and bring gazebo up and down everytime! How did you export to plotjuggler?

Not sure about that. The model seems to be not reactive enough but it's hard to guess. As far as I know the only way to do it is to bring up and down the simulation, since the issue is in the plugins of the crazyflie model. Try to automatize your tests using a python script. To visualize the results, I'm recording a rosbag an opening it in plotjuggler. Sorry for not being more helpful..

Thats alright! Maybe i'll try to automate it.
One thing that is confusing me though is that the takeoff is always perfect - never any oscillations until it finishes the takeoff and I think the velocity controller takes over.
Do you know if there's something different between the takeoff and after?
e.g. if the mission.py script just takesoff and then exits.
I see that the bitcraze repo has its own simpler PID controller plugin, if the vel controller is not working I might try swap that in somehow. Might need some guidance on where the source of that could go.

I was using the following mission, it might help.
#!/bin/python3

"""
mission_vel_motion_ref.py
"""

import time
import rclpy
from as2_python_api.drone_interface import DroneInterface
from as2_python_api.modules.motion_reference_handler_module import MotionReferenceHandlerModule

class DroneMotionRef(DroneInterface):
    """Drone interface node with PointGimbalModule."""

    def __init__(self, name, verbose=False, use_sim_time=False):
        super().__init__(name, verbose, use_sim_time)

        self.motion_ref_handler = MotionReferenceHandlerModule(drone=self)

    def run_test(self):
        """ Run the mission """
        self.offboard()
        self.arm()
        self.takeoff(1.0, wait=True)
        time.sleep(1.0)
        while True:
            self.motion_ref_handler.speed.send_speed_command_with_yaw_angle(
                [0.5, 0.0, 0.0], pose=None, twist_frame_id='drone0/base_link', yaw_angle=0.0)
            time.sleep(0.1)

if __name__ == '__main__':
    rclpy.init()

    uav = DroneMotionRef("drone0", verbose=False, use_sim_time=True)
    uav.run_test()
    uav.shutdown()
    rclpy.shutdown()

To avoid issues with outer controller (as2_motion_controller), you should set behavior to load speed plugins. Then, the mission sends speed commands and the outer controller is bypassed (input and output control mode are the same).
I don't know what is your current simulation setup, but check if the takeoff is using speed or position plugin. You can check it reading what the behavior is logging, it should print what plugin is loading.
I was recording these topics:
            /tf
            /tf_static
            /clock
            /<%= drone %>/platform/info
            /<%= drone %>/self_localization/pose
            /<%= drone %>/self_localization/twist
            /<%= drone %>/actuator_command/twist
            /<%= drone %>/motion_reference/pose
            /gz/<%= drone %>/cmd_vel
            /<%= drone %>/motion_reference/twist
            /<%= drone %>/ground_truth/twist
            /<%= drone %>/ground_truth/pose

ground_truth are the input for the state estimator, while self_localization is the output. They should be same identical, since there is no need to estimate anything, you already have the ground truth. There is no odometry in simulation because it is not needed. You can find attitude and angular rates in both topics.
motion_reference are the input for the controller and the actuator_commands the output. gz/md_vel is what the platform interface (Gz<->as2) sends to Gazebo and actuator_commad is what receives, should be identical too (I don't remember exactly if any transformation is performed). platform/info is just  recorded to check that no control mode is changed during the activation and deactivation of behaviors.
I didn't check bitcraze PID controller. Is it a gazebo plugin?

Hi @pariaspe thanks for all that, I will give it a bit more of a go and get back to you in the next two weeks, on leave for a bit!
The bitcraze controller is a gazebo plugin here, no idea how that one performs though!  https://github.com/bitcraze/crazyflie-simulation/tree/main/simulator_files/gazebo/controllers

Hi @pariaspe just back to trying to get to the bottom of this. I've been trying to follow the data passing throughout your system and I've got the following, does this track?

The project pollibots mission.py calls a motion_ref_handler.speed.send_speed_command_with_yaw_angles. What this does is send a twist message to the motion_reference/twist topic (as2_motion_reference_handlers/basic_motion_references.py)
This gets read in by the as2_motion_controller which performs a PID control depending on the mode of the control. In project crazyflie there is a sim config motion controller plugin which contains the gains for this PID controller. After the PID this gets sent out on a actuator_command/twist or pose or thrust or trajectory topic.
The actuator command then gets read in by the aerial platform module. In our case that aerial platform is the gazebo bridge module which translates it into a gazebo command and sends it to gazbeo on /gz/{drone name}/cmd_vel.
Then the gazebo multicopter velocity plugin then reads in that target cmd vel message and tries to move the drone model using the gazebo P tunings in the crazyflie sdf file.

In which case the question I have is in step 2 and whether the PID controller is activated for our example script above sending self.motion_ref_handler.speed.send_speed_command_with_yaw_angle commands, and whether this might be negatively affecting anything?
We have attempted changing the gains on the Gazebo Multicopter plugin but have had no success just yet.
I'm thinking that if this doesnt work, as a last ditch effort I could create a new Crazyflie_Gazebo Aerial platform which uses the crazyflie_sim simple PID controller to directly control the motors on the gazebo model, bypassing the gazebo velocity control plugin.

In which case the question I have is in step 2 and whether the PID controller is activated for our example script above sending self.motion_ref_handler.speed.send_speed_command_with_yaw_angle commands, and whether this might be negatively affecting anything?

Step 2 is not correct. Check your motion_controller.yaml config, parameter use_bypass should be enabled. Bypass avoids to perform the PID control if in and out control modes are identical. Also, check yaw_control mode, if it is not the same it might be controlling.

We have attempted changing the gains on the Gazebo Multicopter plugin but have had no success just yet.
I'm thinking that if this doesnt work, as a last ditch effort I could create a new Crazyflie_Gazebo Aerial platform which uses the crazyflie_sim simple PID controller to directly control the motors on the gazebo model, bypassing the gazebo velocity control plugin.

After saying that, I strongly believe that the issue is in the model, either on the mesh or the controller plugin. You could try to build a dummy aerial_platform, but I'm afraid you won't succeed fixing the problem.
@RPS98 any thoughts about this?

Sigh maybe its time to move on then, I've started conversations that we just test with your quadrotor_base model and then either run it on the tello or crazyflie in practice.
Thanks for the help though! Probably worth poking Kimberley at bitcraze to have a look at it again! Its crazy that a good sim for the crazyflies is hard to come by!

Hi! I came accross this I see (now you have my github name as well).
To provide more context from the side of Bitcraze: we kind of more focused on Webot simulation actually, so I'm not sure if this is possible to integrate that into aerostack. Also the simulation maintenance was mostly experimental so we haven't had much time to maintain anything other than the getting started guide for webots and that is without the inclusion of ROS. We hope that we'll have more time to look into it but the problem is mostly that we don't have a single resource only on simulation and other priorities got into the way. That said, usually when someone from the community helps out with PRs to improve it, we are always happy to review and test it.
There have been some community contributions of projects to provide full SITL together with gazebo simulations (both old and classic) which seems to work pretty good, like sim_cf2 and crazysim. The last one managed to use the crazyflie-simulation repo of the new gazebo to get it to fly, so there seems to be something possible there.
We can also consider something else, and just use the lee-controller integration of Gazebo to get the Crazyflie to fly without any SITL in play: https://gazebosim.org/api/gazebo/6.7/classignition_1_1gazebo_1_1systems_1_1MulticopterVelocityControl.html. This requires the commands to be send in velocity though so not sure how compatible that is with aerostack2

Hi @knmcguire as far as I could see aerostack primarily uses the gazebo lee-controller integration as its controller. As can be seen from my previous tests there's something that seems wrong with the crazyflie model itself or the lee-controller parameters and I couldn't get down to the bottom of it.
I remembered doing a side by side comparison of the crazyflie-simulation repo and the crazyflie model seems to be very similar though... but if theres a working model in crazysim with gazebo and the lee-controller then afaik it should work here with aerostack as well.

ah oke. The lee controller was not implemented in the crazyflie-simulation repo, so then it makes sense why we haven't seen this.
Crazysim uses SITL build of the firmware so it just controls the motors directly. It is not using the lee controllers, but perhaps we can check how their motormodel looks then compared to ours. If they manage to fly it with SITL then I don't see a reason why the leecontroller can't either but let's see.
I'll try to see if I have some time tomorrow to look at this issue again https://github.com/bitcraze/crazyflie-simulation/issues/6. Maybe it's good to start from scratch since the gazebo standard example for the lee controller does work normally.

Hi @knmcguire, thanks for your message! As @mhl787156 we are trying to make it fly via gazebo lee-controller plugin. I'll take a look at your motor model :+1:
@RPS98 is also trying to control it via motor commands using as2_platform_multirotor_simulator. We'll update here any progress.

Great! It is good to have several eyes on it. Currently I'm on gazebo Fortress, and even the regular quadcopter.sdf example doesn't seem to respond... so that doesn't help

arg... I'll go cry in a corner now. Wasted an whole day on reinstalling gazebo harmonic and fortress, trying different OS between native and WSL2, only to find out that using gz sim without the -r to indicate the robot world file makes it not respond to gz topic. I'll make sure that this is fixed in gazebo's documentation but no luck with me today :) another day I'll try again.

managed to get the lee controller to work in crazyflie-simulation repo on this PR: https://github.com/bitcraze/crazyflie-simulation/pull/59. Still need to smooth things out

Sorry spoke a bit too soon! takeoff goes pretty well but as soon as you give it a twist of zero it falls down again. Also the attitude doesn't seem to go very well

Haha yes! I think that was as far as I got, it takes off but then just flutters about or lands depending on the tuning parameters....
Tried a whole bunch and it didn't seem like they affected it much...

Yeah it is not a very easy thing to solve... currently only the webots model works but the variables of the model doesn't seem to really reflect correct system ID (see this issue you started: https://github.com/bitcraze/crazyflie-simulation/issues/60)
The multicopter example of gz-sim does seem to work fine. No drop in height and almost looks like a position controller https://github.com/gazebosim/gz-sim/blob/gz-sim8/examples/worlds/multicopter_velocity_control.sdf
There really needs to be a motor control tune plugin for gazebo because this is terrible to do just by restarting the sim the entire time

Fixed in #590


MB-4299 Encrypt S3 uploads

Description
The move to GovCloud has enabled a service control policy (SCP) to
reject unencrypted uploads to S3. Thankfully, the aws-sdk-go package
makes it easy for the client to specify that uploads should be
encrypted.
Since both user and Prime uploads use the same S3 Storer object, we
only need to make a one-line change. As for secure migrations, they
were already using the --sse AES256 flag.
Reviewer Notes
This PR is currently deployed in GovCloud exp. Please test the
following:

Upload a document as a service member during onboarding
Upload a proof of service via the Prime API
Upload a secure migration

Note that we currently cannot visually confirm the user upload in the
office app (as a TOO) due to a known CORS issue that is being fixed
this week.
Code Review Verification Steps

[ ] Code follows the guidelines for Logging
[ ] The requirements listed in
Querying the Database Safely
have been satisfied.
Any new migrations/schema changes:

[ ] Follow our guidelines for zero-downtime deploys (see Zero-Downtime Deploys)
[ ] Have been communicated to #g-database
[ ] Secure migrations have been tested following the instructions in our docs

[ ] There are no aXe warnings for UI.
[ ] This works in Supported Browsers and their phone views (Chrome, Firefox, IE, Edge).
[ ] Tested in the Experimental environment (for changes to containers, app startup, or connection to data stores)
[ ] User facing changes have been reviewed by design.
[ ] Request review from a member of a different team.
[ ] Have the Jira acceptance criteria been met for this change?

References

Jira story for this change

Messages

:book:
:link: MB-4299

  Generated by :no_entry_sign: dangerJS against 078202ad78290396434541cc0dc138946032a6fd

@monfresh The PPM orders document viewer should still work if you really want to verify an encrypted upload works

I also tested that secure migrations work in experimental.


Add have a cookie extension

Description
Add "Have a Cookie" extension, that allows Google Chrome users to easily retrieve cookies from any visited websites.
Type of change

New extension

Screencast

Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing
[x] I checked that extension's icon has size of 512x512

@PitNikola think for LinkedIn – I've reduced the need to have permanent access to the Keychain.
Here the user need to "Allow" once.

Ahah yes, it's a bit complex 😅
The source code inspiring chrome-cookie-helper comes from this repo: chrome-cookies-secure
I had to tweak it a lot to make it works as Raycast doesn’t officially support compiled node modules.
I cleaned it as much as I could – let me know if that's fine for you 👍
And thanks a lot for your feedback @pernielsentikaer 🙌

@HenriChabrand, as we discussed in Slack, there are security concerns with letting this extension requesting keychain access to Chrome Web Storage. Closing this PR for now, but feel free to publish it in your own repo, maybe some folks would find it useful. Thanks for your understanding!


Thumbor integration

I was thinking about this a lot and I would like to get your opinion before implementing anything.
There is an open source project called thumbor for image optimization in web sites.
Right now while I develop WTM Istanbul 2015 I take my time to optimize the images. But I remember that we didn't do much for DevFest Istanbul. Especially it is really hard when all of the organizers are busy with the event.
With thumbor, since we compute the sizes of every image when we draw them, we can give it to thumbor and it optimizes them and cache them in the server.  And you can also store images with effect like grayscale to be even faster.
The downside of it is that it has to be installed manually on a server. I know we cannot have a central server for everyone. What we can have is to have a wiki page about how to install thumbor and just enable it by providing a thumbor server URL in the config.
What do you think?

Hello @tasomaniac .The main disadvantage of this purpose is that you need server and it's bad..
I have a different approach. I am working on the new version - Zeppelin-grunt where grunt will optimize all images during the build.

Wow the demo of the grunt version is lot lot faster. Great! :)
Optimization during build is really cool and will solve most of the part of this issue.
But thumbor also resize your images to multiple sizes depends on where and which size you use them. So for example our sponsors and speakers gives use like 8MP images, optimization does not resize them but thumbor does. :) But I guess there can be a little bit manual work for now.
You are right about disadvantage of having a server. The purpose of this project actually conflicts with it.

The best way is to use SVG for sponsors' logos)
Ok, I am closing this issue.


Build(deps): Bump react-icons from 5.0.1 to 5.1.0 (#5708)

Pull request opened by the merge tool on behalf of #5708

Merged in 2876c80f82745fb73779e58bd7af8ccc898dbbb2


b

This is autogenerated. Please review and update as needed.
Describe the bug
Command Name
az webapp create
Errors:
Unable to retrieve details of the existing app 'myapp12'. Please check that the app is a part of the current subscription

To Reproduce:
Steps to reproduce the behavior. Note that argument values have been redacted, as they may contain sensitive information.

Put any pre-requisite steps here...
az webapp create --plan {} --resource-group {} --name {}

Expected Behavior
Environment Summary
Linux-5.4.0-1067-azure-x86_64-with-debian-10.2 (Cloud Shell), Common Base Linux Delridge (quinault)
Python 3.6.10
Installer: DEB

azure-cli 2.32.0

Extensions:
ai-examples 0.2.5
ssh 1.0.0

Dependencies:
msal 1.16.0
azure-mgmt-resource 20.0.0

Additional Context

route to CXP team to help with

@Akshay-gade Thanks for reporting the issue. Looking at the problem description, I assume you are creating an azure web app from Azure CLI. Please execute the below commands in order:

az account set --subscription "1234---1234"  # set the right subscription id where you would like to create webapp
az group create -l azRegion -n MyResourceGroup  # create the resource group
az appservice plan create -g MyResourceGroup -n MyPlan # create a basic web app Plan
az webapp create -g MyResourceGroup -p MyPlan -n MyUniqueAppName # create web app

Refer the examples here.
Hope this helps. Please let us know if you need any further assistance on this. Awaiting your reply.

@Akshay-gade Are you still facing the issue? This is a quick follow-up to check if you had a chance to look at my above comment.  Awaiting your reply.

@Akshay-gade We will now proceed with closure of this github issue. If you need any further assistance on this issue in future, please feel free to reopen this thread. We would be happy to help.


Instant Grid Power

I can't see what the Instant Grid Power sensor relates to.
I would assume it was your instant power draw from the grid, but I am currently running from battery using 976w with no power from grid yet the Instant Grid Power value is sat at about 947w.
Can you confirm what actual value this sensor represents.

Update the integration and check again. In the last version I changed the behavior of several sensors, now it should give correct information

Thanks, that issue seems to be sorted now, Instant Grid Power is now showing the actual grid power being drawn.


Icon request: BitForex

URL of the site or app
https://www.bitforex.com/
Logo resources for the icon
https://event.bitforex.com/en/Media.html
Anything else?
No response

Here you go!
https://github.com/aegis-icons/aegis-icons/blob/master/SVG/BitForex.svg

:question: How to add icon(s) to Aegis?
:star: Support this project by giving a star! Just adding like to this comment is also appreciated.


Customizing Parsedown

Referencing issue #64.
Placing a bootstrap.php file on the root of your jigsaw will load it before registering all file handlers.
The markdown and yaml parsers are resolved using the service container so you can re-bind them and extend parsedown.
Example
Files to make the inline colored text in the parsedown wiki.
<?php
// File: /bootstrap.php

use App\UberParsedown;
use Mni\FrontYAML\Markdown\MarkdownParser;

/** @var $container \Illuminate\Container\Container */
/** @var $jigsaw \TightenCo\Jigsaw\Jigsaw */

$container->bind(MarkdownParser::class, UberParsedown::class);

<?php
// File: /app/UberParsedown.php

namespace App;

use Mni\FrontYAML\Markdown\MarkdownParser;
use Parsedown;

class UberParsedown extends Parsedown implements MarkdownParser
{
    function __construct()
    {
        $this->InlineTypes['{'] [] = 'ColoredText';

        $this->inlineMarkerList .= '{';
    }

    protected function inlineColoredText($Excerpt)
    {
        if (preg_match('/^{c:([#\w]\w+)}(.*?){\/c}/', $Excerpt['text'], $matches)) {
            return array(
                'extent' => strlen($matches[0]),
                'element' => array(
                    'name' => 'span',
                    'text' => $matches[2],
                    'attributes' => array(
                        'style' => 'color: ' . $matches[1],
                    ),
                ),
            );
        }

        return null;
    }
}

Now your markdown file:
---
extends: _layouts.test_layout
section: content
---

# My awesome heading!

{c:#FFF}My awesome content!{/c}

Will be rendered as:

My awesome heading!

My awesome content!

This has the side-effect to allow any further customization, like registering custom JigSaw handlers.

I really like this solution!

The changes made to the jigsaw file will need to be updated soon because that file is changing substantially in an impending update, but we'll port these changes over once that becomes necessary.

I also think it would be a good idea to add psr-4 loading of App to composer.json so people who implement this don't need to muck about in there.

I've fixed the consistency errors.
There's no composer.json file scaffold with init command to add the psr-4 loading feature. I've create the App namespace in my own application and used it as an example, but maybe it could enable a better organization of extensions (like blade file location in PR #67 ). Maybe the init command can scaffold a composer.json file if not already available (local installation).

Very true; for now, we can just cover it in the docs, and will consider adding a scaffolded composer.json in the future.
Thanks for your contribution!


Vault API reachable task created malformed url

I'm using this play:
- hosts: ca
  vars:
    vault_backend: file
    vault_cluster_disable: True
    vault_cluster_name: telx
    vault_datacenter: telx
    vault_iface: ens3
  roles:
    - hashicorp-vault

During the "Vault API reachable?" task, the URL gets created malformed as seen below in the debug output. It's trying to reach "\"http\" \"://<IP_ADDRESS>\" \":8200/v1/sys/health\"\n".
If I instead change the task to construct the url on one line with "url: "{{ vault_tls_disable | ternary('http', 'https') }}://{{ (vault_address == '<IP_ADDRESS>') | ternary('<IP_ADDRESS>', vault_address) }}:{{ vault_port }}/v1/sys/health" it works fine. This is using ansible 2.7.9 on Ubuntu 18.04.
FAILED - RETRYING: Vault API reachable? (30 retries left).Result was: {                                                                                "attempts": 1,                                                                                "changed": false,                                                                                "content": "",
    "invocation": {
        "module_args": {
            "attributes": null,
            "backup": null,
            "body": null,
            "body_format": "json",
            "client_cert": null,
            "client_key": null,
            "content": null,
            "creates": null,
            "delimiter": null,
            "dest": null,
            "directory_mode": null,
            "follow": false,
            "follow_redirects": "safe",
            "force": false,
            "force_basic_auth": false,
            "group": null,
            "headers": {
                "Content-Type": "application/json"
            },
            "http_agent": "ansible-httpget",
            "method": "GET",
            "mode": null,
            "owner": null,
            "regexp": null,
            "remote_src": null,
            "removes": null,
            "return_content": false,
            "selevel": null,
            "serole": null,
            "setype": null,
            "seuser": null,
            "src": null,
            "status_code": [
                "200"
            ],
            "timeout": 30,
            "unsafe_writes": null,
            "url": "\"http\" \"://<IP_ADDRESS>\" \":8200/v1/sys/health\"\n",
            "url_password": null,
            "url_username": null,
            "use_proxy": true,
            "validate_certs": false
        }
    },
    "msg": "Status code was -1 and not [200]: Request failed: <urlopen error unknown url type: \"http\" \">",
    "redirected": false,
    "retries": 31,
    "status": -1,
    "url": "\"http\" \"://<IP_ADDRESS>\" \":8200/v1/sys/health\"\n"
}

Hi!
Sorry, I was trying a change in syntax to cope with long lines to help with YAML linting and picked the wrong method. I've since reverted that change and it will be shortly available in v2.1.7.

OK, this is fixed now in v2.1.7 of the role. I will go ahead and close this.


EU4 1.25 patch

The patch will come out on the 20th. I'll not be able to deliver the update to the converter before Saturday 24, but I'll handle it here as soon I can.
Update changelog (expected):

New colonial revolution events for American and Oceanian [i.e. Australia and New Zealand] countries (if post-colonialism decision taken)
-- They are on the lines of "Canada wants independence. Give it to 'em or give 'em war?"
Fixed "Andhra" being now used as conjuction: solution to #471
Added (if post-colonialism taken) a way to core-split Africa (it'll generate post-colonial countries)
Added new duchies of Latgale and Kaleva (CK2 update)
Removed Babylon (for Mashriqi) and outside-Germany cultural core generation, cause that's totally nuts
Added Turkestan as a Central Asian core-union/formable-nation
Fixed Arabian formation for Nejd and Hejaz in case one of two stops core-existing
Fixed Windows-1250, -1251 to -1252 for Russian, Czech, Polish, and Hungarian (God have mercy on who actually plays Vic2 in those languages): partially helping solution for #148 and #500
Fixed question marks in the culture file
Added Occitania as cultural and formable nation for Occitans (forming removes French cores on their lands)
-- Auvergne, Avignon, and Provence now use Occitan parties instead of French ones
Added Gypsy minority culture, although it has no flavor right now and it isn't even generated
Restored Cherokee cultural mapping, and added Picard->FRA and Assyrian->BAB
Fixed the "Asian_minor" Central Indian core-hole
Added new duchies of Ostrobothnia and Savonia (CK2 update)
Support with new tags and religions 1.25 introduced
--Anglican religion will be mapped to Protestant as Vic2 treats it so
--No new culture seems to have been created
--Thomond/Munster problem will be solved
--Confirmed new tags are already ready to get their own flags

Solved in pulls #156 to #164


Suggestion: Default path for Mac and Windows

Most people just install the game on default location, and have no clue where the replay files is located (for both PC and MAC).
On the upload page, the path should be listed, and maybe default typed in when pressing the upload file / directory button.

AFAIK it is not possible to set a default path for upload button (and windows path contains name which we don't know anyway). But we should list default paths on upload page that's for sure.

For Windows it is C:\Users\<username>\Documents\Heroes of the Storm\Accounts\<id>\<region>-Hero-1-<id>\Replays\Multiplayer\
For Mac ~/Library/Application Support/Blizzard/Heroes of the Storm/Accounts/<id>/<region>-Hero-1-<id>/Replays/Multiplayer/

@poma I can add this info alongside the upload status display update (Issue #29), unless you've already prepared a change?

I didn't work on this yet


[ENHANCEMENT] VM backup with snapshot status report

Is your enhancement related to a problem? Please describe.

We implement filesystem freeze/thaw for VM backup in https://github.com/harvester/harvester/pull/3976. However, in the current implementation, we only freeze the filesystem for a pre-defined period (1 second), regardless of the snapshot status from  CSI driver. This could lead the backup result to be non-deterministic with potential issue.
Describe the solution you'd like

Describe alternatives you've considered

Additional context

Hi Webber,
I think https://github.com/harvester/harvester/issues/4098 includes this enhancement in its scope.

Close with https://github.com/harvester/harvester/issues/4098


Assed test for "get assignment"

Summary
Provide an overview...
Details
Add more context to describe the  changes...
Checks

[x] Tested changes
[ ] Attached Logs

Team to Review
Mention the name of the team to review the PR
Reference to the issue
Mention the issue ID or resources

Reopening a new PR


Fix modularity computation error.

I am trying to fix a bug in your code that will influence the correctness of graph modularity computation.
Specifically, the bug is in the function instance2graph() in src/utils.py.  edge_indices acquired by ecole records the constraint and variable node indices. However, both constraint nodes and variable nodes are indexed from 0, and in the function to_networkx(), the constraint node and variable node with the same index are considered as the same node. This will lead to a wrong converted nx_graph, and incorrect graph modularity.
To fix the bug, I indexed the variable nodes from max(constraint_node_index)+1.
Thank you for your time and looking forward to your feedback!

Hi. Thank you a lot for pointing out and helping us fix this bug. I have merged this commit.


turning G-script to a Deno or NPM package

I think it would be a good idea to turn the programming language into an NPM and Deno package. Or create a way to run it by the source and not having to compile it all from node or deno

Yes! I am going to publish a NPM package, when the stable version 0.0.1 comes out! Thanks for your idea


Openstack exceptions are in unicode

Resolves https://bugs.launchpad.net/cinder/+bug/1430575

Thank you for contributing to openstack/cinder!
openstack/cinder uses Gerrit for code review.
Please visit
http://docs.openstack.org/infra/manual/developers.html#development-workflow
and follow the instructions there to upload your change to Gerrit.

Thank you for contributing to openstack/cinder!
openstack/cinder uses Gerrit for code review.
Please visit
http://docs.openstack.org/infra/manual/developers.html#development-workflow
and follow the instructions there to upload your change to Gerrit.


Map Key  "sync" Ulock Rlock

Please answer these questions before submitting your issue. Thanks!
What version of Go are you using (go version)?
version 1.8
What operating system and processor architecture are you using (go env)?
raspberry Pi
NOOBS
Version:2.4.2
What did you do?
I've capture multicast with a socket program based on Go, and analyze this traffic with go functions...
each frame multicast generate 7 Transporstream data with each distinct header
attached a picture where explain each TransporStream data

the problem is for each TS i need to read and re-write information online , for each data that I've recibed... I've read and write with header information, the problem was that has an issue with map key function, but is solved with sync library, but for my program, this sync library was very slow , the program can't catch all parameters , then into my console log doesn't show me  any data, because I think is blocked for sync fuction,....also data input is a lot ...  each frame arrive on 0.8 ms.
here is part of my code where I see that the problem appears, when I try to get new parameters on switch loop.
            PID,Scrambled,CCerr := GetHeaderTS(Split,f,l)

             CompareKeyValue(PID)
            //time.Sleep(1 * time.Millisecond)
            //PidCCerrLock.RLock()
            //defer PidCCerrLock.RUnlock()
            log.Println("Old map:", PidCCerr)
            //delete(PidCCerr, PID);
            //time.Sleep(1 * time.Millisecond)
            PidCCerrLock.Lock()
            defer PidCCerrLock.Unlock()
            PidCCerr[PID] = CCerr
            log.Println("New map:", PidCCerr)

What did you expect to see?
I use PHP for socket programming,  instendent of go and , use the same fuctionality withouth no errors, I expect that go should be more faster that PHP and works to see more faster and not need to use Lock and Unlock fuctions for generate more slower my program.
What did you see instead?
I saw many
thanks for your help, I'm a bit new on Go, but I would like to learn it because is very similar to "C" and more faster than PHP and python...
thanks for your help, and very sorry if you not understand all that write here,  my english isn't very good.

For questions about Go, see https://golang.org/wiki/Questions.
We only use this issue tracker for bugs, not for general Q&A.

ok... Brand, I understood,  but Map Key functionality has a problem, is very slow , and block and unblok the map key is not a solution , how can you  fix that?

The mailing list or Slack or forums are the right places to get help with Go problems.

ok ...thanks Brad


Add version number to built files

It would be nice to have the version number in the generated files (in /dist)
Before:
/**
 * Copyright (c) 2016 hustcc
 * License: MIT
 * https://github.com/hustcc/timeago.js
**/

After:
/**
 * Copyright (c) 2016 hustcc
 * License: MIT
 * Version: 2.0.2
 * https://github.com/hustcc/timeago.js
**/

Good point, but not very necessary.

Not necessary but nice to have 😄

Can gulp do this ? welcome to submit a pr.


Streamyard like

Hi there,
is sharp-broadcast can reach the same capabilities of streamyard live broadcast studio?
I'm looking for a streamyard like to manage the code on my own server for private use thanks

the short answer here is - of course not :p
sharp-broadcast just can let you

create your own live streaming system easily and quickly
play the live streams with low latency in browser or webview

But don't be sad guy, i think maybe you can take a look at OBS Studio.
OBS Studio is open source too, and obviously you can make OBS and sharp-broadcast work together.
Some tips:

Screen sharing
https://www.makeuseof.com/tag/record-screen-stream-online-obs/
Banners
https://streamsentials.com/how-to-add-your-overlay-to-obs-studio/
On-screen comments - just a chatroom (div) over the live stream player (another div)
6 on-screen participants - just need 6 live stream players (6 div tags)
Brand colors - just need css
Green screen
https://www.windowscentral.com/how-use-green-screen-obs-and-xsplit
Stream anywhere - html5 is anywhere

Hope this helps :)

Thanks joe for your answer.
Yes I know very well OBS, but my goal is to offer a pure HTML5/JS live studio broadcast without any installation, like streamyard.
I just need the same features than streamyard, then the rest on the server is ok already.

So, what you need is a pure HTML5/JS program to push/publish live streams to video server, right?
then i think you could check out the following open-source projects too

kurento
https://www.kurento.org/
kurento-rtmp
https://github.com/godka/kurento-rtmp
wocket
https://github.com/MuxLabs/wocket
https://ws.mux.dev/

"So, what you need is a pure HTML5/JS program to push/publish live streams to video server, right?"
yes but with the streamyard features (buttons to screenshare, moving the webcams and reorganize them on the screen, banner etc.."
yes, I know kurento, but again kurento is more a server side side than a client side. I will check wocket thanks.
to be more precise I'm trying to find a replacement of a huge projects based on Flash using multicast RTMFP, sharedobjects etc...
so for now my best guess is to find a html5/js client managing encoding/decoding webrtc and + with a coturn/sturn server for automatic relays in case of p2p fails. about ffmpeg it indeed can be used on client side in wasm, but all this tech still too slow for now.

Do you know a tool or extension that helps to trace and show the html/js code on the user activity?
I really would like to get the right streamyard code.

https://stackoverflow.com/questions/43266489/see-all-loaded-js-files-in-google-chrome-debugger-tool/43266526

thanks!, streamyard minified the JS so it's not really a good way to reverse engineer.


Attempt to fix iframe leak

Closes/fixes #138
I'm not sure if this fixes the whole problem but I'm also not sure what else will. This navigates the iframe to about:blank and waits for the page to load before removing it from DOM. In my testing, this allows for sources to unload from the "Sources" devtools panel but I'm not sure how to analyze the heap snapshots.
Checklist

[ ] This PR makes changes to the public API
[x] I have included links for closing relevant issue numbers

I am looking at an other implementation, maybe we can use some ideas.

createHiddenIframe + loadFrameSync + removeHiddenIframe as separate functions makes the code nice readable
authFrame.setAttribute("sandbox", "allow-scripts allow-same-origin allow-forms"); improves security
there seems to be no special handling about when to set src or change of sequence to appendChild
removing the iframe only with this condition seems reasonable if (document.body === iframe.parentNode) {
they append it differently document.getElementsByTagName("body")[0].appendChild(authFrame); Why?

What i do not understand in our code is why we throw an error when the iframe is removed in close
this._abort.raise(new Error("IFrame removed from DOM"));

The trick in the other implementation seems to be the monitorIframeForHash function, it does not immediately remove the iframe when done, but after a certain time.

I am also not finding a better way than yours, without refactoring a lot. I am using now also you trick with the "Sources" devtools, to see if the iframe is gone. Otherwise it is possible to make a snapshot of the heap via "Memory" devtools. Should not grow each time a silent renew was done. I am using this trick in the settings to produce every 30s a silent renew:
{
// ...
// <MY_ACCESS_TOKEN_EXPIRE_TIME> is the total expire time of the access token, depends on the configuration in the auth server...
accessTokenExpiringNotificationTimeInSeconds: <MY_ACCESS_TOKEN_EXPIRE_TIME> - 30, // renew every 30s
}

Can you explain me why we need to call this._abort.raise(new Error("IFrame removed from DOM"));? When i remove it its seems to work too...

Under typical usage, I don't think that event is capable of resulting in a thrown error, but it's good to have if we eventually need a mechanism to avoid leaking an unresolved promise created by .navigate() using the close() method. We currently only call .close() in two situations

In UserManager when .navigate() fails: https://github.com/authts/oidc-client-ts/blob/b8fa4439acbf4af37840284b3eaecccf583f8b35/src/UserManager.ts#L391-L392
After navigation success when keepOpen is false: https://github.com/authts/oidc-client-ts/blob/1d8254343748c367ef46e0992c510759ece990a2/src/navigators/AbstractChildWindow.ts#L71-L72

This test for the popup and redirect navigators is the should also throw the "removed from DOM" error if you were to run it against the iframe navigator instead.
https://github.com/authts/oidc-client-ts/blob/91ec29a2a306c4bad40179eccab962db329dd8d4/src/navigators/RedirectNavigator.test.ts#L27-L34

@kherock,

In situation 1, the navigation could be stopped programmatically with the window being closed by let say an ads blocker, but it could also be stopped manually with the user closing the window himself. So should we call it an error in that case, as it was intentional ?

In situation 2., why would we throw an error in such a case ? because as you said : the navigation succeeded.

Hi @Badisi - my comment was meant to highlight how neither of the two locations where we programmatically close the window will end up throwing an error when it's raised.
Keep in mind that with my second bullet, we're not throwing an error when we raise the event, we're only informing any unresolved promises that they should throw if they're still pending. It's designed this way because the side effects of closing a successful window are similar enough to closing a window prematurely: we need to ensure that the window is closed/unloaded, event listeners are unregistered, and unresolved promises are rejected. We could refine these two flows separately but I don't think it's worth the complexity.

but it could also be stopped manually with the user closing the window himself. So should we call it an error in that case, as it was intentional ?

As for handling a window closed by the user (or popup-blocking settings that the user is responsible for) - when an application requests to open a popup window, we don't know what the user's intent is, we only know that the application wants to obtain a sign in response. My stance is that anything which interrupts this process should be considered exceptional, and that includes the user's own actions. Also if the user's intent is to link their social account for example, closing the window would be intentionally failing to accomplish that intent. They might have forgotten a password, the page might have been taking too long to load, etc.

Keep in mind that with my second bullet, we're not throwing an error when we raise the event, we're only informing any unresolved promises that they should throw if they're still pending

My bad, I should have looked better at what this._abort.raise() was really doing 🙂
I was seeing errors in the console that looked like they were thrown and I thought it was due to that piece of code.

But looking at it now, I understand that the issue is instead related to the logger which prints the raised event to the console here : Event.ts#L34.
In the case of an event being an error, it will be printed to the console with a call stack as if it was thrown.

nice work

Issue was resolved and closed, but what do you guys think about my last comment ?
The logger should only log a message's error instead of the whole stack trace, don't you think ?

For the raise() function, the logger should log the parameters that it's emitting, and unfortunately devtool consoles will format error objects with a stack trace most of the time. I do really think this is fine, especially since the debug/verbose logs aren't actually designed to be readable for end-users. I don't see much use for them beyond providing context for bug reports here.
If changing the log statement to log an array of arguments (which I believe devtools collapses by default) instead spreading them is more readable, I think that would be fine.


Defaults hard-coded in the binding classes implemented from IBinding

The "smart" defaults that we are relying on, such as binding names and types, are hardcoded in the IBinding implementation as variables. This will not only make exposing them to the customer quite difficult but may also lead to documentation mistakes and/or mismatches elsewhere in the code. Ideally these would be refactored somewhere common.

Constants file declared, all string constants refactored to this file


Extreme difficulty in packaging a d.ts for the public use.

Most of today has been spent trying to adopt typings but i have had zero luck doing so.
I would very much like to start writing / converting the definitions for libraries i use most but the task has been an uphill battle.
Here is my typings project: http://puu.sh/mTCPE/f44ba406c3.zip
And here is a demo project i have set up in an attempt to use  the typings: http://puu.sh/mTCTu/fbe1ced138.zip
From inside my project i  have run:
typings install file:/Users/Think7/Documents/Dev/Node/GitHub/typings-mongodb/mongodb.d.ts --save

Which results in
Think7s-MacBook-Pro:TypeHell Think7$ typings install file:/Users/Think7/Documents/Dev/Node/GitHub/typings-mongodb/mongodb.d.ts --save
? What is the dependency name? mongodb
Possible ambient modules (not installed):
  es6-promise (from mongodb)

mongodb
└── (No dependencies)

The project now has these errors:
/Users/Think7/Desktop/TypingsMongoLOL/TypeHell/main.ts
Error:(8, 9) TS2304: Cannot find name 'Promise'.

/Users/Think7/Desktop/TypingsMongoLOL/TypeHell/typings/main/definitions/mongodb/mongodb.d.ts
Error:(6, 23) TS2307: Cannot find module 'es6-promise'.

Despite the fact that es6-promise has been listed in my defs typings.json as a normal, non-ambient dependency and which has a typings native def, i get the warning about it being ambient.
Running through the same steps and removing the import statement for promises in the mongodb.d.ts removed the warning, but the dependencies never get installed when calling typings install /path/to/mongodb.d.ts.
In this case i get a flood of "Cannot find name promise" until i install es6-promise as ambient and project-wide.
I must be missing or doing something wrong to have had this much difficulty. Any and all assistance is welcome.
Thank you to everyone responsible for creating this project in the first place!

I see one issue.
You use typings install file:... to install mongodb.d.ts. It works for getting independent typed file but in your case it has dependency (es6-promise).
My guess is you can't do it that way.
Try to put it on github and then do typings i github:think7/typed-mongodb
That way the dependencies will get resolved.
This is what I guess, but it worth give it a try.

As for the first error, you are using it as global variable.  I guess
import { Promise } from 'es6-promise'; will make that error goes away.

Oh, before you do the github route, can you try:
typings install file:/Users/Think7/Documents/Dev/Node/GitHub/typings-mongodb/typings.json --save?
That might fix the second issue too.

@unional Thanks!
Running:
typings install file:/Users/Think7/Documents/Dev/Node/GitHub/typings-mongodb/typings.json --save

Results in:
Think7s-MacBook-Pro:TypeHell Think7$ typings install file:/Users/Think7/Documents/Dev/Node/GitHub/typings-mongodb/typings.json --save
? What is the dependency name? mongodb
mongodb
└── es6-promise

It's asking me to name the dependency. Alright, i chose mongodb :P
Shouldn't this populate from the typings.json?
Anyway, now the dependency types are compiled into the mongodb.d.ts file, Great!
However, importing the module does not work.
WebStorm auto-populated the import as:
import {MongoClient} from "mongodb/mongodb";

This does not resolve.
Neither do these:
import {MongoClient} from "mongodb";
import {MongoClient} from "./typings/main/definitions/mongodb/mongodb.d.ts";
import {MongoClient} from "/Users/Think7/Desktop/TypingsMongoLOL/TypeHell/typings/main/definitions/mongodb/mongodb.d.ts";

That last one at least gives an error:
Error:(8, 27) TS2306: File '/Users/Think7/Desktop/TypingsMongoLOL/TypeHell/typings/main/definitions/mongodb/mongodb.d.ts' is not a module.

Shouldn't this populate from the typings.json?

That is basically the whole point. See https://github.com/typings/typings/issues/152
The definition file do not know how you would use the module in your program.
As for import {MongoClient} from 'mongodb'; does not work, what's the error message?
How about import * as mongodb from 'mongodb';?
When you do import {MongoClient} form 'mongodb', you assume there is a named export of MongoClient there. Is that the case?
Can you push your code up to github? It's easier to me to fork and get your repo and try it out.
One more thing, I realize you can have your test/demo within your typed project. See https://github.com/unional/typed-bluebird as an example.

https://github.com/Think7/TypeHell
Will try the other things now also. I'm on Gitter as well if you'd prefer to be spammed there!
Again, thank you so much for taking the time ot help with this.

Actually seems like your sample project is working for me.
What IDE/editor are you using?

YUP! i literally just closed and reopened WebStorm and it magically works. Nothing changed, can verify that with git. FFS........
Alright, Let me run through the entire process again and set up a new project.

btw, I have created a generator-typings, you can use it to create basic template for your typed file.
https://github.com/unional/generator-typings

Yas looking at that earlier. Can't get past this error:
https://gist.github.com/Think7/273053c1cfba19f33f8d

I think it should be mongodb/mongo

<username>/<repo>
I didn't spend much time on cleaning it up. Sorry for the pre-alpha quality. :smirk:

No problem at all! I haven't used yo before so it's likely user error :palm_tree:
Doing something/something works.

@unional
When you have time, can you check if this looks right: https://github.com/Think7/typings-mongodb

Going to close this as the definition is not packaged and seems to work. Would like to clarify how to write tests and manage the package structure but will do this in a new issue.
Once that's done, would love to write up a transition guide for definition authors.


Vulkan transparency

Creatively reworked "Try to automatically detect transparency #1212"

Change state_sort() compare function: check transparency depth right after rendering order
Implement all transparency bookkeeping in the native code
Adjust render order during every cull pass, and when Java asks Native for render order (that may happen before the cull pass).

We can make it more efficient in two ways:

optimize adjust RenderOrderForTransparency() by reducing by-name lookups: either get the first texture and assume it's either main texture or diffuse texture; or, more robustly, look for main texture, and if it is null, then look for the diffuse texture.
check dirty state before adjusting: this may need a new dirty flag.

@NolaDonato, @thomasflynn, @roshanch Please let me know if we want to implement efficiency improvements right now.
This PR shall be 'merged'

GearVRf-DCO-1.0-Signed-off-by: Dmitriy Vasilev<EMAIL_ADDRESS>

The transparency adjustment code in addRenderData is ugly but we can refactor it as part of a later effort. I think we will ultimately want to call ShaderData::updateGPU as part of culling and do the adjustment in that function (which already examines all of the textures for readiness).


Add comment to column

Hi, I'm wondering how to add comment to each column. I tried to add COMMENT:'my comment' in the gorm tag, and it didn't work.
Does gorm support adding comment?
THX

We focus on providing our customers with only the best customer service as well as top-notch mobile glass repair work, from home to auto to commercial, and as a result our rating with the Better Business Bureau continues to be an A+.
Visit us at Reliable Glass

No, GORM doesn't support that yet.


LUCENE-10473: Make tests a bit faster when running nightly.

Here's the output from Gradle after running tests with -Dtests.multiplier=3 -Dtests.nigthly=true:
The slowest tests (exceeding 500 ms) during this run:
  793.90s Test2BPostings.test (:lucene:core)
  562.91s TestGeo3DPoint.testRandomBig (:lucene:spatial3d)
  450.43s TestBestSpeedLucene80DocValuesFormat.testNumericFieldJumpTables (:lucene:backward-codecs)
  426.84s TestBestCompressionLucene80DocValuesFormat.testNumericFieldJumpTables (:lucene:backward-codecs)
  423.51s TestLucene90DocValuesFormatMergeInstance.testNumericFieldJumpTables (:lucene:core)
  417.91s TestNRTThreads.testNRTThreads (:lucene:core)
  380.36s TestLucene90DocValuesFormat.testNumericFieldJumpTables (:lucene:core)
  350.43s TestIndexWriterExceptions.testTooManyTokens (:lucene:core)
  339.79s TestControlledRealTimeReopenThread.testControlledRealTimeReopenThread (:lucene:core)
  338.21s TestSearcherManager.testSearcherManager (:lucene:core)

It's not great yet, but it's already a significant progress compared to master, notably thanks to the change to atLeast to no longer multiply the multiplier by 2 when nightly tests are enabled.


"hipErrorNoBinaryForGpu: Coudn't find binary for current devices!"

I am trying to run the unit tests on AMDMiGraphX and am getting a lot of test failures with "hipErrorNoBinaryForGpu: Coudn't find binary for current devices!" from various parts of the ROCm stack.
Distro: Arch Linux
Linux kernel: 5.10.6
GPU: AMD Radeon RX 6800
ROCm version: 4.0.0
rocminfo output:
rocminfo
ROCk module is loaded
Able to open /dev/kfd read-write
=====================
HSA System Attributes
=====================
Runtime Version:         1.1
System Timestamp Freq.:  1000.000000MHz
Sig. Max Wait Duration:<PHONE_NUMBER>3709551615 (0xFFFFFFFFFFFFFFFF) (timestamp count)
Machine Model:           LARGE
System Endianness:       LITTLE

==========
HSA Agents
==========
*******
Agent 1
*******
  Name:                    AMD Ryzen 9 3900X 12-Core Processor
  Uuid:                    CPU-XX
  Marketing Name:          AMD Ryzen 9 3900X 12-Core Processor
  Vendor Name:             CPU
  Feature:                 None specified
  Profile:                 FULL_PROFILE
  Float Round Mode:        NEAR
  Max Queue Number:        0(0x0)
  Queue Min Size:          0(0x0)
  Queue Max Size:          0(0x0)
  Queue Type:              MULTI
  Node:                    0
  Device Type:             CPU
  Cache Info:
    L1:                      32768(0x8000) KB
  Chip ID:                 0(0x0)
  Cacheline Size:          64(0x40)
  Max Clock Freq. (MHz):   3800
  BDFID:                   0
  Internal Node ID:        0
  Compute Unit:            24
  SIMDs per CU:            0
  Shader Engines:          0
  Shader Arrs. per Eng.:   0
  WatchPts on Addr. Ranges:1
  Features:                None
  Pool Info:
    Pool 1
      Segment:                 GLOBAL; FLAGS: KERNARG, FINE GRAINED
      Size:                    65834580(0x3ec8e54) KB
      Allocatable:             TRUE
      Alloc Granule:           4KB
      Alloc Alignment:         4KB
      Accessible by all:       TRUE
    Pool 2
      Segment:                 GLOBAL; FLAGS: COARSE GRAINED
      Size:                    65834580(0x3ec8e54) KB
      Allocatable:             TRUE
      Alloc Granule:           4KB
      Alloc Alignment:         4KB
      Accessible by all:       TRUE
  ISA Info:
    N/A
*******
Agent 2
*******
  Name:                    gfx1030
  Uuid:                    GPU-XX
  Marketing Name:          Device 73bf
  Vendor Name:             AMD
  Feature:                 KERNEL_DISPATCH
  Profile:                 BASE_PROFILE
  Float Round Mode:        NEAR
  Max Queue Number:        128(0x80)
  Queue Min Size:          4096(0x1000)
  Queue Max Size:          131072(0x20000)
  Queue Type:              MULTI
  Node:                    1
  Device Type:             GPU
  Cache Info:
    L1:                      16(0x10) KB
  Chip ID:                 29631(0x73bf)
  Cacheline Size:          64(0x40)
  Max Clock Freq. (MHz):   2475
  BDFID:                   2560
  Internal Node ID:        1
  Compute Unit:            60
  SIMDs per CU:            4
  Shader Engines:          8
  Shader Arrs. per Eng.:   2
  WatchPts on Addr. Ranges:4
  Features:                KERNEL_DISPATCH
  Fast F16 Operation:      FALSE
  Wavefront Size:          32(0x20)
  Workgroup Max Size:      1024(0x400)
  Workgroup Max Size per Dimension:
    x                        1024(0x400)
    y                        1024(0x400)
    z                        1024(0x400)
  Max Waves Per CU:        64(0x40)
  Max Work-item Per CU:    2048(0x800)
  Grid Max Size:<PHONE_NUMBER>(0xffffffff)
  Grid Max Size per Dimension:
    x<PHONE_NUMBER>(0xffffffff)
    y<PHONE_NUMBER>(0xffffffff)
    z<PHONE_NUMBER>(0xffffffff)
  Max fbarriers/Workgrp:   32
  Pool Info:
    Pool 1
      Segment:                 GLOBAL; FLAGS: COARSE GRAINED
      Size:                    16760832(0xffc000) KB
      Allocatable:             TRUE
      Alloc Granule:           4KB
      Alloc Alignment:         4KB
      Accessible by all:       FALSE
    Pool 2
      Segment:                 GROUP
      Size:                    64(0x40) KB
      Allocatable:             FALSE
      Alloc Granule:           0KB
      Alloc Alignment:         0KB
      Accessible by all:       FALSE
  ISA Info:
    ISA 1
      Name:                    amdgcn-amd-amdhsa--gfx1030
      Machine Models:          HSA_MACHINE_MODEL_LARGE
      Profiles:                HSA_PROFILE_BASE
      Default Rounding Mode:   NEAR
      Default Rounding Mode:   NEAR
      Fast f16:                TRUE
      Workgroup Max Size:      1024(0x400)
      Workgroup Max Size per Dimension:
        x                        1024(0x400)
        y                        1024(0x400)
        z                        1024(0x400)
      Grid Max Size:<PHONE_NUMBER>(0xffffffff)
      Grid Max Size per Dimension:
        x<PHONE_NUMBER>(0xffffffff)
        y<PHONE_NUMBER>(0xffffffff)
        z<PHONE_NUMBER>(0xffffffff)
      FBarrier Max Size:       32
*** Done ***

rdna2 didnot get official support for now. Good news is AMD said it will be support in 2021.

rdna2 didnot get official support for now. Good news is AMD said it will be support in 2021.

@dllu ,
Thank you for notifying this problem. Let me check for this problem.

@dllu ,
Thank you for notifying this problem. Let me check for this problem.

@dllu,
Could you kindly let me know how are you compiling & executing your test case?
A detail log would be helpful.

@dllu,
Could you kindly let me know how are you compiling & executing your test case?
A detail log would be helpful.

For example the error happens when I run make check in the AMDMIGraphX repo. The full stderr log of make check is attached. The code has compiled fine, however.
test.log

For example the error happens when I run make check in the AMDMIGraphX repo. The full stderr log of make check is attached. The code has compiled fine, however.
test.log

@dllu,
Thank you for the make check log. We would like to understand how you compiled the code as well before executing the make check. This shall help us understand the problem to the detail.
Also, please provide the output of this command /opt/rocm/bin/rocm-bandwidth-test -t

@dllu,
Thank you for the make check log. We would like to understand how you compiled the code as well before executing the make check. This shall help us understand the problem to the detail.
Also, please provide the output of this command /opt/rocm/bin/rocm-bandwidth-test -t

@dllu ,
We are currently not supporting your rdna2 architecture for compute as mentioned by @xuhuisheng   :

rdna2 didnot get official support for now. Good news is AMD said it will be support in 2021.

Although we shall be supporting this soon.  Kindly look for any announcement from AMD for compute support.

@dllu ,
We are currently not supporting your rdna2 architecture for compute as mentioned by @xuhuisheng   :

rdna2 didnot get official support for now. Good news is AMD said it will be support in 2021.

Although we shall be supporting this soon.  Kindly look for any announcement from AMD for compute support.


Remove or update the outdated bit on the rules

On https://ldjam.com/events/ludum-dare/rules there's a paragraph

Coming Soon: We will soon have a system in place that credits you for leaving good feedback on a game. > Details are still being worked out, but there will likely be Coolness bonuses.

That system is already implemented isn't it?

Yes. The neighbouring paragraphs need to be updated accordingly too, mentioning that the standard sorting scheme prioritizes users that both rate AND leave good feedback.

Isn't this issue already solved?

Yes.


Page Title includes breadcrumb HTML

Closing as duplicate of #157. Thanks for reporting this, and the others though!

No probs. I'll keep looking as we work our way through the questions.

Really appreciate the testing you're doing. Ping me if you want to to discuss anything that does fit here :)


Extend it more

you don't need to change max_position_embeddings here, you can instead add the variable to the model config.json, but you should set it to >2048 to get the correct sinusoidal
class LlamaRotaryEmbedding(torch.nn.Module):
    def __init__(self, dim, max_position_embeddings=2048, base=10000, device=None):
        super().__init__()
        max_position_embeddings = 8192
        inv_freq = 1.0 / (base ** (torch.arange(0, dim, 2).float().to(device) / dim))
        self.register_buffer("inv_freq", inv_freq)

        # Build here to make `torch.jit.trace` work.
        self.max_seq_len_cached = max_position_embeddings
        t = torch.arange(self.max_seq_len_cached, device=self.inv_freq.device, dtype=self.inv_freq.dtype)

        # Add these two lines of code, everything else remains the same
        scale = 1/4
        t *= scale
        ....

Interesting discovery! However, some of my recent experiments have left me quite puzzled about this issue.
If you can read Chinese, please refer to https://kexue.fm/archives/9603. As I mentioned in the article, all mainstream length extrapolation schemes fail under the "Post Norm + GAU (a single-head attention)" combination, and only the HWFA proposed in the linked article is effective. I just tried your approach on it as well, and it also failed. In other words, the effectiveness of length extrapolation methods still depends on the model architecture, but obviously, mainstream research has not analyzed this point, which means our understanding of length extrapolation is far from sufficient.

@bojone Yes, actually I read that article before but it was not leading to good extrapolation for me when applied to the pre-trained model. Like you said it seem architecture matters a lot. 😆
I saw your HWFA before but mainly I was not satisfied with the point:

2、Full Attention加上RoPE，外推效果会下降；
But I also think they can be combined -- using the scaling only on layer L-1? I did not try it because it seemed modifying the layers on the pre-trained model was leading to poor results in the fine-tuning stage, and mainly the goal in my case is to extend the context of the pre-trained model (which seems to mirror length extrapolation)

I tried looking into the idea of "using interpolation to achieve extrapolation" but I could not find many papers. I'm also curious on your thoughts of the conditional positional encoding from vision transformers?
https://arxiv.org/pdf/2102.10882.pdf
I am using machine translation, hope that is okay, but you write:

然而，尽管这样能确保平移不变性的出现，但是会带来另外的问题，最严重的就是由于每层的感受野被限制在w
内，注意力机制的能力大大削弱，导致训练效果不如常规注意力（下面称为Full Attention）。此外，我们对长度外推的期望其实不仅仅是“平移不变性”，而是“平移更好性”，也就是说越往后效果应该越好才对（比如In Context Learning场景，给的examples越多，效果应该越好），所以模型还应该要能捕捉全局依赖的能力。

The scaling factor seems similar to the CPE approach, as the position of t is dynamically adjusted based on input sequence length N to fit in the pre-trained length L. This would mimic the effect of translation invariance without reducing the receptive field to w. There is some tests currently to benchmark the quality https://github.com/ggerganov/llama.cpp/discussions/1965 . The hope would be to see the quality improves as N grows larger. I tried the log n scaling as well but the effect for extrapolation in fine-tuning was small, but I did not try it for interpolation yet.
I am also looking into ReLU, maybe you already tried it and it didn't improve anything: https://arxiv.org/pdf/2302.06461.pdf

you don't need to change max_position_embeddings here, you can instead add the variable to the model config.json, but you should set it to >2048 to get the correct sinusoidal
class LlamaRotaryEmbedding(torch.nn.Module):
    def __init__(self, dim, max_position_embeddings=2048, base=10000, device=None):
        super().__init__()
        max_position_embeddings = 8192
        inv_freq = 1.0 / (base ** (torch.arange(0, dim, 2).float().to(device) / dim))
        self.register_buffer("inv_freq", inv_freq)

        # Build here to make `torch.jit.trace` work.
        self.max_seq_len_cached = max_position_embeddings
        t = torch.arange(self.max_seq_len_cached, device=self.inv_freq.device, dtype=self.inv_freq.dtype)

        # Add these two lines of code, everything else remains the same
        scale = 1/4
        t *= scale
        ....

I wonder what if shrink the position more. i mean, what if pos 1 looks like pos .125 and so on. also, can we use this directly when inferencing?

@kaiokendev Today, I tried your approach on Falcon-7b, but it didn't work. I set the scale to 1/2 and then input a sequence of about 4k tokens, with the output being almost like gibberish.
A more effective improvement is to divide the sequence into three parts: Context + Prompt + Output. For the Context part, evenly divide the range [0, 1024] as position ids, while for the Prompt + Output, use the normal position ids 1024, 1025, 1025, etc. This method is somewhat similar to the Parallel Context Window.
However, the above approaches are not as effective as NBCE. You can compare them with NBCE ( https://github.com/bojone/NBCE ).

@bojone That is weird, it should achieve similar result to ALiBi, as per the below chart:

I read the NBCE but my understanding is it mainly for in-context learning and cannot work for e.g. long range summarization, is that wrong understanding?

I read the NBCE but my understanding is it mainly for in-context learning and cannot work for e.g. long range summarization, is that wrong understanding?

For long text summarization, NBCE may not perform well, but for long text question-answering that doesn't rely heavily on the order of contexts, it should yield good results.

Have you tried anything along the lines of t *= exp(-t/5909)  ?  This would keep low-numbered token positionings the same as originally trained, and modify significantly only at larger lengths.  You'd expect that the models can't learn a whole lot in detail about the absolute positioning at large position count numbers, but the early ones could definitely have strong learnable patterns with absolute position.
(5909 is chosen to give a factor of 4 by the time you hit 8192, so that 8192 looks like 2048).

@afoland I am not sure if I am doing it wrong? This is the plot I am seeing from that operation

But this will not work properly because it the positions are repeated and reversing

You're right, I didn't think about it carefully enough, the pre-existing t gives it a maximum.  Back to the drawing board.  But even the plot above shows a usable context expansion by roughly a factor e for context lengths up to about 5560 (before it turns around.)  So the optimal version of this form of equation is to use 5567 in the exponential, expanding 2048 to 5567 smoothly.
The intent is to find a function that:
*Maps low numbers to nearly themselves
*Maps large numbers to a selectable factor 1/k times themselves (the exponential scaling is not selectable, it maxes out at e)
*Is continuous
Is monotonic between 1 and k2048

@bojone Hello Su, it seems Meta has concurrently validated the approach. Here is the paper if you are interested: https://arxiv.org/abs/2306.15595 "Extending Context Window of Large Language Models via Positional Interpolation"

@bojone Hello Su, it seems Meta has concurrently validated the approach. Here is the paper if you are interested: https://arxiv.org/abs/2306.15595 "Extending Context Window of Large Language Models via Positional Interpolation"

Thanks for sharing, it's an amazing progress. But it seems that the meta approach still needs additional fine-tuning. If I only modify the freq's scale, I do encounter gibberish or repetition here —— the generated result is not natural text at all.

@bojone Yes, it was the same case in my own version. I did not find a way to achieve long range extrapolation without fine-tuning, otherwise the result is gibberish, but after fine-tuning it approaches parity with extended pre-trained length.

@bojone Yes, it was the same case in my own version. I did not find a way to achieve long range extrapolation without fine-tuning, otherwise the result is gibberish, but after fine-tuning it approaches parity with extended pre-trained length.

I see, I thought it was a method that didn't require fine-tuning, sorry, it was my misunderstanding.
Since fine-tuning is needed, how long is the fine-tuning? Is it the original 2048? Or is it longer like 8192?

The fine-tune in my case is 4096, however it is reported the extrapolation is still gained even without fine-tuning, but the cost is increased perplexity. With fine-tuning, the perplexity is recovered completely. With only 300 samples of 4096 it is possible to learn the interpolated positions. I provide a perplexity measure here:

The fine-tune in my case is 4096, however it is reported the extrapolation is still gained even without fine-tuning, but the cost is increased perplexity. With fine-tuning, the perplexity is recovered completely. With only 300 samples of 4096 it is possible to learn the interpolated positions. I provide a perplexity measure here:

In the case of the Meta paper, only 0.5% of pre-training corpus is needed for 32k context length.

Thank you, I understand now. That is to say, in order to handle a text of length L, I still need to fine-tune with a text of length L, but after adding this scaling technique, the number of samples required for fine-tuning will be much less.

@bojone Yes, although, even without fine-tuning it should not produce gibberish in certain cases. Here, base is not fine-tuned, but after applying scaling, the perplexity is still OK for scale of 0.5 and L of 4092 even though pre-trained L is 2048

@bojone I think there was a concern because the approach needed finetuning, whereas NBCE does not require finetuning? Someone has made an improvement to the method, with Neural Tangent Kernel Aware Interpolation. By modifying the base instead of the position scale, the results are even better without fine-tuning, as the features are not disturbed.
old_init = transformers.models.llama.modeling_llama.LlamaRotaryEmbedding.__init__
def ntk_scaled_init(self, dim, max_position_embeddings=2048, base=10000, device=None):

    #The method is just these three lines
    max_position_embeddings = 16384
    a = 8 #Alpha value
    base = base * a ** (dim / (dim-2)) #Base change formula

    old_init(self, dim, max_position_embeddings, base, device)

I wonder if this approach is more intuitive? It also does not require finetuning, so I wonder what result you will get this time ^^

@kaiokendev This is an exciting result, I'm sorry I just saw the information, I'm going to understand and try it now.
However, regardless of the result, I still think that NBCE has its unique value, because it seems that NTK's solution can only extend llama's context length to about 8k, and I have tested that even under 50k context, NBCE can still output the correct results.

@kaiokendev This is so astonishing! I just verified it on the GAU+RoPE+Post Norm model, and it works indeed. This is the second solution that can improve extrapolation effects without fine-tuning under this combination! (The first one is the architecture-independent NBCE)
Next, I will take a good look at "Neural Tangent Kernel Aware Interpolation", I am ashamed that I have not heard of such a technique before.

NTK's solution can only extend llama's context length to about 8k

Ah, actually it seems it can extend a lot, I think with fine-tuning it can be more.
According to Meta's paper, the scaling interpolation has a limit of 1.2 million tokens with fine-tuning, but according to the author of NTK, as the features are not disturbed, it should be able to go to billion token range as the fidelity is preserved, but this does not account for the key-value limitation or the saturation of attention score, but I think the "theoretical limit" is quite high. It would need further study to show what the true limit is without fine-tuning

NTK's solution can only extend llama's context length to about 8k

Ah, actually it seems it can extend a lot, I think with fine-tuning it can be more.
According to Meta's paper, the scaling interpolation has a limit of 1.2 million tokens with fine-tuning, but according to the author of NTK, as the features are not disturbed, it should be able to go to billion token range as the fidelity is preserved, but this does not account for the key-value limitation or the saturation of attention score, but I think the "theoretical limit" is quite high. It would need further study to show what the true limit is without fine-tuning. For example, I did not try it with log-n scaling
Author of NTK approach is @bloc97

In the graph provided by the author, the larger the alpha, the better the extrapolation effect, but the ppl will also gradually rise.
Fine-tuning will certainly improve, but as you said, I am more concerned about the limit without fine-tuning.

I tested it on the Chinese fine-tuned llama-7b, and it really works! Kudos to the author again! But overall, under the same case, its effect is not as good as that of nbce.

@bojone Yes, it was the same case in my own version. I did not find a way to achieve long range extrapolation without fine-tuning, otherwise the result is gibberish, but after fine-tuning it approaches parity with extended pre-trained length.

I can anecdotally confirm that


Cant save LED layout?

this is with the latest pull from master.
I can now save the led controller settings, but the layout doesnt save.

my last pr introduced some bugs, i will push an update later this day. at the meantime use a higher settingslvl than default to save a layout

you could now revert back to default settingslvl


add FleetAPI support Resnet50 and VGG16

add FleetAPI support Resnet50 and VGG16:

add models/vgg.py
edit training shell script supporting multi-gpu
add training_with_fleet.py with FleetAPI

diffpr:http://gitlab.baidu.com/gongweibao/resnet/merge_requests/1


TypeError: db.open is not a function

I followed the quickstart instructions to set up a simple project.
At the end the docs don't actually tell you how to start the bot, so I took a guess and tried npm start which then produces the following error:
><EMAIL_ADDRESS>start /Users/graham/Projects/CarmenAI/mybot
> node server.js

{ [Error: Cannot find module '../build/Release/bson'] code: 'MODULE_NOT_FOUND' }
js-bson: Failed to load c++ bson extension, using pure JS version
Number of Gambits: 0
Number of Replies: 0
/Users/graham/Projects/CarmenAI/mybot/node_modules/mongoose/lib/utils.js:413
        throw err;
        ^

TypeError: db.open is not a function
    at module.exports (/Users/graham/Projects/CarmenAI/mybot/node_modules/level-sublevel/nut.js:60:8)
    at sublevel (/Users/graham/Projects/CarmenAI/mybot/node_modules/level-sublevel/index.js:14:18)
    at module.exports (/Users/graham/Projects/CarmenAI/mybot/node_modules/level-sublevel/index.js:19:10)
    at Object.createUserDB (/Users/graham/Projects/CarmenAI/mybot/node_modules/sfacts/lib/expand.js:13:40)
    at new SuperScript (/Users/graham/Projects/CarmenAI/mybot/node_modules/superscript/index.js:56:71)
    at /Users/graham/Projects/CarmenAI/mybot/server.js:92:3
    at /Users/graham/Projects/CarmenAI/mybot/node_modules/superscript/lib/topics/import.js:214:11
    at Object.async.eachSeries (/Users/graham/Projects/CarmenAI/mybot/node_modules/superscript/node_modules/async/lib/async.js:138:20)
    at /Users/graham/Projects/CarmenAI/mybot/node_modules/superscript/lib/topics/import.js:212:15
    at Object.async.eachSeries (/Users/graham/Projects/CarmenAI/mybot/node_modules/superscript/node_modules/async/lib/async.js:138:20)
    at /Users/graham/Projects/CarmenAI/mybot/node_modules/superscript/lib/topics/import.js:174:13
    at /Users/graham/Projects/CarmenAI/mybot/node_modules/superscript/node_modules/async/lib/async.js:150:25
    at /Users/graham/Projects/CarmenAI/mybot/node_modules/superscript/lib/topics/import.js:143:11
    at /Users/graham/Projects/CarmenAI/mybot/node_modules/superscript/node_modules/async/lib/async.js:150:25
    at /Users/graham/Projects/CarmenAI/mybot/node_modules/superscript/lib/topics/import.js:129:17
    at /Users/graham/Projects/CarmenAI/mybot/node_modules/superscript/node_modules/async/lib/async.js:150:25

Hi @eviltwin - can you confirm you're using version 0.2.1 of sfacts by doing an npm upgrade sfacts ?
There's a known issue in 0.2.0 that would cause this behavior.

@wehriam I am getting the same error as @eviltwin, with sfacts version 0.2.1
annyhe-ltm:slackbot anny.he$ npm list --depth=0
<EMAIL_ADDRESS>/Users/anny.he/workspace/slackbot
├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>└──<EMAIL_ADDRESS>

This hopefully shouldn't happen in v1.0.0 (at least I haven't come across it yet!)

Have you solved this problem?


fix(#2538): stake to ccy volume renaming

Related issues 🔗
Closes #2538
Description ℹ
Renaming across monorepo on stake to ccy volume param.
Technical 👨🔧

[x] used useNetworkParams because it deconstructs the right naming

As noted in a chat - there is a usage of this param in the vegacapsule folder - I believe @radoslaw-szpiech has fixed this in another branch/pr/something

I merged that!


Update fetch asset guide to new LSP725.js

[x] Setup
[x] Step 1 - Get all assets ever received
[x] Step 2 - Get all assets ever issued
[x] Step 3 - Check ownership of assets
[x] Step 4 - Check the type of an asset
[x] Step 5 - Receive the encoded asset data
[x] Step 6 - Decode the asset data
[x] Step 7 - Create the storage link
[x] Step 8 - Get the asset data
[x] Final Code

Heading Changes:

[x] Step 2 - Get all assets ever issued
[x] Remove Step 9 (fetch properties) as in fetch profile data guide

Still missing:

[x] Asset URL can not be fetched on new standard
[x] Add legacy code for Step 2
[x] Rework comments

Let's make sure that we replace the term key by data key in the guide.

In general within the text, or text & code snippets?


Add priority class to kind sorter

Signed-off-by: Stepan Dohnal<EMAIL_ADDRESS>Sorting for priority class install/uninstall is not defined and it would be nice to fix this as it leads to error in kube: Error creating: pods "..." is forbidden: no PriorityClass with name ... was found
This issue discusses the feature #10803
this PR contains unit tests

Hi @mattfarina
Is there any chance to get this merged? This seems quite easy fix.

This is related to this https://github.com/helm/helm/issues/8439.


Implement the rest of common GremlinRepository methods

Task Description
Methods which throws UnsupportedOperationException should be implemented with Gremlin query language.
This task will have to be carried out against the issues/1649 branch.
Tasks
The following tasks will need to be carried out:

[ ] Provide methods implementation
[ ] Make unit tests

Task Relationships
This task:

Is a sub-task of: #1649

Useful Links

Gremlin

Help

Our chat
Points of contact:

@carlspring
@sbespalov
@steve-todorov

@carlspring, May I start looking into it? If yes, can you please help with some code pointers?
Thank you

@kosuruvarunkumar ,
You will need to create a branch for this off the issues/1649 branch and work on it there. If you have a look at the class, you'll see that it has a lot of // TODO comments for the unimplemented methods. You will need to:

[ ] Assemble a task list of the methods that will need to be implemented
[ ] Implement tests for them

Your point of contact for this will be @sbespalov .

The task is open for pickup.
Thank you


Issue 1089 work in progress version of adding a new menu item

Hello! I have been working on this issue: https://github.com/dbeaver/dbeaver/issues/1089
I managed to add a basic functionality yet I am not sure at the moment if I am following the guidelines to add such a thing properly.
Though here is a WIP of the feature. Note that it is not done but I wanted to share the current work and get some feedback and hopefully amend my mistakes sooner than later.
Also the https://github.com/dbeaver/dbeaver/blob/devel/.github/CONTRIBUTING.md file seems to be empty.

I have fixed the styling issues and this is no longer WIP (I hope 😄 )
@serge-rider will you be proceeding with this PR ? Should some one else test it ?
Is google the default search engine ? Should that be a property user can modify ?
If you do not want to continue with this or something else I can close this PR since it has been open for a long time 😄

Thanks for the contribution!
I like the idea, it can be very handy.
What I don't like:

It is in the core plugin. It'd be better in org.jkiss.dbeaver.ui.editors.sql
The action is contributed in the SQL editor context menu. Which is already too heavy. Perhaps we need some sub-menu with SQL tools. And put all tools there. Like this one or UUID generator or text formatter/morpher.

I can absolutely do those!
This was my first swing with dbeaver code so apologies for the silly mistakes 😄
Yet if you like it I can update the code.
Question about sub-menu with SQL tools: do you mean creating a new package ? I am going to investigate but if you already have an opinion I can do that!
Thanks again for the input!

I have moved the plugin from core, it should fix the first point,
going to investigate the second point as I am still not sure what I have to do 😄

Unfortunately it doesn't compile now.
See https://github.com/dbeaver/dbeaver/pull/9100/checks?check_run_id=1227939790

@serge-rider Thanks for looking!
It was a strange thing, I have java 11 in the path and that was the problem.
It looks better now though 😄 Let me know if there is something else I need to fix!

Now it looks much better 👍
A few other notes:

Use https protocol for google links
Trim selected text
Use UIUtils.launchProgram(URL) instead of native Java AWT utility.

@serge-rider thanks again! Hope this looks better now ?

We'll include it in 7.2.5 version.
Thank you!


Active Record-like interface to Prisma result objects.

Problem
Currently prisma does not support Active Record-like interface by default & we need to do the following or we can define client extensions ( but we need to define the instance methods for each model which is not productive in my opinion)

const user = await prisma.user.findFirst({
  where: { email<EMAIL_ADDRESS>}
});

await prisma.user.update({
  where: { id: user.id },
  data: { email<EMAIL_ADDRESS>}
})

Suggested solution
It would be great if we get the active-record like interface by default.
const user = await prisma.user.findFirst({
  where: { email<EMAIL_ADDRESS>}
});
user.email =<EMAIL_ADDRESS>await user.save();
await user.delete();

Alternatives
NULL
Additional context
NULL

I think this is exactly the opposite of why people do choose Prisma - to get away from "active record".

I think this is exactly the opposite of why people do choose Prisma - to get away from "active record". Completely broken pattern imho

Do you have any arguments why is it bad practice to work with active records?

we need to do the following or we can define client extensions ( but we need to define the instance methods for each model which is not productive in my opinion)

Can you expand on this a bit @jyotirmaybarman? What exactly would be the problem attempting this via a Client Extension?

Hi @jyotirmaybarman.
Would using a client extension to add active-record like methods help? We have an example for this here. Not necessary a full solution, but can be a good starting point. Let me know if that helps.

Hi @janpio & @SevInf
First of all thank you for your response!!
I guess in case we define a client extension like the example @SevInf mentioned above, we have to repeat the same for each and every model ?

I think this is exactly the opposite of why people do choose Prisma - to get away from "active record". Completely broken pattern imho

This is not about Active Record. This is about to use database records as instances of Class/Model (described in the schema). For OO programmer this would be natural.


The documentation on TLS secrets can be misleading

This is a Bug Report

Problem:
The documentation and example on the TLS secrets can be misleading to a new user.
The documentation does not mention anywhere that the values for  both data.tls.key and data.tls.key should be base64 encoded and yet any workloads using such a secret will automatically decode the value hence causing errors such as
failed to find any PEM data in certificate input

The example yaml provided does not help much either given that the sample values(MIIC2DCCAcCgAwIBAgIBATANBgkqh and MIIEpgIBAAKCAQEA7yn3bRHQ5FHMQ) are those before encoding.
Proposed Solution:
The documentation and example need to be updated to reflect that the data.tls.key and data.tls.key values should be base64 encoded
Page to Update:
https://kubernetes.io/docs/concepts/configuration/secret/

Kubernetes Version:
1.26.4
Additional Information:

Sample error logI0627 18:42:34.500254       1 main.go:234] Kubernetes version: 1.26.4
I0627 18:42:34.507952       1 main.go:380] Using nginx version: nginx/1.23.4
I0627 18:42:34.525283       1 main.go:776] Pod label updated: nginx-ingress-dev-controller-p6jjp
F0627 18:42:34.535386       1 main.go:413] Error trying to get the default server TLS secret nginx-ingress/tls-secret: nginx-ingress/tls-secret is invalid: Failed to validate TLS cert and key: tls: failed to find any PEM data in certificate input

/language en
/sig docs

This issue duplicates https://github.com/kubernetes/website/issues/32869
/triage duplicate

Fixed by #41786


Denite history:search error

minimal vimrc:
call plug#begin('~/.vim/plugged')
Plug 'chemzqm/denite-extra'
Plug 'Shougo/denite.nvim'
call plug#end()

repro:
$ nvim

:Denite history:search

on <enter> I get:
[denite]   File "/Users/jmoon/.vim/plugged/denite.nvim/rplugin/python3/denite/__init__.py", line 33, in start
[denite]     return self._uis[buffer_name].start(args[0], args[1])
[denite]   File "/Users/jmoon/.vim/plugged/denite.nvim/rplugin/python3/denite/ui/default.py", line 119, in start
[denite]     status = self._prompt.start()
[denite]   File "/Users/jmoon/.vim/plugged/denite.nvim/rplugin/python3/denite/prompt/prompt.py", line 182, in start
[denite]     raise e
[denite]   File "/Users/jmoon/.vim/plugged/denite.nvim/rplugin/python3/denite/prompt/prompt.py", line 172, in start
[denite]     callback=self.on_harvest,
[denite]   File "/Users/jmoon/.vim/plugged/denite.nvim/rplugin/python3/denite/ui/prompt.py", line 98, in on_keypress
[denite]     return self.action.call(self, m.group('action'))
[denite]   File "/Users/jmoon/.vim/plugged/denite.nvim/rplugin/python3/denite/prompt/action.py", line 139, in call
[denite]     return fn(prompt, params)
[denite]   File "/Users/jmoon/.vim/plugged/denite.nvim/rplugin/python3/denite/ui/action.py", line 15, in _do_action
[denite]     return prompt.denite.do_action(params)
[denite]   File "/Users/jmoon/.vim/plugged/denite.nvim/rplugin/python3/denite/ui/default.py", line 508, in do_action
[denite]     self._denite.do_action(self._context, action_name, candidates)
[denite]   File "/Users/jmoon/.vim/plugged/denite.nvim/rplugin/python3/denite/denite.py", line 214, in do_action
[denite]     return action['func'](context)
[denite]   File "/Users/jmoon/.vim/plugged/denite-extra/rplugin/python3/denite/source/history.py", line 78, in action_execute
[denite]     self.vim.call('denite#extra#search', command)
[denite]   File "/Users/jmoon/Library/Python/3.6/lib/python/site-packages/neovim/api/nvim.py", line 230, in call
[denite]     return self.request('nvim_call_function', name, args, **kwargs)
[denite]   File "/Users/jmoon/Library/Python/3.6/lib/python/site-packages/neovim/api/nvim.py", line 131, in request
[denite]     res = self._session.request(name, *args, **kwargs)
[denite]   File "/Users/jmoon/Library/Python/3.6/lib/python/site-packages/neovim/msgpack_rpc/session.py", line 98, in request
[denite]     raise self.error_wrapper(err)
[denite] neovim.api.nvim.NvimError: b'Vim(call):E118: Too many arguments for function: function'
[denite] Please execute :messages command.

@sodiumjoe it looks like you neovim doesn't support Partial try use :h Partial and see what you get. I need to find a way to detect it.

The latest neovim supports the Partial feature.
I think your neovim is old.

I've switched to use a source variable to get rid of partial.

I'm still getting the same error after updating denite-extra.
on :h Partial i get E149: Sorry, no help for Partial.
I'm on the most recent release of neovim:
nvim -v
NVIM 0.1.7
Build type: RelWithDebInfo
Compilation: /usr/local/Homebrew/Library/Homebrew/shims/super/clang -Wconversion -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1 -O2 -g -DDISABLE_LOG -Wall -Wextra -pedantic -Wno-unused-parameter -Wstrict-prototypes -std=gnu99 -Wvla -fstack-protector-strong -fdiagnostics-color=auto -DINCLUDE_GENERATED_DECLARATIONS -DHAVE_CONFIG_H -I/tmp/neovim-20170304-65726-1i5z3b3/neovim-0.1.7/build/config -I/tmp/neovim-20170304-65726-1i5z3b3/neovim-0.1.7/src -I/usr/local/include -I/usr/local/include -I/usr/local/include -I/usr/local/include -I/usr/local/include -I/usr/local/include -I/usr/local/opt/gettext/include -I/usr/include -I/usr/include -I/tmp/neovim-20170304-65726-1i5z3b3/neovim-0.1.7/build/src/nvim/auto -I/tmp/neovim-20170304-65726-1i5z3b3/neovim-0.1.7/build/include
Compiled by jmoon@jmoon

Optional features included (+) or not (-): +acl   +iconv    +jemalloc +tui
For differences from Vim, see :help vim-differences

   system vimrc file: "$VIM/sysinit.vim"
  fall-back for $VIM: "/usr/local/Cellar/neovim/0.1.7/share/nvim"

@chemzqm ☝

@sodiumjoe fixed, I forgot to improve the search function.

fantastic, thank you!


BMI Calculator

It calculates your BMI.

@EngineerSaqlain Kindly add this app in a separate folder like this C++/BMI_Calculator/(your code) please follow the correct structure and create a new pull request

ok will di it like that
On Wed, Oct 19, 2022 at 6:22 PM Hamas Ur Rehman @.***>
wrote:

Closed #3 https://github.com/MLSA-UETP/HacktoberFest-22/pull/3.
—
Reply to this email directly, view it on GitHub
https://github.com/MLSA-UETP/HacktoberFest-22/pull/3#event-7621538686,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AWBGLGZUKKYLXRLUBCGLTSDWD7YZNANCNFSM6AAAAAARI6QGOY
.
You are receiving this because you were mentioned.Message ID:
@.***>


nav bar is not present

nav bar is not present in this website

home review about section is not visually appeling assign me this issue under gssoc and hacktoberfest @vishanurag
i will make nav bar for solving this issue

@vishanurag please assign this issue to me .I would make a responsive navbar.

nav bar is not looking attrective . @vishanurag assign this issue to me .i will fix it

@vishanurag i would like to work on this plz assign