Unable to mount azureud volume using plugin: error = "missing instance ID"

Summary
Attempting to mount an azureud volume using REX-Ray results in VolumeDriver.Mount: {"Error":"missing instance ID"}.
Bug Reports
This section is for issues that relate to discovered problems or bugs.
Version
Please paste the output of rexray version. For example:
rexray version
time="2017-05-16T17:45:11Z" level=info msg="updated log level" logLevel=debug
time="2017-05-16T17:45:11Z" level=debug msg=os.args time=1494956711437 val=[rexray version]
time="2017-05-16T17:45:11Z" level=debug msg="completed cli execution" time=1494956711437
time="2017-05-16T17:45:11Z" level=info msg="exiting process" time=1494956711437
time="2017-05-16T17:45:11Z" level=debug msg="completed onExit at end of program" time=1494956711437
REX-Ray
-------
Binary: /usr/bin/rexray
Flavor: client+agent+controller
SemVer: 0.9.0+10
OsArch: Linux-x86_64
Branch: release/0.9.1
Commit: b9066f16a125c85b1ae479ef5439b6869cca1d25
Formed: Mon, 15 May 2017 23:18:15 UTC

libStorage
----------
SemVer: 0.6.0
OsArch: Linux-x86_64
Branch: (detached from fa055d6
Commit: fa055d6da595602715bdfd5541b4aa6d4dcbcbd9
Formed: Mon, 15 May 2017 23:16:58 UTC

Expected Behavior
Volume is mounted in container
Actual Behavior
swarm-manager000000:~$ docker run -it -v something5:/jd busybox /bin/bash
docker: Error response from daemon: error while mounting volume '/var/lib/docker/plugins/f219c3b77daf5d699ef0ccab5abb03a68f11b78bd378842599f5fcc31f7a0e4c/rootfs': VolumeDriver.Mount: {"Error":"missing instance ID"}.

Steps To Reproduce
Please list the steps to reproduce the issue in this section.

The first step should always be enabling debug logging.

Open the file /etc/rexray/config.yml
Set the log level for both REX-Ray and libStorage to debug and enable
HTTP request and response tracing for libStorage:

rexray:
  logLevel:        debug
libstorage:
  logging:
    level:         debug
    httpRequests:  true
    httpResponses: true

Build managed docker volume plugin and install on Azure Instance:
swarm-manager000000:~/rexray_0.9.1$ DRIVERS=azureud make docker-build-plugin
RESULT:

swarm-manager000000:~/rexray_0.9.1$ docker plugin ls
ID                  NAME                            DESCRIPTION                       ENABLED
8e341ab829ce        rexray/azureud:0.9.0-10-dirty   REX-Ray for azureud               false

Set env vars necessary to connect to Azure Storage Account:
swarm-manager000000:~/rexray_0.9.1$ docker plugin set rexray/azureud:0.9.0-10-dirty AZUREUD_SUBSCRIPTIONID=d...0 AZUREUD_RESOURCEGROUP=abcd AZUREUD_TENANTID=5...4 AZUREUD_STORAGEACCOUNT=g...2 AZUREUD_STORAGEACCESSKEY=X...g== AZUREUD_CLIENTID=0...b AZUREUD_CLIENTSECRET=k...U AZUREUD_CONTAINER=rexrayvolumes

The list of attributes needed:

AZUREUD_SUBSCRIPTIONID
AZUREUD_RESOURCEGROUP
AZUREUD_TENANTID
AZUREUD_STORAGEACCOUNT
AZUREUD_STORAGEACCESSKEY
AZUREUD_CLIENTID
AZUREUD_CLIENTSECRET
AZUREUD_CONTAINER

Enable plugin and confirm

swarm-manager000000:~/rexray_0.9.1$ docker plugin enable rexray/azureud:0.9.0-10-dirty
swarm-manager000000:~/rexray_0.9.1$ docker plugin ls
ID                  NAME                            DESCRIPTION                       ENABLED
8e341ab829ce        rexray/azureud:0.9.0-10-dirty   REX-Ray for azureud               true

Create a volume
swarm-manager000000:~/rexray_0.9.1$ docker volume create -d rexray/azureud:0.9.0-10-dirty myvolume1
Confirm it exists in Azure UI:

Attempt to mount volume in a container

swarm-manager000000:~/rexray_0.9.1$ docker run -it -v myvolume1:/mv busybox /bin/bash
docker: Error response from daemon: error while mounting volume '/var/lib/docker/plugins/8e341ab829ce6d2ae3d2509d23736413be92375a4576af65d66ade1584115f38/rootfs': VolumeDriver.Mount: {"Error":"missing instance ID"}.

Configuration Files
Please paste any related configuration files, such as /etc/rexray/config.yml
in this section. Please use the appropriate formatting when pasting YAML.
content. For example:
rexray:
  loglevel: debug
libstorage:
  logging:
    level: debug
    httpRequests: true
    httpResponses: true
  service: azureud
  integration:
    volume:
      operations:
        create:
          default:
            fsType: ext4
        mount:
          preempt: true
  server:
    tasks:
      exeTimeout: 120s
    services:
      azureud:
        driver: azureud

Proper formatting of pasted content is very important as structured data can
sometimes be accidentally recorded incorrectly, affecting the desired outcome.
Logs
It is very important when filing an issue to include associated logs. There are
two different logs about which to be concerned: the service log (if REX-Ray is
running as a service) and the client log.
Service Log
The REX-Ray service log file is stored at /var/log/rexray/rexray.log. Instead
of pasting the entire log file into this issue, please create a new
gist and paste the log file's contents there.
Please name the file rexray-service.log in the gist. The proper extension will
indicate how to format the contents.
See gist
Client Log
The REX-Ray client will emit all of its logs to the console when operating with
debug logging enabled. Simply copy the contents of the console and paste them
into the same gist as above naming the file rexray-client.log.sh. The sh
extension will cause the contents to be formatted as if they were emitted
to the shell, which they were.
See gist
swarm-manager000000:~/rexray_0.9.1$ docker run -it -v myvolume1:/mv busybox /bin/bash
docker: Error response from daemon: error while mounting volume '/var/lib/docker/plugins/8e341ab829ce6d2ae3d2509d23736413be92375a4576af65d66ade1584115f38/rootfs': VolumeDriver.Mount: {"Error":"missing instance ID"}.

Still to be confirmed -- whether the "missing is" error is tied to "lsscsi" being present or not.

Closing this -- the "missing instance ID error is due to lsscsi missing from the box.  It'd be nice if the error message was more direct about the root cause.


Add product of first two primes.

I would like to offer another step toward infinity.

Thank you for taking the time to put this PR together. I've reviewed it and it looks good, plus the build is passing. I think this will make a great addition to the project for our user base!


Only use lsb-core instead of full suite of lsb packages

Fixes https://github.com/atom/atom/issues/7096
lsb is quite a large package – we should just use what we need (which is lsb-core)
Tested on Fedora 21 and OpenSUSE 13.2
/cc @kevinsawicki

:+1:


Adding itemExtent to ReorderableList and ReorderableListView

Added itemExtent argument to ReorderableList and ReorderableListView
Fixes #81290
Pre-launch Checklist

[x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[x] I read the Tree Hygiene wiki page, which explains my responsibilities.
[x] I read and followed the Flutter Style Guide, including Features we expect every widget to implement.
[x] I signed the CLA.
[x] I listed at least one issue that this PR fixes in the description above.
[x] I updated/added relevant documentation (doc comments with ///).
[x] I added new tests to check the change I am making or feature I am adding, or Hixie said the PR is test-exempt.
[x] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel on Discord.

Thanks so much for the contribution. This is a good addition to the API. Nice work.
I have a couple of comments and suggestions below.

Thank you :)
Also, should I add prototypeItem to these widgets? Like in ListView?

Also, should I add prototypeItem to these widgets? Like in ListView?

That would be another nice addition as well. If you feel comfortable adding that in this PR, then do so. Otherwise it could be in a follow on PR.


[MB-14563] Validate/fix payloads for GHC API

Jira ticket for this change
Summary
WIP
This PR validates (and in some cases, fixes) the response payloads for the GHC API.
Setup to Run Your Code

💻 You will need to use three separate terminals to test this locally.
Terminal 1
Start the Storybook locally.
make storybook

Terminal 2
Start the UI locally.
make client_run

Terminal 3
Start the Go server locally.
make server_run

Additional steps

Access the
Login as a

Verification Steps for Author
These are to be checked by the author.

[ ] Tested in the Experimental environment (for changes to containers, app startup, or connection to data stores)
[ ] Request review from a member of a different team.
[ ] Have the Jira acceptance criteria been met for this change?

Messages

:book:
:link: MB-14563

  Generated by :no_entry_sign: dangerJS against aaf23eaa2e91db27d552854f50485ecf302647b0


Creating a bright colored LED-like object in Mujoco ?

Hello everyone.
Thank you for your continued work on this library.
I am currently working with Mujoco as a wrapper over a real world Franka robotic arm.
More specifically, I am trying to create an object looking like a moderately bright LED.
For example, the blue status LED at the base of the Franka robotics Arm (picture below).
So far I have played with the light from the docs but it seems to only support general room lighting.
Is perhaps another way to achieve the aforementioned desired effect ?
Or more generally, an object that is emitting light ?
Thank you in advance for your time.
Looking forward to hear from you.
Best regards.

Check out the emission attribute of the material element description. You can assign it to a geom to have a bright object in scene. To turn it on or off, you could set the LED geom in a group of its own and disable/enable it through the visual options (check out the tutorial Colab to see how you can set visualization options). Alternatively you could change the material/color of the LED geom if you want to toggle it.
This should be enough for simple visualization/state feedback.

Thank you for your insightful answer !
I managed to get it working using <material name="EmissionObject" emission="1" [...] > and then <geom material="EmissionObject" [...] /> as suggested.
Closing the issue now.


[WIP] upgrade to OCaml 5

The issue of ppx is hard maybe. I have not yet been able to find a solution.
In the official OCaml 5, #require "ppx_deriving.show" prints ppx_deriving: package:ppx_deriving.show: option added at the last, but ocaml-jupyter (OCaml 5) does not.
$ ocaml
OCaml version 5.0.0

# #require "ppx_deriving.show";;
/Users/akabe/.opam/5.0.0/lib/result: added to search path
/Users/akabe/.opam/5.0.0/lib/result/result.cma: loaded
/Users/akabe/.opam/5.0.0/lib/ppx_deriving/runtime: added to search path
/Users/akabe/.opam/5.0.0/lib/ppx_deriving/runtime/ppx_deriving_runtime.cma: loaded
/Users/akabe/.opam/5.0.0/lib/ppx_deriving: added to search path
/Users/akabe/.opam/5.0.0/lib/ppx_deriving/./ppx_deriving: activated
/Users/akabe/.opam/5.0.0/lib/ppx_deriving/show: added to search path
ppx_deriving: package:ppx_deriving.show: option added

CI fails due to code format. Try make format.

Has there been any progress on this issueeeeee?


[AKS] Release for spot and autoscaler profile

This checklist is used to make sure that common guidelines for a pull request are followed.

For new extensions:

[ ] My extension description/summary conforms to the Extension Summary Guidelines.

If this PR is for a new extension or change to an existing extension, use the following to try out the changes in this PR:
docker run -it microsoft/azure-cli:latest
export EXT=<NAME>
pip install --upgrade --target ~/.azure/cliextensions/$EXT "git+https://github.com/marwanad/azure-cli-extensions.git@new-aks-cli#subdirectory=src/$EXT&egg=$EXT"


Makefile for pdpserver

This is Makefile for Pdpserver

Thanks for CR, I have added changes and pushed them.

Thanks,
Added -set_exit_status to lint.
-Pankaj
On Tue, Mar 28, 2017 at 10:50 AM, Vasili Vasilyeu<EMAIL_ADDRESS>wrote:

@vasili-v commented on this pull request.
In pdpserver/Makefile
https://github.com/infobloxopen/policy-box/pull/10#discussion_r108489716
:

@@ -0,0 +1,21 @@
+build:

go build

+.PHONY: clean
+clean:

go clean

+.PHONY: install
+install:

go install ./...

+.PHONY: lint
+lint:

go get -v github.com/golang/lint/golint

I see this works as it should:
[recon@xpbyminw1765 pdpserver]$ rm -rfv /Users/recon/Documents/Scripts/Infoblox/bin/golint
[recon@xpbyminw1765 pdpserver]$ make lint
Using GOPATH=/Users/recon/Documents/Scripts/Infoblox
go get -v github.com/golang/lint/golintgithub.com/golang/lint/golint
/Users/recon/Documents/Scripts/Infoblox/bin/golint http://github.com/golang/lint/golint/Users/recon/Documents/Scripts/Infoblox/bin/golint -set_exit_status ./...
config.go:10:6: exported type Config should have comment or be unexported
control.go:42:1: exported method Server.Upload should have comment or be unexported
...
trace.go:11:1: exported function InitTracing should have comment or be unexported
Found 39 lint suggestions; failing.
make: *** [lint] Error 1
[recon@xpbyminw1765 pdpserver]$ make lint
Using GOPATH=/Users/recon/Documents/Scripts/Infoblox
/Users/recon/Documents/Scripts/Infoblox/bin/golint -set_exit_status ./...
config.go:10:6: exported type Config should have comment or be unexported
control.go:42:1: exported method Server.Upload should have comment or be unexported
...
trace.go:11:1: exported function InitTracing should have comment or be unexported
Found 39 lint suggestions; failing.
make: *** [lint] Error 1
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/infobloxopen/policy-box/pull/10#discussion_r108489716,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACG6Sv55_8UHwOCcrJu2YqXLikZ5LT24ks5rqUhQgaJpZM4MpT3l
.

--
Best Regards,
Pankaj Chhabra

Merged using rebase-squash-merge approach
git remote add pankaj https://github.com/pankaj-chhabra/policy-box
git fetch pankaj
git checkout 2114e3226a68caadefbd173624526fdd5a784ae1 # Base for changes in pankaj/pankaj-branch-makefile branch
git rebase -i master # rebase and squash
git push -u origin pankaj-branch-makefile
# Made pull request from the branch and merged it
git branch -d pankaj-branch-makefile
git push origin :pankaj-branch-makefile


Row spans customization - Calendar

spans should not cover the date, they should start after the date, I tried adding crossAxis and mainAxis to the span widgets but it disrupts the UX

completed with margin.
Calendar:

  rowSpans:
    spanPerRow: 2
    topMargin: 18


Minification HTML out of the box

It would be good to get minification HTML functionality without the need for third-party extensions. Do you plan the implementation of this functionality in the near future?

No, we have no near term plans to do this.

@DmitriyKulagin What you do not like in existing solutions?

Being able to minify Razor files at "compile time" would be a great & a small performance increase. I know that you can minify the html at runtime but obviously this is not the best solution because of the extra processing required for every request.
I understand that there are currently a few more important features to roll out first but hopefully it might be something that can be revisited sometime in the future :)

I know that you can minify the html at runtime but obviously this is not the best solution because of the extra processing required for every request.

Yes, I agree with you that minification of HTML output at runtime has some additional costs, but at the moment it is the only available solution for ASP.NET Core (even Microsoft uses it).
For ASP.NET Core does not yet exist any finished solutions for minification of Razor views. Unfortunately, the old time-tested solutions for minification of Razor views (such as Meleze.Web, RazorHtmlMinifier.Mvc5 and Dean Hume's HTML Minifier) do not support .NET Core and modern Razor-syntax. Although I know of one unfinished solution for ASP.NET Core.
The main disadvantage of Razor views minification is that the blocks of web page into which HTML content is loaded from external sources (such as databases) remain unminified. I believe that the future behind hybrid approach, when we will use minification of Razor views together with minification of content by using HTML minifiers (for example, WebMarkupMin, NUglify, HtmlCompressor.Core, etc.) before saving it to external storage.

We periodically close 'discussion' issues that have not been updated in a long period of time.
We apologize if this causes any inconvenience. We ask that if you are still encountering an issue, please log a new issue with updated information and we will investigate.


Memcached provider showing error 40: FAILED TO SEND AUTHENTICATION TO SERVER, no mechanism available

I'm seeing the same problem as described in:
http://stackoverflow.com/questions/27837326/memcachier-add-on-for-cloudcontrol-is-failing
It occurs on both memcachier and memcachedcloud and I get errors like:
app/web.1: MemcachedError: error 40 from memcached_get(2e6c1c8:1:django.contrib.session): (0x7f5eb01733b0) FAILED TO SEND AUTHENTICATION TO SERVER, no mechanism available,  host: pub-memcache-18071.us-east-1-4.4.ec2.garantiadata.com:18071 -> libmemcached/sasl.cc:238

Do you know any way to fix the libmemcached that's included in the dyno?

Same issue with memcachier here: Error: error 40 from memcached_set: FAILED TO SEND AUTHENTICATION TO SERVER, no mechanism available, host:<PHONE_NUMBER>8e.us-east-4.heroku.prod.memcachier.com:11211 -> libmemcached/sasl.cc:221

MemcachedCloud use django_bmemcached.memcached.BMemcached as backend now so if you ever see this error I recommend you to switch (https://devcenter.heroku.com/articles/memcachedcloud#django)

Three years later I just ran into this same issue using Memcachier. Look there was a fix but perhaps a regression?

5 years  later and error stills appering error 40 from memcached_set: (0x56020fe4f070) FAILED TO SEND AUTHENTICATION TO SERVER, no mechanism available definitely the fix is changing to memcachedcloud


Pull in agents from LLM-VM-add-agents branch

These need a standardized interface (so they take tool descriptions of the same format), standardized documentation, to be updated to use the optimizing completion API, and test suites that actually work.  They should also be updated to use non-api tools (just closures).

Hi @mmirman ,
I'd like to work on this if you could guide me a bit on how I should proceed on this!

@Nike682631 Yes! post about it in the discord/engineering channel and lets discuss there

@AB3000 If you could briefly describe the state of that branch that would be super helpful!

[ ] These need a standardized interface (so they take tool descriptions of the same format),
[ ] standardized documentation,
[ ] to be updated to use the optimizing completion API,
[ ] and test suites that actually work.
[ ] They should also be updated to use non-api tools (just closures).

This should be done right ?


x

test

Codecov Report

:exclamation: No coverage uploaded for pull request base (develop@6ddddfb). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             develop      #14   +/-   ##
==========================================
  Coverage           ?   98.40%
==========================================
  Files              ?       67
  Lines              ?     5833
  Branches           ?        0
==========================================
  Hits               ?     5740
  Misses             ?       93
  Partials           ?        0

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 6ddddfb...b74f234. Read the comment docs.


Referencing a kubernetes secret for the value of OPENSEARCH_INITIAL_ADMIN_PASSWORD extraEnv

Is your feature request related to a problem? Please describe.
This is meant to avoid exposing the initial Admin password in the extraEnvs to someone with access to the cluster who's able to see the statefulset yaml
Describe the solution you'd like
Something like this:
  - name: OPENSEARCH_INITIAL_ADMIN_PASSWORD
    valueFrom:
      secretKeyRef:
        name: initial-admin-password
        key: password

referencing a key from a secret "initial-admin-password"

What about envFrom: [] :see https://github.com/opensearch-project/helm-charts/blob/main/charts/opensearch/values.yaml#L113C1-L118 ?


parameters to repeat the prediction on QM7b with a average kernel

Hi Dr Sandip and Professor Ceriotti,
I want to repeat your work in Science Advances in qm7b dataset. It looks like I did some steps wrong which always return MAE higher than 8 kcal/mol. Can you please give me some tips about which step I have made mistake?
What I did as follows.
1, I use
python glosim.py qm7.xyz -n 9 -l 9 -g 0.3 -c 3 --zeta 2 --peratom --kernel average

to generate the kernel matrix. According to the SI of your paper, the parameters should be -n 9 -l 9 -g 0.3 -c 3 --zeta 2 --periodic --norm , but I replaced the --periodic by --peratom, and deleted --nonorm because glosim.py had been updated.
2, I use the shufflesplit form scikit-learn to get the training kernel matrix and test kernel matrix. (I used random split, instead of choosing training set by FPS).
from sklearn.model_selection import ShuffleSplit
rs = ShuffleSplit(n_splits=10, test_size=.20, random_state=0) # 10 times independently running
train_index, test_index in rs.split(X):
    X_train, y_train = X[train_index][:, train_index], y[train_index]
    X_test, y_test = X[test_index][:, train_index], y[test_index]

3, I put X_train to a Gaussian Process Regression with different regularization parameters, and based on this to test the X_test.
The lowest MAE I got was 8 kcal/mol with average kernel (Cutoff_r = 4 A). The high MAE here may come from the random split, but I think it shouldn’t be responsible for a so high MAE. Can you please give me some suggestions?

an MAE of 8 kcal/mol is definitely not even close to the right ballpark. what are you using for training? make sure you learn the energies per atom, not the total atomization energy (i.e., that you divide the QM7 energies by the size of each molecule).

Thanks Prof Ceriotti, that's the point. I tried to learn total atomization energy instead of energies per atom. Now the MAE has been reduced to 0.7 kcal/mol. Thank you. Have a good weekend.


return exit code from run_dcos_command

cc @sschneid

@kensipe do you have an opinion on this one?

ping

This looks great!   Much better approach.


Fix release scripts

Add some missing dependencies in the Dockerfile:

apt-utils for apt-ftparchive.conf
bsdmainutils for our use of the column command in
hack/make/generate-index-listing

We also ensure that the docker daemon is started before calling
release-deb or release-rpm, since .detect-daemon-osarch, which is sourced
in each of them, requires the daemon to be running.
This commit also gets completely rid of s3cmd and fixes references to
AWS_* environment variables (changing from AWS_ACCESS_KEY to
AWS_ACCESS_KEY_ID and AWS_SECRET_KEY to AWS_SECRET_ACCESS_KEY) in order
to please awscli. Also AWS_DEFAULT_REGION is now important to specify,
the default has been set to the region used by get.docker.com and
test.docker.com.
Signed-off-by: Tibor Vass<EMAIL_ADDRESS>Related to #20114 and #20288

LGTM. There are probably ways to remove the requirement to start a daemon, but I don't think we should block on that.

:+1:

SGTM

Alright, thanks all, merging.


thank you -- this worked right away with no trouble (storybook, urql, vue3, graphql)

thank you! I initially tried using an urql-specific addon and there were many issues and it didn't work. I really like that its possible to generate dynamically created responses later if I need those
export const NORMAL = Template.bind({});
NORMAL.decorators = [ vueRouter() ];
NORMAL.parameters = {
  mockData: [{
    url: endpointUrl,
    method: 'POST',
    status: 200,
    response: {
      data: {
        getSelf: {
          id: 'id',
          name: 'name',
          email: 'email'
        }
      }
    }
  }]
};

Hi @iambumblehead ,
Did you use fetch to perform your API call in your Vue component ?
Or did you use axios ?

@ECW-HH I don't know how urql ultimately generates the request but I'll take a look now

https://github.com/FormidableLabs/urql/blob/main/packages/core/src/internal/fetchSource.ts#L26
I'm not sure where this "operation.context.fetch" is defined, but it is used to generate the urql request https://github.com/FormidableLabs/urql/blob/main/packages/core/src/internal/fetchSource.ts#L26

https://github.com/FormidableLabs/urql/blob/main/docs/api/core.md this document indicates "window.fetch" is used


Hdf5 TreeView

Current state
Provides an Hdf5 TreeView

Create the module silx.gui.hdf5 which expose few classes
Provide the example examples/hdf5widget.py
Can be launched using ./bootstrap.py python examples/hdf5widget.py

Missing features
As we said in the silx meeting, we can postpone all this missing features, if we want to have the widget next week for the code camp. The main widget is working. Let me know if something is really needed.

[ ] Update model to support weakref
[ ] Create signals for fileLoaded, beforeFileClosed (can abort close), fileClosed, fileSynchronized
[ ] Standard menu to close/sync (the example provide it by itself right now)
[ ] Improve sorting speed / sort initial items of the model
[ ] Improve the synchronized to take care of the state of the view (expanded/collapsed/selection should stay the same)
[ ] Clean up the code after merge of https://github.com/silx-kit/silx/pull/251

Under python 3.5, PyQt5, I get the error  in Hdf5HeaderView.py, line 53 in __init__  setClickable(True) Attribute error: Hdf5HeaderView object has no attribute setClickable. Under Python 2.7 PyQt4 the problem is not there.

Something to think about, links, particularly external ones should provide the actual file name and actual selection path used to retrieve the object.

Just to make it clearer. In fact every selection should report the file and path used to perform the selection and not just selections concerning links.

Good "starting" poing


res.One(&row) expecting slice

var row interface{}
res.One(&row)

Results in:
panic: result argument must be a slice address
Unexpected behaviour as not matching documentation on README

@pynoable hi, I can't reproduce this, see unittest https://github.com/rethinkdb/rethinkdb-go/blob/develop/cursor_test.go#L12
Can you specify more details?

Unable to reproduce myself now.


add support for ECS desiredCount mocking

This adds a 10s delay between setting desiredCount, and it being reflected in runningCount

let me know what you guys think of the pendingCount changes in the unittests. Also the tests can be sped up by mocking of threading.Timer...let me know if you guys want me do that

Coverage decreased (-0.06%) to 92.437% when pulling 3bcdfaf1edabe102d66a984fee754bd370a0ce9c on thehesiod:thehesiod/mock-running-count into 90a62b56400251620684a094d85e458bc3abb17e on spulec:master.

You could mock threading.Timer but that wouldn't work when moto is running in server mode would it?

Perhaps tests only run outside server mode?

Should we have a more general idea how we want to solve https://github.com/spulec/moto/issues/380 and https://github.com/spulec/moto/issues/192? It seems like this issue will come up for many services.

I think the general solution I think could build on this, by defining the timeout periods, etc

As a first step, it would be great to agree on our philosophy for this. I think we will need it for the docs anyway.
How does moto think of state changes? Are they immediate or delayed? If delayed, can the user choose a timeframe for the change or can they make it immediate?
Freezegun has this concept of ticking forward time. Should we be providing something similar for state?
Apologies for blocking this very helpful work on a broader conversation, but I think these questions are fundamental and this will be very helpful across all of Moto.
My initial thoughts: I like state changes not being immediate by default, but the ability for users to globally configure how long a state change should take (including the option of setting that delay at zero). Alternatively, I also like the idea of a user being able to tick forward state like Freezegun.
cc @JackDanger @mikegrima in case they might have opinions too

I think I would need more context.
However, I am generally against adding threading, timing delays, and other complex logic to moto. I agree with @spulec in this comment: https://github.com/spulec/moto/issues/380#issuecomment-123932483 -- if you have a need to do more special logic, then mock out the backend interface for your testing -- which is generally simple to do with pytest fixtures. In fact, I generally do with with IAM, which has a constant AWS account ID that is used to formulate the ARN -- I simply mock this value to the AWS account ID I am expecting.
It's very difficult to predict how users will expect their tests to operate, and I would prefer if we simply represent the data structure that AWS would be expected to return. Of course, you are then free to make whatever complex mocking logic you would like on your end to adjust the backend data for the test that you are looking to run.

What is the specific use case for this timeout?
If it's a common one, I'd feel comfortable if the default behavior is simply returning the expected response (current behavior), but allowing configurable options for enhanced behavior doesn't hurt.

it sounds like for my simple test perhaps to avoid the timeouts I'd have to do the whole work on actually supporting bringing some form of simple docker-based ECS clusters up/down.  That would solve my particular use case.
The timeouts in this particular case are to support the different task states: pending, desired, and running counts to ensure I test these three codepaths.

Freezegun idea is interesting, for me this would need to be supported in server mode. Also the botocore events model is interesting, where you could get called back to dynamically set the timeouts.

Yeah, I like the freezegun idea. We could add an endpoint for moto-core for server mode similar to the reset one.
I'm not sure what you mean with the botocore events model. Can you explain that more?

See https://botocore.amazonaws.com/v1/documentation/api/latest/topics/events.html. Basically you can register for various events to either observe or modify behavior

So perhaps could create events like before-transition.ecs.task.mode or something

It seems like a thread-based approach probably isn't our best option, so going to close this for now and copy the ideas here over to #192.


bad results report

Issue Template
Context
Please provide any relevant information about your setup.

Mavros: [0.18.4]
ROS: [ Kinetic]
Gazebo: [ 7]
Ubuntu: [16.04]
System Platform: [X86]

Expected Behavior
I hope the copter could perform better according to the command.
Current Behavior
Takeoff:
Sometimes when the copter takes off, it will fly higher than the expected location and then hovering around the destination. Sometimes, the copter may flies randomly after taking off.
Land:
During the landing process, the copter will keep fly forward. I hope the copter could land just right below or close to the point where it covering.
Flying mission
The copter has not succeeded flying in a square way. The slam will lose when the copter turning 90 degrees and then the copter will fly randomly.
In addition, according to the test tutorial, I have installed all the dependencies including Pangolin EIgen3 g2o PLC and Opencv.
I just want to ask it there results are normal or if I have missed some steps.
Screenshots
These are some screenshots of the trajectories when copters takes off.

I also simplifies the mission in square.py. I command the copter to fly to the right for 3 meters then turn around for 90 degrees, land finally. This is the results

Failure Logs
part of the console of slam :********* Tracking frame 2150 **********
I0510 16:05:06.864307 26386 TrackerLK.cpp:110] Tracking frame 1
I0510 16:05:06.879122 26389 BackendSlidingWindowG2O.cpp:133] new good points: 0 in total immature points: 0
I0510 16:05:06.879212 26389 BackendSlidingWindowG2O.cpp:156] Local BA cost time: 9.9e-08
I0510 16:05:06.879249 26389 BackendSlidingWindowG2O.cpp:182] Deleting KF 0
I0510 16:05:06.879266 26389 BackendSlidingWindowG2O.cpp:193] Erase KF in mpKFs
I0510 16:05:06.879516 26389 BackendSlidingWindowG2O.cpp:199] Done
I0510 16:05:06.879671 26389 BackendSlidingWindowG2O.cpp:427] Clean map point done, total bad points 1
I0510 16:05:06.879696 26389 BackendSlidingWindowG2O.cpp:165] Backend KF: 10, map points: 132
I0510 16:05:06.879714 26389 BackendSlidingWindowG2O.cpp:38] Process new KF done.
I0510 16:05:06.902025 26386 Tracker.cpp:1568] Quit iteration in: 10
I0510 16:05:06.904637 26386 Tracker.cpp:1586] Inlier/total=129/129
I0510 16:05:06.904803 26386 Tracker.cpp:1602] Estimated TCW =
0.0767104 00.983975 00.160963 0014.6661
-0.983889 0.0485575 00.172059 004.61203
00.161486 -0.171568 00.971847 0010.8394
000000000 000000000 000000000 000000001
I0510 16:05:06.932163 26386 ORBExtractor.cpp:470] Calling fast single level
I0510 16:05:06.935111 26386 TrackerLK.cpp:541] Detect new feature cost time: 0.00319594
I0510 16:05:06.938956 26386 TrackerLK.cpp:613] new stereo: 0, new Mono: 0, update immature: 0, total features: 129
I0510 16:05:06.939127 26386 TrackerLK.cpp:618] Create map point cost time: 0.00722153
I0510 16:05:06.939270 26386 Tracker.cpp:506] Insert keyframe done.
I0510 16:05:06.939328 26386 TrackerLK.cpp:235] Insert KF cost time: 0.0074259
I0510 16:05:06.939479 26386 TrackerLK.cpp:114] Tracking frame 2
I0510 16:05:06.939540 26386 TrackerLK.cpp:148] Tracking frame 3
I0510 16:05:06.939602 26386 TrackerLK.cpp:153] Tracker position = 1.68634,-12.7308,-13.6894,
vision pose: -14.9427, -10.4848, -4.37022
EstimatedPose : -14.9427, -10.4848, -4.37022
I0510 16:05:06.941656 26389 BackendSlidingWindowG2O.cpp:36] Process new KF
QObject::~QObject: Timers cannot be stopped from another thread
Console of px4 Firmware
... logging to /home/guo/.ros/log/bcb47986-72f9-11e9-9dbb-b0c0902a3964/roslaunch-guo-Lenovo-TianYi-100-14IBD-25090.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.
/opt/ros/kinetic/lib/python2.7/dist-packages/roslaunch/loader.py:409: YAMLLoadWarning: calling yaml.load() without Loader=... is deprecated, as the default Loader is unsafe. Please read https://msg.pyyaml.org/load for full details.
data = yaml.load(text)
started roslaunch server http://guo-Lenovo-TianYi-100-14IBD:43109/
SUMMARY
CLEAR PARAMETERS

