Allow undead containers to remain in index with state "deleted"

Addresses #10043
This change will save the error string of any errors which occur after
removing the container from the indexes (to keep from races with the
directory removal), and instead of leaving the container removed from
access, restore it to the index with state deleted and the error
message.  This allows the end user to access it from docker ps and to
see the error, which may be solveable by the user and then removal can
be attempted again. Starting a container in 'deleted' state will be
disallowed as the container's root fs or execdriver directory may be in
a very unstable state depending on where the error occurs.
Docker-DCO-1.1-Signed-off-by: Phil Estes<EMAIL_ADDRESS>

I wish we would fix the btrfs issue instead but okkkkk, this is good too :) thanks

I need to look into details, but as a first remark, and if I understand correctly: I'm not sure about giving a status "deleted" to things we have failed to delete.

@icecrime I don't like the word deleted either, but was coming up short on another single-word state that would better represent the situation? Thesaurus.com isn't helping too much either :)  incapacitated, comatose, uninhabited, ? :)
Ok, a bit more seriously.. would it be bad to have a state that shows incompleteness, like an "-ing" word, e.g. "deleting"?  I think it needs to represent something about deletion/removal, because "failed" or "error" states would confuse the issue with actual failures.  The state string is somewhat important as it would be useful as a docker ps filter string, for example, to find rm command failures.  This is what one looks like in docker ps with my patch, as far as the visible status string:
$docker ps -l
CONTAINER ID        IMAGE               COMMAND             CREATED              STATUS
c97c2b2c5698        busybox:latest      "/bin/sh"           About a minute ago   Delete attempted (Error: "Unable to remove filesystem for c97c2b2c569808f27b5bbc00729cbb62f35870ae14c93d6acaf605264de6ca5b: remove /var/lib/docker/containers/c97c2b2c569808f27b5bbc00729cbb62f35870ae14c93d6acaf605264de6ca5b/somedir: device or resource busy")

Another potential issue is that the STATUS string is so long it makes a messier view of docker ps output, at least as far as somewhat reasonable column sizes.

It's almost like a zombie, or is that a bit too much like zombie processes also I don't want to start a bike shed here on what it should be named when it is a fix that would be useful ;)
Maybe @SvenDowideit can help

We talked about this and think the better approach is to make container delete more robust.  If one step fails, we should move forward with the other tasks that are required for deleting the container then return, if any, a final error to the user.
What we want to avoid is a container is a half deleted state depending on where the failure was within that function.
We don't want to expose a deleted state via the docker API because there is nothing a user can do to fix this via docker.  Most of the time, it will have to be user actions outside of the API to remove a failed directory, etc.
Feel free to work on making delete more robust if you want.  We will close this PR and implementation for now.

@crosbymichael reasoning makes sense. We can chat on IRC about specifics, but I agree making the delete as robust as possible is a good alternative path, with the understanding that there will be these cases (like weird devmapper and btrfs problems) that force there to be cruft left around that the user will be responsible to handle outside of Docker, as you note.  How best to "alert" them to this is the harder part as the "overall sysadmin" may be a different actor than the "container user" who saw the error go by and ignored it.

Proposed a fix here.
https://github.com/docker/docker/pull/11137


Add anomaly detection example doc

Added the doc for the anomaly detection example with the file anomaly-detection.md and a couple of images for the doc.

The file has been modified according to Meder's comments and has been committed.

The file has been modified according to Meder's comments and has been committed.


build: link-time optimization

