Unable to pick images from Gallery (Was working earlier in the same application, still able to capture from camera)

Summary

Image Picker control being used in app https://play.google.com/store/apps/details?id=com.innovativeworldapps.cardtalk for last 10 months aprox. Suddenly it has started giving problem in one handset Xiomi Note 7 Pro with miui 12.  App was installed in the handset for last 10 months aprox and was working fine till aprox 1 month back. Now when app is used it is not able to pick images from Gallery (it opens activity to pick images from gallery but when you select any image it does not show selected pic and take you back to initial activity) while Image capture from Camera still working proper in the same app.
onActivityResult(int requestCode, int resultCode, @Nullable Intent data) requestCode received is 2404, resultCode received is 0 and data is null when image is picked from gallery now.
Code to reproduce

    btnChooseImage = (Button)findViewById(R.id.btnChooseImage);
    btnChooseImage.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            ImagePicker.Companion.with(CreateCard.this)
                    .galleryOnly()
                    .crop()
                    .saveDir(userCardSavePath)
                    .compress(1024)
                    .maxResultSize(512, 512)
                    .start();
        }
    });

@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if (resultCode == Activity.RESULT_OK) {
        //Image Uri will not be null for RESULT_OK
        fileUri = data.getData();
        //get file name to be saved in json
        String filename = fileUri.getLastPathSegment();
        cardImage.setImageURI(fileUri);
        cardtitlebox.setVisibility(View.VISIBLE);
        btnCaptureImage.setVisibility(View.GONE);
        btnChooseImage.setVisibility(View.GONE);
        tv_instructions.setText("2. Let's setup text of your card");
        newCard.cardImage = filename;
        cardStage = cardStage + 1;
    } else if (resultCode == ImagePicker.RESULT_ERROR) {
        Toast.makeText(this, ImagePicker.Companion.getError(data), Toast.LENGTH_SHORT).show();
        newCard.cardImage = "";
    } else {
    //Now everytime code enters in else block when image is picked from gallery
    //resultCode received is 0
        Toast.makeText(this, "User Cancelled", Toast.LENGTH_SHORT).show();
        newCard.cardImage = "";
    }
}

Android version

Android Version: 10 QKQ1.190915.002
MIUI Version: MIUI global 12.0.5 Stable
<IP_ADDRESS>(QFHINXM)
Impacted devices

Known Problematic device: Xiomi Redmi Note 7 Pro
Installation method

implementation 'com.github.dhaval2404:imagepicker:1.7.2'
SDK version

dependencies {
    classpath 'com.android.tools.build:gradle:3.6.2'
    classpath "com.github.dcendents:android-maven-gradle-plugin:2.1"
    classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.8.4'
    classpath 'com.github.alexfu:androidautoversion:3.3.0'
    classpath 'com.google.gms:google-services:4.3.4'
    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
}

Other information

Not sure but it could be some issue with MIUI 12 as earlier I was using MIUI 11 and as I remember it was working fine on this device.

Noticed replacing library version
implementation 'com.github.dhaval2404:imagepicker:1.7.2'
to
implementation 'com.github.dhaval2404:imagepicker:2.1'
fixes issue in the device, so it could be some compatibility issue of OS with specific version of library.

Closing issue but somebody working on library can still try to investigate further so that its not creeping up again in some other version in future.


[Feature] Support row delimiter for broker load

What type of PR is this：

[ ] BugFix
[x] Feature
[ ] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Which issues of this PR fixes ：

Support row delimiter for broker load
Problem Summary(Required) ：

Checklist:

[ ] I have added test cases for my bug fix or my new feature
[ ] This pr will affect users' behaviors
[x] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

Bugfix cherry-pick branch check:

[ ] I have checked the version labels which the pr will be auto backported to target branch

[ ] 3.0
[ ] 2.5
[ ] 2.4
[ ] 2.3

run starrocks_fe_unittest

run starrocks_admit_test

run starrocks_fe_unittest