/mavros/

PARAMETERS

/mavros/cmd/use_comp_id_system_control: False
/mavros/conn/heartbeat_rate: 1.0
/mavros/conn/system_time_rate: 1.0
/mavros/conn/timeout: 10.0
/mavros/conn/timesync_rate: 10.0
/mavros/distance_sensor/hrlv_ez4_pub/field_of_view: 0.0
/mavros/distance_sensor/hrlv_ez4_pub/frame_id: hrlv_ez4_sonar
/mavros/distance_sensor/hrlv_ez4_pub/id: 0
/mavros/distance_sensor/hrlv_ez4_pub/orientation: PITCH_270
/mavros/distance_sensor/hrlv_ez4_pub/send_tf: True
/mavros/distance_sensor/hrlv_ez4_pub/sensor_position/x: 0.0
/mavros/distance_sensor/hrlv_ez4_pub/sensor_position/y: 0.0
/mavros/distance_sensor/hrlv_ez4_pub/sensor_position/z: -0.1
/mavros/distance_sensor/laser_1_sub/id: 3
/mavros/distance_sensor/laser_1_sub/orientation: PITCH_270
/mavros/distance_sensor/laser_1_sub/subscriber: True
/mavros/distance_sensor/lidarlite_pub/field_of_view: 0.0
/mavros/distance_sensor/lidarlite_pub/frame_id: lidarlite_laser
/mavros/distance_sensor/lidarlite_pub/id: 1
/mavros/distance_sensor/lidarlite_pub/orientation: PITCH_270
/mavros/distance_sensor/lidarlite_pub/send_tf: True
/mavros/distance_sensor/lidarlite_pub/sensor_position/x: 0.0
/mavros/distance_sensor/lidarlite_pub/sensor_position/y: 0.0
/mavros/distance_sensor/lidarlite_pub/sensor_position/z: -0.1
/mavros/distance_sensor/sonar_1_sub/id: 2
/mavros/distance_sensor/sonar_1_sub/orientation: PITCH_270
/mavros/distance_sensor/sonar_1_sub/subscriber: True
/mavros/fake_gps/eph: 2.0
/mavros/fake_gps/epv: 2.0
/mavros/fake_gps/fix_type: 3
/mavros/fake_gps/geo_origin/alt: 408.0
/mavros/fake_gps/geo_origin/lat: 47.3667
/mavros/fake_gps/geo_origin/lon: 8.55
/mavros/fake_gps/gps_rate: 5.0
/mavros/fake_gps/mocap_transform: True
/mavros/fake_gps/satellites_visible: 5
/mavros/fake_gps/tf/child_frame_id: fix
/mavros/fake_gps/tf/frame_id: map
/mavros/fake_gps/tf/listen: False
/mavros/fake_gps/tf/rate_limit: 10.0
/mavros/fake_gps/tf/send: False
/mavros/fake_gps/use_mocap: True
/mavros/fake_gps/use_vision: False
/mavros/fcu_protocol: v2.0
/mavros/fcu_url<EMAIL_ADDRESS>/mavros/gcs_url:
/mavros/global_position/child_frame_id: base_link
/mavros/global_position/frame_id: map
/mavros/global_position/gps_uere: 1.0
/mavros/global_position/rot_covariance: 99999.0
/mavros/global_position/tf/child_frame_id: base_link
/mavros/global_position/tf/frame_id: map
/mavros/global_position/tf/global_frame_id: earth
/mavros/global_position/tf/send: False
/mavros/global_position/use_relative_alt: True
/mavros/image/frame_id: px4flow
/mavros/imu/angular_velocity_stdev: 0.02
/mavros/imu/frame_id: base_link
/mavros/imu/linear_acceleration_stdev: 0.0003
/mavros/imu/magnetic_stdev: 0.0
/mavros/imu/orientation_stdev: 1.0
/mavros/local_position/frame_id: map
/mavros/local_position/tf/child_frame_id: base_link
/mavros/local_position/tf/frame_id: map
/mavros/local_position/tf/send: False
/mavros/local_position/tf/send_fcu: False
/mavros/mission/pull_after_gcs: True
/mavros/mocap/use_pose: True
/mavros/mocap/use_tf: False
/mavros/odometry/in/child_frame_id: base_link
/mavros/odometry/in/frame_id: odom
/mavros/odometry/in/frame_tf/body_frame_orientation: flu
/mavros/odometry/in/frame_tf/local_frame: local_origin_ned
/mavros/odometry/out/frame_tf/body_frame_orientation: frd
/mavros/odometry/out/frame_tf/local_frame: vision_ned
/mavros/plugin_blacklist: ['safety_area', '...
/mavros/plugin_whitelist: []
/mavros/px4flow/frame_id: px4flow
/mavros/px4flow/ranger_fov: 6.8
/mavros/px4flow/ranger_max_range: 5.0
/mavros/px4flow/ranger_min_range: 0.3
/mavros/safety_area/p1/x: 1.0
/mavros/safety_area/p1/y: 1.0
/mavros/safety_area/p1/z: 1.0
/mavros/safety_area/p2/x: -1.0
/mavros/safety_area/p2/y: -1.0
/mavros/safety_area/p2/z: -1.0
/mavros/setpoint_accel/send_force: False
/mavros/setpoint_attitude/reverse_thrust: False
/mavros/setpoint_attitude/tf/child_frame_id: target_attitude
/mavros/setpoint_attitude/tf/frame_id: map
/mavros/setpoint_attitude/tf/listen: False
/mavros/setpoint_attitude/tf/rate_limit: 50.0
/mavros/setpoint_attitude/use_quaternion: False
/mavros/setpoint_position/mav_frame: LOCAL_NED
/mavros/setpoint_position/tf/child_frame_id: target_position
/mavros/setpoint_position/tf/frame_id: map
/mavros/setpoint_position/tf/listen: False
/mavros/setpoint_position/tf/rate_limit: 50.0
/mavros/setpoint_raw/thrust_scaling: 1.0
/mavros/setpoint_velocity/mav_frame: LOCAL_NED
/mavros/startup_px4_usb_quirk: True
/mavros/sys/disable_diag: False
/mavros/sys/min_voltage: 10.0
/mavros/target_component_id: 1
/mavros/target_system_id: 1
/mavros/tdr_radio/low_rssi: 40
/mavros/time/time_ref_source: fcu
/mavros/time/timesync_avg_alpha: 0.6
/mavros/time/timesync_mode: MAVLINK
/mavros/vibration/frame_id: base_link
/mavros/vision_pose/tf/child_frame_id: vision_estimate
/mavros/vision_pose/tf/frame_id: map
/mavros/vision_pose/tf/listen: False
/mavros/vision_pose/tf/rate_limit: 10.0
/mavros/vision_speed/listen_twist: True
/mavros/vision_speed/twist_cov: True
/mavros/wheel_odometry/child_frame_id: base_link
/mavros/wheel_odometry/count: 2
/mavros/wheel_odometry/frame_id: map
/mavros/wheel_odometry/send_raw: True
/mavros/wheel_odometry/send_twist: False
/mavros/wheel_odometry/tf/child_frame_id: base_link
/mavros/wheel_odometry/tf/frame_id: map
/mavros/wheel_odometry/tf/send: True
/mavros/wheel_odometry/use_rpm: False
/mavros/wheel_odometry/vel_error: 0.1
/mavros/wheel_odometry/wheel0/radius: 0.05
/mavros/wheel_odometry/wheel0/x: 0.0
/mavros/wheel_odometry/wheel0/y: -0.15
/mavros/wheel_odometry/wheel1/radius: 0.05
/mavros/wheel_odometry/wheel1/x: 0.0
/mavros/wheel_odometry/wheel1/y: 0.15
/rosdistro: kinetic
/rosversion: 1.12.14
/use_sim_time: True

NODES
/
gazebo (gazebo_ros/gzserver)
gazebo_gui (gazebo_ros/gzclient)
mavros (mavros/mavros_node)
sitl (px4/px4)
vehicle_spawn_guo_Lenovo_TianYi_100_14IBD_25090_5892815240772984067 (gazebo_ros/spawn_model)
auto-starting new master
process[master]: started with pid [25100]
ROS_MASTER_URI=http://localhost:11311
setting /run_id to bcb47986-72f9-11e9-9dbb-b0c0902a3964
process[rosout-1]: started with pid [25113]
started core service [/rosout]
process[sitl-2]: started with pid [25139]
node name: sitl
data path: /home/guo/catkin_ws/src/Firmware
commands file: /home/guo/catkin_ws/src/Firmware/posix-configs/SITL/init/ekf2/iris_stereo_gray_no_gps
65 WARNING: setRealtimeSched failed (not run as root?)

| ___ \ \ \ / /   /   |
| |/ /  \ V /   / /| |
|  __/   /   \  / /| |
| |     / /^\ \ ___  |
_|     /   /     |_/
px4 starting.
process[gazebo-3]: started with pid [25147]
process[gazebo_gui-4]: started with pid [25154]
process[vehicle_spawn_guo_Lenovo_TianYi_100_14IBD_25090_5892815240772984067-5]: started with pid [25159]
process[mavros-6]: started with pid [25160]
INFO  [dataman] Unknown restart, data manager file 'rootfs/fs/microsd/dataman' size is 11405132 bytes
INFO  [simulator] Waiting for initial data on UDP port 14560. Please start the flight simulator to proceed..
[ INFO] [1557475256.572810515]: FCU URL: udp://:14540@localhost:14557
[ INFO] [1557475256.577184771]: udp0: Bind address: <IP_ADDRESS>:14540
[ INFO] [1557475256.577387877]: udp0: Remote address: <IP_ADDRESS>:14557
[ INFO] [1557475256.577844825]: GCS bridge disabled
Gazebo multi-robot simulator, version 7.0.0
Copyright (C) 2012-2016 Open Source Robotics Foundation.
Released under the Apache 2 License.
http://gazebosim.org
[ INFO] [1557475256.615857364]: Plugin 3dr_radio loaded
[ INFO] [1557475256.620982244]: Plugin 3dr_radio initialized
[ INFO] [1557475256.621286055]: Plugin actuator_control loaded
[ INFO] [1557475256.630845175]: Plugin actuator_control initialized
[ INFO] [1557475256.647018084]: Plugin adsb loaded
[ INFO] [1557475256.663212473]: Plugin adsb initialized
[ INFO] [1557475256.663638018]: Plugin altitude loaded
[ INFO] [1557475256.676851706]: Plugin altitude initialized
[ INFO] [1557475256.677311405]: Plugin cam_imu_sync loaded
[ INFO] [1557475256.679476151]: Plugin cam_imu_sync initialized
[ INFO] [1557475256.680219681]: Plugin command loaded
[ INFO] [1557475256.706815624]: Plugin command initialized
[ INFO] [1557475256.707275688]: Plugin companion_process_status loaded
[ INFO] [1557475256.720203229]: Plugin companion_process_status initialized
[ INFO] [1557475256.720739406]: Plugin debug_value loaded
[ INFO] [1557475256.739027085]: Plugin debug_value initialized
[ INFO] [1557475256.739270099]: Plugin distance_sensor blacklisted
[ INFO] [1557475256.739733269]: Plugin fake_gps loaded
Gazebo multi-robot simulator, version 7.0.0
Copyright (C) 2012-2016 Open Source Robotics Foundation.
Released under the Apache 2 License.
http://gazebosim.org
[ INFO] [1557475256.833805376]: Plugin fake_gps initialized
[ INFO] [1557475256.834341910]: Plugin ftp loaded
[ INFO] [1557475256.848533727]: Finished loading Gazebo ROS API Plugin.
[Msg] Waiting for master.
[Msg] Connected to gazebo master @ http://<IP_ADDRESS>:11345
[Msg] Publicized address: <IP_ADDRESS>
[ INFO] [1557475256.858632841]: waitForService: Service [/gazebo/set_physics_properties] has not been advertised, waiting...
[ INFO] [1557475256.881393881]: Plugin ftp initialized
[ INFO] [1557475256.881948055]: Plugin global_position loaded
[ INFO] [1557475256.959289448]: Plugin global_position initialized
[ INFO] [1557475256.959735150]: Plugin gps_rtk loaded
[ INFO] [1557475256.968964349]: Plugin gps_rtk initialized
[ INFO] [1557475256.969449983]: Plugin hil loaded
[ INFO] [1557475257.048677681]: Plugin hil initialized
[ INFO] [1557475257.049249155]: Plugin home_position loaded
[ INFO] [1557475257.073797074]: Plugin home_position initialized
[ INFO] [1557475257.074226634]: Plugin imu loaded
[ INFO] [1557475257.097780951]: Finished loading Gazebo ROS API Plugin.
[Msg] Waiting for master.
[ INFO] [1557475257.104162232]: waitForService: Service [/gazebo/set_physics_properties] has not been advertised, waiting...
[Msg] Connected to gazebo master @ http://<IP_ADDRESS>:11345
[Msg] Publicized address: <IP_ADDRESS>
[ INFO] [1557475257.124159802]: Plugin imu initialized
[ INFO] [1557475257.124574443]: Plugin local_position loaded
[ INFO] [1557475257.152289912]: Plugin local_position initialized
[ INFO] [1557475257.152615234]: Plugin log_transfer loaded
[ INFO] [1557475257.161496706]: Plugin log_transfer initialized
[ INFO] [1557475257.161867984]: Plugin manual_control loaded
[ INFO] [1557475257.170535638]: Plugin manual_control initialized
[ INFO] [1557475257.170840035]: Plugin mocap_pose_estimate loaded
[ INFO] [1557475257.186189051]: Plugin mocap_pose_estimate initialized
[ INFO] [1557475257.186487362]: Plugin obstacle_distance loaded
[ INFO] [1557475257.194409856]: Plugin obstacle_distance initialized
[ INFO] [1557475257.194710930]: Plugin odom loaded
[ INFO] [1557475257.215927630]: Plugin odom initialized
[ INFO] [1557475257.216400522]: Plugin param loaded
[ INFO] [1557475257.225368862]: Plugin param initialized
[ INFO] [1557475257.225649762]: Plugin px4flow loaded
[ INFO] [1557475257.245123543]: Plugin px4flow initialized
[ INFO] [1557475257.245197482]: Plugin rangefinder blacklisted
[ INFO] [1557475257.245599425]: Plugin rc_io loaded
[ INFO] [1557475257.256995418]: Plugin rc_io initialized
[ INFO] [1557475257.257089490]: Plugin safety_area blacklisted
[ INFO] [1557475257.257450869]: Plugin setpoint_accel loaded
[ INFO] [1557475257.269748749]: Plugin setpoint_accel initialized
[ INFO] [1557475257.270240251]: Plugin setpoint_attitude loaded
[ INFO] [1557475257.308590995]: Plugin setpoint_attitude initialized
[ INFO] [1557475257.309042919]: Plugin setpoint_position loaded
[ INFO] [1557475257.366109524]: Plugin setpoint_position initialized
[ INFO] [1557475257.366496509]: Plugin setpoint_raw loaded
[ INFO] [1557475257.409950216]: Plugin setpoint_raw initialized
[ INFO] [1557475257.410378266]: Plugin setpoint_velocity loaded
SpawnModel script started
[ INFO] [1557475257.438146065]: Plugin setpoint_velocity initialized
[ INFO] [1557475257.440797012]: Plugin sys_status loaded
[ INFO] [1557475257.476992263]: Plugin sys_status initialized
[ INFO] [1557475257.477332819]: Plugin sys_time loaded
[ INFO] [1557475257.492696595]: TM: Timesync mode: MAVLINK
[ INFO] [1557475257.498475491]: Plugin sys_time initialized
[ INFO] [1557475257.498997393]: Plugin trajectory loaded
[ INFO] [1557475257.519031800]: Plugin trajectory initialized
[ INFO] [1557475257.519361876]: Plugin vfr_hud loaded
[ INFO] [1557475257.520987916]: Plugin vfr_hud initialized
[ INFO] [1557475257.521171882]: Plugin vibration blacklisted
[ INFO] [1557475257.521475096]: Plugin vision_pose_estimate loaded
[ INFO] [1557475257.548657594]: Plugin vision_pose_estimate initialized
[ INFO] [1557475257.549493553]: Plugin vision_speed_estimate loaded
[ INFO] [1557475257.570823694]: Plugin vision_speed_estimate initialized
[ INFO] [1557475257.571282457]: Plugin waypoint loaded
[ INFO] [1557475257.589921316]: Plugin waypoint initialized
[ INFO] [1557475257.590107046]: Plugin wheel_odometry blacklisted
[ INFO] [1557475257.590427102]: Plugin wind_estimation loaded
[ INFO] [1557475257.597709665]: Plugin wind_estimation initialized
[ INFO] [1557475257.597930283]: Autostarting mavlink via USB on PX4
[ INFO] [1557475257.598377298]: Built-in SIMD instructions: SSE, SSE2
[ INFO] [1557475257.598524693]: Built-in MAVLink package version: 2019.4.4
[ INFO] [1557475257.598651588]: Known MAVLink dialects: common ardupilotmega ASLUAV autoquad icarous matrixpilot paparazzi slugs standard uAvionix ualberta
[ INFO] [1557475257.598767568]: MAVROS started. MY ID 1.240, TARGET ID 1.1
[INFO] [1557475257.655319, 0.000000]: Loading model XML from file
[INFO] [1557475257.655938, 0.000000]: Waiting for service /gazebo/spawn_sdf_model
[ INFO] [1557475257.939922894, 0.026000000]: waitForService: Service [/gazebo/set_physics_properties] is now available.
[INFO] [1557475257.966327, 0.050000]: Calling service /gazebo/spawn_sdf_model
[Err] [InsertModelWidget.cc:298] Missing model.config for model "/home/guo/catkin_ws/src/Firmware/Tools/sitl_gazebo/cmake"
[Err] [InsertModelWidget.cc:298] Missing model.config for model "/home/guo/catkin_ws/src/Firmware/Tools/sitl_gazebo/external"
[Err] [InsertModelWidget.cc:298] Missing model.config for model "/home/guo/catkin_ws/src/Firmware/Tools/sitl_gazebo/include"
[Err] [InsertModelWidget.cc:298] Missing model.config for model "/home/guo/catkin_ws/src/Firmware/Tools/sitl_gazebo/models"
[Err] [InsertModelWidget.cc:298] Missing model.config for model "/home/guo/catkin_ws/src/Firmware/Tools/sitl_gazebo/msgs"
[Err] [InsertModelWidget.cc:298] Missing model.config for model "/home/guo/catkin_ws/src/Firmware/Tools/sitl_gazebo/scripts"
[Err] [InsertModelWidget.cc:298] Missing model.config for model "/home/guo/catkin_ws/src/Firmware/Tools/sitl_gazebo/src"
[Err] [InsertModelWidget.cc:298] Missing model.config for model "/home/guo/catkin_ws/src/Firmware/Tools/sitl_gazebo/worlds"
Warning [parser.cc:778] XML Element[child], child of element[sensor] not defined in SDF. Ignoring[child]. You may have an incorrect SDF file, or an sdformat version that doesn't support this element.
Warning [parser.cc:778] XML Element[parent], child of element[sensor] not defined in SDF. Ignoring[parent]. You may have an incorrect SDF file, or an sdformat version that doesn't support this element.
[Wrn] [msgs.cc:1655] Conversion of sensor type[multicamera] not suppported.
[INFO] [1557475258.236667, 0.070000]: Spawn status: SpawnModel: Successfully spawned entity
[ INFO] [1557475258.277546639, 0.070000000]: Physics dynamic reconfigure ready.
[vehicle_spawn_guo_Lenovo_TianYi_100_14IBD_25090_5892815240772984067-5] process has finished cleanly
log file: /home/guo/.ros/log/bcb47986-72f9-11e9-9dbb-b0c0902a3964/vehicle_spawn_guo_Lenovo_TianYi_100_14IBD_25090_5892815240772984067-5*.log
[ INFO] [1557475258.717826002, 0.070000000]: Camera Plugin: Using the 'robotNamespace' param: '/'
[ INFO] [1557475258.718126496, 0.070000000]: Camera Plugin: Using the 'robotNamespace' param: '/'
[ INFO] [1557475258.727596878, 0.070000000]: Camera Plugin (ns = /)  <tf_prefix_>, set to ""
[ INFO] [1557475258.728058946, 0.070000000]: Camera Plugin (ns = /)  <tf_prefix_>, set to ""
[Dbg] [gazebo_mavlink_interface.cpp:138] <joint_name> not found for channel[0] no joint control will be performed for this channel.
[Dbg] [gazebo_mavlink_interface.cpp:138] <joint_name> not found for channel[1] no joint control will be performed for this channel.
[Dbg] [gazebo_mavlink_interface.cpp:138] <joint_name> not found for channel[2] no joint control will be performed for this channel.
[Dbg] [gazebo_mavlink_interface.cpp:138] <joint_name> not found for channel[3] no joint control will be performed for this channel.
[Wrn] [gazebo_mavlink_interface.cpp:127] joint [zephyr_delta_wing::propeller_joint] not found for channel[4] no joint control for this channel.
[Wrn] [gazebo_mavlink_interface.cpp:127] joint [zephyr_delta_wing::flap_left_joint] not found for channel[5] no joint control for this channel.
[Wrn] [gazebo_mavlink_interface.cpp:127] joint [zephyr_delta_wing::flap_right_joint] not found for channel[6] no joint control for this channel.
[Dbg] [gazebo_mavlink_interface.cpp:138] <joint_name> not found for channel[7] no joint control will be performed for this channel.
[Msg] Using MAVLink protocol v2.0
[ INFO] [1557475259.062907810, 0.098000000]: waitForService: Service [/gazebo/set_physics_properties] is now available.
[ INFO] [1557475259.163115377, 0.164000000]: Physics dynamic reconfigure ready.
[Wrn] [msgs.cc:1655] Conversion of sensor type[multicamera] not suppported.
[Wrn] [msgs.cc:1655] Conversion of sensor type[multicamera] not suppported.
[Wrn] [Publisher.cc:140] Queue limit reached for topic /gazebo/default/iris_stereo_gray_no_gps/motors, deleting message. This warning is printed only once.
[Wrn] [Publisher.cc:140] Queue limit reached for topic /gazebo/default/iris_stereo_gray_no_gps/motor_speed/0, deleting message. This warning is printed only once.
[Wrn] [Publisher.cc:140] Queue limit reached for topic /gazebo/default/iris_stereo_gray_no_gps/motor_speed/1, deleting message. This warning is printed only once.
[Wrn] [Publisher.cc:140] Queue limit reached for topic /gazebo/default/iris_stereo_gray_no_gps/imu, deleting message. This warning is printed only once.
[Wrn] [Publisher.cc:140] Queue limit reached for topic /gazebo/default/iris_stereo_gray_no_gps/motor_speed/2, deleting message. This warning is printed only once.
[Wrn] [Publisher.cc:140] Queue limit reached for topic /gazebo/default/iris_stereo_gray_no_gps/motor_speed/3, deleting message. This warning is printed only once.
[Wrn] [msgs.cc:1655] Conversion of sensor type[multicamera] not suppported.
INFO  [simulator] Got initial simulation data, running sim..
INFO  [pwm_out_sim] MODE_16PWM
INFO  [mavlink] mode: Normal, data rate: 4000000 B/s on udp port 14556 remote port 14550
INFO  [mavlink] mode: Onboard, data rate: 4000000 B/s on udp port 14557 remote port 14540
INFO  [mavlink] MAVLink only on localhost (set param MAV_BROADCAST = 1 to enable network)
pxh> INFO  [logger] logger started (mode=all)
INFO  [logger] Start file log
INFO  [logger] Opened log file: rootfs/fs/microsd/log/2019-05-10/08_01_00.ulg
INFO  [mavlink] partner IP: <IP_ADDRESS>
[ INFO] [1557475260.257204303, 1.128000000]: udp0: Remote address: <IP_ADDRESS>:14557
[ INFO] [1557475260.378267336, 1.262000000]: IMU: High resolution IMU detected!
INFO  [mavlink] partner IP: <IP_ADDRESS>
INFO  [ecl/EKF] EKF aligned, (pressure height, IMU buf: 22, OBS buf: 14)
[ INFO] [1557475261.238106135, 2.064000000]: CON: Got HEARTBEAT, connected. FCU: PX4 Autopilot
[ INFO] [1557475261.248689658, 2.072000000]: IMU: High resolution IMU detected!
[ INFO] [1557475261.361614057, 2.176000000]: IMU: Attitude quaternion IMU detected!
[ INFO] [1557475262.705694238, 3.064000000]: VER: 1.1: Capabilities         0x000000000000e4ef
[ INFO] [1557475262.705787152, 3.064000000]: VER: 1.1: Flight software:     010800ff (96443b3cf3e3adae)
[ INFO] [1557475262.705841238, 3.064000000]: VER: 1.1: Middleware software: 010800ff (96443b3cf3e3adae)
[ INFO] [1557475262.705885628, 3.064000000]: VER: 1.1: OS software:         040f00ff<PHONE_NUMBER>000000)
[ INFO] [1557475262.705926492, 3.064000000]: VER: 1.1: Board hardware:      00000001
[ INFO] [1557475262.705969890, 3.064000000]: VER: 1.1: VID/PID:             0000:0000
[ INFO] [1557475262.706015072, 3.064000000]: VER: 1.1: UID:<PHONE_NUMBER>000002
[ INFO] [1557475279.586635608, 12.064000000]: HP: requesting home position
[ INFO] [1557475290.977850830, 17.064000000]: WP: mission received
[ INFO] [1557475306.203129558, 22.064000000]: HP: requesting home position
INFO  [ecl/EKF] EKF commencing external vision position fusion
[ WARN] [1557475321.681447912, 26.810000000]: CMD: Unexpected command 246, result 0
[ INFO] [1557475336.404410881, 32.064000000]: HP: requesting home position
WARN  [commander_tests] Failsafe enabled: no RC
[ WARN] [1557475358.762256937, 39.422000000]: CMD: Unexpected command 176, result 1
[ INFO] [1557475358.778073944, 39.426000000]: WP: reached #0
[Wrn] [Publisher.cc:140] Queue limit reached for topic /gazebo/default/iris_stereo_gray_no_gps/gazebo/command/motor_speed, deleting message. This warning is printed only once.
[ INFO] [1557475358.839747618, 39.450000000]: WP: reached #0
[ INFO] [1557475359.078308181, 39.530000000]: WP: reached #0

