Implement support for Node Resource Interface

NRI (https://github.com/containerd/nri/) is a new project by containerd
that (additionally to other features not important for us) provides a
way to implement a plugin that is notified each time a contaianer
is created / delete in a synchronous way.
This commit extends Inspektor Gadget to support it. It's still
experimental and needs containerd v1.5+ to work.
How to use

Create a Kubernetes cluster that uses containerd 1.5.0-beta.1+ as runtime.
Deploy Inspektor Gadget with NRI as hook mode kubectl gadget deploy --image=kinvolk/gadget:mauricio-nri --hook-mode=nri | kubectl apply -f -
Start a tracer kubectl gadget execsnoop
Create a pod, perform some actions and check that the tracer captures them.

Testing done
Steps described above.
TODO

[ ] Open issue for automatically install the binaries and configuration when using --hook-mode=auto and containerd 1.5+ is used.
[ ] Rebase once https://github.com/kinvolk/inspektor-gadget/pull/181 is merged
[x] Documentation

In my opinion, the Todo about hook-mode=auto could be done in another PR.

Flatcar Alpha 2905.0.0 has containerd 1.5.2, so this PR could be tested there.

In my opinion, the Todo about hook-mode=auto could be done in another PR.

I totally agree. (It's also not an easy task...)
I'll open an issue for that once we merge this PR.
Btw, I think it's now ready for review :tada:

I gave it a try with containerd v1.5.2 and nrigadget automatically detected new containers:
$ kubectl exec -ti -n kube-system gadget-fjfgw -- gadgettracermanager -dump
List of containers:
5327ff2973fe4c0b9b1508fbb4a63e7bec23a1ad9e5cd31bb9a6577e32b364b4 -> {state:{NoUnkeyedLiterals:{} DoNotCompare:[] DoNotCopy:[] atomicMessageInfo:0xc0000d8188} sizeCache:0 unknownFields:[] ContainerId:5327ff2973fe4c0b9b1508fbb4a63e7bec23a1ad9e5cd31bb9a6577e32b364b4<EMAIL_ADDRESS>CgroupId:41105 Mntns:4026534350 Namespace:default Podname:nginx2 ContainerName:nginx2 Labels:[key:"io.kubernetes.pod.namespace" value:"default" key:"io.kubernetes.pod.uid" value:"f85483ff-538f-49e8-961a-913fd85b8d7e" key:"run" value:"nginx2" key:"io.kubernetes.pod.name" value:"nginx2"] CgroupV1: CgroupV2: MountSources:[]}
List of tracers:

LGTM


Cannot reference programatically created label if it placed on the same line with heading

Description
#set heading(numbering: "1.")

// doesn't work
#let lab = label("asdf")

= asdf #lab

@asdf // error: cannot reference text

// work
#let lab = label("asdf")

= asdf
#lab

@asdf

// work

= asdf <asdf>

@asdf

Reproduction URL
No response
Operating system
Linux
Typst version

[X] I am using the latest version of Typst

Write #[= asdf] #lab instead for now, this is a current limitation in how label attachment is parsed. The compiler can correctly associate the label-specific <asdf> syntax with the entire heading, but as far as it knows = asdf #lab could be =asdf 5 (which would be part of the heading) or =asdf test (which would also be), so it disambiguates by having lab be part of the heading body, and thus it points to asdf (inside the heading) instead of the whole heading.

Why is it closed? Is this behavior be intended, or will it not be fixed/will be fixed soon?

It's not a bug per se as the label is contained within the heading and there's not much the compiler can change about it at the parser stage. The only possible solution I'm aware of is to not allow variable labels to be attached via markup at all. We might do that.

I've had this issue as well, and found it quite confusing. You can find my experience in discussion https://github.com/typst/typst/discussions/4043.
In my case I wrongly assumed the issue was with the dynamic label (built from a variable).
Both the documentation and the error codes were not very clear as to what was happening in this case.
What I tried seemed very intuitive to me, so I'm guessing more people will hit this issue.
If this is not fixable, maybe at least the error/help messages could be clearer?


Problem with sync quiz

https://inria.github.io/scikit-learn-mooc/linear_models/linear_models_wrap_up_quiz.html
Question "How large is the largest absolute value of the weight (coefficient) in this trained model?" --> answer is below !

Indeed there is a missing +++  {"tags": ["solution"]} separator. Let me fix this on the private repo and sync.

Pushed to master as e0f1901c544f8767bcb694ee637a22cd51d340b7, the online jupyter-book will update automatically in a few minutes.


Logo Design for PYSearch

These are my logo proposal for this project.
I'm very welcome if you have any comments, opinions, or revisions. Please just tell me.
I'll provide all file types and sizes you needed.
Hope you like it.
Version 1

Version 2

Added logo by @anharismail


Free the end -> Ending of the end

What is this PR for?
eee

[X] I have made and am willing to license my contribution under the MIT license, or have permission from the original author to license it under MIT.

e?

e :3


update docs generation script to work better with selinux

motivation: docs scripts is broken on selinux due to restriction on ssh-agent
changes: change the jazzy workspace to a directory accessible by the CI node so we can push from the agent instead of from the docker container

@weissi once I bake the new solution on swift-log will need to carry over to other projects too


Pointer events don't give screenX and screenY

From @abarth on January 16, 2015 7:58
We have this in ui::Event and in web input events.  Seems like we should have it for pointer events too.
Copied from original issue: domokit/mojo#36

How would you use this?

From @abarth on February 12, 2015 4:37
To coordinate with other apps on the screen that are in some other coordinate system from you.

Ah, yeah, that makes sense.

@abarth might want to take this for his pointer work

This is obsolete now.


Added missing resource barrier. Fixes #1 issue

This resource barrier removes heavy glitches on the specific graphics cards.

Fixed in latest release, sorry we didn't address this PR sooner.


Fix assignments to RealmList properties on managed objects

This adds support for assigning and importing unmanaged objects by assigning RealmList property on an already managed object.
Closes #718

Nice....I'm not 100% sure reassign should be in the ListTests, but we don't have another more obvious place right now, and probably speak to a broader discussion.

Yeah. I though of it, but didn't want to put up the whole exhaustive type infrastructure somewhere else. I guess we should get the infrastructure migrated to use the schema API and reassess where to put these.

The existing tests showed some issues with assignments from already managed list and especially self assignments resulting in empty lists. Added some RealmInterop.realm_equals checks and some additional test of specific assignment scenarios.
Haven't touched DynamicMutableRealmObject.set so that still doesn't support updating lists. Requires a bit more effort to split paths based on type (or name Value/Object/List variants?) along with all the tests, so I would suggest filing a separate issue on that to avoid blocking this fix. All list operations are also still doable on the list retrieved by getList so we have an immediate workaround for that.

Nice...but I think I identified a corner case that isn't supported. But apart from that everything looks good.

@cmelchior As per https://github.com/realm/realm-kotlin/pull/719#discussion_r824728455 I think this should be good to go?


⚠ Thumbnails API Endpoint has degraded performance

In 718c77e, Thumbnails API Endpoint (https://thumbnails.roblox.com/v1/assets?assetIds=82738847&format=Png&isCircular=false&size=30x30) experienced degraded performance:

HTTP code: 200
Response time: 1918 ms

Resolved: Thumbnails API Endpoint performance has improved in f232270.


Prestashop installer

Prestashop installer for composer modules and themes.

Thanks, could you add tests too?

Created a test. Not sure it is entirely correct, let me know!

Sorry I should have be more specific, take a look at https://github.com/composer/installers/blob/master/tests/Composer/Installers/Test/InstallerTest.php#L144
We just need a couple lines that tests support for the installer and support for each of the types. That way we explicitly know what it is supposed to resolve to.
Usually I only create individual test cases for installers that perform custom functionality outside of the base installer.

That makes sense! Fixed the tests and removed NetBeans from gitignore

Thanks!


Benchmark Reporting is inaccurate

This was shared by a user:
$ java -cp dependency/*:nats-benchmarks-0.0.1-SNAPSHOT.jar  io.nats.examples.benchmark.NatsBench -s nats://<redacted>:4223 -np 1 -ns 0 -ms 1024 -n 1 showcase.benchmark.simple

Starting benchmark(s) [msgs=1, msgsize=1024, pubs=1, subs=0]
Current memory usage is 339.78 mb / 358.50 mb / 5.19 gb free/total/max
INFO  - Use ctrl-C to cancel.
INFO  - Current date time: Thu May 21 15:59:41 CDT 2020

Discovered NATS Servers: nats://<redacted>:4222
Discovered NATS Servers:<redacted>:4223
Connected NATS Server: nats://<redacted>:4223 - Event :nats: connection opened
Connected NATS Server: nats://<redacted>:4223 - Event :nats: connection opened
Unable to stop reader thread
Connection to NATS servers closed
INFO  - Pub Only stats: 288 msgs/sec ~ 288.75 kb/sec

INFO  - Successfully Published messages: 4
INFO  - Successfully Received messages: 0
Final memory usage is 296.56 mb / 358.50 mb / 5.19 gb free/total/max
INFO  - Current date time: Thu May 21 16:01:05

Which part is inaccurate, maybe I can't see it well on my phone?On May 26, 2020 3:34 PM, Colin Sullivan<EMAIL_ADDRESS>wrote:
This was shared by a user:
$ java -cp dependency/*:nats-benchmarks-0.0.1-SNAPSHOT.jar  io.nats.examples.benchmark.NatsBench -s nats://:4223 -np 1 -ns 0 -ms 1024 -n 1 showcase.benchmark.simple
Starting benchmark(s) [msgs=1, msgsize=1024, pubs=1, subs=0]
Current memory usage is 339.78 mb / 358.50 mb / 5.19 gb free/total/max
INFO  - Use ctrl-C to cancel.
INFO  - Current date time: Thu May 21 15:59:41 CDT 2020
Discovered NATS Servers: nats://:4222
Discovered NATS Servers::4223
Connected NATS Server: nats://:4223 - Event :nats: connection opened
Connected NATS Server: nats://:4223 - Event :nats: connection opened
Unable to stop reader thread
Connection to NATS servers closed
INFO  - Pub Only stats: 288 msgs/sec ~ 288.75 kb/sec
INFO  - Successfully Published messages: 4
INFO  - Successfully Received messages: 0
Final memory usage is 296.56 mb / 358.50 mb / 5.19 gb free/total/max
INFO  - Current date time: Thu May 21 16:01:05
—You are receiving this because you are subscribed to this thread.Reply to this email directly, view it on GitHub, or unsubscribe.

I am confused by this unable to stop reader thread, i haven't seen that before. But I am not sure which stats are wrong?

closing needed more information


Migrate all remaining uses of the old JSONObject and JSONArray library

Rationale
Good riddance
Changes

Make ApiSimpleResponse simple again: switch to new JSONObject, stop implementing Map (no need for that), remove unnecessary constructors, etc.
Switch AbstractAuditDomainKind.getType() to return new JSONObject. This migrates many of the audit domain kinds plus related infrastructure.
Remove unused methods

Looks fine but might as well wait until we branch for 23.5 to avoid needing to fix any tests in that branch?

Yes, I was thinking the same thing.


Cannot run demo on Windows

npm start is failing on Windows 10.
Details

Browser and browser version: ???
OS version: Windows 10
xterm.js version: 2.2.3

Steps to reproduce

Use Windows 10
Open PowerShell
npm install
npm run

=> npm install

><EMAIL_ADDRESS>prepublish D:\xterm.js
> npm run build

><EMAIL_ADDRESS>build D:\xterm.js
> gulp build

[20:41:33] Using gulpfile D:\xterm.js\gulpfile.js
[20:41:33] Starting 'tsc'...
[20:41:36] Finished 'tsc' after 3.51 s
[20:41:36] Starting 'browserify'...
[20:41:39] Finished 'browserify' after 2.67 s
[20:41:39] Starting 'sorcery'...
[20:41:39] Finished 'sorcery' after 172 ms
[20:41:39] Starting 'build'...
[20:41:39] Finished 'build' after 5.9 μs
npm WARN optional SKIPPING OPTIONAL DEPENDENCY<EMAIL_ADDRESS>(node_modules\chokidar\node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for<EMAIL_ADDRESS>wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})

=> npm start

><EMAIL_ADDRESS>prestart D:\xterm.js
> npm run build

><EMAIL_ADDRESS>build D:\xterm.js
> gulp build

[20:41:55] Using gulpfile D:\xterm.js\gulpfile.js
[20:41:55] Starting 'tsc'...
[20:41:59] Finished 'tsc' after 3.45 s
[20:41:59] Starting 'browserify'...
[20:42:02] Finished 'browserify' after 2.77 s
[20:42:02] Starting 'sorcery'...
[20:42:02] Finished 'sorcery' after 171 ms
[20:42:02] Starting 'build'...
[20:42:02] Finished 'build' after 5.59 μs

><EMAIL_ADDRESS>start D:\xterm.js
> node demo/app

Cannot find module '..\build\Release\pty.node'
module.js:457
    throw err;
    ^

Error: Cannot find module '..\bin\win32\x64.m48.node'
    at Function.Module._resolveFilename (module.js:455:15)
    at Function.Module._load (module.js:403:25)
    at Module.require (module.js:483:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (D:\xterm.js\node_modules\node-pty\lib\pty.js:18:9)
    at Module._compile (module.js:556:32)
    at Object.Module._extensions..js (module.js:565:10)
    at Module.load (module.js:473:32)
    at tryModuleLoad (module.js:432:12)
    at Function.Module._load (module.js:424:3)

npm ERR! Windows_NT 10.0.14393
npm ERR! argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\brian\\AppData\\Roaming\\npm\\node_modules\\npm\\bin\\npm-cli.js" "start"
npm ERR! node v6.5.0
npm ERR! npm  v3.10.8
npm ERR! code ELIFECYCLE
npm ERR<EMAIL_ADDRESS>start: `node demo/app`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>start script 'node demo/app'.
npm ERR! Make sure you have the latest version of node.js and npm installed. npm ERR! If you do, this is most likely a problem with the xterm package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node demo/app
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs xterm
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls xterm
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     D:\xterm.js\npm-debug.log

=>

You need to install the dependencies of the https://github.com/rprichard/winpty project

Would you mind if I made a pull request to add that to the readme? I had no idea.

That would be awesome :smiley:

So I ran npm install node-ptyin the same directory and I'm getting a blank-ish terminal? Is there something else I'm missing?

Are there any errors in the console?

No errors in my PowerShell window or in Chrome's JS console. Also the server seems to hang forever if I refresh.

OK, I figured that out. Apparently using ConEmu causes the server to never be able to fork a process or something. Using a native PowerShell window totally fixed that. So I can add that to the readme also. Now the demo definitely seems to be working.


merge from template-arlac77-github

.github/workflows/ci.yml

chore(deps): add 20.16.0 (jobs.test-node.strategy.matrix.node-version)

.gitignore

chore: add .wrangler ()

Pull Request Test Coverage Report for Build<PHONE_NUMBER>5
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build<PHONE_NUMBER>1:
0.0%

Covered Lines:
54

Relevant Lines:
54

💛  - Coveralls


(RE-5539) Set SSL environment variables to point to secure locations

Hmm, this is potentially not necessary, though I'm not positive. More investigations in progress

Yeah, I think this isn't needed. Will reopen if something indicates otherwise


Support writing to zk 3.4.x servers

After bumping zk client version to 3.5.5, leader election was broken
against 3.4.x servers.
This fix restores the support by making sure unsupported features are
not used in write path.
pr-link: Alluxio/alluxio#9486
change-id: cid-55abefd1d6aa0f04a748e521566a3f939a5c6310

@calvinjia PTAL. Thanks!

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/4633/
Test PASSed.

alluxio-bot, merge this please


Day/Night fixed time acceleration

Have a script that fixes time acceleration so we have more multi-day operations.
Say that first light is 6:00 and last light is 18:00
Between 6:00 and 17:30 time is 12x speed (so roughly 1 hour real time)
Between 17:30 and 18:00 time is 6x speed (to give 5 minutes to set up RON position when there is still light)
Between 18:00 and 6:00 time is 144x speed (so night is 5 minutes long)

Idea from Kay
could be a https://cbateam.github.io/CBA_A3/docs/files/common/fnc_waitAndExecute-sqf.html
every second watching sunOrMoon and when it's changing, changing acceleration accordly

done in https://github.com/gerard-sog/arma3-macvsog-columbia-scripts/pull/255


Nice to have things

[ ] Green fire on title screen
[ ] Better subtitle quality

don't needed both


Still maintained? + Localization support

Is this gem still maintained?
If so, it would be great if you can allow localization of the error message.
This block
https://github.com/HCLarsen/devise-uncommon_password/blob/cca8f40d05b4136fee5e053a71fd5bcffc38dd1e/lib/devise/uncommon_password/model.rb#L33-L37
Should probably just have something like:
errors.add(:password, :common)

Which will just allow us to define the message in a localization file:
# config/locales/activerecord.en.yml
en:
  activerecord:
    errors:
      models:
        user:
          attributes:
            password:
              common: "must not be a commonly used password"

That's a good idea. I'll look into this.

Once it's fixed, I can add the brazilian portuguese (pt-BR) translation. :smile:


Vertical and horizontal borders issues

There are some minor visual issues related with borders:
Top and bottom borders are cut on first and last rows when highlight regions are configured

Bottom border is cut on last row when cell is selected

Right border is cut on last column

Another issue is when highlighting regions is used in combination with fill down to draw a border on selection, when the new value is applied the border is thinner and if you scroll it appears correctly.
All these issues have been detected on Mac OS Ventura and are replicable on Safari, Chrome and Firefox.

This is fixed in 6.0.0


Add ability to see tx changes if  SQL queries are executed on server and client.

Hi, what are the current plans for providing a fix for this issue? It seems to be an important limitation for using OrientDB in production systems.

Assigned to @tglman

hi,
This is implemented already in 3.0, closing


Docs: wrong example code in JSX chapter of Handbook Reference

Page URL: https://www.typescriptlang.org/docs/handbook/jsx.html#function-component
Issue:
The overloads code example is wrong, overload signature is not compatible with implementation:
interface ClickableProps {
  children: JSX.Element[] | JSX.Element
}

interface HomeProps extends ClickableProps {
  home: JSX.Element;
}

interface SideProps extends ClickableProps {
  side: JSX.Element | string;
}

// HERE: HomeProps is not compatible with SideProps, this overload example is wrong.
function MainButton(prop: HomeProps): JSX.Element;
function MainButton(prop: SideProps): JSX.Element {
  ...
}

Recommended Fix: Having HomeProps and SideProps both overloads, then provide implementation with HomeProps | SideProps type.
Browser: independence

Htm, yeah, it is a bit of a weird one - I've submitted a fix in https://github.com/microsoft/TypeScript-Website/commit/94867a81d37d897af212b06d0eede1afbaa10bb9 will go live next week

Htm, yeah, it is a bit of a weird one - I've submitted a fix in https://github.com/microsoft/TypeScript-Website/commit/94867a81d37d897af212b06d0eede1afbaa10bb9 will go live next week


Add in-air horizontal inertia that can be slightly controlled (incl. dash)

Let games like DRG and Warframe inspire you
When dashing, I would also like to see a softer transition from dash to flying state

@alexesmet
I don't understand what you want
But now you can feel weight


Problem using custom parser ?

Hello,
First of all, thanks for reading and thanks for this amazing work on frcnn for keras :)
I am working with a big dataset and I am trying to detect only 1 object class (traffic light). Because my dataset is kind of huge, I am using a mongodb and was not able tu use one of the 2 parsers provided. I made some test with the simple parser using pictures from my db that I stored locally, it worked fine ! Awesome ! But now that I am trying to make my own parser I am facing problems :/
I based my parser on the simple_parser, the returned dictionary has exactly the same structure except for the 'filepath' key which is now 'data' and store a (640, 1024, 3) numpy array corresponding to my RGB picture. I checked in the code and, if I am not wrong, the only point to care about was in data_augment, I changed the img = cv2.imread(img_data_aug['filepath']) in the augment function by just reading the data : img = img_data_aug['data']
The training process is going well, I mean that there's no exception raised and it's going through all the epochs. Here is my problem, when I try to evaluate my trained model, it does not predict any bounding box (even if I try on training data...). I tried to solve this by looking to the code and other issues. I checked the class mapping and the 'bg' is correctly the last one. I don't really know where this can come from and so I'm asking here ^^'
I know this is not really accurate but I can give any precision if someone ask for some details.
Thanks

After few more investigations the problem seems to be that, during the evaluation, all the ROIs proposed by the rpn are classified as bg. As I said, my problem is just a binary classification as I just need to detect 1 object class I don't think the classifier is mistaking, so probably the rpn ? I changed nothing on the models architecture, and this was working great with the simple parser...

This issue can be closed, I found out what was my problem.
If someone is facing the same issue : cv2.imread() returns a (X, Y, 3) numpy array in BGR instead of RGB. The channels a re ordered during the prepocessing phase but if you're not using cv2 anymore you'll have some troubles during the prepocessing.


python37Packages.pystemd: 0.5.0 -> 0.6.0

Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/python3.7-pystemd/versions.
meta.description for python37Packages.pystemd is: '"A thin Cython-based wrapper on top of libsystemd, focused on exposing the dbus API via sd-bus in an automated and easy to consume way."'.

Checks done (click to expand)

built on NixOS
/bin/sh passed the binary check.
1 of 1 passed binary check by having a zero exit code.
0 of 1 passed binary check by having the new version present in output.
found 0.6.0 with grep in /nix/store/i4wxm2h33mb9md8jyx2832cwa9hm4492-python3.7-pystemd-0.6.0
directory tree listing: https://gist.github.com/ef01d806c4e038601f6898e256e07f04
du listing: https://gist.github.com/189ef25932a79c004d9621afbfe62273

Rebuild report (if merged into master) (click to expand)

8 total rebuild path(s)
2 package rebuild(s)
2 x86_64-linux rebuild(s)
2 i686-linux rebuild(s)
2 x86_64-darwin rebuild(s)
2 aarch64-linux rebuild(s)
First fifty rebuilds by attrpath
python27Packages.pystemd
python37Packages.pystemd

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/i4wxm2h33mb9md8jyx2832cwa9hm4492-python3.7-pystemd-0.6.0 \
  --option binary-caches 'https://cache.nixos.org/ https://r-ryantm.cachix.org/' \
  --option trusted-public-keys '
  r-ryantm.cachix.org-1:gkUbLkouDAyvBdpBX0JOdIiD2/DP1ldF3Z3Y6Gqcc4c=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(r-ryantm's Cachix cache is only trusted for this store-path realization.)
Or, build yourself:
nix-build -A python37Packages.pystemd https://github.com/r-ryantm/nixpkgs/archive/15c64ae4cbe593f928b4cc1e948af3b2cf0a0f65.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/i4wxm2h33mb9md8jyx2832cwa9hm4492-python3.7-pystemd-0.6.0
ls -la /nix/store/i4wxm2h33mb9md8jyx2832cwa9hm4492-python3.7-pystemd-0.6.0/bin

cc @flokli for testing.

release notes:
Improve in-repo docs.
changed license from BSD to LGPL-2.1+.
Raise DBusInterruptedError instead of DBusBaseError when a system call is interrupted.
expose sd_bus_match_signal as Dbus.match_signal for easy monitoring of the bus.
Drop python 2 support and six requirement.
Auto convert Path object to bytes so that can be passed to dbus.
Add service_type to pystemd.run for easy Type selection.
Many new DBus properties.
access interface methods and properties directly.
systemd1.Manager.StartTransientUnit now support extra units, allowing users to also create timer/path transient units.
pystemd.run now waits for start unit job to finish, before even thinking in tearing down the unit (and closing pty's)

This dropped python 2 support and changed license, will update accordingly.


gparyani: Watch Mojo Marketplace

gparyani requests the watch of the watch_keyword Mojo Marketplace. See the MS search here and the Stack Exchange search here.

Mojo Marketplace has been seen in 0 true positives, 0 false positives, and 0 NAAs.

The chat transcript points to https://meta.stackexchange.com/questions/328045/mojomarketplace for background but I can no longer access this apparently deleted spam.


More flexibility when time traveling in tests

The purpose of this PR is to bring parity to the InteractsWithTime::travelTo parameter type hint so it matches the Carbon::setTestNow type hint.
IMO this will allow for more flexibility when time traveling in tests. Here are some examples that would be supported if this PR were merged.
Currently, these all result in a type error.
$this->travelTo('Sunday');
$this->travelTo('tomorrow');
$this->travelTo('Monday +1 week');
$this->travelTo('+1 week 2 days 4 hours 2 seconds');
$this->travelTo('2020-11-23');

Meanwhile, these all work fine.
Carbon::setTestNow('Sunday');
Carbon::setTestNow('tomorrow');
Carbon::setTestNow('Monday +1 week');
Carbon::setTestNow('+1 week 2 days 4 hours 2 seconds');
Carbon::setTestNow('2020-11-23');

Unless I'm missing something, the DateTimeInterface requirement seems like an arbitrary restriction when Carbon's implementation of setTestNow has no such restriction.
// InteractsWithTime.php
public function travelTo(DateTimeInterface $date, $callback = null)
{
    Carbon::setTestNow($date);
    ...
{

// CarbonInterface.php
@param Closure|static|string|false|null $testNow real or mock Carbon instance
public static function setTestNow($testNow = null);

I'm not sure if we can remove that type hint on a patch release?

That's a fair point. Should I PR it to master or wait for more input?

This is indeed a breaking change and best sent to master.


"Error in $: expected string, encountered Object" when trying to parse deep-diff package

full output https://pastebin.com/FFNgt1Fm
output that is highlighted with red https://pastebin.com/9LtWhyQC
commit with this issue https://github.com/srghma/my-create-react-app/tree/17ffe59d472c2d7b9647c36c57b38a45023e67f7
nixfromnpm is installed with https://github.com/srghma/dotfiles/blob/c4e30e02e59bf087b7129573c1cf63af479883f6/nixos/pkgs/nixfromnpm/default.nix#L4
how to reproduce:
nixfromnpm -f package.json -o nix

@adnelson hi, can you please suggest what should be fixed here, maybe I could even help)

@srghma it sounds like the deep-diff package's package.json does not conform to valid JSON:
WARNING: Failed to fetch dependency deep-diff version >=0.3.5 <0.4.0: InvalidPackageJson

... have you tried extracting the package.json from the exact version nixfromnpm resolves and hand-inspecting it?
I have encountered at least two packages with this type of issue and I had to override the package and apply a patch to the package.json.

e.g. I've had to do something like this:
let

  generatedNodePackages = import ./nodePackages {
    nodejs = nodejs-6_x;

    inherit pkgs;
  };

  npm = generatedNodePackages.override {

    overrides = nodePackagesNew: nodePackagesOld: rec {
      # `mold-source-map` specifies a "main" field in it's
      # `package.json` which points to non-existent file. This causes
      # `nixfromnpm` to fail with an error message of "Main entry
      # point index does not exist".
      mold-source-map       = mold-source-map_0-4-0;
      mold-source-map_0-4-0 = nodePackagesOld.mold-source-map_0-4-0.overrideNodePackage (oldAttrs: {
        derivationOverrides = {
          patchPhase = (oldAttrs.patchPhase or "") + ''
            ${patch}/bin/patch < ${./remove-main-00.patch}
          '';
        };
      });
    };

  };

in

  ...

@ixmatus tnx, just wanted to ask for example ) I'll look at weekends)

So I think there are a few issues here:

If npm is able to parse the JSON, then we probably should too, unless this is a truly pathological case. I don't know if this means using a more permissive parser than Aeson, but there are other options.
In this kind of situation we should definitely not be returning a successful exit code. It's been a long-standing gripe of mine. Admittedly there's a tension between "stop as soon as an error is encountered" and "go as far as possible, just note when there are errors". But regardless, a state like this should at least not return 0.

In any case I'm looking into this, not sure how much time I'll have on it though.

@adnelson hi, so you will look why this is happening, tnx
what about issue that @ixmatus described, why nixfromnpm should check whether main field of package.json link to existing file?

I don't think (although I'm not sure) that that is the same issue as what we're seeing here. What looks like is happening right now, is that it's trying to parse the JSON that the NPM server is giving as a response to "give me all of the versions of deep-diff that you have", and the parser can't understand the JSON structure that's being sent. So, it can't generate a definition of the package at all.

@adnelson tnx for the fix !!
re dont check that main field of package.json links to existing file:

sorry for asking this here, I should have created the different issue
I thought it would be tedious to write patch each time nixfromnpm encounters the issue like this just to appease nixfromnpm (because npm doesnt chech things like this), but I think nixfromnpm does right job: main is one of the most important fields and mold-source-map package in example above made a mistake that should be fixed either by making patch or clone

@srghma looks like I created confusion with my comments. I was trying to provide an example of a package.json that was misbehaving for me and how I overrode it, I did not think it was specifically related to your issue. Further proven by @adnelson's PR #139.
@srghma main only matters when you need to have an entrypoint, for libraries it doesn't really matter and in the mold-source-map case it did not. However, I agree with your point that we should contribute fixes upstream when we encounter cases like these and in this particular case I chose not to because the project looks dead and I also didn't have time.


Small Columns don't receive default padding property.

Small columns, or any element with classes that doesn't start with col- fail to get the default padding property from the ginger settings file.
*[class^="col-"]
Should be changed to:
*[class*=" col-"], *[class*=" sm-col-"]

Will be merge in to master from develop


Add nestedRowsLimit parameter to DisplayConfiguration

By default DataFrame<T>.toHTML() renders only first 20 rows of the dataset. We can override it by supplying a DisplayConfiguration object with desired rowsLimit.
However if dataset contains FrameColumn those nested datasets are rendered with hard-coded 5 rows limit and there is no way of changing it.
This PR adds nestedRowsLimit parameter to DisplayConfiguration used to limit rendered rows number of nested datasets in FrameColumn.
Also it allows to use Int.MAX_VALUE as a sentinel value to turn the limit off in order to render complete dataset.

Good idea! :D


Theming

Capability to set the theme for the whole application

Hi Widiana,
Thank you for reporting this issue. Indeed this is not a feature request since there is already a way to do this. It just needs to be added to the documentation.
You have to wrap your app in the Provider component:
import { Provider, defaultTheme } from "@react-native-material/core";

const App = () => (
  <Provider
    theme={{
      // extend the default theme
      ...defaultTheme,
      palette: {
        ...defaultTheme.palette,
        // override the primary color
        primary: { main: "red", on: "white" },
      },
    }}
  >
    ...
  </Provider>
);

export default App;

If you have time and you would like to help please make a PR to the documentation repo and add Theming page.

@yamankatby , could you please explain what is the meaning of main and on properties in palette, and when do we use each of them?

Hi, I tried this solution and got this error in typescript.
Looks like the children is missing in the type definition.

Hi, I tried this solution and got this error in typescript. Looks like the children is missing in the type definition.

Edit: Is npm version outdated?

I'm having the same issue when using typescript as the base of the application when it comes to wrapping my entire app with . However while I am able to change the color of the appbar, I don't think there is a way of easily changing the background color of list items.
Here is what I get on an appbar and a list of items with the provider as:
        <Provider
            theme={{
                ...defaultTheme,
                palette: {
                    ...defaultTheme.palette,
                    primary: {main: "red", on: "yellow"}

                }
            }}
        >

![1662482504010](https://user-images.githubusercontent.com/76730458/188693886-3ed04ce5-e333-416a-9493-6aa1bcc0d3ac.JPEG =250x250)


Universal Chess Interface support and associated UCISearcher Trait.

In order to be considered a modern chess engine, Pleco needs to support the Universal Chess Interface (shorthand is UCI) inside of both the engine, as well as the primary searcher. More information about UCI can be found here.
There are four parts I would like to outline for implementing this.
1) main.rs args
When given the command "uci" as an argument (or stdin after load), Engine::uci(...) should be called, letting the Engine handle it from there.
2) Engine
The Engine must contain a Engine::uci(...) method to allow for communication to and from the GUI. Communication uses stdin and stdout to pass commands back and forth. The command "isready" should allow the engine the opportunity to get both a UCI compatible Searcher (more on this later) and a Board object ready. The GUI can send in options to the Engine before the game actually begins, starting with the "setoption" command. All commands leading up to "go" (which starts the game) can be implemented with a simple IO loop.
3) Mid Game Message sending to / from UCI Searcher
When the Searcher is in the midst of searching, the Engine must act as an intermediary between the GUI and the Searcher. Mid-search, the GUI should only be able to send the command "stop" to the Searcher, which should within reasonable time stop the Search and return the best move found so good.
Some problems that need to be dealt with in concern of this:

How do we allow stdin to be scanned in a separate thread, but without impacting search performance?
What type of structure do we need to pass into the UCI Searcher that allows for checking when to stop?

Furthermore, the Engine needs to be able to do the opposite: Await information from the UCI Searcher and relay that information to the GUI.
4) Implementing the UCISearcher Trait
The UCISearcher Trait should mark specific Searchers as UCI compatible. Currently, the UCISearcher implementation is the following:
pub trait UCISearcher: Searcher {
   fn uci_move(board: Board, timer: &Timer, rx: Arc<Mutex<Option<GuiToEngine>>>) -> BitMove where Self: Sized;
}

Some notes on this:

Receiver needs to be solidified in uci_move as determined by item 3.
A Sender needs to be given in somewhere, to allow the chess board to communicate back.
`fn configuration()' or similar function should allow easily setting up options.

Hey, I have some experience with UCI and would be happy to work on an implementation. Perhaps you could select a license for the project first? It can be messy to try to do it later once you already have contributions from a number of people.

Any and all help is appreciated @jbg ! And good idea, I just added an MIT license to the Repo.

UCI Searcher Trait Solved with #35. Currently stands as follows:
pub trait UCISearcher: Searcher {
    fn uci_setup(board: Board, stop: Arc<AtomicBool>) -> Self where Self: Sized;

    fn uci_go(&mut self, limits: UCILimit) -> BitMove;
}

The stop [Arc] must still be handled through an Engine Thread as determined by point 2.
A new enum, [UCILimit] is defined to give the UCI Searcher an idea of when it should stop by itself (away from the GUI calling stop. Currently the options are:

[UCILimit::Infinite], which means to keep searching until the GUI calls stop.
[UCILimit::Time(Timer)], which means to search with a game standard clock in mind.
[UCILimit::Depth(ply)], search up to a given depth.

Changed Searcher and UCI Searcher Trait with #49 , It now is represented as:
pub trait Searcher {
    fn name() -> &'static str where Self: Sized;

    fn best_move(board: Board, limit: UCILimit) -> BitMove
    where
        Self: Sized;

    fn best_move_depth(board: Board, max_depth: u16) -> BitMove
    where
        Self: Sized {
        Self::best_move(board, UCILimit::Depth(max_depth))
    }
}

pub trait UCISearcher: Searcher {
    fn uci_setup(board: Board, stop: Arc<AtomicBool>) -> Self where Self: Sized;

    fn uci_go(&mut self, limits: UCILimit, use_stdout: bool) -> BitMove;
}

This will need to be done in order for #56.

Closed due to the removal of the UCISearcher trait.


Remove icon artifacts, fixes #1266

Spot on, thanks! LGTM, but right now I have exams so I'll start working on a new release (and merge this) as soon as possible (1-3 weeks).

How did you fix that? Did you update the .sketch file? Can you add that file too? I'm asking because if the sketch file itself isn't updated, then your fix will be overwritten when I generate those icons again.


Added rotation to url helpers

http://cloudinary.com/documentation/image_transformations#rotating_images

Coverage decreased (-1.1%) to 58.904% when pulling 2f48825058abb45e50cde4ed3aa77dfc1a50aed1 on Tyler-pierce:url-helper-rotation into 9fd7459481e9a359f519c0d814c38dc74dfb59f6 on smeevil:master.

Thanks for your time :)

0.1.20 published


Fix ModelPhotoShootTest test failures

🦟 Bug fix
Summary
ModelPhotoShoot tests have started failing recently (https://github.com/gazebosim/gz-sim/pull/2293#issuecomment-1900598909). The failures are caused by a change in the DART physics engine (https://github.com/dartsim/dart/pull/1774) which causes joints to recover after reaching or exceeding their position limits. The debs for this version of DART are in the prerelease repos for testing, so we've only started experiencing this since https://github.com/gazebo-tooling/gzdev/pull/77 which made gz-sim8 use prereleases.
It seems like the model used in the ModelPhotoShoot tests starts off with joint limits violated and recovers after a few iterations. This causes a small movement of the robot. Since the test works by comparing images taken of the robot at the start of simulation and after a few iterations, the small movement causes a discrepancy in the images. The solution here is to run the whole test while simulation is paused.
This also cleans up some TestFixture warnings.
Checklist

[ ] Signed all commits for DCO
[ ] Added tests
[ ] Updated documentation (as needed)
[ ] Updated migration guide (as needed)
[ ] Consider updating Python bindings (if the library has them)
[ ] codecheck passed (See contributing)
[ ] All tests passed (See test coverage)
[ ] While waiting for a review on your PR, please help review another open pull request to support the maintainers

Note to maintainers: Remember to use Squash-Merge and edit the commit message to match the pull request summary while retaining Signed-off-by messages.

note to self: we need to backport this to Garden and Fortress.


Retain ssl/tls config from seed uris in Master/Slave context

Still WIP, but I'm opening this to start a discussion.
The problem I'm trying to solve is the combination of an AWS Elasticache redis cluster (in master-slave cluster-mode) w/ their recently added in-transit encryption. We aren't currently using redis cluster because of the need for at least 3 primary nodes + any optional layer of replicas, and we're rather satisfied w/ the simplicity of master/slave replication and the minimal node count per cluster that it gives.
I'm experimenting to see if I can somehow get a static Master/Slave topology + SSL to work. Before this PR, it simply isn't possible to create a static master/slave topology w/ something like: MasterSlave.connect(client, codec, Arrays.asList("rediss://foo0.bar.baz", "rediss://foo1.bar.baz")). The initial connections all fail because the ssl/tls-related uri info is dropped in the conversion of the RedisMasterSlaveNode objects.
Once I added that, the initial SSL handshake succeeded, but the connection didn't actually succeed, and I saw an endless stream of logs like this:
...
INFO  [2018-01-24T05:00:08.495Z] [] [] [lettuce-nioEventLoop-4-2]: io.lettuce.core.protocol.ReconnectionHandler: Reconnected to abc.xyz.nzcsol.use1.cache.amazonaws.com:6379
INFO  [2018-01-24T05:00:08.496Z] [] [] [lettuce-nioEventLoop-4-1]: io.lettuce.core.protocol.ReconnectionHandler: Reconnected to abc.xyz.nzcsol.use1.cache.amazonaws.com:6379
INFO  [2018-01-24T05:00:08.592Z] [] [] [lettuce-nioEventLoop-4-3]: io.lettuce.core.protocol.ReconnectionHandler: Reconnected to abc.xyz.nzcsol.use1.cache.amazonaws.com:6379
INFO  [2018-01-24T05:00:08.594Z] [] [] [lettuce-nioEventLoop-4-4]: io.lettuce.core.protocol.ReconnectionHandler: Reconnected to abc.xyz.nzcsol.use1.cache.amazonaws.com:6379
...

Digging in further, I found that the MasterSlaveConnectionProvider was ignoring any ssl/tls info present in the seed uri, and fixing that finally let me create and connect to the static master/slave topology over ssl. Now, I see these log lines as the stateful connection objects are getting wired up at app startup time
WARN  [2018-01-24T19:27:27.822Z] [] [] [lettuce-nioEventLoop-4-2]: io.lettuce.core.RedisChannelHandler: Connection is already closed
WARN  [2018-01-24T19:27:27.822Z] [] [] [lettuce-nioEventLoop-4-1]: io.lettuce.core.RedisChannelHandler: Connection is already closed

I create a few different stateful connections to the same cluster because each of the call sites have slightly different uses.
Open Questions

Does this feel like it's headed in the right direction?
Any thoughts on the Connection is already closed warnings?
What branch should I work from for the final PR? We were currently on a 4.x release, but I went ahead and upgraded our dep to the 5.0.1-RELEASE when I started investigating the failures to connect.
Test coverage - I obviously don't have any yet, but I want to get some input on the direction, first.
Blind spots - what am I missing from this being my first time to dig into the actual library code? Do you see any immediate issues w/ this for dynamic master/slave topologies, sentinel topologies, etc?

Thanks a lot for your pull request and all your work related to this issue. That's merged, polished and ported to all affected branches now. Snapshot builds are available now.

Excellent. I'm happy to help. I'll build and push to our company artifactory for now, but what are your plans for the 4.4.x and 5.x branch releases?

I added dates to the bugfix releases for end of February, see https://github.com/lettuce-io/lettuce-core/milestones.


Use properties for recommendation other than categorial?

I'd like to add a property to my item like so:
{
    "event" : "$set",
    "entityType" : "item",
    "entityId" : "some-item-id",
    "properties" : {
        "city": "New York",
        "size_in_sqf": 35
    },
    "eventTime" : "2015-10-05T21:02:49.228Z"
}

then lets say the user has viewed several items and reported a view event.
Now I want the recommender to recommend me items that are similar to the one's the user viewed by taking into account the properties city & size_in_sqf.
That means it should show me items that are in New York and the size_in_sqf is around 35.
How do I do this? I can't find any tutorial other than the official one on using UR and I really want to accomplish something similar to this.
thanks!

This can be simplified by ignoring the user viewed part. Let's say I give the algorithm a list of items that I know the user viewed and I just need it to give me products similar to the ones I provide by taking into account city & size_in_sqf. How do I accomplish that?

This is setting properties for items, which MUST be arrays of strings in
the Universal Recommender. The array may contain only one string, so you
need to change that part. See docs on actionml.com
From: Amit Assaraf<EMAIL_ADDRESS><EMAIL_ADDRESS>Reply: actionml/universal-recommender
<EMAIL_ADDRESS><EMAIL_ADDRESS>Date: July 1, 2018 at 12:54:34 PM
To: actionml/universal-recommender
<EMAIL_ADDRESS><EMAIL_ADDRESS>Cc: Subscribed<EMAIL_ADDRESS><EMAIL_ADDRESS>Subject:  [actionml/universal-recommender] Use properties for
recommendation other than categorial? (#54)
I'd like to add a property to my item like so:
{
"event" : "$set",
"entityType" : "item",
"entityId" : "some-item-id",
"properties" : {
"city": "New York",
"size_in_sqf": 35
},
"eventTime" : "2015-10-05T21:02:49.228Z"
}
then lets say the user has viewed several items and reported a view event.
Now I want the recommender to recommend me items that are similar to the
one's the user viewed by taking into account the properties city &
size_in_sqf.
That means it should show me items that are in New York and the size_in_sqf
is around 35.
How do I do this? I can't find any tutorial other than the official one on
using UR and I really want to accomplish something similar to this.
thanks!
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/actionml/universal-recommender/issues/54, or mute the
thread
https://github.com/notifications/unsubscribe-auth/AAT8S0yXei-ZdXyE6HmDaDsA8PqDqL1Yks5uCSj6gaJpZM4U-cmb
.

Not sure what you mean “taking into account”
What is the primary indicator of user behavior?  For E-Com it is “buy” but for other apps
it may be watch, read, like, etc This is the first thing you must record
because it is the essence of collaborative filtering, even for item
similarity. User behavior if the key thing to look at in determining item
similarity. Then you can apply business rules to narrow down an item based
or item-set based query using item properties like city & size_in_sqf.
Are views your conversions? For E-Com views do not predict sales/buys very
well.
From: Amit Assaraf<EMAIL_ADDRESS><EMAIL_ADDRESS>Reply: actionml/universal-recommender
<EMAIL_ADDRESS><EMAIL_ADDRESS>Date: July 1, 2018 at 1:20:06 PM
To: actionml/universal-recommender
<EMAIL_ADDRESS><EMAIL_ADDRESS>Cc: Subscribed<EMAIL_ADDRESS><EMAIL_ADDRESS>Subject:  Re: [actionml/universal-recommender] Use properties for
recommendation other than categorial? (#54)
This can be simplified by ignoring the user viewed part. Let's say I give
the algorithm a list of items that I know the user viewed and I just need
it to give me products similar to the ones I provide by taking into account
city & size_in_sqf. How do I accomplish that?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/actionml/universal-recommender/issues/54#issuecomment-401630632,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAT8S85x3gZh8lAgkrth8OMv5qGnV_nwks5uCS71gaJpZM4U-cmb
.

I have users who view rental properties (Houses). There are two actions. One which is my primary indicator, schedule (which means they schedule a visit in the house) and the secondary indicator which is view.
I want to recommend based on which houses the user viewed and scheduled other houses that they might like based on the properties of the house, such as it's size and location.

@pferrel How will using arrays of string work? I can see how it will work for places but for sizes of houses it seems like it wouldn't work because how will it know ['34'] is close to ['31']? It will just look at it as categories. Also house price wouldn't work as it varies a lot as well.


for patterns without {} around body sometimes cause concurrent modification exception

Creating this as a separate issue at the request of @asashour.
Discovered another weird issue with for patterns, although this one is unrelated to collection-for.
In the example program below, the only difference between split1 and split2 is that split1 has {} around the body of the for loop, and split2 does not.
void main() {
  print(split1([1,2,3]));
  print(split2([1,2,3]));
}

Iterable<(Iterable<A>, Iterable<A>)> split1<A>(Iterable<A> iterable) => switch (iterable) {
  Iterable<A>(isEmpty: true) => [(Iterable<A>.empty(), Iterable<A>.empty())],
  Iterable<A>(first: var x) => () sync* {
      yield (Iterable<A>.empty(), iterable);
      for (var (ls, rs) in split1(iterable.skip(1))) {
        yield ([x, ...ls], rs);
      }
    }(),
};

Iterable<(Iterable<A>, Iterable<A>)> split2<A>(Iterable<A> iterable) => switch (iterable) {
  Iterable<A>(isEmpty: true) => [(Iterable<A>.empty(), Iterable<A>.empty())],
  Iterable<A>(first: var x) => () sync* {
      yield (Iterable<A>.empty(), iterable);
      for (var (ls, rs) in split2(iterable.skip(1)))
        yield ([x, ...ls], rs);
    }(),
};

When running the program, split1 compiles and runs successfully, but split2 produces a concurrent modification exception at runtime.
(((), [1, 2, 3]), ([1], (2, 3)), ([1, 2], (3)), ([1, 2, 3], ()))
Unhandled exception:
Concurrent modification during iteration: Instance(length:1) of '_GrowableList'.
#0      List.addAll (dart:core-patch/growable_array.dart:308:11)
#1      split2.<anonymous closure> (package:countdown_core/solvers/split.dart:21:23)
#2      _SyncStarIterator.moveNext (dart:async-patch/async_patch.dart:554:14)
#3      _iterablePartsToStrings (dart:collection/iterable.dart:320:13)
#4      IterableBase.iterableToShortString (dart:collection/iterable.dart:240:7)
#5      Iterable.toString (dart:core/iterable.dart:799:37)
#6      _StringBase._interpolateSingle (dart:core-patch/string_patch.dart:829:17)
#7      print (dart:core/print.dart:9:26)
#8      main (package:countdown_core/solvers/split.dart:3:3)
#9      _delayEntrypointInvocation.<anonymous closure> (dart:isolate-patch/isolate_patch.dart:297:19)
#10     _RawReceivePort._handleMessage (dart:isolate-patch/isolate_patch.dart:192:26)

Originally posted by @mmcdon20 in https://github.com/dart-lang/sdk/issues/51376#issuecomment-1427119202

Something either is wrong in the CFE desugaring or VM's Kernel-to-IL
/cc @alexmarkov @chloestefantsova

sdk/282680


feat: add smallstep/certificates

smallstep/certificates: A private certificate authority (X.509 & SSH) & ACME server for secure automated certificate management, so you can use TLS everywhere & SSO for SSH.

Thank you for your contribution!

https://github.com/aquaproj/aqua-registry/actions/runs/5773933971/job/15650452563?pr=14383
windows/arm64 isn't supported.
So let's exclude this by supported_envs.

https://github.com/aquaproj/aqua-registry/actions/runs/5773933971/job/15650452563?pr=14383
windows/arm64 isn't supported. So let's exclude this by supported_envs.

Good catch! Updated.

Thank you!

v4.33.0 is out 🎉
https://github.com/aquaproj/aqua-registry/releases/tag/v4.33.0


Gdp 1082

Locally, I've made a few small code changes and a single configuration change (updating gdp base url in context.xml). Most things are looking good. There are a few errors that I don't think I can correct from the ui. For example, I can successfully process the dataset with id:
54dd5e05e4b08de9379b38e1
But some errors are logged in dev tools:
jquery.js:8625 Mixed Content: The page at 'https://localhost:8449/gdp_web/client/#!catalog/gdp/dataset/54dd5e05e4b08de9379b38e1' was loaded over HTTPS, but requested an insecure XMLHttpRequest endpoint 'http://cida.usgs.gov/thredds/dodsC/prism_v2?request=GetCapabilities&version=1.1.1'. This request has been blocked; the content must be served over HTTPS.send @ jquery.js:8625ajax @ jquery.js:8161getWCSDataSourceUrl @ JobModel.js:140getWPSStringInputs @ JobModel.js:204submitProcessingRequest @ HubView.js:143dispatch @ jquery.js:4430elemData.handle @ jquery.js:4116

jquery.js:8625 XMLHttpRequest cannot load http://cida.usgs.gov/thredds/dodsC/prism_v2?request=GetCapabilities&version=1.1.1. Failed to start loading.send @ jquery.js:8625ajax @ jquery.js:8161getWCSDataSourceUrl @ JobModel.js:140getWPSStringInputs @ JobModel.js:204submitProcessingRequest @ HubView.js:143dispatch @ jquery.js:4430elemData.handle @ jquery.js:4116

The processing still completes successfully. I still receive an email with the results and can download the input and output on demand.
I don't think the errors can be addressed in the app's code. I believe this can be solved by updating the metadata for the datasets so that they point at https. Do you agree?

One mixed content warning remains for an image in the banner:'http://infotrek.er.usgs.gov/docs/nawqa_www/nawqa_public_template/assets/drought-flood_banner.jpg'
I will address that in a separate pull request.

The getcaps is an introspection that should be getting swallowed.

Yes, the getcaps issue is a long outstanding bug.  The UI tries the resource as if it was WCS, and if that fails assumes it is OPeNDAP.

Currently it's only getting logged as an error in the console. It's not apparent to the user in any way.

Is this ok to merge?

I added the fix for the aforementioned mixed content warnings to this PR because it's only one line.

I have confirmed that the same error messages are logged in the dev tools on the dev tier right now.

Since we are running short on time, and since the only issue that was raised was about the error message, and since those error messages appear to be the expected behavior, I'm going to merge without approval.


What's DX?

Most of the README explains things already familiar to anyone who has spent a few weeks with React. So what's DX??? Why do you speak about "DX" like everyone knows what it is?

Developer eXperience, should've probably elaborated a bit more. :blush: Added to the documentation in #314!

I've spent several months getting to know the React ecosystem, even cobbling together my own exploration (by no means a boilerplate) https://github.com/awebfactory/react-pathways and you know we're all dying for a no-nonesense, honest to gosh boilerplate (without even expecting the scaffolding you are providing)... so, thanks for the quick response, will keep tabs on progress here!

Awesome, great to hear you like it!!

I edited the Wikipedia DX page to include 'Developer Experience'.

@steinitz Umm, it 404'd..


Problems in saving the entire model and executing onnx

Thank you for sharing the project. I am a beginner in this field, and currently, I have encountered issues while trying to save the entire pytorch model and exporting it to onnx.
While saving the vit model with provided checkpoints file, the error is as follows
Traceback (most recent call last):
  File "D:\py\Metric3D-main\export_pt.py", line 53, in <module>
    torch.save(model, EXPORT_PATH)
  File "D:\anaconda3\envs\mt3d\lib\site-packages\torch\serialization.py", line 441, in save
    _save(obj, opened_zipfile, pickle_module, pickle_protocol)
  File "D:\anaconda3\envs\mt3d\lib\site-packages\torch\serialization.py", line 653, in _save
    pickler.dump(obj)
AttributeError: Can't pickle local object 'LoRALayer.__init__.<locals>.<lambda>'

and while executing onnx（running metric3d_onnx_export.py）
Traceback (most recent call last):
  File "D:\桌面\模型\py\Metric3D-main\onnx\metric3d_onnx_export.py", line 121, in <module>
    Fire(main)
  File "D:\anaconda3\envs\mt3d\lib\site-packages\fire\core.py", line 143, in Fire
    component_trace = _Fire(component, args, parsed_flag_args, context, name)
  File "D:\anaconda3\envs\mt3d\lib\site-packages\fire\core.py", line 477, in _Fire
    component, remaining_args = _CallAndUpdateTrace(
  File "D:\anaconda3\envs\mt3d\lib\site-packages\fire\core.py", line 693, in _CallAndUpdateTrace
    component = fn(*varargs, **kwargs)
  File "D:\py\Metric3D-main\onnx\metric3d_onnx_export.py", line 108, in main
    torch.onnx.export(
  File "D:\anaconda3\envs\mt3d\lib\site-packages\torch\onnx\utils.py", line 506, in export
    _export(
  File "D:\anaconda3\envs\mt3d\lib\site-packages\torch\onnx\utils.py", line 1548, in _export
    graph, params_dict, torch_out = _model_to_graph(
  File "D:\anaconda3\envs\mt3d\lib\site-packages\torch\onnx\utils.py", line 1113, in _model_to_graph
    graph, params, torch_out, module = _create_jit_graph(model, args)
  File "D:\anaconda3\envs\mt3d\lib\site-packages\torch\onnx\utils.py", line 989, in _create_jit_graph
    graph, torch_out = _trace_and_get_graph_from_model(model, args)
  File "D:\anaconda3\envs\mt3d\lib\site-packages\torch\onnx\utils.py", line 893, in _trace_and_get_graph_from_model
    trace_graph, torch_out, inputs_states = torch.jit._get_trace_graph(
  File "D:\anaconda3\envs\mt3d\lib\site-packages\torch\jit\_trace.py", line 1268, in _get_trace_graph
    outs = ONNXTracedModule(f, strict, _force_outplace, return_inputs, _return_inputs_states)(*args, **kwargs)
  File "D:\anaconda3\envs\mt3d\lib\site-packages\torch\nn\modules\module.py", line 1501, in _call_impl
    return forward_call(*args, **kwargs)
  File "D:\anaconda3\envs\mt3d\lib\site-packages\torch\jit\_trace.py", line 127, in forward
    graph, out = torch._C._create_graph_by_tracing(
  File "D:\anaconda3\envs\mt3d\lib\site-packages\torch\jit\_trace.py", line 118, in wrapper
    outs.append(self.inner(*trace_inputs))
  File "D:\anaconda3\envs\mt3d\lib\site-packages\torch\nn\modules\module.py", line 1501, in _call_impl
    return forward_call(*args, **kwargs)
  File "D:\anaconda3\envs\mt3d\lib\site-packages\torch\nn\modules\module.py", line 1488, in _slow_forward
    result = self.forward(*input, **kwargs)
  File "D:\py\Metric3D-main\onnx\metric3d_onnx_export.py", line 33, in forward
    pred_depth, confidence, output_dict = self.meta_arch.inference(
  File "C:\Users\12431/.cache\torch\hub\yvanyin_metric3d_main\mono\model\monodepth_model.py", line 12, in inference
    pred_depth, confidence, output_dict = self.forward(data)
  File "C:\Users\12431/.cache\torch\hub\yvanyin_metric3d_main\mono\model\model_pipelines\__base_model__.py", line 13, in forward
    output = self.depth_model(**data)
  File "D:\anaconda3\envs\mt3d\lib\site-packages\torch\nn\modules\module.py", line 1501, in _call_impl
    return forward_call(*args, **kwargs)
  File "D:\anaconda3\envs\mt3d\lib\site-packages\torch\nn\modules\module.py", line 1488, in _slow_forward
    result = self.forward(*input, **kwargs)
  File "C:\Users\12431/.cache\torch\hub\yvanyin_metric3d_main\mono\model\model_pipelines\dense_pipeline.py", line 14, in forward
    features = self.encoder(input)
  File "D:\anaconda3\envs\mt3d\lib\site-packages\torch\nn\modules\module.py", line 1501, in _call_impl
    return forward_call(*args, **kwargs)
  File "D:\anaconda3\envs\mt3d\lib\site-packages\torch\nn\modules\module.py", line 1488, in _slow_forward
    result = self.forward(*input, **kwargs)
  File "C:\Users\12431/.cache\torch\hub\yvanyin_metric3d_main\mono\model\backbones\ViT_DINO_reg.py", line 1091, in forward
    ret = self.forward_features(*args, **kwargs)
  File "C:\Users\12431/.cache\torch\hub\yvanyin_metric3d_main\mono\model\backbones\ViT_DINO_reg.py", line 1017, in forward_features
    x = blk(x)
  File "D:\anaconda3\envs\mt3d\lib\site-packages\torch\nn\modules\module.py", line 1501, in _call_impl
    return forward_call(*args, **kwargs)
  File "D:\anaconda3\envs\mt3d\lib\site-packages\torch\nn\modules\module.py", line 1488, in _slow_forward
    result = self.forward(*input, **kwargs)
  File "C:\Users\12431/.cache\torch\hub\yvanyin_metric3d_main\mono\model\backbones\ViT_DINO_reg.py", line 749, in forward
    x = b(x)
  File "D:\anaconda3\envs\mt3d\lib\site-packages\torch\nn\modules\module.py", line 1501, in _call_impl
    return forward_call(*args, **kwargs)
  File "D:\anaconda3\envs\mt3d\lib\site-packages\torch\nn\modules\module.py", line 1488, in _slow_forward
    result = self.forward(*input, **kwargs)
  File "C:\Users\12431/.cache\torch\hub\yvanyin_metric3d_main\mono\model\backbones\ViT_DINO_reg.py", line 584, in forward
    x = x + attn_residual_func(x, attn_bias)
  File "C:\Users\12431/.cache\torch\hub\yvanyin_metric3d_main\mono\model\backbones\ViT_DINO_reg.py", line 559, in attn_residual_func
    return self.ls1(self.attn(self.norm1(x), attn_bias))
  File "D:\anaconda3\envs\mt3d\lib\site-packages\torch\nn\modules\module.py", line 1501, in _call_impl
    return forward_call(*args, **kwargs)
  File "D:\anaconda3\envs\mt3d\lib\site-packages\torch\nn\modules\module.py", line 1488, in _slow_forward
    result = self.forward(*input, **kwargs)
  File "C:\Users\12431/.cache\torch\hub\yvanyin_metric3d_main\mono\model\backbones\ViT_DINO_reg.py", line 475, in forward
    x = memory_efficient_attention(q, k, v)
  File "D:\anaconda3\envs\mt3d\lib\site-packages\xformers\ops\fmha\__init__.py", line 193, in memory_efficient_attention
    return _memory_efficient_attention(
  File "D:\anaconda3\envs\mt3d\lib\site-packages\xformers\ops\fmha\__init__.py", line 291, in _memory_efficient_attention
    return _memory_efficient_attention_forward(
  File "D:\anaconda3\envs\mt3d\lib\site-packages\xformers\ops\fmha\__init__.py", line 311, in _memory_efficient_attention_forward
    out, *_ = op.apply(inp, needs_gradient=False)
  File "D:\anaconda3\envs\mt3d\lib\site-packages\xformers\ops\fmha\cutlass.py", line 186, in apply
    out, lse, rng_seed, rng_offset = cls.OPERATOR(
  File "D:\anaconda3\envs\mt3d\lib\site-packages\torch\_ops.py", line 502, in __call__
    return self._op(*args, **kwargs or {})
RuntimeError: unsupported output type: int, from operator: xformers::efficient_attention_forward_cutlass

I don't know if there is a certain aspect of the model architecture that doesn't support conversion.

@ZachL1 Hi Zach, do you have any experience with this?
I have never tested the codes in Windows environments. All experiments are conducted on Ubuntu systems.

Sorry, I lack a proper Windows environment as well. It seems to be an onnx export issue though, and @Owen-Liuyuxuan may be able to help.

@chuanzeruge  cc: @JUGGHM
This is because xFormers is not exportable.

ViT model will be using xFormers' efficient implementation of Attention if xformers is installed.
If xformers is not installed, the model will fall back to use MultiheadAttention which is exportable.

My suggestion:

Use a temporary/virtual environment without xformers to export the model.'
On many platforms, xformers is easy to install and delete, so pip3 uninstall xformers before exporting the model, then pip3 install xformers afterward can help.  (I did this)
Modify the codes in backbones/ViT_*.py, adjust the usage of xformers based on your need.

@Owen-Liuyuxuan Thank you for your explanation. This is helpful for a novice like me。QvQ

I also encounter this error on Ubuntu, and if I uninstall xformers, I get the error from #126 (about tensors on different devices).
How can I solve this, to have an ONNX model ? @Owen-Liuyuxuan @JUGGHM
Thank you

Thank you for the answer, I tried to run the exported model before exporting to ONNX (via dummy_output = export_model(dummy_input) and checking the output shape) and it seems to work correctly.
Errors only show when calling torch.onnx.export:
/home/thibault/.cache/torch/hub/yvanyin_metric3d_main/mono/model/backbones/ViT_DINO_reg.py:984: TracerWarning: Converting a tensor to a Python boolean might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs!
  if pad_h == self.patch_size:
/home/thibault/.cache/torch/hub/yvanyin_metric3d_main/mono/model/backbones/ViT_DINO_reg.py:986: TracerWarning: Converting a tensor to a Python boolean might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs!
  if pad_w == self.patch_size:
/home/thibault/.cache/torch/hub/yvanyin_metric3d_main/mono/model/backbones/ViT_DINO_reg.py:235: TracerWarning: Converting a tensor to a Python boolean might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs!
  assert H % patch_H == 0, f"Input image height {H} is not a multiple of patch height {patch_H}"
/home/thibault/.cache/torch/hub/yvanyin_metric3d_main/mono/model/backbones/ViT_DINO_reg.py:236: TracerWarning: Converting a tensor to a Python boolean might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs!
  assert W % patch_W == 0, f"Input image width {W} is not a multiple of patch width: {patch_W}"
/home/thibault/.cache/torch/hub/yvanyin_metric3d_main/mono/model/backbones/ViT_DINO_reg.py:910: TracerWarning: Converting a tensor to a Python boolean might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs!
  if npatch == N and w == h:
/home/thibault/.cache/torch/hub/yvanyin_metric3d_main/mono/model/backbones/ViT_DINO_reg.py:922: TracerWarning: Converting a tensor to a Python float might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs!
  sqrt_N = math.sqrt(N)
/home/thibault/.cache/torch/hub/yvanyin_metric3d_main/mono/model/backbones/ViT_DINO_reg.py:923: TracerWarning: Converting a tensor to a Python float might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs!
  sx, sy = float(w0) / sqrt_N, float(h0) / sqrt_N
/home/thibault/.cache/torch/hub/yvanyin_metric3d_main/mono/model/backbones/ViT_DINO_reg.py:931: TracerWarning: Converting a tensor to a Python integer might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs!
  assert int(w0) == patch_pos_embed.shape[-2]
/home/thibault/.cache/torch/hub/yvanyin_metric3d_main/mono/model/backbones/ViT_DINO_reg.py:931: TracerWarning: Converting a tensor to a Python boolean might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs!
  assert int(w0) == patch_pos_embed.shape[-2]
/home/thibault/.cache/torch/hub/yvanyin_metric3d_main/mono/model/backbones/ViT_DINO_reg.py:932: TracerWarning: Converting a tensor to a Python integer might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs!
  assert int(h0) == patch_pos_embed.shape[-1]
/home/thibault/.cache/torch/hub/yvanyin_metric3d_main/mono/model/backbones/ViT_DINO_reg.py:932: TracerWarning: Converting a tensor to a Python boolean might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs!
  assert int(h0) == patch_pos_embed.shape[-1]
/home/thibault/.cache/torch/hub/yvanyin_metric3d_main/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5.py:894: TracerWarning: Converting a tensor to a Python boolean might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs!
  if torch.isnan(vit_features[0]).any():
/home/thibault/.cache/torch/hub/yvanyin_metric3d_main/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5.py:896: TracerWarning: Converting a tensor to a Python boolean might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs!
  if torch.isinf(vit_features[0]).any():
/home/thibault/.cache/torch/hub/yvanyin_metric3d_main/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5.py:908: TracerWarning: Converting a tensor to a Python boolean might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs!
  if torch.isnan(en_ft).any():
/home/thibault/.cache/torch/hub/yvanyin_metric3d_main/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5.py:911: TracerWarning: Converting a tensor to a Python boolean might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs!
  if torch.isinf(en_ft).any():
/home/thibault/.cache/torch/hub/yvanyin_metric3d_main/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5.py:919: TracerWarning: Converting a tensor to a Python boolean might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs!
  if torch.isnan(ref_feat).any():
/home/thibault/.cache/torch/hub/yvanyin_metric3d_main/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5.py:921: TracerWarning: Converting a tensor to a Python boolean might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs!
  if torch.isinf(ref_feat).any():
/home/thibault/.cache/torch/hub/yvanyin_metric3d_main/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5.py:815: TracerWarning: Converting a tensor to a Python boolean might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs!
  if torch.isnan(prob).any():
/home/thibault/.cache/torch/hub/yvanyin_metric3d_main/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5.py:817: TracerWarning: Converting a tensor to a Python boolean might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs!
  if torch.isinf(prob).any():
/home/thibault/.cache/torch/hub/yvanyin_metric3d_main/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5.py:831: TracerWarning: Converting a tensor to a Python boolean might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs!
  if torch.isnan(d ).any():
/home/thibault/.cache/torch/hub/yvanyin_metric3d_main/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5.py:833: TracerWarning: Converting a tensor to a Python boolean might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs!
  if torch.isinf(d ).any():
/home/thibault/.cache/torch/hub/yvanyin_metric3d_main/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5.py:842: TracerWarning: Converting a tensor to a Python boolean might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs!
  if torch.isnan(normal_out).any():
/home/thibault/.cache/torch/hub/yvanyin_metric3d_main/mono/model/decode_heads/RAFTDepthNormalDPTDecoder5.py:844: TracerWarning: Converting a tensor to a Python boolean might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs!
  if torch.isinf(normal_out).any():
/home/thibault/miniconda3/envs/md/lib/python3.10/site-packages/torch/onnx/utils.py:689: UserWarning: Constant folding in symbolic shape inference fails: Expected all tensors to be on the same device, but found at least two devices, cuda:0 and cpu! (when checking argument for argument index in method wrapper_CUDA__index_select) (Triggered internally at ../torch/csrc/jit/passes/onnx/shape_type_inference.cpp:439.)
  _C._jit_pass_onnx_graph_shape_type_inference(
============= Diagnostic Run torch.onnx.export version 2.0.1+cu117 =============
verbose: False, log level: Level.ERROR
======================= 0 NONE 0 NOTE 0 WARNING 0 ERROR ========================

Traceback (most recent call last):
  File "/workspace/Metric3D/onnx/metric3d_onnx_export.py", line 134, in <module>
    Fire(main)
  File "/home/thibault/miniconda3/envs/md/lib/python3.10/site-packages/fire/core.py", line 143, in Fire
    component_trace = _Fire(component, args, parsed_flag_args, context, name)
  File "/home/thibault/miniconda3/envs/md/lib/python3.10/site-packages/fire/core.py", line 477, in _Fire
    component, remaining_args = _CallAndUpdateTrace(
  File "/home/thibault/miniconda3/envs/md/lib/python3.10/site-packages/fire/core.py", line 693, in _CallAndUpdateTrace
    component = fn(*varargs, **kwargs)
  File "/workspace/Metric3D/onnx/metric3d_onnx_export.py", line 121, in main
    torch.onnx.export(
  File "/home/thibault/miniconda3/envs/md/lib/python3.10/site-packages/torch/onnx/utils.py", line 506, in export
    _export(
  File "/home/thibault/miniconda3/envs/md/lib/python3.10/site-packages/torch/onnx/utils.py", line 1548, in _export
    graph, params_dict, torch_out = _model_to_graph(
  File "/home/thibault/miniconda3/envs/md/lib/python3.10/site-packages/torch/onnx/utils.py", line 1180, in _model_to_graph
    params_dict = _C._jit_pass_onnx_constant_fold(
RuntimeError: Expected all tensors to be on the same device, but found at least two devices, cuda:0 and cpu! (when checking argument for argument index in method wrapper_CUDA__index_select)

(btw I don't need the normals, if removing them allows to bypass the errors I'm fine with it)

For the Python packages:
onnx                        1.16.2
onnxruntime                 1.19.0
onnxruntime-gpu             1.19.0
torch                       2.0.1
torchvision                 0.15.2

For CUDA:
GPU:    Nvidia RTX A5000
CUDA:   12.4
Driver: 550.90.07

Checking the CUDA version for Pytorch, it seems there is a mismatch, not sure if it is important
>>> torch.version.cuda
'11.7'

I installed torch 2.4 and it is working with CUDA 12.1, and the export worked ! Thank you very much !
Now, I just need to convert it to CoreML... :/


Bump up minimum Terraform version to 1.0

Is your feature request related to a problem?
Since we popping up the minimum Terraform version in AzureRM modules. there is a good moment to bump up TF version on our repositories.
Describe the solution you'd like
Bump up min TF version in whole code stack

Duplicate of https://github.com/PaloAltoNetworks/terraform-google-vmseries-modules/issues/156


update s2i

Signed-off-by: zhuxiaoyang<EMAIL_ADDRESS>

/cc @FeynmanZhou @runzexia

See my comments above

updated

See my comments above

updated

还有一处疑问


[ask] how to determine max_wal_senders

im getting error [25360]:FATAL:  number of requested standby connections exceeds max_wal_senders (currently 25)  while replicating my production db
my db currently on RDS and have 2 slave
how to determin max_wal_senders to avoid getting this error?

We need to add this as a config setting. I'll take a look int it next week (unless you'd like to submit a PR before then).

https://hexdocs.pm/postgrex/Postgrex.ReplicationConnection.html#module-logical-replication
I think this might just be a database setting, I'll dive in deeper next week.

aight thx, i got a hunch my connection restarting somewhere in the middle.. gotta monitor next try using pg_stat_replication


return newer tracks first in RecentTracksFetcher.into_stream

:wave: I noticed that the all_tracks and recent_tracks methods would return older tracks first instead of newer tracks, likely because the JSON response from Last.fm is automatically sorted from most recent to least recent.
This is inconvenient if you only want to grab the most recent track, since you have to consume the entire stream and sort them all instead of just calling .next() once.

Very good catch!

releasing as 0.10.0!
0.9.0 didn't age well 🙈


DecorationImage - lerp and scale

BoxDecoration wants to lerp and scale DecorationImage.

This should now be easy since we could just have it create a _CombinedImageDecoration that creates a _CombinedImageDecorationPainter that paints both images dissolved, the way Porter and Duff intended.

Hi @Hixie any update on the scale applied to the DecorationImage? It seems it is not supported yet, right?

Not yet, but it should be relatively easy to implement if anyone wants to submit a PR.

@shihaohong I would like to work on this issue.
I checked the source code, the paintImage method which is used to paint Image on the canvas, has scale property. If we add the scale property in DecorationImage we can use that in paintImage method. WDYT?

I'm not as familiar with the painting layer, but if you're able to put together a PR and a sample app in the description describing the desired behavior, I'd be happy to take a look at it!

Sure, I'll send a PR. I'm just not sure how can I write a test for scale, cause I'm also not much familiar with Canvas and painting. I'll try from my end. Let's see how it goes.

@shihaohong I have submitted a PR. Looking forward to the reviews :)

@shihaohong I would like to work on the lerp issue.

@Hixie I would like to work on lerp for DecorationImage
I have a confusion..!!! Many Classes like ColorFilter ImageProvider dose do not have a lerp method implemented.
Shall I implement the Lerp for all the classes or we can have a temporary fix like
image: t < 0.5 ? a.image : b.image, // TODO(ianh): cross-fade the image


Add Autobahn CI task

This is the Autobahn part of the #22 PR.
I made the jobs matrix more static, since some of the combinations (e.g. 1.10.4 + OTP 24.2.2) didn't work / exist.
I just took the last 4 versions of Elixir and OTP, I hope that's enough.
I also added a lint flag, so format checking, credo and dialyzer only run once.
Dialyzer also was complaining about Sock.opts() type which doesn't exist (yet). I switched it to any() for now.

Merging w/ failing autobahn tests, as they'll be taken care of shortly


CFFL

CFFL

Linter check found the following problems:
The following problems have been found:
ERROR: /tmp/abs_2eee7uehkt/clone/recipe/meta.yaml:16: pip_install_args: pip install should be run with --no-deps.
ERROR: /tmp/abs_2eee7uehkt/clone/recipe/meta.yaml:21: missing_wheel: For pypi packages, wheel should be present in the host section
ERROR: /tmp/abs_2eee7uehkt/clone/recipe/meta.yaml:28: missing_imports_or_run_test_py: Python packages require imports or a python test file in tests.
ERROR: /tmp/abs_2eee7uehkt/clone/recipe/meta.yaml:28: missing_pip_check: For pypi packages, pip check should be present in the test commands
ERROR: /tmp/abs_2eee7uehkt/clone/recipe/meta.yaml:34: missing_documentation: The recipe is missing a doc_url or doc_source_url
WARNING: /tmp/abs_2eee7uehkt/clone/recipe/meta.yaml:34: missing_description: The recipe is missing a description
ERROR: /tmp/abs_2eee7uehkt/clone/recipe/meta.yaml:34: missing_license_family: The recipe is missing the about/license_family key.
ERROR: /tmp/abs_2eee7uehkt/clone/recipe/meta.yaml:34: missing_dev_url: The recipe is missing a dev_url
Errors were found


[Tooltip] Use label semantics

The Tooltip currently applies label and description semantics (title + aria-describedby) which doesn't seem correct to me. It's apparent if you look at our usage in the docs where we pass title to aria-label.
This PR moves to label only semantics via aria-label for string titles or aria-labelledby for anything else. For non-string titles you'd still need to label the child separately. But this was already the case before.
It also gets rid of the  problematic title attribute.
It's unclear what SEO concerns this should solve.
Opening this for a11y testing and a11y snapshots diff in mui-scrips-incubator. In this form it can't land in v4 anyway.

It's unclear what SEO concerns this should solve.

The idea was to allow the Google bot to have access to the value of the title. Not sure if it's important.

Note, if we move forward in this direction, we should be able to drop this warning:
https://github.com/mui-org/material-ui/blob/9bd4277ecd660ebe2fd4cb08960f58e98ddb6d43/packages/material-ui/src/Tooltip/Tooltip.js#L461-L470

I'm closing, the resolution of the problem has been deprioritzed for a long time. Either its opportunity cost was too high, or we had a blocker. We can revisit in the future.

I'm closing, the resolution of the problem has been deprioritzed for a long time. Either its opportunity cost was too high, or we had a blocker. We can revisit in the future.


Editor in an Electron app, autocomplete not working

monaco-editor version: 0.20.0
Browser: Electron through Capacitor
OS: Windows 10
Playground code that reproduces the issue: Unable to reproduce the issue
I am deeply sorry for bothering you with an issue that only happens to me. I have searched far & wide on the web and I did'nt find a SINGLE issue that was addressing my problem. My last hope is for you guys to help me out ...
Context
I am trying to use the Monaco editor in an Electron application. The editor itself works, but the autocomplete shows "Loading ..." continuously :

I am using Angular and the following library : https://www.npmjs.com/package/@materia-ui/ngx-monaco-editor
In their documentation they explain that you can load the editor from a remote URL, which I do :
  providers: [
    {
      provide: MONACO_PATH,
      useValue<EMAIL_ADDRESS>    },
  ],

Everything works well, except for a single network operation that fails :

I have absolutely NO IDEA why is this not working, and I can't reproduce it in any other project.
I checked some online examples such as this one : https://stackblitz.com/edit/materia-ngx-monaco-editor-example
And copied the code verbatim, but I am still having the issue.
I tried cleaning the cache, recreating the application, nothing works ...
Would you have any idea about it ?
Thank you in advance and again, sorry for the inconvenience !
PS : here are all of my networks call if it might help :

This is very weird. The bundle vs/base/worker/workerMain.js at<EMAIL_ADDRESS>already contains the loader and the vs/base/common/worker/simpleWorker module, so it is very weird that those network requests (for loader.js and simpleWorker.js) appear. I have seen a lot of weirdness with how Chromium and subsequently Electron implements caching for web workers. Can you try running Electron with a new user data dir to rule out any caching problems? What is the content of<EMAIL_ADDRESS>if you click on it on the network tab. What is the full data: URL that the web worker is started off (the one above workerMain.js)?

Hi @alexdima, thank you for your interest !
I decided to go back from scratch and implement step by step the editor. I finally managed to find the root cause of the issue : electron offers a node integration, as well as a node integration in the workers. The latter was found at fault : disabling it resulted in the issue resolving itself !
I don't know if you want to close this issue or not, maybe this is something to investigate, but as far as I am concerned, I have no more issue regarding the auto complete !

Hi @alexdima, thank you for your interest !
I decided to go back from scratch and implement step by step the editor. I finally managed to find the root cause of the issue : electron offers a node integration, as well as a node integration in the workers. The latter was found at fault : disabling it resulted in the issue resolving itself !
I don't know if you want to close this issue or not, maybe this is something to investigate, but as far as I am concerned, I have no more issue regarding the auto complete !
PS : I'm using another account because I'm not on my own computer right now and don't have Google sync for the passwords


Polyline handle empty

Hi there,
it seems as if the handle for the polyline returned by the callback function of addPolyline() is an empty object {}. Is this a bug or an error in my programming?
Here some code:
...
var listOfPolyHandles = [];
var polygon = {};
pt1 = new plugin.google.maps.LatLng(p1.lat, p1.lng);
pt2 = new plugin.google.maps.LatLng(p2.lat, p2.lng);
map.addPolyline({
  points: [
    pt1, pt2
  ],
  'color' : '#AA00FF',
  'width': 5,
  'geodesic': false
  }, function(poly) {
    console.log("polyline handle: " + JSON.stringify(poly));
    listOfPolyHandles.push(poly);     // this works
    polygon.handle = poly;                // this doesnt work
});
listOfPolyHandles.push(polygon);   // this doesnt work

Here the console output will be polyline handle: {} and the polyline will not be removed.
I am testing on a LG G2 Android Version 4.4.2.
Strangely for addCircle() the handle is ok and I can handle.remove() circles later on.
By the chance, there is no other way to recover the handles?

All source code is open.
https://github.com/wf9a5m75/phonegap-googlemaps-plugin/blob/master/www/googlemaps-cdv-plugin.js#L869

Hi, thank you for the fast response, I don't know whether polyline = new Polyline(..) is a function or an object, but the solution was actually quite simple (I updated the question above).

polyline = new Polyline(...) generates an instance of Polyline class.
The generated instance (polyline) is still function, not JSONObject.
That's why you get {} using JSON.stringify()   (because it's no JSONObject)
Do you mean you want to save polylines into an array?
Your code is wrong. You need to understand in asynchronous.
The browser executes this steps.

In order to help your understand, write a simple code.
function addPolyline(colorValue, callback) {
  setTimeout(function() {
    return {
       color: colorValue
    }
  }, 100);
}

var polygon = {};
addPolyline("#AA00FF", function(poly) {
  console.log( "poly.color = " + poly.color );
});
console.log("polygon = " + JSON.stringify( polygon ));

You're right, but now I got it this way, but thank you anyway.
No problem I got it, the callback function is only executed when the polygon is drawn


How to map a 3D model to uv space?

Thanks for your great work,I have a new 3D Face Morphable Model  ,and  want to map it to UV map. Cause you only give the 2 dat file ,I have no ideal how did you get them,and how did you choose  a1,a2 b1,b2 ,the constant scale and translation scalars?
Could you please share the generation code?

Thanks for your great work,I have a new 3D Face Morphable Model ,and want to map it to UV map. Cause you only give the 2 dat file ,I have no ideal how did you get them,and how did you choose a1,a2 b1,b2 ,the constant scale and translation scalars?
Could you please share the generation code?

Hi, Did you find any way to obtain uv map? Could you please share the method with me? My email address is<EMAIL_ADDRESS>Thanks!


Update list of packages for Cachi2

Description
Update list of packages for Cachi2
Type of change

[ ] Refactor
[ ] New feature
[ ] Bug fix
[ ] CVE fix
[ ] Optimization
[ ] Documentation Update
[x] Configuration Update
[ ] Bump-up dependent library
[ ] Bump-up library or tool used for development (does not change the final image)

/override "Red Hat Konflux / ols-e2e-tests-rosa / lightspeed-service"
/override "Red Hat Konflux / ols-enterprise-contract / lightspeed-service"
/approve

/lgtm


[SPARK-43284][SQL][FOLLOWUP] Return URI encoded path, and add a test

What changes were proposed in this pull request?
Return URI encoded path, and add a test
Why are the changes needed?
Fix regression in spark 3.4.
Does this PR introduce any user-facing change?
Yes, fixes a regression in _metadata.file_path.
How was this patch tested?
New explicit test.

thanks, merging to master/3.4!


Escrow list shows refunded/released escrows

Active escrow list shows all escrows, released, refunded or not.

Non-issue