disorderfs: 0.5.4 -> 0.5.5

Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/disorderfs/versions.
meta.description for disorderfs is: '"An overlay FUSE filesystem that introduces non-determinism into filesystem metadata"'.

Checks done (click to expand)

built on NixOS
/nix/store/26fjc1cj4qigrh2i5ksidgfm479g893i-disorderfs-0.5.5/bin/disorderfs passed the binary check.
1 of 1 passed binary check by having a zero exit code.
0 of 1 passed binary check by having the new version present in output.
found 0.5.5 with grep in /nix/store/26fjc1cj4qigrh2i5ksidgfm479g893i-disorderfs-0.5.5
directory tree listing: https://gist.github.com/9acfbf853e0e3a756abe451bffe914cd
du listing: https://gist.github.com/e52cd202dc60be72d21f82f2632e60d9

Outpath report (click to expand)

Outpath difference report
3 total rebuild paths
1 package rebuilds
1 x86_64-linux rebuilds
1 i686-linux rebuilds
0 x86_64-darwin rebuilds
1 aarch64-linux rebuilds
First ten rebuilds by attrpath
disorderfs

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/26fjc1cj4qigrh2i5ksidgfm479g893i-disorderfs-0.5.5 \
  --option binary-caches 'https://cache.nixos.org/ https://r-ryantm.cachix.org/' \
  --option trusted-public-keys '
  r-ryantm.cachix.org-1:gkUbLkouDAyvBdpBX0JOdIiD2/DP1ldF3Z3Y6Gqcc4c=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

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

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/26fjc1cj4qigrh2i5ksidgfm479g893i-disorderfs-0.5.5
ls -la /nix/store/26fjc1cj4qigrh2i5ksidgfm479g893i-disorderfs-0.5.5/bin

cc @pSub for testing.

No attempt on x86_64-darwin (full log)
The following builds were skipped because they don't evaluate on x86_64-darwin: disorderfs
Partial log (click to expand)

a) For `nixos-rebuild` you can set
  { nixpkgs.config.allowUnsupportedSystem = true; }
in configuration.nix to override this.

b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowUnsupportedSystem = true; }
to ~/.config/nixpkgs/config.nix.

No attempt on aarch64-linux (full log)
The following builds were skipped because they don't evaluate on aarch64-linux: disorderfs
Partial log (click to expand)

a) For `nixos-rebuild` you can set
  { nixpkgs.config.allowUnfree = true; }
in configuration.nix to override this.

b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowUnfree = true; }
to ~/.config/nixpkgs/config.nix.

Success on x86_64-linux (full log)
Attempted: disorderfs
Partial log (click to expand)
install -m 644 disorderfs.1 /nix/store/k801l8s05sndhdvyrlx0cjaiif17clxz-disorderfs-0.5.5/share/man/man1/
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/k801l8s05sndhdvyrlx0cjaiif17clxz-disorderfs-0.5.5
shrinking /nix/store/k801l8s05sndhdvyrlx0cjaiif17clxz-disorderfs-0.5.5/bin/disorderfs
gzipping man pages under /nix/store/k801l8s05sndhdvyrlx0cjaiif17clxz-disorderfs-0.5.5/share/man/
strip is /nix/store/vcc4svb8gy29g4pam2zja6llkbcwsyiq-binutils-2.30/bin/strip
stripping (with command strip and flags -S) in /nix/store/k801l8s05sndhdvyrlx0cjaiif17clxz-disorderfs-0.5.5/bin
patching script interpreter paths in /nix/store/k801l8s05sndhdvyrlx0cjaiif17clxz-disorderfs-0.5.5
checking for references to /build in /nix/store/k801l8s05sndhdvyrlx0cjaiif17clxz-disorderfs-0.5.5...
/nix/store/k801l8s05sndhdvyrlx0cjaiif17clxz-disorderfs-0.5.5


#28, #15 added badges in rst file, added documentation, added heroku button

Changes Unknown when pulling 033e0ab96c6c074af62bd28fee743a252228008d on nikhila05:master into ** on MicroPyramid:master**.


Latejoin menu doesn't show free job positions

and it allows you to click jobs without any free positions left

Can't reproduce, fixed.


chore: Do not clean up bb files on err

Even if BB_SKIP_CLEANUP is not set, avoid deleting the tmp dir for bb if the operation fails, so we can retrieve those files later.

Benchmark results
Metrics with a significant change:

avm_simulation_time_ms (Token:mint_public): 43.3 (-41%)
avm_simulation_time_ms (Token:assert_minter_and_mint): 68.9 (+73%)
avm_simulation_time_ms (Token:transfer_public): 35.6 (+62%)
avm_simulation_time_ms (Token:_increase_public_balance): 78.5 (+99%)
l2_block_processing_time_in_ms (4): 404 (+58%)

Detailed results
All benchmarks are run on txs on the Benchmarking contract on the repository. Each tx consists of a batch call  to create_note and increment_balance, which guarantees that each tx has a private call, a nested private call, a public call, and a nested public call, as well as an emitted private note, an unencrypted log, and public storage read and write.
This benchmark source data is available in JSON format on S3 here.
Proof generation
Each column represents the number of threads used in proof generation.

Metric
1 threads
4 threads
16 threads
32 threads
64 threads

proof_construction_time_sha256_ms
5,797 (+1%)
1,569 (+1%)
714 (+1%)
768 (-1%)
767

proof_construction_time_sha256_30_ms
11,898
3,185
1,410
1,437
1,464

proof_construction_time_sha256_100_ms
45,777 (+1%)
12,004 (+1%)
5,468
5,358 (-1%)
5,382

proof_construction_time_poseidon_hash_ms
78.0
34.0
34.0
58.0
88.0 (+1%)

proof_construction_time_poseidon_hash_30_ms
1,537 (+1%)
423
203
225
274 (+2%)

proof_construction_time_poseidon_hash_100_ms
5,674 (+1%)
1,513
675
733 (-1%)
741

L2 block published to L1
Each column represents the number of txs on an L2 block published to L1.

Metric
4 txs
8 txs
16 txs

l1_rollup_calldata_size_in_bytes
4,324
7,844
14,852

l1_rollup_calldata_gas
49,720
92,488
177,584

l1_rollup_execution_gas
1,294,383
2,042,119
3,869,254

l2_block_processing_time_in_ms
:warning: 404 (+58%)
445 (-1%)
829 (+2%)

l2_block_building_time_in_ms
9,243
18,196
36,001 (-1%)

l2_block_rollup_simulation_time_in_ms
9,242
18,196
36,001 (-1%)

l2_block_public_tx_process_time_in_ms
7,822
16,649 (+1%)
34,427 (-1%)

L2 chain processing
Each column represents the number of blocks on the L2 chain where each block has 8 txs.

Metric
3 blocks
5 blocks

node_history_sync_time_in_ms
3,010 (+2%)
3,840 (-4%)

node_database_size_in_bytes
12,738,640
16,814,160

pxe_database_size_in_bytes
16,254
26,813

Circuits stats
Stats on running time and I/O sizes collected for every kernel circuit run across all benchmarks.

Function
time_ms
bytecode_size_in_bytes

FeeJuice:_increase_public_balance
58.0 (+7%)
8,139

FeeJuice:set_portal
10.9 (+4%)
2,362

Token:constructor
87.1 (+3%)
31,107

FPC:constructor
53.1 (-3%)
22,380

FeeJuice:mint_public
38.2
6,150

Token:mint_public
:warning: 43.3 (-41%)
11,720

Token:assert_minter_and_mint
:warning: 68.9 (+73%)
8,028

AuthRegistry:set_authorized
46.6 (-1%)
4,537

FPC:prepare_fee
249 (-5%)
8,812

Token:transfer_public
:warning: 35.6 (+62%)
47,374

FPC:pay_refund
59.9 (-5%)
12,114

Benchmarking:increment_balance
973 (+1%)
7,450

Token:_increase_public_balance
:warning: 78.5 (+99%)
8,960

FPC:pay_refund_with_shielded_rebate
71.5 (+6%)
12,663

Public DB Access
Time to access various public DBs.

Function
time_ms

get-nullifier-index
0.168 (+3%)

Tree insertion stats
The duration to insert a fixed batch of leaves into each tree type.

Metric
1 leaves
16 leaves
64 leaves
128 leaves
256 leaves
512 leaves
1024 leaves

batch_insert_into_append_only_tree_16_depth_ms
2.18 (-1%)
3.88 (-2%)
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_16_depth_hash_count
16.8
31.7
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_16_depth_hash_ms
0.113 (-1%)
0.109 (-3%)
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_32_depth_ms
N/A
N/A
11.5
17.5 (-5%)
30.6 (-1%)
58.7 (-2%)
112 (-3%)

batch_insert_into_append_only_tree_32_depth_hash_count
N/A
N/A
95.9
159
287
543
1,055

batch_insert_into_append_only_tree_32_depth_hash_ms
N/A
N/A
0.110
0.102 (-5%)
0.0992 (-1%)
0.101 (-2%)
0.101 (-3%)

batch_insert_into_indexed_tree_20_depth_ms
N/A
N/A
14.4
25.6 (-2%)
43.3
82.5 (-1%)
160 (-2%)

batch_insert_into_indexed_tree_20_depth_hash_count
N/A
N/A
109
207
355
691
1,363

batch_insert_into_indexed_tree_20_depth_hash_ms
N/A
N/A
0.109
0.103 (-2%)
0.105
0.102 (-1%)
0.101 (-3%)

batch_insert_into_indexed_tree_40_depth_ms
N/A
N/A
16.3 (-1%)
N/A
N/A
N/A
N/A

batch_insert_into_indexed_tree_40_depth_hash_count
N/A
N/A
132
N/A
N/A
N/A
N/A

batch_insert_into_indexed_tree_40_depth_hash_ms
N/A
N/A
0.105 (-1%)
N/A
N/A
N/A
N/A

Miscellaneous
Transaction sizes based on how many contract classes are registered in the tx.

Metric
0 registered classes
1 registered classes

tx_size_in_bytes
64,779
668,997

Transaction size based on fee payment method
| Metric |  |
| - |  |


Is there any support for passing the index name, something like redis_host/some_key ?

Summary
We would like to utilise a single redis cluster with multiple use-cases and each of the case having its different index / key name.
For e.g.: for storing movies data, store in index redis_host/movies and use redis_host/books to store all books related data, each category in its own index.
Steps To Reproduce
Passing redis_host as redis_host/index. The usage of this plugin throws validation error:

one or more objects failed to apply, reason: admission webhook "validations.kong.konghq.com" denied the request: plugin failed schema validation: schema violation (config.redis_host: invalid value: redis_host.example.in/index_0)

Additional Details & Logs

Kong version: 3.7

I think you mean using distinct Redis Databases when you say indexes. I'll check if the client supports this.
But I would also like to understand your use case of separating redis key-value pairs via databases. Is there any advantage in separating Rate Limiting key value pairs with key value pairs from other use cases (that refer the same redis cluster) for namespacing?
I believe redis still uses one core to serve all traffic, so not sure if there is any performance advantage of the above.


html2canvas returns a cached value in a loop

Using version 1.0.0,
When using html2canvas on the same div, each time after making changes to the div in a loop (changing text and image) the output is always the same as the first instance. Console logged the div to make sure changes were implemented.
example:
for (let divText of divTexts) {
document.getElementById('printViewLocationName').innerHTML = 'A' + Math.random().toString(36).substring(2);
html2canvas(document.getElementById('printViewLocation'));
// only renders the first time and stores it, returning first render on sequential requests.
}

Im unable to repro: https://jsfiddle.net/p9zdhu3b/
If you are experiencing different results, please make a runnable example.


Access database cannot create table with default datetime in migration

(Copied from StackOverflow: https://stackoverflow.com/q/64663041/12767145)
I have some trouble getting the migrations to create default datetime values for my tables. I am using the EF Core Jet provider and need to use MS Access-MDB-Files.
My Connection string is the following:
Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Engine Type=4;User ID=Admin; Data Source=<my-mdb-file.mdb>

I want to set the default datetime of an property to the time "15:30".
I tried the following things:

entity.Property(e => e.EndTime).HasDefaultValueSql("#01.01.1900 15:30:00#");
entity.Property(e => e.EndTime).HasDefaultValueSql("#01.01.1900 15:30#");
entity.Property(e => e.EndTime).HasDefaultValueSql("#15:30:00#");
entity.Property(e => e.EndTime).HasDefaultValueSql("#15:30#");
entity.Property(e => e.EndTime).HasDefaultValueSql("#01/01/1900 03:30:00#");
entity.Property(e => e.EndTime).HasDefaultValueSql("#01/01/1900 03:30#");
entity.Property(e => e.EndTime).HasDefaultValueSql("#03:30:00#");
entity.Property(e => e.EndTime).HasDefaultValueSql("#03:30#");
entity.Property(e => e.EndTime).HasDefaultValue(new TimeSpan(15,30,0));
entity.Property(e => e.EndTime).HasDefaultValue(new TimeSpan(3,0,0));

And always get the following error message:

System.Data.OleDb.OleDbException (0x80040E14): Syntax error in CREATE TABLE statement.

Then I dug into the source code of EntityFrameworkCore.Jet and found in the following comment in the class JetMigrationsSQLGenerator:
// Jet does not support defaults for hh:mm:ss in create table statement
But in our old code base we do exactly this with an ADO-Driver (it is an legacy Delphi application).
So I have the following questions:

Am I wrong with my assertion that this is possible in general?
Is the behaviour implemented in the EF-Core Jet provider wrong?
And most importantly: How can I get this working?

Edit:
To clarify my steps, I always deleted the Migrations folder after changing the model builder configuration and used the functions Add-Migration <MigrationName>and Update-Databaseto test this.
Edit 2:
It seems like the comment from the EF Core provider is not totally wrong.
Combined datetimes like #12.30.1899 03:30:00# which get created by using TimeSpan are not supported by Access. But if enter the create statement into Access directly and just use the time (#03:30:00#) it works. But I cannot get EF Core to create the statement like this.
Edit 3:
In the cases where I used the function HasDefaultValueSqlthe reason for the wrong syntax seems to be an bug in the EF Jet Provider. When this function is used the created SQL statement ends with DEFAULT ('#<value>#'), the problem with this is that the parenthesis are not accepted. This seems to be a know issue.
Edit 4:
There was an issue concerning my applications culture. I changed it and now I can get EF Core to generate DateTimes successfully, but these are missing the time values due to the implementation of the Jet-provider.
So the current situation is as follows:
If I use

DateTime I can indeed call Update-Database successfully, but have no time values, only date
TimeSpan the Update-Database call fails (I suspect that Access does not like dates with time)
HasDefaultValueSql("#03:30:00#") I also get an exception when calling UpdateDatabase

I think that the EF Core Jet Provider is the problem here, but I am not totally convinced.
@lauxjpn: I am the poster of this issue on SO, and you commented I should open up an issue, but personally I think it is tied to #18 because it is possible to set an default time value with the HasDefaultValueSql if I use the proposed change in #18.

There are multiple underlying issues involved here.
First, only the following #value# syntax will work for datetime values in Jet SQL in general (there are minor variations, e.g. a leading 0 can be omitted):
International style:

#1987-12-31 23:59:59#
#1987-12-31#
#23:59:59#
#23:59#

US style:

#12/31/1987 23:59:59#
#12/31/1987#
#23:59:59#
#23:59#

(MS Access does like to show date/time values in the users local format, but this is just how it is displayed.)
I should also mention, that I am only talking about the current 3.1.0-alpha.3 here.
With that out of the way, lets take a look at the issues involved.
HasDefaultValueSql() uses incorrect syntax
You are correct in your assessment, that HasDefaultValueSql() should output the DEFAULT clause without wrapping the value statement with parenthesis.
So we need to fix that.
Once we would have fixed it, the behavior would be as using HasDefaultValue() in this case.
Jet (ADO) does not support time value syntax in DEFAULT clauses
Jet has always been very buggy. One of those bugs is, that while it perfectly supports datetime values with a time component as a column default, its SQL parser responsible for translating the CREATE/ALTER TABLE statements apparently does not.
Our current solution to this issue has been, to not specify any time components at all for datetime default clauses. But of course this is suboptimal.
Jet just uses an 8 byte double value as the underlying data type of datetime, with a value of 1.0 representing exactly one day. So it is perfectly valid SQL (though not very readable) to express a datetime value as a double number.
I did some testing and this also works as expected for datetime columns.
As a positive side effect, using double values will allow us to save higher date/time precisions than seconds.
The negative side effect is readability. The following statement does work in normal Jet SQL:
#1987-12-31 23:59:59# + 0.000001

However, it does not work as a DEFAULT clause value.
Conclusion
So, here are the steps for us to do:

Fix the HasDefaultValueSql() uses incorrect syntax issue (#18)
Change the type mappings, so they use double values (either only for fractions of a second or for everything)
Change the default value generation code, so it always uses a double value for date/time related type mappings.


Default azure to run as managed-service=aro

What this PR does / why we need it:
There's a single valid known use case for azure atm. Let's default to it.
Also this drops rosa variable since there's no usage nor valid semantic for it atm.
Checklist

[ ] Subject and description added to both, commit and PR.
[ ] Relevant issues have been referenced.
[ ] This change includes docs.
[ ] This change includes unit tests.

/hold
this needs the e2e to pass with the flag

/hold
until we sort out azure e2e test

/retest

/hold cancel

/lgtm


Implement Series.swapaxes

        >>> kser = ks.Series([1, 2, 3], index=["x", "y", "z"])
        >>> kser
        x    1
        y    2
        z    3
        dtype: int64
        >>>
        >>> kser.swapaxes(0, 0)
        x    1
        y    2
        z    3
        dtype: int64

ref https://github.com/databricks/koalas/issues/1929

Thank you @ueshin @itholic!

Codecov Report

Merging #1954 (f567157) into master (7e06e43) will decrease coverage by 0.94%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master    #1954      +/-   ##
==========================================
- Coverage   94.64%   93.69%   -0.95%
==========================================
  Files          49       49
  Lines       10828    10735      -93
==========================================
- Hits        10248    10058     -190
- Misses        580      677      +97

Impacted Files
Coverage Δ

databricks/koalas/frame.py
96.72% <ø> (-0.05%)
:arrow_down:

databricks/koalas/missing/series.py
100.00% <ø> (ø)

databricks/koalas/series.py
96.87% <100.00%> (-0.10%)
:arrow_down:

databricks/koalas/usage_logging/__init__.py
25.66% <0.00%> (-66.65%)
:arrow_down:

databricks/koalas/usage_logging/usage_logger.py
47.82% <0.00%> (-52.18%)
:arrow_down:

databricks/koalas/__init__.py
81.25% <0.00%> (-9.38%)
:arrow_down:

databricks/conftest.py
96.61% <0.00%> (-3.39%)
:arrow_down:

databricks/koalas/testing/utils.py
79.12% <0.00%> (-1.40%)
:arrow_down:

...ricks/koalas/tests/plot/test_series_plot_plotly.py
95.83% <0.00%> (-0.47%)
:arrow_down:

databricks/koalas/generic.py
92.79% <0.00%> (-0.13%)
:arrow_down:

... and 19 more

Continue to review full report at Codecov.

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


Missing IsVcentered props for Columns

Looking at the code, it seems this has been addressed already? Can you confirm?

For instance, would this be ok?
namespace Fulma.Elements.Form

open Fulma
open Fable.Helpers.React
open Fable.Helpers.React.Props

[<RequireQualifiedAccess>]
module Field =

    module Classes =
        let [<Literal>] Container = "field"
        let [<Literal>] Label = "field-label"
        let [<Literal>] Body = "field-body"
        module HasAddons =
              let [<Literal>] Left = "has-addons"
              let [<Literal>] Centered = "has-addons-centered"
              let [<Literal>] Right = "has-addons-right"
              let [<Literal>] FullWidh = "has-addons-fullwidth"
        module IsGrouped =
              let [<Literal>] Left = "is-grouped"
              let [<Literal>] Centered = "is-grouped-centered"
              let [<Literal>] Right = "is-grouped-right"
              let [<Literal>] Multiline = "is-grouped-multiline"
        module VerticalAlign =
              let [<Literal>] IsSmall = "is-small"
              let [<Literal>] IsNormal = "is-normal"
              let [<Literal>] IsMedium = "is-medium"
              let [<Literal>] IsLarge = "is-large"
        module Layout =
            let [<Literal>] IsHorizontal = "is-horizontal"

    type Option =
        /// Add `has-addons` class
        | HasAddons
        /// Add `has-addons-centered` class
        | HasAddonsCentered
        /// Add `has-addons-right` class
        | HasAddonsRight
        /// Add `has-addons-fullwidth` class
        | HasAddonsFullWidth
        /// Add `is-grouped` class
        | IsGrouped
        /// Add `is-grouped-centered` class
        | IsGroupedCentered
        /// Add `is-grouped-right` class
        | IsGroupedRight
        /// Add `is-horizontal` class
        | IsHorizontal
        /// Add `is-small` class
        | IsSmall
        /// Add `is-normal` class
        | IsNormal
        /// Add `is-medium` class
        | IsMedium
        /// Add `is-large` class
        | IsLarge
        | CustomClass of string
        | Props of IHTMLProp list

    type internal Options =
        { HasAddons : string option
          IsGrouped : string option
          VerticalAlign : string option
          Layout : string option
          CustomClass : string option
          Props : IHTMLProp list }
        static member Empty =
            { HasAddons = None
              IsGrouped = None
              VerticalAlign = None
              Layout = None
              CustomClass = None
              Props = [] }

    type FieldLabelOption =
        | Size of ISize
        | CustomClass of string
        | Props of IHTMLProp list

    type internal FieldLabelOptions =
        { Size : string option
          CustomClass : string option
          Props : IHTMLProp list }
        static member Empty =
            { Size = None
              CustomClass = None
              Props = [] }

    /// Generate
    let label options children =
        let parseOptions (result : FieldLabelOptions) =
            function
            | Size size -> { result with Size = ofSize size |> Some }
            | CustomClass customClass -> { result with CustomClass = customClass |> Some }
            | Props props -> { result with Props = props }

        let opts = options |> List.fold parseOptions FieldLabelOptions.Empty
        let classes = Helpers.classes
                        Classes.Label
                        [ opts.Size; opts.CustomClass ]
                        [ ]
        div (classes::opts.Props)
            children

    /// Generate
    let body (options : GenericOption list) children =
        let opts = genericParse options
        let classes = Helpers.classes Classes.Body [opts.CustomClass] []
        div (classes::opts.Props) children

    let internal fieldView element options children =
        let parseOptions (result : Options) =
            function
            | HasAddons -> { result with HasAddons = Classes.HasAddons.Left |> Some }
            | HasAddonsCentered -> { result with HasAddons = Classes.HasAddons.Left + " " + Classes.HasAddons.Centered |> Some }
            | HasAddonsRight -> { result with HasAddons = Classes.HasAddons.Left + " " + Classes.HasAddons.Right |> Some }
            | HasAddonsFullWidth -> { result with HasAddons = Classes.HasAddons.Left + " " + Classes.HasAddons.FullWidh |> Some }
            | IsGrouped -> { result with IsGrouped = Classes.IsGrouped.Left |> Some }
            | IsGroupedCentered -> { result with IsGrouped = Classes.IsGrouped.Left + " " + Classes.IsGrouped.Centered |> Some }
            | IsGroupedRight -> { result with IsGrouped = Classes.IsGrouped.Left + " " + Classes.IsGrouped.Right |> Some }
            | IsHorizontal -> { result with Layout = Classes.Layout.IsHorizontal |> Some }
            | IsSmall -> { result with Layout = Classes.VerticalAlign.IsSmall |> Some }
            | IsMedium -> { result with Layout = Classes.VerticalAlign.IsMedium |> Some }
            | IsLarge -> { result with Layout = Classes.VerticalAlign.IsLarge |> Some }
            | IsNormal -> { result with Layout = Classes.VerticalAlign.IsNormal |> Some }
            | Option.CustomClass customClass -> { result with CustomClass = customClass |> Some }
            | Option.Props props -> { result with Props = props }

        let opts = options |> List.fold parseOptions Options.Empty
        let classes = Helpers.classes
                        Classes.Container
                        [ opts.HasAddons; opts.IsGrouped; opts.VerticalAlign; opts.Layout; opts.CustomClass ]
                        [ ]

        element (classes::opts.Props)
            children

    /// Generate

    let div x y = fieldView div x y
    /// Generate

    let p x y = fieldView p x y

Seems like indeed, I need to check why I was not having this proposition in the intellisense of my project. Will close if it's a "false positive"


Add Travis CI matrix for improved job tagging

Defined a Travis CI matrix in the .travis.yml config file to remove the xcode tag from future Ubuntu Trusty jobs.
Description
Added a Travis CI job matrix to improve definition between macOS and Ubunty Trusty jobs as I learned in my own project: https://github.com/tlindsay42/ArmorPowerShell/blob/master/.travis.yml
Related Issue
#231
Motivation and Context

Removes the xcode tag for Ubuntu Trusty Travis CI jobs.
How Has This Been Tested?
Figured this out last month in my Armor PowerShell Module project.  Example: https://travis-ci.org/tlindsay42/ArmorPowerShell/builds/305173326
Screenshots (if appropriate):

Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.
[x] All new and existing tests passed.

Good catch @tlindsay42. Any idea why this doesn't validate on the lint tool?

Thanks @devblackops, and good catch on your part.  I forgot about those lint warnings.  The Travis Client is just a bit out of date.  This matrix configuration is listed in the official Travis CI documentation here: https://docs.travis-ci.com/user/multi-os/ and I have had no issues with utilizing this configuration for my project for over a month.

Sounds good @tlindsay42. Thanks!

BTW: Reported the invalid travis lint warnings here


Add tests for the class HDF5DataSource in the module nanshe_viewer

The class HDF5DataSource has no tests. It has several methods, most of which simply retrieve a property. Maybe a few test methods with different types of construction could be written that then verify properties through the methods.

Closing issue as test coverage monitoring is handled automatically due to solving #169. So, having issues related to test coverage like this are redundant.


Fix a typo with wrapping commit

I missed this when re-implementing the default widthOfString() functionality.  Any calls to the method were resulting in 'undefined', unless the checkByWord option was enabled.

Ah, I see what you are talking about.   Thanks for the quick fix.

Certainly - sorry about that!  Thank you for the quick merge.   😁

v1.2.1 has now been published with this fix.


int precision

In 05-Built-in-Scalar-Types.ipynb it says:

C integers are fixed-precision, and usually overflow at some value (often near $2^{31}$ or $2^{63}$, depending on your system). Python integers are variable-precision, so you can do computations that would overflow in other languages:

I don't think it's correct to use the term "precision" to describe integers. They are as precise as they can be in both C and python. A better way to phrase it would be something like this:
C integers are limited to a fixed range, and usually overflow at some value (often near $2^{31}$ or $2^{63}$, depending on your system). Python integers are not limited to any fixed range, but are only limited by the available memory, so you can do computations that would overflow in other languages:

In my experience, "precision" is used in exactly this manner when talking about the bit representation of integers. As one example, take a look at the Wikipedia Article on Integers

The width or precision of an integral type is the number of bits in its representation. An integral type with n bits can encode 2n numbers


ERROR: Assert `size >= 1' failed in /root/synlig/synlig/frontends/systemverilog/uhdm_ast.cc:751.

I am using the following commands to load the files:
Yosys 0.33 version
plugin -i systemverilog
read_systemverilog -defer file_name1.sv
.read_systemverilog -defer file_name2.sv
read_systemverilog -defer file_name3.sv
read_systemverilog -defer top.sv
read_systemverilog -link
when I am linking with above command, I am getting the ERROR: Assert `size >= 1' failed in /root/synlig/synlig/frontends/systemverilog/uhdm_ast.cc:751.

All the warnings above the error are of great concern.
Please verify your design setup (Parameters).

hi
Thank you alaindargelas, I am trying to reevaluate the parameters from top file but the following error is coming

Use read_systemverilog -P= ....rest of the command line


It's not possible to test locally installed pymeasure

Today I ran py.test on my locally installed pymeasure. This breaks with
______________ ERROR collecting experiment/tests/test_workers.py ______________
..\_pytest\config.py:1213: in getoption
    val = getattr(self.option, name)
E   AttributeError: 'CmdOptions' object has no attribute '--runslow'

During handling of the above exception, another exception occurred:
experiment\tests\test_workers.py:39: in <module>
    not pytest.config.getoption("--runslow"),
..\_pytest\config.py:1223: in getoption
    raise ValueError("no option named %r" % (name,))
E   ValueError: no option named '--runslow'
!!!!!!!!!!!!!!!!!!! Interrupted: 1 errors during collection !!!!!!!!!!!!!!!!!!!

because the conf.py file is not packaged along with the tests. This makes the getoption bail because the option has not been added in the conf.py.
This is not visible on CI because you run the tests on the local pymeasure repo directory, instead of an installed version, which might be a better idea because it reflects your users' situation better. That should probably be changed.
The easiest fix for the present issue that I could see, since you apparently decided to use the test structure which distributes tests with your application, is to move the conftest.py into the pymeasure directory to distribute it with the rest of the tests.
It's still possible to test a locally available, not installed, repo clone by calling pytest from the ./pymeasure directory, not the repo root dir.

@bilderbuchi, I can reproduce this. I am working on a branch to overhaul the tests and will address this.

Thanks!

I know that finding the proper test structure do cover all usecases can be really tricky.


Use IK for arm control

Create an algorithm to control the robot's are using inverse kinematics
This James Bruton video should help a little

Here is another video on IK from the coding train


[BUG] PUT on source without "name" in request makes the source unable to be fetched/deleted/listed/updated

What is the bug?
Threat-intel Sources when modified using the API with PUT, without having the "name" in request body, makes the server throw 500 for every request that includes the source in the response, and the source can also not be DELETED
How can one reproduce the bug?
Steps to reproduce the behavior:

Utilize the API
Run POST _plugins/_security_analytics/threat_intel/sources (I utilized file_upload API)
Run PUT  _plugins/_security_analytics/threat_intel/sources/<source_id> (Without "name" in request body")
Response Body: {"ok":false,"error":"[illegal_state_exception] Can't get text on a VALUE_NULL at 1:26"}

What is the expected behavior?
There should be a validation for this, and in case not, the source should still have a way to be deleted. Via the dashboards or API, and it should not break the other endpoints which return this ( Fetch All )
What is your host/environment?

OS: [e.g. iOS]
Version [e.g. 22]
Plugins

Do you have any screenshots?

Do you have any additional context?
Crucially, the DELETE isn't working, so I cannot find a way to get rid of the faulty source via the API.

Apologies
OS: Linux
Version: 22.04


[fix] collate_af3_inputs function should return an instence of BatchedAtomInput

hey, Phil, this PR has 2 contributions:

collate_af3_inputs function should return an instence of BatchedAtomInput.
use logger to log infermation.

@gitabtion loguru is cool! thank you Heng! :heart:


calcurated scroll position is incorrect in some browser with animation

Version
2.6.0
Reproduction link
https://jsfiddle.net/ykojima/krqwkfuy/
Steps to reproduce

Run in jsFiddle
Click "Foo" link
Click "Go to Bar-2" link

What is expected?
change route to /bar and scroll to "Bar-2" h2 element.
In Chrome, it works fine.
What is actually happening?
change route to /bar, but scroll to the bottom of the page.
This happens in IE11, Firefox, Safari (Mac).

I think this problem cased by:

getElementPosition() is called with the timing at which both leaving route-component and entering route-component exist
window.scrollTo() method is called with the timing at which only entered route-component exist

https://github.com/vuejs/vue-router/blob/v2.6.0/src/util/scroll.js#L81
when animation is disabled ( or comment out <transition>), this problem does not happen.

Thanks for reporting this. I see it's kind of related to #1263 but a bit different


Cannot download from azurite with hostname

Which version of the AzCopy was used?
Note: The version is visible when running AzCopy without any argument
10.10.0
Which platform are you using? (ex: Windows, Mac, Linux)
Inside docker Linux docker compose container environment (with windows as host). docker compose contains two containers. Container 1: Based on python:latest and azcopy added with "RUN wget -O azcopy_v10.tar.gz https://aka.ms/downloadazcopy-v10-linux && tar -xf azcopy_v10.tar.gz --strip-components=1 && cp ./azcopy /usr/bin/"
Container 2 (azurite as label):
mcr.microsoft.com/azure-storage/azurite
What command did you run?
Note: Please remove the SAS to avoid exposing your credentials. If you cannot remember the exact command, please retrieve it from the beginning of the log file.
Inside container 1:
azcopy cp "http://azurite:10000/devstoreaccount1/63098e55-b3fc-4b2f-99c3-14338bc9c540?se=2021-06-18T12%3A32%3A33Z&sp=rwl&sv=2020-06-12&ss=b&srt=sco&sig=VvyhT9ZPpvuCkyabeiUi%2BYUMxPrVlnKKZEEM6SIC32w%3D" "./test_dataset_out" --from-to BlobLocal --recursive
Where azurite is the hostname that corresponds to Container 2
AND
azcopy cp "http://<IP_ADDRESS>:10000/devstoreaccount1/63098e55-b3fc-4b2f-99c3-14338bc9c540?se=2021-06-18T12%3A32%3A33Z&sp=rwl&sv=2020-06-12&ss=b&srt=sco&sig=VvyhT9ZPpvuCkyabeiUi%2BYUMxPrVlnKKZEEM6SIC32w%3D" "./test_dataset_out" --from-to BlobLocal --recursive
which is identical to the first command but where <IP_ADDRESS> is the azurite hostname converted to IP-address
What problem was encountered?
When using the host-name, no files are transferred. When using the ip-address all files are transferred as expected.
When uploading files into azurite, it works with hostname! There I don't have to convert it to an ip-address.
How can we reproduce the problem in the simplest way?
Have you found a mitigation/solution?
Convert from hostname to IP-address

@tomasgiden - feel that this could be something specific to a docker setup. would you be able to test it in a simpler environment with two machines?

Closing this issue due to inactivity. Please reopen an issue if you are still experiencing an issue with AzCopy

Closing this issue due to inactivity. Please reopen an issue if you are still experiencing an issue with AzCopy

Hello @gapra-msft - I am also experiencing this issue. There is something odd happening when synchronising with azurite using its docker hostname. I see this on the client side:
Cannot perform sync due to error: cannot list files due to reason GET http://azurite:10000/devstoreaccount1
--------------------------------------------------------------------------------
RESPONSE 403: 403 This request is not authorized to perform this operation using this resource type.
ERROR CODE: AuthorizationResourceTypeMismatch
--------------------------------------------------------------------------------
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Error>
  AuthorizationResourceTypeMismatch
  <Message>This request is not authorized to perform this operation using this resource type.
RequestId:4d805d68-4265-457e-ba25-1abb42fc87a1
Time:2024-05-24T14:59:51.010Z</Message>
</Error>

And this on the server side:
2024-05-24T11:06:07.966Z c2f260a4-bf09-4cc8-a032-8c0a261a1c36 info: AccountSASAuthenticator:validate() Start validation against account Shared Access Signature pattern.
2024-05-24T11:06:07.966Z c2f260a4-bf09-4cc8-a032-8c0a261a1c36 debug: AccountSASAuthenticator:validate() Getting account properties...
2024-05-24T11:06:07.966Z c2f260a4-bf09-4cc8-a032-8c0a261a1c36 debug: AccountSASAuthenticator:validate() Retrieved account name from context: devstoreaccount1, container: undefined, blob:
2024-05-24T11:06:07.966Z c2f260a4-bf09-4cc8-a032-8c0a261a1c36 debug: AccountSASAuthenticator:validate() Got account properties successfully.
2024-05-24T11:06:07.966Z c2f260a4-bf09-4cc8-a032-8c0a261a1c36 debug: AccountSASAuthenticator:validate() Retrieved signature from URL parameter sig: KCcDG5jJ0CmqD1KR7sH9+XvD2doHrGgg3NhwxfyjA4E=
2024-05-24T11:06:07.967Z c2f260a4-bf09-4cc8-a032-8c0a261a1c36 debug: AccountSASAuthenticator:validate() Successfully got valid account SAS values from request. {"version":"2018-03-28","expiryTime":"2024-05-25T11:06:07Z","permissions":"rwdlac","services":"b","resourceTypes":"co"}
2024-05-24T11:06:07.967Z c2f260a4-bf09-4cc8-a032-8c0a261a1c36 info: AccountSASAuthenticator:validate() Validate signature based account key1.
2024-05-24T11:06:07.967Z c2f260a4-bf09-4cc8-a032-8c0a261a1c36 debug: AccountSASAuthenticator:validate() String to sign is: "devstoreaccount1\nrwdlac\nb\nco\n\n2024-05-25T11:06:07Z\n\n\n2018-03-28\n"
2024-05-24T11:06:07.967Z c2f260a4-bf09-4cc8-a032-8c0a261a1c36 debug: AccountSASAuthenticator:validate() Calculated signature is: KCcDG5jJ0CmqD1KR7sH9+XvD2doHrGgg3NhwxfyjA4E=
2024-05-24T11:06:07.967Z c2f260a4-bf09-4cc8-a032-8c0a261a1c36 info: AccountSASAuthenticator:validate() Signature based on key1 validation passed.
2024-05-24T11:06:07.967Z c2f260a4-bf09-4cc8-a032-8c0a261a1c36 info: AccountSASAuthenticator:validate() Validate start and expiry time.
2024-05-24T11:06:07.967Z c2f260a4-bf09-4cc8-a032-8c0a261a1c36 info: AccountSASAuthenticator:validate() Validate IP range.
2024-05-24T11:06:07.967Z c2f260a4-bf09-4cc8-a032-8c0a261a1c36 info: AccountSASAuthenticator:validate() Validate request protocol.
2024-05-24T11:06:07.967Z c2f260a4-bf09-4cc8-a032-8c0a261a1c36 debug: AccountSASAuthenticator:validate() Got permission requirements for operation Service_ListContainersSegment - {"service":"b","resourceType":"s","permission":"l"}
2024-05-24T11:06:07.967Z c2f260a4-bf09-4cc8-a032-8c0a261a1c36 error: ErrorMiddleware: Received a MiddlewareError, fill error information to HTTP response
2024-05-24T11:06:07.967Z c2f260a4-bf09-4cc8-a032-8c0a261a1c36 error: ErrorMiddleware: ErrorName=StorageError ErrorMessage=This request is not authorized to perform this operation using this resource type.  ErrorHTTPStatusCode=403 ErrorHTTPStatusMessage=This request is not authorized to perform this operation using this resource type. ErrorHTTPHeaders={"x-ms-error-code":"AuthorizationResourceTypeMismatch","x-ms-request-id":"c2f260a4-bf09-4cc8-a032-8c0a261a1c36"} ErrorHTTPBody="<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<Error>\n  AuthorizationResourceTypeMismatch\n  <Message>This request is not authorized to perform this operation using this resource type.\nRequestId:c2f260a4-bf09-4cc8-a032-8c0a261a1c36\nTime:2024-05-24T11:06:07.967Z</Message>\n</Error>" ErrorStack="StorageError: This request is not authorized to perform this operation using this resource type.\n    at StorageErrorFactory.getAuthorizationResourceTypeMismatch (/opt/azurite/dist/src/blob/errors/StorageErrorFactory.js:177:16)\n    at AccountSASAuthenticator.validate (/opt/azurite/dist/src/blob/authentication/AccountSASAuthenticator.js:107:49)\n    at AuthenticationMiddlewareFactory.authenticate (/opt/azurite/dist/src/blob/middlewares/AuthenticationMiddlewareFactory.js:35:40)\n    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)"
2024-05-24T11:06:07.967Z c2f260a4-bf09-4cc8-a032-8c0a261a1c36 error: ErrorMiddleware: Set HTTP code: 403
2024-05-24T11:06:07.967Z c2f260a4-bf09-4cc8-a032-8c0a261a1c36 error: ErrorMiddleware: Set HTTP status message: This request is not authorized to perform this operation using this resource type.
2024-05-24T11:06:07.967Z c2f260a4-bf09-4cc8-a032-8c0a261a1c36 error: ErrorMiddleware: Set HTTP Header: x-ms-error-code=AuthorizationResourceTypeMismatch
2024-05-24T11:06:07.967Z c2f260a4-bf09-4cc8-a032-8c0a261a1c36 error: ErrorMiddleware: Set HTTP Header: x-ms-request-id=c2f260a4-bf09-4cc8-a032-8c0a261a1c36
2024-05-24T11:06:07.968Z c2f260a4-bf09-4cc8-a032-8c0a261a1c36 error: ErrorMiddleware: Set content type: application/xml
2024-05-24T11:06:07.968Z c2f260a4-bf09-4cc8-a032-8c0a261a1c36 error: ErrorMiddleware: Set HTTP body: "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<Error>\n  AuthorizationResourceTypeMismatch\n  <Message>This request is not authorized to perform this operation using this resource type.\nRequestId:c2f260a4-bf09-4cc8-a032-8c0a261a1c36\nTime:2024-05-24T11:06:07.967Z</Message>\n</Error>"

When running the exact same test, but using azurite's IP address, it works without a problem.


Subset GTDB phylogeny to selected genomes

Do it in R.
One tree for all e.g. MarDB genomes, another for the ones we found in our data.

Handle the different inputs: Either the GTDB phylogenies (Archaea and Bacteria) as they are, or GTDBtk phylos.


Add diagnostic if self. is missing in front of init call

ASTGen will need to diagnose the missing self. or super.

@swift-ci Please test

IIUC the root cause is that we always consider init as the start of a declaration. If you want to call init on self, you need to disambiguate by prefixing it with self.. At least that’s how the old parser operated and I wanted to maintain this behavior.
Given that init is only valid as a type member and not in code blocks, we could change the rules a little bit and only consider init as the start of a declaration if we are parsing a MemberDeclList. This would make the following a valid parse (it currently isn’t), which will need to be diagnosed in ASTGen. WDYT?
class Foo {
  init() {}
  init(param: Int) {
    init()
  }
}

CC @CodaFi

Given that init is only valid as a type member and not in code blocks, we could change the rules a little bit and only consider init as the start of a declaration if we are parsing a MemberDeclList. This would make the following a valid parse (it currently isn’t), which will need to be diagnosed in ASTGen.

I'd be okay with this. It's not context-sensitive in any real sense, and it would be better for recovery to have init() be an expression wherever we allow them.

Updated the PR to allow calls to init without self. or super.

@swift-ci Please test


Update range_libc pywrapper scripts

Description
Update range_libc pywrapper scripts
Related links
Parent Issue:

Link

How was this PR tested?
Using test.py script
Notes for reviewers
None.
Interface changes
None.

Effects on system behavior
None.

Please provide more explanation for this PR, and also separate them into smaller PRs. Otherwise, it is too hard for review :)

@vividf
There are only two files changed

I create repository fork, commit changes in f1tenth_humble_range_libc branch in my fork and than create pull request.
In this pull request I do update range_libc  pywrapper scripts for f1tenth_humble branch.


CSV dialect - case sensitivity

I don't have a particular need, but perhaps the CSV dialect should record whether the headings are considered to be case sensitive. Seems to be a flag supported by at least some CSV readers: http://joshclose.github.io/CsvHelper/
Or if not, perhaps the doc should indicate the standard position on case sensitivity, even if it's "case sensitivity of headers is undefined".
(Tiny unrelated issue: too late to change "doubleQuote" to something less ambiguous?)

@stevage great suggestion. Do you want to make a specific suggestion and a pull request?


Atem Mini Extreme does not connect

Hi.
Facing a connection issue with new Atem mini extreme. Anybody else similar?

Mini extreme firmware 8.6 (first one with Extreme support)

@Vyrri74 how is it connected, companion only does Ethernet´, also is your ip's setup correctly, can you provide an image of the IP setup in the atem software, and the config page in companion

@McHauge I am having the same issue. I have atem mini pros that connect fine but my extreme does not connect.

@aaronbeaver you're also on the newer beta's right? well I don't have one myself, but I have seen both normal mini extremes and mini extreme iso's connected and running, but that might have been on a build that's a week or 2 old, and not a current one. if you have control over the mini via the atem software on the same pc (without the USB-C connected), then you should be able to do it with companion too. if not then networks is the most likely error.
BUT there is a catch, remember all Black Magic gear has a very low limit of connections they allow over the network, and on "consumer" gear it's a max of 3 network connections at once (if I remember correctly) so the atem software takes one of them, companion another, then you only have space for one iPad or phone or whatever else you need.

@McHauge well, in my case there is only 2 network connections to extreme, atem sw control and companion. I am also able to use smaller mini at my friends place. Same network subnet, only different target ip. Mini works fine...

Unfortunately I don't think I have enough information here to try and work from.
I do not think this will be specific to the extreme, it must be either an issue with the connection between your machine and the atem, or companion on your machine not liking atems.
I don't have an extreme to test with, but the mock extreme I have connects just fine, and I havent experienced any connection issues with any of the real atems I have. Also many people are able to connect to their extremes just fine, so if this module is doing something wrong it is going to be hard to replicate


mysql start error!

root@bluesky:~/workspace/bisheng/docker# docker compose up -d
[+] Running 7/7
✔ Container bisheng-redis      Healthy                                                                                0.0s
✔ Container milvus-etcd        Started                                                                                0.0s
✔ Container milvus-minio       Started                                                                                0.0s
✔ Container bisheng-office     Started                                                                                0.0s
✔ Container bisheng-es         Started                                                                                0.0s
✘ Container bisheng-mysql      Error                                                                                0.0s
✔ Container milvus-standalone  Started                                                                                0.0s  dependency failed to start: container bisheng-mysql is unhealthy
docker logs bisheng-mysql :
2024-01-23 16:47:02+08:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.27-1debian10 started.
2024-01-23 16:47:02+08:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql'
2024-01-23 16:47:02+08:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.27-1debian10 started.
2024-01-23 16:47:02+08:00 [Note] [Entrypoint]: Initializing database files
2024-01-23T08:47:02.327701Z 0 [Warning] [MY-011068] [Server] The syntax 'expire-logs-days' is deprecated and will be removed in a future release. Please use binlog_expire_logs_seconds instead.
2024-01-23T08:47:02.327774Z 0 [System] [MY-013169] [Server] /usr/sbin/mysqld (mysqld 8.0.27) initializing of server in progress as process 42
2024-01-23T08:47:02.329315Z 0 [ERROR] [MY-010187] [Server] Could not open file '/var/log/mysql.err' for error logging: Permission denied
2024-01-23T08:47:02.329348Z 0 [ERROR] [MY-013236] [Server] The designated data directory /var/lib/mysql/var/ is unusable. You can remove all files that the server added to it.
2024-01-23T08:47:02.329354Z 0 [ERROR] [MY-010119] [Server] Aborting
2024-01-23T08:47:02.329437Z 0 [System] [MY-010910] [Server] /usr/sbin/mysqld: Shutdown complete (mysqld 8.0.27)  MySQL Community Server - GPL.
2024-01-23 16:47:07+08:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 8.0.27-1debian10 started.
2024-01-23 16:47:07+08:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql'

my.cnf 配置不恰当，可以使用<IP_ADDRESS> 版本的my.cnf
在<IP_ADDRESS> 会修复配置

非常感谢！
在 2024-01-23 21:14:12，"姚劲" @.***> 写道：
my.cnf 配置不恰当，可以使用<IP_ADDRESS> 版本的my.cnf
在<IP_ADDRESS> 会修复配置
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>

补充，亲测，<IP_ADDRESS>版本的my.conf不能用，<IP_ADDRESS>的可以。


Setup a Vault screen: UI/Ux updates.

Must be bolder, needs description. When disabled different text.
Disabled “Upgrade to Diamond Hands to use Inheritance Key”
Enabled “Add Inheritance Key after adding the usual keys”

Wrong text.

@ASN-BitHyve Need revised content for the Learn more screen and also the text when the inheritance key is disabled.
https://www.figma.com/design/m5eMFTKD391AiJAXaEzgxB/Bitcoin-Keeper?node-id=6352-12464&t=FFx5AHuiSdc91RDP-1
For CTA mistake - the ctas are placed in the design system, please follow that @Raheel1258 , color should not be changed
https://www.figma.com/design/m5eMFTKD391AiJAXaEzgxB/Bitcoin-Keeper?node-id=124-790&t=FFx5AHuiSdc91RDP-1

UI change and text change has now been done
Note- that the learn more modal and button will be displayed either the inheritance key is enabled or not. Setup a Vault should have this learn more modal.
Section:
https://www.figma.com/design/m5eMFTKD391AiJAXaEzgxB/Bitcoin-Keeper?node-id=6556-11080&t=xnFM0s4MeJ9rQjpJ-1
S.S (for Pleb tier and Hodler tier)

Text change in enabled mode too (checkbox text):

Verified this issue on keeper app v 1.2.21(426)


i18n(es): update index

Description

What does this PR change? Give us a brief description.

Learn more
By default, every PR changing files present in the Lunaria configuration's files property will be considered and trigger status changes accordingly.
You can change this by adding one of the keywords present in the ignoreKeywords property in your Lunaria configuration file in the PR's title (ignoring all files) or by including a tracker directive in the merged commit's description.

Tracked Files

Locale
File
Note

es
index.mdx
Localization changed, will be marked as complete.

Warnings reference

Icon
Description

🔄
The source for this localization has been updated since the creation of this pull request, make sure all changes in the source have been applied.


Forbidden response does not send data to client in production.

This make sense for badRequest (although this is also doubtful), but i think it's important for client to know, why is it forbidden?
For example, i have policy that checks several request parameters, and if at least one does not meet the condition, it sends res.forbidden() indicating which of the parameters is not suitable.
I know how to solve this, i just think that such behavior must be default even in production.

Hi @misterjt, this is already on our roadmap, thanks!


Implement WM_ContextMenu

Needed this functionality as a user requested it once. Would appreciate that this is taken upstream, instead of relying on our private fork, from 2016.

Definitively a useful addition, I planed this initially (this is why there was a placeholder) but somehow it never got in.
I will make a small code review, because there is something I don't see as very useful.

Is there any chance you can also check the other TODOs in the WindowMessageSink?
They are NIN_SELECT & NIN_KEYSELECT as described here: https://docs.microsoft.com/en-us/windows/win32/api/shellapi/nf-shellapi-shell_notifyiconw

I think it would be beneficial to add those aswell.
Already found that Space and Enter don‘t activate the context menu. Eventually I can drop that casting and shifting around by adapting GET_X_LPARAM and GET_Y_LPARAM. According to documentation those macros should enable multi monitor scenarios. I‘ll convert the PR to a draft until I‘m finished and verified correct function.

Checked and implemented NIN_SELECT and NIN_KEYSELECT - implementation is equal to WM_CONTEXTMENU.
Removed the event handler for contextmenu, and used the ShowContextMenu-implementation.

Looks great from a code perspective, I will have a quick try later.

@punker76 @hardcodet this PR solves some of the small TODOs that were still open for keyboard usage.
I've approved the changes, I also had a quick test, looks good.
But as we forgot to discuss how we move forward with the branches, I don't like to merge this right away.
Also we might need to talk about how to move forward with next versions.

@Lakritzator IMO we should work on the develop branch until we want to release a new version which will be merged to the master and a new branch like release/x.x.x.

@punker76 I should have added my suggestion... yes, work in develop, and branch out. The 1.1 hasn't been branched out, I will do so, so I can merge this.

@Lakritzator The missing branch was a mistake by me

@Lakritzator The missing branch was a mistake by me

Okay, push it

@Lakritzator done

@AliveDevil thank you for your work.
I currently can't tell when this is released, keep an eye out on the project.


Format filesystem mountpoints with labels Issue #1214

Fixes Issue #1214
For each mountpoint a label can be added.
It can be added to the format string via %label%
For example my config:
[module/filesystem]
type = internal/fs
mount-0 = /
mount-1 = /media/platte
label-0 = R
label-1 = D
label-mounted = %{F#0a81f5}%label%%{F-}: %free%

I'm off for a few weeks, gonna review this once I get back

I really like this feature, @patrick96 please review it, thanks

@koppa Are you still around to work on this?


pretext_to_tpf feature updates

Use fasta input instead of TPF.
script is rapid_split.pl

Creation of fasta output rather than TPF, so that curators don't have to run another script, might be nice to save an AGP alongside the fast
script is rapid_join.pl/multi_join.py

Separate summary stats for each haplotype - also format stats into more readable format for curators.

Add a new Target tag which acts in the same way that Contaminant already does

Fix bug with 1 pixel gap between fragments during cuts Or should they be reported in an error message that makes them easy to find in PretextView?

Print sensible error message where -a and -p command line arguments are the wrong way round, which results in pretext-to-tpf failing to parse the Pretext bp per pixel value

Make matching of haplotype names to scaffold names case insensitive

Enable switching scaffolds to another haplotype when they are not in a painted chromosome in that haplotype

Print error/ warning message when a scaffold has the metadata tag 'unloc' but is not painted into a super scaffold

Add interpretation of roman numeral metadata tags

Note that the "Target" tag should also create a csv in the way the "HAP" tags do


[Feature]: Introduce side or bottom drawer widget(alternative to modal)

Is there an existing issue for this?

[X] I have searched the existing issues

Summary
Side drawers are a common UI element in web apps and mobile apps today. They look elegant and can serve different purposes.
Examples:

Why should this be worked on?
This is a widget that can replace Modal's functionality in some places and in other places it can act like a menu bar.

Similar to the modal widget, this is a container which slides on top of the current page. This is useful for letting users focus without having to leave the page
Adding references from component libraries
https://ant.design/components/drawer/
https://mdbootstrap.com/docs/standard/extended/drawer/#docsTabsOverview
https://chakra-ui.com/docs/components/overlay/drawer

Internal user was looking for this - https://www.notion.so/appsmith/Rishabh-Kashyap-85ea180b031b42e58ef0f7a4910580cf

Interested in this.

Very useful and interesting feature!
Do you know if this is implemented or planned for a coming feature?

@GeraldineAlphonse we don't have this on our roadmap yet. Could you tell us your use case here?

@GeraldineAlphonse we don't have this on our roadmap yet. Could you tell us your use case here?

I can share my use cases for this:
1. Multiple actions for a selected row, some actions needs additional guidence text:
I have an item in my datatable (e.g an Invoice, IT asset etc.) I could add a menu button to access all actions for that particular row, but sometime is make sense to add some helper text to the button about what it will perform. With a side drawer I could list out all the actions, sectionize them and add the helper text where needed.
2. I need some info from the screen where I opened the drawer:
Modals are covering the center of the screen. Drawer functions similar to a modal, giving the user a focused action area. I could the selected rows details, or compare an oepend row to another row visible in my datatable. There are loads of reasons why drawer in some cases is better than a modal.
There can be three types of drawers which could be useful I think.

Overlay: Comes on top of the content like a modal from the right side. Can be closed.
Fixed: a fixed panel on the right side, breaking the page into two parts. Cannot eb closed.
Sqeezing: Sometimes it is a good idea to have a drawer which is not sliding on top of the data. It should sqeeze the visible page from the right side. Can be closed.


Add swift lint rules to the project.

There's one error on defaultSetup():
Cyclomatic Complexity Violation: Function should have complexity 10 or less: currently complexity equals 11 (cyclomatic_complexity)

I'll approve this, try to push to CocoaPods and if I can't, I'll cry a little bit then ask you to do it 😉
Regarding the warning, I'll create an error for this


Update tsconfig-paths dependency

The current version of eslint-plugin-import uses tsconfig-paths 3.14.1
The issue with this version is that it's dependency json5 1.0.1 is dependent on minimist 1.2.0 which has a vulnerability
Minimist <=1.2.5 is vulnerable to Prototype Pollution via file index.js, function setKey() (lines 69-95).
The latest version of tsconfig-paths 4.1.2 uses json 2.2.2 which does not have the minimist 1.2.0 dependency/vulnerability.

the vulnerability is in json5, not tsconfig-paths
we depend on tsconfig-paths v3, which depends on json5 v1
json5 v1 and v2 both have the fix published, so all you need to do is update your lockfile
this is not actually a valid vulnerability for this plugin anyways, so it's irrelevant
tsconfig-paths v4 is absolutely a breaking change because it drops, among others, node 4 - see #2447

This is a duplicate of #2625; a duplicate of #2628; a duplicate of #2626; a duplicate of #2627; a duplicate of #2631; a duplicate of #2632; a duplicate of #2634; a duplicate of #2635; a duplicate of #2636; a duplicate of #2637; a duplicate of #2639; a duplicate of #2642; a duplicate of #2643; a duplicate of #2649; a duplicate of #2655; a duplicate of #2660; a duplicate of #2670; a duplicate of #2692.


Uncontrolled motion of the head

Hello,
I tried to run the depth estimation for a video for a person who is talking but I have continuous motion of the head(like the shake of the head even though the person is not moving his head that much). May I know what could be the possible reasons.please find the attached gif

It maybe caused by the unstable detecting box. Could you please provide the original video?

Any feedback?


Implement option to silence log outputs (specially for private repos)

Greetings! Sometimes, it is unnecessary to show log outputs since they can have sensitive information that needs to be private. Others might already use this workflow in a public repository and that means they could leak sensitive information about their private repos.

What kind of things are logged that are sensitive?

@kbrashears5 the private repos itself

@kbrashears5 Currently in my forked repo, I'm using > /dev/null to silence curl outputs. Are you agree with that? I can do PR if you agree with that implementation.

@kbrashears5 gentle ping

@kbrashears5 gentle ping


Public Pretrained models

Hi, thanks for your interesting works and transparency. Although you have provided scripts to reproduce all models, could you also make public the pretrained weights? It would be much appreciated. Thank you.

Apologies for the extremely long delay. If you still need them, they could be found here: https://drive.google.com/file/d/1UxOkQB4X29UvnyAgESv2Pyye3mecTmQp/view?usp=sharing


Possible to not rely on the ~/.aws config?

I predominantly use API keys as environment variables by way of apicreds and thus haven't really ever needed to set up AWS local profiles (and would prefer not to given the local persistent plaintext creds).
I'm wondering if there's an easy way I can use prowler in this scenario? The tool seems pretty hardcoded to expect the aws config file to exist, but would love to give it a spin.

Hi @d-j-c, makes sense what you asking. I should make first prowler look if env vars credentials are set, not sure if it should be a default behavior or a new option like "prowler -e" to load creds from environment variables, what do you think?

awscli should do this on it's own if variable names correlate with their specification, so I'm guessing the -e would be used to bypass this block
  echo -e "\n$RED ERROR!$NORMAL AWS credentials file not found (~/.aws/credentials). Run 'aws configure' first. \n"
  return 1
fi```

Actually, what AWS recommends in official docs is to follow this order:

Command line options
Environment variables
The AWS credentials file
The CLI configuration file
Container credentials
Instance profile credentials

What I'm testing now is to look first at 2, then 3, then 6.
In my opinion, 1 is not good idea, 3 is covered with 2 and 4 is irrelevant so far.  Doing it in that order by default is the way to be consistent with AWS.
More info here http://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html#config-settings-and-precedence

Yeah but all those are already handled by awscli, so if you were to bypass the ~/.aws/credentials check, it should automatically pick up env variables from apicreds

yeah I had commented out the check @TaiSHiNet
-if [[ ! -f ~/.aws/credentials ]]; then
-  echo -e "\n$RED ERROR!$NORMAL AWS credentials file not found (~/.aws/credentials). Run 'aws configure' first. \n"
-  return 1
-fi

However the expectation of a profile name is baked throughout the script and the region is hardcoded so I still get failures.
$ aws sts get-caller-identity --output json --profile default --region ap-southeast-2 --query "Account" | tr -d '"'

The config profile (default) could not be found

And removing --profile I have some success.
$ aws sts get-caller-identity --output json --region ap-southeast-2 --query "Account" | tr -d '"'
062921715532

There seems to be agreement that working from env variables is desirable so if I'm not beaten to it I'll do more work on it and submit a PR.

ok, I got it. I'm working on it now, few changes have to be done to make it work though.

Ok, there you go guys @d-j-c @TaiSHiNet let me know if it works fine now. I have tested 3 use cases and worked for me:
1- having creds on environment variables OK
2- having only a default profile in ~/.aws/credentials OK
3- having additional profiles with tokens OK
Haven't tested with IAM instance profile yet but should work (or at least functionality added). Any feedback is welcome. Thanks!


BUILD_WITH_CONTAINER=0
make update-goldens

@lei-tang: PR needs rebase.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@lei-tang: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

mesh_operator
876219615ae55ac0194e0bd519dd9bbe4d2ea7f2
link
/test mesh_operator

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@lei-tang: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

mesh_operator
876219615ae55ac0194e0bd519dd9bbe4d2ea7f2
link
/test mesh_operator

lint_operator
876219615ae55ac0194e0bd519dd9bbe4d2ea7f2
link
/test lint_operator

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@lei-tang: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

mesh_operator
876219615ae55ac0194e0bd519dd9bbe4d2ea7f2
link
/test mesh_operator

lint_operator
876219615ae55ac0194e0bd519dd9bbe4d2ea7f2
link
/test lint_operator

e2e_operator
876219615ae55ac0194e0bd519dd9bbe4d2ea7f2
link
/test e2e_operator

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@lei-tang: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

mesh_operator
876219615ae55ac0194e0bd519dd9bbe4d2ea7f2
link
/test mesh_operator

lint_operator
876219615ae55ac0194e0bd519dd9bbe4d2ea7f2
link
/test lint_operator

e2e_operator
876219615ae55ac0194e0bd519dd9bbe4d2ea7f2
link
/test e2e_operator

test_operator
876219615ae55ac0194e0bd519dd9bbe4d2ea7f2
link
/test test_operator

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@lei-tang: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

mesh_operator
876219615ae55ac0194e0bd519dd9bbe4d2ea7f2
link
/test mesh_operator

lint_operator
876219615ae55ac0194e0bd519dd9bbe4d2ea7f2
link
/test lint_operator

e2e_operator
876219615ae55ac0194e0bd519dd9bbe4d2ea7f2
link
/test e2e_operator

test_operator
876219615ae55ac0194e0bd519dd9bbe4d2ea7f2
link
/test test_operator

mandiff_operator
876219615ae55ac0194e0bd519dd9bbe4d2ea7f2
link
/test mandiff_operator

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@lei-tang: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

mesh_operator
876219615ae55ac0194e0bd519dd9bbe4d2ea7f2
link
/test mesh_operator

lint_operator
876219615ae55ac0194e0bd519dd9bbe4d2ea7f2
link
/test lint_operator

e2e_operator
876219615ae55ac0194e0bd519dd9bbe4d2ea7f2
link
/test e2e_operator

test_operator
876219615ae55ac0194e0bd519dd9bbe4d2ea7f2
link
/test test_operator

mandiff_operator
876219615ae55ac0194e0bd519dd9bbe4d2ea7f2
link
/test mandiff_operator

gencheck_operator
876219615ae55ac0194e0bd519dd9bbe4d2ea7f2
link
/test gencheck_operator

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


Traccar integration

if someone else is interested in integration of car stats viewer with traccar I have made a protocol decoder for traccar
https://github.com/ivanfmartinez/traccar/tree/v5.9_car_stats_viewer
As my traccar instance already send the data to MQTT I can do other integrations easily

Updated to v5.12 : https://github.com/ivanfmartinez/traccar/tree/v5.12_car_stats_viewer
The compilation works fine on 6.1 also but I have not upgraded my instance yet : https://github.com/ivanfmartinez/traccar/tree/v6.1_car_stats_viewer

@Ixam97 what you think about including the screenshots #167  in the API data ?
I have looked and traccar support storing images from tracked devices, I can extend this protocol decoder to accept images, if you agree to add option to send them together on the API json.

For anyone wanting to get car data on homeassistant this is working fine using traccar integration : https://www.home-assistant.io/integrations/traccar_server/


Move elements from googleapi to internal package where possible.

googleapi has become the de facto location for helper functions etc. which are intended to be used by developers (e.g. IfNoneModified).  However, there also remain a bunch of functions which are implementation details (e.g. CombineFields).  These implementation details should be moved into the internal package.

These clients are in maintenance mode. We don't plan to address this issue.
@pongad for the next generation of clients.


Application Exception: An error occurred while sending the request.

This is an issue created automatically by GrammarNazi when an exception was captured.
Date (UTC): 04/05/2021 22:03:04
Exception:
System.Net.Http.HttpRequestException: An error occurred while sending the request.
---> System.IO.IOException: The response ended prematurely.
at System.Net.Http.HttpConnection.SendAsyncCore(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
--- End of inner exception stack trace ---
at System.Net.Http.HttpConnection.SendAsyncCore(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.SendWithRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
at System.Net.Http.HttpClient.SendAsyncCore(HttpRequestMessage request, HttpCompletionOption completionOption, Boolean async, Boolean emitTelemetryStartStop, CancellationToken cancellationToken)
at Telegram.Bot.TelegramBotClient.MakeRequestAsync[TResponse](IRequest`1 request, CancellationToken cancellationToken)
at GrammarNazi.App.HostedServices.TelegramBotHostedService.OnMessageReceived(Object sender, MessageEventArgs messageEvent) in /src/GrammarNazi.App/HostedServices/TelegramBotHostedService.cs:line 135
at GrammarNazi.App.HostedServices.TelegramBotHostedService.b__7_0(Object obj, MessageEventArgs eventArgs) in /src/GrammarNazi.App/HostedServices/TelegramBotHostedService.cs:line 83

This exception was thrown in the following line:
https://github.com/nminaya/grammar-nazi-bot/blob/e2be392ea7ff5fd982fc80b8504ab76988f069d0/GrammarNazi.App/HostedServices/TelegramBotHostedService.cs#L134-L135
Could be related to a Telegram.Bot issue or a momentaneous network issue in the server.
I'll close this since it's currently working ok.


maxTicksLimit - logarithmic

I am trying to add a maximum number of ticks to the logarithmic scale on the Y Axis, currently it is displaying 30 really bunched together. I would like to limit to around 10 to have some padding in between. I see there is a maxTicksLimit for linear scale, is there any chance this can be added to logarithmic scales?
Version 2.0

@craigie2204 you could try adding a callback to scale.options.afterBuildTicks and changing the ticks array.

Thanks I will give that a try and let you know how I get on

Found a work around on this plunker https://jsfiddle.net/olyckne/7ycm5bjg/10/
Options.scales.ticks.userCallback :
function(label, index) { console.log(index); return index % 5 === 0 ? label: '';}
Thanks!


Handle markdownlint-disable-file before file parsing

markdownlint can handle special comment for lint disabling
<!-- markdownlint-disable-file -->

If file is very big this slows down file processing - we need to tokenize all file data and then drop this tokens, because first token is special comment.
So, best strategy will be to handle this comment manually or to add optimistic check to markdownlint itself.

Interviewed 3y3. Some important notes:
The code to fix is either in diplodoc-cli or diplodoc-transform.
We're handling this comment manually (not adding optimistic checks to markdownlint).
The special comment for lint disabling should be on the first line containing non-white space symbols (cr, lf, tab, etc).
For test purposes one should use comment for lint disabled that is generated by openapi-extension (that covers most of real-life scenarios).


Fixes the conditions for GAE CI in PR and on main, add timeout for test_java_app.py

What do these changes do?

Make the CI conditions consistent in pull request and on main
Extend the timeout limits for java app tests.

Related issue number
N/A

Is timeout limit set for java app tests?

Is timeout limit set for java app tests?

Fixed. The changes was not added before commit.

Codecov Report

Merging #2148 (727f1f1) into main (998e361) will increase coverage by 24.64%.
The diff coverage is 100.00%.

Additional details and impacted files

@@             Coverage Diff             @@
##             main    #2148       +/-   ##
===========================================
+ Coverage   40.08%   64.72%   +24.64%
===========================================
  Files          87       89        +2
  Lines        9904     9948       +44
===========================================
+ Hits         3970     6439     +2469
+ Misses       5934     3509     -2425

Impacted Files
Coverage Δ

python/graphscope/tests/unittest/test_java_app.py
53.65% <100.00%> (+53.65%)
:arrow_up:

...aphscope/tests/kubernetes/test_resource_builder.py
0.00% <0.00%> (-100.00%)
:arrow_down:

...on/graphscope/tests/kubernetes/test_demo_script.py
0.00% <0.00%> (-91.75%)
:arrow_down:

python/graphscope/deploy/kubernetes/utils.py
11.90% <0.00%> (-58.58%)
:arrow_down:

python/graphscope/deploy/kubernetes/cluster.py
22.67% <0.00%> (-50.93%)
:arrow_down:

...thon/graphscope/tests/kubernetes/test_with_mars.py
0.00% <0.00%> (-44.83%)
:arrow_down:

python/graphscope/interactive/query.py
41.12% <0.00%> (-38.71%)
:arrow_down:

...n/graphscope/deploy/kubernetes/resource_builder.py
30.12% <0.00%> (-25.11%)
:arrow_down:

python/graphscope/client/rpc.py
76.85% <0.00%> (-4.63%)
:arrow_down:

python/graphscope/__init__.py
82.14% <0.00%> (ø)

... and 46 more

Continue to review full report at Codecov.

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


Burn amount exceeds balance when trying to withdraw USDC from L2->L1

To reproduce:

Go to staging
Navigate to Bridge
Select Mainnet
Select USDC
Select Withdraw
Select Arbitrum One in the From chain
Try withdrawing an amount below or equal to your balance

Expected results:

To test locally, change protocol repo branch to staging and run yarn dev on world-builder-dashboard

#199


Division by zero in random_cropper::make_random_cropping_rect

I get an unhandled exception:

Unhandled exception at 0x00007FF7BADDBBFF in program.exe: 0xC0000094: Integer division by zero. occurred

This occurs on the first line of:
            point offset(rnd.get_random_32bit_number()%(img.nc()-rect.width()),                 rnd.get_random_32bit_number()%(img.nr()-rect.height()));
Dlib is built with VS2017 with CUDA in RelWithDebInfo.
Available runtime values are:

dims	{rows=300 cols=300 }
img	{data={...} nr_=93 nc_=125 ...} }
maxs	0.31000000000000000

The scale is not available but some simple math suggests it is equal to maxs, making the rect and the img equal in width (or height).
Is this an unhandled edge case in random_croper? Could this mean one of the images in the data set is tagged wrong in some way?
On a side note: that way of generating a random number from a range does not give a uniform distribution (unless the divisor happens to divide the entire range without a reminder.)
Backtrace (copied from VS, it looks terrible on github):

[Inline Frame] program.exe!dlib::random_cropper::make_random_cropping_rect(const dlib::matrix<dlib::rgb_pixel,0,0,dlib::memory_manager_stateless_kernel_1,dlib::row_major_layout> &) Line 282	C++	Symbols loaded.
program.exe!dlib::random_cropper::make_crop_plan<dlib::matrix<dlib::rgb_pixel,0,0,dlib::memory_manager_stateless_kernel_1,dlib::row_major_layout> >(const dlib::matrix<dlib::rgb_pixel,0,0,dlib::memory_manager_stateless_kernel_1,dlib::row_major_layout> & img, const std::vector<dlib::mmod_rect,std::allocatordlib::mmod_rect > & rects, dlib::chip_details & crop_plan, bool & should_flip_crop) Line 238	C++	Symbols loaded.
program.exe!dlib::random_cropper::operator()<dlib::matrix<dlib::rgb_pixel,0,0,dlib::memory_manager_stateless_kernel_1,dlib::row_major_layout>,dlib::matrix<dlib::rgb_pixel,0,0,dlib::memory_manager_stateless_kernel_1,dlib::row_major_layout> >(const dlib::matrix<dlib::rgb_pixel,0,0,dlib::memory_manager_stateless_kernel_1,dlib::row_major_layout> & img, const std::vector<dlib::mmod_rect,std::allocatordlib::mmod_rect > & rects, dlib::matrix<dlib::rgb_pixel,0,0,dlib::memory_manager_stateless_kernel_1,dlib::row_major_layout> & crop, std::vector<dlib::mmod_rect,std::allocatordlib::mmod_rect > & crop_rects) Line 175	C++	Symbols loaded.
program.exe!dlib::random_cropper::operator()<std::vector<dlib::matrix<dlib::rgb_pixel,0,0,dlib::memory_manager_stateless_kernel_1,dlib::row_major_layout>,std::allocator<dlib::matrix<dlib::rgb_pixel,0,0,dlib::memory_manager_stateless_kernel_1,dlib::row_major_layout> > >,dlib::matrix<dlib::rgb_pixel,0,0,dlib::memory_manager_stateless_kernel_1,dlib::row_major_layout> >(const std::vector<dlib::matrix<dlib::rgb_pixel,0,0,dlib::memory_manager_stateless_kernel_1,dlib::row_major_layout>,std::allocator<dlib::matrix<dlib::rgb_pixel,0,0,dlib::memory_manager_stateless_kernel_1,dlib::row_major_layout> > > & images, const std::vector<std::vector<dlib::mmod_rect,std::allocatordlib::mmod_rect >,std::allocator<std::vector<dlib::mmod_rect,std::allocatordlib::mmod_rect > > > & rects, dlib::matrix<dlib::rgb_pixel,0,0,dlib::memory_manager_stateless_kernel_1,dlib::row_major_layout> & crop, std::vector<dlib::mmod_rect,std::allocatordlib::mmod_rect > & crop_rects) Line 157	C++	Symbols loaded.
[Inline Frame] program.exe!dlib::random_cropper::append::__l2::(long) Line 135	C++	Symbols loaded.
program.exe!dlib::impl::helper_parallel_for_funct<void (long) >::run(long i) Line 54	C++	Symbols loaded.
program.exe!dlib::impl::helper_parallel_for<dlib::impl::helper_parallel_for_funct<void (long) > >::process_block(long begin, long end) Line 37	C++	Symbols loaded.
[Inline Frame] program.exe!dlib::member_function_pointer<long,long,void,void>::operator()(long) Line 360	C++	Symbols loaded.
program.exe!dlib::thread_pool_implementation::thread() Line 206	C++	Symbols loaded.
[Inline Frame] program.exe!dlib::thread_pool_implementation::{ctor}::__l4::() Line 26	C++	Symbols loaded.
[Inline Frame] program.exe!std::_Invoker_functor::_Call(dlib::thread_pool_implementation::{ctor}::__l4::void (void) &&) Line 1790	C++	Symbols loaded.
[Inline Frame] program.exe!std::invoke(dlib::thread_pool_implementation::{ctor}::__l4::void (void) &&) Line 1790	C++	Symbols loaded.
[Inline Frame] program.exe!std::_LaunchPad<std::unique_ptr<std::tuple<void (void) >,std::default_delete<std::tuple<void (void) > > > >::_Execute(std::tuple<void (void) > &) Line 240	C++	Symbols loaded.
[Inline Frame] program.exe!std::_LaunchPad<std::unique_ptr<std::tuple<void (void) >,std::default_delete<std::tuple<void (void) > > > >::_Run(std::_LaunchPad<std::unique_ptr<std::tuple<void (void) >,std::default_delete<std::tuple<void (void) > > > > *) Line 247	C++	Symbols loaded.
program.exe!std::_LaunchPad<std::unique_ptr<std::tuple<void (void) >,std::default_delete<std::tuple<void (void) > > > >::_Go() Line 232	C++	Symbols loaded.
program.exe!std::_Pad::_Call_func(void * _Data) Line 211	C++	Symbols loaded.
[External Code]		Annotated Frame

This is fixed in the newest code on github.

I see the fix. I guess I should switch to master. I am currently using the latest (19.7) version.

Yep, definitely use master.
And thanks for reporting the bug, even it was already fixed :)