Thank you for submitting the issue :)
We will get back to you on Monday.

Poor performance is related to optimizePoseFaster()， which replaced optimizecurrentposewithoutIMU in tracker.cpp due to seg faults. I am still working on solving this.

Curious if there have been any updates on this issue, I am encountering the same problem.

have you tried replacing optimizePoseFaster with optimizecurrentposewithoutIMU? It usually helps

Issue closed, re-open if needed.

I had the same problem. Anybody help？


Add an integration test workflow

What does this change?
Adds an integration test that ensure the version of node loaded matches the one in the .nvmrc file
How to test
Check that the integration workflow runs successfully
How can we measure success?
We know if we've broken something in future

cc @guardian/developer-experience


chore: restore simp lemmas in Logic.Equiv.Set

Two simp lemmas were removed with porting notes because the LHS already simplified. I think instead they should have had their priority increased.

Thanks :tada:
bors merge


[Filecoin] Return json to push into mpool

https://github.com/filecoin-project/lotus/blob/master/documentation/en/api-methods.md#MpoolPush

In the new version, how can I convert the signed JSON(Not Hex) data to type.SignMessage And then broadcast the transaction to the chain as a parameter of method  MpoolPush?

try sending to a lotus node via json rpc


re-add vary header

helps with #580
@timnolte & @snarfed what would you prefer? opt-in or opt-out?

