perlPackages.X11XCB no longer builds. Holds back nixos-unstable.

Fails on d140dee39a7f3b4909319bb4447b6ddb7892364d for instance:
$ nix-build '<nixpkgs>' -A perlPackages.X11XCB
…
In file included from /nix/store/d13sw23db0sp2pgnxvc8v12nrj33b7d5-libxcb-1.12-dev/include/xcb/xcb.h:193:0,
                 from XCB.xs:4:
/nix/store/d13sw23db0sp2pgnxvc8v12nrj33b7d5-libxcb-1.12-dev/include/xcb/xproto.h:11887:1: note: declared here
 xcb_change_keyboard_control (xcb_connection_t *c,
 ^
Makefile:397: recipe for target 'XCB.o' failed
make: *** [XCB.o] Error 1
builder for ‘/nix/store/hxnk52xa2ldjsfd3qblm8cjy48cbl60x-perl-X11-XCB-0.14.drv’ failed with exit code 2
error: build of ‘/nix/store/hxnk52xa2ldjsfd3qblm8cjy48cbl60x-perl-X11-XCB-0.14.drv’ failed

Test failing:
$ nix-build '<nixos/release.nix>' -A tests.i3wm.x86_64-linux

Upgrading perlPackages.X11XCB to 0.15 does not fix it:
diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index db1405f..00d0cc9 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -13981,10 +13981,10 @@ let self = _self // overrides; _self = with self; {
   };

   X11XCB = buildPerlPackage rec {
-    name = "X11-XCB-0.14";
+    name = "X11-XCB-0.15";
     src = fetchurl {
       url = "mirror://cpan/authors/id/M/MS/MSTPLBG/${name}.tar.gz";
-      sha256 = "11ff0a4nqbdj68mxdvyqdqvi573ha10vy67wpi7mklpxvlm011bn";
+      sha256 = "10fflr91bl2hi3maa0qirdf0ahqpdkn6j89waj6y0qcad53i0lm5";
     };
     AUTOMATED_TESTING = false;
     buildInputs = [

Reverting upgardes to libxcb (part of @vcunat's 69ed132f8271dab19fed38b1c8b118b4eec39d22) does fix:
diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix
index 16fa242..95085be 100644
--- a/pkgs/servers/x11/xorg/default.nix
+++ b/pkgs/servers/x11/xorg/default.nix
@@ -1041,11 +1041,11 @@ let
   }) // {inherit ;};

   libxcb = (mkDerivation "libxcb" {
-    name = "libxcb-1.12";
+    name = "libxcb-1.11.1";
     builder = ./builder.sh;
     src = fetchurl {
-      url = http://xcb.freedesktop.org/dist/libxcb-1.12.tar.bz2;
-      sha256 = "0nvv0la91cf8p5qqlb3r5xnmg1jn2wphn4fb5jfbr6byqsvv3psa";
+      url = http://xcb.freedesktop.org/dist/libxcb-1.11.1.tar.bz2;
+      sha256 = "0c4xyvdyx5adh8dzyhnrmvwwz24gri4z1czxmxqm63i0gmngs85p";
     };
     buildInputs = [pkgconfig libxslt libpthreadstubs python libXau xcbproto libXdmcp ];
     meta.platforms = stdenv.lib.platforms.unix;
@@ -1327,11 +1327,11 @@ let
   }) // {inherit ;};

   xcbproto = (mkDerivation "xcbproto" {
-    name = "xcb-proto-1.12";
+    name = "xcb-proto-1.11";
     builder = ./builder.sh;
     src = fetchurl {
-      url = http://xcb.freedesktop.org/dist/xcb-proto-1.12.tar.bz2;
-      sha256 = "01j91946q8f34l1mbvmmgvyc393sm28ym4lxlacpiav4qsjan8jr";
+      url = http://xcb.freedesktop.org/dist/xcb-proto-1.11.tar.bz2;
+      sha256 = "0bp3f53l9fy5x3mn1rkj1g81aiyzl90wacwvqdgy831aa3kfxb5l";
     };
     buildInputs = [pkgconfig python ];
     meta.platforms = stdenv.lib.platforms.unix;
@@ -1349,11 +1349,11 @@ let
   }) // {inherit gperf m4 libxcb xproto ;};

   xcbutilcursor = (mkDerivation "xcbutilcursor" {
-    name = "xcb-util-cursor-0.1.3";
+    name = "xcb-util-cursor-0.1.2";
     builder = ./builder.sh;
     src = fetchurl {
-      url = http://xcb.freedesktop.org/dist/xcb-util-cursor-0.1.3.tar.bz2;
-      sha256 = "0krr4rcw6r42cncinzvzzdqnmxk3nrgpnadyg2h8k9x10q3hm885";
+      url = http://xcb.freedesktop.org/dist/xcb-util-cursor-0.1.2.tar.bz2;
+      sha256 = "0fpv46zb7kz04qxwvpax4cpd2kd8yhsm2n0if1isniqdh5xkcrgd";
     };
     buildInputs = [pkgconfig gperf m4 libxcb xcbutilimage xcbutilrenderutil xproto ];
     meta.platforms = stdenv.lib.platforms.unix;
diff --git a/pkgs/servers/x11/xorg/extra.list b/pkgs/servers/x11/xorg/extra.list
index 56a7b1f..fc3068b 100644
--- a/pkgs/servers/x11/xorg/extra.list
+++ b/pkgs/servers/x11/xorg/extra.list
@@ -1,8 +1,8 @@
 http://xcb.freedesktop.org/dist/libpthread-stubs-0.3.tar.bz2
-http://xcb.freedesktop.org/dist/libxcb-1.12.tar.bz2
-http://xcb.freedesktop.org/dist/xcb-proto-1.12.tar.bz2
+http://xcb.freedesktop.org/dist/libxcb-1.11.1.tar.bz2
+http://xcb.freedesktop.org/dist/xcb-proto-1.11.tar.bz2
 http://xcb.freedesktop.org/dist/xcb-util-0.4.0.tar.bz2
-http://xcb.freedesktop.org/dist/xcb-util-cursor-0.1.3.tar.bz2
+http://xcb.freedesktop.org/dist/xcb-util-cursor-0.1.2.tar.bz2
 http://xcb.freedesktop.org/dist/xcb-util-image-0.4.0.tar.bz2
 http://xcb.freedesktop.org/dist/xcb-util-keysyms-0.4.0.tar.bz2
 http://xcb.freedesktop.org/dist/xcb-util-renderutil-0.3.9.tar.bz2

I had tried to fix it by upgrading. The perl package apparently uses non-public functions. I had filed a bug on CPAN, though I don't know if that was a good place: https://rt.cpan.org/Public/Bug/Display.html?id=114732 In nixpkgs the only dependant is i3. We might resurrect old libxcb and keep a copy, I suppose.

/cc @garbas, @modulistic: perhaps it's possible this perl package isn't too important for i3?

BTW, this isn't the only problem blocking the unstable* channels from security update – container tests are also broken and there I have no clue about cause or solution.

i'll take a look at the morning ... might be that this perl package is not needed anymore.

@garbas: the maintainer committed a fix; see discussion at https://github.com/stapelberg/X11-XCB/issues/1

X11::XCB 0.16 was just released with a fix.

I tested also i3 builds again.

tnx!


Fix some providers for bg_BG and add Address Provider.

Some of the Last names were offensive.
There were a lot of old, too uncommon or just plain bad first names.
Edited the last names with a list from Wikipedia and left the most common first names.
Not all generated phone numbers were valid based on the libphonenumber validation.
Added Address Provider for bg_BG.

@fzaninotto I am using the local fork waiting for this to be merge. Could you please review the PR?


Exception when setting sa_url.query default due to immutable type

Expected Behavior
The below should be successful
sa_url.query.setdefault("charset", "utf8")

Actual Behavior
The following exception is thrown:  AttributeError: 'sqlalchemy.cimmutabledict.immutabledict' object has no attribute 'setdefault'
You can see the full traceback on Travis here: https://travis-ci.org/github/cairis-platform/cairis/builds/741329319
This is only an issue with SQLAlchemy 1.4.0b1.
Environment

Python version: 3.8
Flask-SQLAlchemy version: 2.4.4
SQLAlchemy version: 1.4.0b1

That's SQLAlchemy, Flask-SQLAlchemy has no effect on that. I believe making the url object immutable was a deliberate change.

If SQLAlchemy has made the decision to make that object immutable, why is Flask-SQLAlchemy treating it like it isn't?


Add new DiffDrive_C PTG capability to selfdriving

Libselfdriving so far had only the HolonomicBlend PTG mainly for Holonomic Robots, but when applied to differential drive robots this PTG cannot be used.
Hence adding the new differential drive ptg

@SRai22 I'm merging, since I think there's something that needs to be fixed in the mrpt-nav "C" PTG related to timing and time steps, so after all it makes sense to have a more updated PTG here in this repo.


chore(ci): integrate the single node benchmarking process

I hereby agree to the terms of the Singularity Data, Inc. Contributor License Agreement.
What's changed and what's your intention?
As the title.
Checklist

[x] I have written necessary rustdoc comments
[x] I have added necessary unit tests and integration tests
[x] All checks passed in ./risedev check (or alias, ./risedev c)

Please use mergify/can-merge tag next time. We should use mergify's merge queue to merge PRs in this repo.


Improve Telegram error handling

When the bot fail placing an order, the final message do not includes information about the order. For example:

In this case, we can include information about the trading pair, order size, and order type.

I wanted to resolve this issue however the entire logic is a little bit complicated to me:
At this moment I created function:
func (c *Controller) notifyBuyError(pair string, amount float64, side model.SideType, err error) {
	errMessage := fmt.Errorf("Pair: %s, Amount: %v, Type: %s\n-----\n%s", pair, amount, side, err)
	log.Error(errMessage)
	if c.notifier != nil {
		c.notifier.OnError(errMessage)
	}
}

And used it inside func (c *Controller) CreateOrderMarketQuote(side model.SideType, pair string, amount float64) (model.Order, error)
However I'm not sure if it's the best/cleanest way.


[Typings] Add this.$router.options

There is a time when a user wants to access metadata that was defined in router.ts (example). I notice that in the typedef options is missing.

This is why the pull request is not merged https://github.com/vuejs/vue-router/issues/2051

Would be real neat, instead of declaring all routes in its own variable and forced to export it.

We will ad a get Routes methods instead o align with the dynamic routing api in v4


added ngDragCancel attribute to prevent dragging

There's a useful option in JQuery that prevent dragging for specified child elements. I ran into the situation when dropdown menu of one drag&drop element overlap another drag&drop element. After clicking on menu item instead of just calling menu callback ondrop callback was called also.

found ng-cancel-drag directive


Extra Symtabs leads to conflicting proof harnesses

I tried this code: cargo-kani/vecdeque-cve/
using the following command line invocation:
./scripts/kani-regressions.sh
with Kani version: git clone --branch 1478-bug-replication https://github.com/YoshikiTakashima/kani.git
I expected to see this happen: This test case to pass.
Instead, this happened: The test case fails b/c spurious warnings
differ from expected output.
It seems he cause appears to be that passing extra symtabs in
kani-driver/src/call_cargo.rs. If that is removed, then the warnings go away.

@YoshikiTakashima How did you conclude that the failure is due to the warnings? Looking at the CI failure here: https://github.com/YoshikiTakashima/kani/runs/7737696525
I see the following errors printed at the bottom:
Error: Conflicting proof harnesses named abstract_remove_maintains_invariant:
2022-08-09T01:54:13.8255351Z  abstract_vecdeque::verification::abstract_remove_maintains_invariant
2022-08-09T01:54:13.8255705Z  abstract_vecdeque::verification::abstract_remove_maintains_invariant
2022-08-09T01:54:13.8255898Z

@celinval I think you're right. That's the actual cause.

More evidence for duplication: It seems proptests are actually running twice:
Checking harness sum_lower_than_2020...
Report written to: target/report-sum_lower_than_2020/html/index.html
Checking harness arbitrary_boolean::arbitrary_boolean...
Report written to: target/report-arbitrary_boolean-arbitrary_boolean/html/index.html
Checking harness proptest_library_is_linked::successfully_linked_proptest...
Report written to: target/report-proptest_library_is_linked-successfully_linked_proptest/html/index.html
Checking harness sum_lower_than_2020...
Report written to: target/report-sum_lower_than_2020/html/index.html
Checking harness arbitrary_boolean::arbitrary_boolean...
Report written to: target/report-arbitrary_boolean-arbitrary_boolean/html/index.html
Checking harness proptest_library_is_linked::successfully_linked_proptest...
Report written to: target/report-proptest_library_is_linked-successfully_linked_proptest/html/index.html

Due to changes in the way we integrate proptest, this issue is no longer blocking.
See the closing comment in #1435

This is a blocker for re-enabling the build cache.


Deterministic SQL editor list (dBeaver community edition 23.3.5)

The SQL editor list doesn't appear to be deterministic.  Everytime I reopen dBeaver the order of the list changes.  This is very frustrating, especially when I have thirty or more SQL editor tabs open.
Is there any way that this list can be backed by a deterministic collection object so that the order of the items in this list remains constant?
thanks.

Thank you for the idea.


accidentally clicking on outside of modals in CRUD results in data loss.

accidentally clicking on outside of modals in CRUD results in closing of modal with data loss.
we can prevent this with a confirmation from user to close the modal / being able to disable the behavior of dismissing when clicking away from it.
@babakhani what do you think?

@ParsaGachkar I'll add a static property to prevent unwanted closing


Uninstall cleanup

https://developer.chrome.com/extensions/runtime#method-setUninstallURL
I'll implement a server side page to delete isonline users, preventing any issues with "last online 3 months ago"
To consider: How can we tell between a user being genuinely deleted and a bot just spamming that URL to delete every account?

Can't you add the key to the URL?

it's a function after all.. not a constant

Yep, that works
I'll get working on it at some point in the future

Uninstall page will be isonline/api/v1/[username]/[key]/delete

but what is going to happen if their scratch account is delted, not just isonline

Then nobody will be able to access their profile so it shouldn't be an issue (and worse case scenario they just show as offline)
Having unused accounts on the server isn't a big issue (as long as used accounts outnumber the unused ones) This is more about stopping someone being displayed as offline, when they are online but have simply uninstalled isonline

How about if you have been offline for 6 months, you have to re-key? that would help free up some server space no?

Server space is not an issue

Uninstall page is now available:
https://scratchtools.tk/isonline/uninstall/?user=[username]&key=[apikey]
Just needs implementing into extension now

Implemented


Compile to ECMAScript

I am using the layerswitcher in an Angular SPA and it would be great if you could bump the code from CommonJS to ECMAScript.
Thank you.

Hi, are you referring to being able to import using ES Module syntax? If so that already possible, see https://github.com/walkermatt/ol-layerswitcher-examples/blob/master/parcel/main.js#L11

I am using the package in an Angular 13 App. At build time I got a warning that I am using a CommonJS library that can impact my bundle size. Maybe you can look at the documentation from Angular see:
https://angular.io/guide/build#configuring-commonjs-dependencies


Use current USER/HOST in the script

Ouch, I found this is almost the same as https://github.com/Hyperfoil/qDup/pull/122 - closing in favor of that.


Writing Plugin that hooks into MarkdownIt().parse(markdown)

First, thank you for building such an excellent library. Markdown-it has helped in so many wonderful ways with parsing markdown. My question is regarding markdown-it's parse function. I have used markdown-it-container plugin which helps tremendously with rendering custom html when using
var md = require('markdown-it')()
            .use(require('markdown-it-container'), name [, options]);
md.render(markdown);

and being able to hook into the validate and render methods. But my recent requirement has been to hook into the parse function. We would like to be able to write a custom plugin that updates properties in the AST. Do you have guidance for writing a function similar to container_plugin that expose hooks like render. But for the parse function? It looks like I can still use the container_plugin to add to types to the AST, but is it possible to edit the Object properties like content and attrs?
The code we are using does not use the render method, but instead uses parse.
const md = new MarkdownIt()
             .use(require('markdown-it-container'), 'image', options);
const tokenStream = md.parse(markdown,{});

I've looked online, but I only found 1 issue about plugins for the parse function here.

I don't understand your question:

If you need to override .parse() - that's basic JS programming, not specific for this package.
If you need to modify data,  "after" .parse() - you could sit on core chain.

Could you clarify what are you asking about?

My question is regarding updating the AST properties like content and attrs. From my experience, I havent been able to update those properties using the container plugin. But I will try overriding parse, or modify the data after parse using core. Thank you for the advice.


Socket: Expect Response

AFAIK this isn't possible, but I'd like to be able to expect a response from a socket when querying, be it the response contains or excludes a value.
The use case for this in my case is the zookeeper 4 letter commands here where you can check to see the hosts configuration.
The example would be similar to echo stat | nc localhost 2185 | grep $match and either passing or failing dependent upon the output.
I'll give something a shot wrapping nc as that seems the easiest if you'd take the PR?

You can do it with:
def test_zk4(host):
    output = host.check_output('echo stat | nc localhost 2185')
    # make assertions on output content
    assert 'XXX' in output

@philpep Amazing thanks.


Parameters getting nilled out after parse_input

I have some specs in my app that test out certain actions with rails admin. Some are failing, specifically editing specs, because some parameters are unset after fields.each { |field| field.parse_input(target_params) } in MainController, this happens because they fall into the default parse_input in lib/rails_admin/config/fields/base.rb which is blank and is supposed to be overriden. Any thoughts on this?

Yes #parse_input mutates params, that's all.


lorri watch crashes

lorri watch occasionally crashes for me:
$ lorri watch
Started
thread '<unnamed>' panicked at 'called `Result::unwrap()` on an `Err` value: Unrecoverable(Notify(Io(Os { code: 2, kind: NotFound, message: "No such file or directory" })))', src/libcore/result.rs:999:5
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace.
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Any', src/libcore/result.rs:999:5

$ RUST_BACKTRACE=1 lorri watch
Started
Completed(
    BuildResults {
        output_paths: OutputPaths {
            shell_gc_root: RootPath(
                "/Users/bas/Library/Caches/com.github.target.lorri.lorri.lorri/gc_roots/f4ad3016112d2f0dbb0438cf8ba2cf6f/gc_root/shell_gc_root",
            ),
        },
    },
)
Started
thread '<unnamed>' panicked at 'got more or less than one build product from logged_evaluation.nix: []', src/builder.rs:89:5
stack backtrace:
   0: std::sys_common::backtrace::print
   1: std::panicking::default_hook::{{closure}}
   2: std::panicking::default_hook
   3: std::panicking::rust_panic_with_hook
   4: std::panicking::continue_panic_fmt
   5: std::panicking::begin_panic_fmt
   6: lorri::builder::run
   7: lorri::build_loop::BuildLoop::once
   8: lorri::build_loop::BuildLoop::forever
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Any', src/libcore/result.rs:999:5
stack backtrace:
   0: std::sys_common::backtrace::print
   1: std::panicking::default_hook::{{closure}}
   2: std::panicking::default_hook
   3: std::panicking::rust_panic_with_hook
   4: std::panicking::continue_panic_fmt
   5: rust_begin_unwind
   6: core::panicking::panic_fmt
   7: core::result::unwrap_failed
   8: lorri::ops::watch::main
   9: lorri::main
  10: std::rt::lang_start::{{closure}}
  11: std::panicking::try::do_call
  12: __rust_maybe_catch_panic
  13: std::rt::lang_start_internal
  14: main

I can't share my shell.nix since it's proprietary. I'll try to minimize it.

@basvandijk while this definitely shouldn't be happening - is there a reason that you are using lorri watch instead of the now preferred lorri daemon ?

Hey Tobias! I was following the tutorial which still seems to recommend lorri watch. For actual use I think lorri daemon is indeed the better choice.

Did you install lorri by running
$ git clone -b rolling-release https://github.com/target/lorri.git
$ cd lorri
$ nix-env -if .

as described in the README?
Or did you use the default.nix in the checkout of the lorri master branch?

@Profpatsch I'm facing the same issue while using lorri daemon and installed lorri using the method you described. Do you need more information?

@mbrgm Can you try on current master? The PR we merged should have solved a bunch of problems.

@Profpatsch Sorry for the delay, could not manage to test it until now. It is working now when I'm running lorri daemon from the shell. But from a systemd user service, I was getting the following backtrace:
Started
thread '<unnamed>' panicked at 'Unrecoverable error!
Build(
    Instantiate(
        Os {
            code: 2,
            kind: NotFound,
            message: "No such file or directory"
        }
    )
)', src/build_loop.rs:84:56
stack backtrace:
   0:     0x560c8341dc1f - std::sys::unix::backtrace::tracing::imp::unwind_backtrace::hfad0220813d5e5c3
   1:     0x560c8342e657 - std::sys_common::backtrace::print::h16017ddc8b354e39
   2:     0x560c834214c3 - std::panicking::default_hook::{{closure}}::h8b06d3b8a7138cc5
   3:     0x560c83421243 - std::panicking::default_hook::h8cac4830452b35df
   4:     0x560c83421bbf - std::panicking::rust_panic_with_hook::hd32c26e1600a179b
   5:     0x560c83421751 - std::panicking::continue_panic_fmt::h24b78f7279f44cef
   6:     0x560c8342169e - std::panicking::begin_panic_fmt::h98672d172280200e
   7:     0x560c832a6566 - lorri::build_loop::BuildLoop::forever::h107a54d9d12e731b
   8:     0x560c832a8d73 - std::sys_common::backtrace::__rust_begin_short_backtrace::h6de3911e47385787
   9:     0x560c832b79d8 - std::panicking::try::do_call::ha622cd5ff1ae34b0
  10:     0x560c83439499 - __rust_maybe_catch_panic
  11:     0x560c832b1a92 - <F as alloc::boxed::FnBox<A>>::call_box::hed14b3946e261b17
  12:     0x560c8341c9ed - std::sys_common::thread::start_thread::h09a6bf95952964d1
  13:     0x560c834278e5 - std::sys::unix::thread::Thread::new::thread_start::h165ad4e27a9c9315
  14:     0x7fc0a1348ef6 - start_thread
  15:     0x7fc0a106822e - __GI___clone
  16:                0x0 - <unknown>

I ran strace on the process and found the following
3966520 execve("/usr/local/bin/nix-instantiate", ["nix-instantiate", "-vv", "--add-root", "/tmp/.tmpbtAkMM/result", "--indirect", "--argstr", "runTimeClosure", "/nix/store/1manqjxzqpriw9hq5lfql"..., "--argstr", "src", "/home/myuser/repos/myproject"..., "--", "/home/myuser/.cache/lorri/cas/4a"...], 0x56085ccd1990 /* 19 vars */) = -1 ENOENT (No such file or directory)
3966520 execve("/usr/bin/nix-instantiate", ["nix-instantiate", "-vv", "--add-root", "/tmp/.tmpbtAkMM/result", "--indirect", "--argstr", "runTimeClosure", "/nix/store/1manqjxzqpriw9hq5lfql"..., "--argstr", "src", "/home/myuser/repos/myproject"..., "--", "/home/myuser/.cache/lorri/cas/4a"...], 0x56085ccd1990 /* 19 vars */) = -1 ENOENT (No such file or directory)

So it appears that lorri cannot find nix-instantiate. After adding the nix default profile bin directory as well as a proper NIX_PATH to the systemd unit's environment, it finally worked as expected:
[Unit]
ConditionUser=!@system
Description=Lorri Build Daemon
After=lorri.socket
Wants=lorri.socket

[Service]
ExecStart=%h/.nix-profile/bin/lorri daemon
PrivateTmp=true
ProtectSystem=strict
Restart=on-failure
WorkingDirectory=%h
Environment=PATH=/nix/var/nix/profiles/default/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
Environment=NIX_PATH=nixpkgs=%h/repos/nixpkgs

Hope this information helps. Thank you for fixing the other issue!

Hope this information helps. Thank you for fixing the other issue!

Thank you for the detailed report!
Unfortunately, the std::io::ErrorKind::NotFound message always lacks the filename unless the programmer manually matches and adds it, which I’ve done in: https://github.com/target/lorri/pull/174


Adding duplicate comment when deleting a preview

First off, thank you for this! Getting deployment previews on OSS repos is super helpful!

Describe the bug
The action adds a comment when deleting a preview.
To Reproduce
name: PR preview cleanup

on:
  pull_request:
    types: [closed]

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - id: setenv
        run: echo "::set-output name=BRANCH_NAME::$(echo ${GITHUB_HEAD_REF})"
      - uses: yinlinchen/amplify-preview-actions@master
        with:
          branch_name: ${{ steps.setenv.outputs.BRANCH_NAME }}
          amplify_command: delete
        env:
          AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
          AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
          AmplifyAppId: d1gko6en628vir
          AWS_REGION: us-east-1

Expected behavior
The preview is deleted, no comment is created.
Screenshots
Duplicate comment (the 2nd is result of deletion of a preview):

Desktop (please complete the following information):

OS: macOS

Additional context

@stephenmathieson thanks for reporting this. I didn't see this issue happened in our project. It is our setting for your reference: https://github.com/VTUL/dlp-access/blob/dev/.github/workflows/merge.yml


Get quickstart to download straight from HuggingFace

Quickstart assumes data is locally downloaded, which may not be ideal for some users.

Good call.
I've never used it but have heard good things about https://pypi.org/project/pooch/ for this use case.


[bug] Sideloadly can't install apps sideloaded with cyan/pyzule

have you searched the existing issues?

[X] this is a unique issue. i agree that if this isn't a unique issue, i'll be BLOCKED from the cyan repo

describe the bug.

Here's the screenshot of the error I get when trying to install apps with Sideloadly. This error has popped up recently, cuz last week I was able to install apps normally. Thanks
Edit: Btw I injected a couple of tweaks into the app and used these flags -uwg

and it works with the raw decrypted ipa?


Assertion m_iter' failed

I get the following error when trying to diff between two files with osmium-tool
osmium diff result_2019-04-01.osm.pbf result_2019-04-25.osm.pbf -f opl -c
osmium: /var/install/libosmium/include/osmium/io/input_iterator.hpp:124: osmium::io::InputIterator<TSource, TItem>::value_type& osmium::io::InputIterator<TSource, TItem>::operator*() const [with TSource = osmium::io::Reader; TItem = osmium::OSMObject; osmium::io::InputIterator<TSource, TItem>::reference = osmium::OSMObject&; osmium::io::InputIterator<TSource, TItem>::value_type = osmium::OSMObject]: Assertion m_iter' failed.

Any idea why ?
the two OSM pbf files have been created with osmium tags-filter + osmium time-filter
osmium version 1.7.1
libosmium version 2.13.1

That's definitely a bug somewhere. Can you give me the two files? Without them there isn't enough information for me to track this down.

I've uploaded the two files here:

https://transfer.sh/zITd2/result_2019-04-01.osm.pbf
https://transfer.sh/CaaoM/result_2019-04-25.osm.pbf

They have been produced from an osh.pbf file from Geofabrik with the following process:

osmium tags-filter ile-de-france-internal.osh.pbf 'ref:FR:STIF'  -o out.osh.pbf
osmium getid --id-osm-file out.osh.pbf --with-history ile-de-france-internal.osh.pbf -o filtered.osh.pbf
osmium time-filter filtered.osh.pbf 2019-04-01T00:00:00Z -o result_2019-04-01.osm.pbf
osmium time-filter filtered.osh.pbf 2019-04-25T00:00:00Z -o result_2019-04-25.osm.pbf
osmium diff result_2019-04-01.osm.pbf result_2019-04-25.osm.pbf -f debug,color -c >> this one crashes

I just tested this with current osmium (1.10.0) and libosmium (2.15.1) and can not reproduce this. So I  guess this got fixed somewhere along the way. Please try with a current version.

just documenting:   ..  in my setup:   it is working ..  no crash..
tested with

with your 2 results_2019_* files

$ osmium diff result_2019-04-01.osm.pbf result_2019-04-25.osm.pbf -f debug,color -c | wc -l
324010

with the current  ile-de-france-internal.osh.pbf

$ osmium diff result_2019-04-01.osm.pbf result_2019-04-25.osm.pbf -f debug,color -c | wc -l
309665
$ md5sum ile-de-france-internal.osh.pbf
5000046f7a11e9e5ac47c9e3e362791c  ile-de-france-internal.osh.pbf

my environment:
$ osmium version
osmium version 1.10.0 (v1.10.0-42-g7341b94)
libosmium version 2.15.1
$ lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 19.04
Release:	19.04
Codename:	disco

just documenting:

problem replicated on ubuntu:18.04 - with  osmium-tool package ( osmium version 1.7.1 libosmium version 2.13.1 )
working:  ubuntu:18.10  ( osmium version 1.9.1   libosmium version 2.14.2 )
working:  ubuntu:19.04 ( osmium version 1.10.0 libosmium version 2.15.0 )

docker run -it --rm ubuntu:18.04 bash
apt-get update && apt-get install -y wget osmium-tool
wget https://transfer.sh/zITd2/result_2019-04-01.osm.pbf
wget https://transfer.sh/CaaoM/result_2019-04-25.osm.pbf
osmium version
osmium diff result_2019-04-01.osm.pbf result_2019-04-25.osm.pbf -f debug,color -c

root@0dac3daefbca:/# osmium version
osmium version 1.7.1
libosmium version 2.13.1
Copyright (C) 2013-2017  Jochen Topf<EMAIL_ADDRESS>License: GNU GENERAL PUBLIC LICENSE Version 3 <https://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
root@0dac3daefbca:/# osmium diff result_2019-04-01.osm.pbf result_2019-04-25.osm.pbf -f debug,color -c
osmium: /usr/include/osmium/io/input_iterator.hpp:124: osmium::io::InputIterator<TSource, TItem>::value_type& osmium::io::InputIterator<TSource, TItem>::operator*() const [with TSource = osmium::io::Reader; TItem = osmium::OSMObject; osmium::io::InputIterator<TSource, TItem>::reference = osmium::OSMObject&; osmium::io::InputIterator<TSource, TItem>::value_type = osmium::OSMObject]: Assertion `m_iter' failed.
Aborted (core dumped)
root@0dac3daefbca:/#

the diff is ok with the version packaged with ubuntu 19.04, but I can't make any tags-filter with that version, I get another assertion failed :(
docker run -it -w /wkd -v $(pwd)/wkd:/wkd osmium_1904 osmium --version
libosmium version 2.15.0
Copyright (C) 2013-2018  Jochen Topf<EMAIL_ADDRESS>License: GNU GENERAL PUBLIC LICENSE Version 3 <https://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

docker run -it -w /wkd -v $(pwd)/wkd:/wkd osmium_1904 osmium tags-filter data.osh.pbf highway=bus_stop -o out.osh.pbf
osmium: /usr/include/osmium/osm/node_ref_list.hpp:152: bool osmium::NodeRefList::is_closed() const: Assertion `!empty()' failed.

Please open new issues for new problems.
I can't reproduce this until I know what data.osh.pbf is.
From your use of a .osh.pbf file I can only assume that this is a history file. Quoting the tags-filter man page: "The command will only work correctly on history files if the --omit-referenced/-R option is used."  An assertion failure is still a bug that should be found and fixed, but your command line will not work even of we do.


Fix UnicodeEncodeError during csv file writing

For some reasons (maybe because I have a fr_FR.UTF-8 install) I was not able to
run this plugin without running into this error:
Traceback (most recent call last):
  File "com_github_bennymeg_JLC-Plugin-for-KiCad/thread.py", line 183, in run
    csv_writer.writerow(component.values())
UnicodeEncodeError: 'ascii' codec can't encode character '\xb5' in position 13: ordinal not in range(128)

A small fix is to open the file with UTF-8 encoding ; which solves this issue.
I added the same encoding fix to all 3 text files creation just to guard against
this issue coming in the future.

Thank you for the commit.
I have refactored the code immensely so your changes would not be able to merge
I will add them manually.


Add test to verify no MQTT messages are lost (when using response topics)

In the following test, a broker client sends 1000 messages which are expected to be received by a second client, which in turn replies to every message with new ones (thus being labeled "server"). It fails every time – the broker just seems to get stuck and stop sending messages at a given moment.
In case it is useful, when lowering the number of messages sent to 100, you should see that the test sometimes passes.
I have been running the tests with:
$ cd tests/integration-tests
$ mvn verify -DskipIntegrationTests=false -Dtest="MQTT5Test#testRequestResponseMessages*"

I created this test to reproduce a slightly more complicated case I am dealing with at the moment where, in a production setting, messages are getting lost left and right and I haven't got a clue why.

I added a comment to https://issues.apache.org/jira/browse/ARTEMIS-4296. Let's continue the discussion there.


configurable balancing

Description of new idea or improvement on existing one
It's often an issue that one job gets more attention than others. It's a pain to constantly monitor occupations, balance rewards in the config, and reload to update.
I would like jobs to allow automatically weighted rewards, based on the percentage of players gravitating to one job. or away from another
Detailed information what should do what and when
set each job's weight to 1.
check the number of jobs available and the number of players in each job field.
infer the number of players that should occupy a job.
adjust by a configurable amount, shifting the reward to the other jobs
multiply the original rewards by the weight.
ex:
If a job in a 7-job system is more than 1/7 of occupied jobs after a day, multiply the weight by 0.95 and adjust the other jobs such that the sum of the weights is constant.
If a job in a 7-job system is less than 1/7 of occupied jobs after a day, multiply the weight by 1.05  and adjust the other jobs such that the sum of the weights is constant.

It's my opinion.
Is it possible to add some parameter for progression equation?
like the number of jobs available, and the number of player that has joined at least a job, and the number of how many players join the current job.
if so, then we can config the progression for balancing.

My goal is to get players to try different jobs.
correct me if I'm wrong, but I thought pay for high-level job members was just a multiple of the base pay. If the base pay changes, so would the pay for any job members at higher levels.
If you instead want to adjust progression tables for more active or less active job fields, you could still use:

number of jobs (constant int)
total sum of occupations (int)
number of players in this job field (int)

@DailyStruggle Did you checked DynamicPayment? There is an option to add a penalty or bonus to jobs which have a bunch of people working in it. So you can add 50% penalty to payment for a job miner which has 1000 workers while adding like 100% (double pay) bonus to a farmer jobs which only has like 10 workers. So its more or less self-balancing system.


Is RSpec::Mocks.with_temporary_scope suppose to work in before(:suite)?

Hi, I've been checking out "Factory Girl Seeds" and encountered a problem. The gem author suggests creating records in before(:suite). Which works fine for simple factories, but more advanced ones get in all kinds of trouble (resque jobs being enqueued, external services being called and not found etc.). Normally all of these are stubbed out in a before(:each) with stuff like MockRedis, but it seems that stubbing is not possible in the before(:suite) block.
Now searching through Google I found out about RSpec::Mocks.with_temporary_scope in SO answer about a similar problem for before(:all).
I tried using with_temporary_scope in before(:suite), but I still get the undefined method "allow" for nil class error. It does however work for before(:all) (though seeding in before all makes much less sense).
So:

Is RSpec::Mocks.with_temporary_scope not suppose to work in before(:suite)?
or
Do I have some configuration issues?

Thanks for the info :)

RSpec::Mocks.with_temporary_scope can be used in any context but it doesn't automatically make the rspec-mocks API available in that context.  RSpec::Mocks.with_temporary_scope is concerned only with the setup/verify/teardown lifecycle of rspec-mocks, performing that lifecycle anywhere you want it to occur.  To make the rspec-mocks API available in a context, RSpec::Mocks::ExampleMethods needs to be included or extended in the appropriate place.  rspec-core should be doing this for before(:suite) hooks but it's not. You discovered a bug!  See rspec/rspec-core#1986.
For now, you can deal with this yourself doing something like:
RSpec.configure do |config|
  config.before(:suite) do
    RSpec::Mocks.with_temporary_scope do
      mocks_api_context = Object.new
      mocks_api_context.extend RSpec::Mocks::ExampleMethods
      mocks_api_context.instance_eval do
        # use the rspec-mocks API here.
      end
    end
  end
end

It's a hack, but a pretty clean one, and it relies only upon public rspec-mocks APIs so it's something that should work in all 3.x releases (and probably 4+, but 4.0 will have breaking changes of some sort).
Sorry for the trouble!

You discovered a bug!

Achievement unlocked :laughing:
Thanks for your help, will try the "hack" :)

Closing in favor of @JonRowe's fix in rspec/rspec-core#1986.

rspec-core 3.3.1 has been released with a fix.

Great! Thanks for taking care of this :bow:


ERROR: uvloop does not support Windows at the moment

https://github.com/aws-rdoty/Amazon-Bedrock-Snowflake-POC/blob/e9bed0668ec077557e880025219f3259045f5c50/README.md?plain=1#L58

Hi. Can you help me to solve this problem?
I already use this version uvloop==0.17.0 and I'm currently using windows.
Thank you.

Hey @Vincentim27 are you using an venv when trying to install the requirements.txt? If so can you try uninstalling uvloop? You can also remove the requirement for uvloop to validate if the application can run without it...

Yes I'm using venv when installing requirements.txt. Okay I will try it soon. Thank you for your response @aws-rdoty

Hmm, 1 more thing, is that possible that I switch from snowflake to aws? so all of them fully automated on aws. By the way when I try to running this code the deploy works but error like this.

Is that because I didn't change this section?

Thank you once again.


Fix in_tail input messages loss when receive_lines fail. fix #699

Based on #700. Update patch and rebase to master.

@sonots @tagomoris @zheolong How about this?

@repeatedly I think it's great.

commented

If there is no problem, I will merge this patch today and release new fluentd.


Instagram Ripper only getting first page

@cyian-1756

Ripme version: 1.7.25
Java version: Version 8 Build 161
Operating system: Win 7 64bit
Exact URL you were trying to rip when the problem occurred:
https://instagram.com/taylorswift  This is a URL I tested it with, but it does it with ALL Instagram URL's
Please include any additional information about how to reproduce the problem:
When I start the rip it downloads the first 12 pictures then starts saying "Downloading Next Page"  but there is nothing other than that showing.

Expected Behavior
To download all the pictures
Detail the expected behavior here.
Actual Behavior
Bug.txt
That is what it is doing, I've tried several different instagram sites.
Detail the actual (incorrect) behavior here. You can post log snippets or attach log files to your issue report.

Does anyone have any idea why this regex won't work? Because I'm completely stumped
 Pattern jsP = Pattern.compile("queryId:\"([a-zA-Z0-9]+)\"");
 Matcher m = jsP.matcher("queryId:\"TEST\"");
 return m.group(1);

Was the \ the issue that bugged it?

Was the \ the issue that bugged it?

No idea, I just replaced the \" with a . wildcard

This was fixed in 1.7.26

@cyian-1756 Thank you SO much for fixing this.


Fixes bug with LocalizedStringKeyTests

Currently, when you run the LocalizedStringKeyTests on a machine which is not using the en_US locale, they will fail:
("You are 1 000th in line.") is not equal to ("You are 1,000th in line.")
I currently have a custom locale where the number grouping symbol is a space, but many European locales use . for grouping and , for decimals. It would also fail for these locales.
The fix I made was to force the en_US locale for the NumberFormatter used in the test.
Whilst I was investigating this, I also found that the formatted() function in the LocalizedStringKey extension ignores the locale parameter passed, so I changed it to not ignore this parameter.

Just made the change that @ole suggested 👍


Small README Fix

Holding tab is no longer a thing?

Holding alt is no longer a thing?

no it's a config checkbox now. fixed in #245

Included in https://github.com/EtienneLamoureux/TQVaultAE/pull/266


CMake: Removed vendored GTest option

We need version 1.11 or above, which is is now widely packaged on the major Linux distros, so the need for vendoring has gone.
Our vendored build has been broken for ~8 months now (#2951) and we haven't received any complaints, so I think we can safely remove it entirely.
Resolved #2951.

Looks like this broke the ubuntu distro build: https://github.com/bpftrace/bpftrace/actions/runs/10821450363/job/30023467768

The errors in the log look unrelated to GTest:
#10 1.332 CMake Error at /usr/lib/llvm-19/lib/cmake/llvm/LLVMExports.cmake:1913 (message):
#10 1.332   The imported target "LibcTableGenUtil" references the file
#10 1.332
#10 1.332      "/usr/lib/llvm-19/lib/libLibcTableGenUtil.a"
#10 1.332
#10 1.332   but this file does not exist.  Possible reasons include:
#10 1.332
#10 1.332   * The file was deleted, renamed, or moved to another location.
#10 1.332
#10 1.332   * An install or uninstall procedure did not complete successfully.
#10 1.332
#10 1.332   * The installation package was faulty and contained
#10 1.332
#10 1.332      "/usr/lib/llvm-19/lib/cmake/llvm/LLVMExports.cmake"
#10 1.332
#10 1.332   but not all the files it references.
#10 1.332
#10 1.332 Call Stack (most recent call first):
#10 1.332   /usr/lib/llvm-19/cmake/LLVMConfig.cmake:370 (include)
#10 1.332   CMakeLists.txt:150 (find_package)
#10 1.332
#10 1.332
#10 1.332 -- Configuring incomplete, errors occurred!
#10 ERROR: process "/bin/sh -c cmake -B /build -DBUILD_TESTING=OFF" did not complete successfully: exit code: 1

I'd guess it's just ubuntu:devel being broken - hopefully they'll fix it soon.


How to exec into the container or pod

Sometimes I need to log in to the container to debug my program, but it seems that it can't be done at the moment.

Similar to using kubectl exec pod -c CONTAINER -- sh

This is a duplicate of #40

Thanks so much for trying and feature suggestion.
Also, thanks @aslafy-z for noticing it's duplicate.
Sure we are working on SSH / Web-shell feature and will release an update soon.
I'm closing this in favor of #40


User session time out and warning

Added 20 minutes as the session timeout.
META refresh will auto update the page to session-ended page.

Raised another PR with cleaner version.


⚠ Bofrost.com has degraded performance

In 71b1e1f, Bofrost.com (https://www.bofrost.com) experienced degraded performance:

HTTP code: 200
Response time: 1179 ms

Resolved: Bofrost.com performance has improved in e7f7be3 after 8 minutes.


Jshint error/warning fix

Fix jshint error reported in
https://github.com/apache/incubator-zeppelin/pull/156#issuecomment-129646840

https://github.com/apache/incubator-zeppelin/blob/master/zeppelin-web/.jshintrc
should already being taking care of it

please add $ in .jshintrc

@Leemoonsoo has fixed this in https://github.com/apache/incubator-zeppelin/pull/202
Thanks much


在未登录的情况下可以查看，下载仓库镜像

在浏览器打开： http://*/registry/detail?project_id=1
在未登陆的状态下，也可以查看镜像信息
如果我启动了harbor服务，那就是任何人都可以看到我的镜像， 都可以pull下来

该项目默认就是公开的

Make it private can solve your problem .

@int32bit  how can i make it private?

@wknet123  Harbor is designed to be deployed in a private environment of an organization. A private registry is important for organizations who care much about security.

@vcent You can see a button in your project list(http://your_addr/registry/project).

@int32bit  thanks a lot


[Python][Docs] Add ParquetFileFragment to the API reference docs

The ParquetFileFragment has some custom methods (compared to the default Fragment), and it would be good to have those in the reference docs (https://arrow.apache.org/docs/dev/python/api/dataset.html#classes)

Claim. I would like to handle this issue.

Yes, that's very welcome!

Hello @jorisvandenbossche , I am new to this community and would like to contribute to this issue. Please assign this issue to me if its still active!
Regards

@yashu6march would you still want to working on this?
You can create a pull request, naming "GH-36044: [Python][Doc]", the issue will be assign to you automatically.
You can also reply "take" to the issue

take

take


File upload not working in staging

After selecting a file and clicking "Upload" on the file upload questions, nothing happens (and the file is not uploaded). This has been the case today and yesterday in Azure staging.

duplicate of https://github.com/seattle-uat/civiform/issues/2728


[BUG] AppendBlobClient::create() does not follow min/max overload style

The issue has already been addressed by recent RPs. Confirmed with @jaschrep-msft
Closed it. Please feel free to reopen if any other questions.

Fixed by #4752


Add optional correction attribute to tests giving command to run on test failure

Describe the feature:
Goss tests should have an optional 'correction' attribute, containing a generic OS command to run in the case of test failure.  This would allow goss to also self-heal minor faults.
This may be considered out of scope of the intent of goss, since it is making changes (fixes) rather than simply reporting; however I consider it a very useful feature to add.
Describe the solution you'd like
Add a new attribute to goss test, 'correction', containing an OS command.
In the event of the goss test failing, if a 'correction' command is defined, the 'correction' command is run, and then the goss test then re-tried.  If the new ettempt passes then the test is considered a pass (though it should log that recovery was required)
Describe alternatives you've considered
A separate script couldrun correction commands after a goss run fails.  However this is much harder to target  as it requires rerunning all the tests, even the successful ones, plus identifying which test failed - and therefore which correction to attempt, if one is available - is more difficult from outside the goss framework

Reflecting on this a bit, it sounds like it's starting to get into the territory of configuration management (chef, puppet, ansible, etc.). Guess my question is.. what is the value of this over an idempotent configuration management tool?
My initial reaction is that, while this seems like a very cool feature. it may be a bit out of scope and could lead to some trying to use goss as a bad CM tool.

I do understand your view here, and agree that it is probably going outside the scope of goss being a pure test/validation tool.  I suppose the only in-scope reason for this would be to allow an on-failure command to collect more information, such as to run additional root-cause tests,  but that is probably not enough justification.

Out of curiosity do you have a concrete example of a use case for root cause?
Mostly asking since I recently added the ability to have debug output which currently shows the Stdout/stderr of a command and looking for possible improvements to other tests logging.
I'm wondering if there's possibly a way to achieve the desired results of your last suggestion through enhanced logging


tls: suggestion - disable tls if port is http?

This is more of a cosmetic thing, but when setting servers, we usually have times when we want to have a server listen on both on http and https without automatically upgrading to https. (Ex, our API service which if request over http, via XHR, doing a redirect to https would cause a CORS violation).
However, we also don't want to repeat options in our Caddy file. A configuration like this:
http://api.example.com, https://api.example.com {
	tls example.crt example.key
	bindaddr <IP_ADDRESS>
	gzip
	log /dev/fd/1
}

Would cause a Caddy to error out with
Configuration error: Cannot multiplex <IP_ADDRESS>:http (HTTP) and <IP_ADDRESS>:http (HTTPS) on same address
With the following change, tls won't be enabled for servers with port http (either http://example.com or <IP_ADDRESS>:http.
I think its a sane default (you don't usually want https on port 80), OTOH, I could understand if some people want to be paranoid about tls.  Lastly, you would be able override the tls check by doing something like http://example.com:80 or <IP_ADDRESS>:80.

I've also experienced this issue, in fact, I have the exact problem right now with caddyserver.com.
My idea to handle this would have been to introduce a use directive that copies the config from another server, like:
http://api.example.com {
    gzip
    log access.log
}

https://api.example.com {
    tls cert.pem key.pem
    use http://api.example.com
}

So kind of like a same-file import. But again, simplicity is an important goal with Caddy and I think yours is better approach overall.
The only thing that concerns me about it is if a user does something like this:
http://mysite.com {
    tls certificate.crt server.key
}

In this case, the tls directive would be completely ignored. Obviously the user made a mistake but it goes out silently. Maybe a warning should be printed to the console? (See, for example, root does this if the site's root directory does not exist during server startup.)

So I looked into implementing the use directive, but from what I can understand (parsing.go?) there seems no way to do it in memory, and you would probably have to open the current caddy and extract the config from there. If we didn't want to change the parser too much I guess you could use the import directive and simply scan for the directive you want but that seems fragile (I don't yet understand the config parser too well).
Also looking to see how to cleanly implement the warning. So far only the parser is aware if a given block has multiple hosts and I don't think it makes much sense to put the warning in the parser.

In that case, let's just go with outputting a warning. Maybe in tls.go we could check c.Port, and if it equals "http" then we can raise a warning saying that TLS is not enabled for the plaintext HTTP port.

Added the warning -
Warning: TLS was disabled on host http://api.example.com. Make sure you are specifying https://api.example.com in your config (if you haven't already). If you meant to serve tls on port 80, specify port 80 in your config (http://api.example.com:80).

Yes! Perfect. Thanks.


[Bug]: Can't update redis password

Description
The default password is great, but I'd like to change it to use a team variable. But changing the password does not seem possible.
The end goal here is to update the password to a team variable. (or export the redis password to a team variable to reuse it on other services)
Minimal Reproduction (if possible, example repository)
Create a redis instance
There's no option to update the password.
What I tried:

Add requirepass in redis.conf :x:

I tried to update the redis config by setting  requirepassrequrirepass [password] in the Custom Redis Configuration field. But with this change I have an error
1:C 16 Aug 2024 12:57:59.220 # Fatal error, can't open config file '/usr/local/etc/redis/redis.conf': Permission denied

To fix that I applied chmod 644 redis.conf (in /data/coolify/databases/vgcgosoc4c4g08scockcc04c/redis.conf)
But it does not work
Note: Even if it worked, as you'll see in 2., requirepass is passed in arguments, I suppose it would override the config set in redis.conf (same issue as https://github.com/coollabsio/coolify/issues/2637)

Add env var REDIS_PASSWORD :x:

From what I see in the docker-compose file
command: 'redis-server /usr/local/etc/redis/redis.conf --requirepass YO909xY0iISWtiK3IWlHRmQEQkep0TEJWheyTilMztjfho0Q5gr058UxQ57t2L1M --appendonly yes'
        container_name: vgcgosoc4c4g08scockcc04c
        environment:
            - REDIS_PASSWORD=YO909xY0iISWtiK3IWlHRmQEQkep0TEJWheyTilMztjfho0Q5gr058UxQ57t2L1M

the password is defined in an env var but also in the command. So I first tried to update the env var using coolify ui.
But by doing so, the variable is always set to ''. I tried using team variable and hardcoded ones, same issue.

Change the command directly :x:

As seen in 2., the command has requirepass hardcoded, so why no edit it there ?
The issue here is that the dockerfile is generated on each restart so our changes are not persisted.
Exception or Error
No response
Version
v4.0.0-beta.323
Cloud?

[ ] Yes
[X] No

I'd like this as well

@affanshahid Well, you are in luck, this has been fully implemented and will be available soon.

A fix for this issue has been implemented and will be available in an upcoming release. Thank you for your patience.

@peaklabs-dev what's the default location of redis.conf when coolify sets up the project?
It's neither:

/etc/redis/redis.conf
/usr/local/etc/redis/redis.conf

@simplenotezy It is localed at /data/coolify/databases/UUID/redis.conf
so for example here /data/coolify/databases/ck0040woo4w0o80c44ccwo40/redis.conf


Add iOS organisations to Certificate picker

When you need to pick up right certificate to build iOS app, you see just name. With newly option you can specify via JSON object which certificate id belongs to which organisation. It's very usefull if you are developer for various clients...

this is what it looks like


Non-determinism in pods

Pod manifests (multi-component services) allow inspecific versioning ("version=latest") and input from the network (during the process termed 'reification' in the documents) and are therefore non-deterministic, which while conceptually simple at the outset actually creates numerous potential edge-cases and problems (this is the same approach docker has historically taken and is really a false economy, long term!)

This flexibility is intentional to facilitate deployment templates. I am
not yet sure this is sufficiently concerning to prohibit such behaviour,
environments can remain entirely deterministic through use of image IDs. We
really need to explicate some examples of the template pattern and
suggested practices, /cc @vbatts
This is duped with another issue, will find when IFOK...
Am 06.05.2015 09:25 schrieb "Walter Stanish"<EMAIL_ADDRESS>
Pod manifests (multi-component services) allow inspecific versioning
("version=latest") and input from the network (during the process termed
'reification' in the documents) and are therefore non-deterministic, which
while conceptually simple at the outset actually creates numerous potential
edge-cases and problems (this is the same approach docker has historically
taken and is really a false economy, long term!)
—
Reply to this email directly or view it on GitHub
https://github.com/appc/spec/issues/381.

Closing as dupe of #295 , let's chase up there


[as2_crazyflie_platform] Remove namespace from launch

Basic Info

Info
Please fill out this column

Issue(s) this addresses

ROS2 version tested on
Humble

Aerial platform tested on
Crazyflie

Description of contribution in a few bullet points

Launch namespace was overriding each cf namespace

Codecov Report

Merging #239 (2a4f4e3) into main (39e9575) will increase coverage by 0.07%.
The diff coverage is n/a.

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

: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            @@
##            main    #239      +/-   ##
========================================
+ Coverage   3.06%   3.14%   +0.07%
========================================
  Files        100     100
  Lines       5251    5318      +67
  Branches     455     480      +25
========================================
+ Hits         161     167       +6
- Misses      4952    4990      +38
- Partials     138     161      +23

Flag
Coverage Δ

unittests
3.14% <ø> (+0.07%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.
see 22 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Fixes error message in validate method in logical_types.py

The error message refers to an incompatible dtype when it should be LogicalType.

Looks good but you'll have to update the string in some tests (as well as update the release notes)


Fix edge cases in Rust for implementing Fasterpath.dirname

I'll be re-implementing the dirname Rust source to pass the tests in #8

Will open if @gogainda chooses not to do this in #8


amazing! it all works spectacularly! but i would like...

its all amazing, but i would love if you could make a hack to change my name. thx.

Yes. I can, but not an issue. And also from what I remember you can only cycle through membership names only. So it’ll be client-sided.


Update to use maven artifact of generated gRPC code.

Changes Unknown when pulling 0c6480434518b45fd2027dca60a67c8d66f4924b on deflaux:master into ** on googlegenomics:master**.

Changes Unknown when pulling 0c6480434518b45fd2027dca60a67c8d66f4924b on deflaux:master into ** on googlegenomics:master**.

Changes Unknown when pulling 0c6480434518b45fd2027dca60a67c8d66f4924b on deflaux:master into ** on googlegenomics:master**.

LGTM.
That is so much cleaner. Thanks!


Jerking layout on Iphone Xs max with build type release

I add Flutter to iOS application, when i build on iPhone Xs max (release type), it happens a phenomena.

You can see text "Sai route name" change size
It only happen when i use release type.
My flutter doctor
[✓] Flutter (Channel stable, v1.5.4-hotfix.2, on Mac OS X 10.14.5 18F132, locale
    en-VN)
    • Flutter version 1.5.4-hotfix.2 at /Users/davidsonnguyen/flutter
    • Framework revision 7a4c33425d (7 weeks ago), 2019-04-29 11:05:24 -0700
    • Engine revision 52c7a1e849
    • Dart version 2.3.0 (build 2.3.0-dev.0.5 a1668566e5)

[✓] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
    • Android SDK at /Users/davidsonnguyen/Library/Android/sdk
    • Android NDK location not configured (optional; useful for native profiling
      support)
    • Platform android-28, build-tools 28.0.3
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_152-release-1343-b01)
    • All Android licenses accepted.

[✓] iOS toolchain - develop for iOS devices (Xcode 10.2.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 10.2.1, Build version 10E1001
    • ios-deploy 1.9.4
    • CocoaPods version 1.5.3

[✓] Android Studio (version 3.4)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 35.3.1
    • Dart plugin version 183.6270
    • Java version OpenJDK Runtime Environment (build
      1.8.0_152-release-1343-b01)

Hello @DavidSonNguyen !
Did you manage to solve the issue? Does the problem still persist in the latest stable version?

Without additional information, we are unfortunately not sure how to resolve this issue. We are therefore reluctantly going to close this bug for now. Please don't hesitate to comment on the bug if you have any more information for us; we will reopen it right away!
Thanks for your contribution.


chore: single base interface for presenters

fixes #315

@iamareebjamal please review

Not required for now. Could implement presenter loader without this. Hence closing it.


Delay time influenced by memory configuration

How many cycles asm::delay() can be affected by how the chip memory is configured and even where the function ends up in Flash. The code assumes the loop takes 4 cycles and explains that interrupts may cause the function to delay longer than requested.
However, items such as Flash wait states, instruction cache, and function alignment can also cause the loop to take longer, even when interrupts are disabled. As an example, asm::delay() running on the NRF52840 can take 4, 5, or 6 cycles per loop depending on whether the function ends up 16, 8, or 2 byte aligned. This also means that the delay depends on how exactly the binary is compiled and linked.
This is very surprising behavior and I think a note to the above effect would be useful in the function's documentation. Perhaps the loop can be measured as part of initialization, but this would probably be unnecessary overhead.

The documentation clearly states that delay will block for at least the specified amount of cycles. It certainly is a really poor delay implementation and not meant to be used for accurate timing. PRs to improve upon that would certainly be appreciated.
NB: Since this function is inlined it will behave differently depending on the caller so measuring as part of the initialisation is not possible. Not inlining it would make it even less dependable, at least for short delays.


Darwin ARM64 Compile issue after Upgrading from v0.0.0-20230816170901-d898cc7820fe to v0.0.0-20240118201113-3385e277e49f

It appears something broke once we upgraded from version v0.0.0-20230816170901-d898cc7820fe to v0.0.0-20240118201113-3385e277e49f, specifically on mac arm64:
../../../../go/pkg/mod/github.com/!n!v!i!d!i!a/go-dcgm@v0.0.0-20240118201113-3385e277e49f/pkg/dcgm/internal.go:80:14: cannot use _Ctype_long(ts) (value of type _Ctype_long) as _Ctype_longlong value in struct literal

Things still work on ubuntu amd64.
Please advise.

The go-dcgm is not supposed to be build and run on the Mac OS or Windows. The package can be build and tested on the Linux only.


core engine size has increased significantly

In the faq, it says the core engine size is about 2.7MB, but it is not the case at present. Assuming libflutter.so file is the core engine it is at present 3.1MB, which is huge change in about 7 months I suppose.
Edit
The FAQ is updated to 3.2 & 3.5 MB

I don't think there's any action to take on this bug right now.
The engine size grows over time as we add new features.  We work really hard to make sure it doesn't grow too much, and do whatever we can to reduce it.  We try to update the website periodically to reflect current figures.
You can follow bugs around this by looking at the a: size label.


chore: Allow changelog to be automatically populated by semantic-release

Signed-off-by: Chris Butler<EMAIL_ADDRESS>Types of changes

[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 change)
[x] My code follows the code style of this project.
[x] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have added tests to cover my changes.
[x] All new and existing tests passed.

Allows semantic release to correctly publish a changelog for trestle.  Should complete #103

Note that as a CICD task this is difficult to test. I have independently tested here: https://github.com/butler54/semantic-release-github/blob/main/CHANGELOG.md


Template engine

What exactly is the scope of this? To provide a very easy way to modify the design via interface/simple text file or just a CSS skeleton to modify most elements?

I believe this is no longer necessary due to outcome of #27. Once I've finished the reporting system on the plugin side, I can start the new UI project.


Release of wasi-sdk 24

The changes since main notably include https://github.com/WebAssembly/wasi-sdk/pull/456 to issues with Windows precompiled binaries and https://github.com/WebAssembly/wasi-sdk/pull/467 which contains updates to underlying tooling. Both of these changes I believe the C#/.net folks are looking to use.
Are there any objections to releasing a new version of the sdk in the near future? Any other changes to get in and/or bugs to fix?

I say go for it.    If our release scripts are smooth enough then releases should have a very low bar (IMHO).

Done!
cc @dicej

Thanks, @alexcrichton!
cc @pavelsavara

BTW, @pavelsavara this release includes wasm-component-ld 0.5.6, which tweaks the WIT format a bit, so I expect we'll need to update the .NET generate-*-bindings.sh scripts to use wit-bindgen 0.29.0 and regenerate the bindings.  I can help update https://github.com/dotnet/runtime/issues/104773 if this isn't clear.


[cvdremote] Allows to pass different client.Service implementations.

Useful for unit testing.

yes, I pushed an empty commit to trigger the presubmit actions which were not trigger with the initial commit, I'll Squash and merge onto the main repository, so the empty one won't be seen.

Next time try git commit --amend && git push -f first instead of a new empty commit. The amend should change the commit message time and therefore the SHA which github should treat as a new push and re-trigger the checks.


can't connnect to remote ssh in 1.36.0

VSCode Version: 1.36.0
OS Version: windows 10

Steps to Reproduce:
Only first connect remote ssh successfully,  restart local vscode will can't connect again.(1.35.1 withot this issue)
remote process as bellow:
ps axu |grep vscode
huiping  18794  0.0  0.0  14264  3244 ?        S    15:37   0:00 sh /home/huiping/.vscode-server/bin/0f3794b38477eea13fb47fbe15a42798e6129338/server.sh --enable-remote-auto-shutdown --port=0
huiping  18802  0.4  0.2<PHONE_NUMBER>8 ?        Sl   15:37   0:01 /home/huiping/.vscode-server/bin/0f3794b38477eea13fb47fbe15a42798e6129338/node /home/huiping/.vscode-server/bin/0f3794b38477eea13fb47fbe15a42798e6129338/out/vs/server/main.js --enable-remote-auto-shutdown --port=0
huiping  20941  0.0  0.0  15968  1012 pts/0    S+   15:44   0:00 grep --color=auto vscode
if kill the process of 18802 , can connect to remote
local vscode log as bellow:
Found existing installation at /home/huiping/.vscode-server/bin/0f3794b38477eea1

3fb47fbe15a42798e6129338...
Found running server...

Reminder: You may only use this software with Visual Studio family products,
as described in the license (https://go.microsoft.com/fwlink/?linkid=2077057)

Checking server status with wget
http://<IP_ADDRESS>/: 2019-07-05 15:51:41 ERROR 503: Service Unavailable.
de46cd64-f440-4ee0-88bb-3ceeae0b9919##28##

"install" terminal command done
Received install output: de46cd64-f440-4ee0-88bb-3ceeae0b9919##28##
Server status check failed - waiting and retrying 28

Found existing installation at /home/huiping/.vscode-server/bin/0f3794b38477eea1
3fb47fbe15a42798e6129338...
Found running server...

Reminder: You may only use this software with Visual Studio family products,
as described in the license (https://go.microsoft.com/fwlink/?linkid=2077057)

Checking server status with wget
http://<IP_ADDRESS>/: 2019-07-05 15:51:45 ERROR 503: Service Unavailable.
de46cd64-f440-4ee0-88bb-3ceeae0b9919##28##

"install" terminal command done
Received install output: de46cd64-f440-4ee0-88bb-3ceeae0b9919##28##
Server status check failed - waiting and retrying 29

Found existing installation at /home/huiping/.vscode-server/bin/0f3794b38477eea1
3fb47fbe15a42798e6129338...
Found running server...

Reminder: You may only use this software with Visual Studio family products,
as described in the license (https://go.microsoft.com/fwlink/?linkid=2077057)

Checking server status with wget
http://<IP_ADDRESS>/: 2019-07-05 15:51:49 ERROR 503: Service Unavailable.
de46cd64-f440-4ee0-88bb-3ceeae0b9919##28##

"install" terminal command done
Received install output: de46cd64-f440-4ee0-88bb-3ceeae0b9919##28##
Server status check failed - waiting and retrying 30

Is it going to be resolved soon?

I have the same problem!

I've got the same issue, and it works the workaround type "ps axu | grep vscode" and kill processes for vscode-server.
Client: Windows 10 + VSCode 1.36.0
Server: Ubuntu 18.04 + VSCode 1.36.0

I solved the problem.
Add "no_proxy=<IP_ADDRESS>,localhost" to ~/.wgetrc, this issue will not exist.

I solved the problem.
Add "no_proxy=<IP_ADDRESS>,localhost" to ~/.wgetrc, this issue will not exist.

It works, thank you!

I solved the problem.
Add "no_proxy=<IP_ADDRESS>,localhost" to ~/.wgetrc, this issue will not exist.

Didn't help

Duplicate of https://github.com/microsoft/vscode-remote-release/issues/895


Start porting Travis stuff

I'm deleting parts of the travis config as they are ported to more easily keep track of remaining work.

Coverage remained the same at 99.323% when pulling 2858d8bc2f1031a10865cdc4ea0b5925723f3976 on thetic:travis-stuff into c02ec75af97a536e34dd47fd7453abbcb095213a on cpputest:master.

haha, this way @offa will still get the travis files deleted like he proposed earlier. You are just doing it gradually. :)
I would prefer keeping them as is for now if that is ok. Yes, that is probably not my rational self and yes they are anyways still in version control... still :)

I would prefer keeping them as is for now if that is ok.

done

Thanks!


feat: Make MFA instructions clear for SMS and Email

For Email and SMS based MFA:
Before:

After:

No change for TOTP based MFA.

@dacongda plz review

@hsluoyz Looks like you closed this PR after asking for approval. I am a little confused. Any reason for not merging the PR?

we will try to pull a new pr later

This PR is becoming too tedious compared to its contribution size (aka too difficult, but contribution is small). Closed for now.

@hsluoyz @dacongda I have spent too much time on this PR for it to be closed now. Pr has become big because you asked for the change in the existing messages and I explicitly told that is the case. 😞

Also, contribution might be "Small" but it is very essential for any production system to avoid creating confusion among the users using MFA.

@maknahar I totally understand what you said and your desire to have your hand-made patch merged but it seems that it will take us less time to fix it by ourselves than reviewing your PR.

Also, contribution might be "Small" but it is very essential for any production system to avoid creating confusion among the users using MFA.

I know it , and I will fix this in few minute, sorry for spending you too much time on this.😂

Okay. Thanks for the quick PR for the fix.


Create AMI in US-East-1 to speed up deployments

AMIs created in us-east-1 and us-west-2.
"JenkinsInstanceAMIs": {
"us-east-1": {
"AMI": "ami-f798779c"
},
"us-west-2": {
"AMI": "ami-bf9ea08f"
}
},


Revisit how Companion does preload at public gateways

Background
Right now Companion preloads uploaded content via HTTP HEAD requests to a public gateway.
Public gateway can be customized by the user, and there is an option on Preferences screen to disable preload.
The js-ipfs and infra teams are  working on a solution that will fix discoverability and restore "realtime feel" in browser contexts: https://github.com/ipfs/js-ipfs/issues/1459.  In short there will be a set of "official" preload gateways that will be used for every write operation made by js-ipfs when running in web browser.
Open Questions
Given discussion in https://github.com/ipfs/js-ipfs/issues/1459, questions arise:

[ ] (1): should we switch from HTTP HEAD per CID to /api/v0/refs?r=true&arg=<cid> ?

:+1:  when adding N files you only need 1 preload request (for  root) to /api/v0/refs  instead of N+1 HTTP HEADs (one per file + wrapping dir).
:-1: refs requires /api/ to be exposed to the internet, some public gateways  hide everything but /ipfs/.

This means we need to use specific gateway instead of the one picked by the user, or implement a fallback to HTTP GET if refs returns statuc code different than 200.

[ ] (2): should we enable preload  for all window.ipfs operations? (mirroring behaviour of js-ipfs)

initial answer is yes, the rationale for doing this is we want to ensure fantastic UX and DX and key to that is for dapp data to  not disappear from the swarm immediately when user closes laptop.
Given js-ipfs will be doing preload by default starting with next release, should we limit it to state when running against non-js-ipfs backend?
If implemented, global "preload" checkbox in Companion should also control preload in window.ipfs

[ ] (3): Should global "preload" checkbox in Companion disable implicit preload when running against embedded js-ipfs as the backend ?

initial answer is yes, otherwise user is confused why preload requests are still sent by the browser

FYI the HEAD request won't preload a file if it is bigger than max chunk size (unless you traverse the tree that's created and send a request for EVERY node that's created, as well as all it's children). This is why js-ipfs uses the refs API.


Snapins

Hi,
Would be possible for you to reconstruct the script without using snapins? They are deprecated and not even available in PowerShell CORE.

just comment this line. https://github.com/Vidanez/DeployVMs/blob/master/DeployVM.ps1#L159
and replace with the following line :
Get-Module -Name VMware -ListAvailable | Import-Module*

Hi,
Thanks, commenting out the line is enough, it seems powershell core on linux already loads the all installed modules.


Auth sessions don't automatically refresh

Bug report
Describe the bug
When calling try await client.auth.session, it often throws GoTrue.GoTrueError.APIError(message: nil, msg: nil, code: nil, error: Optional("invalid_grant"), errorDescription: Optional("Invalid Refresh Token: Refresh Token Not Found") and I need to manually sign in again. This happens quite often and is undesirable behavior in a production iOS app, as the user should not have to sign back in so often.
To Reproduce

Sign in with OTP sms
Make plenty of authenticated server requests like so:

do {
    let session = try await self.supabaseClient.auth.session
    let accessToken = session.accessToken
    // Pass accessToken in http authorization header to custom server endpoint
}

Eventually, after a day or so, the auth session will start throwing the refresh token error.

Expected behavior
The user should not have to log in again ever on iOS, unless they log out themselves. Meaning if you have logged in, try await client.auth.session should always refresh itself and give a valid session assuming no other errors.
System information

OS: [iOS 16.4.1]
Version of gotrue-swift: [e.g. 1.1.0]
Version of supabase-swift: [e.g. 0.2.1]

Curious if this is happening to anyone else? This may be a supabase auth server bug, but every time the session attempts to refresh I get this error.

it is happening to me for SignInWithOTP via email as well. Session expires but doesn't retrieve new ones.


Rewrite and reorganize Linux install instructions

Proposed changes

Rewrote installation instructions for Ubuntu, Debian, RHEL, CentOS, Fedora, Oracle

Added instructions for installing from packages without using the repositories

Moved lots of non-dist-specific post-installation instructions to a new file

Added docker.repo files which can be imported by RHEL, CentOS, Fedora, Oracle users (the URLs to these will not work until this PR is merged)

Added steps for importing and verifying the GPG signing key on all the dists where it is relevant

Reorganized content in the left-hand nav to emphasize the most popular and well-tested distros

These instructions have already undergone exhaustive review and testing.
Unreleased project version (optional)
Engine 1.13
Related issues and PRs
Fixes #703
Goes some way to eventually fixing #1026

Here we goooo...

I have a serious objection to this rewrite because it will result in increased support calls. All of the distro-specific support information has been removed. This needs to be restored so that Oracle (and RHEL and SUSE) customers don't think they can install upstream binaries while continuing to receive distro support for Docker.
I do appreciate the simplification, though.

Also, there are actual inaccuracies in the Oracle text, as it incorrectly refers to Red Hat.

I'll fix the Oracle text relating to Red Hat. Sorry I merged this without seeing your comment. As far as the other one, I'm really not sure what to do about this. Docker has no insight into distro-specific support arrangements with customers. We do call out that not everyone can use third-party binaries right at the top of each of these topics.

Except all the distro-specific content was in the original text. You're removing a whole bunch of content without really articulating the benefit.

I apologise if my previous tone was too abrupt or rude. I realise I am probably missing some larger context or motivation behind such large changes to the documentation.
If you could, would you mind explaining the rationale behind these changes so we can better review them for the target audience?

Thanks for all the feedback. Please move any more feedback to #1172.

@Djelibeybi it's all good - thanks for the review and your constructive comments, it's really helpful. I also want to apologize if this seems rushed - we're crunching for a release.
Ultimately, we want these docs to be short and to the point, and we want to help people install the official Docker packages that are built, supported and maintained by Docker.
Further, while I'm sure that the docker-engine packages that Oracle maintains are great (and I commend Oracle for having up-to-date releases), from our standpoint they suffer from the same shortcomings that you identify with Docker's docker-engine packages: Oracle's packages are not supported by Docker. And similar to what we're trying to achieve with our docs, the Oracle docs don't mention the risks inherent in using Oracle's docker package, nor do they point users to Docker's packages for a Docker-supported solution.
Again, thanks for your help reviewing the docs and please keep the feedback coming.

@friism I think a generic note is probably sufficient then, across the board. Something like, "These instructions install the official Docker build which may not be supported by your distribution vendor. Support for this build is available from Docker, please see..." and a link to the Docker support subscription page or product page or whatever.
Essentially just to make it a little clearer to anyone who installs this particular build that support is available, but from Docker themselves.


Disallow property/accessor overrides

Properties can now only override properties, and accessors can only override accessors. The tests come from the user-submitted horrorshow parade in #27644. Thanks to all who contributed there.
Exceptions:

If the base is abstract, anything is allowed.
If the symbol has both Property and Accessor set, anything is allowed. (But I'm not sure when this can happen.)

Next steps:

Also for 3.7, d.ts emit should always include accessors. If we choose not to do this for 3.7, we should still allow accessors to override properties. We might want to allow this anyway for backward compatibility.
Add an error when overriding properties redeclare a base property with a subtype. Also add declare property: type syntax to work around this. (This might not be for 3.7, we haven't decided yet.)

I'm curious how much real-world code actually does this...
@typescript-bot test this
@typescript-bot run dt
@typescript-bot user test this

Discovered in the design review:

should not apply to .js this-property assignments, and possibly not at all in .js.
should not apply when the base property/accessor comes from an interface.

For (2), @rbuckton suggested a test that extends Map, which is defined as an interface.

Summary: Only bogus failures in user tests. Two projects failed in DT, but since .d.ts files don't currently have accessors, we'll only see half the failures from there.
It looks like RWC failed to run; I'll try again.

@typescript-bot test this

RWC: 27 breaks across 7 projects. So, lots of projects each had a few breaks, which is not great for a problem that often has no easy fix.
I'll look at the breaks next to see if I'm wrong about "no easy fix". I hope so!

@typescript-bot test this
@typescript-bot run dt
@typescript-bot user test this

From RWC:

Angular 2: a class overrides an accessor pair with a property, and the derived class has a decorator which mentions the property. I have no idea what the intended semantics are here.
the copies of VS Code and Azure SDK that we have are so old they didn't have abstract properties.
Babylon: overrides a property with an accessor pair. I don't think this actually works quite the way it's intended, but probably switching the base to an accessor pair would fix things.
POPULAR MICROSOFT APP 1a: an accessor pair overrides a property, intending to ignore it. This doesn't work with [[Define]] semantics. Not sure what the workaround should be here.
POPULAR MICROSOFT APP 1b: a getter overrides a property. The getter returns a constant, so seems straightforwardly replaceable with a property. The comment above says "has to be a getter so overriding the base works correctly". Uh-oh.

A couple of failures are fixed in the latest commit, which allows anything to override properties declared in interfaces.
The worrisome problems are (1), (4) and (5). It sounds like (5) is working around [[Set]] semantics so would be hard to fix. (1) has to do with decorators in Angular. I'm sure we can come up with a workaround for (4), but it will be awfully complicated to put in a blog post.

Note: I tested my fix for "properties/accessors aren't allowed to override methods", and it turns out it's only been broken from 3.0-3.6. That means there were no new RWC failures, so our RWC code predates 3.0.

@typescript-bot pack this

Here is the failure from Angular:
@Component({selector: 'tree', properties: ['data']})
@View({
  directives: [StaticTreeComponent1],
  template:
      `<span> {{data.value}} <tree [data]='data.right'></tree><tree [data]='data.left'></tree></span>`
})
class StaticTreeComponent2 extends StaticTreeComponentBase {
  data: TreeNode;
}

data: TreeNode is a property, while StaticTreeComponentBase.data is an accessor pair. I think the fix here will be the upcoming declare syntax:
class StaticTreeComponent2 extends StaticTreeComponentBase {
  declare data: TreeNode;
}

@rkirov @mprobst @evmar
This is going to cause a lot of new errors in 3.7 in complex or long-lived OO code. We'd appreciate it if you could try this PR out early:
{
    "devDependencies": {
        "typescript": "https://typescript.visualstudio.com/cf7ac146-d525-443c-b23c-0d58337efebc/_apis/build/builds/43964/artifacts?artifactName=tgz&fileId=3AF21D4D4FC0F9A349D943EEA8D0975B1F7FB2E974C87B30467B3F4A1F0AFD2B02&fileName=/typescript-3.7.0-insiders.20190913.tgz"
    }
}

If you have any feedback, please let us know. I expect we'll merge this in a week or less to let everybody on typescript@next start dealing with it.

Note: The interface check is currently wrong; it needs to check the containing type of the base property, not the immediate base type.

@sandersn thanks for the heads up!
I ran this against our internal code base. As expected, this breaks some code, though not terribly many; something like 0.1%. This is manageable for us (famous last words...), assuming there's a reasonably mechanical way to fix.
From sampling the results:

we generally compile with .d.ts, i.e. each compilation unit only consists of a handful of .ts files, all dependencies come in as .d.ts. Most breakages appear to be caused by TS thinking a class overrides a property because the .d.ts file cannot express the fact. This would be a blocker for us, we need support for .d.ts
There are a few APIs in Angular & friends that are problematic. E.g. MatFormFieldControl from the Angular Material UI components is an abstract class with a readonly errorState: boolean. Users extend the abstract class and "override" the property from the base with a get errorState. According to docs above this should be allowed (right?), but doesn't seem to work? Any idea how to debug? It's just the class that's abstract, not the property, in case that matters.

These are the most common issues. I'll need to see if I can exclude those to (possibly) find more specific issues.

Ah I see, #33470 adds the .d.ts emit support.
@sandersn, do you have a branch that pulls all the related changes together?

@mprobst Yes, sandersn/add-property-define-flag. I haven't created a PR or packed it for consumption yet. I'll update after I have.

@mprobst #33509

Also, I outlined a mechanical way to fix both of the errors introduced in this PR to the description. However, the second -- moving accessors into the constructor with a defineProperty call -- doesn't perfectly preserve semantics. It would work fine for all the examples I saw, none of which were aware of the weird edge cases of Set semantics.

Thanks for that branch.
I ran this across our internal code base, overall breakages seem to be relatively rare. Maybe somewhat surprisingly, all of them are subtypes just narrowing the type of a supertype's property (and, often, declaring a @Decorator on them), i.e. TS2612. I cannot find any occurrences of TS2610 or TS2611. I'm not sure if we legitimately don't have any code like that, or if I'm not finding it due to some breakage. Given the odd semantics of property overrides, I wouldn't be surprised if engineers managed to steer clear of it.
I've sampled the cases I found, all that I inspected seem legit by the semantics explained here (i.e. I found no compiler bugs).
Regarding the possible fixes, "Property overrides accessor" checks out.
The "Accessor overrides property" fix will not work for us, because it moves the property name "p" into a string literal, which will collide with our code optimization/symbol renaming strategy. Given how rare this appears to be, I think we can just manually fix the code.
Let me know if you'd like me to look out for (other) specific patterns of expected breakage or would like feedback on something in particular.

@mprobst While Object.defineProperty has the literal to string issue, Object.defineProperties does not require that change and that is what Closure Compiler recommends for ADVANCED mode code that otherwise requires calls to Object.defineProperty.

@mprobst Thanks for your analysis. That agrees exactly with what I saw from our test repos, except that a few people thought (incorrectly) that is was safe to use a get-only accessor in a subclass to make a property readonly. But this is probably rare in modern code that has the readonly modifier.

This is now included in #33509. Thanks all for testing.


SWARM-242 adds Consul Ribbon support

@bobmcwhirter
What's here

Adds Consul support via  https://github.com/OrbitzWorldwide/consul-client (Apache license)
Decouples Ribbon from JGroups/clustering by creating 2 different runtime modules for JGroups / Consul respectively

This meant changing RibbonFraction to RibbonJGroupsFraction - I realize this breaks examples, but I figured the naming was more intuitive, I can get a PR to update the examples put together if you think I am on the right track

Uses the org.jboss.msc.service to instantiate the various singletons needed as with RibbonJGroups. This may be overkill, if some other approach is better, please advise.

Limitations

Consul service advertising currently not supported, as I prefer registering services outside of the JVM where they can be healthchecked more universally, but am open to adding it. Advertising code moved to RibbonJGroupsFraction, as there is still some coupling to clustering anyway
For the life of me, I absolutely could not get javax.ws.rs.client.ClientBuilder.newBuilder() to execute properly. It seemed to be that I could not write a module.xml to export the necessary extension in resteasy-client into the javax.ws.rs.api module. Typically I'd get some error such as java.lang.ClassNotFoundException: org.glassfish.jersey.client.JerseyClientBuilder which from reading FactoryFinder.java meant that the javax.ws.rs.client.ClientBuilder service extension could not be located. My workaround is to use new RestEasyClientBuilder() which is unideal. (See ConsulClusterManagerActivator)

This is my first time working with non-trivial JBoss modules, so to some degree I was finding my way in the dark. If you have suggestions on better ways to package this, possibly as a single fraction with different runtimes, let me know.
Also fixed is SSL support (ribbon.IsSecure). Several Ribbon module dependencies were missing.  I could add testing, but it requires setting up JKS certs & wasn't sure how to generate a cert within the context of a maven project. I could also just include a self-signed cert, but wasn't sure if that was overkill.
I could also add better Arquillian support, but I would need a package such as Wiremock to mock out having a Consul server present.

Fantastic. I'll try to review tomorrow. A PR to keep examples going would
be good.
--
Sent from my iPhone
On Jan 20, 2016, at 4:54 PM, jhovell<EMAIL_ADDRESS>wrote:
@bobmcwhirter https://github.com/bobmcwhirter
What's here

Adds Consul support via
https://github.com/OrbitzWorldwide/consul-client (Apache license)
Decouples Ribbon from JGroups/clustering by creating 2 different
runtime modules for JGroups / Consul respectively

This meant changing RibbonFraction to RibbonJGroupsFraction - I
realize this breaks examples, but I figured the naming was more
intuitive,
I can get a PR to update the examples put together if you think
I am on the
right track

Uses the org.jboss.msc.service to instantiate the various singletons
needed as with RibbonJGroups. This may be overkill, if some other approach
is better, please advise.

Limitations

Consul service advertising currently not supported, as I prefer
registering services outside of the JVM where they can be healthchecked
more universally, but am open to adding it. Advertising code moved to
RibbonJGroupsFraction, as there is still some coupling to clustering anyway
For the life of me, I absolutely could not get
javax.ws.rs.client.ClientBuilder.newBuilder() to execute properly. It
seemed to be that I could not write a module.xml to export the necessary
extension in resteasy-client into the javax.ws.rs.api module. Typically I'd
get some error such as java.lang.ClassNotFoundException:
org.glassfish.jersey.client.JerseyClientBuilder which from reading
FactoryFinder.java meant that the javax.ws.rs.client.ClientBuilder
service extension could not be located. My workaround is to use new
RestEasyClientBuilder() which is unideal. (See
ConsulClusterManagerActivator)

This is my first time working with non-trivial JBoss modules, so to some
degree I was finding my way in the dark. If you have suggestions on better
ways to package this, possibly as a single fraction with different
runtimes, let me know.
Also fixed is SSL support (ribbon.IsSecure). Several Ribbon module
dependencies were missing. I could add testing, but it requires setting up
JKS certs & wasn't sure how to generate a cert within the context of a
maven project. I could also just include a self-signed cert, but wasn't
sure if that was overkill.
I could also add better Arquillian support, but I would need a package such
as Wiremock to mock out having a Consul server present.

Heya--
I'm going to merge this locally and then see if we can't split apart Ribbon to be a single thing, and have a variety of Discovery fractions to supply the ServerLists.
So, a use would be able to use our :ribbon artifact, and maybe by default it assumes Eureka.
If they also include :discovery-jgroups, then our current jgroups-based discovery would be usable.
If they include :discovery-consul, then they get consul.
But I've not looked too deeply yet.  Thanks for the contribution!

@bobmcwhirter that sounds like a great plan.
On a related note, have you thought about configuration support? Given there is already Archaius in the project, what do you think of building in support for a configuration server? Again, I am thinking Consul, but support for Zookeeper, maybe even something simple like Github might make sense as a key/value store. Also secret support? Apache Deltaspike has some interesting CDI configuration support, thought there might be a nice way to tie it all together in a CDI-aware JEE friendly way.
I'll work on adding a wildfly-swarm-examples PR, but I'll be out of the office tomorrow / off the grid until Sunday, hopefully it gets done this afternoon, if not by Monday for sure.

So I dove in, and I'm trying to create a more bonafide SPI for discovery/topology management.  I'll scrape your Consul work over to it.
I'll also take responsibility for keeping the -examples happy when I push this, so you don't need to worry about that.
I am 100% clueless regarding configuration wrt Zookeeper, and only know Archaius from Ribbon's own requirements of it.  Probably good to open an issue at our JIRA to track thoughts around that.

ok thanks @bobmcwhirter I'll save my time then.
I created this issue to track dynamic property management. I'll post in the Google groups as well & maybe we can continue the discussion there.
https://issues.jboss.org/browse/SWARM-263

So, here's what we've got at the moment:
https://github.com/wildfly-swarm/wildfly-swarm/commit/5cf64db85
Which has completely separated Ribbon bits from Topology bits.
I've knocked the JGroups implementation over to this:
https://github.com/wildfly-swarm/wildfly-swarm/blob/master/topology-jgroups/runtime/src/main/java/org/wildfly/swarm/topology/jgroups/runtime/JGroupsTopologyConnector.java
Basically we just need to implement a Consul (and Eurkeka) TopologyConnector:
https://github.com/wildfly-swarm/wildfly-swarm/blob/master/topology/runtime/src/main/java/org/wildfly/swarm/topology/runtime/TopologyConnector.java
With enough fraction/configuration/service-activator to stand it up under the well-known SERVICE_NAME.
Such as:
https://github.com/wildfly-swarm/wildfly-swarm/tree/master/topology-jgroups/runtime/src/main/java/org/wildfly/swarm/topology/jgroups/runtime
Next week I plan to move your Consul work to this SPI, and see if any further adjustments are necessary.
The upside of this is that we do not have a proliferation of RibbonWhatever fractions. There's still just Ribbon.
A TopologyConnector can certainly treat advertise() as a no-op, but if it can advertise, I think it'd be good to implement that portion.  Else, it's a read-only topology, really. (or externally-managed).
In general, I think these changes should make it easier to slot in other topology-management mechanisms.
One major change, which might break your apps, is ribbon-webapp has become topology-webapp and the /ribbon/ribbon.js has become /topology/topology.js.
Another benefit though, is that topology bits can be used without Ribbon at all, if there's any need for that, or if someone wants to use a different load-balancing client other than Ribbon.

@bobmcwhirter this looks like a great improvement... definitely closer to what I had in mind. Thanks for all the work!
As for TopologyConnector / service advertising... With Eureka or Consul advertising involves a TTL such that services that no longer provide a heartbeat check in will be automatically unadvertised/deregistered from the topology service... it might be a really good idea for TopologyConnector to understand this, perhaps even with a callback for healthcheck status.
https://github.com/Netflix/eureka/wiki/Understanding-eureka-client-server-communication#renew
Maybe this isn't relevant in the jgroups example, but I think it is fairly critical if registration is to be done in-app.
Also I digress as I don't know if the Swarm project has plans for adding some built-in healthchecks (a nice feature of Spring Cloud) but if so this might tie in neatly with deregistering if any healthcheck fails.
What do you want me to do with this PR? Do you want me to rebase your commit into it? Should I close it and you open another?
Also, I can certainly re-add my Consul work on top of yours if you're short on time.
Minor, but in the meantime it might be useful to correct some of the Ribbon SSL module dependency issues as well.

I’m currently working on copy/pasta to get your Consul stuff in.  You can
leave this PR open until I commit enough to satisfy it.
A separate PR for Ribbon SSL stuff would be good.
And a JIRA for health-checks in general would be useful.
I’ll work on adding a TTL/healthcheck to the topology SPI bits as I go with
your Consul stuff.
On Mon, Jan 25, 2016 at 12:11 PM, jhovell<EMAIL_ADDRESS>wrote:

@bobmcwhirter https://github.com/bobmcwhirter this looks like a great
improvement... definitely closer to what I had in mind. Thanks for all the
work!
As for TopologyConnector / service advertising... With Eureka or Consul
advertising involves a TTL such that services that no longer provide a
heartbeat check in will be automatically unadvertised/deregistered from the
topology service... it might be a really good idea for TopologyConnector to
understand this, perhaps even with a callback for healthcheck status.
https://github.com/Netflix/eureka/wiki/Understanding-eureka-client-server-communication#renew
Maybe this isn't relevant in the jgroups example, but I think it is fairly
critical if registration is to be done in-app.
Also I digress as I don't know if the Swarm project has plans for adding
some built-in healthchecks (a nice feature of Spring Cloud) but if so this
might tie in neatly with deregistering if any healthcheck fails.
What do you want me to do with this PR? Do you want me to rebase your
commit into it? Should I close it and you open another?
Also, I can certainly re-add my Consul work on top of yours if you're
short on time.
Minor, but in the meantime it might be useful to correct some of the
Ribbon SSL module dependency issues as well.
—
Reply to this email directly or view it on GitHub
https://github.com/wildfly-swarm/wildfly-swarm/pull/182#issuecomment-174588985
.

I think this has been accomplished via:
https://github.com/wildfly-swarm/wildfly-swarm/commit/96e1947b66301d5a9ebed0b1ec522dc0cb3ef424
Closing this PR. Let's do another for the SSL bits and any improvements to the Consul support in general.
Thanks again!


Add accounts.authority_id to serve as a new unique account identifier.

Description
Adds a new authority_id field to Accounts to serve as a unique ID. Email is not unique in OIDC but that has been assumed and relied on.

This adds the DB table and accessors for the new account id.


add mysql_stmt_insert_id binding

Add bindings for mysql_stmt_insert_idhttps://mariadb.com/kb/en/mysql_stmt_insert_id/

I think this is a useful addition, but can you trim spaces at end-of-file and extend or add a test case?

I'll accept this without a test case, as well, as the test suite needs some attention and I'd like #52 merged first.

Please remove spaces at end-of-line.

Removed an extra space in 2a7e304 (#58).

There were three cases, you can see them with git grep '\s\+$'.

There were three cases, you can see them with git grep '\s\+$'.

Thanks, for whatever reason they're not shown in files changes in github 🤷♂

There were three cases, you can see them with git grep '\s\+$'.

Thanks, for whatever reason they're not shown in files changes in github 🤷♂

Yeah, I noticed.
Thanks for the contribution!