Refactoring

The charset option caused a build error: error TS5101: Option 'charset' is deprecated and will stop functioning in TypeScript 5.5. Specify compilerOption '"ignoreDeprecations": "5.0"' to silence this error.

I would have liked to add a few upfront micro-optimizations, but they go against your style and make the code a bit unclear 😅

The charset option caused a build error: error TS5101: Option 'charset' is deprecated and will stop functioning in TypeScript 5.5. Specify compilerOption '"ignoreDeprecations": "5.0"' to silence this error.

It had to be removed from all grammY repos, it's good to do this here, too.

I would have liked to add a few upfront micro-optimizations, but they go against your style and make the code a bit unclear 😅

@Nazar-Ant Feel free to add those if it improves the plugin. We'll see if it does affect the style and readability of the code after you add them. And if it's too much, we can revert the changes.

In general, it is bad practice to use the function name() {} without using this. I don't remember exactly, but the reason there is to create a function context, which is a rather difficult operation for a runtime, although modern runtimes can skip this step, but the code has to run for a while to collect statistics. Therefore, it is better to replace all function name() {} with variables with arrow functions, which are inherently context-free.

By the way, did you know that converting a list of emojis into a JSON object, which is then converted into a JS object (JSON.parse()), can speed up the launch of a bot by 10-30% (the exact numbers depend on the runtime and the system itself; I haven't tested this for our emoji list)? The reason is that it's easier for a runtime to parse JSON syntax than JS because of its considerable lightness.

If you still prefer a function name () {}, you should place it in a variable, because then the function object will be created lazily instead of instantly, which will delay a runtime-intensive operation. That is:
function name () {} - intensive
const name = function () {} - simple

In general, it is bad practice to use the function name() {} without using this. I don't remember exactly, but the reason there is to create a function context, which is a rather difficult operation for a runtime, although modern runtimes can skip this step, but the code has to run for a while to collect statistics. Therefore, it is better to replace all function name() {} with variables with arrow functions, which are inherently context-free.

Interesting. I didn't know that. But I'll leave the confirmation to @KnorpelSenf because I don't much about anything :)
Even though generally we tend to use normal function declaration style on the top level across grammY repositories, this change is okay I guess.

By the way, did you know that converting a list of emojis into a JSON object, which is then converted into a JS object (JSON.parse()), can speed up the launch of a bot by 1.7x (the exact numbers depend on the runtime and the system itself; I haven't tested this for our emoji list)? The reason is that it's easier for a runtime to parse JSON syntax than JS because of its considerable lightness.
https://v8.dev/blog/cost-of-javascript-2019#json

Another interesting thing that I didn't know!
Do you think we can use here if it'll improve the performance? But what about auto-completion though? Does that affect it?

I think there will be problems with the automatic creation of types as it is now. You will have to create a new huge type for this.
You don't really have to worry about that. It won't play a significant role. Except that it will save a little bit of resources on serverless

I'm just bragging about my knowledge. Recently, I came across a Ukrainian programmer who understands JS up to the point where it is converted into bytecode and executed on the hardware level. I follow his work quite closely. He is increasingly opening my eyes to how JS really works.
By the way, if you replace all let/const in your code with var (if you thought it was outdated, you are very wrong), you can significantly optimize the framework's performance. The reason is that let/const uses certain checks that are completely absent in var. It also turned out that the concept of var is very logical, and let/const is overused, which spoiled the expressiveness of the language.

@KnorpelSenf, I don't see any breaking changes in this. What should we do about the next package versioning, given that the emoji list have been corrected and updated? I think we can make it a minor release, because now we at least leave the incorrect emoji names as it is.

Then again, the current setup is very simple yet very reliable, and messing around with it to save a few ms at best might not be worth the headache. This is something for @dcdunkan to decide :)

Then again, the current setup is very simple yet very reliable, and messing around with it to save a few ms at best once during startup might not be worth the headache. This is something for @dcdunkan to decide :)