Woo, thank you @pfefferle!
Personally, I prefer defaulting to correctness over efficiency - "make it work, then make it right, then make it fast" - so I like this as is. You all know the WordPress ecosystem much better than me, so I defer to you!

Has this been tested with Nginx caching and an already configured Vary header?
My concern is this all of a sudden causing caching data storage or breaking caching altogether on a site, which can cost users money or downtime. I'd personally choose opt-in until we have enough testing to confirm that opt-out is OK.

Thanks for sharing your experience @lencioni !

@snarfed we aleady had a talk with cloudflare because of that issue... Sadly the Vary header is not the solution to all conneg problems...

@snarfed are we certain that Mastodon servers use the exact same endpoint for both JSON and other/HTML output? I'm inclined to think that it is actually the Mastodon client being used that is rendering the JSON response and it's not just presenting for example a raw HTML version of the content. I think this is where WordPress is different than a Mastodon server where there is a separate backend server and frontend Mastodon client. If the WordPress sites was, for example headless, where an HTML client was receiving the JSON always and rendering it as HTML for visitors then this might more closely resemble Mastodon.

Good question! Mastodon and at least some fediverse servers do use different canonical URLs for AP (JSON) objects vs user-facing HTML. However, they still also do full conneg on the HTML URLs, and redirect AP requests to the AP URLs, since copy/pasting a user-facing URL into your instance's search is a core UX workflow in the fediverse.
It's interesting to consider a fediverse webapp client using AP as its API to its own backend. AP S2S (server to server) isn't suited to that, C2S (client/server) definitely is, but barely any fediverse servers implement or use C2S. 🤷


