Add back the odc-apps-cloud since stats K8 workload depends on it.

Include odc-apps-cloud in the stats image since stats K8 job depends on it (to run s3-find).

I think you need to bump the number in version.txt to have the new image pushed anywhere though. Not 100% sure...

Yes, You're right.  I bumped it up.


UI Interface Rework

UI Interface rebuild

Sections

Homepage  - Done
Briefings/TrendingNews - On Progress
BottomSheet - OnProgress


Implements switch between paf and nag for individual addresses

Just as an FYI I tend to adopt the google JS style guide
https://google.github.io/styleguide/jsguide.html


Plugin implementation

All of the plugin's functionality is included in these changes.
The main commits contain modifications to tun2socks (commit) and Psiphon [(commit)] (https://github.com/uProxy/cordova-plugin-tun2socks/commit/f1b880f002ea162cfcfcd60f94c1688a508c624a).
Once the code is reviewed, the plugin's import path should be updated  in uProxy's Gruntfile.

This change is

Review status: 0 of 19 files reviewed at latest revision, 13 unresolved discussions.

plugin.xml, line 27 [r2] (raw file):

    <config-file target="AndroidManifest.xml" parent="/manifest/application">

Nit: blank line

src/android/libs/jsocks.jar, line 0 [r2] (raw file):
Obviously it's a bit unfortunate to be committing a JAR file.  How big is this file?  Do we have an alternative way to include it in the build?

src/android/org/uproxy/tun2socks/DnsResolverService.java, line 28 [r2] (raw file):

// This class listens on a UDP socket for incoming DNS traffic, which is proxy'd
// through SOCKS over TCP to Honest DNS.

Nobody calls it Honest DNS :)

src/android/org/uproxy/tun2socks/DnsResolverService.java, line 141 [r2] (raw file):

          Log.i(LOG_TAG, "listening on " + udpSocket.getLocalSocketAddress().toString());
          try {
            udpSocket.receive(udpPacket);

What happens if someone sends a packet that's bigger than 512 bytes?

src/android/org/uproxy/tun2socks/DnsResolverService.java, line 199 [r2] (raw file):

      } catch (Throwable e) {
        if (!isInterrupted()) {
          e.printStackTrace();

What state is the app now in?  Is it silently broken?

src/android/org/uproxy/tun2socks/DnsResolverService.java, line 208 [r2] (raw file):

    }

    private boolean validateDnsRequest(DatagramPacket packet) {

Nit: Prefer isValid over validate.  Also, could this method be static?

src/android/org/uproxy/tun2socks/Tun2Socks.java, line 97 [r2] (raw file):

  }

  private boolean hasVpnService() {

Nit: I think it would be worth exposing this as a command.  Then maybe we wouldn't need to check the OS version in the JS code; we could just ask the plugin whether it's going to work.

src/android/org/uproxy/tun2socks/Tun2Socks.java, line 104 [r2] (raw file):

  protected boolean prepareVpnService() throws ActivityNotFoundException {
    // VpnService: need to display OS user warning. If whole device
    // option is selected and we expect to use VpnService, so the prompt here in

Nit: "show the prompt"?

src/android/org/uproxy/tun2socks/Tunnel.java, line 127 [r2] (raw file):

  // synchronized functions as stop() is synchronized and a deadlock is possible as callbacks
  // can be called while stop holds the lock.
  @TargetApi(Build.VERSION_CODES.LOLLIPOP)

Why lollipop?  Deserves a comment.

src/android/org/uproxy/tun2socks/TunnelManager.java, line 59 [r2] (raw file):

  // Implementation of android.app.Service.onStartCommand
  @TargetApi(Build.VERSION_CODES.M)

Why M?  Needs comment.

src/badvpn/tun2socks/tun2socks.c, line 323 [r2] (raw file):

// Initializes a UDP socket, binds it locally and connects it to a local
// address.

What's the return value?

src/badvpn/tun2socks/tun2socks.c, line 337 [r2] (raw file):

        return 0;
    }
    // Bind to any local address in order to receive data

INADDR_ANY is not the same as "any local address".  It's more like "the ANY address".

src/badvpn/tun2socks/tun2socks.h, line 48 [r2] (raw file):

//#define OVERRIDE_DEST_ADDR "<IP_ADDRESS>:2000"

// maximum number of bytes for udp send/recv

Is this ever applied to UDP sending?

Comments from Reviewable

Review status: 0 of 19 files reviewed at latest revision, 13 unresolved discussions.

plugin.xml, line 27 [r2] (raw file):
Previously, bemasc (Benjamin M. Schwartz) wrote…
> Nit: blank line

Done.

src/android/libs/jsocks.jar, line  [r2] (raw file):
Previously, bemasc (Benjamin M. Schwartz) wrote…
> Obviously it's a bit unfortunate to be committing a JAR file.  How big is this file?  Do we have an alternative way to include it in the build?

The JAR is 395 KB. The source code is in SourceForge, but seems like it's not actively maintained. We could create our fork, and include the JAR ad hoc. But I don't know if this is a better alternative.

src/android/org/uproxy/tun2socks/DnsResolverService.java, line 28 [r2] (raw file):
Previously, bemasc (Benjamin M. Schwartz) wrote…
> Nobody calls it Honest DNS :)

lol

src/android/org/uproxy/tun2socks/DnsResolverService.java, line 141 [r2] (raw file):
Previously, bemasc (Benjamin M. Schwartz) wrote…
> What happens if someone sends a packet that's bigger than 512 bytes?

As discussed offline, the DNS over UDP limit is 512 bytes and it's very unlikely that a query will exceed this size. However, the response could have a size of 32767 (max UDP packet size).
I'll increase the buffer size to account for this.

src/android/org/uproxy/tun2socks/DnsResolverService.java, line 199 [r2] (raw file):
Previously, bemasc (Benjamin M. Schwartz) wrote…
> What state is the app now in?  Is it silently broken?

I've refactored this class to catch all exceptions, so this catch is no longer needed and there's no ambiguity about what went wrong.

src/android/org/uproxy/tun2socks/DnsResolverService.java, line 208 [r2] (raw file):
Previously, bemasc (Benjamin M. Schwartz) wrote…
> Nit: Prefer `isValid` over `validate`.  Also, could this method be static?

Done. It cannot because non-static nested classes are not allowed to declare static methods.

src/android/org/uproxy/tun2socks/Tun2Socks.java, line 104 [r2] (raw file):
Previously, bemasc (Benjamin M. Schwartz) wrote…
> Nit: "show the prompt"?

Done.

src/android/org/uproxy/tun2socks/Tunnel.java, line 127 [r2] (raw file):
Previously, bemasc (Benjamin M. Schwartz) wrote…
> Why lollipop?  Deserves a comment.

Done.

src/android/org/uproxy/tun2socks/TunnelManager.java, line 59 [r2] (raw file):
Previously, bemasc (Benjamin M. Schwartz) wrote…
> Why M?  Needs comment.

Done.

src/badvpn/tun2socks/tun2socks.c, line 323 [r2] (raw file):
Previously, bemasc (Benjamin M. Schwartz) wrote…
> What's the return value?

Done.

src/badvpn/tun2socks/tun2socks.c, line 337 [r2] (raw file):
Previously, bemasc (Benjamin M. Schwartz) wrote…
> INADDR_ANY is not the same as "any local address".  It's more like "the ANY address".

Done.

src/badvpn/tun2socks/tun2socks.h, line 48 [r2] (raw file):
Previously, bemasc (Benjamin M. Schwartz) wrote…
> Is this ever applied to UDP sending?

See my previous comment on DNS/UDP limits.

Comments from Reviewable

Review status: 0 of 19 files reviewed at latest revision, 7 unresolved discussions.

src/android/org/uproxy/tun2socks/DnsResolverService.java, line 141 [r2] (raw file):
Previously, albertolalama (alberto lalama) wrote…
> As discussed offline, the DNS over UDP limit is 512 bytes and it's very unlikely that a query will exceed this size. However, the response could have a size of 32767 (max UDP packet size).
> I'll increase the buffer size to account for this.

Seems like the max UDP packet size is 65535.  (However, I agree that 32K is probably plenty.)

src/android/org/uproxy/tun2socks/TunnelManager.java, line 59 [r2] (raw file):
Previously, albertolalama (alberto lalama) wrote…
> Done.

Hmm.  I don't see a comment.

src/badvpn/tun2socks/tun2socks.c, line 323 [r2] (raw file):
Previously, albertolalama (alberto lalama) wrote…
> Done.

It looks like it returns the socket's file descriptor number, not the IP address.

src/badvpn/tun2socks/tun2socks.c, line 337 [r2] (raw file):
Previously, albertolalama (alberto lalama) wrote…
> Done.

OK ... this means that you can receive packets from anyone on the internet who manages to send a packet to this port, because ANY includes the public interface(s).  Is that a problem?

Comments from Reviewable

Review status: 0 of 19 files reviewed at latest revision, 7 unresolved discussions.

src/android/org/uproxy/tun2socks/Tun2Socks.java, line 97 [r2] (raw file):
Previously, bemasc (Benjamin M. Schwartz) wrote…
> Nit: I think it would be worth exposing this as a command.  Then maybe we wouldn't need to check the OS version in the JS code; we could just ask the plugin whether it's going to work.

Done. I'll call this method from uProxy once it has been checked in.

src/android/org/uproxy/tun2socks/TunnelManager.java, line 59 [r2] (raw file):
Previously, bemasc (Benjamin M. Schwartz) wrote…
> Hmm.  I don't see a comment.

This method used to call bindProcessToNetwork. The TargetApi annotation is no longer necessary. I updated the comment of [pluginInitalize](https://github.com/uProxy/cordova-plugin-tun2socks/blob/alalama-changes/src/android/org/uproxy/tun2socks/Tun2Socks.java#L63), which now calls bindProcessToNetwork.

src/badvpn/tun2socks/tun2socks.c, line 323 [r2] (raw file):
Previously, bemasc (Benjamin M. Schwartz) wrote…
> It looks like it returns the socket's file descriptor number, not the IP address.

yes. fixed now.

src/badvpn/tun2socks/tun2socks.c, line 337 [r2] (raw file):
Previously, bemasc (Benjamin M. Schwartz) wrote…
> OK ... this means that you can receive packets from anyone on the internet who manages to send a packet to this port, because ANY includes the public interface(s).  Is that a problem?

Although unlikely, it is not impossible for an attacker to inject fake DNS responses. I'm binding the socket to a the loopback address instead.

Comments from Reviewable

Great work. I've been running VPN on my own phone, too, with good results.
I'm mostly looking at this from the perspective of maintainability:

what are the uProxy specific pieces?
where did the other stuff come from?
how will we keep up to date with upstream fixes?

I think we should expand the README. Thanks to chatting with @albertolalama and my own poking around, is this the following a fair summary?:
We re-use and have used as a starting point a bunch of open source from Psiphon, specifically https://github.com/mei3am/ps

src/android:
starting point: https://github.com/mei3am/ps/tree/master/Android/app
Android/app/src/main/java/ca/psiphon/PsiphonTunnel.java -> src/android/org/uproxy/tun2socks/Tunnel.java
Android/app/src/main/java/com/psiphon3/psiphonlibrary/TunnelManager.java -> src/android/org/uproxy/tun2socks/Tunnel.java
*Android/app/src/main/java/com/psiphon3/psiphonlibrary/TunnelVpnService.java -> src/android/org/uproxy/tun2socks/TunnelVpnService.java
src/badvpn:
starting point: https://github.com/mei3am/ps/tree/master/Android/badvpn
uProxy-specific changes mostly confined to tun2socks/tun2socks.c and marked with // ==== UPROXY ==== (like Psiphon-specific changes)
src/android/libs/jsocks.jar:
http://jsocks.sourceforge.net/

Thank you for compiling a succinct summary, Trevor. I'll make sure to update the README with the code sources.
You raise an interesting question around code maintenance and how to keep up with upstream fixes. I don't have a straight answer at this point, but I think this is something we should discuss with @bemasc.

:+1: with nits.  I know you have more improvements queued up, so let's land this and get to the next one!

src/android/libs/jsocks.jar, line  [r2] (raw file):
Previously, albertolalama (alberto lalama) wrote…
> The JAR is 395 KB. The source code is in SourceForge, but seems like it's not actively maintained. We could create our fork, and include the JAR ad hoc. But I don't know if this is a better alternative.

Fixed!

Comments from Reviewable

 with one tiny nit

Review status: 0 of 18 files reviewed at latest revision, 1 unresolved discussion.

src/android/org/uproxy/tun2socks/DnsResolverService.java, line 91 [r4] (raw file):
Previously, albertolalama (alberto lalama) wrote…
> Done. As per our discussion, setting the size to 64K.

Nit: This is not related to Google DNS.  The DNS TCP protocol only has two bytes for length, so larger packets are cannot even be represented.

Comments from Reviewable

Review status: 0 of 18 files reviewed at latest revision, 2 unresolved discussions.

src/android/org/uproxy/tun2socks/DnsResolverService.java, line 91 [r4] (raw file):
Previously, bemasc (Benjamin M. Schwartz) wrote…
> Nit: This is not related to Google DNS.  The DNS TCP protocol only has two bytes for length, so larger packets are cannot even be represented.

Done.

Comments from Reviewable


[pylint] Implement singledispatch-method (E1519)

Implementing the rule
https://pylint.readthedocs.io/en/stable/user_guide/messages/error/singledispatch-method.html#singledispatch-method-e1519
Implementation simply checks the function type and name of the decorators.

Gonna address feedback and merge.

Thanks for addressing the comments 😃


Enable Github actions / Disable circleci

This PR configures correctly github actions to build, test and send the tests statistics to coveralls.io
Since it was trial and error I had to push several time. I recommend to merge and squash it in a single commit, to keep the history clean.

Thank you Luca !


Add Javascript in Rust section

Hello all! Nice to see this aggregated info, since we needed to revise available JS in Rust implementations some months ago. However, I see no "JS in Rust" section, but a single "Rust in JS" one.
I think you are missing important, and nice crates in this niche:
https://lib.rs/crates/ducc
https://lib.rs/crates/quick-js
Which succeed at integrating some JS engines into Rust programs. There are some V8 integration attempts too, but I am not aware of any highly-successful one, since V8 api and environment evolve too much fast.
We have integrated DUCC with great success, and recommend it.
I can make PR if you want, but I wanted to drop you some lines, in case the omission is due to some other unknown reason.
Cheers!

Thanks for the input! :)
There isn't any special reason those two are missing from the list. I simply haven't encountered them before and nobody else has mentioned them yet 😄

I can make PR if you want

In the case of quick-js, that would be greatly appreciated.
In the case of ducc, I'm a bit hesitant. I generally try to keep a certain level of documentation quality for the entries on the list, and the one of ducc looks to be significantly below other entries with basically no README and no crate-root docs.
However since you said that you had great success with it (and there are so few alternatives for JS currently), I'd be willing to make an exception and also accept a PR for ducc. I'd leave that up to you 😉


refactor(test): remove tap from sql-mapper tests

This PR follows the https://github.com/platformatic/platformatic/issues/1796 by migrating tests from tap to node:test.
I introduced a simple helper method match, which has the same behavior as the tap match assertion. This method is useful when you want to assert that two objects match the same structure. Unfortunately, the node match assertion only works well for regular expressions.
I also created a runner file to avoid concurrency problems (this runner and others will be dropped when the --test-concurrency flag will be available in this CI, Node v20.10 was released right now).
Migrated test
sql-mapper

[x] cache.test.js
[x] composite.test.js
[x] create-connection.test.js
[x] entity.test.js
[x] entity_transaction.test.js
[x] hooks.test.js
[x] ignore.test.js
[x] inserted_at_updated_at.test.js
[x] mapper.test.js
[x] no-primary-key.test.js
[x] or.test.js
[x] schema.test.js
[x] updateMany.test.js
[x] where.test.js

(CI is failintg)

This PR is still in draft as I'm trying to fix the CI.
I think the test contexts are not triggering the table cleanup actions correctly. I'll spend more time on this since these tests are one of the main parts of Platformatic.

Any suggestions as to why snapshot tests (sql-openapi) fail? @mcollina

Will try to take a look!

Hey @mcollina, sorry this PR has been in draft for a while but unfortunately I haven't had the time to devote to it yet... in the next few days I would like to pick it up again


fix(core): fix styles for active account tab

What/Why?
This PR fixes styles for active account tab
Testing
locally
before:
https://github.com/user-attachments/assets/47e6715b-9b85-412a-a05b-ca4822739b6c
after:
https://github.com/user-attachments/assets/5b3f1f71-dc08-4a40-8108-ed8a12f64daf

Looks good. Just interested if it keeps active tab after page reload. I remember that Ana's been asking for that some time ago)

yep, because active tab appearance based on url


feat: set return at size and fix size of table

:tada: This PR is included in version 1.13.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Regression with CVE-2023-0842 fix

Hi,
replacing {} by Object.create(null) does not produce the same value. This causes regression at least for node-rest-client tests (some Uncaught TypeError: Cannot read properties of undefined...). You should use Object.create({}) to have exactly the same behavior than previously:
$ node -p -e 'Object.create(null)'
[Object: null prototype] {}
$ node -p -e 'Object.create({})'
{}

You're right @Leonidas-from-XIV, it doesn't fix the issue because you worked around the prototype pollution by setting prototype to "null" instead of filtering forbidden keys like proto

A workaround :
--- a/src/parser.coffee
+++ b/src/parser.coffee
@@ -181,8 +181,9 @@ class exports.Parser extends events
           # append current node onto parent's <childKey> array
<EMAIL_ADDRESS>=<EMAIL_ADDRESS>or []
           # push a clone so that the node in the children array can receive the #name property while the original obj can do without it
-          objClone = Object.create(null)
+          objClone = {}
           for own key of obj
+            if key != '__proto__'
             objClone[key] = obj[key]
<EMAIL_ADDRESS>objClone
           delete obj["#name"]
@@ -198,8 +199,11 @@ class exports.Parser extends events
         if @options.explicitRoot
           # avoid circular references
           old = obj
-          obj = Object.create(null)
-          obj[nodeName] = old
+          obj = {}
+          if nodeName === '__proto__'
+            console.error 'Node name __proto__ forbibben'
+          else
+            obj[nodeName] = old

         @resultObject = obj
         # parsing has ended, mark that so we won't throw exceptions from

Potentially a better fix would be to check the default javascript prototype for the property as a block list.
We could check using this code:
  if (!Object.prototype.hasOwnProperty(key)) //.... then parse the property

Ah, I understand the issue now.
Ignore my last suggestion, unless you are in fact interested in blocking all the default prototype properties.
The CVE is demonstrated through this:
// simulated exploit
({}).__proto__.foo = 1;
({})['constructor'].prototype.bar = 2;
// now any javascript object will contain these properties and values!
console.log({}.foo); // outputs 1
console.log({}.bar); // outputs 2

The best solution is to explicitly block 'proto' and 'constructor'.
I don't think it is necessary to block 'prototype' because that is only destructive through access via constructor.

I've released 0.6.0 which filters the dangerous fields and recommend everyone to use 0.6.2, which should fix the CVE while not breaking things.


Phumudzo/feat/888

Hi @AlexStepantsov  I have looked into the issue.

I have created a new Provider(CanvasProvider) to handle the canvas width and zoom.
I went on and expose it via the '[app-provider.tsx]' for it to be "globally" accessible

-I have also took advantage of this opportunity to add toolTip to the button for better user-experience.

Hi @AlexStepantsov . I have revisted the implementation . The change will only affect the designer area as per my last commit. Please kindly review once more and thanks in advance for your patience and guidance.


composer: allow PHP 7 in safer way

Coverage remained the same at 100.0% when pulling 59373ff67cba5bce60e3fed4b9f087573f9680ff on TomasVotruba:patch-1 into 2a0e997c733b7c2f9f8b61cafb006fd5fb9fa15a on ralouphie:master.

Ping

Thank you


Add crc base dir as ~/.crc

In #12 I have already worked on this... although for testing purposes I forced the homedir in /tmp by the basedir.

@anjannath make sure you use the right pattern for the description.

Did you consider using https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html?
logs would go in $XDG_CACHE_HOME/crc/... (usually ~/.cache/crc) and config in $XDG_CONFIG_HOME/crc/... (usually ~/.config/crc)

@cfergeau I haven't looked into this, conforming with the specs is a nice thing, but i guess this will change in case of windows and macOS, (do they also have $XDG_CONFIG_HOME and $XDG_CACHE_HOME directories?)

@cfergeau I haven't looked into this, conforming with the specs is a nice thing, but i guess this will change in case of windows and macOS, (do they also have $XDG_CONFIG_HOME and $XDG_CACHE_HOME directories?)

$HOME/.crc is not typical there either ;) I'm not sure what glib is doing on these platforms

