Unable to specify the type for sqlite pool

Setup
Versions

Rust: rustc 1.80.0 (051478957 2024-07-21)
Diesel: 2.2.0
Diesel_async: 0.5
Database: sqlite
Operating System Linux mi 6.10.3-zen1-2-zen #1 ZEN SMP PREEMPT_DYNAMIC Tue, 06 Aug 2024 07:47:21 +0000 x86_64 GNU/Linux (arch)

Feature Flags

diesel: chrono, returning_clauses_for_sqlite_3_35
diesel_async: sync-connection-wrapper, async-connection-wrapper, sqlite, deadpool

Problem Description
Unable to write out the type for sqlite pooled connection.
What are you trying to accomplish?
Using pooled connection for teloxide, it does dependency injection based on type, however I am unable to explicitly put out the type Pool<AsyncDieselConnectionManager<SyncConnectionWrapper<SqliteConnection>>>. The inferred type from rust-analyzer

What is the expected output?
The inferred type should be usable when explicitly typed down.
let _pool: Pool<AsyncDieselConnectionManager<SyncConnectionWrapper<SqliteConnection>>> = Pool::builder(config).build().unwrap();

What is the actual output?

Are you seeing any additional errors?
errors
error[E0277]: the trait bound `AsyncDieselConnectionManager<SyncConnectionWrapper<SqliteConnection>>: PoolableConnection` is not satisfied
   --> src/main.rs:14:16
    |