Array.prototype.filter.not.forcing.boolean

Fixes #
Changed the return value of Array.prototype.filter, use any instead of boolean!
based on this issue: https://github.com/Microsoft/TypeScript/issues/5850

Hi @NimaZahedi, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!
You've already signed the contribution license agreement. Thanks!
We will now validate the agreement and then real humans will evaluate your PR.
TTYL, MSBOT;

Looks like you ran baseline-accept at the wrong time and nuked 20,000+ baseline files. Can you try again on a new PR (or force push up a fresh head commit) so we don't have you listed as the git blame on all these files? Thanks!


hex package is missing dependencies

hex package misses dependencies.
Hi the hex package does not have any dependenceis that's a bit of a problem would it be possible to fix this? It pretty much requires to use hex packages as dependencies too.

Hi @Licenser, thanks for the report
Using hex dependencies requires a bit of work, as packaged cowboy version is older than the one I use (1.0.4 vs 2.0.0-pre2).
But I'm working on it and it should be ready soon :)

I'm kind of stuck now because cowboy and shotgun are mutually exclusive on hex.pm (see the discussion on slack channel https://erlanger.slack.com/archives/rebar3/p1473953453000145).
I will probably have to replace one or the other to be able to publish letsencrypt-erlang on hex.pm

this is fixed with 0.7.0 release