$HOME/.crc is not typical there either ;)

Right for windows, but macOS i am sure others also use this location..

It seems even on macOS, .crc is not the recommended way https://stackoverflow.com/questions/3373948/equivalents-of-xdg-config-home-and-xdg-data-home-on-mac-os-x#5084892


请提出你的问题
Traceback (most recent call last):
File "infer_cpu.py", line 103, in
main()
File "infer_cpu.py", line 79, in main
outputs = predictor.predict(texts)
File "/zhangxuejie373/ren857/PaddleNLP-develop/model_zoo/uie/deploy/python/uie_predictor.py", line 461, in predict
results = self._multi_stage_predict(input_data)
File "/zhangxuejie373/ren857/PaddleNLP-develop/model_zoo/uie/deploy/python/uie_predictor.py", line 402, in _multi_stage_predict
result_list = self._single_stage_predict(examples)
File "/zhangxuejie373/ren857/PaddleNLP-develop/model_zoo/uie/deploy/python/uie_predictor.py", line 192, in _single_stage_predict
start_prob, end_prob = self._infer(input_dict)
File "/zhangxuejie373/ren857/PaddleNLP-develop/model_zoo/uie/deploy/python/uie_predictor.py", line 458, in _infer
return self.inference_backend.infer(data)
File "/zhangxuejie373/ren857/PaddleNLP-develop/model_zoo/uie/deploy/python/uie_predictor.py", line 80, in infer
result = self.predictor.run(None, input_dict)
File "/zhangxuejie373/anaconda3/envs/p38_paddle/lib/python3.8/site-packages/onnxruntime/capi/onnxruntime_inference_collection.py", line 200, in run
return self._sess.run(output_names, input_feed, run_options)
onnxruntime.capi.onnxruntime_pybind11_state.InvalidArgument: [ONNXRuntimeError] : 2 : INVALID_ARGUMENT : Non-zero status code returned while running Gather node. Name:'p2o.Gather.0' Status Message: indices element out of data bounds, idx=37366 must be within the inclusive range [-30522,30521]
UIE模型推理时报错

@briup1 Hi，
辛苦提供一下复现代码以及版本信息