Tested with cargo bench on an Intel i7-6500U.
 But for the library it matters only in terms of benchmarking (it's up to a particular app to enable lto)?


Latest update breaks the build process

Hi Team,
I tried using the latest updated version and could not install the requirements.txt file. It seemed to break while doing a pip install on gvar. Error was both on Windows and UNIX.
commit id d194a1768cd3157c4171551e8ecb8c21a38ca947 works fine.
Thanks,
BB

Hello BB,
To enable fast computations, gvar compiles C code into a Python module. For this reason it requires a compiler and numpy as perquisites. Likely, this was the cause of the error (but it's tough to say without more information).
I've run docker build . for this repo and encountered an error message related to a failed gvar install attempt. It seems that docker build creates a conda environment with numpy bit did not activate it (thus numpy was not present before compilation). Below you can find a suggestion of how to update the Dockerfile to resolve install problems.
FROM continuumio/miniconda3
WORKDIR /chime_sims

# Install gcc for compiling gvar later
RUN apt-get update && apt-get -y install gcc

RUN conda update -yq -n base -c defaults conda
RUN conda create -yq -n chime_sims python=3.7 pip pandas matplotlib scipy numpy seaborn

# Activate new environment which has numpy
RUN echo "source activate chime_sims" > ~/.bashrc
ENV PATH /opt/conda/envs/chime_sims/bin:$PATH

# And install dependencies
COPY ./requirements.txt .
RUN pip install -q -r requirements.txt

Does this resolve the issue?

I'm working on this with @debdiptom
We tried running Dockerfile using docker-compose up and it exited with code 137
Creating network "chime_sims_default" with the default driver
Creating chime_sims_chime_sims_1 ... done
Attaching to chime_sims_chime_sims_1
chime_sims_chime_sims_1 exited with code 137

But we are able to use the instructions in the "More Flexible Way" part of the README file.
Also,would it be possible to checkin the updated Dockerfile(above) into git as the Docker file in the master branch needs to be updated after the gvar changes?

The Dockerfile above works. Requesting @mdbecker  to update the Dockerfile  in  master


identity in array or map type fields

Issue in ./help/identity-service/home.md
Question on the below.
Can array fields be marked and processed for identity?
Can map type fields be marked and processed for identity?
"Marking XDM fields as identity
Any field of type string in schemas that implement either record or time series XDM classes can be labeled as an identity field. As a result, all data ingested into that field would be considered identity data."

We will review the documentation and make updates to clarify the information as soon as possible.
Internal tracking: https://jira.corp.adobe.com/browse/PLAT-98614

Content has been updated and is now live: https://experienceleague.adobe.com/docs/experience-platform/identity/home.html?lang=en#marking-xdm-fields-as-identity


Automation conditions not working.

Make sure you are running the latest version of Home Assistant before reporting an issue.
You should only file an issue if you found a bug. Feature and enhancement requests should go in the Feature Requests section of our community forum:
Home Assistant release (hass --version):
0.20.3
Python release (python3 --version):
3.4.3
Component/platform:
Automation conditions
Description of problem:
Ive read this https://home-assistant.io/getting-started/scripts-conditions/
and my YAML should work from what I understand but I get the below error in the log and automations do not load:
6-06-02 13:22:50 homeassistant.bootstrap: Invalid config for [automation]: invalid list value @ data['condition'][0] (See C:\Users\Administrator\AppData\Roaming.homeassistant\configuration.yaml:430)
Expected:
Problem-relevant configuration.yaml entries and steps to reproduce:
automation 12:
  - alias: evohome economy enable
    trigger:
      platform: state
      entity_id: group.all_devices
      # Optional
      from: 'home'
      to: 'not_home'
      # If given, will trigger when state has been the to state for X time.
      for:
        minutes: 20
    condition: or
    conditions:
     - condition: time
       after: '17:40:00'
       before: '23:50:00'
     - condition: time
       weekday:
          - sat
          - sun
     - condition: and
       conditions:
     - condition: numeric_state
       entity_id: 'sensor.netatmo_outdoor_module_temperature'
       above: '15'
    action:
       service: ifttt.trigger
       data: `{"event":"evohome_economy_on"}

Traceback (if applicable):
6-06-02 13:22:50 homeassistant.bootstrap: Invalid config for [automation]: invalid list value @ data['condition'][0] (See C:\Users\Administrator\AppData\Roaming.homeassistant\configuration.yaml:430)
Additional info:

Your configuration is unreadable, please repost in code tags

oops corrected

You mix and match a few things. Please take a look at the automation examples, there should be only one condition tag at the root level. You have two, condition and conditions


When to release vqgan-v2

is there any pre-trained model to release, can't wait to see the performance

We propose an other vq Enc-Dec,I'd like to call it Firefly(流萤)GAN.
And there is the generate sample.
a3c8266cc84028d5.zip

@Stardust-minus quality is very good? when will we are able to access this model can't wait to play with it


the sample does not work with the new CloudShell version based on Amazon Linux 2023

recenty AWS migrated all CloudShell to Amazon Linux 2023 https://docs.aws.amazon.com/cloudshell/latest/userguide/cloudshell-AL2023-migration.html
This effectively breaks the building of the zbar library, as it depends on EPEL which is not available in Amazon Linux 2023 https://docs.aws.amazon.com/linux/al2023/ug/compare-with-al2.html#epel
during the execution of setup.shyou will get the below error
Barcode-QR-Decoder-Lambda/src/code/setup.sh: line 34: autoreconf: command not found

fixed by https://github.com/aws-samples/barcode-qr-decoder-lambda/pull/5


Reduce Size of the Operation Code Icon #470

Changed px to em to make it responsive. This closes #470

@rickr is there anything I missed here?


Create contact with company name fail

Error:

Entity of type App\Infrastructure\Doctrine\Entity\Company is missing an assigned ID for field 'id'. The identifier generation strategy for this entity requires the ID field to be populated before EntityManager#persist() is called. If you want automatically generated identifiers instead you need to adjust the metadata mapping accordingly.


Call Automation V4 recognition with choice

Contributing to the Azure SDK
Add the recognition choices
Please see our CONTRIBUTING.md if you are not familiar with contributing to this repository or have questions.
For specific information about pull request etiquette and best practices, see this section.

API change check
APIView has identified API level changes in this PR and created following API reviews.
Azure.Communication.CallAutomation


mon_host_v2_suffix is undefined

Bug Report
What happened:
While running site.yml I've run into an issue that has the same error as #3525, however, I'm not using tox, but actually running the playbook.
What you expected to happen:
Get a deployed ceph cluster.
How to reproduce it (minimal and precise):
I'm running ansible-playbook site.yml -vvvv -i inventory -u root, and get the error:
Share your group_vars files, inventory
the inventory file:
[mons]
s19
[mgrs]
s19
[osds]
s19
group_vars/all.yml:
dummy:
ceph_origin: repository
ceph_repository: community
ceph_stable_release: mimic
monitor_interface: enp139s0f0
group_vars/osds.yml:
dummy:
osd_scenario: lvm
lvm_volumes:
- data: /dev/nvme0n1
osds_per_device: 1
Environment:

OS (e.g. from /etc/os-release): Ubuntu 18.04.2
Kernel (e.g. uname -a): 4.18.0-15-generic
Docker version if applicable (e.g. docker version): not using docker.
Ansible version (e.g. ansible-playbook --version): 2.7.7
ceph-ansible version (e.g. git head or tag or stable branch): master
Ceph version (e.g. ceph -v): 13.2.4

It seems master has the following:
https://github.com/ceph/ceph-ansible/blob/82897c76fb7be987f04843ac65a9546c0f8c622f/roles/ceph-config/templates/ceph.conf.j2#L42-L50
which requires both variables defined.
Try commenting L42 and 45, or switch to stable-3.2 for the time being.

This is expected, as @devster31 said you can't use master to deploy Mimic, please use stable-3.2 instead.

Hi,
I am trying to use the the ansible-ceph as well t it still show that error to me

TASK [ceph-config : generate ceph configuration file: ceph.conf] ******************************************************************************************
Sunday 10 March 2019  09:06:20 -0600 (0:00:00.239)       0:00:43.055 **********
fatal: [ceph2]: FAILED! =>
msg: '''mon_host_v2_suffix'' is undefined'
Does not matter if if I state kraken, lumminous or mimic...
Here is the all.yml from the group vars
dummy:
ceph_origin: repository
ceph_repository: community
ceph_stable: true
ceph_mirror: http://download.ceph.com
ceph_stable_key: https://download.ceph.com/keys/release.asc
ceph_stable_release: mimic
ceph_stable_repo: https://download.ceph.com/rpm-mimic/el7/x86_64
ceph_stable_redhat_distro: el7
cephx: true
monitor_interface: eth0
monitor_address: <IP_ADDRESS>
ip_version: ipv4
public_network: <IP_ADDRESS>/24
** I followed the suggestion to coment line 42/45 in the clone I took  --- no deal.

@totonho-apocalipse as already explained in that same issue.
DO NOT use ceph-ansible@master to deploy mimic.

But Nautilus has not branched yet so ceph master is mimic?

@guits What should ceph_stable_release be set to when testing the current HEAD of the ceph master branch?

Or ceph_release

@badone use ceph_repository: dev

@guits Yes, I see now. Thanks.

Confirm, this still persist.
ceph_repository: community/dev not solve the issue. nor master/luminous:/mimic.
That task work only when the section with the mon_host_v2_suffix are {# commented. #}

@barbudone share more details, you must have something wrong in your setup.

use stable-3.2 to deploy mimic solved my issue, but ansible version must be between 2.4.x-2.6.x

@yuezhuangshi that's the expected behavior, indeed.
Everything is documented here
so please, let's stop raising same "issue" again and again, just use the correct stack according to what you want to deploy.


Connection from pyexasol to Exasol SaaS

I cannot connect to Exasol SaaS using this syntax:
C = pyexasol.connect(dsn="DB_connection_string",
                     user="DB_user",
                     refresh_token="DB_PAT"
                     )

but using "password" instead of "refresh_token" works fine
C = pyexasol.connect(dsn="DB_connection_string",
                     user="DB_user",
                     password="DB_PAT"
                     )

What is the error message? Could you also try to enable debug=True and post logs here?
Let's take a look.

Error Message: Could not connect to Exasol: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1124)
debug=True does only repeat this error message multiple times

Aha, got it. Using refresh_token enables proper certificate verification.
https://github.com/exasol/pyexasol/blob/master/pyexasol/connection.py#L700-L703
Is Exasol SAAS certificate valid in the first place? Does it work with JDBC / ODBC drivers?

Seens as if the vertificate could not be found on mac.
I managed to connect if I also use certifi and ssl, maybe that helps to understand the root cause
import pyexasol
import certifi
import ssl

C = pyexasol.connect(dsn=conf.get("DB_connection_string"),
                     user=conf.get("DB_user"),
                     refresh_token=conf.get("DB_PAT"),
                     websocket_sslopt = {
                        "cert_reqs": ssl.CERT_REQUIRED,
                        "ca_certs": certifi.where()
                        }
                     )

Is JDBC / ODBC working on this machine with Exasol SAAS?
In theory, it might be a problem if system default certificate authority does not recognise SSL certificates generated for Exasol SAAS.
Also, if we enforce certifi, it will potentially mess up with any custom "on premise" SSL setups which many people might currently have.

I've checked it with a small SaaS testing cluster and did not detect any issues.
Also, I've checked certificates returned by Exasol:
{   'OCSP': ('http://r3.o.lencr.org',),
    'caIssuers': ('http://r3.i.lencr.org/',),
    'issuer': ((('countryName', 'US'),), (('organizationName', "Let's Encrypt"),), (('commonName', 'R3'),)),
    'notAfter': 'Jun 15 10:13:31 2022 GMT',
    'notBefore': 'Mar 17 10:13:32 2022 GMT',
    'serialNumber': '03E49B62D405173CF0B2F41BABB9D58290B8',
    'subject': ((('commonName', '*.clusters.exasol.com'),),),
    'subjectAltName': (('DNS', '*.clusters.exasol.com'),),
    'version': 3}

depth=2 C = US, O = Internet Security Research Group, CN = ISRG Root X1
verify return:1
depth=1 C = US, O = Let's Encrypt, CN = R3
verify return:1
depth=0 CN = *.clusters.exasol.com
verify return:1

The whole chain look OK at first glance.
I suspect you might be having problems specifically with your Python or OS installation. In theory, all other hosts using "Let's Encrypt" should not work for you and return the same error.
Could you try to connect to another host using standard Python?
For example, this host: https://letsencrypt.org/
And this Python package: https://docs.python.org/3/library/urllib.request.html#module-urllib.request
Also, could you ask a colleague to try to reproduce this error? I think, another machine will be ok.

@exatobr @littleK0i did you find a solution to this? I have a similar issue in a client's network environment where any of the pyexasol http transport methods just hang indefinitely or time out. execute() works fine and Dbeaver works fine from the same machine but any method like export_to_pandas() fails.
This is a real headscratcher to me. Does http transport utilise a different port or something?
2022-07-14 17:49:09.432 [WebSocket request #3]
{
  "command": "getAttributes"
}
2022-07-14 17:49:09.549 [WebSocket response #3]
{
  "status": "ok",
  "attributes": {
    "datetimeFormat": "YYYY-MM-DD HH24:MI:SS.FF6",
    "dateFormat": "YYYY-MM-DD",
    "numericCharacters": ".,",
    "dateLanguage": "ENG",
    "queryTimeout": 0,
    "timezone": "EUROPE/LONDON",
    "timezoneBehavior": "INVALID SHIFT AMBIGUOUS ST",
    "snapshotTransactionsEnabled": true,
    "defaultLikeEscapeCharacter": "\\",
    "autocommit": true,
    "compressionEnabled": true,
    "currentSchema": "ANALYTICS",
    "openTransaction": 0
  }
}
2022-07-14 17:49:09.749 [WebSocket request #4]
{
  "command": "execute",
  "sqlText": "EXPORT analytics.test_for_transport INTO CSV\nAT 'https://<IP_ADDRESS>:34045' FILE '000.gz'\nWITH COLUMN NAMES"
}

This is the point where it hangs.

It looks like another issue, not related to certificates.
Single-threaded HTTP transport uses the same port to connect: https://github.com/exasol/pyexasol/blob/8b3d0f2a483fab9383ea5987e89fcba73cdf17a5/pyexasol/connection.py#L305
The only difference is that it uses IP address to connect to specific node instead of hostname.
Could you try running the same code from different machine? Maybe Mac / Linux, or from an actual server. With Windows too many things can go wrong.

Thanks for the very quick response! I've tried from 2 different machines within the client network and get the same result in both, but I did try from another laptop on a different network and it works:
2022-07-14 17:49:27.065 [WebSocket request #3]
{
  "command": "getAttributes"
}
2022-07-14 17:49:27.178 [WebSocket response #3]
{
  "status": "ok",
  "attributes": {
    "datetimeFormat": "YYYY-MM-DD HH24:MI:SS.FF6",
    "dateFormat": "YYYY-MM-DD",
    "numericCharacters": ".,",
    "dateLanguage": "ENG",
    "queryTimeout": 0,
    "timezone": "EUROPE/LONDON",
    "timezoneBehavior": "INVALID SHIFT AMBIGUOUS ST",
    "snapshotTransactionsEnabled": true,
    "defaultLikeEscapeCharacter": "\\",
    "autocommit": true,
    "compressionEnabled": true,
    "currentSchema": "ANALYTICS",
    "openTransaction": 0
  }
}
2022-07-14 17:49:27.305 [WebSocket request #4]
{
  "command": "execute",
  "sqlText": "EXPORT (\nSelect * from test_for_transport\n) INTO CSV\nAT 'https://<IP_ADDRESS>:38263' FILE '000.gz'\nWITH COLUMN NAMES"
}
2022-07-14 17:49:28.618 [WebSocket response #4]
{
  "status": "ok",
  "responseData": {
    "results": [
      {
        "resultType": "rowCount",
        "rowCount": 3
      }
    ],
    "numResults": 1
  }
}
2022-07-14 17:49:28.622 [WebSocket request #5]
{
  "command": "disconnect"
}
2022-07-14 17:49:28.655 [WebSocket response #5]
{
  "status": "ok"
}
2022-07-14 17:49:28.655 [WebSocket connection close]

I'm a bit baffled as both all machines have IPv4 addresses in whitelisted ranges and ODBC and pyexasol execute() behaviour is identical, it's just http transport that is having this issue.

Also, I ran from a kubernetes pod linux environment also within the client's network and got an identical issue to the first one

How about exajload or standard Exasol JDBC driver? Does it work for IMPORT (from local file)? Internally, JDBC driver should use the same approach.
What if you try to connect to Exasol using IPv4 address in DSN instead of hostname?
Does client have some fancy "protection" software? HTTP transport is a little bit odd. It does not use SSL immediately after connection. Instead, it sends and receives some un-encrypted data, and waits for incoming request from Exasol. It might be considered suspicious for software which tries to analyse network packets and figure out what is going on.

Also, you may always install "pyexasol" locally for development using pip install -e . and start debugging around this piece of code: https://github.com/exasol/pyexasol/blob/master/pyexasol/http_transport.py#L369-L382
This is where initial connection happens.
And this is the response handler: https://github.com/exasol/pyexasol/blob/master/pyexasol/http_transport.py#L473-L494

Thanks for the pointers - I'll continue to debug with these and let you know if I have any success!

This is IP in Exasol private network.
When pyexasol (or JDBC) connects and sends a special packet, Exasol creates some sort of "tunnel" in its private network routed into HTTP transport connections. The address + port of this tunnel is returned to client and is used while building IMPORT or EXPORT sql query.
Normally, you may ignore these addresses. Actual public network connectivity uses public IP address and port.

I suggest to close this issue

Let's close it, I agree. Let's encrypt root certs should be largely available on all machines nowadays.
I don't think it will be widespread issue. But if it does, we can always reopen.


Edit row functions not able to reference to datatable

The dt param should reference to the datatable, however, currently it is reference to altEditor object.
onAddRow: function(dt, rowdata, success, error) {
	console.log(dt);
},

altEditor {c: {…}, s: {…}, dom: {…}, onAddRow: ƒ, onEditRow: ƒ, …}

You are right.
Unluckily I have no idea how to solve it. The "altEditor" object is passed at line 589; at that point, I don't know how to get the Datatable object. If you have only one Datatable in your page, you may still retrieve it in common ways.

Seems like we can get the datatable object by dt.s.dt.table().node().

Ok, I got it. This is not a bug, it's an intended feature. You get the datatable object using dt.s.dt. I will update docs.


Enforcing of bare repositories

Why there is an requirement to use bare git repository ? Gollum supports both bare and non-bare ones and it's impossible to see changes within bare repository.

Please be aware that for historical reasons this code does not use gollum_lib . I believe florian has just released a new version of the gem and is working on the lib version again. https://github.com/nirnanaaa/gollum_rails
But as for using non-bare repositories: Changes made by the api will not update the working directory. That can be very confusing, so it's not encouraged

@dancinglightning oh exactly, I did not check the repo source of gem :) We are certainly using the Florian version but for some reason our dev linked to this docs source. Misleading ...
Does that mean this repository is no longer maintained and Florian is working on kind of fork ?

strange, if you use florians code (version 1 or 3) , that should have his repo as homepage.
When i started with florian (note in readme) i was going to use a wiki. But then i never did.
The code is tested, but never used. I'll probably give it up soon.
There is someone else who did a git based wiki engine, but i forgot his name

Indeed it has, just someone sent link to this page on chat, probably due to googling


Feature/surrogate

"SurrogateFunction" class constructs a surrogate to approximate a real function based on the basis function chosen for the surrogate and level of approximation.

@mzbush adding you as a reviewer for these changes and tests


[BUG] Error nonce too low when sending ARB

Describe the bug
When sending ARB the pairing device ends with an error nonce too low even tho the transaction goes through.
To Reproduce
Steps to reproduce the behavior:

Send ARB
Wait on keysign to complete
See error

Expected behavior
All devices are congruent with messages
Screenshots

-Version 33

As discussed in discord the error message is correct but we would need a way to display this error as an advisory and still display the tx hash


Let DatasourceAutoconfiguration create DS

For #128

We'll also need to update the SQL starter README.

@artembilan would you be able to help us get Ollie or Phil to validate this approach?

Hence the first ping that we needed validation on this approach.
The first iteration of the starter produces a datasource, but the datasource couldn't be configured via the properties.
We wanted to make sure the datasource connection pool is configurable. We can do it in two ways, one is to have our own datasource configuration prefix, e.g., spring.cloud.gcp.sql.datasource, or, we can utilize the existing one.
If we use our own prefix, then it seems like we'd have to duplicate the logic to detect different datasource pool implementations (hikari, tomcat, etc).
Or, we could re-use the the existing configurations spring.datasource.*, and the only thing we really want to auto-configure is the driver class and JDBC URL.
This current POC is trying to auto-configure driver class and JDBC URL so that Spring Boot's DataSourceAutoconfiguration can manage the creation of the datasource as before. There is little reason to duplicate that logic.

For reference, the approach to use our own prefix is here: here: https://github.com/spring-cloud/spring-cloud-gcp/pull/137

There is something like EnvironmentPostProcessor to "hack" the properties before auto-configuration: https://docs.spring.io/spring-boot/docs/current/reference/html/howto-spring-boot-application.html#howto-customize-the-environment-or-application-context.
Don't you think that may help somehow here do not reinvent the wheel?

Absolutely didn't want to re-invent the wheel - Just want to make sure overriding the property values here is an OK approach. Happy to know a mechanism to do this as well.
Just to be sure, we'll need to:

add the post processor and register in spring.factories
create a new PropertySource and set the spring.datasource.url properties, etc.
add the newly created PropertySource to last, this way, user defined spring.datasource.url will still override our configuration.  We do need to warn the user or fail fast though if they specified spring.cloud.gcp.sql.... and still defined their own spring.datasource.url

@artembilan I've looked into EnvironmentPostProcessor. It seems to be harder to implement what we need. I.e., the post processor is triggered before any of the autoconfiguration is done and it can't inject any dependencies, such as the CloudSqlJdbcInfoProvider.
Is there any other way to produce the override spring.datasource properties so that we don't need to redo the logic in DatasourceAutoConfiguration?

Is there any other way to produce the override spring.datasource properties so that we don't need to redo the logic in DatasourceAutoConfiguration?

Sorry for delay, @saturnism , I couldn't come back to you quickly because I just didn't have any appropriate answer for you.
So, if we can't use EnvironmentPostProcessor just because we really depend on some  auto-configuration (CloudSqlJdbcInfoProvider), let's forget this variant!
Let's just live with the current state as is!
Too much time has already spent without results...
Or... if it is really acceptable by Spring Boot team to let us override DataSourceProperties from our auto-confing before DataSourceAutoConfiguration, let's take a look what we can do on the matter!
WDYT?

Right, that is the place I've seen your comment:

but it looks like the property overriding approach is good from spring team.

So, can we go this way trying to override DataSourceProperties.setUrl() from our auto-config ?

@artembilan not sure if I'm following the reasoning here.
Currently, we're building our own DataSource, which mirrors a lot of what happens already in spring-jdbc. We could go on and manually add all the other DataSource configuration options, but it would be a lot of duplicate code, and we would only support Hikari DataSources.
Using the alternative suggested here by @saturnism , we would be able to fully leverage the existing DataSource construction mechanisms in spring-jdbc to build Hikari, but also Tomcat, etc. DataSources, and fully customize them.
I'm not sure what the drawbacks of this approach are, but if any, would they outweigh the benefit of not having any code duplication and providing all this support?
Either way, let's clarify which way we want to go and act fast here, since this is probably the only remaining issue before we can go M1. Hopefully by the end of next week we could have an M1 release!

Yes, I agree with all your comments.
Let's try to come up with the solution to override options in the DataSourceProperties and then let Spring Boot auto-configuration to make its work around DataSource population!

@artembilan so, just to be absolutely clear, you agree with what we're doing on this PR? :smile:

you agree with what we're doing

I agree with the idea, but I didn't tell that code is ideal.
Just don't overuse my reputation! :wink
I will come back to overview the code the next week when it will be rebased and polished.
Thanks for trusting me still! 😄

Yes, just wanted to validate the approach here of mutating the properties in a @Configuration file as opposed to using alternatives like EnvironmentPostProcessor.
There are still unresolved comments in the code and it needs a rebase on master.

Oh, sorry! I somehow pushed commit to your branch: https://github.com/spring-cloud/spring-cloud-gcp/pull/129/commits/9d3c57faf526a68c979ec599204f77c575715140.
I hope you'll find it useful anyway since it resolves our concerns.

interesting, I tried a similar approach. although the tests passed - the actual app using wasn't able to create the datasource.  i'll have to test it out again.

yeah, as suspected, this didn't work for me in an real app either:
ava.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.springframework.boot.maven.AbstractRunMojo$LaunchRunner.run(AbstractRunMojo.java:527)
        at java.lang.Thread.run(Thread.java:748)
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration': Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Tomcat.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.apache.tomcat.jdbc.pool.DataSource]: Factory method 'dataSource' threw exception; nested exception is org.springframework.boot.autoconfigure.jdbc.DataSourceProperties$DataSourceBeanCreationException: Cannot determine embedded database driver class for database type NONE. If you want an embedded database please put a supported one on the classpath. If you have database settings to be loaded from a particular profile you may need to active it (no profiles are currently active).
        at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:749)
        at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:189)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1193)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1095)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:513)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:483)
        at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
        at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:372)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1173)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1067)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:513)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:483)
        at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
        at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1078)
        at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:857)
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:543)
        at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:122)
        at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:693)
        at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:360)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:303)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1118)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1107)
        at com.example.gcpdemo.GcpDemoApplication.main(GcpDemoApplication.java:26)
        ... 6 more
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Tomcat.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.apache.tomcat.jdbc.pool.DataSource]: Factory method 'dataSource' threw exception; nested exception is org.springframework.boot.autoconfigure.jdbc.DataSourceProperties$DataSourceBeanCreationException: Cannot determine embedded database driver class for database type NONE. If you want an embedded database please put a supported one on the classpath. If you have database settings to be loaded from a particular profile you may need to active it (no profiles are currently active).
        at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:599)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1173)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1067)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:513)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:483)
        at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
        at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:208)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1138)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1066)
        at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:835)
        at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:741)
        ... 34 more
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.apache.tomcat.jdbc.pool.DataSource]: Factory method 'dataSource' threw exception; nested exception is org.springframework.boot.autoconfigure.jdbc.DataSourceProperties$DataSourceBeanCreationException: Cannot determine embedded database driver class for database type NONE. If you want an embedded database please put a supported one on the classpath. If you have database settings to be loaded from a particular profile you may need to active it (no profiles are currently active).
        at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:189)
        at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:588)
        ... 47 more
Caused by: org.springframework.boot.autoconfigure.jdbc.DataSourceProperties$DataSourceBeanCreationException: Cannot determine embedded database driver class for database type NONE. If you want an embedded database please put a supported one on the classpath. If you have database settings to be loaded from a particular profile you may need to active it (no profiles are currently active).
        at org.springframework.boot.autoconfigure.jdbc.DataSourceProperties.determineDriverClassName(DataSourceProperties.java:246)
        at org.springframework.boot.autoconfigure.jdbc.DataSourceProperties.initializeDataSourceBuilder(DataSourceProperties.java:183)
        at org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration.createDataSource(DataSourceConfiguration.java:42)
        at org.springframework.boot.autoconfigure.jdbc.DataSourceConfiguration$Tomcat.dataSource(DataSourceConfiguration.java:56)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:162)
        ... 48 more

@saturnism ,
One more attempt then!
If this last commit doesn't work too, let's come back to your original solution with the @Primary DataSourceProperties bean definition!

@artembilan i tried both of those tricks (PostControl and afterPropertiesSet earlier too ;) it didn't work for me... this new update didn't work either :( I'm not entirely sure why.

@joaoandremartins can you try the PR branch and see if Artem's latest change works for you?
i.e., https://help.github.com/articles/checking-out-pull-requests-locally/

I suggest we release Ray's changes. They will make the API set in stone and then we can iterate on the best way of mutating the properties object instead of generating a new pointer. We need to get this M1 out the door ASAP!
Thoughts?

We need to get this M1 out the door ASAP!

OK. Fine with me.
But how about to give it a last chance tomorrow together and try to figure out what's going on in debug mode? I believe that pairing on the the same machine may bring some interesting results.
If we don't have anything valuable, we'll definitely go the bean override way.

@artembilan how does your configuration look like for the case where it works? Do you specify driver-class-name or url anywhere?

If you're using a configuration similar to the below and nothing else, then you should be seeing the same thing as we are.
spring.cloud.gcp.sql.instance-connection-name=[instance-connection-name]
spring.cloud.gcp.sql.database-name=[db-name]
spring.datasource.username=[username]
spring.datasource.password=[password]

I don't have anything specific. I only run tests in this project.
Well, that might be a signal that we just don't have an appropriate test to reflect what you have in your target application since all tests pass, but your app doesn't.

Definitely worth investigating why these changes didn't trigger off any tests.
We should also roll back @artembilan 's changes and then possibly merged this PR.
@saturnism @artembilan thoughts?

OK. After some debugging the  spring-cloud-gcp-sql-example I have figured out what's going on.
There is WebController which is autowired with the JdbcTemplate. The first one is end user bean so it is initialized as early as possible to let to override auto-configurations. Since it must be initialized the last one is initialized for injection as well. But this one indeed pulls the DataSource bean, which, in turn, pulls the DataSourceProperties. And that one comes as a default one. No body in this cycle is going to call our CloudSqlJdbcInfoProvider to let it to mutate DataSourceProperties!
So, let's really revert all my changes and merge it as is - with the @Primary for the DataSourceProperties!
I still don't like this approach though, but we can live with it for now.

@artembilan I reverted your commits. This is ready for another review!

Good. Thanks, @joaoandremartins !
Would you mind to explain why now we have too much not related to the subject changes in this PR?

Thanks for the catch, I fixed it.
We still need docs here, but I suggest we address that in a separate PR so as not to drag this any more.
There's also the issue where the password is null in the tests, but an empty password is working when I manually test it.
WDYT?

Docs in the separate issue/PR.
We can't assume what database vendor is going to use end-user, so we can't make an assumption about null instead of empty string. We can make empty string from null configuration property, but I doubt we can opposite...


[QUERY] Service Bus SDK: How to identify Deferred messages from Peeking results?

I'm using the Microsoft.Azure.ServiceBus package to access Azure Service Bus and I'm using the version 4.1.3.
Due to the fact that the Microsoft.Azure.ServiceBus.Message class doesn't have State available in the SystemProperties (as opposed to the BrokeredMessage class in the old WindowsAzure.ServiceBus package), I wonder how to identify Deferred messages from the message browsing results using methods like PeekAsync?
Note I've seen some duplicate issues/requests being reported and open on the old archived repo, like this and this. I also noticed the team was planning to put State property back to the latest Service Bus SDK. But is there a plan to add the State to the message model or is there a work around for the current Microsoft.Azure.ServiceBus SDK?

@kenans Are you seeing deferred messages when browsing. That should not be the case. Deferred messages must show up only when received with the specific sequence number.

@axisc Thank you for the response!
I understand that we can use the SequenceNumber to track the Deferred messages. But in our use case, the app is monitoring the Service Bus queue by browsing all the existing messages and acting based on the message type (Active/Deferred/Scheduled).
I did some tests and I think we can use ScheduledEnqueueTimeUtc to tell if the message is Schduled type.
Doing the same tests on the Deferred message, unfortunately I wasn't able to find a pattern. That's actually why I'm opening the issue and ask the question.

@kenans curious as to how you are browsing deferred and scheduled messages together. Could you share the code snippet?

@kenans  closing this issue for now. Please feel free to open a new one if this is still an open question.
From the perspective of identifying deferred messages, the only way is to store the sequence numbers of the messages that were deferred and checking against that list.


Update DefaultWatchServerClient.php

Event if I deactivate the watch server in the symfony config it executes this watcher and I get some warning, that the socket is not available or broken pipe warnings. What do you think to prevent warnings like this?

I'm not in favor of silencing the warnings. But could you share the warnings and your config?

The watcher was inspired from Symfony. Symfony silence this warnings too. If i create the watcher i think about it and for the first, i remove the silence operator. But after rethinking, it make sense to silence it. It is annoying to activate and deactivate the listener over the config, if you don't use the watch server currently. So for me it is 👍 to silence it.
But we have a bug in the DI. The watch listener should be registered if you deactivate the watch server in the configuration. I open a bug ticket for it: https://github.com/patchlevel/event-sourcing/issues/260


find error bug?

hi, I  find an error bug in data_augment.py,
fixed it like:
in mirror function: boxes[:, 0::2] = width - boxes[:, 0::2]
in OBBTrainTransform function: boxes[:, :8] = boxes[:, :8] * r

thank you！I will fix this soon.
bianlongpeng @.***> 于2022年11月13日周日 15:20写道：

hi, I find an error bug in data_augment.py,
[image: image]
https://user-images.githubusercontent.com/22487109/201510589-d00ea9a7-115e-415e-addf-2d7459008ec1.png
fixed it like: boxes[:, 0::2] = width - boxes[:, 0::2]
—
Reply to this email directly, view it on GitHub
https://github.com/DDGRCF/YOLOX_OBB/issues/33, or unsubscribe
https://github.com/notifications/unsubscribe-auth/APFM3AA3GBRDLRXB7I6ILMTWICJEJANCNFSM6AAAAAAR6YFLTM
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


Use a testing framework

It would be good to start adding tests to this.

Hi, im new to contributing but i would like to contribute to this project.
I can use rspec and capybara to start testing models. would that be ok approach?

Yeah, that would be good, as long as @SalGnt is ok with it?

This is being worked on in #4

I'm totally fine with this, I'm new to Rails and I never used a testing framework.


Test Scrolling and Folding API commands within VSCodeVim

As VSCodeVim is doing differently as Vim example, I'd like to test against latest VSCode Vim bits as well, all test scenarios are the same as #11127. The only difference is the setup steps

[ ] any OS @alexandrudiam

Clone the repository VSCodeVim
Install dependencies by following https://github.com/VSCodeVim/Vim/blob/master/.github/CONTRIBUTING.md#first-time-setup
Open VS Code on VSCodeVim
Run the extension using Launch Extension.

Complexity 4 as well.

Basically it appears to me that out of that list the following work correctly:

z + z
z + c (without counts)
z + o (without counts)


GettingStarts demo not work at Dva2.x?

Code to reproduce the issue: (请提供可复现的代码或者步骤)
Have tried the same code with gettingstarts.md
Expected behavior: (预期的正常效果)
Add dispatched +1  and async minus dispatched to -1 after 1 second
Actual behavior: (实际效果)
In redux devTools only see add@start,add@end and minus,but it dosen't add 1 when click the plus button
Versions of packages used: (哪个库的哪个版本出现的问题)
<EMAIL_ADDRESS>

same issue here, please guide.
<EMAIL_ADDRESS>


Request -- please add AeroTower Air Purifying Fan (U9CV1C)

If possible, please add support for LG model U9CV1C PuriCare AeroTower Air Purifying Fan

yes please. I also looking for integration to this Air purifier too. Much appreciated.


#11 - Changed query to use prepared statements

Updated SQL query to use prepared statements for SQL injection prevention
Fixed #11

issue #11 closed


Move file validation functions to dmutils.documents

Move file validation functions to dmutils.documents
Extracts file validation checks from validator class to standalone
functions. Validate methods are preserved and call added functions.
Adds validate_documents and filter_empty_files methods used to
check request.files for any errors before uploading documents to
S3.
Use framework slug as the S3 documents folder
Separating documents for each framework would allow us to control
access using nginx - e.g. redirecting /g-cloud-7 asset URLs to a
static page until G-Cloud 7 goes live.
All existing documents are still in the '/documents' folder, but
future document uploads for G5 and G6 will end up in separate
folders.
Add public argument to document_upload
Allows setting the S3 file object ACL:

public=True sets ACL to "public-read"
public=False sets ACL to "private"

:+1:


feat(http): impl IntoFuture for requests, deprecate exec()

Depends upon #1897.

Can the clippy lint be ignored? I think it's complaining about 0.14 not being defined (current Twilight version is 0.13). Should this PR bump all crates to 0.14?

I think it wants you to say 0.14.0

what do you think of putting this in response::future
pub(crate) type ResponseFutureOutput<T> = Result<Response<T>, Error>;

I'm generally not a big fan of types as they, without an IDE, can be irritating to resolve (especially private one's as rustdoc don't make them clickable).


fix event loop warning

Implemented in this commit: https://github.com/Indicio-tech/acapy-wallet-upgrade/commit/d96872078e74893c48bf5f951ee1e409e1404feb


Make hotkeys configurable

Right now, the hotkeys are forced to be alt + ctrl, but it would be nice if those could be configured.
That would probably mean adding some kind of popup UI.

Currently, the hotkeys work by listening to keydown event. That's fine.
But it would be great if the chrome.commands is used instead. This supports custom hotkeys as well.

Of course! I think it's a good idea. 👍

Hello,
We have an exciting opportunity for you! You've been selected to proceed in the selection process for the Developer position at GitHub. Congratulations on your achievement!
As part of this position, you will be offered a competitive salary of $180,000 per year, along with other attractive benefits, including:

Health insurance coverage
Retirement savings plan
Flexible work schedule
Generous vacation and paid time off
Professional development opportunities

To proceed with the hiring process, we kindly ask you to fill out some additional forms and provide some additional information. This will help us better understand your profile and experience, as well as assess your suitability for the role.
Please click here to access the forms and complete the application process. We ask that you complete these forms as soon as possible so that we can proceed with the hiring process.
Important: You have 24 hours to complete the application process.
If you have any questions or need further information, please don't hesitate to contact us.
Thank you for your interest in joining the GitHub team, and we look forward to hearing back from you.
Best regards,
GitHub Recruitment Team
buaakael, @ajaxbo360, @cobycloud, @Dhanushdhaari, @usernamedlo, @PaulRBerg, @gngchrs, @DreadedGenius, @GausPeerzade, @rootvar, @CyrilCartoux, @N0xMare, @fredyhenaodev, @omnimark, @neopunisher, @bobjia, @jacobhtkh, @meterai07, @johntran, @gusakovm


ADD C++ Frontend

It turns out that the parser used in clang, which is used in the C frontend, supports parsing C++ code as well. So let's just use that.


Update lang version

Purpose
Examples
Checklist

[ ] Linked to an issue
[ ] Updated the changelog
[ ] Added tests

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


fix: serverIdleTimeOut -> serverIdleTimeout

Use consistent name for the option. The variable is named serverIdleTimeout and this also seems the proper camelcasing of the words.
This addresses #7631.

Thanks @lervag ! Can you please sign the Scala CLA? https://www.lightbend.com/contribute/cla/scala

Thanks @lervag ! Can you please sign the Scala CLA? https://www.lightbend.com/contribute/cla/scala

Done ✅


bazel build from docker error

Issue Type
Bug
Modules Involved
Others
Have you reproduced the bug with SPU HEAD?
Yes
Installation Kind
source
SPU Version
36f25ba
OS Platform and Distribution
windows
Python Version
3.8
Compiler Version
gcc 11.2
Current Behavior?
when using docker from windows to install spu.
I run
docker run -d -it --name spu-gcc11-anolis-dev-$env:UserName `
     --mount type=bind,source="$(Get-Location)",target=/home/admin/dev/ `
     -w /home/admin/dev `
     --cap-add=SYS_PTRACE --security-opt seccomp=unconfined `
     --cap-add=NET_ADMIN `
     --privileged=true `
     secretflow/spu-ci:latest

and
docker exec -it -(name_of_container) bash
bazel build //... -c dbg

and the output is:

the bazel version from docker image is 5.4.0
(fix): this error doesn't exist if i delete the .bazelversion file.
Standalone code to reproduce the issue
![image](https://user-images.githubusercontent.com/16702475/232710396-3491aae1-ff89-462d-bd46-c0c0bacd2df5.png)

Relevant log output
No response

Hi @AdijeShen
Can you check image sha256 of secretflow/spu-ci:latest?

Hi @AdijeShen
Can you check image sha256 of secretflow/spu-ci:latest?

It's 72101c026b93b2abaec890365ffea891a7d95cac4f3c31eaee062a3a03958801 and from 3 weeks ago

Hi @AdijeShen
Just noticed you were directly calling /usr/local/lib/bazel/bin/bazel.
Is there any reason to do this?

Hi @anakinxc
just type bazel results the same.
I use /usr/local/lib/bazel/bin/bazel because the error message says "it wasn't found in /usr/local/lib/bazel/bin"

so what's the output of
 bazel --version

in your case?

so what's the output of
 bazel --version

in your case?

5.4.0

Hi @AdijeShen
Can you provide a full repro step?
Just tried with the docker image you specified, everything works as expected.
Thanks

# enter an empty dir
mkdir C:\workspace\test
cd C:\workspace\test

# clone the spu repo
git clone https://github.com/secretflow/spu --depth=1
cd spu

# run the docker
docker run -d -it --name spu-gcc11-anolis-dev-$env:UserName-1 `
     --mount type=bind,source="$(Get-Location)",target=/home/admin/dev/ `
     -w /home/admin/dev `
     --cap-add=SYS_PTRACE --security-opt seccomp=unconfined `
     --cap-add=NET_ADMIN `
     --privileged=true `
     secretflow/spu-ci:latest

docker exec -it  spu-gcc11-anolis-dev-$env:UserName-1 bash

# just type bazel / enter to see the error msg
```
![image](https://user-images.githubusercontent.com/16702475/233028504-ca1d93bc-894c-45ca-ba08-e44699bf0609.png)

I must specify that I only test it with docker desktop in windows, are your test environment is windows?

# enter an empty dir
mkdir C:\workspace\test
cd C:\workspace\test

# clone the spu repo
git clone https://github.com/secretflow/spu --depth=1
cd spu

# run the docker
docker run -d -it --name spu-gcc11-anolis-dev-$env:UserName-1 `
     --mount type=bind,source="$(Get-Location)",target=/home/admin/dev/ `
     -w /home/admin/dev `
     --cap-add=SYS_PTRACE --security-opt seccomp=unconfined `
     --cap-add=NET_ADMIN `
     --privileged=true `
     secretflow/spu-ci:latest

docker exec -it  spu-gcc11-anolis-dev-$env:UserName-1 bash

# just type bazel / enter to see the error msg

I must specify that I only test it with docker desktop in windows, are your test environment is windows?

辛苦贴下你的gcc跟cmake版本

Hi @AdijeShen
This issue is caused by git converted LF to CRLF on Windows.
There are two solutions here:

do git config --global core.autocrlf false and clone spu again
run sed $'s/\r$//' .bazelversion > .bazelversion to convert .bazelversion back to LR

Thanks


C headers (.h) give out c++ warnings

Hello, sorry if this is my mistake due to a lack of understanding of how clangd works. I am editing a c header file (.h), but clangd detects it as a c++ header file and gives out warnings like the following:
ISO C++11 does not allow conversion from string literal to 'char *'

which was triggered when working with the following line:
static char *font = "monospace:pixelsize=12:antialias=true:autohint=true";

This results in having so many errors that clangd just stops.
I have a .clangd file in the same directory of the file I am working with, which contains this:
If:
  PathMatch: .*.h
CompileFlags:
  Add: [-xc-header]

I might have some errors in my code, and the line itself might be wrong even in C (even though it works), but I want to know why is clangd giving me C++ warnings.
I have also tried using -xc and --language=c, but I still have the same problem.
Clangd is working properly with .c files by the way.
System information
Output of clangd --version: clangd version 12.0.1
Editor/LSP plugin: coc.nvim, whith coc-clangd
Operating system: Arch Linux x64

I believe this is due to a clangd bug which has been fixed in trunk (targeting 13.0): https://github.com/clangd/clangd/issues/555.
Does your project have a compilation database (compile_commands.json)? That should allow you to avoid this problem even in earlier versions.

I believe this is due to a clangd bug which has been fixed in trunk (targeting 13.0): #555.
Does your project have a compilation database (compile_commands.json)? That should allow you to avoid this problem even in earlier versions.

Hello, I have generated a compilation database and now everything works as intended. Sorry for the trouble.


Getting new path of saved image

Hi all,
I couldn't find it, but how do i get the new path of the image? I am using the ImagePicker library to take the picture, however this library creates a file in the cache of the app directory. After i move it to the gallery i would like to delete the cached file and continue with the new path. How would one proceed with this?
Thanks!

Hi @joeywittig thank you for contribution 🤝

this library creates a file in the cache of the app directory.

Is this about Android? Then that cache could be the file itself, not the cache. android 10 and later generally saves media in the apps folder and reflects it in the gallery by the MediaStore library.
Also, currently gal does not provide a way to retrieve the path after saving. Please consider creating a new issue as a Feature Reuquest if needed.
If you have any questions, feel free to mentions me!

hmmm. this transition may has a problem.

my bad, ImagePicker makes a cached version of the file.

Hi @joeywittig Thank you for your contribution 🤝
Yes. latest version of this package should not include the operation of saving to the app directory.

Note that there is currently no functionality in this package to retrieve the path after saving. If you need it, please consider registering a feature request issue.
If you have any questions, feel free to mention me! If not, I would be happy to close this🙂


Add validation for response codes

Implements #34
This is a basic code: 2xx type of validation, which I think is a good start. However, I do think the discussion on #6 is interesting too. Implementing something with flexibility to allow things like code: Code(200-399) code: Code(2xx) or code: Code(200 | 201) would be really cool.
What are your thoughts? Is it worth tackling the more flexible form?

Very useful and well-done implementation!
I think it's not that worth to put effort into the more flexible solution. Of course, it'd be a bit more flexible but I think most of the time the user just want to check whether the response code is in a field of e.g. 2xx or 4xx.


Idea: Call to action to fix handbook pages

Improvement Idea: Adds the call to action to fix types etc in the page footer. I'd been kinda blocked on this on the design side but I'm happy with this now

The page loaded timing comes from @tkadlec's site - given the site can run with JS disabled has few images, and is statically hosted. I'd like to hope that number is very low.
  window.onload = function() {
            setTimeout(function() {
                window.performance = window.performance || window.mozPerformance || window.msPerformance || window.webkitPerformance || {};
                var t = performance.timing || {};

                if (!t) {

                    return;
                }
                var start = t.navigationStart,
                    end = t.loadEventEnd
                loadTime = (end - start) / 1000;

                var copy = document.querySelectorAll('.copy');
                copy[0].innerHTML += "
This page loaded in " + loadTime + " seconds.
";
            }, 0);
        }

Looks like 1.5s on uncached and 0.3s for cached on http://www.staging-typescript.org

This is in with #553


Angular injection parameter resolution errors with core modules

I am currently receiving the following error when trying to inject page into a component:
Error:(13, 2) Angular: Can't resolve all parameters for LoginComponent in /Users/vincecooley/Projects/partnerpay/app/login/login.component.ts: ([object Object], [object Object], [object Object], ?).
My current code looks like:
import { Page } from 'ui/page';

export class LoginComponent {
  constructor(\* . . . \* private page: Page) {}
}

I have found a workaround that fixes these errors, which is to use the full path for the page module (i.e. import { Page } from 'tns-core-modules/ui/page';). I do not like this approach though, since it is not the standard way to import the core modules in {N}.

Hi @vcooley,
The both ways are correct to import the Page while using ui/page or the full path tns-core-modules/ui/page.
I tested the both ways on my side and they are working as expected and I could access the page without any issues on both iOS and Android.
For your convenience I am attaching sample project, please review it and make the needed changes, which will allow me to reproduce the issue.
Regarding that, any further info about your environment will also help(CLI, tns-core-modules, node versions)
Archive.zip

I believe I found the issue. I had a mismatched version number for @angular/language-service installed (used ^4.1.0 where all my other Angular packages were ~4.1.0).

Well, I managed to fix that problem by making @angular/language-service match the installed version of angular (switched from ^4.1.0 to ~4.1.0 to match other Angular packages). However, I am now getting another error for each of those instances where I'm injecting page:
Error:(13, 2) Angular: Error encountered resolving symbol values statically. Could not resolve ui/page relative to /Users/vincecooley/Projects/my-project/app/login/login.component.ts.

Hi @vcooley
The second error might be related to webpack. Make sure that you are using the latest version of nativescript-dev-webpack 0.7.3. Regarding the problem, could you send us your project package.json file. Also any additional information about the problem will help.

I am not currently using webpack. Here is my current package.json. Thanks for taking a look.
{
  "description": "NativeScript Application",
  "license": "SEE LICENSE IN <your-license-filename>",
  "readme": "NativeScript Application",
  "repository": "<fill-your-repository-here>",
  "nativescript": {
    "id": "org.nativescript.MyProject",
    "tns-ios": {
      "version": "3.0.1"
    },
    "tns-android": {
      "version": "3.0.1"
    }
  },
  "scripts": {
    "lint": "tslint 'app/**/*.ts?(x)'",
    "test ios": "tns test ios",
    "test android": "tns test android"
  },
  "dependencies": {
    "@angular/animations": "~4.1.0",
    "@angular/common": "~4.1.0",
    "@angular/compiler": "~4.1.0",
    "@angular/core": "~4.1.0",
    "@angular/forms": "~4.1.0",
    "@angular/http": "~4.1.0",
    "@angular/platform-browser": "~4.1.0",
    "@angular/platform-browser-dynamic": "~4.1.0",
    "@angular/router": "~4.1.0",
    "card-validator": "^4.1.0",
    "chai": "^3.5.0",
    "chai-as-promised": "^6.0.0",
    "codelyzer": "^3.0.0-beta.4",
    "crypto-js": "^3.1.9-1",
    "datasets-us-states-names": "^1.0.0",
    "datasets-us-states-names-abbr": "^1.0.0",
    "lodash": "^4.17.4",
    "nativescript-advanced-webview": "^1.1.3",
    "nativescript-angular": "~3.0.0",
    "nativescript-async": "^1.0.2",
    "nativescript-drop-down": "^3.0.2",
    "nativescript-floatingactionbutton": "^3.0.0",
    "nativescript-geolocation": "^3.0.0",
    "nativescript-iqkeyboardmanager": "^1.1.0",
    "nativescript-numeric-keyboard": "^3.0.3",
    "nativescript-sqlite": "^1.1.3",
    "nativescript-telerik-ui-pro": "file:./nativescript-ui-pro.tgz",
    "nativescript-theme-core": "^1.0.4",
    "nativescript-unit-test-runner": "^0.3.4",
    "nock": "^9.0.13",
    "oauth": "file:./scripts/oauth",
    "reflect-metadata": "~0.1.8",
    "rxjs": "~5.3.1",
    "squel": "^5.8.0",
    "tns-core-modules": "~3.0.1",
    "tslib": "^1.6.1",
    "zone.js": "~0.8.10"
  },
  "devDependencies": {
    "@angular/language-service": "~4.1.0",
    "@types/jasmine": "^2.5.47",
    "babel-traverse": "6.24.1",
    "babel-types": "6.24.1",
    "babylon": "6.17.0",
    "chai": "^3.5.0",
    "del": "^2.2.2",
    "gulp": "^3.9.1",
    "gulp-mocha": "^4.3.1",
    "gulp-shell": "^0.6.3",
    "jasmine": "^2.5.3",
    "karma": "^1.5.0",
    "karma-chai": "^0.1.0",
    "karma-jasmine": "^1.1.0",
    "karma-junit-reporter": "^1.2.0",
    "karma-mocha": "^1.3.0",
    "karma-nativescript-launcher": "^0.4.0",
    "karma-sinon": "^1.0.5",
    "karma-spec-reporter": "0.0.30",
    "lazy": "1.0.11",
    "mocha": "^3.2.0",
    "mocha-jenkins-reporter": "^0.3.7",
    "mocha-typescript": "^1.0.23",
    "nativescript-dev-android-snapshot": "^0.*.*",
    "nativescript-dev-typescript": "~0.4.2",
    "q": "^1.5.0",
    "sinon": "^2.1.0",
    "tns-platform-declarations": "^3.0.1",
    "tslint": "^4.5.1",
    "typescript": "~2.3.4",
    "vinyl-paths": "^2.1.0",
    "wd": "^1.2.0",
    "zone.js": "~0.7.2"
  }
}

@vcooley, can you share your tsconfig?

{
    "compilerOptions": {
        "module": "commonjs",
        "target": "es5",
        "experimentalDecorators": true,
        "emitDecoratorMetadata": true,
        "noEmitHelpers": true,
        "noEmitOnError": true,
        "skipLibCheck": true,
        "strictNullChecks": true,
        "lib": [
            "es6",
            "dom",
            "es2015.iterable",
            "es2016.array.include"
        ],
        "baseUrl": ".",
        "paths": {
            "*": [
                "./node_modules/tns-core-modules/*",
                "./node_modules/*"
            ]
        }
    },
    "exclude": [
        "node_modules",
        "platforms",
        "**/*.aot.ts",
        "android.d.ts",
        "_helpers.d.ts"
    ]
}


DAOhaus: connect to safe doesn't work on Polygon/Gnosis Chain

Open DAOhaus on Polygon/Gnosis Chain - https://app.safe.global/apps/open?safe=matic%3A0xb412684F4F0B5d27cC4A4D287F42595aB3ae124D&appUrl=https%3A%2F%2Fdapp.daohaus.club%2F

current result: There is no autoconnection to the safe and no possibility to do it

Expected result: either the issue with connection should be fixed or the app should be hidden

FYI @scottrepreneur, please fix on your side. Disabled the app on these chains for now.


Export TimerResult and TimerError, as requested in #61

EventLoopError and EventLoopResult, as well as IoHandle, have all already
been made public.
Fixes #61

Merged c3a4d21de2b252e1f59dbda9387502841cf18bf5


Update get-started.mdx

the previous command wasnt actually creating it to the framework as next, changing the tag is initializing the next project
Summary

the command was about starting a new next project, but it is instead just running to create a normal project
Screenshots (optional)
previous

hello @IgorMinar can you look into this once

Thanks for the PR @swarajbachu 🙂
Could you please update your PR to use the PacakgeManager starlight component (see starlight-package-managers) we're now using across the docs?
Something like:
<PackageManagers type="create" pkg="cloudflare@latest" args="--framework=next" />

That will make sure that we do get the right command for the various package managers 🙂

sure, lemme do that

starlight-package-managers

just one thing to note is that this means it will appear
this way
npm create cloudflare@latest -- --framework=next
instead of
npm create cloudflare@latest my-next-app -- --framework=next
or I can do <PackageManagers type="create" pkg="cloudflare@latest my-next-app" args="--framework=next" />
but it doesn't seem to be a good practice

@dario-piotrowicz updated the way you mentioned for now

@swarajbachu thanks so much for updating the guides, it's really very much appreciated!
As you pointed out in your comment my suggestion wasn't actually fully correct (I did it on the spot as an example without checking things too much, sorry for the confusion)
I think that the right change would then be:
<PackageManagers
	type="create"
	pkg="cloudflare@latest"
	args="my-next-app --framework=next"
/>

This does seem to produce the correct results:
and it's not, as far as I can tell, bad practice or anything like that.
What do you think? could you make this one last change? (to all the guides as well 😅) 🙏

hmm yeah cool, now I am might as well do that

hmm yeah cool, now I am will do that

@swarajbachu thanks a lot! ❤

and do you want me to also add bun?

I'm not sure 😕 (I guess it depends how much extra code that would entail)
I'd avoid that for now, the best person to ask would be @KianNH, but he's currently on holiday I believe
I'm not sure if Kian has already considered/looked into bun, to avoid delays with merging this PR I would just avoid adding bun and potentially think of such addition as a followup 🙂

hmm yeah cool, now I am will do that

@swarajbachu thanks a lot! ❤

and do you want me to also add bun?

I'm not sure 😕 (I guess it depends how much extra code that would entail)
I'd avoid that for now, the best person to ask would be @KianNH, but he's currently on holiday I believe
I'm not sure if Kian has already considered/looked into bun, to avoid delays with merging this PR I would just avoid adding bun and potentially think of such addition as a followup 🙂

cool lemme do the remaining changes then

@dario-piotrowicz  done dude

@swarajbachu sorry I was unable to review the PR yesterday 🙇, I'm having a look right now 🙂

Fantastic job @swarajbachu, thanks so very much for the various updates! 🫶
I've left a few comments for things that need amending, besides these small changes it looks great to me 😄

I'll hop in and do the Hexo one in a separate PR.
Thanks for the contribution, @swarajbachu, I'll merge as soon as checks pass. Definitely appreciate the help here making sure other folks don't run into the issue you experienced.


Enum support

Thanks realy usefull plugin! Could you please fix enum support? It is not working. Parcelable item does not present in Generate menu for enum type. Thanks!

Could you paste some source that does not work?

Hi. Please see screenshots:
https://gyazo.com/979adf5424d22b198b07830079217998 https://gyazo.com/741cc9dc6c5af9c5ed93d0d085877b12
Android studio 2.1.3

Oh, that's what you meant. I guess it could be implemented by parcelling the ordinal. The same is done when you generate a class with an enum field. For now, you can parcel it as a class field. Implementing this seem completely feasible, since you don't actually need to parcel the enum's contents.


The application form for 00011 needs to be able to allow the candidate to fully explain why they meet the Additional Selection Criteria

https://admin.judicialappointments.digital/exercises/EMZEoUTXaqhUBvvrPEyv/
Is your feature request related to a problem? Please describe.
The non-legal team need to be able to assess a candidates Additional Selection Criteria and present the application form does not allow sufficient flexibility to be able to do this.
Describe the solution you'd like
The text within the Statutory Eligibility box needs to be formatted.
There needs to be three boxes under the heading of additional criteria:
i) statutory eligbility critera
ii) Additional selection criteria where the Welsh speaking requirement is addressed, with an associated yes/no field placed underneath for applicants’ response.
iii) Additional information
Describe alternatives you've considered
If the boxes cannot be added the last three could be put into one box but the titles will need to be formatted in bold and a yes/no field incorporated.
Additional context
Add any other context or screenshots about the feature request here.