this is fixed with 0.7.0 release


uninstall() is internal

The uninstall() function is marked as internal, so it can't be used to remove a temporary constraint I have for animation. Is this intended?
I added Snap.xcodeproj as a sub project to mine and linked Snap.framework to my targets.

The README describes you use case. Here is a section taken directly from it.
var topConstraint: Constraint? = nil

...

// when making constraints
view1.snp_makeConstraints { make in
  self.topConstraint = make.top.equalTo(superview).with.offset(padding.top)
  make.left.equalTo(superview).with.offset(padding.left)
}

...
// then later you can call
self.topConstraint.uninstall()

In the future I would suggest you read through the entire README of an open source project before posting usage and design questions. It will certainly save yourself and others time and frustration.
Hope that helps!

Thanks for your comment.
If you read the question a bit more closely, it's actually about the fact that uninstall() is marked as internal.
The excerpt is what I used as my reference point. Except

because topConstraint is an Optional so you'd have to unwrap it before calling uninstall()
coming back to the question, because uninstall() is marked as internal, it can't actually be called from outside of the framework.

So to expand a bit more on my question: are there reasons why we might not want to expose uninstall() publicly? For example, setups required, unintended side effects etc.? If not, then we'll have to update the access modifier to public

Hey @allen-zeng, sorry about that. I totally read your question way too fast. You make all great points.
The README example is definitely wrong. You definitely would have to unwrap the topConstraint before calling uninstall(). Additionally, it wouldn't compile anyways since uninstall is not public.
@robertjpayne do you have some thoughts here? I'm assuming we'll need to make the uninstall method public, but what about the install method then? It seems weird to only have uninstall marked as public.

Hey @allen-zeng @cnoon in the last update I marked these two methods as internal due to the fact they really shouldn't be used in their current state given they don't clean up properly.
I'll try and get around to this ASAP as in hindsight this wasn't probably a good idea.

Sounds good dude...thanks for the update @robertjpayne.

Thank you @robertjpayne @cnoon for your help.
Does this mean that ConstraintMaker isn't cleaning up properly? Because internal funcs remakeConstraints and updateConstraints use uninstall.
Are there things we can do (workarounds) to clean up?

ConstraintMaker has extra code to properly clean up so those are just fine!

On 12/01/2015, at 11:12 am, Allen Zeng<EMAIL_ADDRESS>wrote:
Thank you @robertjpayne @cnoon for your help.
Does this mean that ConstraintMaker isn't cleaning up properly? Because internal funcs remakeConstraints and updateConstraints use uninstall.
Are there things we can do (workarounds) to clean up?
—
Reply to this email directly or view it on GitHub.

Phew! Thanks for clearing that up!

@allen-zeng @cnoon this is fixed up now on master, I'm not pushing to pods trunk yet as I need to do some more testing tonight, I'm not 100% happy with how I implemented it but it works for now as far as I can tell.


Addition of  404 error page using react

Can I take this issue?? I know react.

go ahead @shashwat933

Please consider in hacktober fest


[AutoRelease] t2-datafactory-2022-10-26-07565(Do not merge)

https://github.com/Azure/sdk-release-request/issues/3300
Live test success
https://dev.azure.com/azure-sdk/internal/_build?definitionId=987

issue link:https://github.com/Azure/sdk-release-request/issues/3300


Error: Cannot run with sound null safety, because the following dependencies don't support null safety:

Hi everyone ,
the problem is confusing but I'm sure the solution is easy :
lets look at the error in more details:
Error: Cannot run with sound null safety, because the following dependencies
don't support null safety:

package:cached_network_image
package:flutter_cache_manager
package:octo_image
package:rxdart
package:flutter_blurhash

For solutions, see https://dart.dev/go/unsound-null-safety
FAILURE: Build failed with an exception.

Where:
Script 'C:\Users{my name}\Documents\flutter\packages\flutter_tools\gradle\flutter.gradle' line: 1035

What went wrong:
Execution failed for task ':app:compileFlutterBuildDebug'.

Process 'command 'C:\Users{my name}\Documents\flutter\bin\flutter.bat'' finished with non-zero exit v
alue 1

Try:
C:\Users{my name}\andrea_app\login_ui_page_animation>

the problem is that  i have none of these packages in my pubspec.yaml file ... here is my packages used till now :
dependencies:
flutter:
sdk: flutter
The following adds the Cupertino Icons font to your application.
Use with the CupertinoIcons class for iOS style icons.
cupertino_icons: ^1.0.2
provider: ^5.0.0
firebase_auth: ^1.4.1
firebase_core: ^1.3.0
flutter_staggered_grid_view: ^0.4.0
google_fonts: ^2.1.0
flutter_svg: ^0.22.0
shimmer: ^2.0.0
page_transition: ^2.0.2
simple_animations: ^3.1.1
supercharged: ^2.0.0
flip_card: ^0.5.0
circular_profile_avatar: ^2.0.0
all of these packages supports nullsafety thats why this error is confusing here is my flutter doctor:
[√] Flutter (Channel stable, 2.2.2, on Microsoft Windows [Version 10.0.18363.1621], locale en-US)
• Flutter version 2.2.2 at C:\Users\Parsian\Documents\flutter
• Framework revision d79295af24 (3 weeks ago), 2021-06-11 08:56:01 -0700
• Engine revision 91c9fc8fe0
• Dart version 2.13.3
[√] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
• Android SDK at C:\Users\Parsian\AppData\Local\Android\sdk
• Platform android-30, build-tools 30.0.3
• Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
• All Android licenses accepted.
[√] Chrome - develop for the web
• Chrome at C:\Program Files (x86)\Google\Chrome\Application\chrome.exe
[√] Android Studio (version 4.1.0)
• Android Studio at C:\Program Files\Android\Android Studio
• Flutter plugin can be installed from:
https://plugins.jetbrains.com/plugin/9212-flutter
• Dart plugin can be installed from:
https://plugins.jetbrains.com/plugin/6351-dart
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
[√] Connected device (2 available)
• Chrome (web) • chrome • web-javascript • Google Chrome 91.0.4472.114
• Edge (web)   • edge   • web-javascript • Microsoft Edge 91.0.864.59
and here is my sdk in pubspec.yaml file :
environment:
sdk: ">=2.12.0 <3.0.0"
I appreciate your help inadvance

circular_profile_avatar: ^2.0.0

This package, and its dependencies, are not null safe.


Inferred return type intersects returned objects but only if they are not assigned in the function body

🔎 Search Terms
return type intersection
return type intersection undefined
return type object union
return type intersection narrowing
🕗 Version & Regression Information

This is the behavior in every version I tried, from 4.0.0 to 5.3

⏯ Playground Link
https://www.typescriptlang.org/play?ts=5.3.2#code/GYVwdgxgLglg9mABMAhjANgCgJQG8BQiRiMwmAjNogE4CmUI1SuiKAXIlNSLYgL6FidBk0QsARh1ToAzrwED8S1BnwB6NYgB6AfmXho8JAHc41ANYycBYiTKUbt4hAQyoNWjJDp3AXjGsHFw8-IJOHiJIdF4+YaG2LmBuHjF+AZKc3PJxwoxRnt5Q+IqmFjLqmrpAA
💻 Code

🙁 Actual behavior
function fail(){
    if(1) return { a: true }
    return { b: false }
}

fail
// ^? function fail(): { a: boolean; b?: undefined; } | { b: boolean; a?: undefined; }

function works(){
    if(1){
        const result = { a: true }
        return result
    }
    const result = { b: true }
    return result
}

works
// ^? function works(): { a: boolean; } | { b: boolean; }

🙂 Expected behavior
function fail(){
    if(1) return { a: true }
    return { b: false }
}

fail
// ^? function fail(): { a: boolean; } | { b: boolean; }

function works(){
    if(1){
        const result = { a: true }
        return result
    }
    const result = { b: true }
    return result
}

works
// ^? function works(): { a: boolean; } | { b: boolean; }

Additional information about the issue
No response

Duplicate of #50516

The issue/PR referenced are supposedly solved/merged, but I as indicated, we can observe this behavior in latest typescript versions.
The PR https://github.com/microsoft/TypeScript/pull/19513 added a workaround for identifying properties that may or may not be accessible, but this issue highlights the incomplete implementation of the workaround. We either need to apply the normalisation all the way, or maybe to allow property access if one of the union member has such property then narrow down the value type on access. Either way, the fact we have two different behavior for virtually identical functions may be something to look into a bit further.
What do you think ?

The issue/PR referenced are supposedly solved/merged, but I as indicated, we can observe this behavior in latest typescript versions.

Because it's working as intended. That's why the issue I linked has the label "Working as Intended".

I took the time to read the referenced PRs this weekend, and I've noticed the labeling on the issue, but it seems more like its a side effect of a solution used to solve another use case :
The PR https://github.com/microsoft/TypeScript/pull/19513 addresses the ability to access properties. The intended behavior in that case is that the access is authorized and his types correctly narrowed down. However, a side effect to the solution used to address the https://github.com/microsoft/TypeScript/pull/19513 leads to this issue, which highlight an inconsistency when using a pattern that should not affect the typing.
For instance, this would also be a coherent behavior
function fail(){
    if(1) return { a: true }
    return { b: false }
}