@linjieccc HI,
朋友，PaddleNLP-develop/model_zoo/uie/deploy/python/infer_cpu.py 和infer_gpu.py,代码执行都会产生这个问题。
版本信息:
Name: paddlenlp
Version: 2.4.3
Summary: Easy-to-use and powerful NLP library with Awesome model zoo, supporting wide-range of NLP tasks from research to industrial applications, including Neural Search, Question Answering, Information Extraction and Sentiment Analysis end-to-end system.
Home-page: https://github.com/PaddlePaddle/PaddleNLP
Author: PaddleNLP Team
Author-email<EMAIL_ADDRESS>License: Apache 2.0
Location: /zhangxuejie373/anaconda3/envs/p38_paddle/lib/python3.8/site-packages
Requires: colorama, colorlog, datasets, dill, jieba, multiprocess, paddle2onnx, paddlefsl, protobuf, sentencepiece, seqeval, tqdm, visualdl
Required-by:


Redisson (3.x.x) failed to initialize in Replicated connection with one of the nodes is not online

A connection refused exception is been thrown at this line when a node is offline during the initialization period. https://github.com/redisson/redisson/blob/master/redisson/src/main/java/org/redisson/connection/ReplicatedConnectionManager.java#L131
Problem is only related to CompletableFuture

Fixed

Thanks


backport: Add p2p security fix to v0.34 and v0.37 #9517

Original issue:  tendermint/tendermint#9517
This is a ToDo issue for backporting and testing the security fix from tendermint/tendermint#9500.
v0.34

[x]  Backport v0.34.x and add a CHANGELOG_PENDING.md tendermint/tendermint#9516
[x] Run a large-scale testnet (a single test) on v0.34.x with this fix and check that things work as expected.
[x] Cut v0.34.22.

v0.37.1

[x] Backport to v0.37.x and add a CHANGELOG_PENDING.md #87
[x] Keep the v0.37.x backport branch open until we've cut v0.37.0, then merge it.
[x] Run another large-scale testnet on v0.37.x to check that things work before cutting v0.37.1.

Closed as #473 has been launched (and the fix was merged into 0.37.0 - we decided to forego the 0.37.1 route).


plotters example

thread 'main' panicked at library/core/src/panicking.rs:215:5: unsafe precondition(s) violated: slice::from_raw_parts requires the pointer to be aligned and non-null, and the total size of the slice not to exceed isize::MAXnote: run withRUST_BACKTRACE=1 environment variable to display a backtrace thread caused non-unwinding panic. aborting. Aborted (core dumped)
appears to be part of plotters because it makes it completely through the training phase.

opened https://github.com/plotters-rs/plotters/issues/573, awaiting reply.

I have the same problem when I use the lib under docker bookworm with rust 1.78 but the problem doesn't appear on MacOS.

While waiting for the patch, I've found an alternative which consists in using the SVGBackend and not the BitmapBackend. Apparently the bug is linked specifically to BitMapBackend.

After all, SVG renderings are of better quality.

This should allow development once again.

Commencing development now that I have my codespace usage reset

Hangs during training phase, I don't think it used to do that before the change. Not exactly sure how this happened but probably has something to do with the mutex.

When I run with LLDB, it finished training pretty much instantly and then I get the following:
thread 'main' panicked at examples/plot.rs:103:59:
called `Option::unwrap()` on a `None` value
stack backtrace:
   0: rust_begin_unwind
             at /rustc/0d8b3346a3992ab11ea35ff0fb95a6864b91f797/library/std/src/panicking.rs:645:5
   1: core::panicking::panic_fmt
             at /rustc/0d8b3346a3992ab11ea35ff0fb95a6864b91f797/library/core/src/panicking.rs:72:14
   2: core::panicking::panic
             at /rustc/0d8b3346a3992ab11ea35ff0fb95a6864b91f797/library/core/src/panicking.rs:141:5
   3: core::option::unwrap_failed
             at /rustc/0d8b3346a3992ab11ea35ff0fb95a6864b91f797/library/core/src/option.rs:1984:5
   4: core::option::Option<T>::unwrap
             at /rustc/0d8b3346a3992ab11ea35ff0fb95a6864b91f797/library/core/src/option.rs:932:21
Training...
Training complete, collecting data and building chart...
thread 'main' panicked at examples/plot.rs:103:59:
called `Option::unwrap()` on a `None` value
stack backtrace:
   0: rust_begin_unwind
             at /rustc/0d8b3346a3992ab11ea35ff0fb95a6864b91f797/library/std/src/panicking.rs:645:5
   1: core::panicking::panic_fmt
             at /rustc/0d8b3346a3992ab11ea35ff0fb95a6864b91f797/library/core/src/panicking.rs:72:14
   2: core::panicking::panic
             at /rustc/0d8b3346a3992ab11ea35ff0fb95a6864b91f797/library/core/src/panicking.rs:141:5
   3: core::option::unwrap_failed
             at /rustc/0d8b3346a3992ab11ea35ff0fb95a6864b91f797/library/core/src/option.rs:1984:5
   4: core::option::Option<T>::unwrap
             at /rustc/0d8b3346a3992ab11ea35ff0fb95a6864b91f797/library/core/src/option.rs:932:21
   5: plot::main
             at ./examples/plot.rs:103:24
   6: core::ops::function::FnOnce::call_once
             at /rustc/0d8b3346a3992ab11ea35ff0fb95a6864b91f797/library/core/src/ops/function.rs:250:5
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

This example technically works now, but it still doesn't learn. Will also probably need to check the other examples to make sure this isn't a recurring thing.

I think I'll just make a separate issue and pull request that patches the learning of all these examples, as I think this might become a pretty long process.

temporary disabled branch detection ruleset, not sure why it decided to stop working recently. there is absolutely a successful testing deployment.


Dead code elimination tests

We need to introduce Dead code elimination tests and provide some coverage for it, as currently we have no DCE tests.

For reference: this task is connected with #332 and #488.

Implemented by #759.


cmd/cue: add "hoist" command

Originally opened by @mpvl in https://github.com/cuelang/cue/issues/7
Implement cue hoist to extract templates from concrete data definitions. One could see this as cue trim in the opposite direction.
This can be implemented using the known anti-unification algorithm. It probably makes sense, though, to disregard disjunctions or to limit the number of elements.

Linking to https://github.com/cue-lang/cue/discussions/2231 because apparently GitHub does not create the linkage between issues and discussions.


Problem with CLIP implementation

There's a bug concerning CLIP implementation, since nn.MultiheadAttention does not have a parameter called "search", which is customized in your implementation of other modules to give the model a learnable pruning parameter. However, the command runs without error. I will appreciate it if you would help me with that.

Hi, @Jiseshen this is not a bug. When running the code, deit/mock.py dynamically replaces some functions of nn.MultiheadAttention with our own implementations and inserts new parameters UPop needs. For example, this line https://github.com/sdc17/UPop/blob/4ddd4bb85cfd3e0f4bbdb4a6f3c7dc0fbee5b399/clip/mock.py#L248
inserts the "search" into nn.MultiheadAttention. Some related explanations are also mentioned in #20.


func azure functionapp publish --help should print out help

func help azure functionapp publish should work, but I'll add --help as it should mean the same thing


Collapse Rows?

Would it work to allow users to collapse rows on the Homework page? Individually or in small groups (5, 10, etc.)? This could work for the table on the Classes page too, but since it is likely not used as much...not a big deal. Being able to toggle rows closed would save some scrolling.
If there is a better way that already exists, I am open to hearing about it.
Either way, thank you!

Thanks for the feedback! I'm actually in the process of reworking the class and homework pages and one of the things i'll be doing is creating two tabs, Incomplete and Complete. That will get the old completed homework out of the way so the most recent assignments are on top.
I'm also considering adding the option to collapse rows for the situation where someone hasn't completed everything yet but has moved on to newer homework & plans to go back and finish old work later.

Well it's a year later and I still haven't done this! Leaving it open for a bit to see if anyone would like to work on it.

Closing this issue, to be replaced with two separate ones.


Relative paths in notebooks

Some of our tutorial notebooks use relative paths (for example); in most situations that'd be OK but we may want to make sure our tutorials run independent of where the user is running the notebook.

Oops... Did not realize that notebooks already canonize relative paths. Nevermind!


Doesn't work with ST4: command pallet doesn't show the option for 'Preview'

@math2001
Issue: command pallet doesn't show the option for 'Preview'
Only the settings are available. (did I do something wrong, or  has there been an API change?)
Version used is mentioned in the picture (overlaid, it does not auto-open the 'Aboutdialouge box')
After installing:

My mistake! :sweat_smile:
I did not initialize it (done by clicking on the command seen in the picture)


[berkeley] Give dedicated error messages and exit codes for node offline states

This PR adds dedicated exit codes and error messages, depending on the status of a node when it goes offline. This builds upon #13749.
Checklist:

[ ] Dependency versions are unchanged

Notify Velocity team if dependencies must change in CI

[ ] Modified the current draft of release notes with details on what is completed or incomplete within this project
[ ] Document code purpose, how to use it

Mention expected invariants, implicit constraints

[ ] Tests were added for the new behavior

Document test purpose, significance of failures
Test names should reflect their purpose