Hey @Rebecca-mcknight1991 or @ClaireTroughtonJAC please can we discuss what is needed here. It's not quite clear to me yet.

@warrensearle ticket #198 is a similar ticket - does that one make more sense?

Hey @Rebecca-mcknight1991 both tickets are valid:

admin#280 to cover the required changes to Admin
apply#198 to cover the required changes to Apply
It's just that they're not quite clear yet - I think it's best to talk through the requirements then we can refine the tickets together.


Migrate to updated Chainlink Oracles

Still need to wait for Johan to ping us. New oracle proxy is not ready yet.

Completed on mainnet: set Gelato oracle address to 0x415aF7E00C8019c28f66675941495D8A00eC9752 (Chainlink Proxy on mainnet)
No Proxy on Rinkeby yet


Generate changelog for Liquibase from DBeaver

I was wandering if you could add an opportunity to generate changelog file for selected DB.
Sometimes I start up new projects from the beginning, when there is no DB at all. I create a first version of DB schema using DBeaver. I do it from UI. Than I need to create a changelog.xml file using Liquibase to put it to VCS as a kind of "init scripts" for DB.
I do this scenario several times until we don't have an agreement with a customer or my team.
It will be really convenient to have a special button somewhere in context menu to generate this file.
Script example of using Liquibase to generate changelog:
liquibase --driver=oracle.jdbc.OracleDriver \       --classpath=\path\to\classes:jdbcdriver.jar \       --changeLogFile=com/example/db.changelog.xml \       --url="jdbc:oracle:thin:@localhost:1521:XE" \       --username=scott \       --password=tiger \       generateChangeLog
Documentation is here