fail
// ^? function fail(): { a: boolean; b?: undefined; } | { b: boolean; a?: undefined; }

function works(){
    if(1){
        const result = { a: true }
        return result
    }
    const result = { b: true }
    return result
}

works
// ^? function works(): { a: boolean; b?: undefined; } | { b: boolean; a?: undefined; }

even if less desirable, this solution falls along the same lines as the https://github.com/microsoft/TypeScript/pull/19513 PR solution.
The point in this issue is that differing types for the same functions really looks like a bug, or at least counter intuitive.
I am aware that it is probably not a big deal for most typescript developers, and I can use the variable assignation workaround for my use cases (it is no pretty code but will work fine). But it feels like fixing this with the lazy evaluation method really goes into the same direction as the recent improvements on type inference on conditions and switch statements.
Thanks for taking the time to read me :)


More tests

Also positioning bug fix when drawing a rectangle with no border or fill

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

9 of 9 (100.0%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+3.1%) to 84.228%

Totals

Change from base Build<PHONE_NUMBER>:
3.1%

Covered Lines:
846

Relevant Lines:
989

💛  - Coveralls


Create Atom plugin

I just incorporated jade-lint into my linting package (that was previously using the jade compiler) https://atom.io/packages/linter-jade

Awesome, thanks!
I'll get the documentation updated with a link to your package

One thing to add, if you're not already using the 'inline' reporters, then please feel free to as it's should simplify any regex you might already be using

Thanks, I'm using your objects directly (specifically linter.checkString), not a regex.  I don't exactly like what I'm doing because I'm including jade-lint/lib/config-file, so it's currently tied to the internal workings, but it's fine for now.


Minor changes to browser model

Task/Issue URL:
Tech Design URL:
CC:
Description:
Steps to test this PR:
1.
1.

Internal references:
Software Engineering Expectations
Technical Design Template

Hey @shinybrain a few comments:

Please follow the guidelines of the PR description
What is your PR trying to improve? It looks like you are only removing tests and not fixing anything
These changes are not passing the build checks

For those reasons, I'm going to close this PR and leave you the chance to fix it on your side.


[HANDS-ON BUG] Unable to push model to the hub, endless loop. Unit 3

Describe the bug
Hi everyone, I ran into a slight hickup when trying to push rl_zoo3 to the huggingface hub. It runs without errors, but at the printout:
"ℹ Pushing repo dqn-SpaceInvadersNoFrameskip-v4 to the Hugging Face Hub"
the cell just keeps running without anymore progress. I ran it yesterday without gpu because I already had done the training, and faced the same problem. Thought its because of the missing gpu so today I tried again, but it seems like I am still stuck. On the huggingface models page, the new model shows up, but its basically empty - "No model card". I used a token with write access and got confirmation. The still running cell shows 2 warnings, one for "no render fps was declared" and another one for "Cloning into local empty directory" but I am not sure if they are related to the problem.
I let it run for the whole 3 hours before colab disconnects the instance, its still stuck at the same line.
I did try to delete my model on huggingface and in google drive in /hub to have a clean start, but it did not help.
I triple checked if there is an error on my end, but I cant find any (which does not mean that there is none of course).
This is the complete output of the cell, it just keeps running in an endless loop afterwards without any more progress:
2023-06-07 08:36:02.719472: I tensorflow/core/platform/cpu_feature_guard.cc:182] This TensorFlow binary is optimized to use available CPU instructions in performance-critical operations.
To enable the following instructions: AVX2 FMA, in other operations, rebuild TensorFlow with the appropriate compiler flags.
2023-06-07 08:36:04.181424: W tensorflow/compiler/tf2tensorrt/utils/py_utils.cc:38] TF-TRT Warning: Could not find TensorRT
Loading latest experiment, id=2
Loading logs/dqn/SpaceInvadersNoFrameskip-v4_2/SpaceInvadersNoFrameskip-v4.zip
A.L.E: Arcade Learning Environment (version 0.8.1+53f58b7)
[Powered by Stella]
Stacking 4 frames
Wrapping the env in a VecTransposeImage.
Uploading to Gamayun/dqn-SpaceInvadersNoFrameskip-v4, make sure to have the rights
ℹ This function will save, evaluate, generate a video of your agent,
create a model card and push everything to the hub. It might take up to some
minutes if video generation is activated. This is a work in progress: if you
encounter a bug, please open an issue.
Cloning https://huggingface.co/Gamayun/dqn-SpaceInvadersNoFrameskip-v4 into local empty directory.
WARNING:huggingface_hub.repository:Cloning https://huggingface.co/Gamayun/dqn-SpaceInvadersNoFrameskip-v4 into local empty directory.
Saving model to: hub/dqn-SpaceInvadersNoFrameskip-v4/dqn-SpaceInvadersNoFrameskip-v4
/usr/local/lib/python3.10/dist-packages/gymnasium/utils/passive_env_checker.py:364: UserWarning: WARN: No render fps was declared in the environment (env.metadata['render_fps'] is None or not defined), rendering may occur at inconsistent fps.
  logger.warn(
Saving video to /tmp/tmpxj2niqs1/-step-0-to-step-1000.mp4
Moviepy - Building video /tmp/tmpxj2niqs1/-step-0-to-step-1000.mp4.
Moviepy - Writing video /tmp/tmpxj2niqs1/-step-0-to-step-1000.mp4

Moviepy - Done !
Moviepy - video ready /tmp/tmpxj2niqs1/-step-0-to-step-1000.mp4
ffmpeg version 4.2.7-0ubuntu0.1 Copyright (c) 2000-2022 the FFmpeg developers
  built with gcc 9 (Ubuntu 9.4.0-1ubuntu1~20.04.1)
  configuration: --prefix=/usr --extra-version=0ubuntu0.1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-nvenc --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared
  libavutil      56. 31.100 / 56. 31.100
  libavcodec     58. 54.100 / 58. 54.100
  libavformat    58. 29.100 / 58. 29.100
  libavdevice    58.  8.100 / 58.  8.100
  libavfilter     7. 57.100 /  7. 57.100
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  5.100 /  5.  5.100
  libswresample   3.  5.100 /  3.  5.100
  libpostproc    55.  5.100 / 55.  5.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/tmp/tmpxj2niqs1/-step-0-to-step-1000.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.29.100
  Duration: 00:00:33.40, start: 0.000000, bitrate: 67 kb/s
    Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 160x210, 65 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default)
    Metadata:
      handler_name    : VideoHandler
Stream mapping:
  Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
Press [q] to stop, [?] for help
[libx264 @ 0x55e2841b4480] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 0x55e2841b4480] profile High, level 1.2
[libx264 @ 0x55e2841b4480] 264 - core 155 r2917 0a84d98 - H.264/MPEG-4 AVC codec - Copyleft 2003-2018 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=3 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, mp4, to 'hub/dqn-SpaceInvadersNoFrameskip-v4/replay.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf58.29.100
    Stream #0:0(und): Video: h264 (libx264) (avc1 / 0x31637661), yuv420p, 160x210, q=-1--1, 30 fps, 15360 tbn, 30 tbc (default)
    Metadata:
      handler_name    : VideoHandler
      encoder         : Lavc58.54.100 libx264
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
frame= 1002 fps=0.0 q=-1.0 Lsize=     270kB time=00:00:33.30 bitrate=  66.4kbits/s speed=  38x
video:259kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 4.141588%
[libx264 @ 0x55e2841b4480] frame I:5     Avg QP:16.64  size:  3773
[libx264 @ 0x55e2841b4480] frame P:508   Avg QP:22.42  size:   433
[libx264 @ 0x55e2841b4480] frame B:489   Avg QP:28.50  size:    53
[libx264 @ 0x55e2841b4480] consecutive B-frames: 28.9% 14.6% 10.2% 46.3%
[libx264 @ 0x55e2841b4480] mb I  I16..4: 31.4% 24.1% 44.4%
[libx264 @ 0x55e2841b4480] mb P  I16..4:  0.5%  0.9%  1.0%  P16..4:  8.1%  3.5%  2.2%  0.0%  0.0%    skip:83.8%
[libx264 @ 0x55e2841b4480] mb B  I16..4:  0.1%  0.1%  0.1%  B16..8:  9.7%  0.9%  0.1%  direct: 0.2%  skip:88.9%  L0:48.2% L1:51.3% BI: 0.5%
[libx264 @ 0x55e2841b4480] 8x8 transform intra:34.7% inter:4.3%
[libx264 @ 0x55e2841b4480] coded y,uvDC,uvAC intra: 27.8% 47.7% 44.5% inter: 1.8% 2.6% 2.2%
[libx264 @ 0x55e2841b4480] i16 v,h,dc,p: 56% 36%  8%  0%
[libx264 @ 0x55e2841b4480] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 21%  8% 68%  2%  0%  0%  0%  0%  0%
[libx264 @ 0x55e2841b4480] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 34% 12% 40%  2%  2%  3%  2%  3%  1%
[libx264 @ 0x55e2841b4480] i8c dc,h,v,p: 54% 26% 19%  2%
[libx264 @ 0x55e2841b4480] Weighted P-Frames: Y:0.0% UV:0.0%
[libx264 @ 0x55e2841b4480] ref P L0: 79.2%  6.2%  8.8%  5.8%
[libx264 @ 0x55e2841b4480] ref B L0: 86.1% 11.4%  2.4%
[libx264 @ 0x55e2841b4480] ref B L1: 95.9%  4.1%
[libx264 @ 0x55e2841b4480] kb/s:63.43
ℹ Pushing repo dqn-SpaceInvadersNoFrameskip-v4 to the Hugging Face
Hub

Link to the notebook:
https://colab.research.google.com/drive/1jR6tkmD-k-zG9aMsM9nqkwDvIvuxjHGs?usp=sharing
Material
I used colab with remode instance, with and without gpu, same error.
I really appreciate the support, thanks!

Did you solved this issue?

Did you solved this issue?

Thanks for again checking in on my issue, I appreciate it! It turns out that the cells I added to the notebook, where I log into google drive, and change the notebooks working directory to the one where the dqn.yml is located, seem to cause some problems with .push_to_hub(), even though any other code in between runs without issues, including the training. I found out when I, as per your advice, used the original notebook again and ran it without those cells.
Without getting an exception I was unable to investigate the issue in more detail however. I assume that there is some problem in the threaded code in .push_to_hub() that does not work well with Google Drive and/or changing the working directory of the  notebook.
Do you think it would be a good idea to open an issue on the RL-Baselines3-Zoo github page? Or any other advice what I should do next?
I have since tried to use the Google Colab Docker on my windows 10 machine with WSL, but I ran into a problem with mounting my system drive to the Docker instance, so any progress there would not be permanent (besides anything I upload to huggingface of course). So in the end, I decided to just install ubuntu using wsl on my windows 10 machine, installed python and any dependencies I needed, and created a venv in which I am now able to run unit 3 without any issues.
Again, thanks for getting back to me, I really appreciate it!

Hey there,
Happy to hear it works now
For the issue I'm not sure it's related to RL-Zoo but Colab 🤔 you can still open an issue to RL Zoo but not sure they'll have a solution.


Configure dependabot for alerts and auto-updates

There are a handful of other useful things you can have dependabot do. I'm going to rename this issue to reflect that.

It seems dependabot is using requirements.txt instead of Pipfile.lock, which is annoying. We generate requirements.txt to make installing dependencies in the GitHub Actions runner easier. I remember it was hard to get GitHub Actions to use Pipenv. Maybe I should try to get GitHub Actions to use Pipenv. Then we won't need the requirements.txt file, and presumably dependabot will use Pipfile.lock if that's the only thing available to it.


Ingress and Gateway API fail to work on kind cluster in 1.16.0-pre.0

Is there an existing issue for this?

[X] I have searched the existing issues