14  |     let _pool: Pool<AsyncDieselConnectionManager<SyncConnectionWrapper<SqliteConnection>>> = Pool::builder(co...
    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `PoolableConnection` is not implemented for `AsyncDieselConnectionManager<SyncConnectionWrapper<SqliteConnection>>`, which is required by `AsyncDieselConnectionManager<AsyncDieselConnectionManager<SyncConnectionWrapper<SqliteConnection>>>: deadpool::managed::Manager`
    |
    = help: the trait `PoolableConnection` is implemented for `SyncConnectionWrapper<C>`
    = note: required for `AsyncDieselConnectionManager<AsyncDieselConnectionManager<SyncConnectionWrapper<SqliteConnection>>>` to implement `deadpool::managed::Manager`
note: required by a bound in `deadpool::managed::Pool`
   --> /home/ivan/.cargo/registry/src/index.crates.io-6f17d22bba15001f/deadpool-0.12.1/src/managed/mod.rs:249:20
    |
249 | pub struct Pool<M: Manager, W: From<Object<M>> = Object<M>> {
    |                    ^^^^^^^ required by this bound in `Pool`

error[E0277]: the trait bound `AsyncDieselConnectionManager<SyncConnectionWrapper<SqliteConnection>>: DerefMut` is not satisfied
   --> src/main.rs:14:16
    |
14  |     let _pool: Pool<AsyncDieselConnectionManager<SyncConnectionWrapper<SqliteConnection>>> = Pool::builder(co...
    |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `DerefMut` is not implemented for `AsyncDieselConnectionManager<SyncConnectionWrapper<SqliteConnection>>`, which is required by `AsyncDieselConnectionManager<AsyncDieselConnectionManager<SyncConnectionWrapper<SqliteConnection>>>: deadpool::managed::Manager`
    |
    = help: the trait `deadpool::managed::Manager` is implemented for `AsyncDieselConnectionManager<C>`
    = note: required for `AsyncDieselConnectionManager<SyncConnectionWrapper<SqliteConnection>>` to implement `AsyncConnection`
    = note: required for `AsyncDieselConnectionManager<AsyncDieselConnectionManager<SyncConnectionWrapper<SqliteConnection>>>` to implement `deadpool::managed::Manager`
note: required by a bound in `deadpool::managed::Pool`
   --> /home/ivan/.cargo/registry/src/index.crates.io-6f17d22bba15001f/deadpool-0.12.1/src/managed/mod.rs:249:20
    |
249 | pub struct Pool<M: Manager, W: From<Object<M>> = Object<M>> {
    |                    ^^^^^^^ required by this bound in `Pool`

error[E0308]: mismatched types
  --> src/main.rs:14:94
   |
14 | ...l: Pool<AsyncDieselConnectionManager<SyncConnectionWrapper<SqliteConnection>>> = Pool::builder(config).build().unwrap...
   |       ---------------------------------------------------------------------------   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `AsyncDieselConnectionManager<SyncConnectionWrapper<...>>`, found `SyncConnectionWrapper<SqliteConnection>`
   |       |
   |       expected due to this
   |
   = note: expected struct `Pool<AsyncDieselConnectionManager<AsyncDieselConnectionManager<...>>>`
              found struct `deadpool::managed::Pool<AsyncDieselConnectionManager<SyncConnectionWrapper<SqliteConnection>>>`
   = note: the full type name has been written to '/home/ivan/src/pickfire/rs/diesel-async-pool/target/debug/deps/diesel_async_pool-d703ecf4a14c8b60.long-type-12503167683362586601.txt'
   = note: consider using `--verbose` to print the full type name to the console

Some errors have detailed explanations: E0277, E0308.
For more information about an error, try `rustc --explain E0277`.
error: could not compile `diesel-async-pool` (bin "diesel-async-pool") due to 3 previous errors

Steps to reproduce

cargo new diesel-async-pool
Add the following code

src/main.rs
use diesel::sqlite::SqliteConnection;
use diesel_async::pooled_connection::deadpool::Pool;
use diesel_async::pooled_connection::AsyncDieselConnectionManager;
use diesel_async::sync_connection_wrapper::SyncConnectionWrapper;

#[tokio::main]
async fn main() {
    let db_url = std::env::var("DATABASE_URL").expect("Env var `DATABASE_URL` not set");

    let config =
        AsyncDieselConnectionManager::<SyncConnectionWrapper<SqliteConnection>>::new(db_url);
    let _pool = Pool::builder(config).build().unwrap();
    // putting the type fails
    let _pool: Pool<AsyncDieselConnectionManager<SyncConnectionWrapper<SqliteConnection>>> = Pool::builder(config).build().unwrap();
}

Cargo.toml
[package]
name = "diesel-async-pool"
version = "0.1.0"
edition = "2021"

[dependencies]
tokio = { version = "1.28.2", default-features = false, features = ["macros", "rt-multi-thread", "sync"] }
diesel = { version = "2.2.0", default-features = false, features = ["chrono", "returning_clauses_for_sqlite_3_35"] }
diesel-async = { version = "0.5", features = ["sync-connection-wrapper", "async-connection-wrapper", "sqlite", "deadpool"] }

Run cargo check

Checklist

[x] I have already looked over the issue tracker for similar possible closed issues.

[x] This issue can be reproduced on Rust's stable channel. (Your issue will be
closed if this is not the case)
[x] This issue can be reproduced without requiring a third party crate

This is expected behaviour as you mixed up the pool types. deadpool advises that crates implementing the necessary pool traits provide an reexported pool type that already contains the right connection manager. That makes diesel_async::pooled_connection::deadpool::Pool<SyncConnectionWrapper<SqliteConnection>> the correct type in this location.
This can be seen in the error message that mentions double nested AsyncConnectionManager constructs and in the documentation of the Pool type.
I know that quite a few people seem to struggle with this behavior, but given that this is what upstream documents (by recommending using this macro) that downstream providers should do I'm not sure how to address that in a better way.
(Leaving this open for now, as we certainly need to find some way to address this in the documentation)

Not sure if we should create an issue in deadpool too but cc @bikeshedder for visibility.

What's the issue with the managed_reexports macro?
The reason for it to exist were constant mixups in the deadpool-* crates where I made a "small" type errors. With the macros it's basically impossible to mess up the reexports and they're guaranteed to be consistent for all deadpool-* crates.

Just wanted to add. You're of course free to not use this macro. It's merely a convenience tool and part of the public API which makes writing deadpool powered pool implementations easier and more consistent.

What's the issue with the managed_reexports macro?

The "problem" here is that the managed_reexports macro encourages reexporting a Pool type with the manager type already filled in. For diesel-async I followed that pattern, but as the manager itself is generic over the connection type users still end up with a Pool<T> type, and some of the users seem to miss the difference between deadpool::Pool and diesel_async::pooled_connection::deadpool::Pool, which results in a duplicated AsyncConnectionManager in the type, which in turn is problematic. Maybe better documentation can solve this, maybe it requires some additional changes.

Just wanted to add. You're of course free to not use this macro. It's merely a convenience tool and part of the public API which makes writing deadpool powered pool implementations easier and more consistent.

I could, but it would make the API inconsistent with the other deadpool crates.

How about creating separate modules that contain the reexports for each connection type? That's exactly what I did in deadpool-diesel. e.g. https://github.com/bikeshedder/deadpool/blob/master/diesel/src/postgres.rs
It's rare that one wants to target multiple databases in a single code base and those could still use the generic Pool<T>.

That would be a possibility for the built-in connection types, but I would prefer to keep things in such a way that third party connection types can get the same level of integration as the first party ones.


Adding support to mysql

Hello aaronabramov
I need this update
Thanks

Thanks for this

Published in https://www.npmjs.com/package/sql-migrations/v/1.0.5


[SPARK-16208][SQL] Add CollapseEmptyPlan optimizer

What changes were proposed in this pull request?
This PR adds a new logical optimizer, CollapseEmptyPlan, to collapse a logical plain consisting of only empty LocalRelations.
Before
scala> sql("select a from (select explode(array(1,2,3)) a) where 1=0 group by a having count(*)>1 order by a").explain
== Physical Plan ==
*Sort [a#15 ASC], true, 0
+- Exchange rangepartitioning(a#15 ASC, 200)
   +- *Project [a#15]
      +- *Filter (count(1)#17L > 1)
         +- *HashAggregate(keys=[a#15], functions=[count(1)])
            +- Exchange hashpartitioning(a#15, 200)
               +- *HashAggregate(keys=[a#15], functions=[partial_count(1)])
                  +- Generate explode([1,2,3]), false, false, [a#15]
                     +- LocalTableScan <empty>

After
scala> sql("select a from (select explode(array(1,2,3)) a) where 1=0 group by a having count(*)>1 order by a").explain
== Physical Plan ==
LocalTableScan <empty>, [a#15]

How was this patch tested?
Pass the Jenkins tests (including a new testsuite).

Test build #61228 has started for PR 13905 at commit db0aeb9.

Test build #61228 has finished for PR 13905 at commit db0aeb9.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/61228/
Test FAILed.

Test build #61230 has started for PR 13905 at commit cb57522.

Test build #61230 has finished for PR 13905 at commit cb57522.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/61230/
Test FAILed.

Test build #61234 has started for PR 13905 at commit 34043a0.

Test build #61234 has finished for PR 13905 at commit 34043a0.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/61234/
Test PASSed.

Merged build finished. Test PASSed.


Separate blockly core into a shared library across BTs, PDDL and FSMs

@eng-r, new branch, develop, has the new shared components under lib/. "Apps" under src/ have links to the shared components. Tested working for src/pddl/

@aganil, are we ready to merge the related branch one?

Completed with PR #38


[Conf] Add controller start config file

Add the configuration file for startup controller to the configuration file directory. when controller Independent Deployment.

Well, thanks for you attention, could you please submit a pr to add it?

Well, thanks for you attention, could you please submit a pr to add it?

yes I will submit a PR for this


CSS is applied in one test but not the other

This screenshot appears to be artificially darker in colour than it is supposed to be. When we compare it to a screenshot generated with our previous tool, BackstopJS, you can see that the Percy screenshot is noticeably darker: the font colour is closer to black than grey, and even the border around the search input, and the magnifying glass icon, are all darker than they are in the backstop image.
I have also reached out to support@ and provided the link to the build. Posting here, as well. I have also provided the screenshots since I cannot share them publicly.
Our stack is Ember + QUnit. @percy/cli is "^1.0.0-beta.54" and @percy/ember is "^3.0.0".
Let me know if there is any other information I can provide.

Hey @twokul! The title suggests that there are snapshots with missing resources/assets. If so, it'd be great to have a link to a broken & also a working snapshot.
But, this makes me think otherwise:

When we compare it to a screenshot generated with our previous tool, BackstopJS, you can see that the Percy screenshot is noticeably darker

This is likely due to the difference of OS's and machines that screenshots are captured on. We're capturing screenshots in ubuntu, which won't render the same as a macOS, windows, or various flavors of linux.

@Robdel12 Here is what we see:

in one test, route A (parent) is visited, which has all the colours correctly applied, fonts rendered, CSS looks correct
in another test, route B (child of A) is visited, which does not have the colours applied correctly &  fonts rendered

You are correct to say that macOS, Windows and Linux have differences when it comes to some of the HTML controls (<input type="range">, for example) and font rendering. I am not sure if this is the case here, though.

The title suggests that there are snapshots with missing resources/assets. If so, it'd be great to have a link to a broken & also a working snapshot.

I do not think I can share the screenshots publicly, unfortunately. I did provide them in the email thread when I reached out to<EMAIL_ADDRESS>

Gotcha, I pulled up the ticket (I don't work support anymore, but I'll help out here). I'm confused as to what's going on/what the ask is. Are you looking to get Percy to match what Backstop renders? Or are you seeing Percy renders flip/change (like there are diffs in the snapshot)?
I haven't spotted any diffs in snapshots where fonts/things aren't loading (or flapping diffs in your builds). The linked snapshots in the email chain don't have any diffs. It seems like the ask is to get Percy to match what Backstop is outputting? This appears to be a difference between where the screenshot is captured. Percy's will be different from backstop, but it will be consistent (the machines/os/browser doesn't change)

Gotcha, I pulled up the ticket (I don't work support anymore, but I'll help out here)

Thanks much, I appreciate that! 🤝

I'm confused as to what's going on/what the ask is.

As I mentioned in my previous comment: we see the CSS applied in one test but not the other. The fonts load correctly, indeed, but the CSS is not applied correctly (particularly, the colour of the text, grey vs. black.)
The confusing bit to me is how can the styles work in one test and not the other when they "boot up" the same application with the same set of styles? 🤔
If you open this build:

screenshots 27, 28 and 29 look black & white (they are not supposed to given the CSS in our application)
screenshot 26 looks correct (the CSS was applied correctly)

Same application, same route 😬

It seems like the ask is to get Percy to match what Backstop is outputting?

Not at all, that would be unreasonable, imo 😄 The backstop screenshot was provided only to demonstrate how the page is supposed to look when everything is captured correctly.


nano-wallet: init at 12.1

Motivation for this change
NOTE: This is work in progress. Hope to get some help and feedback here.
Ready to merge now
This is a wallet for the Nano cryptocurrency (previously known as Raiblocks).

https://nano.org/en/wallet/
https://github.com/nanocurrency/raiblocks

Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

I updated cmake to 3.11.1 but still got the same error.

It looks as if those libraries don't exist in boost 1.66, only in other versions:
$ nix-locate boost_date_time
boost.out                                             0 s /nix/store/jyqzqqlz6xflv17k96m10qh8r8625274-boost-1.65.1/lib/libboost_date_time.so
boost.out                                        93,528 x /nix/store/jyqzqqlz6xflv17k96m10qh8r8625274-boost-1.65.1/lib/libboost_date_time.so.1.65.1
boost159.out                                          0 s /nix/store/wxxbx95qx911zmid07my7l6ng9272lyp-boost-1.59.0/lib/libboost_date_time.so
boost159.out                                     97,496 x /nix/store/wxxbx95qx911zmid07my7l6ng9272lyp-boost-1.59.0/lib/libboost_date_time.so.1.59.0
boost164.out                                          0 s /nix/store/xkbgk23p15fbng3594wl9mj2951jayjs-boost-1.64.0/lib/libboost_date_time.so
boost164.out                                     93,344 x /nix/store/xkbgk23p15fbng3594wl9mj2951jayjs-boost-1.64.0/lib/libboost_date_time.so.1.64.0
boost155.out                                          0 s /nix/store/g9cnchkmqn0ad4qh2rnnj27fr8yggndh-boost-1.55.0/lib/libboost_date_time.so
boost155.out                                     97,256 x /nix/store/g9cnchkmqn0ad4qh2rnnj27fr8yggndh-boost-1.55.0/lib/libboost_date_time.so.1.55.0
boost160.out                                          0 s /nix/store/dwnn9wpzcqph9337bv7k59b1q28zxxh0-boost-1.60.0/lib/libboost_date_time.so
boost160.out                                     93,272 x /nix/store/dwnn9wpzcqph9337bv7k59b1q28zxxh0-boost-1.60.0/lib/libboost_date_time.so.1.60.0
boost162.out                                          0 s /nix/store/argiiirlbch51dnmv9jagc9741fridmq-boost-1.62.0/lib/libboost_date_time.so
boost162.out                                     93,272 x /nix/store/argiiirlbch51dnmv9jagc9741fridmq-boost-1.62.0/lib/libboost_date_time.so.1.62.0
boost163.out                                          0 s /nix/store/012czf6nbqqk3mjyd4qz39nwv9lqfq5i-boost-1.63.0/lib/libboost_date_time.so
boost163.out                                     93,344 x /nix/store/012czf6nbqqk3mjyd4qz39nwv9lqfq5i-boost-1.63.0/lib/libboost_date_time.so.1.63.0
python36Packages.boost.out                            0 s /nix/store/g2ia26w0y81jhb83950ggflqiw7bmgjr-boost-1.65.1/lib/libboost_date_time.so
python36Packages.boost.out                       93,528 x /nix/store/g2ia26w0y81jhb83950ggflqiw7bmgjr-boost-1.65.1/lib/libboost_date_time.so.1.65.1
autoconf-archive.out                              4,510 r /nix/store/6hskp2vbvvbz2lz5cvvp6wj9yz9gmxip-autoconf-archive-2017.03.21/share/aclocal/ax_boost_date_time.m4

However, build requires boost 1.66, it raises an error otherwise..

I guess the problem is that the nano wallet is forcing static libraries: https://github.com/nanocurrency/raiblocks/blob/V12.1/CMakeLists.txt#L122
I'll try patching that line and see if I can then set Boost_USE_STATIC_LIBS to OFF.

Yes! That was it! So that is solved. Now I'm getting the following error:
CMake Error at CMakeLists.txt:356 (qt5_add_resources):
  Unknown CMake command "qt5_add_resources".

-- Configuring incomplete, errors occurred!
See also "/build/source/build/CMakeFiles/CMakeOutput.log".
See also "/build/source/build/CMakeFiles/CMakeError.log".
builder for '/nix/store/2z1c5w329c9x0n31q6z882af86cw9r7j-nano-wallet-12.1.drv' failed with exit code 1
error: build of '/nix/store/2z1c5w329c9x0n31q6z882af86cw9r7j-nano-wallet-12.1.drv' failed

Gotta see how to add those Qt5 resources some other day. Any pointers are appreciated, because I have no idea at the moment but will of course dig into it.

Ok, solved that one and a bunch of other failures. Now I'm getting this error:

[ 94%] Building CXX object CMakeFiles/qt.dir/rai/qt/qt.cpp.o
In file included from /nix/store/8ba9lhzdr13w4vqpam9ss52cq5svrpbk-qtbase-5.10.1-dev/include/QtGui/QtGui:43:0,
                 from /build/source/rai/qt/qt.hpp:9,
                 from /build/source/rai/qt/qt.cpp:1:
/nix/store/8ba9lhzdr13w4vqpam9ss52cq5svrpbk-qtbase-5.10.1-dev/include/QtGui/qopengl.h:141:13: fatal error: GL/gl.h: No such file or directory
 #   include <GL/gl.h>
             ^~~~~~~~~
compilation terminated.
make[3]: *** [CMakeFiles/qt.dir/build.make:63: CMakeFiles/qt.dir/rai/qt/qt.cpp.o] Error 1
make[2]: *** [CMakeFiles/Makefile2:634: CMakeFiles/qt.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:693: CMakeFiles/nano_wallet.dir/rule] Error 2
make: *** [Makefile:381: nano_wallet] Error 2
builder for '/nix/store/zbljdf8kx5nz404ki99aln0rjzh1ds6h-nano-wallet-12.1.drv' failed with exit code 2
error: build of '/nix/store/zbljdf8kx5nz404ki99aln0rjzh1ds6h-nano-wallet-12.1.drv' failed

I don't understand. As far as I understand, I've added GL/gl.h to include path...

Ok, thanks to some tips, that's solved too. Needed to add mesa as a build input instead. Continuing now with other build failures...

The name is now nano-wallet. Should it be nano_wallet or nanoWallet? The executable is nano_wallet.

I'm afraid this had sat long enough that it no longer evaluates on master due to the mesa changes. Can you try and rebase and look into that?

@srhb Thanks, should be fixed now! (I rebased on nixos-unstable..)

@GrahamcOfBorg build nano-wallet

Failure on x86_64-darwin (full log)
Attempted: nano-wallet
Partial log (click to expand)

CMake Error at CMakeLists.txt:456 (file):
  file COPY cannot find
  "/nix/store/1gxrz5f25g28pi75hlzax796wysb4wck-qtbase-5.10.1-dev/lib/cmake/Qt5/../../../plugins/platforms/libqcocoa.dylib".

-- Configuring incomplete, errors occurred!
See also "/tmp/nix-build-nano-wallet-12.1.drv-0/source/build/CMakeFiles/CMakeOutput.log".
builder for '/nix/store/vzsdc4k6cij3xc2xk6m10440xk1nc0b5-nano-wallet-12.1.drv' failed with exit code 1
error: build of '/nix/store/vzsdc4k6cij3xc2xk6m10440xk1nc0b5-nano-wallet-12.1.drv' failed

Success on x86_64-linux (full log)
Attempted: nano-wallet
Partial log (click to expand)
shrinking RPATHs of ELF executables and libraries in /nix/store/6kcmfqkylxga47vy97mx99rylmwhdsji-nano-wallet-12.1
shrinking /nix/store/6kcmfqkylxga47vy97mx99rylmwhdsji-nano-wallet-12.1/bin/nano_wallet
shrinking /nix/store/6kcmfqkylxga47vy97mx99rylmwhdsji-nano-wallet-12.1/bin/rai_node
shrinking /nix/store/6kcmfqkylxga47vy97mx99rylmwhdsji-nano-wallet-12.1/lib/librai_lib.so
strip is /nix/store/j75dgadrff2d1fyc4fczmcgqkid2imdx-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/6kcmfqkylxga47vy97mx99rylmwhdsji-nano-wallet-12.1/lib  /nix/store/6kcmfqkylxga47vy97mx99rylmwhdsji-nano-wallet-12.1/bin
patching script interpreter paths in /nix/store/6kcmfqkylxga47vy97mx99rylmwhdsji-nano-wallet-12.1
checking for references to /build in /nix/store/6kcmfqkylxga47vy97mx99rylmwhdsji-nano-wallet-12.1...
postPatchMkspecs
/nix/store/6kcmfqkylxga47vy97mx99rylmwhdsji-nano-wallet-12.1

I have no idea how to fix that build error on Darwin...

@jluttine OK, could you limit meta.platforms to linux then? Should be good to go then. :)

@srhb Ok, done!

Success on aarch64-linux (full log)
Attempted: nano-wallet
Partial log (click to expand)
shrinking RPATHs of ELF executables and libraries in /nix/store/wjryyibr7pjfq3h6h6pck3gzbjgmnzxs-nano-wallet-12.1
shrinking /nix/store/wjryyibr7pjfq3h6h6pck3gzbjgmnzxs-nano-wallet-12.1/lib/librai_lib.so
shrinking /nix/store/wjryyibr7pjfq3h6h6pck3gzbjgmnzxs-nano-wallet-12.1/bin/rai_node
shrinking /nix/store/wjryyibr7pjfq3h6h6pck3gzbjgmnzxs-nano-wallet-12.1/bin/nano_wallet
strip is /nix/store/gp7fylxwn18b7pl2c18ks89hsiaxyfvf-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/wjryyibr7pjfq3h6h6pck3gzbjgmnzxs-nano-wallet-12.1/lib  /nix/store/wjryyibr7pjfq3h6h6pck3gzbjgmnzxs-nano-wallet-12.1/bin
patching script interpreter paths in /nix/store/wjryyibr7pjfq3h6h6pck3gzbjgmnzxs-nano-wallet-12.1
checking for references to /build in /nix/store/wjryyibr7pjfq3h6h6pck3gzbjgmnzxs-nano-wallet-12.1...
postPatchMkspecs
/nix/store/wjryyibr7pjfq3h6h6pck3gzbjgmnzxs-nano-wallet-12.1


create temporary repositories for write operations

I discussed with @kytrinyx that the repositories we create with the fixtures accounts and on the fixtures organization are all to be used read-only. For scenarios that need write operations, temporary repositories should be created.
I’ll make a follow up PR for https://github.com/gr2m/octokit-fixtures/pull/16 to create a temporary repository the "add and remove repository collaborators" test

all to be used read-only

I don't necessarily think all of them should be, but it would be nice to have at least one that is so that we can have clear expectations.


Getting Logged out of my Google Account

Describe the bug
When I use the script, when it's executed I get logged out of the Google Account of my Android phone.
To Reproduce
I have developed an script for Home Assistant that loads the alarms from my Lenovo Smart Clock, and loads them. When I use the script with the following sensor configuration:
  - platform: command_line
    command: /home/homeassistant/clock.sh
    name: alarms
    scan_interval: 30
    json_attributes:
      - alarm
      - timer
    value_template: "{{ value_json.alarm[0] }}"

when it gets executed, my Google Account at my Android Phone gets bugged, and asks me to log in again, blocking the use of any Google App at my device until I log in again.
Expected behavior
I should not get logged out.
Server:

OS: Raspbian OS
Version: Linux emonpi 5.10.11-v8+ #1399 SMP PREEMPT Thu Jan 28 12:14:03 GMT 2021 aarch64 GNU/Linux
Platform: Home Assistant (2021.2.0)
Python Version: 3.8.7

Smartphone (please complete the following information):

Device: Google Pixel 3a
OS: Android
Version: 11 (RQ1A.210205.004)

Additional context
I'm using an app password instead of my Google's Account password.

Stopped happening with some of my own code modifications. Not sure of what could be the problem, but closing... I guess

I have been experiencing the same type of bug. Pi hole were the problem for me. Some of the libraries that this and other python based scripts/integration/packages rely on. One of these libraries have a problem with authenticating with google servers correctly. It is as of now a problem on googles servers, but a solution have been made to fix it(until google them self fixes there problem), but not all projects have the updated dependency yet. see Here
Weird problems happen on google's side when a connection fails. That is my experience with it anyway.
Hope this help's you if your problem persists.
Simon

Thanks, Simon(@DurgNomis-drol).
@ArnyminerZ, feel free to open PR if some of your code modifications might be helpful for the others

Nevermind, my problem wasn't fixed. I think that the error occurs when you try to fetch the master token, but if you store it, it won't log me out.
More testing is required to confirm.

I am having the same problem, and is also trying to fix it right now. I have also suspected it was some thing to do with fetching the master token, but glad i m not only one who have come to that conclusion. Please share you're findings, i will do the same

I think i have found out how to solve the problem. You should only initialize this once, and then call get_google_devices_json() as often as you want to update/get timers or alarms.
client = GLocalAuthenticationTokens(   username='<YOUR_GOOGLE_USERNAME>',   password='<YOUR_GOOGLE_PASSWORD>' )
Your code modifications only works if your initialize this one time. Else you will still be hammering google services and it doesnt like that. Thats why you get disconnected(Me too) constantly.

Great find, @DurgNomis-drol!
We should make sure we have that logic in ha-glocaltokens to avoid disconnection and spamming google services with constant re-authentication


Fixed CPU crash

Description of changes:
What was the issue?

When Instantiating and iterating a StreamingDataset or doing a model training on a CPU based Instance / Single GPU based instance, it crashes with ValueError: Error initializing torch.distributed using env:// rendezvous: environment variable MASTER_ADDR expected, but not set.

Why was it not caught before?

The Streaming repository unit test was importing an environment variables MASTER_ADDR and a MASTER_PORT in the conftest.py file. Hence, it was not caught during unit test.

What have you done to resolve the issue?
This PR does 2 things to fix the issue:

Check if it is a non-distributed environment and skip the distributed initialization if it is a non-distributed workload.
Remove the MASTER_ADDR and MASTER_PORT environment variables from the unit test.

Issue #, if available:
CO-1771

Merge Checklist:
Put an x without space in the boxes that apply. If you are unsure about any checklist, please don't hesitate to ask. We are here to help! This is simply a reminder of what we are going to look for before merging your pull request.
General

[x] I have read the contributor guidelines
[ ] This is a documentation change or typo fix. If so, skip the rest of this checklist.
[x] I certify that the changes I am introducing will be backward compatible, and I have discussed concerns about this, if any, with the MosaicML team.
[x] I have updated any necessary documentation, including README and API docs (if appropriate).

Tests

[x] I ran pre-commit on my change. (check out the pre-commit section of prerequisites)
[ ] I have added tests that prove my fix is effective or that my feature works (if appropriate).
[x] I ran the tests locally to make sure it pass. (check out testing)
[x] I have added unit and/or integration tests as appropriate to ensure backward compatibility of the changes.

Is this a hang or a crash? Also please add details on how this was tested, what the original test escape was and how it has been mitigated.

It was a crash. Also, updated the description. Thanks!


Cannot assign variable in Tensorflow-Lite: "incompatible with expected resource"

Summary
I cannot get variable assignment to work in TFLite.
I've made a minimal-possible graph for just doing a cumulative sum.
When I try to save the graph as a TFLite model, I get
Cannot assign variable in Tensorflow-Lite: "incompatible with expected resource"

1. System information

OS Platform and Distribution (e.g., Linux Ubuntu 16.04): macOS Monterey, 12.2.1
TensorFlow installation (pip package or built from source): Conda, from conda install -c apple tensorflow==2.8.1
TensorFlow library (version, if pip package or github SHA, if built from source): 2.8.1

2. Code
Provide code to help us reproduce your issues using one of the following options:
Option A: Reference colab notebooks
This colab notebook reproduces the issue:
https://colab.research.google.com/drive/1KPjHhlCMVs2oFxodrFAO7YcPrfBADC2k?usp=sharing
See also: Stackoverflow Question
https://stackoverflow.com/questions/73327824/cannot-assign-variable-in-tensorflow-lite-incompatible-with-expected-resource

Hi @rthadur !
Could you look at this issue. Attached gist in 2.8, 2.9 and nightly for reference.
Thank you!

Ok, I found a workaround for this.  See answer to stackoverflow question.
Basically, variable-assignment only works when loading the converter from:
converter = tf.lite.TFLiteConverter.from_saved_model(saved_model_dir)

Colab notebook with solution: https://colab.research.google.com/drive/1Ud3lcyweOIeHRUgsoqr7-kBxndZSSBcH
Up to you guys whether you want to close this ticket - two possible improvements that could come out of this:

A more obvious error message that points to the solution.
Enable variable assignment when creating the converter with TFLiteConverter.from_concrete_functions

Hi @petered !
Could you suggest a PR for review.
Thank you!

Thanks for reporting the issue.
Ideally TFLiteConverter.from_concrete_functions should track the variable name scope same way as TFLiteConverter. from_saved_model.
We will investigate further and update you. Thanks!

Hi,
Thank you for opening this issue. Since this issue has been open for a long time, the code/debug information for this issue may not be relevant with the current state of the code base.
The TFLite team is constantly improving the framework by fixing bugs and adding new features. We suggest you try the latest TensorFlow version with the latest compatible hardware configuration which could potentially resolve the issue. If you are still facing the issue, please create a new GitHub issue with your latest findings, with all the debugging information which could help us investigate.
Please follow the release notes to stay up to date with the latest developments which are happening in the TFLite space.


Callback and transitionEnd fire twice. Why ?

I have 4 bullets points. And I noticed the function callback and transitionEnd fire twice.
I don't understand why. window.mySwipe is initialized once.
JS :
 <script src="js/swipe-slider.js"></script>
 <script>
    window.mySwipe = new Swipe(document.getElementById('slider'), {
   startSlide: 0,
   speed: 400,
   auto: 2000,
   continuous: true,
   disableScroll: false,
   stopPropagation: true,
   callback: function(index, elem) {
	console.log("callback: " + index);
   },
   transitionEnd: function(index, elem) {
	console.log("-");
   }
  });
 </script>

OUTPUT CONSOLE :

Finally, I removed "auto: 2000" and I used a recursive function by calling "window.mySwipe.next();"


engine: Add command to export the volume

There is a WIP PR for this: https://github.com/rancher/longhorn-engine/pull/325

https://github.com/rancher/longhorn-engine/pull/335

There are a few improvements can be done:

[ ] Rename restore-to command to restore-to-file and put it under backup subcommand.
[ ] Use the first argument of the command as backup-url instead of specifying it explicitly. Obvious without this parameter the command won't work. (see https://github.com/rancher/longhorn-engine/blob/master/app/backup.go#L120 for example)
[ ] Rename image-format to output-format to keep consistent with output-file. And if output-format changed, the output-file should change the extension automatically (this can be added to the integration test case)
[ ] Create a document on how to use this command to restore an image to file. For Kubernetes, it would need to be run in a pod with the correct environment set up, and by default store the image in a user-specified host bind-mounted location.

Done


Creating new prefix via API

Issue type
[x ] Feature request
[ ] Bug report
[ ] Documentation

Environment

Python version:  3.4.3
NetBox version:  2.3.2

Description
I am trying to create a new prefix via the API. However I am not able to find any documentation about it. I figured out how to create a child prefix on top of prefix ID, but not how to create a parent prefix. Is there such feature in the API?

Thank you for your interest in NetBox. GitHub issues are intended for reporting reproducible bugs and requesting features, and must be submitted using the template provided here. For general discussion, questions, or assistance with installation issues, please post to our mailing list.


fix style of todomvc filter links

Cursor value should be 'pointer'.

What about IE5?? :wink:
Thanks!

😇


Edit Post: URL is revealing post title before it becomes public

When editing a blot post the Title shouldn't be visible in the URL, because its essentially leaking data when a post is not Public yet.
Example: https://www.ramblingware.com/manage/editpost/some-of-my-favorite-ios-apps
It should be hidden with the post ID or possibly a hash value.

This isn't necessary.


[Feature Request] Set context for entire file using single command

It would be a good feature to have a single command
mx.context.set_context('gpu')
whereby below that line, all the MXNet functions would be run with the context as gpu
Current scenario: Use ctx parameter for every single function.
Instead of asking the user to mention ctx for every function, one command per file would improve the user experience.

@mxnet-label-bot [add Feature Request]

mx.test_utils.set_default_context does this.


alerts not being cleared

Describe the bug
Yap shows a warning if there is a phone number that is missing the Twilio Call Status Changes Callback status.php webhook. The warning is not removed when the webhook is added.
This seems like a low priority bug, since it's easy to work around it by manually removing the entry from the alerts table.
What version are you running?
4.2.8
Did this happen on prior versions to the one you are running?
don't know
To Reproduce
Steps to reproduce the behavior:

Remove the status.php webhook from a test number.
Call yap using the test number.
Log in to yap.  It should display a warning box next to the status box.  Log out.
Add the status.php webhook back to the test number.
Call yap again.
The warning is still there.

Expected behavior
The warning should be removed once the problem is fixed.
Warning displayed
Here is the text of the warning:
{"status":true,"message":"Ready To Yap!","warnings":"+12062229379 is\/are phone numbers that are missing Twilio Call Status Changes Callback status.php webhook. This will not allow call reporting to work correctly.  For more information review the documentation page https:\/\/github.com\/bmlt-enabled\/yap\/wiki\/Call-Detail-Records.","version":"4.2.8","build":"7a01761f5cba076607a3de86db909dbed39ae914"}

Could not repro this issue.  Can you try to cause the error to occur again and then try to fix it by adding the webhook back?  Send a dump back to us.

OK, I did that and emailed the dump and config.php to you.

Ok I'm not seeing any new rows in the records table.  Are you seeing any errors on the status callback in laravel.log?

No - I don't see any errors in larval.log from this test.

Ok there are no records being created since Dec 30th in the records channel.  The status callback is what writes to this table.   So the callback isn’t firing off, which is why the alert isn’t clearing.  My thought was that there is an error, but as you mentioned, there are no errors.
From: Alan B @.>
Date: Sunday, January 29, 2023 at 6:44 PM
To: bmlt-enabled/yap @.>
Cc: Danny Gershman @.>, Comment @.>
Subject: Re: [bmlt-enabled/yap] alerts not being cleared (Issue #714)
No - I don't see any errors in larval.log from this test.
—
Reply to this email directly, view it on GitHubhttps://github.com/bmlt-enabled/yap/issues/714#issuecomment-1407805955, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAOD3O5WQF7BEVYFHEXN253WU36HXANCNFSM6AAAAAAUIAO7DA.
You are receiving this because you commented.Message ID: @.***>

I just remembered this version includes the code for PR #713 ... so I wondered if that could be the reason records aren't being created.  So I installed a fresh copy of yap, without the PR -- I'm still seeing the same behavior as reported though.  And still no records since Dec 30.

are you using specific credentials in the service body confit?
Get Outlook for iOShttps://aka.ms/o0ukef

From: Alan B @.>
Sent: Sunday, January 29, 2023 7:23:45 PM
To: bmlt-enabled/yap @.>
Cc: Danny Gershman @.>; Comment @.>
Subject: Re: [bmlt-enabled/yap] alerts not being cleared (Issue #714)
I just remembered this version includes the code for PR #713https://github.com/bmlt-enabled/yap/pull/713 ... so I wondered if that could be the reason records aren't being created. So I installed a fresh copy of yap, without the PR -- I'm still seeing the same behavior as reported though. And still no records since Dec 30.
—
Reply to this email directly, view it on GitHubhttps://github.com/bmlt-enabled/yap/issues/714#issuecomment-1407818911, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAOD3O7VFGUXL6S7HEIIX43WU4CZDANCNFSM6AAAAAAUIAO7DA.
You are receiving this because you commented.Message ID: @.***>

The configuration for the service body (WNIRNA) includes the twilio account SID and auth token.  This overrides the settings in config.php.  (Is this what you're asking?)

Yes.  Are you setting a service body id query string on your callback url?
Get Outlook for iOShttps://aka.ms/o0ukef

From: Alan B @.>
Sent: Sunday, January 29, 2023 7:30:58 PM
To: bmlt-enabled/yap @.>
Cc: Danny Gershman @.>; Comment @.>
Subject: Re: [bmlt-enabled/yap] alerts not being cleared (Issue #714)
The configuration for the service body (WNIRNA) includes the twilio account SID and auth token. This overrides the settings in config.php. (Is this what you're asking?)
—
Reply to this email directly, view it on GitHubhttps://github.com/bmlt-enabled/yap/issues/714#issuecomment-1407821921, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAOD3O6UN2GLFYISGFM5KSLWU4DUFANCNFSM6AAAAAAUIAO7DA.
You are receiving this because you commented.Message ID: @.***>

yes:
https://bmlt.wszf.org/yap/status.php?override_service_body_id=2

Can you email me your Laravel.log file?
From: Alan B @.>
Date: Sunday, January 29, 2023 at 7:33 PM
To: bmlt-enabled/yap @.>
Cc: Danny Gershman @.>, Comment @.>
Subject: Re: [bmlt-enabled/yap] alerts not being cleared (Issue #714)
yes:
https://bmlt.wszf.org/yap/status.php?override_service_body_id=2
—
Reply to this email directly, view it on GitHubhttps://github.com/bmlt-enabled/yap/issues/714#issuecomment-1407823231, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAOD3O65DD3M5HAOAFQDTGTWU4D7NANCNFSM6AAAAAAUIAO7DA.
You are receiving this because you commented.Message ID: @.***>

The laravel.log file is empty right now for the test server, since I just installed a fresh copy.  Creating the error by omitting the callback didn't cause anything to get logged.

Something then seems misconfigured in writing to the log file.  There should be an error generated by going to the status.php page without any querystring parameters from your web browser.
From: Alan B @.>
Date: Sunday, January 29, 2023 at 7:51 PM
To: bmlt-enabled/yap @.>
Cc: Danny Gershman @.>, Comment @.>
Subject: Re: [bmlt-enabled/yap] alerts not being cleared (Issue #714)
The laravel.log file is empty right now for the test server, since I just installed a fresh copy. Creating the error by omitting the callback didn't cause anything to get logged.
—
Reply to this email directly, view it on GitHubhttps://github.com/bmlt-enabled/yap/issues/714#issuecomment-1407831126, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAOD3OZE5TXC5GXIYKYSQ7DWU4GBVANCNFSM6AAAAAAUIAO7DA.
You are receiving this because you commented.Message ID: @.***>

I think I found something.  This is for a zonal server. The zone doesn't pay for Twilio accounts for any of the service bodies; that is the responsibility of regions or areas in the zone.  There is a zonal Twilio account, whose SID and auth code is in the config.php file.  It used to have a test number -- but this was getting charged every month for not doing anything, so we left the account open but released the number.  This seems to have caused the problem.  I just tried buying a random number on the zone's account and set that up.  Now alerts are being cleared correctly.
So does the zone need to have a Twilio number for this to work correctly, even if it's never used?

Perhaps.  Can you try this with your Twilio Test Credentials?
I know the SEZF uses the same approach (not sure which creds they use).
https://www.twilio.com/docs/iam/test-credentials
--Danny
From: Alan B @.>
Date: Monday, January 30, 2023 at 1:06 PM
To: bmlt-enabled/yap @.>
Cc: Danny Gershman @.>, Comment @.>
Subject: Re: [bmlt-enabled/yap] alerts not being cleared (Issue #714)
I think I found something. This is for a zonal server. The zone doesn't pay for Twilio accounts for any of the service bodies; that is the responsibility of regions or areas in the zone. There is a zonal Twilio account, whose SID and auth code is in the config.php file. It used to have a test number -- but this was getting charged every month for not doing anything, so we left the account open but released the number. This seems to have caused the problem. I just tried buying a random number on the zone's account and set that up. Now alerts are being cleared correctly.
So does the zone need to have a Twilio number for this to work correctly, even if it's never used?
—
Reply to this email directly, view it on GitHubhttps://github.com/bmlt-enabled/yap/issues/714#issuecomment-1409081589, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAOD3O77O3CVN7QR3TSKBGTWU77J5ANCNFSM6AAAAAAUIAO7DA.
You are receiving this because you commented.Message ID: @.***>

Yap is not happy with the Twilio Test Credentials.  I put them in config.php for the test yap server and the login page (before logging in) says "Status: Problem".  Clicking that gives:
{"status":false,"message":"Twilio Rest Error: [HTTP 403] Unable to fetch page: Resource not accessible with Test Account Credentials","warnings":"+12062229379 is\/are phone numbers that are missing Twilio Call Status Changes Callback status.php webhook. This will not allow call reporting to work correctly.  For more information review the documentation page https:\/\/github.com\/bmlt-enabled\/yap\/wiki\/Call-Detail-Records.","version":"4.2.8","build":"7a01761f5cba076607a3de86db909dbed39ae914"}
If I go ahead and log in, I still see the warning about the missing status changes callback, even though I put the status changes callback back.  The warning is also still in the alerts table, and the records table still doesn't include anything since 12/30.
But I can still call the test number and I get the meeting results back as expected.

There some API calls that will fail because of the limited capability of test credentials, I forgot there are some additional lookups that happen in the Upgrade Advisor that would cause that to fail.  Interesting that you still don’t see records in the records table added.  You said before when you added a phone number that the error cleared?
From: Alan B @.>
Date: Monday, January 30, 2023 at 2:43 PM
To: bmlt-enabled/yap @.>
Cc: Danny Gershman @.>, Comment @.>
Subject: Re: [bmlt-enabled/yap] alerts not being cleared (Issue #714)
Yap is not happy with the Twilio Test Credentials. I put them in config.php for the test yap server and the login page (before logging in) says "Status: Problem". Clicking that gives:
{"status":false,"message":"Twilio Rest Error: [HTTP 403] Unable to fetch page: Resource not accessible with Test Account Credentials","warnings":"+12062229379 is/are phone numbers that are missing Twilio Call Status Changes Callback status.php webhook. This will not allow call reporting to work correctly. For more information review the documentation page https://github.com/bmlt-enabled/yap/wiki/Call-Detail-Records.","version":"4.2.8","build":"7a01761f5cba076607a3de86db909dbed39ae914"}
If I go ahead and log in, I still see the warning about the missing status changes callback, even though I put the status changes callback back. The warning is also still in the alerts table, and the records table still doesn't include anything since 12/30.
But I can still call the test number and I get the meeting results back as expected.
—
Reply to this email directly, view it on GitHubhttps://github.com/bmlt-enabled/yap/issues/714#issuecomment-1409232184, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAOD3O3SIWJSXTWS5LZ2EADWVAKVRANCNFSM6AAAAAAUIAO7DA.
You are receiving this because you commented.Message ID: @.***>

Yes - I tried adding a phone number to the zone's twilio account, and then everything seems to be working ok.  I removed the status callback from the test number yet again, called, saw the warning, added the status callback back again, called again, and the warning cleared.  Also the call was in the records table.

Ok I will take this new information and attempt to reproduce on my end.
From: Alan B @.>
Date: Monday, January 30, 2023 at 2:51 PM
To: bmlt-enabled/yap @.>
Cc: Danny Gershman @.>, Comment @.>
Subject: Re: [bmlt-enabled/yap] alerts not being cleared (Issue #714)
Yes - I tried adding a phone number to the zone's twilio account, and then everything seems to be working ok. I removed the status callback from the test number yet again, called, saw the warning, added the status callback back again, called again, and the warning cleared. Also the call was in the records table.
—
Reply to this email directly, view it on GitHubhttps://github.com/bmlt-enabled/yap/issues/714#issuecomment-1409240815, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAOD3O6R6ELJKSLT55VSFKTWVALTRANCNFSM6AAAAAAUIAO7DA.
You are receiving this because you commented.Message ID: @.***>

I still could not reproduce the error.

Thanks for continuing to investigate.  Since there is a workaround, I guess I will just leave this as is for now, and not worry about it.

Does this still happen?

Yes.  I just tested with yap 4.3.0-beta8, and the warning does not get cleared.  But as before this seems low priority to fix, since there is a straightforward workaround.

Can you resend me your database?
Get Outlook for iOShttps://aka.ms/o0ukef

From: Alan B @.>
Sent: Tuesday, February 27, 2024 4:51:17 PM
To: bmlt-enabled/yap @.>
Cc: Danny Gershman @.>; Comment @.>
Subject: Re: [bmlt-enabled/yap] alerts not being cleared (Issue #714)
Yes. I just tested with yap 4.3.0-beta8, and the warning does not get cleared. But as before this seems low priority to fix, since there is a straightforward workaround.
—
Reply to this email directly, view it on GitHubhttps://github.com/bmlt-enabled/yap/issues/714#issuecomment-1967985794, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAOD3OZWCK55T2GWD6ZUEHLYVZ5QLAVCNFSM6AAAAAAUIAO7DCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSNRXHE4DKNZZGQ.
You are receiving this because you commented.Message ID: @.***>

OK done.

@alanb2718 I added some additional logging here, can you try this out? https://s3.amazonaws.com/archives.bmlt.app/yap/yap-379-1fec2f885684985215826f7b8c6a370e160d9f8a.zip

I tested it - everything checks out and I think you can close this ticket. Specifically, I set up a test number and made sure it was working. Then I removed the call status changes callback.  This gave the warning, and also put something in the larval log file.  Then I added the call status changes callback again, and the warning cleared.

Cool


Deployment error messages should be shown until I dismiss them

Is your feature request related to a problem? Please describe.
When I attempt to deploy a stack and something goes wrong there's an error message. However, this is only shown for about ten seconds (or possibly is dismissed when I move the mouse).
Since deployment can take 5 minutes or more, I don't watch it so I end up missing these messages. They are important and I need to be able to read them at leisure to diagnose what the problem is in my compose file
Describe the solution you'd like
The error message should be accessible until I dismiss it.
Even better, all  recent error messages for this stack should be available on the stack page somewhere. I assume they are stored in a log file somewhere but I haven't been able to find t.
Describe alternatives you've considered
Watch the deployment like a hawk and jump in to quickly screenshot the message before it goes. This is tedious, however.

Closing as a duplicate of #6454

This still isn't resolved.


add option - Bounding Box

Pls, add Bounding Box options.
Thanks

but it seems that the boundingBox option doesn't work on the LlamaIndex Parse side.


feat: install remote extensions from npm

Description
Adds apis to install/uninstall extensions from npm.
Includes other various refactors as well.
Task Item
closes #3992

Coverage increased (+0.5%) to 55.756% when pulling 9ee8e46fc19103f97e5523f17d26a3ad72cc433d on abrown/extensions/install-from-npm into 498de04eefa94be24a761fcac218af006ca71103 on main.


response.json() gives an error "unexpected end of input" if the data sent back from request is null.

This is what I have:
this.authTokenStore.get()
    .then(authToken => {
        return fetch(this.serverUrl + '/REST/search?searchTerms=' + text, {
            method: 'get',
            headers: {
                'Accept': 'application/json',
                'Content-Type': 'application/json',
                'X-Client-Auth-Token': authToken
            }
        })
    })
    .then(this._checkStatus)
    .then(this._parseJSON)
    .then(serverGetSearchSuccess)
    .catch(serverGetSearchError);

What I don't understand and would need some help, it is with the fact that the response has a status 200, then goes to parseJSON but then goes back to checkStatus and throws that error "unexpected end of input" (debugging step by step using the chrome debugger).
My question I guess is how could I check for the body of the request in the this._parseJSON function and detect there if it is null and do a return Promise.resolve(response) instead of  response.json()
I am not sure if that should be posted on some site like SO, if yes I'm sorry for the inconvenience.
Thx for your help

This is a usage question and as such should be asked on sites like SO instead of here.
Ideally, the server shouldn't return an invalid (empty) response body to an application/json request, especially because it responded with HTTP 200. But since it misbehaves, you can catch those occurrences inside .catch(serverGetSearchError). I'm not sure why would you want to resolve a promise in that case, like nothing bad happened.
But if you want to avoid a parse error at all costs, why can't you change your _parseJSON function?
_parseJSON: function(response) {
  return response.text().then(function(text) {
    return text ? JSON.parse(text) : {}
  })
}

In any case, the power is in your hands. We can't decide your app's logic for you.

Hey Mislav, thanks for your response and thanks for the work on the fetch polyfill, it's been real help.
Sorry again for posting that here.

This is a super late response, but anyways my 2 cents on this issue is that if you're expecting a null response body, with a status code of > 200, you can always send a 204 (no content) response back from the server and handle it without the use of response.json() call.

@mislav it's nice , and i think maybe add one step to verify that text will be better.
// https://github.com/douglascrockford/JSON-js/blob/master/json2.js#478
const rxOne = /^[\],:{}\s]*$/;
const rxTwo = /\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g;
const rxThree = /"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g;
const rxFour = /(?:^|:|,)(?:\s*\[)+/g;
const isJSON = (input) => (
  input.length && rxOne.test(
    input.replace(rxTwo, '@')
      .replace(rxThree, ']')
      .replace(rxFour, '')
  )
);

_parseJSON: function(response) {
  return response.text().then(function(text) {
    return isJSON(text) ? JSON.parse(text) : {}
  })
}

@mislav the solution almost works, it is enough to do it like this:
_parseJSON(response) {
return response.text() ? JSON.parse(response) : null
}
Your version was crashing on my side.

I also encountered a similar problem,
read the above method,
still can not be solved,
this is my code
var myFetch ={ 				method:'GET', 				mode: 'no-cors', 				headers: { 					'Accept': 'application/json', 					'Content-Type': 'application/json', 				} 			}; 			fetch('https://way.jd.com/jisuapi/channel?appkey=bea95063a1eb03607c42b51b8cbd451b',myFetch) 			.then((response)=>{ 				response.text() 				.then((text)=> {                   text ? JSON.parse(text) : {} 				}) 			}) 			.then((json) =>{ 				console.log(json) 			})            			.catch(error => console.log('Oops, error: ', error))
@andreacab

@Zoly90 and @AndyZhang7
The solution from @mislav works as expected. It's important to note that if you are using the  _parseJSON function/JSON.parse will trow an exemption whenever it tries to parse an invalid JSON text. For instance, if you are using the _parseJSON within a Promise chain with a .catch handler, that handler will catch the Parsing exemption.

this error maybe server not allowed, if CORS set cors, and check error message let u set no-cors, worth checking if anyone else.

I use this code
tryGetJson = async (resp) => {
    return new Promise((resolve) => {
      if (resp) {
        resp.json().then(json => resolve(json)).catch(() => resolve(null))
      } else {
        resolve(null)
      }
    })
  }

@antoxi4 sometime is not ur code problem.

@antoxi4 By using catch on resp.json() - you might be silently suppressing genuine parsing errors too. So when there is no data or when data has parsing errors - your code always assumes only no data case


Deprecate HttpDate.now

Following Feedback from after #3051 was merged, deprecate HttpDate.now and instruct to use current instead.

Other alternative: rename current -> now
Or rename now -> unsafeNow, current -> now

Need to clean up the deprecation warnings.  I don't think we have much effectful header generation to this point, so it's going to introduce some maps and flatMaps.
I'm good with deprecating now.  current has some JVM familarity (System.currentTimeMillis), and the deprecation will let people upgrade at their own pace and explain what needs to be done.


Field required [type=missing, input_value={}, input_type=dict]

Whenever I try running it, it always comes out like this:

PS C:\Users\tim_f\Spotify-Charts-Scraper> py spotify_charts.py
Traceback (most recent call last):
File "C:\Users\tim_f\Spotify-Charts-Scraper\spotify_charts.py", line 9, in
spotify_settings = SpotifySettings()
^^^^^^^^^^^^^^^^^
File "C:\Users\tim_f\AppData\Local\Programs\Python\Python312\Lib\site-packages\pydantic_settings\main.py", line 144, in init
super().init(
File "C:\Users\tim_f\AppData\Local\Programs\Python\Python312\Lib\site-packages\pydantic\main.py", line 211, in init
validated_self = self.pydantic_validator.validate_python(data, self_instance=self)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
pydantic_core._pydantic_core.ValidationError: 4 validation errors for SpotifySettings
client_id
Field required [type=missing, input_value={}, input_type=dict]
For further information visit https://errors.pydantic.dev/2.9/v/missing
client_secret
Field required [type=missing, input_value={}, input_type=dict]
For further information visit https://errors.pydantic.dev/2.9/v/missing
redirect_url
Field required [type=missing, input_value={}, input_type=dict]
For further information visit https://errors.pydantic.dev/2.9/v/missing
redirect_port
Field required [type=missing, input_value={}, input_type=dict]
For further information visit https://errors.pydantic.dev/2.9/v/missing
PS C:\Users\tim_f\Spotify-Charts-Scraper>

I've tried inputting the tokens in various formats,even directly in the spotify_charts.py file itself, but it seems to be the same result every tiem.

Hi,
Have you created a .env file based on example.env.
pydantic-settings requires it.

Hi,
Have you created a .env file based on example.env.
pydantic-settings requires it.

yes, it look slike this

client_id=69fdc947396b45a3eeae47137e2c4c9b
client_secret=7e0680b6039a67b0961366ece6f65655
redirect_url=http://localhost
redirect_port=5001

(I've altered the id/secret here slightly just for security, but that's the format it's in)

Have u created this file in root directory  C:\Users\tim_f\Spotify-Charts-Scraper.env . Also make sure the file name is ".env" with no file name.

Have u created this file in root directory C:\Users\tim_f\Spotify-Charts-Scraper.env . Also make sure the file name is ".env" with no file name.

Yes, it's in that directory with that name

Are trying to run spotify_charts.py directly, if so u will face this issue. You have to use this spotify_charts.py as package follow this Notebook

Are trying to run spotify_charts.py directly, if so u will face this issue. You have to use this spotify_charts.py as package follow this Notebook

I tried running the notebook, here's what I got when running the "from spotify_charts import SpotifyCharts" cell

ValidationError                           Traceback (most recent call last)
Cell In[1], line 1
----> 1 from spotify_charts import SpotifyCharts
File ~\Spotify-Charts-Scraper\spotify_charts.py:9
6 from Countries import Countries
7 from Settings import SpotifySettings
----> 9 spotify_settings = SpotifySettings()
11 client_id = spotify_settings.client_id
12 client_secret = spotify_settings.client_secret
File ~\AppData\Local\Programs\Python\Python312\Lib\site-packages\pydantic_settings\main.py:144, in BaseSettings.init(pydantic_self, _case_sensitive, _env_prefix, _env_file, _env_file_encoding, _env_ignore_empty, _env_nested_delimiter, _env_parse_none_str, _env_parse_enums, _cli_prog_name, _cli_parse_args, _cli_settings_source, _cli_parse_none_str, _cli_hide_none_type, _cli_avoid_json, _cli_enforce_required, _cli_use_class_docs_for_groups, _cli_exit_on_error, _cli_prefix, _secrets_dir, **values)
120 def init(
121     pydantic_self,
122     _case_sensitive: bool | None = None,
(...)
142 ) -> None:
143     # Uses something other than self the first arg to allow "self" as a settable attribute
--> 144     super().init(
145         **pydantic_self._settings_build_values(
146             values,
147             _case_sensitive=_case_sensitive,
148             _env_prefix=_env_prefix,
149             _env_file=_env_file,
150             _env_file_encoding=_env_file_encoding,
151             _env_ignore_empty=_env_ignore_empty,
152             _env_nested_delimiter=_env_nested_delimiter,
153             _env_parse_none_str=_env_parse_none_str,
154             _env_parse_enums=_env_parse_enums,
155             _cli_prog_name=_cli_prog_name,
156             _cli_parse_args=_cli_parse_args,
157             _cli_settings_source=_cli_settings_source,
158             _cli_parse_none_str=_cli_parse_none_str,
159             _cli_hide_none_type=_cli_hide_none_type,
160             _cli_avoid_json=_cli_avoid_json,
161             _cli_enforce_required=_cli_enforce_required,
162             _cli_use_class_docs_for_groups=_cli_use_class_docs_for_groups,
163             _cli_exit_on_error=_cli_exit_on_error,
164             _cli_prefix=_cli_prefix,
165             _secrets_dir=_secrets_dir,
166         )
167     )
File ~\AppData\Local\Programs\Python\Python312\Lib\site-packages\pydantic\main.py:211, in BaseModel.init(self, **data)
209 # __tracebackhide__ tells pytest and some other tools to omit this function from tracebacks
210 tracebackhide = True
--> 211 validated_self = self.pydantic_validator.validate_python(data, self_instance=self)
212 if self is not validated_self:
213     warnings.warn(
214         'A custom validator is returning a value other than self.\n'
215         "Returning anything other than self from a top level model validator isn't supported when validating via __init__.\n"
216         'See the model_validator docs (https://docs.pydantic.dev/latest/concepts/validators/#model-validators) for more details.',
217         category=None,
218     )
ValidationError: 4 validation errors for SpotifySettings
client_id
Field required [type=missing, input_value={}, input_type=dict]
For further information visit https://errors.pydantic.dev/2.9/v/missing
client_secret
Field required [type=missing, input_value={}, input_type=dict]
For further information visit https://errors.pydantic.dev/2.9/v/missing
redirect_url
Field required [type=missing, input_value={}, input_type=dict]
For further information visit https://errors.pydantic.dev/2.9/v/missing
redirect_port
Field required [type=missing, input_value={}, input_type=dict]
For further information visit https://errors.pydantic.dev/2.9/v/missing

Hi,
Sorry for late response can u check now I have missed to add .env in pydantic-settings.

The code no longer displays an error message, but doesn't seem to actually do anything. i.e. there's no output in the console or anything, it just goes to the next line of input.

Yes if u run just the py file it does not give u any output. Is a package, please look at this Notebook

The notebook appears to be working for the song and artist charts now, but the albums chart gives an error

I have fixed it can u pull the changes and check?

Looks like it's all working now, thanks!
One question, I know how to get the notebook to scrape a specific date, is there a way to scrape a chart for multiple dates at once?

You could use pandas date_range and use for loop to fetch for those date ranges.

I am closing this issue as its fixed.
Thanks.


How can I proceed with the test with personal data

Thank you for your research.
How can I put personal satellite image data into the model created after training with inria dataset and crowdai?
I'd appreciate it if you could tell me

Please refer to the ''Quickstart with the pretrained model'' in README after a successful installation. One simple command line is needed.

Thank you for your answer. I have now executed the following command to test the model trained through the crowdai data.
python scripts/test.py --config-file config-files/crowdai_hrnet48.yaml
After doing this, two json files were created in the /outputs/crowdai_hrnet48 directory. I want to get an image with polygons on the result, is there a way?

Please follow the exact code to generate visualized polygonal mapping results:
python scripts/demo.py --dataset crowdai --img [YOUR_IMAGE_PATH]

No, I don't want to use a pre-trained model, but I want to test a new model that I trained. When I use the save_viz function of visualiizer.py in the utils directory to run the test.py file, can't I print the result image of the polygon?

I would like to test a new model that I trained without using a pre-trained model. In this regard, I am planning to utilize the save_viz function from visualizer.py in the utils directory within the context of the test_pipeline.py file, test_on_crowdai function. However, it seems that I am unable to print the result image of the polygon. Could you kindly assist me with this matter?

The visualization mainly depends on the format of the derived results. Results generated by our pretrained model are in the COCO instance segmentation format, which is resistant to the AICrowd dataset. In that format, buildings are delineated by corner points. The simple function is the show_polygons. If your predicted results by your model have the same structure as ours, you could try writing the code for visualization based on that function.

Thank you very much. Successful visualization of the polygon. I would like to evaluate the inria_dataset as well, but the method in the readme seems to be a way to evaluate the crowdai_dataset. How can I evaluate inria_dataset?

To evaluate inria dataset, you can follow the instruction.

I always appreciate your kind words. I've suddenly encountered the following error while performing multiple model training and testing. If you've ever experienced such an error or have any solutions, I would be grateful if you could let me know.

Regrettably, we haven't encountered this error. The problem seems to be the checkpoint loader. Maybe you could try solely debugging the loading of checkpoints instead of running the whole test file.

Regrettably, we haven't encountered this error. The problem seems to be the checkpoint loader. Maybe you could try solely debugging the loading of checkpoints instead of running the whole test file.


dataset

[Enter feedback here]

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

ID: 688dd4d0-611c-56eb-c9e7-94171c0d4902
Version Independent ID: 688dd4d0-611c-56eb-c9e7-94171c0d4902
Content: Download a sample template app from AppSource - Power BI
Content Source: powerbi-docs/create-reports/sample-sales-marketing-template-app.md
Service: powerbi
Sub-service: pbi-reports-dashboards
GitHub Login: @maggiesMSFT
Microsoft Alias: maggies

Thanks for your comment, @Sabarish2903. This issue has been assigned to the doc author for review.

Hi @Sabarish2903, can you provide more info? I am closing this issue now, as we have transitioned to a new feedback system. If you'd like to follow up, please use the feedback button you'll find at the end of the specific doc page you're looking at. Thanks!


Experienced system hanging?

Hi!
This may be more of asking if there's similar experience than really throwing an issue.
I've been experiencing system hanging (not sure from GPU, dataloader, or any other) while finetuning a pre-trained model on, e.g. NLVR2.
It usually goes like,
(1) hangs at the beginning of the first epoch and the first iteration, which never proceeds.
(2) hangs at the iteration n, where n is some multiple of number of workers set in the starting script, and it never proceeds.
When it hangs, CPU / GPU utilization is down to zero, the system seems doing nothing.
Did you have similar experience? if so, any advice to work around it?
Thanks!

Hi Julius,
I have never experienced this with VOLTA.
But I did have it with another repository I used, and the hanging would get better as I trained.
Not sure what might cause this though.


Maildir storage search function does not match uppercase characters

The query variable in the search method is converted to lowercase but not the message strings compared.
It will only match lower case strings.

thanks @benningm, should be fixed in the next release


channelWithBiggestCapacity is undefined and channel is shown in closed status

Thanks for filing a bug report :-)
Steps to Reproduce

Go to the transfer screen on staging
Enter an amount to deposit

Expected Result

Deposit works

Actual Result

The following error is shown this.channelWithBiggestCapacity(...) is undefined
Channel is shown as closed

Additional Infos (Optional)
2020_06_29_logs.txt

Now it's gone:

@christianbrb So you were on the Transfer screen, but the channel you had was closed. Eventually it got settled by the HUB. It's expected. The problem here is you didn't get the transfer controls disabled for not having open channels with capacity. I thought we had an issue about this already.

This a miss on the implementation of the getter. We need to fix it. It will only happen when you have a single closed channel in a Token.

Maybe this is not an issue anymore after #1930 and #2031 are implemented.


camerad memory leak

Describe the bug
camerad uses 2-3% more memory per day if run for days
How to reproduce or log data
run camerad for extended amount of time
Expected behavior
constant memory usage
Device/Version information (please complete the following information):

Device: EON/comma two
Dongle ID:
Route:
Timestamp:
Version: current master
Car make/model:

Additional context

this might have been in camerad for ever. are you interested in looking into it? @deanlee

I would love to try

Merged the PR. @ZwX1616 Can you check if the leak is gone?

Merged the PR. @ZwX1616 Can you check if the leak is gone?

yeah the testing closet devices have been updated. we should be able to see the difference easily

Seeing no leak after two days, thanks @deanlee :)

I'm glad the problem was finally solved


Use font_size for text2d example to preserve resolution

Objective

The current text2d example uses the entity's Transform component to demonstrate text scaling.
This is not ideal as the font becomes pixelated as it scales up.

Solution

Adjust the font_size field of the Text sections instead.

Changelog
Fixed

Pixellation of "scale" text in text2d example

This is intentional. Note the warning displayed when running the example with this PR.
2022-12-07T22:25:34.680337Z  WARN bevy_text::glyph_brush: warning[B0005]: Number of font atlases has exceeded the maximum of 16. Performance and memory usage may suffer.
https://bevyengine.org/learn/errors/#b0005

Going to close this out as intentional, although I still think our whole story here is poor.


Move gflags installation from netperf benchmark to package.

Separate the package installation from prepare stage so that the test could run using a prebaked image under no-internet connection environment.

@tedsta Please take a look. Thanks


[feaLib] assertion error mixing pos and sub contextual chaining rules

Because OpenType is... well, it is what it is - you can create a contextual chaining lookup either with a "pos" statement or a "sub" statement. In particular, you can create a contextual chaining lookup with a "position" statement even if the lookup you chain to is a substitution rule, and vice versa. The following feature code:
lookup dummy1 { pos uni0061 50; } dummy1;

feature kern {
    sub uni0061' lookup dummy1 uni0062;
} kern;

may not be entirely sensible, but it should cause a warning, not a crash:
  File "/usr/local/lib/python3.7/site-packages/fontTools/ttLib/ttFont.py", line 172, in save
    writer_reordersTables = self._save(tmp)
  File "/usr/local/lib/python3.7/site-packages/fontTools/ttLib/ttFont.py", line 211, in _save
    self._writeTable(tag, writer, done, tableCache)
  File "/usr/local/lib/python3.7/site-packages/fontTools/ttLib/ttFont.py", line 632, in _writeTable
    tabledata = self.getTableData(tag)
  File "/usr/local/lib/python3.7/site-packages/fontTools/ttLib/ttFont.py", line 650, in getTableData
    return self.tables[tag].compile(self)
  File "/usr/local/lib/python3.7/site-packages/fontTools/ttLib/tables/otBase.py", line 69, in compile
    self.table.compile(writer, font)
  File "/usr/local/lib/python3.7/site-packages/fontTools/ttLib/tables/otBase.py", line 728, in compile
    conv.write(writer, font, table, value)
  File "/usr/local/lib/python3.7/site-packages/fontTools/ttLib/tables/otConverters.py", line 557, in write
    value.compile(subWriter, font)
  File "/usr/local/lib/python3.7/site-packages/fontTools/ttLib/tables/otBase.py", line 691, in compile
    conv.write(writer, font, table, value, i)
  File "/usr/local/lib/python3.7/site-packages/fontTools/ttLib/tables/otConverters.py", line 557, in write
    value.compile(subWriter, font)
  File "/usr/local/lib/python3.7/site-packages/fontTools/ttLib/tables/otBase.py", line 691, in compile
    conv.write(writer, font, table, value, i)
  File "/usr/local/lib/python3.7/site-packages/fontTools/ttLib/tables/otConverters.py", line 557, in write
    value.compile(subWriter, font)
  File "/usr/local/lib/python3.7/site-packages/fontTools/ttLib/tables/otBase.py", line 691, in compile
    conv.write(writer, font, table, value, i)
  File "/usr/local/lib/python3.7/site-packages/fontTools/ttLib/tables/otConverters.py", line 431, in write
    value.compile(writer, font)
  File "/usr/local/lib/python3.7/site-packages/fontTools/ttLib/tables/otBase.py", line 728, in compile
    conv.write(writer, font, table, value)
  File "/usr/local/lib/python3.7/site-packages/fontTools/ttLib/tables/otConverters.py", line 253, in write
    writer.writeUShort(value)
  File "/usr/local/lib/python3.7/site-packages/fontTools/ttLib/tables/otBase.py", line 421, in writeUShort
    assert 0 <= value < 0x10000, value
TypeError: ("'<=' not supported between instances of 'int' and 'NoneType'", 'LookupListIndex', 'SubstLookupRecord[0]', 'ChainContextSubst[0]', 'Lookup[0]', 'LookupList')```

It should be an error, a GPOS lookup can’t be used from a GSUB lookup.

For reference, makeotf errors with:
makeotfexe [FATAL] <Untitled1> (internal) label 0x0 not found

#1897 should “fix” this by raising earlier.

(as for why this can’t possibly work, lookups are referenced by lookup indices from the current table, so it can’t reference a lookup from another table).

Sure, of course it shouldn't work. But the syntax is valid, so it should be caught and cause a user-facing error, not an internal one.


Add "Remember" to login panel

Add "Remember" to login panel

What is this? Why are you removing everything?

Also, please make some meaningful names for pull requests if you want to send something.

Ok

Please create another pull request instead of adding to this one.

why?
I will have to add a new branch to do this.
can I close this one and open it again instead?

I guess you can. Make sure it has a meaningful name.

Is the current name OK?

Name is OK, but I don't want to see all the changes that I've already merged. Also, why are removing so many files?

I Removed all the language files from my branch except for en

at the time I didn't know about the translate.py script

I can add those language files back to my branch to reduce the number of files changed

sorry for this, it just increase the number of files changed.
this because I translated more he strings on transifex.com and run the translate.py script

what do you suggest?
I can remove those language files from my branch again and put them back on git exclude list

I think you need to create a new branch and do the changes there. Creating branches with git is very easy. You can cherry pick your commits there as well.

why do I need another branch? I'm not having two versions.
Just tell me what you want me to change on this branch and I will.

Because that's the right way of working with git.
I just want to see the new changes.

All the changes there are new and related to my pull request except the changes to the languages files from the translate.py script.
If you want me to fix something just tell me where?
ב-7 באוג׳ 2016, בשעה 17:09, Anton Tananaev<EMAIL_ADDRESS>כתב/ה:

Because that's the right way of working with git.
I just want to see the new changes.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Please remove all the changes to the language files.
As for the actual changes, I think it's not a good idea to store username and password in the cookie. Can't we just use session id or something? There must be a better way.

I can store the userId in the cookie
ב-7 באוג׳ 2016, בשעה 21:00, Anton Tananaev<EMAIL_ADDRESS>כתב/ה:

Please remove all the changes to the language files.
As for the actual changes, I think it's not a good idea to store username and password in the cookie. Can't we just use session id or something? There must be a better way.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

We can't use session id because session expire usually after 20 minutes, also userId is not good because if a user can fake a userId in a cookie it is bad because he could login as other user or worst as admin.
I think saving user and password on non public computer or on mobile phone is not a bad option

About the language files in my branch.
If you run the translate.py script and update the language files on your master branch there will be no changes.
Or I can remove the files from my branch and download your files.
What ever you prefer?

I have updated all language files.
I don't think storing user id would be very secure. Is there a way to extend the session beyond restarting web browser?

I don't think keeping opened sessions on the server is wise, it may lead to memory leak.
You need to save a unique key on the client as a cookie to restore the session securely.
I can think of 2 ways to do this:

you can add a new field to the users table like: "secret_key" to match the cookie and produce this unique key each time a user login with remember checked.
you can use the combination of userId and the encrypted password on users table to do the match (no need to change the db)

I guess username and password would do for now. That seems like the easiest option. Can you please remove language files.

those language files are new, I can remove them from my branch or you could add them to yours?
about the cookies we can set them on the server side with encryption / decryption

Those languages have 0% translated strings, so I'm not going to add them yet. Please remove those.
I think implementing own encryption is not a good idea. If people want more security, they can just set up proper SSL connection.

Do you want me to add a class for encryp/decrypt like this for the cookies:
http://stackoverflow.com/questions/5307132/is-this-java-encryption-code-thread-safe

How does it add any security? Where would you store the keys?

it could be on the configuration file

here is the class
DesEncrypter.java.txt

It should be on the client side as well for encryption, right? It means that everybody would get it anyway.

Merged the changes.

no, we could set the cookie on the server side as well

Server side cookie is a session. That's what I suggested before. You said it can lead to memory leaks.

I see what you mean. You want to encrypt on the server and send to the client to store it. It doesn't add much security though because anybody can copy and re-use encrypted cookie.

no, session use cookie to keep track the session id.
session is the information on the server, and cookie is saved on the client and sent to the server in the headers with the request

we could also use the user's salt for the key

How would it help and how would it work?

if someone steel the user's cookie he could generate a new password and the salt will change

Can you please fully explain how it adds any security.

when the user login with the remember checked the user and password data are encrypted on the server side (with the user's salt as the key) and set as a cookie for the next login session.

every time a user set a new password a new random salt is created:
public static HashingResult createHash(String password) {
    byte[] salt = new byte[SALT_SIZE];
    RANDOM.nextBytes(salt);
    byte[] hash = function(password.toCharArray(), salt);
    return new HashingResult(
            DatatypeConverter.printHexBinary(hash),
            DatatypeConverter.printHexBinary(salt));
}

I still don't understand how it would prevent someone from stealing user's cookie and logging in. Can you please explain that part.

no one can prevent from someone from stealing user's cookie if he has access to his computer.
but if the user change his password the cookie is useless.
the other way is to save a key to users table that is valid until he logout, but you will have to add a new field for this and add this to the db change log

in the other way we will save in the cookie the userId and the key that match in field "secret_key" in the users table.
on every login with remember a new key will be produced.

It all sounds overcomplicated. Let's just leave it as it is. SSL should prevent credentials from being stolen.

ok


Not existing Taskqueue name returns invalid link

I have found today problem with working on Taskqueue, which doesn't exist (was not created in App Engine): REST API returns different URI for Taskqueue.
This issue is reported on App Engine: https://code.google.com/p/googleappengine/issues/detail?id=12882
I suggest to add check whether returned id contains requested queue name:
change this line into
id = response.get("id")
if self.id in id:
  self.full_name = response.get("id")
else:
  return False

Thanks for reporting!

Thanks for fixing!

You could add issue number into commit message (like #1 ), this commit will be linked here in this ticket.

I think, this latest commit is wrong, because you have removed intend for all of the following class method.

Haha, oops!
I agree, assert self.exists() is rather ugly.


feat: add auro_var utility to guard against unset variables

Alaska Airlines Pull Request
Fixes: #64
Summary:
Add utility function, auro_var(), so that developers can reference Auro variables with a fallback value in case the variable is not set.
Type of change:

[/] Revision of an existing capability

Checklist:

[/] My update follows the CONTRIBUTING guidelines of this project
[/] I have performed a self-review of my own update

By submitting this Pull Request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
Pull Requests will be evaluated by their quality of update and whether it is consistent with the goals and values of this project. Any submission is to be considered a conversation between the submitter and the maintainers of this project and may require changes to your submission.
Thank you for your submission!
-- Auro Design System Team

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: littleninja:x: Sarah GrefaldaSarah Grefalda seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

@blackfalcon assuming this change is good to accept, I'm volunteering to draft a pull request to the Auro docs explaining why fallback values are recommended and how to use the auro_var() helper. 🙋🏼♀

I am reviewing this. I am wondering why we need to support this when there is already postCSS support within the scope of a custom element? link to example
I agree, there is value in this. I am wondering if you have a use case that we are not already covering?
I see the use of this in the back-to-top custom element but haven't had a chance to review fully yet. I can see the use of this OUTSIDE the scope of a custom element, e.g. wanting to use CSS vars within other than Auro CSS/Sass, but in the scope of a custom element the postCss job converts all the CSS vars to hardcoded values as fallbacks.
Unless there is a use case I am missing?

I covered the use case a the comment linked from the issue: https://github.com/AlaskaAirlines/auro-back-to-top/commit/feae094a639c5a956edf4890e49fd3da033dff55#commitcomment-47566393
The PostCSS plugin provides fallback for browsers without custom property support (IE11). It does this using CSS's graceful degradation principle. What this doesn't cover is the component in an environment where Auro custom props are not defined or are outdated, the component does not gracefully degrade.
/* correct source... */
background-color: var(--auro-color-brand-neutral-100);

/* becomes... */
background-color: #f9fbfc;
background-color: var(--auro-color-brand-neutral-100);

/* what it should be */
background-color: #f9fbfc;
background-color: var(--auro-color-brand-neutral-100, #f9fbfc);

color:

I see where this is going, but the use case of NOT having the tokens installed is not really to be supported from Auro's perspective. Using this technique would imply that if not all resources are installed, things still work. And that is a false positive.
e.g. if there is a change in tokens, this would not cascade down into a component until there is a re-release of said component. So, things would be out of sync.
So it's not a question of we could, it's a question of if we should.

e.g. if there is a change in tokens, this would not cascade down into a component until there is a re-release of said component. So, things would be out of sync.

No, I don't think that's how this works. My understanding of this expression:
color: var(--my-foo-color, red);

... is var(--my-foo-color) takes precedence and only if the variable is unset will it fall back to red. Here's a fiddle to demonstrate: https://codepen.io/little_ninja/pen/RwoJPov.

What feels broken about the stance against this pull request (could/should) is that, given a page without Auro custom props, the component would style in IE11 but broken in other browsers. There's already a coupling to Auro custom props version by the nature of the PostCSS injecting the value as a fallback. What I'm proposing here is a similar handling of placements where new variables aren't yet present, fallback to the component value as you would if it were IE11. The mechanism will still prefer using the latest, greatest variable if it's set, though. Having our cake and eating it, too. 🍰

I see all the points. What slightly is bothering me is that this is a feature you don't get for free when using CSS variables. This addition will require some good docs to explain the why and the how..
I looked to see if there was a postCSS tool out there that would do this instead of us having to do this with Sass which feels a little broken to be because of the inconsistent use. I wonder if there is a style lint that we can use to at least enforce this use within the scope of a custom element?
Just a few requested updates.

e.g. if there is a change in tokens, this would not cascade down into a component until there is a re-release of said component. So, things would be out of sync.

No, I don't think that's how this works. My understanding of this expression:
color: var(--my-foo-color, red);

... is var(--my-foo-color) takes precedence and only if the variable is unset will it fall back to red. Here's a fiddle to demonstrate: https://codepen.io/little_ninja/pen/RwoJPov.

Thanks for the clarification on this. This is super helpful.

The PostCSS plugin used by component projects is postcss-custom-properties. There was an issue opened asking for exactly this, a flag like fallback or preserveWithFallback. The maintainers closed it as out-of-scope, but someone did fork and show how this could be done with PostCSS alone, no utility function necessary.

Closed issue: https://github.com/postcss/postcss-custom-properties/issues/169
Fork change: https://github.com/arshaw/postcss-custom-properties/commit/3fb702f3443e8c0448b1619f9affa40d4a342e69

I appreciate the discussion, though I kinda wish we had hashed this out on the discussion thread (auro-back-to-top) or this pull request which detailed the use case. Committing to a direction and reading all green lights then getting stopped at the last mile doesn't feel great.
I like the idea of this being a PostCSS plugin and not having devs worry about this at all. I'll leave this pull request open but I'm abandoning it and will try the plugin route instead.
If we do abandon this change, there's no longer a need for the merged tokens PR that added map-flat but it's merged, so ... hopefully it's still useful, or we remove it (major version bump?).

The PostCSS plugin used by component projects is postcss-custom-properties. There was an issue opened asking for exactly this, a flag like fallback or preserveWithFallback. The maintainers closed it as out-of-scope, but someone did fork and show how this could be done with PostCSS alone, no utility function necessary.

Closed issue: postcss/postcss-custom-properties#169
Fork change: arshaw/postcss-custom-properties@3fb702f

I like this. What is your proposed direction? This fork gives us the answer, but we can't use that as it's not published. I am open to the idea of repeating this and releasing our own npm. I can't say I agree with the opinion that this is not within the scope of their project. But that's the best part of OSS.


multiple logger supported

loggus is a python version of logrus, And it's a good alternative to the python default logging module.
Now, I was Added functionality that multiple logger.

I'm sorry that I haven't paid attention to my email recently, so I didn't see your submission in time. Today there happened to be a new submission all seen.
The project is modeled after Logus. Because I don't have much experience, I just use it with a few friends.
Thank you very much for your submission. I will have a good look at it in these two days.

Hello, thank you again for your submission
On second thought, I really don't want to maintain a logger collection.
I think each logger should have no relationship to each other. It should be finely granular to each component that needs it, and maintained by the component itself.
They should not call each other. If you don't have this level of relationship, you can always use the default logger, which is a logger that affects the all


[FLINK-15811][task] report CancelTaskException from SourceStreamTask

What is the purpose of the change
SourceStreamTask has it's own thread and on cancel() it interrupts this thread.
When the thread completes the failure if any is reported via mailbox to the upstream Task.
So on cancel it reports InterruptedException.
But the contract (or common practice) of AbstractInvokable is to throw CancelTaskException.
In PR SourceStreamTask reports CancelTaskException if it was cancelled.
Verifying this change
This change is already covered by existing tests, such as StreamSourceOperatorWatermarksTest#testNoMaxWatermarkOnAsyncCancel
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): no
The public API, i.e., is any changed class annotated with @Public(Evolving): no
The serializers: no
The runtime per-record code paths (performance sensitive): no
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Yarn/Mesos, ZooKeeper: no
The S3 file system connector: no

Documentation

Does this pull request introduce a new feature? no
If yes, how is the feature documented? not applicable

@pnowojski ,
Travis build failed with  PYTHON exited with EXIT CODE: 143. (probably OOM).
Given that Azure build succeeded this is unlikely to be relevant.
@flinkbot run travis

Failure is unrelated (https://issues.apache.org/jira/browse/FLINK-15921), merging


How do I implement an undo function as in instagram or vine?

First, Your code is very useful. Thanks.
If Undo is tapped, I delete the last file.
In the final step, I merge all files that are available .
Do you think this is the best way? or have any other idea?

i meet a demand like this, and i have no idea to start with it...,some one help?

I've got a new solution in the works for video, will update the README as well as some of the issues here when it's available.

i have a solution of deleting the video when user finishing capture,but it is data that i fetch it from sandBox.It is not the case...

Hey @ManholeGit if you checkout my NextLevel project, it has the ability to undo and re-arrange video clips.
🌎 https://github.com/NextLevel/NextLevel


send events

Hi,
I am initializing plausible in my root layout, and then I assumed in a +page.svelte, I would do this:
<script>
import { pa } from '...'

const formHandler = (vals) => {
  const resp = await someRequest()
  if (resp.ok) {
    pa.login('yes')
    goto('/my-app');
    return
  }

  // handle error
}
</script>
<form>
  <!-- etc. -->
</form>

But whatever it is doing, it won't get to goto('/my-app'); anymore. Is there a restriction to running this in dev mode?
I would assume if the request to plausible fails, I would at least see that in the browser console. But there's nothing. Code execution just stops after pa.login().

I guess this is a bug, I had to do this in the root layout:
<PlausibleAnalytics enabled={true} domain={[plausibleDomain]} />

Otherwise it does throw an error with window.plausible is not defined.


Add test coverage to builds

Would like at least some test coverage around our rollup builds. How do other folks do this?

https://github.com/miragejs/server/pull/57


Changes def runeLiteVersion to 'latest.release'

This will allow for your development environment to use the latest stable runelite release.

Why did you open this PR then close it one day later? Slightly confused honestly.

Sorry, I was told that it would be considered rude to PR changes to multiple projects -- I found the change beneficial in my own development as I wouldn't have to change the runeLiteVersion every time RL updated.
If you'd like the PR re-opened for submission, that can be done. Thanks :)


feat: support HTTP&gRPC&pg set timezone

I hereby agree to the terms of the GreptimeDB CLA
What's changed and what's your intention?
Support set/get timezone in HTTP&gRPC&pg&mysql
Use unify SQL layer to dispose SQL SET time_zone = xxx and show variables xxxx, make all protocol support set/get timezone
HTTP
Add a Header named x-greptime-timezone, user can carry timezone by this http header
gRPC
Add timezone in GreptimeRequest::RequestHeader make gRPC query aware timezone info
Related pr https://github.com/GreptimeTeam/greptime-proto/pull/132
PG
Use SHOW VARIABLES system_timezone; and SHOW VARIABLES timezone; to query system timezone and timezone
Use Set time_zone = xxx to set user timezone, system time indicate by timezone in frontend config file
MYSQL
Because MYSQL federated intercept SQL parse like  SHOW VARIABLES xxx.
In mysql, we still use Select @@system_timezone; and Select @@timezone; to query system timezone and timezone
Use Set time_zone = xxx to set user timezone, same with PG
Documents will be updated after https://github.com/GreptimeTeam/greptimedb/issues/2907 finish
Checklist

[x]  I have written the necessary rustdoc comments.
[x]  I have added the necessary unit tests and integration tests.
[ ]  This PR does not require documentation updates.

Refer to a related PR or issue link (optional)
https://github.com/GreptimeTeam/greptimedb/issues/2907

In my practice,  "".to_string() to String::default() may help to discover case like
fn s(s: Option<String>) -> String {
    s.unwrap_or("".to_string())
}

clippy won't complain about it, but String::default() will suggust use unwrap_or_default