I agree with you after reading your comment. I think the setup we currently have in this PQ is great and simple enough.


Is it possible to use this without npm?

First, thanks so much for making this!
I tried to use it in the browser via:
import("https://cdn.jsdelivr.net/npm/wc-mermaid/wc-mermaid.js");

but it fails because it’s importing 'mermaid/dist/mermaid', which does not resolve.
I used import maps to fix that, but it would be nice if there was a CDN version that worked out of the box.

Having a new release (hopefully with support for current Mermaid) would be great!


ward field is not populated when find ward button is run

On the website,
I noticed that when an address is input into the field
and find ward button is pressed, the ward number wasn't not being populated/filled into the id_ward input field.
when the find ward button is pressed, lookup_address does make a fetch query -

and this is the response:
HTTP/1.1 200 OK Connection: keep-alive Server: gunicorn/20.0.4 Date: Thu, 11 Feb 2021 15:48:17 GMT Content-Type: text/html; charset=utf-8 X-Frame-Options: DENY Content-Length: 19 X-Content-Type-Options: nosniff Referrer-Policy: same-origin Via: 1.1 vegur

I just tested it with my address and it worked...
but it looks like if I type an address which doesn't properly geocode, we're not dealing with the 500 error
seems to be a different issue than what you're seeing.  What address did you use?