[FE PR Coverage Check]
:disappointed: fail : 4 / 6 (66.67%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
com/starrocks/sql/parser/AstBuilder.java
4
6
66.67%
[2265, 2266]

@Mergify backport branch-2.5

@mergify backport branch-3.0


Jekyll Not Regenerating Content

I have imported my wordpress posts in, and I changed them from .html extensions to .md extensions. When I strip the html tags and start editing the file, it is not reflecting when I load the page.
Note: It worked fine on the first few posts, but then just stopped working. If I update any file, even posts that weren't imported from wordpress the files aren't updated.
_config.yml
auto: true
permalink: pretty

After struggling with this for a few hours this morning, I tracked it down.
In the YAML Front Matter, I had an the following:
image_credit: @Doug88888
This brought down everything. The @ sign seems to not be allowed.
I then read this, "When you use UTF-8 encoding for your file, make it clear that no BOM header chars in your file. Or everything will goes down!"

quote from YAML specification

The “@” (#x40, at) and “`” (#x60, grave accent) are reserved for future use.

So image_credit: @Doug88888 is not valid YAML

Thank you. Didn't realize that it will error out, if you disable auto: true. thanks.


Add optional scatterplot to benchcomp output

Scatterplots should make it easier to immediately spot performance trends (and indeed any differences) rather than having to process a (large) number of table rows.
Uses mermaid-js to produce markdown-embedded plots that will display on the job summary page. Scatterplots are not directly supported by mermaid-js at this point (xycharts only do line or bar charts), so quadrant plots are employed with various diagram items drawn in white to make them disappear.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 and MIT licenses.

See https://github.com/model-checking/kani/actions/runs/8296849261?pr=3077 for what those diagrams now look like.

From the images shown, can you leave a comment here or in documentation somewhere on how to interpret those values? What do the values on the top-right of the plot mean, what do the values on the bottom-left mean etc?

I am now adding text output to spell out the axis ranges, thank you for calling this out!

To be honest the latest version is still a bit hard to read. It's less the axis labels and more that I'm not confident that I would be able to spot a 20% increase or decrease from the y=x line, for example. Also if a particular point has moved far away from the y=x line, it's not that easy to determine which proof or benchmark that actually corresponds to.

Yes, I'd indeed love to be able to draw that diagonal line into the diagram, but I haven't been able to figure out a way to do this in Mermaid. Perhaps it's just about time to create bunch of feature requests against Mermaid.

As a totally different approach to quickly identifying outlying benchmarks---would it be easier if I actually implemented the benchcomp filter command, which allows you to filter benchmarks based on certain criteria before they get emitted to the Markdown table?

Perhaps we should have all of these tools available and then see what helps us the most?


Can't send message immediately after client connected callback

Describe the bug
You can't Send a message from within the ClientConnected callback (MsgType.Connect) as it will return the error "NetworkClient Send when not connected to a server". But it does work if you wait a bit (Probably next frame).
Expected behavior
You should be able to send a message when you get the "I'm connected callback"
Desktop (please complete the following information):
Unity 2017.4

Merged, and confirmed working by @R0yall


Notification permission request

Hi @yschimke @breanatate, I've learnt a lot from this repository about health services.
There is a small change in WearOS 4.0 about notification permissions, so to show ongoing activity, we should permit notification request.

@ozanhonamlioglu thanks for the contribution!


wip: debugging k8s network transfer

Not sure about these changes, better to hand off master

Docs Preview
Hey there! 👋 You can check your preview at https://66fed43c6d7c81ed0a45a3c3--aztec-docs-dev.netlify.app


PROPOSAL: enhance live stream support

I'm interested in using this package for livestreams by bringing it closer to a player implementation:

Changing the processing order from 1. all audio fragments 2. all video fragments to iterate by fragment id and get audio and video at the same time and process them JIT
Not use tempfiles when the fragment save option is activated but operate on the output files
periodically refetch the mpd file
start at live position or select a catchup mode where we start processing in the beginning of the stream(if fragments still available) and keep processing live until stream ended or user interrupted
allow for graceful sigint/ctrl+c interruption in general

I personally believe that these features would roundup this module, this is why I'm opening this issue rather than just going ahead reimplementing most of this logic. I think rather than a completely dedicated routine we could offer these features being backwards compatible and still fully supporting the VOD usecase that is currently covered and keeping the api pretty much the same with little additions.
I'm happy to help with the change in implementation if you find this proposal useful.

Thanks for your proposal.
Can you explain what your planned use case is? Do you want to improve the ability to download "pseudo-live" streams, where all segments are in fact available at the time of download, or are you interested in viewing a "true" live stream, live, as is possible with VLC for example?
Also, I don't understand what you mean by your point concerning tempfiles and "operate on the output files".

My planned use case is to support true live streams where not all segments are available yet: "start at live position or select a catchup mode where we start processing in the beginning of the stream(if fragments still available) and keep processing live until stream ended or user interrupted". I successfully used this on pseudo live streams and it works flawless but I'm interested in making it work with real live streams "by bringing it closer to a player implementation".
The point of the tempfiles is somewhat off topic but I came across it when trying to analyse my usecase fit and I stumbled upon the save_fragments option. when this is selected it seems to be redundant to still use tempfiles to operate on for decoding and remuxing purposes as it uses double the disk space and keeps your saved fragments drm encoded.

OK, in principle I am in favour of better support for live streams. My current intuition is that the necessary logic would be difficult to fit in with the current VOD support, which is already rather convoluted. For example, I presume it would be necessary to add to the API a consumer function for the segments as they are downloaded, and to add timing logic to wait for segments that are not yet available. (Perhaps you can convince me that my intuition here is incorrect, though.)
I would probably be willing to merge separate code that handles live streams, if it looks good to me, and to reorganize the existing code so that it's easier to share common functionality.

I do think a timing mechanism is definitely necessary. I'd be happy to go about that alongside the consumer function and other topics.
What would definitely help me get started is to reorganize the code a bit and potentially move the VOD download approach to a fragment by fragment approach (video+audio+text) which would leave me with a function I could reuse for live processing. Unless you see any major benefit in the current period based approach that downloads audio first and goes to video after.

The current sequential Period-based approach is simpler that what you are proposing. That's not a sufficient reason to avoid reorganizing as you suggest; if your patch looks good I will probably be willing to merge it. Have fun!


chore: fix v3 test fixture that are not valid v3 credentials

:tada: This PR is included in version 7.5.1 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


change_cwd command changes dir to one level up

Description
The command to change current dir doesn't work properly.
After having moved to the path /pippo/pluto/paperino if the command change_cwd, in my case through the shortcut , the file browser jumps to /pippo/pluto/, displaying as picker title ./ , instead of /pippo/pluto/paperino, as confirmed by :pwd. Instead it should stay to /pippo/pluto/paperino`.
Neovim version
NVIM v0.6.1
Build type: RelWithDebInfo
LuaJIT 2.1.0-beta3

Operating system and version
opensuse tumbleweed
Steps to reproduce
described above
Expected behavior
No response
Actual behavior
described above
Minimal config
not used, not really reated, I have

my bad, I am biased by the use of ranger and lf and I assumed it worked in the same way without reading the documentation.


Unclear explanation of the charset attribute in Learn HTML by Building a Cat Photo App: Step 69

Describe the Issue
This particular lesson does not correctly explain the charset attribute. It says "Tell the browser to parse the markup into multiple languages by creating a meta element as a child of the head element. Set its charset attribute to UTF-8." which implies that the charset attribute can automatically translate the markup.
Compare this with the explanation from Learn Basic CSS by Building a Cafe Menu: Step 3 which says "Inside the head element, nest a meta element with an attribute named charset set to the value utf-8 to tell the browser how to encode characters for the page. Note that meta elements are self-closing."
Affected Page
https://www.freecodecamp.org/learn/2022/responsive-web-design/learn-html-by-building-a-cat-photo-app/step-69
Your code
see explanation above
Expected behavior
see explanation above
Screenshots
No response
System

Device: [e.g. iPhone 6, Laptop]
OS: [e.g. iOS 14, Windows 10, Ubuntu 20.04]
Browser: [e.g. Chrome, Safari]
Version: [e.g. 22]

Additional context
No response

I agree with updating the text here
Let's go with this change
You can set browser behavior by adding self-closing `meta` elements in the `head`. Here's an example:

```html
<meta attribute="value">
```

Inside the `head` element, nest a `meta` element with an attribute named `charset`. Set to the value `utf-8` which tells the browser how to encode characters for the page.

Note that `meta` elements are self-closing.

This has been opened for contribution. The first comprehensive PR created will be reviewed and merged. We typically do not assign issues to anyone other than long-time contributors.
If you would like to contribute and have not read the contributors docs, please do so here: https://contribute.freecodecamp.org/#/
If you have any issues with contributing, be sure to join us on the contributors channel, or on the contributors sub-forum
Files that need to be changed
https://github.com/freeCodeCamp/freeCodeCamp/blob/main/curriculum/challenges/english/14-responsive-web-design-22/learn-html-by-building-a-cat-photo-app/62bb4009e3458a128ff57d5d.md
Happy coding


The benchmark script for service loadbalance

I am doing the test about the service loadbalance performance，and I have got you use pktgen to push the packet，can you shell your test script？

Are you referring to https://cilium.io/blog/2020/06/22/cilium-18/#kubeproxy-removal ? Really anything works, you could also use a dpdk-based packet generator. In the test we used a UDP service vip+port and the packet generator on the other node needs to make sure to vary source vip/port in order to RSS steer packets on the LB node to different CPUs. Traffic was pushed back out of the NIC (e.g. XDP_TX on XDP layer) to check for the case of remote backend.

Are you referring to https://cilium.io/blog/2020/06/22/cilium-18/#kubeproxy-removal ? Really anything works, you could also use a dpdk-based packet generator. In the test we used a UDP service vip+port and the packet generator on the other node needs to make sure to vary source vip/port in order to RSS steer packets on the LB node to different CPUs. Traffic was pushed back out of the NIC (e.g. XDP_TX on XDP layer) to check for the case of remote backend

Yes， i referred to  https://cilium.io/blog/2020/06/22/cilium-18/#kubeproxy-removal  .Now I have compiled and installed the pktgen-dpdk on my host，but I am not sure how to test the service‘s performace based on cilium. Is that to create a service and then use pktgen to access this service? Can you share your detail test plan ? thank you.


What is wrong?

Challenge Find the Length of a String has an issue.
User Agent is: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36.
Please describe how to reproduce this issue, and include links to screenshots if possible.
My code:

// Example
var firstNameLength = 0;
var firstName = "Ada";

firstNameLength = firstName.length;

// Setup
var lastNameLength = 8;
var lastName = "Lovelace";

// Only change code below this line.
lastNameLength = lastName.length;

@raskolnicon you are not supposed to touch this line. var lastNameLength = 8;   you need to redo it again.
so this challenge don't have an issue.
Please use the HelpJavaScript chat room for getting challenge related help.
Happy Coding.


v0.2.9 breaks build on ios

I think #209  in v0.2.9 may have broken the build on ios (at least x86_64-apple-ios):
error[E0433]: failed to resolve: use of undeclared crate or module `keychain`
  --> .../native-tls-0.2.9/src/imp/security_framework.rs:94:24
   |
94 |         let keychain = keychain::CreateOptions::new()
   |                        ^^^^^^^^ use of undeclared crate or module `keychain`

error[E0433]: failed to resolve: use of undeclared type `SecItems`
  --> .../native-tls-0.2.9/src/imp/security_framework.rs:98:25
   |
98 |         let mut items = SecItems::default();
   |                         ^^^^^^^^ use of undeclared type `SecItems`

error[E0433]: failed to resolve: use of undeclared type `ImportOptions`
   --> .../native-tls-0.2.9/src/imp/security_framework.rs:100:9
    |
100 |         ImportOptions::new()
    |         ^^^^^^^^^^^^^ use of undeclared type `ImportOptions`

error[E0433]: failed to resolve: use of undeclared type `ImportOptions`
   --> .../native-tls-0.2.9/src/imp/security_framework.rs:106:9
    |
106 |         ImportOptions::new()
    |         ^^^^^^^^^^^^^ use of undeclared type `ImportOptions`

error[E0599]: no function or associated item named `with_certificate` found for struct `SecIdentity` in the current scope
   --> .../native-tls-0.2.9/src/imp/security_framework.rs:116:34
    |
116 |         let ident = SecIdentity::with_certificate(&[keychain], cert)?;
    |                                  ^^^^^^^^^^^^^^^^
    |                                  |
    |                                  function or associated item not found in `SecIdentity`
    |                                  help: there is an associated function with a similar name: `certificate`

AFAICT all of the relevant use statements (from self::security_framework::os::macos::...) are under #[cfg(not(target_os = "ios"))].
Was/is it a macos specific feature or are equivalent imports for ios missing? I guess the former and some more #[cfg(not(target_os = "ios"))] are needed somewhere?

Ah yeah, looks like we need to flag the feature off from iOS.

Fixed in 0.2.10

I can confirm that 0.2.10 works for us, many thanks for the fast turnaround!


Old rules are not removed from /etc/prometheus/rules

rules are not removed from the /etc/prometheus/rules directory if they are removed from role variables or are renamed.

This one is tricky since Ansible is stateless when you remove or rename you don't have any previous state of the previous object. Nevertheless, it is possible to do this manually in wrapping playbook.
Moreover, a new variable could be introduced which goes through the list and then removes those rules but I am reluctant to introduce this because one must not forget to add a rule to the list after removing/renaming rule.

I think it will be a manual removal for the time being, I'll just have to remember to check after I run the role


In the past 30 minutes this has broken for me, now perpetually "waiting" on map screen

Recently updated to the latest version, thinking it might solve this issue. Do I need a new PTC account perhaps, softbanned or banned? A new GMaps key maybe?

PTC looks to be down at the moment if you check the server status


Why two separate HTTP client libraries?

When using rust-s3, you pull in two HTTP client libraries: reqwest (from the s3 crate) and attohttpc crate (from aws-creds). Is there a reason these aren't using the same crate?
I'd personally prefer reqwest to be used for both, since that's what other projects we depend on use as well (sendgrid, sentry).

@jplatte, since aws-creds use only sync requests, it pulls attohttpc which is lighter. With the right combination of features, reqwest does not get pulled at all

aws-creds attohttpc has been made an optional dependency


Automated Package Upgrade

:tada: This PR is included in version 28.2.19 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Fixing alert on all hostPaths

PR Type:
Bug fix

PR Description:
This PR is focused on fixing the alert mechanism for all hostPaths in the system. Previously, the alert was only triggered for hostPaths that started with '/etc' or '/var'. Now, the alert will be triggered for any hostPath, enhancing the security of the system.

PR Main Files Walkthrough:
-rules/alert-any-hostpath/raw.rego: The function is_dangerous_host_path was renamed to is_dangerous_volume and its logic was simplified. Instead of checking if the hostPath starts with '/etc' or '/var', it now simply returns the hostPath. This change was also reflected in the deny rules, where is_dangerous_host_path was replaced by is_dangerous_volume.

/describe

/improve


Stop boost after run game on your pc

If i run game which now boost on my vps by SHBv2, boost was stopped and not wanna start boost again after close game. yes i can make cron task:

*/1 * * * /usr/local/bin/pm2 restart all
but when i loose some times for that, maybe update script?

why close?

It will start to boost again after some time.

how reduce that time?

You can't without changing the code. If you want that, you have to figure it out yourself.


[pico-w] http server freeze after few requests

I've made a simple server to test the functionality but the server only accept 2 to 3 requests then die. This is the code I'm using:
try {
    const {WiFi} = require('wifi');
    const http   = require('http');

    const wifi = new WiFi();
    wifi.connect({
        ssid    : 'SSID',
        password: 'password'
    }, (err, info) => {
        if (err) {
            throw err;
        }
        console.log('connected');
    });

    const server = http.createServer((req, res) => {
        let message = "{\"success\": true,\"message\": \"success message\"}";
        console.log('Request path: ' + req.url);
        res.writeHead(200, 'OK', {
            'Content-Type'  : 'application/json',
            'Content-Length': message.length
        });
        res.write(message);
        res.end();
    });

    server.on('error', (err) => {
        console.log('http server error: ' + err.message);
        throw err;
    });

    server.listen(80, () => {
        console.log('HTTP server listening on port: ' + 80);
    });

} catch (err) {
    console.log('caught error: ' + err.message);
    console.log('end');
}

never caught any error on the catch, also wifi.on('connected' is not being triggered.
if you point me out to info on how can i debug, see memory usage, etc... I can try to help a bit more.

@dreanmer I found that dns code has issue and it make system freeze. So I temporarily disable it and I don't think http server need dns feature. So could you please try it with the attached test FW? wifi.on('connected', callback) feature is also fixed in this FW.
kaluma-rp2-pico-w-1.1.0-beta.2_disable_dns_0702.uf2.zip

I'll try it as soon as my new boards arrive! thanks!


WIP: e-commerce guide

Description (required)
*Copied from the PR Sarah created
Work In Progress:
This adds a new Guide "E-commerce" to briefly introduce and mention integrating e-commerce options into an Astro project.

Insta-merging into branch! This is not an edit!


onPrepareOptionsMenu() for Android 3+

On Android 3.0 and higher, the options menu is considered to always be open when menu items are presented in the action bar. When an event occurs and you want to perform a menu update, you must call invalidateOptionsMenu() to request that the system call onPrepareOptionsMenu().

There are some cases where we modify the menu (e.g. after updating a cache in the details-view).

Are you aware that we need to set API level 11 as target then?

No, the question is: Do we have any problems because of this change?


Prep release

Codecov Report

Merging #124 (f9de8ec) into main (2741861) will increase coverage by 0.10%.
The diff coverage is 40.00%.

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

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@            Coverage Diff             @@
##             main     #124      +/-   ##
==========================================
+ Coverage   45.58%   45.68%   +0.10%
==========================================
  Files         123      123
  Lines        4348     4360      +12
==========================================
+ Hits         1982     1992      +10
- Misses       2366     2368       +2

Impacted Files
Coverage Δ

src/fullctl/django/rest/serializers/aaactl_sync.py
69.56% <0.00%> (ø)

src/fullctl/service_bridge/devicectl.py
0.00% <0.00%> (ø)

src/fullctl/service_bridge/ixctl.py
0.00% <0.00%> (ø)

src/fullctl/service_bridge/pdbctl.py
0.00% <0.00%> (ø)

src/fullctl/service_bridge/peerctl.py
0.00% <0.00%> (ø)

src/fullctl/service_bridge/prefixctl.py
0.00% <0.00%> (ø)

src/fullctl/service_bridge/client.py
40.97% <51.85%> (+2.63%)
:arrow_up:

src/fullctl/service_bridge/aaactl.py
73.07% <100.00%> (ø)

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


update_column_width not working for single column

Hey all,
in this example I want to change the column width of a single column:
import streamlit as st
from st_aggrid import AgGrid, GridOptionsBuilder
import pandas as pd

df = pd.DataFrame({'some short column': ['a', 'b', 'c'],
                   'some long column': ['all column and no spacing makes coder a dull boy '
                                        'all column and no spacing makes coder a dull boy '
                                        'all column and no spacing makes coder a dull boy '
                                        'all column and no spacing makes coder a dull boy '
                                        'all column and no spacing makes coder a dull boy '
                                        'all column and no spacing makes coder a dull boy '
                                        'all column and no spacing makes coder a dull boy '
                                        'all column and no spacing makes coder a dull boy ', 'two', 'three'],
                   'some other column': ['one', 'two', 'three'],
                   'some other column 2': ['one', 'two', 'three']})

gb = GridOptionsBuilder.from_dataframe(df)
gb.configure_column('some short column', min_column_width=3000)
AgGrid(df, gridOptions=gb.build(), fit_columns_on_grid_load=True)

but the update function doesn't seem to change the min-width.
Any ides why?

Indeed it's not working... I tested now on version 0.3.3.
But it does work for all columns:
gb.configure_default_column(min_column_width=300)

Another way to do this for a specific column:
gb = GridOptionsBuilder.from_dataframe(df)
grid_options = gb.build()
grid_options['columnDefs'][1]['minWidth'] = 300
AgGrid(df, gridOptions=grid_options)

Note that this changes the definition of the second column (index 1).
If you don't know the index, you can search that list using the column's name to find the right one:
for col_def in grid_options['columnDefs']:
    if col_def['headerName'] == 'some long column':
        col_def['minWidth'] = 300
        break


Trouble with installing dependencies in conda environment

I don't think we should have the suggested option of creating a conda environment. I had no success in getting the desired packages installed within a conda environment.
Try #1: After creating conda environment, I tried to pip install within that activated environment and that didn't work:

Try #2: Just to try all options, I scrapped that conda environment and created a new one, listing the packages I wanted installed in that environment. That did not work either:

Yeah, pip install in conda can be such a pain. We'll just have to keep an eye out for this at the workshop. :)


A quick question, how to use it after started as client?

git clone
./build-release.sh
ln -s v2ray-plugin_linux_amd64 v2ray-plugin
config correct$ cat /etc/shadowsocks-libev/config.json
{
    "server":["<IP_ADDRESS>"],
    "server_port":2020,
    "local_port":1089,
    "password":"p",
    "timeout":60,
    "method":"chacha20-ietf-poly1305",
    "plugin":"/home/lighthouse/workspace/v2ray-plugin/v2ray-plugin"
}

how do I know 4 is correct? cause I have another laptop which is macOS 11.4 running Shadowsocks-NG, the process is
/Users/${WHICH_IS_NAME}/Library/Application Support/ShadowsocksX-NG/ss-local-latest/ss-local -c ss-local-config.json --fast-open --reuse-port
then let's check config file{
  "server_port" : 2020,
  "server" : "<IP_ADDRESS>",
  "timeout" : 60,
  "local_address" : "<IP_ADDRESS>",
  "method" : "chacha20-ietf-poly1305",
  "local_port" : 1086,
  "password" : "p",
  "plugin" : "plugins/v2ray-plugin",
  "plugin_opts" : ""
}

start ss-local$ ss-local -v -c /etc/shadowsocks-libev/config.json
 2021-07-19 00:24:03 INFO: plugin "/home/lighthouse/workspace/v2ray-plugin/v2ray-plugin" enabled
 2021-07-19 00:24:03 INFO: initializing ciphers... chacha20-ietf-poly1305
 2021-07-19 00:24:03 INFO: listening at <IP_ADDRESS>:1089
2021/07/19 00:24:03 V2Ray 4.23.2 (V2Fly, a community-driven edition of V2Ray.) Custom (go1.13.8 linux/amd64)
2021/07/19 00:24:03 A unified platform for anti-censorship.
2021/07/19 00:24:03 [Warning] v2ray.com/core: V2Ray 4.23.2 started

try to use local proxy$ git -c "http.proxy=http://<IP_ADDRESS>:1089" clone https://github.com/${ONE_GIT_REPO}.git
Cloning into 'ion-sfu'...
fatal: unable to access 'https://github.com: Proxy CONNECT aborted

Jesus, why not just tell everyone ss-local ... will listen on local port in socks5


Mock static methods

Hi folks,
are there any plans to support mocking of static methods?
Cheers
Ingo

Mocking of static methods would be even nicer but the current state is that if the class has any static methods, they cannot be called on the mock version (rendering this package unusable in my case)
ie:
class Foo {
  static sayHello() {
    console.log('hello')
  }
}

const mockFoo = mock(Foo);
mockFoo.sayHello() // error TS2339: Property 'sayHello' does not exist on type 'Foo'.

Any updates on this?

You can try something like this:
class Foo {
    static sayHello(): void {
        console.log('hello')
    }
}

const mockFoo = mock<typeof Foo>(Foo);
mockFoo.sayHello(); // no more error

This is how I get around this problem.

@MatejSkrbis
I tried your code. But I got this error. Could you run the test without error?
TypeError: mockFoo.sayHello is not a function

@MatejSkrbis
I tried your code and use when.
const mockFoo = mock<typeof Foo>(Foo);
mockFoo.sayHello(); // no more error
when(mockFoo.sayHello());

But I got this error. Could you run the test without error?
TypeError: mockFoo.sayHello is not a function

I've tried it and there is no error on my side.
I'm using latest packages of mocha and ts-mockito ("mocha": "8.2.1", "ts-mockito": "2.6.1", "typescript": "4.0.5")

The above example works for me, but I can't get it working IRL, where the static method to be mocked is in a dependency of the object being tested: could the documentation be updated to include the correct way to handle such a scenario?

@leegee This library is no longer maintained. I like it but there are no updates from the author and he didn't give access to anyone else to update the documentation or the code. I don't know what is the correct way, but you could use spy instead of mock.

class Foo {
    static sayHello(): string {
        return 'Nop';
    }
}

const spyFoo = spy(Foo);

when(spyFoo.sayHello()).thenReturn('Yes');

console.log(Foo.sayHello()); // Will print out Yes

That was kind of you, thank you.


etcd not listening on IPv4

I built etcd from master and set it to listen on 2 ports on <IP_ADDRESS>. But it fails to advertise to the cluster.
The logs tell that it is listening for requests.
2016-07-08 21:15:46.226927 I | etcdmain: listening for client requests on <IP_ADDRESS>:2379
2016-07-08 21:15:46.227068 I | etcdmain: listening for client requests on <IP_ADDRESS>:4001

But in netstat I only see an active listener on tcp6, so only on IPv6
tcp6       0      0 :::4001                 :::*                    LISTEN      3592/etcd
tcp6       0      0 :::2379                 :::*                    LISTEN      3592/etcd

Can you post your exact command line, perhaps with the --debug option on? It might help (I wonder if the weird IPv6 vs IPv4 thing seen in 5882 is related to what you're seeing here... I see IPv4 listeners while etcdctl tries to talk on IPv6).

This is from the systemd service
Environment=ETCD_DATA_DIR=/var/lib/etcd
Environment=ETCD_NAME=<IP_ADDRESS>
Environment=ETCD_INITIAL_CLUSTER=<IP_ADDRESS>=http://<IP_ADDRESS>:7001,<IP_ADDRESS>=http://<IP_ADDRESS>:7001,<IP_ADDRESS>=http://<IP_ADDRESS>:7001
Environment="ETCD_PEER_ADDR=<IP_ADDRESS>:7001"
Environment=ETCD_INITIAL_CLUSTER_STATE=existing
Environment="ETCD_LISTEN_CLIENT_URLS=http://<IP_ADDRESS>:2379,http://<IP_ADDRESS>:4001"
Environment="ETCD_ADVERTISE_CLIENT_URLS=http://<IP_ADDRESS>:4001,http://<IP_ADDRESS>:2379"
Environment="ETCD_UNSUPPORTED_ARCH=arm"

will try to run it with --debug tomorrow

@meyskens can you provide the full etcd server log? It's not clear to me what the exact error / problem is that you're seeing. Does etcdctl --endpoints=<IP_ADDRESS>:2379 cluster-health report the cluster is healthy?
I tried <IP_ADDRESS> instead of <IP_ADDRESS> and got tcp  instead of tcp6 on netstat. However, even with tcp6, etcdctl could still connect through an external ipv4 address.

root@etcd1# etcd --debug
2016-07-10 11:06:15.051780 W | etcdmain: running etcd on unsupported architecture "arm" since ETCD_UNSUPPORTED_ARCH is set
2016-07-10 11:06:15.052861 I | flags: recognized and used environment variable ETCD_ADVERTISE_CLIENT_URLS=http://<IP_ADDRESS>:4001,http://<IP_ADDRESS>:2379
2016-07-10 11:06:15.053029 I | flags: recognized and used environment variable ETCD_DATA_DIR=/var/lib/etcd
2016-07-10 11:06:15.053219 I | flags: recognized and used environment variable ETCD_INITIAL_CLUSTER=<IP_ADDRESS>=http://<IP_ADDRESS>:7001,<IP_ADDRESS>=http://<IP_ADDRESS>:7001,<IP_ADDRESS>=http://<IP_ADDRESS>:7001,<IP_ADDRESS>=http://<IP_ADDRESS>:7001
2016-07-10 11:06:15.053301 I | flags: recognized and used environment variable ETCD_INITIAL_CLUSTER_STATE=existing
2016-07-10 11:06:15.053451 I | flags: recognized and used environment variable ETCD_LISTEN_CLIENT_URLS=http://<IP_ADDRESS>:2379,http://<IP_ADDRESS>:4001
2016-07-10 11:06:15.053577 I | flags: recognized and used environment variable ETCD_NAME=<IP_ADDRESS>
2016-07-10 11:06:15.053869 W | flags: unrecognized environment variable ETCD_PEER_ADDR=<IP_ADDRESS>:7001
2016-07-10 11:06:15.053933 W | flags: unrecognized environment variable ETCD_UNSUPPORTED_ARCH=arm
2016-07-10 11:06:15.054107 I | etcdmain: etcd Version: 3.0.0+git
2016-07-10 11:06:15.054159 I | etcdmain: Git SHA: c47689d
2016-07-10 11:06:15.054205 I | etcdmain: Go Version: go1.6.2
2016-07-10 11:06:15.054254 I | etcdmain: Go OS/Arch: linux/arm
2016-07-10 11:06:15.054304 I | etcdmain: setting maximum number of CPUs to 4, total number of available CPUs is 4
2016-07-10 11:06:15.054503 N | etcdmain: the server is already initialized as member before, starting as etcd member...
2016-07-10 11:06:15.055506 I | etcdmain: listening for peers on http://localhost:2380
2016-07-10 11:06:15.055659 I | etcdmain: listening for client requests on <IP_ADDRESS>:2379
2016-07-10 11:06:15.055791 I | etcdmain: listening for client requests on <IP_ADDRESS>:4001
2016-07-10 11:06:15.057370 I | etcdserver: name = <IP_ADDRESS>
2016-07-10 11:06:15.057459 I | etcdserver: data dir = /var/lib/etcd
2016-07-10 11:06:15.057532 I | etcdserver: member dir = /var/lib/etcd/member
2016-07-10 11:06:15.057596 I | etcdserver: heartbeat = 100ms
2016-07-10 11:06:15.057700 I | etcdserver: election = 1000ms
2016-07-10 11:06:15.057766 I | etcdserver: snapshot count = 10000
2016-07-10 11:06:15.057856 I | etcdserver: advertise client URLs = http://<IP_ADDRESS>:2379,http://<IP_ADDRESS>:4001
2016-07-10 11:06:15.058838 I | etcdserver: restarting member 369f1f7da3217bbb in cluster 12a3f19c36fd9b8b at commit index 0
2016-07-10 11:06:15.059151 I | raft: 369f1f7da3217bbb became follower at term 0
2016-07-10 11:06:15.059280 I | raft: newRaft 369f1f7da3217bbb [peers: [], term: 0, commit: 0, applied: 0, lastindex: 0, lastterm: 0]
2016-07-10 11:06:15.110264 I | etcdserver: starting server... [version: 3.0.0+git, cluster version: to_be_decided]
2016-07-10 11:06:22.111974 E | etcdserver: publish error: etcdserver: request timed out
2016-07-10 11:06:29.113111 E | etcdserver: publish error: etcdserver: request timed out
2016-07-10 11:06:36.113931 E | etcdserver: publish error: etcdserver: request timed out
2016-07-10 11:06:43.115193 E | etcdserver: publish error: etcdserver: request timed out
2016-07-10 11:06:50.116004 E | etcdserver: publish error: etcdserver: request timed out

root@etcd1:~# etcdctl --endpoints=<IP_ADDRESS>:2379 cluster-health
cluster may be unhealthy: failed to list members
Error:  client: etcd cluster is unavailable or misconfigured; error #0: client: endpoint http://<IP_ADDRESS>:2379 exceeded header timeout

error #0: client: endpoint http://<IP_ADDRESS>:2379 exceeded header timeout

Hope that helps

2016-07-10 11:06:15.053869 W | flags: unrecognized environment variable ETCD_PEER_ADDR=<IP_ADDRESS>:7001

ETCD_PEER_ADDR was deprecated in 2.0 and removed in 3.0. Try ETCD_INITIAL_ADVERTISE_PEER_URLS instead. Also, please use port 2380 for peers if possible; port 7001 is deprecated as well.

That seems to have fixed it!

Ive the exact same problem with this configuration:
  etcd2:
    # configuration options
    # https://github.com/coreos/etcd/blob/master/Documentation/op-guide/configuration.md

    # specify the initial size of your cluster with ?size=X

    # etcd2 service start will only work, when all members have registred with discovery

    # configuration can be looked up in path:
    #/run/systemd/system/etcd2.service.d/20-cloudinit.conf

    # generate a new token for each unique cluster from https://discovery.etcd.io/new?size=CLUSTER_SIZE
    discovery:

    # etcd instance name
    name:

    listen-peer-urls: "http://<IP_ADDRESS>:2380"
    listen-client-urls: "http://<IP_ADDRESS>:2379"

    initial-advertise-peer-urls: "http://$private_ipv4:2380"

    advertise-client-urls: "http://$private_ipv4:2379"

    # cluster state
    initial-cluster-state: "new"

    # cluster name
    initial-cluster-token: "etcd-cluster"

    data-dir: "/var/lib/etcd2"

systemd      1 root   86u  IPv6  14876      0t0  TCP *:ssh (LISTEN)
etcd2     1147 etcd    5u  IPv6  18086      0t0  TCP *:2380 (LISTEN)
etcd2     1147 etcd    6u  IPv6  18087      0t0  TCP *:2379 (LISTEN)
I looks like its only serving for on the IPv6 interface.

@gitoverflow have you confirmed it can't communicate over ipv4? I tested on a linux machine; netstat only lists "tcp6 0 0 :::2379 :::* LISTEN" for the client port but it accepts connections over the ipv4 address fine.

I confirmed it by trying to check the health of the cluster:
curl xxx.xxx.xxx.xxx:2379/health
curl: (7) Failed to connect to xxx.xxx.xxx.xxx port 2379: Operation timed out

OK, can you confirm the port is being exposed correctly?  Does nc -l -p 2379 (on the machine hosting etcd) and echo abc | nc xxx.xxx.xxx.xxx 2379 (on the client machine) print abc on the host machine?

Netcat is not installed by default on coreos, so i'm not able to test it right now.
I just tried to start an coreos machine at DO without IPv6 enabled, and this seems to work,
is there something I should consider when enabling IPv6 ?

@gitoverflow ipv6 should work? Maybe try [::]:2380?

that does indeed work, but the public ipv4 public curl doesn't work

Okay, I think this can be closed, because I git it working after changing this lines:
    initial-advertise-peer-urls: "http://<IP_ADDRESS>:2380, http://$private_ipv4:2380"
    advertise-client-urls: "http://<IP_ADDRESS>:2379, http://$private_ipv4:2379"


Software Templates should provide entire entity to templates

Feature Suggestion
The EntityPicker allows the selection of various entities. The templates only receive the entity name at the moment. It would be useful to provide the entire entity object to the templates.
Possible Implementation
resolveEntity will populate the entire entity object into parameters.provides-apis.
        provides-apis:
          title: APIs provided
          type: string
          description: Select the API this component provides.
          ui:field: EntityPicker
          ui:options:
            resolveEntity: true
            allowedKinds:
              - API

Context
We are trying to reduce the number of inputs users have to provide to populate/bootstrap things.

This is the intended behaviour. It's a pattern we are using in other places throughout: the entity ref is passed to the interested party, and then they turn around and use a catalog client to fetch the actual data they need. Your action can do the same. This turns out to be a pretty good simplicity / flexibility balance, we find.
I'll close as answered for now, but do speak up if this was not the answer you wanted or if we can clarify more.

@freben Thinking about it again, I suppose the better solution for this would be to provide a function which can be used in assigning parameters to return the entity object, e.g.
my_entity: '{{ resolveEntity parameters.entityRef | json }}'

Do you think this could be provided natively by backstage?

It could, but I'm not sure there's value. The code that reads my_entity might just as well do the lookup in typescript land.

@freben I'm not sure we're talking about the same thing. I should not have started with the solution (XY problem) but rather explained what we want to achieve.
We started with various templates, e.g. engineer onboarding which for example creates terraform code to create access to databases and other infrastructure. The user is usually already generated from the HR system, but the engineering manager goes to Backstage, selects the template, fills in a couple of things and selects the user entity. Currently, we require to fill out all the details that are already captured in the user entity, because we can't resolve that in the template.
I realise you already have parseRepoUrl which is similar to what I'm suggesting:
  steps:
    - id: fetch-base
      name: Fetch bootrap engineer template
      action: fetch:template
      input:
        url: templates/bootstrap-engineer/
        values:
          title: '{{ parameters.title }}'
          description: '{{ parameters.description }}'
          destination: '{{ parseRepoUrl parameters.repoUrl }}'
          user: '{{ entityRefResolver parameters.user }}'

Hopefull that explains it better and you see the value.

@estahn Did anything like this ever get implemented? I'm having a similar issue at the moment but can't find any way to get the entity data into my template without asking the user to fill out the data (even though backstage has the information)

This would be a nice feature to have. We are also facing the same requirements as @estahn.
Will try out using a catalog client.


fix: flk usage of lock update

After discussion with @Pacman99
the used command did not update as intended in one instance locally on my machine.
I din't investigate further, but nix flake lock seems the correct way to to this.

bors r+


adding google style compile without run on project

Added google style formatted during maven install phase.

test is failing

[ERROR] Failed to execute goal net.revelc.code.formatter:formatter-maven-plugin:2.10.0:format (default) on project opentracing-jms-common: Cannot find config file [/home/travis/build/opentracing-contrib/java-jms\google-style-formatter.xml] -> [Help 1]

Pull Request Test Coverage Report for Build 133

0 of 0   changed or added relevant lines in 0 files are covered.
120 unchanged lines in 7 files lost coverage.
Overall coverage decreased (-0.8%) to 27.184%

Files with Coverage Reduction
New Missed Lines
%

opentracing-jms-spring/src/main/java/io/opentracing/contrib/jms/spring/TracingMessagingMessageListenerAdapter.java
2
90.48%

opentracing-jms-spring/src/main/java/io/opentracing/contrib/jms/spring/TracingJmsTemplate.java
6
45.45%

opentracing-jms-2/src/main/java/io/opentracing/contrib/jms2/TracingCompletionListener.java
7
0.0%

opentracing-jms-common/src/main/java/io/opentracing/contrib/jms/common/TracingMessageListener.java
13
0.0%

opentracing-jms-2/src/main/java/io/opentracing/contrib/jms2/TracingConnection.java
23
0.0%

opentracing-jms-common/src/main/java/io/opentracing/contrib/jms/common/TracingMessageConsumer.java
29
0.0%

opentracing-jms-2/src/main/java/io/opentracing/contrib/jms2/TracingSession.java
40
0.0%

Totals

Change from base Build 127:
-0.8%

Covered Lines:
168

Relevant Lines:
618

💛  - Coveralls


Kitchen::Provisioner::PolicyfileZero does not respect chefignore

Currently when Test Kitchen is enabled to use the policyfile_zero provisioner it transfers ALL files from the cookbook being tested...even those that have been explicitly ignored in the chefignore. This is a real issue when all of the kitchen-vagrant VM files are uploaded into the VM being tested on!
2.1.6p336 in ~/d/c/e/r/c/chef-ingredient on master
➜  cat chefignore | grep kitchen
.kitchen

vagrant@push-server-ubuntu-1204:~$ tree -a /tmp/kitchen/cookbooks/chef-ingredient-56459695676061701.68465901269307089.275982891263740/.kitchen/
/tmp/kitchen/cookbooks/chef-ingredient-56459695676061701.68465901269307089.275982891263740/.kitchen/
└── kitchen-vagrant
    └── kitchen-chef-ingredient-push-server-ubuntu-1204
        └── .vagrant
            └── machines
                └── default
                    └── vmware_fusion
                        └── 3fdfb632-318f-4180-ac32-48701b8c4c14
                            ├── 564df0a8-892b-3c31-c805-e6c13d77a599.vmem
                            ├── 564df0a8-892b-3c31-c805-e6c13d77a599.vmem.lck
                            │   └── M19756.lck
                            ├── disk-s001.vmdk
                            ├── disk-s002.vmdk
                            └── disk-s003.vmdk

8 directories, 5 files

The outcome is kitchen converge's take successfully longer and your workstation hates you.
/cc @danielsdeleo

This is fixed in master already.

https://github.com/chef/chef-dk/issues/519
https://github.com/chef/chef-dk/pull/606


How do i install on RHEL 8

QwikContext
Trying to install omsdk on rhel 8
Details
While trying to get Dell idrac Firmware details with Ansible module
TASK [Import Server Configuration Profile from a network] ***************************************************************************************************
fatal: [idrac_hosts]: FAILED! => {"ansible_facts": {"discovered_interpreter_python": "/usr/libexec/platform-python"}, "changed": false, "msg": "Dell EMC OMSDK library is required for this module"}
Repro Steps
Create playbook as below:

hosts: hosts
name: Get Installed Firmware Inventory
gather_facts: False
tasks:

name: Import Server Configuration Profile from a network
idrac_server_config_profile:
idrac_ip: "IP"
idrac_user: "username"
idrac_password: "password"
command: "import"
share_name: "/home/ansible"
share_user: "username"
share_password: "password"
scp_file: "scp_filename.yml"
scp_components: "ALL"
job_wait: True

Impact
Not able to install on rhel 8 server
NeedBy
When do you need this issue fixed
Severity
What is the severity of the issue.

@shailendra-singh93
pip install omsdk  or pip3 install omsdk should help.

@shailendra-singh93
pip install omsdk  or pip3 install omsdk should help.


[Monorepo Builder] init command seems to be broken since v6.1.0

Hi, I was trying to initialize a new monorepo from scratch for testing purposes, but I got an error:
$ vendor/bin/monorepo-builder init test

In Version.php line 168:

  Version string 'No version set (parsed as 1.0.0)' does not follow SemVer semantics

init [<output>]

The problem seems to be here: https://github.com/symplify/symplify/blob/53d4447a37614331eaa29dd4448dd51edf76d99a/packages/monorepo-builder/packages/init/src/Command/InitCommand.php#L83
And it seems to produce this effect since 5b915c7a4a6f23ae6044820ff7e69d603699b0f7. (versions <=v6.0.5 work fine)
The problem is that composer.json from single packages doesn't contain an explicit version number, so No version set (parsed as 1.0.0) is returned by composer.
Unfortunately I can't see a valid strategy to solve this effectively, so I can't open a PR, but if you can give me some hint I would be happy to help.

Try/catch for these cases might help.
Also try new 7.2 version.
The 6 is unmaintained for almost 6 months now

I'm sorry, probably I wasn't clear, but I'm facing this issue with the latest release v7.2.20, I just tried to figure out why it was happening before reporting and I found out that it is there down to version v6.1.0...

I see.


Cleanup old non-$ methods

We still have a few methods on Prisma Client, like .transaction from the pre-$ days.
We deprecated these methods already a few sprints ago, so it's time to clean them up.

This conflict on prisma.transaction is preventing us from upgrading to 2.11.x. We have a model and table named transaction, so usage of it as say prisma.transaction.aggregate throws type errors:
src/modules/accounts/modelHelpers.ts:40:44 - error TS2339: Property 'aggregate' does not exist on type '{ <TAll>(values: Iterable<TAll | PromiseLike<TAll>>): Promise<TAll[]>; <T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(values: readonly [T1 | PromiseLike<T1>, T2 | PromiseLike<...>, ... 7 more ..., T10 | PromiseLike<...>]): Promise<...>; <T1, T2, T3, T4, T5, T6, T7, T8, T9>(values: readonly [...]): Promise<...>; <T1, T2, ...'.

40   const { sum } = await prisma.transaction.aggregate({
                                              ~~~~~~~~~

This worked fine in 2.10.x.

@erawk You can map the table for now while this clean up happens.
model P_Transaction {
 ...
 ...
 @@map("Transaction")
}

@pantharshit00 Yes, we can do this, but we also have to change everywhere we use the model. For example, in the snippet above, we'd have to change prisma.transaction to prisma.p_transaction in all places we call it.
Is there an ETA on fixing this collision? Can we help by submitting a pull request for these renames? Where should I look?

This is going to be worked on in the next 2 weeks.

Appreciate the quick turnaround here 👏


Add Non-SI Unit Display

** To be discussed **
For convenience and clarity add units in plots and results displays.

Maybe through config variables?
What to do with non-core hooks?

Maybe adding the unit behind the name or (SI) if not known?
Maybe implemented by pluggy hooks.

I already started a discussion about this topic (

Moved to Discussions


Search returns wrong type of records.

Expected behavior:
Patient search returns patients, Inventory search returns inventory items, etc.
Actual behavior:
Searches return incorrect record types.
Although not exhaustively tested, I found:

Inventory: returns wrong type of records in addition to expected records
Patient: returns wrong type of records in addition to expected records
Medication: returns expected records
Billing: returns all invoices if I search "0" but not if I search "i", so I can't figure out what it's searching on, I'd expect it to search on the column with "inv00001" and so on.

This isn't using the test database, just records I entered myself. Not sure if that'd produce different results.
Screenshots (if applicable):

OS and Browser:
Ubuntu 16.04, Chromium

Started looking at this. I think it is the same issue here: https://github.com/pouchdb-community/ember-pouch/issues/168
There was some attempt to fix it but got reverted: https://github.com/pouchdb-community/ember-pouch/pull/194
But seems to work if I use the same solution as in 168 above:
https://github.com/HospitalRun/hospitalrun-frontend/compare/master...MatthewDorner:search-results