@tchibatron
You gan get Liquibase changelog in XML format from preview compare results window by selection format in Report type dropdown

Unfortunately this is not convenient way. I your case I must compare my DB with another one. In my case I have only one DB.

We'll this feature in 6.1.1 EA. Generally it will work very similarly to schema compare but with empty target snapshot.

verified


As per root example. How to know the parent of 122 selected child?

As per your example bellow.. I would love to know how is the parent of 122 nodes. would you suggest how I can find out?
tree = new TreeModel();
root = tree.parse({
    id: 1,
    children: [
        {
            id: 11,
            children: [{id: 111}]
        },
        {
            id: 12,
            children: [{id: 121}, {id: 122}]
        },
        {
            id: 13
        }
    ]
});

It should return me the ans id 12.

Not sure I understand the issue/question. If you have the node 122 then the parent property points to node 12.
const node122 = root.first(node => node.model.id === 122)
const node12 = node122.parent


Storybook menu on device not hiding with update 3.2.15

Hi,
since the update to 3.2.15 the storybook menu on the simulators (android and ios) is not completely hiding anymore.

This duplicates https://github.com/storybooks/storybook/issues/2301 and has been fixed on master. We will publish a new version soon.


Admins can require that developers sign off on commits made in the web interface

Summary
This feature will let admins require developers to sign off on commits made through GitHub's web interface, such as when editing a file or merging a pull request. It will also make it easier for developers to complete those signoffs.
Note: Signing off on a commit is different than signing a commit, such as with a GPG key.
Background
The Git command line interface has a --signoff option that developers use to sign off on their commits. Many open-source organizations require developers to sign off on changes to affirm their compliance with repository rules and licensing. Git's --signoff option appends a specially formatted line to the commit message, as shown here:
Signed-off-by: Mona Lisa<EMAIL_ADDRESS>
This text is often called a “DCO signoff” because the most common signoff agreement is the Developer Certificate of Origin (DCO) from the Linux Foundation.
Problems
Open-source projects often use pull request checks to block commits from being merged unless they're signed off. Here’s an example of a commit being blocked in the open-source Gradle Profiler repository which requires DCO signoffs:

This problem is more likely when committing from GitHub's web interface where Git’s --signoff option isn't available. To sign off there, developers must manually add the Signed-off-by: text to their commit message. That's easy to overlook or misformat, resulting in the commit being blocked from merging. Resolving this situation can be complicated and slow developers down, as shown in these instructions to fix one commit:

In the words of an open-source contributor:

As a pull request reviewer, this is my biggest pain point. If someone forgets to manually sign off on a commit in the web UI, the pull request check fails, and the only resolution is to rebase or squash and force push to fix the commit message. Either way, the review history becomes unclear. This is high friction for new/infrequent contributors and people forget.

Intended Outcome
This feature will simplify signing off on commits made in GitHub's web interface so that it's easier for developers, fewer commits are blocked from merging, and less time is spent resolving the blocked commits.
How will it work?

Admins will be able to toggle a setting that requires developers to sign off on commits made through GitHub's web interface.
When the setting is enabled, the web interface will inform developers that their action of committing will also constitute signing off. It will look similar to the mocked-up image below. Like using Git's --signoff option on the command line, signing off in GitHub's web interface will automatically append the Signed-off-by: text to the developer's commit message.

Other information
Related to this feature, GitHub is planning a repository protection that blocks commits that aren't signed off, whether the commits are made in GitHub's web interface or pushed from the command line or another Git client.
We appreciate feedback on this and other topics in GitHub's public feedback discussions.