I've tried a couple different addresses with different results:
no response in console and ward field not populated:
1921 MAYVIEW AVE (also tried 1921 MAYVIEW)
3808 LEOPOLD AVE (also tried 3808 LEOPOLD)
18327 HOMEWAY
500 error in console:
12008 WAYLAND AVE
5103 detroit
worked as expected:
2100 Lakeside
If you need random addresses to try out, check out twitter.com/everylot_cle :)


Fix syntax error in stop-runner-if-no-job.sh

This trailing fi on the end would likely cause the Runner.Listener to
be terminated to early.

@jhtimmins This might be the issue with your builds (no logs)

There's more cases actually, but this might help a bit


Support for Telegram Flavored Markdown

Currently, the library uses<EMAIL_ADDRESS>for the purpose of parsing the markdown to HTML and which seems to be using GFM spec. But, I originally created this library as an dependency for a future plugin of grammY (docs) -- an amazing Telegram Bot Framework for Deno and Node.js -- called grammy-telegraph. So, since this library is supposed to be used in a Telegram Bot framework, it is necessary to have support for the Markdown syntax that Telegram supports. Also, if you didn't knew, Telegra.ph is created by the Telegram Team - https://telegram.org/blog/instant-view#telegraph. So, really need it.
TODO

[x] Add custom parsers for both MarkdownV2 ~and Markdown~ as described here.
[x] Merge all content parsing helper functions to one: parse. With an option to specify the parseMode of the content provided.
So it should look like,

parse("**Bold (GFM)**", "HTML"); // Marky default.

// Telegram MarkdownV2 and V1 uses the exact spec.
// Main difference are the escaping and nesting. I think it's okay to
// only have one version.
// parse("*Bold (TFM)*", "TGMarkdown"); // https://core.telegram.org/bots/api#markdown-style

parse("*Bold \*(TFM)*", "TGMarkdownV2"); // https://core.telegram.org/bots/api#markdownv2-style
parse("<b>HTML Bold</b>", "HTML"); // Normal HTML.

If anybody reading this, you can contribute if you want to.

Completed. See #4.