What happened?
Neither Ingress nor Gateway API appear to work as expected following documented examples using the 1.16.0-pre.0 when run on docker based clusters like Kind or Talos using either metalLB or kube-vip for assigning external IP addresses.
Symptom is no external IP address assigned to either gateway or ingress.
Works fine downgrading to 1.15.1 using exact same setup that files with the 1.16 prerelease.
Prerelease works fine when tested in a k3s cluster with physical hosts with separate kernels using k3s's provided loadbalancer
Haven't tested with VMs yet.
Cilium Version
1.16.0-pre.0
Kernel Version
Linux carbon 6.7.4-200.fc39.x86_64 #1 SMP PREEMPT_DYNAMIC Mon Feb  5 22:21:14 UTC 2024 x86_64 GNU/Linux
Kubernetes Version
Server Version: v1.29.2
Regression
Yes a regression in the 1.16.0-pre.0 release
1.15.1 seems to works in all scenarios I've tested.
Sysdump
No response
Relevant log output
No response
Anything else?
Kind Cluster setup using kube-vip
kind create cluster --config kind-config.yaml

wait for cluster to init
kubectl apply -f https://kube-vip.io/manifests/rbac.yaml
kubectl create configmap --namespace kube-system kubevip --from-literal range-global=<IP_ADDRESS>-<IP_ADDRESS>
kubectl apply -f https://raw.githubusercontent.com/kube-vip/kube-vip-cloud-provider/main/manifest/kube-vip-cloud-controller.yaml
docker run --network host --rm ghcr.io/kube-vip/kube-vip:v0.5.7 manifest daemonset --services --inCluster --arp --interface eth0 | kubectl apply -f -

kubectl apply -f https://raw.githubusercontent.com/kubernetes-sigs/gateway-api/v1.0.0/config/crd/standard/gateway.networking.k8s.io_gatewayclasses.yaml
kubectl apply -f https://raw.githubusercontent.com/kubernetes-sigs/gateway-api/v1.0.0/config/crd/standard/gateway.networking.k8s.io_gateways.yaml
kubectl apply -f https://raw.githubusercontent.com/kubernetes-sigs/gateway-api/v1.0.0/config/crd/standard/gateway.networking.k8s.io_httproutes.yaml
kubectl apply -f https://raw.githubusercontent.com/kubernetes-sigs/gateway-api/v1.0.0/config/crd/standard/gateway.networking.k8s.io_referencegrants.yaml
kubectl apply -f https://raw.githubusercontent.com/kubernetes-sigs/gateway-api/v1.0.0/config/crd/experimental/gateway.networking.k8s.io_grpcroutes.yaml
kubectl apply -f https://raw.githubusercontent.com/kubernetes-sigs/gateway-api/v1.0.0/config/crd/experimental/gateway.networking.k8s.io_tlsroutes.yaml

cilium install --version 1.16.0-pre.0 -f ./helm-values-ingress.yaml

4 hours later
cilium version

kubectl apply -f https://raw.githubusercontent.com/istio/istio/release-1.11/samples/bookinfo/platform/kube/bookinfo.yaml
kubectl apply -f https://raw.githubusercontent.com/cilium/cilium/v1.15/examples/kubernetes/servicemesh/basic-ingress.yaml
kubectl apply -f https://raw.githubusercontent.com/cilium/cilium/v1.15/examples/kubernetes/gateway/basic-http.yaml

Notice ingress and gateway failed to get docker network ipaddresse from kube-vip range
kubectl get ingress -A
NAMESPACE   NAME            CLASS    HOSTS   ADDRESS   PORTS   AGE
default     basic-ingress   cilium   *                 80      6s

kubectl get gateway -A
NAMESPACE   NAME         CLASS    ADDRESS   PROGRAMMED   AGE
default     my-gateway   cilium             Unknown      42s

Destroy kind cluster and repeat steps above for Cilium 1.15.1
cilium version
cilium-cli: v0.15.23 compiled with go1.22.0 on linux/amd64
cilium image (default): v1.15.0
cilium image (stable): v1.15.1
cilium image (running): 1.15.1

Notice ingress and gateway get assigned addresses as expected
kubectl get ingress -A
NAMESPACE   NAME            CLASS    HOSTS   ADDRESS         PORTS   AGE
default     basic-ingress   cilium   *       <IP_ADDRESS>   80      6s

kubectl get gateway -A
NAMESPACE   NAME         CLASS    ADDRESS         PROGRAMMED   AGE
default     my-gateway   cilium   <IP_ADDRESS>   True         94s

kind config:
kind: Cluster
apiVersion: kind.x-k8s.io/v1alpha4
nodes:
- role: control-plane
  kubeadmConfigPatches:
  - |
    kind: InitConfiguration
    nodeRegistration:
      kubeletExtraArgs:
        node-labels: "ingress-ready=true"
  # port forward 80 on the host to 80 on this node
  extraPortMappings:
  - containerPort: 80
    hostPort: 80
    protocol: TCP
  - containerPort: 443
    hostPort: 443
    protocol: TCP
- role: worker
networking:
  disableDefaultCNI: true
  kubeProxyMode: "none"

Cilium helm values:
kubeProxyReplacement: true
ingressController:
  enabled: true
  default: true
  loadbalancerMode: dedicated

gatewayAPI:
  enabled: true

Cilium ingress manifest from cilium docs:
# Basic ingress for istio bookinfo demo application, which can be found in below
# https://raw.githubusercontent.com/istio/istio/release-1.11/samples/bookinfo/platform/kube/bookinfo.yaml
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: basic-ingress
  namespace: default
spec:
  ingressClassName: cilium
  rules:
  - http:
      paths:
      - backend:
          service:
            name: details
            port:
              number: 9080
        path: /details
        pathType: Prefix
      - backend:
          service:
            name: productpage
            port:
              number: 9080
        path: /
        pathType: Prefix

cilium gateway HTTProute config from cilium docs:
--
apiVersion: gateway.networking.k8s.io/v1
kind: Gateway
metadata:
  name: my-gateway
spec:
  gatewayClassName: cilium
  listeners:
  - protocol: HTTP
    port: 80
    name: web-gw
    allowedRoutes:
      namespaces:
        from: Same
---
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
  name: http-app-1
spec:
  parentRefs:
  - name: my-gateway
    namespace: default
  rules:
  - matches:
    - path:
        type: PathPrefix
        value: /details
    backendRefs:
    - name: details
      port: 9080
  - matches:
    - headers:
      - type: Exact
        name: magic
        value: foo
      queryParams:
      - type: Exact
        name: great
        value: example
      path:
        type: PathPrefix
        value: /
      method: GET
    backendRefs:
    - name: productpage
      port: 9080

Cilium Users Document

[ ] Are you a user of Cilium? Please add yourself to the Users doc

Code of Conduct

[X] I agree to follow this project's Code of Conduct

By any change you have captured logs for both operator and agent? Thanks.

Operator log:
opertor-log.txt
Cilium agent logs:
agent-log1.txt
agent-log2.txt

just for completeness...
kubectl api-resources |grep gateways
gateways                           gtw                                 gateway.networking.k8s.io/v1         true         Gateway

Which matches the apiVersion I'm using in my gateway definition.

This ends up being a Cilium CLI tool issue.
What's going on its cilium cli is autodetecting that I have a kind cluster without kproxy...and is choosing to set kproxy replacement to strict even though my helm values I'm supplying use true
I'm going to end up filing against cli tool asap Or maybe someone can redirect this issue to that repo is that possible?

I'm going to end up filing against cli tool asap Or maybe someone can redirect this issue to that repo is that possible?

Let me move this to cilium-cli repo


Build nativelink with musl

Reduce container image sizes by over 50% to about 28 megabytes.
The nativelink executable is now fully self-contained and portable across linux systems regardless of the host's libc.
This change introduces new Rust toolchains on the nix side that mirror the Bazel toolchains. The new toolchains enable cargo clippy invocations without Bazel and allow invoking the same nightly rustfmt that is used in the Bazel build via pre-commit hooks.

This change is

@blakehatch can you check this on the Mac please?

I will also, later today sometime

I don't think we can change this in that case just yet. Or, if we do, we'd need to do a lot to offer a path that does work for users building on a Mac.  Many of our users are on Mac OS, certainly from a building from source lens.


Display modes for different screen size

Hi there,
Thanks for making this beautiful tool! I'm using it both on my laptop and my big desktop screen. Is it possible to hide some of the modules if the screen size is below certain threshold? If not so, would it be possible to include in the requested features list somehow?

The output option of the config file allows to run Waybar on just one output. You can have two instances of Waybar using two different config files (one with more widegts the other with less widegts). Not a great solution but ... :man_shrugging:


Performance question

I have successfully deployed tileserver on my local machine for creating mbtiles locally. On that machine I have Samsung 960 PRO 2 TB sdd, 32 GB of RAM and Intel i5 6600 cpu. I have also currently imported Europe extract into postgresql database and tile requests are really slow on this machine. I have didn't enabled caching as it caused some problems when I enabled it. I was thinking about upgrading system to some multicore AMD Ryzen cpu as this current cpu has only 4 cores. Maybe AMD Threadripper 1950X (16 cores 32 threads) when it will be released. Does tileserver speed of responding to requests benefit from cpu with multiple cores? Do you have some benchmarks? I can also see that responses are faster when there are less objects on current tile. Thank you.

Performance characteristics are likely to be very similar to other examples of tile rendering, and a lot has been written about that. The important points are

caching is key
suitable partial indexes generally help lower zoom performance
fast drives are essential
RAM is needed for RAM cache
the workload parallizes very well

Given the rest of your system specifications, you are probably CPU bound.

For Mapzen's hosted SaaS version of Tilezen we use Amazon's AWS and host the data in RDS and then point multiple EC2 tilequeue workers at those RDS databases with jobs in an SQS queue. If there's any true-ism for scaling it's that you can scale up until some new bounds are hit ;)
(There are public Chef repos for getting Tilezen to work in AWS if that's your cup of tea.)

Thank you a lot for your answers.


Check for realm_access and roles properties

Check for realm_access and roles properties before checking for realm level roles.  Otherwise we access an undefined property for users that do not have a realm level role.

This looks legit 👍
i don't know how others feel, but i would say to squash these 2 commits into 1

@lholmquist agree - @jimdillon can you squash and push to update the PR? Thanks!

@lholmquist , @lance, commits have been squashed into 1 as directed.

@jimdillon thanks!


About none heap allocation profiling

hi
Using JDK heapdump and the alloc engine of async-profiler can effectively diagnose heap-related problems.
But for non-heap direct memory, currently known diagnostic tools are:

For JDK 15 and above, you can use jdk.DirectBufferStatistics to check the capacity and usage, but it is completely different from jdk.ObjectAllocationInNewTLAB and does not support finding hot spots.
You can trigger heapdump and then count the java.nio.DirectByteBuffer object, but this way you can only get the capacity and usage.

Is it possible to add a direct memory profiling engine like async-profiler's lockTracer, and use interval=1m or events/timeUnit to control the overhead.

I have no plans to add a separate engine for Direct ByteBuffers, since this is just a special case of native memory profiling.
See #491, #453 for the discussion of nativemem feature. I also have a prototype for profiling malloc/free calls without LD_PRELOAD. It will likely appear in one of the nearest releases.


Improve decryption failure message

Help some users like #16832 #1851
There are many users reporting similar problem: if the SECRET_KEY mismatches, some operations (like 2FA login) only reports unclear 500 error and unclear "base64 decode error" log （some maintainers ever spent a lot of time on debugging such problem)
The SECRET_KEY was not well-designed and it is also a kind of technical debt. Since it couldn't be fixed easily, it's good to add clearer error messages, then at least users could know what the real problem is.

I was unable to create a backport for 1.19. @wxiaoguang, please send one manually. :tea:


Added tests for find_duplicates

Description
This update introduces unit tests for the find_duplicates function in the twinTrim.flagController module. The tests cover various scenarios, including finding duplicate files, handling directories with no files, and proper filtering of files. These tests ensure the robustness of the duplicate detection functionality by validating its behavior in different contexts.

Fixes #22

Type of change

[x] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[x] Tests update

Checklist

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] My changes generate no new warnings
[x] New and existing unit tests pass locally with my changes
[x] I have maintained a clean commit history by using the necessary Git commands
[x] I have checked that my code does not cause any merge conflicts

Screenshots (if applicable)

Want me to add anything else I will add

@Sai-ganesh-0004
I see no problems with the code , but let @techy4shri submit her review
will merge it ,if she doesn't request any changes!

@techy4shri Please review

can you add gssoc-ext label for this pr