this has shipped to dotcom! 🚢 https://github.blog/changelog/2022-06-08-admins-can-require-sign-off-on-web-based-commits/


Simple adc_get_value function non-existant

When developing new functions from the already existing ones, it is very easy to get lost on the code. Simple functions, such as adc_get_value do not exist (or we have not been able to find them). Maybe a certain set of basic functions should be defined so that everyone can build their applications from them.

Yeah, I agree. Would be helpful for development and testing.
Which return value would you like to have? The raw ADC reading? Or a value in millivolts? Maybe a function for both...
I'm actually working on the ADC myself at the moment because we experienced some inaccuracies (maybe caused by a bug in the calibration). So I might implement it straight away.

At the moment we are trying to get raw values to start our development chain. Values in milivolts would be interesting as well, but maybe they should be thought within the context of a wider vision. Right now we have structures that hold values, device tree definitions that hold multpliers/dividers and all of that is put together through .c and .cpp drivers. I think (it's only my opinion) that the overall architecture of the code is too complex.
Ideally we should aim for something like:

Measurement
Decision (Algorithm)
Action (PWM and others)

All the base measurement functions should be easily available and all the base action functions as well. That's ADC and HRTimer right now.
More complex measurements (i.e. updating values to milivolts or putting them within a table of sorts) should be a second class of API. More complex actions are GPIO based (activating a mosfet for measurement) or a DAC (for measuring bi-directional current or using HRTimer advanced current functions).
Algorithms are very specific to the application, but there are basically two types: DC reference tracking or AC reference synchronization. In either case, we'll need a PID to be tuned to the parameters of the system. So, in algorithmic terms, we should aim for specific self-tuning functions coupled with generic PID (CMSIS) functions.
We are working towards this genericity based goal. I know it is different from the work at LibreSolar, but I do think you guys could benefit from a more simplified and generic code for creating future applications and educating people in terms of power electronics.

Which return value would you like to have? The raw ADC reading? Or a value in millivolts? Maybe a function for both...

Both, I think it would take a function that returns a raw value in daq_driver.c, and functions that convert those values in daq.cpp...


Memory leak in function 'sc_adb_list_devices'

The memory leak is found by a static analyzer developed at CAST.
The memory allocated in buf is not freed before return

Thank you. Fixed by 3333e67452e52a1e0cd1c68181067f9eccdeb582 on dev branch.


[BugFix] fix get partition names when table has bool type partition column using glue

Fixes #issue
When the table has a bool type partition column, based on the current AWS SDK version and hms->glue project we do not support getting the partition names of glue.  https://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/services/glue/model/GetPartitionsRequest.html#withExpression-java.lang.String-
we need to use others way to get partition column names when table has bool type column.
What type of PR is this:

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

Does this PR entail a change in behavior?

[ ] Yes, this PR will result in a change in behavior.
[x] No, this PR will not result in a change in behavior.

If yes, please specify the type of change:

[ ] Interface/UI changes: syntax, type conversion, expression evaluation, display information
[ ] Parameter changes: default values, similar parameters but with different default values
[ ] Policy changes: use new policy to replace old one, functionality automatically enabled
[ ] Feature removed
[ ] Miscellaneous: upgrade & downgrade compatibility, etc.

Checklist:

[ ] I have added test cases for my bug fix or my new feature
[ ] 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:

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

[x] 3.2
[ ] 3.1
[ ] 3.0
[ ] 2.5

[FE Incremental Coverage Report]
:disappointed: fail : 9 / 12 (75.00%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
com/starrocks/connector/hive/HiveMetastore.java
5
8
62.50%
[144, 145, 146]

:large_blue_circle:
com/starrocks/connector/hive/HiveMetadata.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/catalog/HiveTable.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/connector/hive/HiveMetastoreOperations.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/connector/hive/CachingHiveMetastore.java
1
1
100.00%
[]

[BE Incremental Coverage Report]
:heart_eyes: pass : 0 / 0 (0%)

[BE Incremental Coverage Report]
:heart_eyes: pass : 0 / 0 (0%)

[FE Incremental Coverage Report]
:disappointed: fail : 13 / 17 (76.47%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
com/starrocks/catalog/HiveTable.java
0
1
00.00%
[239]

:large_blue_circle:
com/starrocks/connector/hive/HiveMetastore.java
7
10
70.00%
[145, 146, 147]

:large_blue_circle:
com/starrocks/connector/hive/HiveConnectorInternalMgr.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/connector/hive/HiveMetadata.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/connector/delta/DeltaLakeInternalMgr.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/connector/hive/HiveMetastoreOperations.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/connector/hudi/HudiConnectorInternalMgr.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/connector/hive/CachingHiveMetastore.java
1
1
100.00%
[]

[FE Incremental Coverage Report]
:heart_eyes: pass : 14 / 17 (82.35%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
com/starrocks/connector/hive/HiveMetastore.java
7
10
70.00%
[145, 146, 147]

:large_blue_circle:
com/starrocks/connector/hive/HiveConnectorInternalMgr.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/connector/hive/HiveMetadata.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/connector/delta/DeltaLakeInternalMgr.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/catalog/HiveTable.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/connector/hive/HiveMetastoreOperations.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/connector/hudi/HudiConnectorInternalMgr.java
1
1
100.00%
[]

:large_blue_circle:
com/starrocks/connector/hive/CachingHiveMetastore.java
1
1
100.00%
[]

[BE Incremental Coverage Report]
:heart_eyes: pass : 0 / 0 (0%)

@Mergifyio backport branch-3.2


Helm 3 install chart with NFS mount got mount failed

Output of helm version:
version.BuildInfo{Version:"v3.0.0-beta.3", GitCommit:"5cb923eecbe80d1ad76399aee234717c11931d9a", GitTreeState:"clean", GoVersion:"go1.12.9"}

Output of kubectl version:
Client Version: version.Info{Major:"1", Minor:"15", GitVersion:"v1.15.3", GitCommit:"2d3c76f9091b6bec110a5e63777c332469e0cba2", GitTreeState:"clean", BuildDate:"2019-08-19T12:36:28Z", GoVersion:"go1.12.9", Compiler:"gc", Platform:"darwin/amd64"}

Server Version: version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.10", GitCommit:"37d169313237cb4ceb2cc4bef300f2ae3053c1a2", GitTreeState:"clean", BuildDate:"2019-08-19T10:44:49Z", GoVersion:"go1.11.13", Compiler:"gc", Platform:"linux/amd64"}

Cloud Provider/Platform (AKS, GKE, Minikube etc.):
Self-hosting Kubernetes Cluster on DELL R930 Servers.

I am using Helm 2 install stable/redis-ha, and it works fine.
But when I change the Helm 3, with same arguments, it faced:
MountVolume.SetUp failed for volume "pvc-d7ffe33c-d796-11e9-8568-801844f0932c" :
mount failed: exit status 32

Mounting command: systemd-run
Mounting arguments:
--description=Kubernetes transient mount for /var/lib/kubelet/pods/d802cecd-d796-11e9-8568-801844f0932c/volumes/kubernetes.io~nfs/pvc-d7ffe33c-d796-11e9-8568-801844f0932c
--scope
-- mount -t nfs <IP_ADDRESS>:/mnt/data/super-kubernetes/my-space/data-redis-ha-server-0 /var/lib/kubelet/pods/d802cecd-d796-11e9-8568-801844f0932c/volumes/kubernetes.io~nfs/pvc-d7ffe33c-d796-11e9-8568-801844f0932c

Output:
Running scope as unit: run-r717513c4480b481ea2e4f0e3486caaeb.scope
mount.nfs:
access denied by server while mounting <IP_ADDRESS>:/mnt/data/super-kubernetes/my-space/data-redis-ha-server-0

The NFS storage I used is FreeNAS, and the storageClass is freenas-provisioner,
The PV and PVC was successful created on my FreeNAS just like I am using Helm 2.
refs: https://github.com/nmaupu/freenas-provisioner
I am not sure if this a Helm 3 problem, but I works fine with Helm 2.
I thought the key point maybe access denied by server while mounting ...,
I had check the NFS services, and found that /mnt/data/super-kubernetes/my-space/data-redis-ha-server-0 did not exist at all.
Maybe the freenas-provisioner are not compatible?

@zx1986 In Helm 2, default Tiller has 'GOD' mode and is allowed to perform any operation in the cluster. When you install the chart then the operations are performed as Tiller.
In Helm 3, operations are now performed as the current Kube context. Therefore, it is as that context and using the rights of that context.
I wonder do you have the correct RBAC permissions to mount the volume using the context that you are installing the chart with?

Hi, @zx1986 - hopefully the reply back in September (explaining the way the permissions model changed in Helm 3) helps. Please let us know if you have further questions.


ocamlPackages.camomile: 1.0.2 → 2.0.0

Description of changes
https://github.com/ocaml-community/Camomile/blob/v2.0.0/CHANGES.md
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

See https://github.com/NixOS/nixpkgs/pull/242103.

Result of nixpkgs-review pr 257196 run on x86_64-linux 1

3 packages built:

headache
liquidsoap
soupault

@GrahamcOfBorg build headache liquidsoap soupault


Auto filters not included in the output after rendering

I created an xlsx template, with column headers in the first row, and set auto filters on (Data > Filter menu in Excel). The results after rendering were correct except that the auto filter was missing.
I corrected this in the package code on my PC by copying the auto_filter setting in basex.py, SheetBase.copy_sheet_settings()
self.wtsheet.auto_filter = copy.copy(self.rdsheet.auto_filter)
This worked fine in my case, because I had filters on the first row, however it will not work properly if the result of rendering moves the position of the cells being filtered.

Support for auto filter has been added.
Please upgrade you xltpl package.

Thanks, works for me. Sorry about delay on closing.


Where is the code?

Good work. 👍
But I just found data in this repo, where is the code?

Thanks for your interest. @AKBakshay will be committing the code base for the XMLC soon. Apologies for the delay. We'll inform you when it's there.

Hi @WrRan , @AKBakshay has committed the code from the paper this past week.  Hope it is in good order!

Many thanks!


CUDA memory allocation error!

RuntimeError: CUDA out of memory. Tried to allocate 20.00 MiB (GPU 0; 11.17 GiB total capacity; 10.41 GiB already allocated; 5.81 MiB free; 10.54 GiB reserved in total by PyTorch)
How to set limit for the memory allocation by CUDA?
I have tried this too: export PYTORCH_CUDA_ALLOC_CONF=max_split_size_mb:128
But still it is failing!
StackTrace:
raceback (most recent call last):
  File "src/train.py", line 264, in <module>
    train()
  File "src/train.py", line 211, in train
    y_predict = deep_punctuation(x, att)
  File "/root/banglaDariComma/lib/python3.7/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
    return forward_call(*input, **kwargs)
  File "/root/punctuation-restoration/src/model.py", line 28, in forward
    x = self.bert_layer(x, attention_mask=attn_masks)[0]
  File "/root/banglaDariComma/lib/python3.7/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
    return forward_call(*input, **kwargs)
  File "/root/banglaDariComma/lib/python3.7/site-packages/transformers/modeling_bert.py", line 734, in forward
    encoder_attention_mask=encoder_extended_attention_mask,
  File "/root/banglaDariComma/lib/python3.7/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
    return forward_call(*input, **kwargs)
  File "/root/banglaDariComma/lib/python3.7/site-packages/transformers/modeling_bert.py", line 408, in forward
    hidden_states, attention_mask, head_mask[i], encoder_hidden_states, encoder_attention_mask
  File "/root/banglaDariComma/lib/python3.7/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
    return forward_call(*input, **kwargs)
  File "/root/banglaDariComma/lib/python3.7/site-packages/transformers/modeling_bert.py", line 369, in forward
    self_attention_outputs = self.attention(hidden_states, attention_mask, head_mask)
  File "/root/banglaDariComma/lib/python3.7/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
    return forward_call(*input, **kwargs)
  File "/root/banglaDariComma/lib/python3.7/site-packages/transformers/modeling_bert.py", line 315, in forward
    hidden_states, attention_mask, head_mask, encoder_hidden_states, encoder_attention_mask
  File "/root/banglaDariComma/lib/python3.7/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
    return forward_call(*input, **kwargs)
  File "/root/banglaDariComma/lib/python3.7/site-packages/transformers/modeling_bert.py", line 236, in forward
    attention_scores = attention_scores / math.sqrt(self.attention_head_size)

You can try a smaller --batch-size or --sequence-length

Got it!. Thank you!