[ ] All tests pass (CI will check this if you didn't)
[ ] Serialized types are in stable-versioned modules
[ ] Does this close issues? List them

!ci-build-me

PR for the target branch was closed. Closing this one too.


python3Packages.eval-type-backport: 0.1.3 -> 0.2.2

The main reason for the update is a fix for 3.12 support that was broken since 0.2.0: https://github.com/alexmojaki/eval_type_backport/issues/24
https://github.com/alexmojaki/eval_type_backport
Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review pr 367228

x86_64-darwin

:white_check_mark: 13 packages built:

python311Packages.albumentations
python311Packages.albumentations.dist
python311Packages.eval-type-backport
python311Packages.eval-type-backport.dist
python311Packages.insightface
python311Packages.insightface.dist
python312Packages.albumentations
python312Packages.albumentations.dist
python312Packages.eval-type-backport
python312Packages.eval-type-backport.dist
python312Packages.insightface
python312Packages.insightface.dist
unstructured-api

aarch64-darwin

:white_check_mark: 13 packages built:

python311Packages.albumentations
python311Packages.albumentations.dist
python311Packages.eval-type-backport
python311Packages.eval-type-backport.dist
python311Packages.insightface
python311Packages.insightface.dist
python312Packages.albumentations
python312Packages.albumentations.dist
python312Packages.eval-type-backport
python312Packages.eval-type-backport.dist
python312Packages.insightface
python312Packages.insightface.dist
unstructured-api

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-ready-for-review/3032/4993


Divide not retaining sign correctly.

When dividing -1/1 the sign is preserved correctly. When dividing 1/-1, it is not.

Seems to only be a problem for 128 bit types.


frontend: Change button inside anchor tag to only anchor element.

The buttons contained in anchor elements are changed by creating a valid link style that looks like the buttons we have now.
improves: #6126

If the approach looks okay, I'll do the changes in other files as well.

@zulipbot label "needs review"

@vaidap @brockwhittaker can one of you review this?

Why all inside of <div> elements? If you need block styling then just make the links block styled with a class.

@brockwhittaker used <div> to be able to center-align the links and use inline-block property to have the width of the link box defined by the text size. This worked best.

ping @brockwhittaker .


dcos-11760: Placement constraints

This PR introduces placement constraints:
⚠  I moved "Container Runtime" section from the foldable Advanced Settings as it is supposed to be according to the design. So it's always visible, while Placement Constraints go under Advanced Settings section

@Poltergeist @mlunoe I heard the message and addressed the comments! 🙇

Nice Work, Let's merge this.


Shorten & No more params => Params should be optional

Describe the bug
Hello ?!
Your Example Website or App
Hello ?!
Steps to Reproduce the Bug or Issue
Hello ?!
Expected behavior
Hello ?!
Screenshots or Videos
Hello ?!
Platform
Hello ?!
Additional context
Hello ?!

done


feat(deploy): push initial deployment to prod

This tweaks deploy behavior on empty projects, pushing the initial deployment to prod and telling the user about futher updates requiring --prod flag usage.
It also enhances the final status message in order to record which environment got updated (production or preview).

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


Question: Spring Boot starter with shared engine?

Hi,
I am currently trying to deploy a Spring Boot application with a shared process engine on a tomcat. I thought I have the solution, but it seems that I have two different application contexts running. I cannot autowire dependencies like RuntimeService.
Is there any example available for using Spring Boot with a shared engine on a servlet container?
Best Regards,
Michael

Hm. You probably  know the war example https://github.com/camunda/camunda-bpm-spring-boot-starter/tree/master/examples/example-war
Buts thats still using an embedded engine. I wonder why I would want to use spring boot in a shared engine scenario anyway. Could you please elaborate what problem you are trying to solve? I mean if the engine is configured via platform.xml anyway, a normal engine-spring application would be enough, this extension mainly deals with configuring/starting and deploying the engine ...

We are using Camunda in a layered microservice context and some services are controlled by BPM process. As the BPM process is invoking some other BPM processes of other domains, we preferred a shared engine with a central Camunda installation and its central cockpit and administration tools.
I have solved the problem with the examples by propagating the process engine in the Spring Context:
@Bean
    public ProcessEngineService getProcessEngineService() {
        return BpmPlatform.getProcessEngineService();
    }

    @Bean
    public ProcessEngine getProcessEngine() {
        return this.getProcessEngineService().getDefaultProcessEngine();
    }

Hi,
I am also using Camunda in a layered microservice context and some services are controlled by BPM process. As the BPM process is invoking some other BPM processes of other domains, we preferred a shared engine with a central Camunda installation and its central cockpit and administration tools.
I have followed above steps, but always process engine is null this.processEngineService().getDefaultProcessEngine().
Listed out the steps:

Downloaded Tomcat
Downloaded camunda-webapp-tomcat-standalone-7.14.0.war, unzip and drop it in the webapps
My own spring boot application is build and when i tried to deployed into same tomcat, always got null processEngineService().getDefaultProcessEngine()

Please find the sample code:
@Bean
public ProcessEngineService processEngineService() {
return BpmPlatform.getProcessEngineService();
}
@Bean(destroyMethod = "")
public ProcessEngine processEngine(){
ProcessEngine processEngine = this.processEngineService().getDefaultProcessEngine();
System.out.println(" Process engine is successfully created "+processEngine);
return processEngine;
}
@Bean
public SpringProcessApplication processApplication()
{
return new SpringProcessApplication();
}

org.camunda.bpm
camunda-engine
provided

org.camunda.bpm
camunda-engine-spring

org.springframework
spring-context

org.apache.tomcat.embed
tomcat-embed-jasper
provided

org.springframework.boot
spring-boot-starter-tomcat
provided

org.springframework.boot
spring-boot-starter-web

Please help me to resolve


Adds a new log tag for the MPTCP state of a connection

Possible values are:
-1 == MPTCP was not enabled on the listening port
 0 == MPTCP was enabled, but not negotiated
 1 == MPTCP was enabled, and succesfully negotiated

[approve ci autest]

[approve ci autest]

Update: I kept the -1/0/1 log values, but replaced the internal type with
std::optional<bool>

I think this looks pretty reasonable (and, sizeof() this data type is 2, so better than int :).

Well, I'll be damned, it seems we don't support logging negative values ??

What do you guys think about a fix like this:
diff --git a/proxy/logging/LogAccess.cc b/proxy/logging/LogAccess.cc
index 237abb6f5..548b678f2 100644
--- a/proxy/logging/LogAccess.cc
+++ b/proxy/logging/LogAccess.cc
@@ -511,23 +511,27 @@ LogAccess::unmarshal_itoa(int64_t val, char *dest, int field_width, char leading
 {
   ink_assert(dest != nullptr);

-  char *p = dest;
+  char *p       = dest;
+  bool negative = false;

-  if (val <= 0) {
-    *p-- = '0';
-    while (dest - p < field_width) {
-      *p-- = leading_char;
-    }
-    return (int)(dest - p);
+  if (val < 0) {
+    negative = true;
+    val      = -val;
   }

-  while (val) {
+  do {
     *p-- = '0' + (val % 10);
     val /= 10;
-  }
+  } while (val);
+
   while (dest - p < field_width) {
     *p-- = leading_char;
   }
+
+  if (negative) {
+    *p-- = '-';
+  }
+
   return (int)(dest - p);
 }

I honestly don't know why our logging of integer would treat all negative values as == 0. It just makes no sense, feels like they were just being lazy here ?

Logging "-" in an integer field is also potentially dangerous in that "-" is obviously not an integer...

[approve ci autest]

[approve ci autest]

We absolutely need this for 8.1.x, but it has some merge conflicts that I need to resolve.

Cherry-picked to 8.1.x


fix: do not store windows specific package manager extension

Description of changes
Remove the .cmd extension from yarn for Windows since it's not needed and causes issues with teams working across multiple OS's

Issue #, if available

Description of how you validated changes
https://us-east-1.console.aws.amazon.com/codesuite/codebuild/671107461633/projects/AmplifyCLI-E2E-Testing/batch/AmplifyCLI-E2E-Testing:1306a0c1-9604-4ed5-906c-96f456d5bf3a?region=us-east-1#
Checklist

[x] PR description included
[x] yarn test passes
[x] Pull request labels are added

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Codecov Report

Merging #13047 (3212a24) into dev (ec9a2ba) will increase coverage by 48.45%.
Report is 284 commits behind head on dev.
The diff coverage is 59.37%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
@@             Coverage Diff             @@
##              dev   #13047       +/-   ##
===========================================
+ Coverage    0.00%   48.45%   +48.45%
===========================================
  Files        1296      842      -454
  Lines      149743    38038   -111705
  Branches     1296     7788     +6492
===========================================
+ Hits            0    18432    +18432
+ Misses     148447    18016   -130431
- Partials     1296     1590      +294

Files Changed
Coverage Δ

...rmation/auth-stack-builder/auth-stack-transform.ts
91.30% <0.00%> (+91.30%)
:arrow_up:

...tack-builder/auth-user-pool-group-stack-builder.ts
51.72% <ø> (+51.72%)
:arrow_up:

...h-stack-builder/user-pool-group-stack-transform.ts
94.59% <0.00%> (+94.59%)
:arrow_up:

.../src/provider-utils/awscloudformation/constants.ts
100.00% <ø> (+100.00%)
:arrow_up:

...e-walkthrough-types/awsCognito-user-input-types.ts
100.00% <ø> (+100.00%)
:arrow_up:

...vice-walkthrough-types/cognito-user-input-types.ts
100.00% <ø> (+100.00%)
:arrow_up:

...y-category-function/src/commands/function/build.ts
0.00% <0.00%> (ø)

...ify-category-function/src/events/prePushHandler.ts
33.33% <0.00%> (+33.33%)
:arrow_up:

...ider-utils/awscloudformation/utils/layerHelpers.ts
21.80% <0.00%> (+21.80%)
:arrow_up:

...er-utils/awscloudformation/utils/storeResources.ts
30.38% <ø> (+30.38%)
:arrow_up:

... and 58 more

... and 1243 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Issue request template: Ask 'How', not 'Did'

In issue templates you get asked a question: Did restic help you or made you happy in any way?
Change it to: How did Restic make your day better today?
Shorter is better, as it doesn't make you read as much.
Though yes/no question Did is also shorter. Up for discussion.

Ok, let's try that!

IMHO it's not a great change. Wording it like this puts an assumption in the mouth of the one being asked the question. It might not be the case that restic made their day better, and "us" telling them that it did is a recipe for disaster relation wise ;)
It's like when you have to agree to something on the website, which in practice you don't actually agree with, but you have to press that darn button in order to be able to use the site, and the button is named like "Okay, thanks!" or "Okay, sounds good!".
Also it's not needed. Everyone understands that if it did, they should write how/why.

Hmhmhm. I can see the assumption now. Maybe we can split the questions into two, like:
"Did restic help you today? Did it make you happy in any way?"

That or what was before works, they're pretty much the same :)


LoadingOverlay Spinner Should Be Bidi

Issue Description
The LoadingOverlay icon should be bidirectional. We should add isBidi to the loading spinner.
Issue Type

[ ] New Feature
[ ] Enhancement
[x] Bug
[ ] Other

Needs more design input. @mmalaker will follow up.

Did some research on this. The spinner should not change direction in RTL. Per the material.io guidelines: "While the linear representation of time is mirrored in RTL, the circular direction of time is not. Clocks still turn clockwise for RTL languages. A clock icon or a circular refresh or progress indicator with an arrow pointing clockwise should not be mirrored."


Change date of geophysical survey report and permit other report

Two changes to OpenFileDateConfig.json
Geophysical Survey Report Final changed to 2 years, 6 months, 1 day:
Permit Report Other - Changed from 5 years to confidential.

@DavidArmstrongGSQ
Are you intending to change "geophysical survey report-acquisition" OR "geophysical-survey-report-final"?

Can confirm is geophysical-survey-report-final.

Closed due to additional changes needed


Load would ideally support wildcards

... Though if we do directory-based browsing, that become potentially irrelevant:

You can use the "Browse for a developer manifest" to do directory-based browsing.


Skip whitespace in HLS attributes.

Description
Example manifest:
#EXT-X-STREAM-INF:PROGRAM-ID=1, BANDWIDTH=1000000, RESOLUTION=1920x1080
Type of change

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to
not work as expected)
[ ] This change requires a documentation update

Checklist:

[x] I have signed the Google CLA https://cla.developers.google.com
[x] My code follows the style guidelines of this project
[ ] I have made corresponding changes to the documentation
[x] I have added tests that prove my fix is effective or that my feature works
[x] I have verified my change on multiple browsers on different platforms
[x] I have run ./build/all.py and the build passes
[x] I have run ./build/test.py and all tests pass

@joeyparrish can you review it? Thanks!

@joeyparrish can you review it? Thanks!

Looks like we merged another change that conflicts with this one.  Can you please take a look and add sequenceMode: true to your expected HLS manifest?
      ✗ parses manifest attributes with space
	Error: Expected $.sequenceMode = true to equal false.

Oh, you'll need to rebase/merge, I expect

I commited a quick fix to your PR branch to add the missing sequenceMode attribute.  I'm not sure if that's enough, or if the branch will have to be rebased, as well.  If the tests pass, I'll merge it.  Thanks!


Incorrect information for the Mobility Service configuration file

[Enter feedback here]
"This website provides adequate information for scenarios where the OVA VM is created under VMware ESXi. However, it lacks sufficient details when a physical appliance, not an OVA, is created with a MySQL server.
The new Mobility Agent, version ASR_UA_9.61.0 (released on March 18 or later), seems to have introduced an issue. Due to limited space in the Host ESXi, I am unable to install an OVA. As a workaround, I have to create a new VM in Azure and install the ASR Setup under this VM.
Unfortunately, I am unable to register and replicate the source VM due to issues with the Mobility Service configuration file. The previous version of ASR Mobility did not have this problem.
I kindly request that the website be updated with accurate information and instructions that cater to these scenarios. Additionally, it would be beneficial to have a tool that can generate the Mobility Service Configuration file, or alternatively, revert to the previous version of ASR Mobility.
Thank you."

Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: d179f813-5826-7ec3-30c5-9b6b9c0a9acc
Version Independent ID: 3141a3e5-ea3b-cba1-7e34-4df69b8e1aa3
Content: About the Mobility service for disaster recovery of VMware VMs and physical servers with Azure Site Recovery - Azure Site Recovery
Content Source: articles/site-recovery/vmware-physical-mobility-service-overview.md
Service: site-recovery
GitHub Login: @ankitaduttaMSFT
Microsoft Alias: ankitadutta

@Silverpro29
Thanks for your feedback! We will investigate and update as appropriate.

@Silverpro29 thank you for the feedback.
@ankitaduttaMSFT, could you please review this feedback and share your thoughts. Thank you

Hi @Silverpro29, adding @rohan-sahini to help with this.

Thanks for your dedication to our documentation. Unfortunately, at this time we have been unable to review your issue in a timely manner and we sincerely apologize for the delayed response. The requested updates have not been made since the creation of this issue, and the timeline for resolution may vary based on resourcing, so we've created an internal work item to incorporate your suggestions. We are closing this issue for now, but feel free to comment here as necessary. #please-close


add Finnish grades

https://en.wikipedia.org/wiki/Grade_(climbing)#Scandinavian

Would love to work on #101.


Intermediate tutorial does not exist

The main page README has a link to an intermediate tutorial https://github.com/kallisti-dev/hs-webdriver/blob/master/examples/readme-example-intermediate.md which does not exist.

I'm planning to write soon about webdriver for my 24 Days of Hackage article series.

In the works. Stay tuned.

In the meantime if you have any questions I'm happy to answer.

Hi @FranklinChen,
Recently published an article about it.
I think it might be helpful. https://an-pro.org/posts/webdriver-cookbook.html
@kallisti-dev, if you want, you can add reference somewhere.
Thanks,
Andrey

Really nice guide! I'll add your guide to the README this weekend and
remove the reference to intermediate tutorial.
On Fri, Aug 3, 2018, 2:06 PM Andrey Prokopenko<EMAIL_ADDRESS>wrote:

Hi @FranklinChen https://github.com/FranklinChen,
Recently published an article about it.
I think it might be helpful.
https://an-pro.org/posts/webdriver-cookbook.html
@kallisti-dev https://github.com/kallisti-dev, if you want, you can add
reference somewhere.
Thanks,
Andrey
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/kallisti-dev/hs-webdriver/issues/82#issuecomment-410332784,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABdZhJndAz8n7gmLYavaf2y3HsklGiyEks5uNJE2gaJpZM4GzkqF
.


DryRun mode outputs Kafka AdminClient logs

Dry-run mode julie-ops-cli.sh --clientConfig julie.properties --dryRun --overridingClientConfig kafka.properties --topology topics.yaml  outputs Kafka AdminClient logs
Run julie-ops from official docker image  version 4.4 or latest in dry-run mode
It will output Kafka client log together with json diff
08:15:16.290 [main] DEBUG org.apache.kafka.common.security.ssl.DefaultSslEngineFactory - Created SSL context with keystore null, truststore null, provider SunJSSE.
08:15:16.318 [main] WARN org.apache.kafka.clients.admin.AdminClientConfig - The configuration 'awt.toolkit' was supplied but isn't a known config.
08:15:16.318 [main] WARN org.apache.kafka.clients.admin.AdminClientConfig - The configuration 'topology.topic.prefix.separator' was supplied but isn't a known config.
08:15:16.319 [main] WARN org.apache.kafka.clients.admin.AdminClientConfig - The configuration 'java.specification.version' was supplied but isn't a known config.
08:15:16.319 [main] WARN org.apache.kafka.clients.admin.AdminClientConfig - The configuration 'julie.s3.endpoint' was supplied but isn't a known config.
08:15:16.319 [main] WARN org.apache.kafka.clients.admin.AdminClientConfig - The configuration 'sun.cpu.isalist' was supplied but isn't a known config.
08:15:16.319 [main] WARN org.apache.kafka.clients.admin.AdminClientConfig - The configuration 'sun.jnu.encoding' was supplied but isn't a known config.
08:15:16.319 [main] WARN org.apache.kafka.clients.admin.AdminClientConfig - The configuration 'topology.project.prefix.format' was supplied but isn't a known config.
08:15:16.319 [main] WARN org.apache.kafka.clients.admin.AdminClientConfig - The configuration 'julie.kafka.config.topic' was supplied but isn't a known config.
08:15:16.319 [main] WARN org.apache.kafka.clients.admin.AdminClientConfig - The configuration 'confluent.command.topic' was supplied but isn't a known config.
08:15:16.319 [main] WARN org.apache.kafka.clients.admin.AdminClientConfig - The configuration 'sun.arch.data.model' was supplied but isn't a known config.
08:15:16.319 [main] WARN org.apache.kafka.clients.admin.AdminClientConfig - The configuration 'topology.dlq.topics.generate' was supplied but isn't a known config.
08:15:16.319 [main] WARN org.apache.kafka.clients.admin.AdminClientConfig - The configuration 'allow.delete.artefacts.ksql' was supplied but isn't a known config.
08:15:16.319 [main] WARN org.apache.kafka.clients.admin.AdminClientConfig - The configuration 'topology.file.type' was supplied but isn't a known config.
08:15:16.319 [main] WARN org.apache.kafka.clients.admin.AdminClientConfig - The configuration 'sun.boot.library.path' was supplied but isn't a known config.
08:15:16.319 [main] WARN org.apache.kafka.clients.admin.AdminClientConfig - The configuration 'sun.java.command' was supplied but isn't a known config.
08:15:16.319 [main] WARN org.apache.kafka.clients.admin.AdminClientConfig - The configuration 'jdk.debug' was supplied but isn't a known config.
08:15:16.319 [main] WARN org.apache.kafka.clients.admin.AdminClientConfig - The configuration 'java.specification.vendor' was supplied but isn't a known config.
08:15:16.319 [main] WARN org.apache.kafka.clients.admin.AdminClientConfig - The configuration 'java.home' was supplied but isn't a known config.
08:15:16.319 [main] WARN org.apache.kafka.clients.admin.AdminClientConfig - The configuration 'file.separator' was supplied but isn't a known config.
08:15:16.319 [main] WARN org.apache.kafka.clients.admin.AdminClientConfig - The configuration 'topology.builder.state.processor.class' was supplied but isn't a known config.
08:15:16.319 [main] WARN org.apache.kafka.clients.admin.AdminClientConfig - The configuration 'java.vm.compressedOopsMode' was supplied but isn't a known config.
08:15:16.319 [main] WARN org.apache.kafka.clients.admin.AdminClientConfig - The configuration 'line.separator' was supplied but isn't a known config.
08:15:16.319 [main] WARN org.apache.kafka.clients.admin.AdminClientConfig - The configuration 'java.specification.name' was supplied but isn't a known config.
08:15:16.319 [main] WARN org.apache.kafka.clients.admin.AdminClientConfig - The configuration 'java.vm.specification.vendor' was supplied but isn't a known config.
08:15:16.319 [main] WARN org.apache.kafka.clients.admin.AdminClientConfig - The configuration 'julie.enable.principal.management' was supplied but isn't a known config.
08:15:16.320 [main] WARN org.apache.kafka.clients.admin.AdminClientConfig - The configuration 'topology.subject.managed.prefixes' was supplied but isn't a known config.
08:15:16.320 [main] WARN org.apache.kafka.clients.admin.AdminClientConfig - The configuration 'confluent.monitoring.topic' was supplied but isn't a known config.
08:15:16.320 [main] WARN org.apache.kafka.clients.admin.AdminClientConfig - The configuration 'sun.management.compiler' was supplied but isn't a known config.
08:15:16.320 [main] WARN org.apache.kafka.clients.admin.AdminClientConfig - The configuration 'java.runtime.version' was supplied but isn't a known config.
......................ommited.............................
08:15:18.420 [kafka-admin-client-thread | adminclient-1] DEBUG org.apache.kafka.clients.NetworkClient - [AdminClient clientId=adminclient-1] Sending DESCRIBE_ACLS request with header RequestHeader(apiKey=DESCRIBE_ACLS, apiVersion=2, clientId=adminclient-1, correlationId=170) and timeout 30000 to node 2: {resource_type_filter=1,resource_name_filter=null,pattern_type_filter=1,principal_filter=null,host_filter=null,operation=1,permission_type=1,_tagged_fields={}}
08:15:18.422 [kafka-admin-client-thread | adminclient-1] DEBUG org.apache.kafka.clients.NetworkClient - [AdminClient clientId=adminclient-1] Received DESCRIBE_ACLS response from node 2 for request with header RequestHeader(apiKey=DESCRIBE_ACLS, apiVersion=2, clientId=adminclient-1, correlationId=170): org.apache.kafka.common.requests.DescribeAclsResponse@3f4880f4
[WARN ] 2022-10-20 08:15:18.449 [main] AccessControlManager - Remote state verification disabled, this is not a good practice, be awarein future versions, this check is going to become mandatory.
[WARN ] 2022-10-20 08:15:18.449 [main] AccessControlManager - Remote state verification disabled, this is not a good practice, be awarein future versions, this check is going to become mandatory.
[WARN ] 2022-10-20 08:15:18.458 [main] ArtefactManager - Remote state verification disabled, this is not a good practice, be awarein future versions, this check is going to become mandatory.
[WARN ] 2022-10-20 08:15:18.458 [main] ArtefactManager - Remote state verification disabled, this is not a good practice, be awarein future versions, this check is going to become mandatory.
[WARN ] 2022-10-20 08:15:18.462 [main] ArtefactManager - Remote state verification disabled, this is not a good practice, be awarein future versions, this check is going to become mandatory.
[WARN ] 2022-10-20 08:15:18.462 [main] ArtefactManager - Remote state verification disabled, this is not a good practice, be awarein future versions, this check is going to become mandatory.
{
  "Operation" : "com.purbon.kafka.topology.actions.topics.UpdateTopicConfigAction",
  "Topic" : "dev.cs.cdr",
  "Action" : "update",
  "Changes" : {
    "UpdatedPartitionCount" : 6
  }
}

Expected behavior
It should display just diff, like it was previosly (docker image with tag 4.2.9, 4.3.0)
[WARN ] 2022-10-20 16:31:54.493 [main] TopicManager - Remote state verification disabled, this is not a good practice, be awarein future versions, this check is going to become mandatory.
[WARN ] 2022-10-20 16:31:54.493 [main] TopicManager - Remote state verification disabled, this is not a good practice, be awarein future versions, this check is going to become mandatory.
[WARN ] 2022-10-20 16:31:55.106 [main] AccessControlManager - Remote state verification disabled, this is not a good practice, be awarein future versions, this check is going to become mandatory.
[WARN ] 2022-10-20 16:31:55.106 [main] AccessControlManager - Remote state verification disabled, this is not a good practice, be awarein future versions, this check is going to become mandatory.
[WARN ] 2022-10-20 16:31:55.110 [main] ArtefactManager - Remote state verification disabled, this is not a good practice, be awarein future versions, this check is going to become mandatory.
[WARN ] 2022-10-20 16:31:55.110 [main] ArtefactManager - Remote state verification disabled, this is not a good practice, be awarein future versions, this check is going to become mandatory.
[WARN ] 2022-10-20 16:31:55.113 [main] ArtefactManager - Remote state verification disabled, this is not a good practice, be awarein future versions, this check is going to become mandatory.
[WARN ] 2022-10-20 16:31:55.113 [main] ArtefactManager - Remote state verification disabled, this is not a good practice, be awarein future versions, this check is going to become mandatory.
{
  "Operation" : "com.purbon.kafka.topology.actions.topics.UpdateTopicConfigAction",
  "Topic" : "test-topic",
  "Action" : "update",
  "Changes" : {
    "UpdatedPartitionCount" : 6
  }
}

track

@dimmy-timmy did you solved this issue?


Creation of sem-seg

Thank you for the repository, it's very useful for my research work.
I would like to know if there is any suggestion for speeding up the sem-seg creation process ? It's taking a lot of time.

A naive approach is to split dataset and use multiple processes.


Bug using autocmd BufWritePost * execute

Steps to reproduce

Add the following snippet into ~/.vimrc:

autocmd BufWritePost * execute 'silent ! if [ -d .git ] ; then git add % ; git commit -a ; fi'

Change to some directory that has the sub-directory .git
Open some file that's on the current directory
Edit, save, and also quit from it.

Expected behaviour
Vim shows me the buffer of the current file instead of a pseudo-terminal. By this I mean: asciinema.org/a/464935
Version of Vim
VIM - Vi IMproved 8.1 (2018 May 18, compiled Apr 15 2020 06:40:31) Included patches: 1-2269 Modified by<EMAIL_ADDRESS>Compiled by<EMAIL_ADDRESS>Huge version without GUI.  Features included (+) or not (-): +acl               -farsi             -mouse_sysmouse    -tag_any_white +arabic            +file_in_path      +mouse_urxvt       -tcl +autocmd           +find_in_path      +mouse_xterm       +termguicolors +autochdir         +float             +multi_byte        +terminal -autoservername    +folding           +multi_lang        +terminfo -balloon_eval      -footer            -mzscheme          +termresponse +balloon_eval_term +fork()            +netbeans_intg     +textobjects -browse            +gettext           +num64             +textprop ++builtin_terms    -hangul_input      +packages          +timers +byte_offset       +iconv             +path_extra        +title +channel           +insert_expand     -perl              -toolbar +cindent           +job               +persistent_undo   +user_commands -clientserver      +jumplist          +postscript        +vartabs -clipboard         +keymap            +printer           +vertsplit +cmdline_compl     +lambda            +profile           +virtualedit +cmdline_hist      +langmap           -python            +visual +cmdline_info      +libcall           +python3           +visualextra +comments          +linebreak         +quickfix          +viminfo +conceal           +lispindent        +reltime           +vreplace +cryptv            +listcmds          +rightleft         +wildignore +cscope            +localmap          -ruby              +wildmenu +cursorbind        -lua               +scrollbind        +windows +cursorshape       +menu              +signs             +writebackup +dialog_con        +mksession         +smartindent       -X11 +diff              +modify_fname      +sound             -xfontset +digraphs          +mouse             +spell             -xim -dnd               -mouseshape        +startuptime       -xpm -ebcdic            +mouse_dec         +statusline        -xsmp +emacs_tags        +mouse_gpm         -sun_workshop      -xterm_clipboard +eval              -mouse_jsbterm     +syntax            -xterm_save +ex_extra          +mouse_netterm     +tag_binary         +extra_search      +mouse_sgr         -tag_old_static        system vimrc file: "$VIM/vimrc"      user vimrc file: "$HOME/.vimrc"  2nd user vimrc file: "~/.vim/vimrc"       user exrc file: "$HOME/.exrc"        defaults file: "$VIMRUNTIME/defaults.vim"   fall-back for $VIM: "/usr/share/vim" Compilation: gcc -c -I. -Iproto -DHAVE_CONFIG_H   -Wdate-time  -g -O2 -fdebug-prefix-map=/build/vim-iU6mZD/vim-8.1.2269=. -fstack-protector-strong -Wformat -Werror=format-security -D_REENTRANT -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1        Linking: gcc   -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -o vim        -lm -ltinfo -lnsl  -lselinux  -lcanberra -lacl -lattr -lgpm -ldl     -L/usr/lib/python3.8/config-3.8-x86_64-linux-gnu -lpython3.8 -lcrypt -lpthread -ldl -lutil -lm -lm

Environment

OS : Windows 11 (WSL2 - Ubuntu)
Terminal: xterm-256color
Shell: bash 5.0.16

Logs and stack traces
No response

You need to prevent the autocmd from being fired in the /.git/COMMIT_EDITMSG file.

IOW, this shell condition is not strict enough:
if [ -d .git ]

Try this one:
if [ -d .git ] && \! [[ %:p:S =~ /.git/ ]]

It should test that a .git/ directory exists, and that the current file is not under a /.git/ directory.
Note that – in a :! command – you need to escape any ! character to prevent Vim from expanding it into the previous external command:

                    Any '!' in {cmd} is replaced with the previous
                    external command (see also 'cpoptions').  But not when
                    there is a backslash before the '!', then that
                    backslash is removed.  Example: ":!ls" followed by
                    ":!echo ! \! \\!" executes "echo ls ! \!".

That's why this backslash is necessary here:
if [ -d .git ] && \! [[ %:p:S =~ /.git/ ]]
                  ^

Also, Vim will expand %:p:S into the full path to the current file, and take care of escaping any character which might be special to the shell.  From :help filename-modifiers:

:p      Make file name a full path.  Must be the first modifier.

:S      Escape special characters for use with a shell command (see
|shellescape()|). Must be the last one.

You also probably need a redraw! after executing silent :!.  From :help :!:

<                       The screen is not redrawn then, thus you have to use
CTRL-L or ":redraw!" if the command did display
something.

All in all, you could try this autocmd:
autocmd BufWritePost * execute 'silent ! if [ -d .git ] && \! [[ %:p:S =~ /.git/ ]]; then git add %:p:S ; git commit -a ; fi' | redraw!

For more questions, visit the google mailing list, the irc channel, or vi.stackexchange.com.

Version of Vim
VIM - Vi IMproved 8.1 (2018 May 18, compiled Apr 15 2020 06:40:31) ...

This is almost 4 years old.  If you still have issues, try to reproduce on master.

This is almost 4 years old. If you still have issues, try to reproduce on master.

@lacygoill Excuse me, ubuntu usually doesn't have the latest version of packages. Installing from the source code, VIM is just now 8.2. Nevertheless, after updating, the snippet has simply fallen apart. Here's the evidence.
I edited and saved a file several times but the autocmd doesn't work. Moreover, and as seen from evidence, the file's current directory has a .git sub-directory. And also I checked out that snippet is on ~/.vimrc.
If these details don't help, there's my new VIM info:
VIM - Vi IMproved 8.2 (2019 Dec 12, compiled Jan 28 2022 10:01:03)
Included patches: 1-4239
Compiled by root@DESKTOP-ERPP0NK
Huge version without GUI.  Features included (+) or not (-):
+acl               +file_in_path      +mouse_urxvt       -tag_any_white
+arabic            +find_in_path      +mouse_xterm       -tcl
+autocmd           +float             +multi_byte        +termguicolors
+autochdir         +folding           +multi_lang        +terminal
-autoservername    -footer            -mzscheme          +terminfo
-balloon_eval      +fork()            +netbeans_intg     +termresponse
+balloon_eval_term -gettext           +num64             +textobjects
-browse            -hangul_input      +packages          +textprop
++builtin_terms    +iconv             +path_extra        +timers
+byte_offset       +insert_expand     -perl              +title
+channel           +ipv6              +persistent_undo   -toolbar
+cindent           +job               +popupwin          +user_commands
-clientserver      +jumplist          +postscript        +vartabs
-clipboard         +keymap            +printer           +vertsplit
+cmdline_compl     +lambda            +profile           +vim9script
+cmdline_hist      +langmap           -python            +viminfo
+cmdline_info      +libcall           -python3           +virtualedit
+comments          +linebreak         +quickfix          +visual
+conceal           +lispindent        +reltime           +visualextra
+cryptv            +listcmds          +rightleft         +vreplace
+cscope            +localmap          -ruby              +wildignore
+cursorbind        -lua               +scrollbind        +wildmenu
+cursorshape       +menu              +signs             +windows
+dialog_con        +mksession         +smartindent       +writebackup
+diff              +modify_fname      -sodium            -X11
+digraphs          +mouse             -sound             -xfontset
-dnd               -mouseshape        +spell             -xim
-ebcdic            +mouse_dec         +startuptime       -xpm
+emacs_tags        -mouse_gpm         +statusline        -xsmp
+eval              -mouse_jsbterm     -sun_workshop      -xterm_clipboard
+ex_extra          +mouse_netterm     +syntax            -xterm_save
+extra_search      +mouse_sgr         +tag_binary
-farsi             -mouse_sysmouse    -tag_old_static
   system vimrc file: "$VIM/vimrc"
     user vimrc file: "$HOME/.vimrc"
 2nd user vimrc file: "~/.vim/vimrc"
      user exrc file: "$HOME/.exrc"
       defaults file: "$VIMRUNTIME/defaults.vim"
  fall-back for $VIM: "/usr/local/share/vim"
Compilation: gcc -c -I. -Iproto -DHAVE_CONFIG_H -O2 -fno-strength-reduce -Wall -Wno-deprecated-declarations -D_REENTRANT -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1
Linking: gcc -L/usr/local/lib -Wl,--as-needed -o vim -lm -ltinfo -ldl

I don't think it will help, but it would probably be better for the autocmd to be inside a self-clearing augroup:
augroup MyGitSetup
    autocmd!
    autocmd BufWritePost * execute 'silent ! if [ -d .git ] && \! [[ %:p:S =~ /.git/ ]]; then git add %:p:S ; git commit -a ; fi' | redraw!
augroup END

As for the issue, I can't reproduce.  Maybe because we're using different shells.  I have zsh 5.8.
You could try to enter debug mode to get more information.  Try to execute this Ex command:
:debug write

Then in debug mode, execute this command:
>step

Remove the leading >.  It just means "debug mode", just like : stands for the regular Ex command-line.
After >step, I get this:
BufWritePost Autocommands for "*"
cmd: execute 'silent ! if [ -d .git ] && \! [[ %:p:S =~ /.git/ ]]; then git add %:p:S ; git commit -a ; fi' | redraw!

After a second >step, I get this:
cmd: ! if [ -d .git ] && \! [[ %:p:S =~ /.git/ ]]; then git add %:p:S ; git commit -a ; fi

Do you get the same results?

Also, if I execute this Ex command:
:! if [ -d .git ] && \! [[ '/run/user/1000/tmp/sample.txt' =~ /.git/ ]]; then echo 'SHOULD COMMIT'; fi

The shell prints this message on the terminal:
SHOULD COMMIT

Do you get the same result (you will need to adapt the full path to sample.txt to your current working directory)?
If not, what do you get if you re-run the same command, but prefix it with :4verbose, like this:
:4verbose :! if [ -d .git ] && \! [[ '/run/user/1000/tmp/sample.txt' =~ /.git/ ]]; then echo 'SHOULD COMMIT'; fi

Try to include the result as well as the exact shell command which Vim actually runs.  It should be printed after the text "Calling shell to execute".  For example:
Calling shell to execute: " if [ -d .git ] && ! [[ '/run/user/1000/tmp/sample.txt' =~ /.git/ ]]; then echo 'SHOULD COMMIT'; fi"
SHOULD COMMIT

Also, does the shell command work outside Vim?  It does for me:
$ if [ -d .git ] && ! [[ '/run/user/1000/tmp/sample.txt' =~ /.git/ ]]; then echo 'SHOULD COMMIT'; fi
SHOULD COMMIT

I don't think it will help, but it would probably be better for the autocmd to be inside a self-clearing augroup:
augroup MyGitSetup
   autocmd!
   autocmd BufWritePost * execute 'silent ! if [ -d .git ] && \! [[ %:p:S =~ /.git/ ]]; then git add %:p:S ; git commit -a ; fi' | redraw!
augroup END

I would have liked it to work, but I fear that I still have the same problem. Autocmd doesn't works properly...

As for the issue, I can't reproduce. Maybe because we're using different shells. I have zsh 5.8.
You could try to enter debug mode to get more information. Try to execute this Ex command:
:debug write

Then in debug mode, execute this command:
>step

Remove the leading >. It just means "debug mode", just like : stands for the regular Ex command-line.
After >step, I get this:
BufWritePost Autocommands for "*"
cmd: execute 'silent ! if [ -d .git ] && \! [[ %:p:S =~ /.git/ ]]; then git add %:p:S ; git commit -a ; fi' | redraw!

After a second >step, I get this:
cmd: ! if [ -d .git ] && \! [[ %:p:S =~ /.git/ ]]; then git add %:p:S ; git commit -a ; fi

Do you get the same results?

Yep, I got them. Here's the complete result:
Entering Debug mode. Type "cont" to continue
cmd: write
>step
"sample.txt" 8 lines, 68 bytes written
BufWritePost Autocommands for "*"
cmd: execute 'silent ! if [ -d .git ] && \! [[ %:p:S =~ /.git/ ]]; then git add %:p:S ; git commit -a ; fi' | redraw!
>step
BufWritePost Autocommands for "*"
cmd: ! if [ -d .git ] && \! [[ %:p:S =~ /.git/ ]]; then git add %:p:S ; git commit -a ; fi
>

Also, if I execute this Ex command:
:! if [ -d .git ] && \! [[ '/run/user/1000/tmp/sample.txt' =~ /.git/ ]]; then echo 'SHOULD COMMIT'; fi

The shell prints this message on the terminal:
SHOULD COMMIT

Do you get the same result (you will need to adapt the full path to sample.txt to your current working directory)?

Absolutely. I got that message without any problems or conflicts.

If not, what do you get if you re-run the same command, but prefix it with :4verbose, like this:
:4verbose :! if [ -d .git ] && \! [[ '/run/user/1000/tmp/sample.txt' =~ /.git/ ]]; then echo 'SHOULD COMMIT'; f

Try to include the result as well as the exact shell command which Vim actually runs. It should be printed after the text "Calling > shell to execute". For example:
Calling shell to execute: " if [ -d .git ] && ! [[ '/run/user/1000/tmp/sample.txt' =~ /.git/ ]]; then echo 'SHOULD COMMIT'; fi"
SHOULD COMMIT

Even if the above command was successful, I added :4 verbose to snippet. So that I got your same result:
Calling shell to execute: " if [ -d .git ] && ! [[ '/home/user/.gitrepos/test/sample.txt' =~ /.git/ ]]; then echo 'SHOULD COMMIT'; fi"
SHOULD COMMIT

Also, does the shell command work outside Vim? It does for me:
$ if [ -d .git ] && ! [[ '/run/user/1000/tmp/sample.txt' =~ /.git/ ]]; then echo 'SHOULD COMMIT'; fi
SHOULD COMMIT

It does for me, too.

What VIM version do you use currently?
This problem emerged after updating VIM from the source code. My reasons for updating weren't only about the version that I had, but also a bug after quitting. In essence, VIM'S color scheme kept on the whole shell. I fixed that bug by pressing CTRL + L or just executing the clear command.  I am thinking return to 8.1 or even testing the snippet on some hard drive distro.

What VIM version do you use currently?

Version of Vim
8.2 Included patches: 1-4242
Environment
Operating system: Ubuntu 20.04.3 LTS
Terminal: xterm
Value of $TERM: xterm-256color
Shell: zsh 5.8

Absolutely. I got that message without any problems or conflicts.

OK, and what happens if you execute the command manually from Vim:
:! if [ -d .git ] && \! [[ %:p:S =~ /.git/ ]]; then git add %:p:S ; git commit -a ; fi

And how about this one:
:!git add %:p:S ; git commit -a

Does any of these start Vim to edit a commit message?

What VIM version do you use currently?

Version of Vim:
8.2 Included patches: 1-4242
Environment:
Operating system: Ubuntu 20.04.3 LTS
Terminal: xterm
Value of $TERM: xterm-256color
Shell: zsh 5.8

@lacygoill now I'm using VIM 8.2 on a hard drive distro without snippet conflicts, and the way I see it, there's some problem with WSL2. If not, there might be wrong steps on the compiling process I did. Here are those steps:
$ sudo apt-get install ncurses-dev
$ git clone https://github.com/vim/vim.git
$ cd vim/src
$ make
$ sudo make install

And also my new environment details:

OS: Slackware 15.0 x86_64
Terminal: xterm
Value of $TERM: xterm-256color
Shell: Bash 5.1.12(1)-release

Absolutely. I got that message without any problems or conflicts.

OK, and what happens if you execute the command manually from Vim:
:! if [ -d .git ] && \! [[ %:p:S =~ /.git/ ]]; then git add %:p:S ; git commit -a ; fi

And how about this one:
:!git add %:p:S ; git commit -a

Does any of these start Vim to edit a commit message?

I didn't have luck with either. Nonetheless, I got this message from the shell:
hint: Waiting for your editor to close the file... fatal: cannot run /usr/bin/vim: No such file or directory
error: unable to start editor '/usr/bin/vim'
Please supply the message using either -m or -F option.

shell returned 1

Press ENTER or type command to continue

It seems to me the $EDITOR environment variable was the problem all along. The value of it is /usr/bin/vim and that it's not on:
$ whereis vim
vim: /usr/bin/vim.tiny /etc/vim /usr/local/bin/vim /usr/share/vim /usr/share/man/man1/vim.1.gz

I export the new path (/usr/bin/vim.tiny) as EDITOR, everything should be fine. Isn't it?
Error detected while processing BufWritePost Autocommands for "*":
E319: Sorry, the command is not available in this version: execute 'silent ! if [ -d .git ] && \! [[ %:p:S =~ /.git/ ]]; then git add %:p:S ; git commit -a ; fi' | redraw!

Oh boy!

It seems to me the $EDITOR environment variable was the problem all along. The value of it is /usr/bin/vim and that it's not on:

You don't need to set EDITOR with an absolute path.  By default, make(1) should install the vim binary at /usr/local/bin/vim.  The shell should find it provided that /usr/local/bin is in your PATH.  You probably just need to set EDITOR to vim.
FWIW, here is how I set EDITOR and similar variables:
export VISUAL='vim'
export EDITOR="$VISUAL"
export SUDO_EDITOR="$VISUAL"

I export the new path (/usr/bin/vim.tiny) as EDITOR, everything should be fine. Isn't it?

vim.tiny has limited capabilities compared to a Vim compiled from source (i.e. with --with-features=huge).
That's probably why you get this error:
E319: Sorry, the command is not available in this version: execute 'silent ! if [ -d .git ] && \! [[ %:p:S =~ /.git/ ]]; then git add %:p:S ; git commit -a ; fi' | redraw!

See :help install-home:
--with-features=huge            Compile with most features enabled.
                                See |+feature-list| for which feature
                                is enabled in which case.


add monitoring content

Add new content about observability, add a dashboard image, and update language in existing monitoring docs. Not included are rearranging the material and TOC, which will be done in a separate PR.

@carrielaben-da Just for information, I didn't adjust the Sphinx heading underline styles much (for example, "####", "****", "====", "----") since the material will likely be moved around.


Delete orphaned file [phab:D1561]

Created by salguarnieri at 2017-04-21 16:45:13:
go_extractor.go isn't referenced in the BUILD file and duplicates types and other code from extractor.go.

salguarnieri wrote at 2017-04-21 17:15:16:

Delete orphan file

fromberger accepted this revision at 2017-04-21 18:01:59

salguarnieri closed via commit 3269fc96bb9f4410e0fe50df7a37a509edddbbc5 at 2017-04-21 18:02:28


Loss function

您好，我似乎没有在您的论文中看到您关于损失函数的设置细节，并且我不加载预训练权重的情况下训练模型，Top-err以及loss的波动相当剧烈，希望可以得到您的一些帮助或是说明。

We follow the popular setting to use CE loss for classification and other losses for Detection and Segmentation.
It's normal that the loss varies in the beginning, you can check the log for comparison.

As there is no more activity, I am closing the issue, don't hesitate to reopen it if necessary.


Fix circle.

Should fix the circle error we've been hitting lately.
I couldn't quite figure out where the error is in sphinx-gallery.

merge when CIs are happy
thx @jaeilepp

See https://github.com/sphinx-gallery/sphinx-gallery/pull/137


Out of data reference

Azure Security Center Standard Tier has been replaced by Azure Defender, please update as appropriate.
Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 50a844c9-6853-d3b4-4b71-a1712e719c93
Version Independent ID: 35924143-a27e-9061-cfb3-3bf585301ab1
Content: Deploy secure applications on Microsoft Azure
Content Source: articles/security/develop/secure-deploy.md
Service: security
Sub-service: security-develop
GitHub Login: @TerryLanfear
Microsoft Alias: terrylan

@DeanGross Thank you for your feedback . We will engage the content team and update the thread.

@DeanGross - Sorry for the slow response. This issue has been fixed. Thank you for your feedback.
#please-close


[infra] Adds reusable workflow for new issue cleanup

related issue: https://github.com/mui/mui-public/issues/193

It simply unifies the cleanup approach we have on all mui repos

Cleanup of what? From the issue description I can't get any idea on what this PR is going to change to our repo and from the linked issue neither. Would it be possible to be a bit more descriptive, or point to a description?

Sry if you did not know what this change is about.
It will technically change nothing only use the reusable workflow from the mui-public repo instead.
The original workflow was there for triaging and formatting the issue body when a new issue got opened. In an effort to centralize and normalize that we moved a few workflows to the mui-public repo and made them reusable, so we have 2 benefits:

whenever we need to change something in those workflows we only have to do it once
we normalize/unify our approach and wording across the public repos

This has been discussed a few times already and also mentioned on the monthly meeting, but I do agree that I could have done a better job at providing a description. Sry about that!
I'll also add the above section to the linked issue.


Jesse: Watch tech2.in

Jesse requests the watch of the watch_keyword tech2\.in. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

tech2\.in has been seen in 1 true positive, 0 false positives, and 0 NAAs.


Resize embeddings, tokenizers - adding new tokens don't work

From Twitter - adding new tokens to Qwen don't work?
# Add special tokens to the tokenizer
num_added_tokens = tokenizer.add_special_tokens({"additional_special_tokens": special_tokens})

# Resize token embeddings of the model
model.resize_token_embeddings(len(tokenizer))

First time here,
I looked, and AFAIK, Qwen uses a different tokenization method (BPE on UTF-8 bytes) and has a specific way of handling unique tokens. Also, Qwen has extra special tokens from <|extra_0|> to <|extra_204|> for custom use.

I just added a new way to add new tokens - see https://github.com/unslothai/unsloth/wiki#adding-new-tokens

I add new tokens and fine tuned but in inferance I get error with torch size. My checkpoint torch.Size([128259, 4096]), my model size torch.Size([128256, 4096]), how to fix this


Exposing Cudnn v5 RNN models (in tensorflow) from within keras

Recently an implementation of accelerated RNNs using cudnn v5 was exposed in tensorflow: https://github.com/tensorflow/tensorflow/tree/master/tensorflow/contrib/cudnn_rnn
If these implementations are faster and good enough for usage, they should be exposed in keras.

Looking at this now. At a first glance it looks a little tricky because part of the cuDNN optimizations need to know exactly how many LSTM layers there are in the model, and Keras' doesn't (you can append LSTM layers to Sequential() as you go).
tf.contrib.cudnn_rnn.CudnnLSTM(num_layers, num_units, input_size)

Does it make any sense to start with an implementation that doesn't use the stacking optimization and just passes num_layers=1 into CudnnLSTM?

No. Stacking at least two RNNs is extremely common and one of the largest performance gains comes from utilizing that. See "Step 3" at https://devblogs.nvidia.com/parallelforall/optimizing-recurrent-neural-networks-cudnn-5/

Right, I saw step 3; but that accounts for a 1.7x improvement, vs the other 6.5x; unless I'm misreading something.

I think you should read the table again. :wink:

So, my understanding of this table:

Optimization
GFLOPS
Speedup

Baseline
349
(1.0x)

Combined GEMMs
724
2.1x

GEMM Streaming
994
2.8x

Fused point-wise operations
1942
5.5x

Matrix pre-transposition
2199
6.3x

Combining Inputs
2290
6.5x

Four layers
3898
11.1x

Is that the speedup column is cummulative, i.e. Doing everything up to "Combining Inputs" gets you a 6.5x speedup compared to baseline. Then doing the 4 layers at a time gets you a 1.7x speedup to an overall 11.1x speedup compared to baseline.

Correct.

It's a 70% increase of the throughput (e.g. 4.6x faster than the baseline with the layer optimizations), no?

Right, combining layers is a 70% increase; I'm not super clear on where you get the 4.6x from though.
I'm just suggesting we might get a good speedup from stacking CudnnLSTMs even if they can't do cross-layer speedups. Maybe it would be best to just benchmark that and see how it goes rather than trying to guess the interactions. Getting it to work on 1 layer is probably step 1 in any progress on the larger goal anyway.
Btw, do you know how representative the baseline is?

I'd prefer to wait on Theano (this week, hopefully) and think a Keras implementation through properly after having seen the mutual aspects of both backends.
How representative? I'd wager NVIDIA's native CUDA baseline is faster than Keras because it doesn't have to go through Python, but who knows?

cudnn speed up isn't related to python or not. Theano and TensorFlow don't
ahve Python code for the execution engine most of the time.
The speed up come from many low level optimization. See the tables. In an
ideal world, Theano/Tensorflow could do all of them automatically, but it
is easier to do them once for a specific/few similar algo. This is what
cudnn RNN did.
On Wed, Sep 7, 2016 at 11:19 AM, Carl Thomé<EMAIL_ADDRESS>wrote:

I'd prefer to wait on Theano (this week, hopefully) and think a Keras
implementation through properly after having seen the mutual aspects of
both backends.
How representative? I'd wager NVIDIA's native CUDA baseline is faster than
Keras because it doesn't have to go through Python, but who knows?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/fchollet/keras/issues/3692#issuecomment-245314924,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AALC-5uMNohUwSNoHdQ09FUNe7njtqi5ks5qntXtgaJpZM4J0z5M
.

It seems impossible to make this 100% compatible with our own LSTM
implementation, so I would suggest adding a new Keras layer instead. In
fact there are several TF ops that I think would benefit from a shallow
Keras wrapping (including these), so we may want to start a
keras.tensorflow module.
When Theano has its own version of it we can consider adding a
cross-backend layer in keras.layer.recurrent.
On 7 September 2016 at 08:49, Frédéric Bastien<EMAIL_ADDRESS>wrote:

cudnn speed up isn't related to python or not. Theano and TensorFlow don't
ahve Python code for the execution engine most of the time.
The speed up come from many low level optimization. See the tables. In an
ideal world, Theano/Tensorflow could do all of them automatically, but it
is easier to do them once for a specific/few similar algo. This is what
cudnn RNN did.
On Wed, Sep 7, 2016 at 11:19 AM, Carl Thomé<EMAIL_ADDRESS>wrote:

I'd prefer to wait on Theano (this week, hopefully) and think a Keras
implementation through properly after having seen the mutual aspects of
both backends.
How representative? I'd wager NVIDIA's native CUDA baseline is faster
than
Keras because it doesn't have to go through Python, but who knows?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/fchollet/keras/issues/3692#issuecomment-245314924,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AALC-
5uMNohUwSNoHdQ09FUNe7njtqi5ks5qntXtgaJpZM4J0z5M>
.

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/fchollet/keras/issues/3692#issuecomment-245325653,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AArWb-M5tkQHbS1-P7Kqu9Bof1nuaj21ks5qnt0agaJpZM4J0z5M
.

Theano has now merged Cudnn v5 bindings
https://github.com/Theano/Theano/pull/4915

@fchollet, I propose adding a StackedLSTM layer that takes number of layers as an additional parameter in order to fully utilize the optimizations. Would such a pr be of interest?

First of all it would be necessary to quantify what there is to gain in
terms of performance.
On 21 October 2016 at 06:23, Carl Thomé<EMAIL_ADDRESS>wrote:

@fchollet https://github.com/fchollet, I propose adding a StackedLSTM
layer that takes number of layers as an additional parameter in order to
fully utilize the optimizations. Would such a pr be of interest?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/fchollet/keras/issues/3692#issuecomment-255375348,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AArWb9enT62EIEKU4UhIWvc2w7kWj9mYks5q2LzJgaJpZM4J0z5M
.

some benchmark on the Theano side with and without cudnn rnn:
https://github.com/MaximumEntropy/cudnn_rnn_theano_
benchmarks/blob/master/README.md
The answer, yes, there is speed up by using it.
On Tue, Oct 25, 2016 at 2:23 PM, François Chollet<EMAIL_ADDRESS>wrote:

First of all it would be necessary to quantify what there is to gain in
terms of performance.
On 21 October 2016 at 06:23, Carl Thomé<EMAIL_ADDRESS>wrote:

@fchollet https://github.com/fchollet, I propose adding a StackedLSTM
layer that takes number of layers as an additional parameter in order to
fully utilize the optimizations. Would such a pr be of interest?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/fchollet/keras/issues/3692#issuecomment-255375348,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/
AArWb9enT62EIEKU4UhIWvc2w7kWj9mYks5q2LzJgaJpZM4J0z5M>
.

—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/fchollet/keras/issues/3692#issuecomment-256124096,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AALC-3qrMJN0YBGafrmmukvmw94pL97oks5q3kkugaJpZM4J0z5M
.


Allow #[stream] on async blocks, and remove *stream_block! macros

[x] Allow #[stream] on async blocks (not breaking change); done in #44
[ ] Remove *stream_block! macros in favor of #[stream] on async blocks (breaking change)

fn foo() -> impl Stream<Item = i32> {
    #[stream]
    async move {
        for i in 0..10 {
            yield i;
        }
    }
}

Given that rustfmt doesn't format #[stream] async {} on let so nicely, I'm wondering if removing stream_block is good...
https://github.com/taiki-e/futures-async-stream/blob/ff2916fc7d7db35de99b7989622cbd0f155f2374/tests/stream.rs#L99-L105
(That said, this is the normal format when using attributes on the expr of let. Also, it can be avoided by wrapping it in a block.)

Also, fn-like proc-macro at the expression position will be stable (https://github.com/rust-lang/rust/pull/68717).
So I'm going to release 0.2 without removing *_block! macros -- but I would like to consider doing that in the future.

Closing in favor of #57


Index unification blocked, but should it?

open data infix < Nat Nat
| zero, suc m => zc
| suc n, suc m => sc (n < m)

variable a b c : Nat

def trans< (a < b) (b < c) : a < c
| zc, zc => {??}
| p1, p2 => {??}

The code was wrong


Pattern/Application Configuration form separated out

Signed-off-by: Zain-Muiz<EMAIL_ADDRESS>Description
Configuration form separated out and reused across Patterns and Applications.
This PR fixes #4137
Signed commits

[x] Yes, I signed my commits.

Codecov Report

Merging #4447 (be08fff) into master (1eaca27) will decrease coverage by 7.69%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #4447      +/-   ##
==========================================
- Coverage   31.87%   24.17%   -7.70%
==========================================
  Files          59       59
  Lines        5067     5067
==========================================
- Hits         1615     1225     -390
- Misses       2990     3502     +512
+ Partials      462      340     -122

Flag
Coverage Δ

gointegrationtests
?

unittests
24.17% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

mesheryctl/internal/cli/root/system/status.go
0.00% <0.00%> (-62.83%)
:arrow_down:

mesheryctl/internal/cli/root/system/start.go
0.99% <0.00%> (-53.98%)
:arrow_down:

mesheryctl/internal/cli/root/system/restart.go
2.50% <0.00%> (-47.50%)
:arrow_down:

mesheryctl/internal/cli/root/system/stop.go
0.85% <0.00%> (-36.76%)
:arrow_down:

mesheryctl/internal/cli/root/system/update.go
1.05% <0.00%> (-34.74%)
:arrow_down:

mesheryctl/internal/cli/root/system/check.go
1.39% <0.00%> (-22.38%)
:arrow_down:

mesheryctl/internal/cli/root/system/logs.go
3.29% <0.00%> (-20.88%)
:arrow_down:

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 af60d92...be08fff. Read the comment docs.

@Zain-Muiz Could you check these merge conflicts?

I don't think @Zain-Muiz  is available. @Abhishek-kumar09 , can you see to it that this pr gets merged ?

@Abhishek-kumar09 is this PR still valid?

Hi @Zain-Muiz, Thanks a lot for opening a PR. Your efforts count. I am closing this PR. Since we had some major changes in the  codebase. By the way, Please let me know if you want to assist anywhere on some other components.


Can't use a drawer anchored to the right with DrawerLayout

Describe the bug
If you try to use a drawer with anchor={'right'} (or anything other than left), the automatic padding of the DrawerLayout doesn't work correctly. It always applies the padding to the left of the content.
What is the expected behavior?
Drawer Layout should be able to apply the padding conditionally depending on which side the drawer is anchored to.
Anything else to add?
This was discovered when trying to implement the icon drawer on doc-it. I suspect it will occur anywhere that we have an application using side navigation and then want to have a details panel of some sort that opens on the right.

The primary use case for the PXB Drawer is for navigation, so it's not really recommended to use it in this scenario for a "details sidebar"....the recommended approach in that case would be to use a MUI Drawer instead for the details sidebar. Closing this because we would not recommend doing navigation drawers on the right side of a LTR application (or vice versa).


[elb_deployment_notification_hooks] Additional fixes for ELB deployment hooks

Changed the name of the matched deployment group from Webservers to RailsAppServers,
so that rollouts go to both Webservers and Background Job workers.
Fixed some missing whitespace in bash commands that were causing syntax issues
Fixed some problems with quoting in the imported AWS bash files that were
being parsed by Ruby

Also:

Added support for rolling out to a dev environment for testing
Fixed a buglet where if the New Relic environment variable was not supplied,
an error was displayed. This brings things in line with the Slack notifications.
Added support for the dev environment

Please note that:

https://github.com/unboxed/e-petitions-deploy/pull/7 and this PR need to be merged in Tandem
The stack probably needs to be updated after this set of changes
Given the rename of the deployment group, you will need to follow the original steps in the deployment README to change the CodeDeploy setup - to add the two Auto Scaling groups and to change the name.

This should fix the error 500s that happen during a code-deploy

LGTM - I guess we need to wait for new stacks with workers before merging this?

I've merged this into a local branch and will push up once I've rebuilt the preview stack