Docker and AWS

I tried following the documentation for using AWS with docker.  The AWS instance is a Basic Deep Learning Ubuntu build on a p2.xlarge with 65 GB storage, as specified in the docs.  The dockerfile is the same as I use for submissions for a score.  I almost got it to run, but it has an error:
'Academy' started successfully!
Unity Academy name: Academy
        Number of Brains: 1
        Number of Training Brains : 1
INFO:gym_unity:1 agents within environment.
: cannot connect to X server

This is what I used to start the docker image:
docker run --runtime=nvidia -v "$PWD"/test_submission:/aaio/test submission_scripts python /aaio/test/testDocker.py

I ran your latest submission following the instructions from the documentation and managed to run your command just fine.
Are you using the recommended deep learning AMI? It should work with this one (you can remove the folders present in the home directory if you're not using them -especially anaconda- as they take a lot of space).

That's odd.  I am using the suggested Deep Learning AMI Ubuntu, p2.xlarge, as specified in the documentation:
Deep Learning Base AMI (Ubuntu 16.04) Version 19.2 - ami-0dda3a10b93f38b21
I would need to get more permissions (for 8 vCPUs) to run the instance you linked to.  It seems that the issue is with opening a graphical window (cannot connect to X server).

I uploaded the docker image that I submitted and you tested and, sure enough, it runs on the AWS machine.  There must be something wrong with the docker image that I created on the AWS machine.  I'll investigate further.

Works fine now.  Never figured it out, just rebuilt the docker image from scratch and it works.

glad you managed to fix the issue!


tmux_linux.talon should be merged into tmux.talon and use appropriate actions

Tmux is unix only right? Would this entail testing it on other linux desktops or even other unixoid operation systems? Or just to migrate commands like "mux split horizontal" to the split tag?


grep codebase for TODO and resolve each

Noticing a growing number of these - just want to be sure we don't miss them.

 Was just about to create up the same ticket :)

Like magic, no more TODOs!


[Update] Adding a method to create an entity naturally

API | Common
To fix conflicts, I recreated a new branch.

Condense the three commits into 1 please.

I just made a rebase.


clamav: 1.2.0 -> 1.2.1

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://repology.org/project/clamav/versions.
meta.description for clamav is: Antivirus engine designed for detecting Trojans, viruses, malware and other malicious threats
meta.homepage for clamav is: https://www.clamav.net
Updates performed

Version update

To inspect upstream changes
Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 1.2.1 with grep in /nix/store/gdqmps16l2bab8nyylkw17mlraxyxa32-clamav-1.2.1
found 1.2.1 in filename of file in /nix/store/gdqmps16l2bab8nyylkw17mlraxyxa32-clamav-1.2.1

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

1 total rebuild path(s)

1 package rebuild(s)

First fifty rebuilds by attrpath
clamav

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/gdqmps16l2bab8nyylkw17mlraxyxa32-clamav-1.2.1 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A clamav https://github.com/r-ryantm/nixpkgs/archive/ba934a880749ea5bb8b608d83c19338789f67a85.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/ba934a880749ea5bb8b608d83c19338789f67a85#clamav

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

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

clamav

Maintainer pings
cc @robberer @qknight @globin for testing.

Result of nixpkgs-review pr 263772 run on x86_64-linux 1

1 package built:

clamav


Add documentation explaining METR's support model for Vivaria

What is a "support model" ?

To what extent METR will support other users of VIvaria, e.g. how quickly we'll respond to GitHub issues and emails, what kinds of PRs we're interested in receiving.


Improve relationship between aggregate instances and their events.

Summary
This change is about inverting the way aggregate instances are related to the events they produce in the persistence layer.
In short, rather than storing event ranges in aggregate instance meta-data we will store aggregate instance revisions in the event store.
Rationale
The SaveOffset() operation is currently the only transactional operation that needs to return information to the caller (the event offset). Furthermore, the only reason it needs to do this is so that the offsets in aggregate meta-data can be populated to handle the notion of "instance destruction".
There are a few reasons why returning data from a transaction operation  is undesirable:

The SQL provider implementations have to lock the event_offset table when the first event is recorded until transaction is committed.
It makes it difficult to batch recording of multiple events in a single database operation.
Not all persistence providers would be able to implement this easily or at all. DynamoDB (#175) for instance, supports transactions but they are submitted as a singular operation via a HTTP API.

Proposal
As it stands, aggregatestore.MetaData contains an event offset range that defines the interval that includes the instance's historical events. When an instance is destroyed the lower-bound of that range is updated to the upper-bound, forming a 0-length range after all existing events.
What I'm proposing is that we instead store the instance's revision against each event in the event store, and query based on the revision that the instance was last destroyed. The event store already persists the handler key and instance ID, so this is not some new coupling of systems that did not exist before.
This obviates the need for the offset return value, and potentially opens us up to submitting events to the database in a single round-trip.
Checklist
These are items that I think we'll need to address directly as part of this issue.

[ ] Work out how to pass the revision to SaveEvents(), some ideas:

Add a separate SaveEventsForAggregate(rev, envelopes) method
Use functional options (SaveEvent(env, WithAggregateRevision(rev))
Pass an options struct

[ ] Replace offset range in aggregatestore.MetaData with a revision range
[ ] Allow querying of events by aggregate revision, options

Add MinAggregateRevision to query
Add separate LoadEventsForAggregate() method (I think I prefer this, we could probably do away with eventstore.Query altogether)

And doing so we open up the door to the following:

#168 Remove offset return value from SaveEvents
#221 Replace SaveEvent() with SaveEvents()
#222 Defer insertion of events to Commit() in SQL providers
#223 Allow batch inserts of messages in SQL providers

Note that not all of these issues are scheduled in the same milestone.

Note: Added additional item to "checklist" section.


issue in runner.py

I found I need to change the 'def run '  in runner.py  to make it working  for juniper device.
all the 'response = xxxxxx.xml'   has to be changed to xxxxx.data_xml , for example like the following  to make it working:
response = self.handle.get(data).data_xml
otherwise there's error message:
response = self.handle.get(data).xml

AttributeError: 'NCElement' object has no attribute 'xml'

Thanks for reporting, there may have been some changes in ncclient, I'll verify and fix.

Hi, pgohite,
Forgive me I am not  familiar with web side,  I am just wondering if  the WSGIrequest  was created from web side, is that right?   I mean it's created from adobe swf ? or  is there any python code related to create this?
thanks.


Attempting to serialize DataTypes induces segfault

Didn't really expect this to work necessarily out of the box, but probably should throw an error rather than crash if possible 😁
Running on https://github.com/JuliaData/Arrow.jl/commit/32560d34c1348052ac7a6ddd4fa14d5bc9a62d11
julia> using Arrow

julia> io = IOBuffer();

julia> Arrow.write(io, (types = DataType[Float64, Int64],))
Unreachable reached at 0x12d517537

signal (4): Illegal instruction: 4
in expression starting at REPL[3]:1
ToStruct at /Users/jarrettrevels/.julia/dev/Arrow/src/arraytypes/struct.jl:67
#47 at ./none:0
iterate at ./generator.jl:47 [inlined]
collect at ./array.jl:686 [inlined]
_totuple at ./tuple.jl:258 [inlined]
Tuple at ./tuple.jl:230 [inlined]
#arrowvector#46 at /Users/jarrettrevels/.julia/dev/Arrow/src/arraytypes/struct.jl:89
arrowvector##kw at /Users/jarrettrevels/.julia/dev/Arrow/src/arraytypes/struct.jl:81 [inlined]
#arrowvector#10 at /Users/jarrettrevels/.julia/dev/Arrow/src/arraytypes/arraytypes.jl:78
arrowvector##kw at /Users/jarrettrevels/.julia/dev/Arrow/src/arraytypes/arraytypes.jl:69
unknown function (ip: 0x12d5189c4)
#arrowvector#4 at /Users/jarrettrevels/.julia/dev/Arrow/src/arraytypes/arraytypes.jl:52
unknown function (ip: 0x12d5171d6)
arrowvector##kw at /Users/jarrettrevels/.julia/dev/Arrow/src/arraytypes/arraytypes.jl:48
unknown function (ip: 0x12d516e54)
#47 at ./none:0
iterate at ./generator.jl:47 [inlined]
collect_to! at ./array.jl:732
collect_to_with_first! at ./array.jl:710
unknown function (ip: 0x12d516a2a)
collect at ./array.jl:691
_totuple at ./tuple.jl:258 [inlined]
Tuple at ./tuple.jl:230 [inlined]
#arrowvector#46 at /Users/jarrettrevels/.julia/dev/Arrow/src/arraytypes/struct.jl:89
arrowvector##kw at /Users/jarrettrevels/.julia/dev/Arrow/src/arraytypes/struct.jl:81 [inlined]
#arrowvector#10 at /Users/jarrettrevels/.julia/dev/Arrow/src/arraytypes/arraytypes.jl:78
arrowvector##kw at /Users/jarrettrevels/.julia/dev/Arrow/src/arraytypes/arraytypes.jl:69
unknown function (ip: 0x12d511d34)
#arrowvector#4 at /Users/jarrettrevels/.julia/dev/Arrow/src/arraytypes/arraytypes.jl:52
unknown function (ip: 0x12d50fb86)
arrowvector##kw at /Users/jarrettrevels/.julia/dev/Arrow/src/arraytypes/arraytypes.jl:48
unknown function (ip: 0x12d50f804)
#47 at ./none:0
iterate at ./generator.jl:47 [inlined]
collect at ./array.jl:686
_totuple at ./tuple.jl:258 [inlined]
Tuple at ./tuple.jl:230 [inlined]
#arrowvector#46 at /Users/jarrettrevels/.julia/dev/Arrow/src/arraytypes/struct.jl:89
arrowvector##kw at /Users/jarrettrevels/.julia/dev/Arrow/src/arraytypes/struct.jl:81 [inlined]
#arrowvector#10 at /Users/jarrettrevels/.julia/dev/Arrow/src/arraytypes/arraytypes.jl:78
arrowvector##kw at /Users/jarrettrevels/.julia/dev/Arrow/src/arraytypes/arraytypes.jl:69
unknown function (ip: 0x12d50cacd)
#arrowvector#4 at /Users/jarrettrevels/.julia/dev/Arrow/src/arraytypes/arraytypes.jl:52
unknown function (ip: 0x12d508bff)
arrowvector##kw at /Users/jarrettrevels/.julia/dev/Arrow/src/arraytypes/arraytypes.jl:48 [inlined]
#toarrowvector#3 at /Users/jarrettrevels/.julia/dev/Arrow/src/arraytypes/arraytypes.jl:36
toarrowvector##kw at /Users/jarrettrevels/.julia/dev/Arrow/src/arraytypes/arraytypes.jl:34 [inlined]
toarrowvector##kw at /Users/jarrettrevels/.julia/dev/Arrow/src/arraytypes/arraytypes.jl:34 [inlined]
#113 at /Users/jarrettrevels/.julia/dev/Arrow/src/write.jl:202
eachcolumn at /Users/jarrettrevels/.julia/packages/Tables/iG2a3/src/utils.jl:70 [inlined]
toarrowtable at /Users/jarrettrevels/.julia/dev/Arrow/src/write.jl:201
unknown function (ip: 0x12d50825f)
macro expansion at /Users/jarrettrevels/.julia/dev/Arrow/src/write.jl:111 [inlined]
macro expansion at ./task.jl:332 [inlined]
write at /Users/jarrettrevels/.julia/dev/Arrow/src/write.jl:108
#write#106 at /Users/jarrettrevels/.julia/dev/Arrow/src/write.jl:83 [inlined]
write at /Users/jarrettrevels/.julia/dev/Arrow/src/write.jl:83
unknown function (ip: 0x12d502908)
jl_apply at /Users/jarrettrevels/data/repos/julia/src/./julia.h:1690 [inlined]
do_call at /Users/jarrettrevels/data/repos/julia/src/interpreter.c:117
eval_body at /Users/jarrettrevels/data/repos/julia/src/interpreter.c:0
jl_interpret_toplevel_thunk at /Users/jarrettrevels/data/repos/julia/src/interpreter.c:660
jl_toplevel_eval_flex at /Users/jarrettrevels/data/repos/julia/src/toplevel.c:840
jl_toplevel_eval_flex at /Users/jarrettrevels/data/repos/julia/src/toplevel.c:790
jl_toplevel_eval at /Users/jarrettrevels/data/repos/julia/src/toplevel.c:849 [inlined]
jl_toplevel_eval_in at /Users/jarrettrevels/data/repos/julia/src/toplevel.c:883
eval at ./boot.jl:331
eval_user_input at /Users/jarrettrevels/data/repos/julia/usr/share/julia/stdlib/v1.5/REPL/src/REPL.jl:134
repl_backend_loop at /Users/jarrettrevels/data/repos/julia/usr/share/julia/stdlib/v1.5/REPL/src/REPL.jl:195
start_repl_backend at /Users/jarrettrevels/data/repos/julia/usr/share/julia/stdlib/v1.5/REPL/src/REPL.jl:180
#run_repl#37 at /Users/jarrettrevels/data/repos/julia/usr/share/julia/stdlib/v1.5/REPL/src/REPL.jl:292
run_repl at /Users/jarrettrevels/data/repos/julia/usr/share/julia/stdlib/v1.5/REPL/src/REPL.jl:288
#806 at ./client.jl:399
jfptr_YY.806_40248 at /Users/jarrettrevels/data/repos/julia/usr/lib/julia/sys.dylib (unknown line)
jl_apply at /Users/jarrettrevels/data/repos/julia/src/./julia.h:1690 [inlined]
do_apply at /Users/jarrettrevels/data/repos/julia/src/builtins.c:655
jl_f__apply at /Users/jarrettrevels/data/repos/julia/src/builtins.c:669 [inlined]
jl_f__apply_latest at /Users/jarrettrevels/data/repos/julia/src/builtins.c:705
#invokelatest#1 at ./essentials.jl:710 [inlined]
invokelatest at ./essentials.jl:709 [inlined]
run_main_repl at ./client.jl:383
exec_options at ./client.jl:313
_start at ./client.jl:506
jfptr__start_53133 at /Users/jarrettrevels/data/repos/julia/usr/lib/julia/sys.dylib (unknown line)
true_main at /usr/local/bin/julia (unknown line)
main at /usr/local/bin/julia (unknown line)
Allocations: 12975029 (Pool: 12972329; Big: 2700); GC: 13
[1]    41167 illegal hardware instruction  julia

julia> versioninfo()
Julia Version 1.5.0
Commit 96786e22cc (2020-08-01 23:44 UTC)
Platform Info:
  OS: macOS (x86_64-apple-darwin19.4.0)
  CPU: Intel(R) Core(TM) i7-7920HQ CPU @ 3.10GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-9.0.1 (ORCJIT, skylake)

Seems like we get a decent error rather than a crash if we use Type instead:
julia> Arrow.write(io, (types = Type{Int64}[Int64, Int64],))
ERROR: ArgumentError: type does not have a definite number of fields
Stacktrace:
 [1] fieldcount at ./reflection.jl:722 [inlined]
 [2] arrowvector(::Arrow.ArrowTypes.StructType, ::Array{Type{Int64},1}, ::Int64, ::Int64, ::Int64, ::Dict{Int64,Any}, ::Array{Arrow.DictEncoding,1}, ::Nothing; kw::Base.Iterators.Pairs{Symbol,Union{Nothing, Bool},NTuple{5,Symbol},NamedTuple{(:dictencode, :compression, :largelists, :denseunions, :dictencodenested),Tuple{Bool,Nothing,Bool,Bool,Bool}}}) at /Users/jarrettrevels/.julia/dev/Arrow/src/arraytypes/struct.jl:89
 [3] arrowvector(::Type{Type{Int64}}, ::Array{Type{Int64},1}, ::Int64, ::Int64, ::Int64, ::Dict{Int64,Any}, ::Array{Arrow.DictEncoding,1}, ::Nothing; kw::Base.Iterators.Pairs{Symbol,Union{Nothing, Bool},NTuple{5,Symbol},NamedTuple{(:dictencode, :compression, :largelists, :denseunions, :dictencodenested),Tuple{Bool,Nothing,Bool,Bool,Bool}}}) at /Users/jarrettrevels/.julia/dev/Arrow/src/arraytypes/arraytypes.jl:78
 [4] arrowvector(::Array{Type{Int64},1}, ::Int64, ::Int64, ::Int64, ::Dict{Int64,Any}, ::Array{Arrow.DictEncoding,1}, ::Nothing; dictencoding::Bool, dictencode::Bool, kw::Base.Iterators.Pairs{Symbol,Union{Nothing, Bool},NTuple{4,Symbol},NamedTuple{(:compression, :largelists, :denseunions, :dictencodenested),Tuple{Nothing,Bool,Bool,Bool}}}) at /Users/jarrettrevels/.julia/dev/Arrow/src/arraytypes/arraytypes.jl:52
 [5] toarrowvector(::Array{Type{Int64},1}, ::Int64, ::Dict{Int64,Any}, ::Array{Arrow.DictEncoding,1}, ::Nothing; compression::Nothing, kw::Base.Iterators.Pairs{Symbol,Bool,NTuple{4,Symbol},NamedTuple{(:largelists, :denseunions, :dictencode, :dictencodenested),NTuple{4,Bool}}}) at /Users/jarrettrevels/.julia/dev/Arrow/src/arraytypes/arraytypes.jl:36
 [6] (::Arrow.var"#113#114"{Dict{Int64,Any},Bool,Nothing,Bool,Bool,Bool,Array{Any,1},Array{Type,1},Array{Arrow.DictEncoding,1}})(::Array{Type{Int64},1}, ::Int64, ::Symbol) at /Users/jarrettrevels/.julia/dev/Arrow/src/write.jl:202
 [7] eachcolumn at /Users/jarrettrevels/.julia/packages/Tables/iG2a3/src/utils.jl:70 [inlined]
 [8] toarrowtable(::NamedTuple{(:types,),Tuple{Array{Type{Int64},1}}}, ::Dict{Int64,Any}, ::Bool, ::Nothing, ::Bool, ::Bool, ::Bool) at /Users/jarrettrevels/.julia/dev/Arrow/src/write.jl:201
 [9] macro expansion at /Users/jarrettrevels/.julia/dev/Arrow/src/write.jl:111 [inlined]
 [10] macro expansion at ./task.jl:332 [inlined]
 [11] write(::Base.GenericIOBuffer{Array{UInt8,1}}, ::NamedTuple{(:types,),Tuple{Array{Type{Int64},1}}}, ::Bool, ::Bool, ::Nothing, ::Bool, ::Bool, ::Bool, ::Int64) at /Users/jarrettrevels/.julia/dev/Arrow/src/write.jl:108
 [12] #write#106 at /Users/jarrettrevels/.julia/dev/Arrow/src/write.jl:83 [inlined]
 [13] write(::Base.GenericIOBuffer{Array{UInt8,1}}, ::NamedTuple{(:types,),Tuple{Array{Type{Int64},1}}}) at /Users/jarrettrevels/.julia/dev/Arrow/src/write.jl:83
 [14] top-level scope at REPL[4]:1

On https://github.com/JuliaData/Arrow.jl/pull/156, we'll now throw the error


[CONTRACT] setup liquidity share request without proof verification

Complete this issue according to this article: How to manage liquidity in a P2P ramping app

Please add integration tests

@0xChqrles Am available to work on this , kindly assign

Hi, I would like to try this!

@0xChqrles am available for this one

Hi @0xChqrles,  I have read through the attach article and with a little bit research on my part, I can implement this.

Hello @0xChqrles , I would like to work on this issue,
here is how i would handle it...

I will define a Storage struct LiquidityPosition to store liquidity positions` and a counter for position IDs.
I will create LiquidityAdded and WithdrawalInitiated events to emit when these actions occur.
Implement a add_liquidity function
Implement the initiate_liquidity_withdrawal function
perform unit tests

ETA: 72hrs

Hey @ikemHood I assigned it to you. Join the project's Telegram group if you haven't already, and feel free to ask any questions. Also, you'll need to wait for issue #65 and #66 to be merged before you can start on this one.


IPv6 on the official ntfy.sh server

I would highly appreciate it if you would enable IPv6 connectivity on the official ntfy.sh service. Right now it seems to be hosted on DigitalOcean. Enabling IPv6 there should be pretty straight forward.
https://docs.digitalocean.com/products/networking/ipv6/

There are multiple reasons I haven't done that yet:

I know nothing about IPv6
There are assumptions in the server about IPv4 addresses (for rate limiting mostly)
Rate limiting is 100% based around IPv4 addresses right now. Given that IPv6 addresses are cheap I think I'd be opening myself up to some bad times.

So while intriguing, I would not hold my breadth right now. I'm always happy to accept code contributions or discuss it further though.

When enabling IPv6, you could rate limit IPv6 addresses using only their /48  prefix, as this the smallest prefix usually assigned to an entity. So this should be pretty conservative approach, for  a start.
However, most entities surely just get /56 or even /64 prefixes, so a less overly cautious approach would be to rate-limit those.
Or use a tiered approach were you have an IPv4-like rate limit for /64 prefixes and higher limits for /56 and then an even higher one for /48.
Background: With IPv6, the address is 128 bit wide, and the idea is that a network gets at least a /64 prefix delegated. If a provider hands out a /48 prefix that means that the customer may create up to 2**16 networks under that prefix, i.e. he/she is able to sub-delegate longer prefixes in his/her own infrastructure quite flexible.

Using a large-enough prefix sounds like a reasonable compromise. It's still not high on my list, though; so much other stuff to do :-D

I think there may be more to do than just enabling IPv6 on the main server. My personal server has both IPv4 and IPv6, my home has both too, but my mobile provider only has IPv4. I've noticed that the ntfy Android client regularly loses connection to my dual-stack ntfy instance and takes a very long time to reconnect, which causes my notifications to arrive very late and in batches. My second ntfy instance only has an IPv4 DNS record and I have none of the problems there.

This is a great article that describes the reasons for why ntfy.sh does not support IPv6 yet: https://adam-p.ca/blog/2022/02/ipv6-rate-limiting/

https://github.com/binwiederhier/ntfy/issues/519#issuecomment-2156231591

@bernhardschmidt, considering the PRs mentioned at https://adam-p.ca/blog/2022/02/ipv6-rate-limiting/#postscript - https://github.com/go-chi/httprate/pull/10#issue-1145095727 and https://github.com/didip/tollbooth/pull/98#issue-1145095717 - have both been merged, how much of it applies? Although everything stated is correct, it appears somewhat outdated.


Oderabel Rows and many_many relation

Hi,
I have a many_many_relation to handel. My Sort Field , added as a many_many_extra_field.
How can I am that field for ordering the rows?

https://github.com/silverstripe-australia/silverstripe-gridfieldextensions/blob/master/docs/en/index.md#orderable-rows


Does this project support tif directories?

Does this project support tif directories as specified here?  Basically it is just storing multiple images in the same tiff file.  It is very common for storing pyramided images which is common in Deep Zoom images for ultra high resolution images as well as medical images.
I see that you support bigtiff, but I see no way of specifying what directory you want (as I've done with the c library) and so I'm wondering if I'm missing something?  Thanks!

Only support read at this moment.
list all ifd:
https://github.com/chai2010/tiff/blob/master/apps/tiffinfo.go
read subifd and multipages:
https://github.com/chai2010/tiff/blob/master/hello.go

Thanks for the response, I'll have to check this out!


(Highlight) unmatching the colon

Did you check the docs?

[X] I have read all the todo-comments.nvim docs

Is your feature request related to a problem? Please describe.
Hey, first of, awesome job!
I fiddled with the RegEx pattern to unmatch the colon and leading space that are highlighted but could not make it, could you give me a hand?
It's stupid but this is the kind of things that get me too distracted to do anything else :sweat_smile:
Describe the solution you'd like
Some relief for my OCD
Describe alternatives you've considered
Living with it
Additional context
I'm Walloon and you probably know we're not the brightest of the bunch :rooster:

I have found peace and now live with it.


Create Schema.NET.Pending project for pending types

Will close #203
The core changes:

New "Schema.NET.Pending" project
All the C# source files for Schema.NET have been moved to a "common" folder and referenced by it and the new project
Minor changes to the source generator to pull in a setting about including pending types

I don't think I have this quite right yet (particularly around pulling in the setting) but is the general gist of the changes required to support pending types.
Once #301 is in, it will make debugging this easier and then hopefully we can get full pending types supported!

A quick look suggests we might need another variation of our Values type with a different number of generic arguments. Will need to dig into this further.

I've got it working! The builds will take about 2x longer now (likely also making Visual Studio a little more sluggish) but we get the functionality we want.

Once we've got this in, should we release a new version (and thus the first version of Schema.NET.Pending)?

Just want to make sure before I create a new release that the NuGet key you've configured for the repo has the "Create new packages" permission. I've had issues before of not doing that and then manually having to remove tags/releases and re-running it.

Write permissions for GitHub packages are in the build:

I recently switched to using this least priviledge approach for all my repos and defaulted to read rights in settings:

Only downside is that autolabeller seems to have stopped working and I have no idea why:
https://github.com/release-drafter/release-drafter/issues/869

Ahhhh, sorry, I meant permissions in NuGet.org itself. So when you have your API key in NuGet, you get a screen like this:

What I'm referring to is whether you have "Push new packages and package versions" or whether it is "Push new package versions". With our "Schema.NET.Pending" library, it will need that unless you want to upload the first package for it manually.

Oh I see. I have one key per project and get notified when they expire, so we won't have that problem.

Looks like we might have missed something. The Schema.NET.Pending package didn't push to NuGet and the one that pushed to GitHub Packages isn't correctly versioned... 🤔

I think the MinVerTagPrefix is what caused the issue. It is <MinVerTagPrefix>$(PackageId).</MinVerTagPrefix> which won't work anymore with two packages with two different names (unless you want to do two tags per release - one Schema.NET.<version> and another Schema.NET.Pending.<version>).

Fixed in https://github.com/RehanSaeed/Schema.NET/pull/303. Will delete the tag and re-release. Annoying but required.

Cheers mate!


Original Language Of Keter

We must ask this because we need to choose what language compiles Keter. Reply with suggestions. Once all languages have been selected I will make a vote system to choose the language.

Golang
C / C++
Crystal

If there is any confusion please ask to clarify whatever

@KaiLikesLinux I guess you should use C / C++ to compile Keter.

I guess it is decided


[DOC] Firebase Authentication operations  - Multilayer login

What:
Extending the documentation by showing how to use cordova-firebasex-plugin in conjunction with the Firebase Web JS SDK.
Why:
The cordova-firebasex-plugin does things that the Firebase Web JS SDK just cannot expose (like auth/notifications/crashalytics) in a hybrid environment. On the other hand the plugin isn't a full substitute of all (essential) features that the Web JS SDK exposes.
Since Firebase Web JS SDK is already committed to cordova compatibility I would (advise a developer that uses firebase and cordova to) use the Web JS SDK for everything else where it does not needs to interact with the Native layer. Also keeping this plugin up with things that the Firebase Web JS SDK can support seems an everlasting/draining chase for the contributor(s).
Since version 8.0.0. the auth has been reworked. Meaning it was not possible/advised to pass credentials to the Web JS SDK and login. There seem to be issues/struggles (https://github.com/dpa99c/cordova-plugin-firebasex/issues/176, https://github.com/dpa99c/cordova-plugin-firebasex/issues/433, https://github.com/dpa99c/cordova-plugin-firebasex/issues/435) derived from this change. However PR's making cross layer login possible are already posted (https://github.com/dpa99c/cordova-plugin-firebasex/pull/633, https://github.com/dpa99c/cordova-plugin-firebasex/pull/621). Documenting how to make use of these PR's does make sense.
Why (not)/ why warn:
'Unfortunately' there is overlap like some Firebase Firestore functions that are (also) added in cordova-plugin-firebasex. Having the Firebase Web JS SDK (optionally put there by the app developer) as well, means that in this example there are multiple approaches to retrieve data. That might lead to mixing (native) variables and Web JS SDK variables.
How:
Adding (a version of) the suggestion bellow in the documentation:

Passing authentication to the Firebase JavaScript SDK
Experimental: Passing authentication to the Firebase JavaScript SDK is possible for some Firebase Authentication operations that are exposed by this plugin, but this is highly experimental. Please note that mixing variables from the native (plugin) and the JavaScript SDK should be avoided as it to will lead to unexpected behaviour.
authenticateUserWithApple (Android/iOS)
Passing authentication unsupported (See https://github.com/dpa99c/cordova-plugin-firebasex/issues/551)
authenticateUserWithGoogle (Android/iOS)
Possible since version 13.0.0
var clientId = '[secret].apps.googleusercontent.com';
// Trigger plugin native authentication layer
FirebasePlugin.authenticateUserWithGoogle(clientId, function (credential) {
    var { idToken } = credential; // Extract idToken
    //Login to Firebase JS SDK
    firebase.auth.GoogleAuthProvider.credential(idToken);
}, function () {
    //err
});

verifyPhoneNumber (Android*/iOS)  - w/o instantVerification
NOTE: As of version 8.0.0 passing authentication is no longer possible if instantVerification: true.  (See https://github.com/dpa99c/cordova-plugin-firebasex/issues/176)
var phonenumber;
var timeout;
FirebasePlugin.verifyPhoneNumber(function (credentials) {
    // Success
    if (credentials.instantVerification) {
        return alert('passing authentication with instantVerification not possible as of version 8.0.0');
    }
    promptUserToInputCode() // you need to implement this
        .then(function (userEnteredSMSCode) {
            credential.code = userEnteredSMSCode;
            //Login to Firebase JS SDK
            var webCredential = firebase.auth.PhoneAuthProvider.credential(credential.verificationId, credential.code);
            return firebase.auth().signInWithCredential(webCredential);
        });
},
    function () {
        //err
    },
    phonenumber,
    timeout
);

Other
The above is based upon my current and limited understanding of this project and should by not be taken as truth.
At least within the iOS version of the plugin it is possible to duplicate the verification credentials for use with the plugin and web js layer. This isn't tested on Android and probably a bad idea in general.
    var credentials; // E.g. returned from FirebasePlugin.verifyPhoneNumber();
    var webCredential = firebase.auth.PhoneAuthProvider.credential(credential.verificationId, credential.code);
    // Firebase JS SDK
    return firebase.auth.signInWithCredential(webCredential)
        .then(function () {
            // Plugin authentication layer
            FirebasePlugin.signInWithCredential(credential,
                function () {
                    console.log('Plugin logged in');
                },
                function (error) {
                    console.log('Plugin logged in failed', error);
                });
        }); // Promise

~
Sources
https://github.com/dpa99c/cordova-plugin-firebasex/pull/633
https://github.com/dpa99c/cordova-plugin-firebasex/commit/78bff37626fecd92ddc5de189de94e9864d87b6c

You managed to find a solution? from my side, I could only use the web code on Android and the plugin code on iOS.

@helpmetheroadassistanceapp Yes I just stared with finalising the Android app so I came across my own posts (and I over looked you question). Assuming this is a wide spread issue, I'm gonna reply months later for those who come across.
The actual solution/strategy turned out to be pretty simple. And when I find time I'll write a proposal on how to document this.
In short both the plugin and the web layer expose the signInUserWithCustomToken /  signInWithCustomToken. It is easy to generate such a token on firebase functions with an already logged in user.
The resulting token you pass to the either one (web or native) you have not logged in to yet. So with an other token you can login as the same user no matter what initial authentication method you had chosen.
Some semi pseudo code :
So what you do is expose an end point in firebase functions e.g:
Firebase functions
// index.js
// HTTP :: /my/auth
app.get('/my/auth', (req, res) => {
    res.set('Content-Type', 'application/json');
    return api.myAuth_get(req, res);
});

app.options('/my/auth', (req, res) => {
    res.set('Content-Type', 'application/json');
    return api.myAuth_options(req, res);
});

// == api.myAuth_options ===================================
exports.http_options = (req, res) => {
    // Set CORS headers
    res.set({
        'Access-Control-Allow-Origin': '*',
        'Access-Control-Allow-Methods': 'DELETE,GET,PATCH,POST,PUT',
        'Access-Control-Allow-Headers': 'Content-Type,Access-Control-Allow-Headers,Authorization,X-Requested-With',
    });

    res.status(200).send();

    return;
};

// == api.myAuth_get ===================================
const admin = require('firebase-admin');

exports.http_get = (req, res) => {
    // Set CORS headers
    res.set({
            'Access-Control-Allow-Origin': '*',
            'Access-Control-Allow-Methods': 'DELETE,GET,PATCH,POST,PUT',
            'Access-Control-Allow-Headers': 'Content-Type,Access-Control-Allow-Headers,Authorization,X-Requested-With',
    });

    if ((!req.headers.authorization || !req.headers.authorization.startsWith('Bearer '))) {
        res.status(403).send('Unauthorized');
        return;
    } else {
        // Read the ID Token from the Authorization header.
        idToken = req.headers.authorization.split('Bearer ')[1];
    }

    return admin.auth().verifyIdToken(idToken)
        .then((decodedIdToken) => {
            return admin.auth().createCustomToken(decodedIdToken.uid);
        }).then((customToken) => {
            if (customToken) {
                res.status(200).send({'customToken': customToken});
                return;
            }
            res.status(404).send({
                'success': false,
            });

        }).catch((error) => {
            console.log('Error while creating a Firebase ID token:', error);
            res.status(400).send({ error: 'Invalid request' });
        });
};

So assuming you have logged in on the weblayer first you call the above endpoint (but you can do the other way around):
APP:

firebase.auth().signInWithCredential(webCredential)
   .then((authUser) => {

      authUser.getIdToken().then(function (idToken) {
         return app.request.promise({
            url: [your - exposed - admin - endpoint]/my/auth,
            method: 'GET',
            dataType: 'json',
            headers: { 'Authorization': `Bearer ${idToken}` },
         }).then(function (customTokenData) {
            // Signs in the native layer
            window.FirebasePlugin.signInUserWithCustomToken(
               customTokenData.customToken,
               console.log,
               console.warn
            );
         });
      });
   });

@dpa99c Would the above (but reworked a bit), be something that you like to have added to the docs 'Achieve multilayer login' ? If so I'll write a bit and propose a PR.

@spoxies Yes, any additional documentation to assist other plugin users for common use cases like this would be most welcome and appreciated.


Combining two transpilations on a real backend

Environment

Qiskit Terra version: 0.45.0
Python version: 3.11
Operating system: MacOS Sonoma 14.0

What is happening?
Classical shadows is an efficient method for constructing an approximate classical description of a quantum state. There is a problem when trying to implement it on a real device, it requires the transpilation of two different layers, one that is the same for all the circuits, and one random with single-qubit operations. If I try to join the two layers and do the transpilation afterwards it takes too long. If I try to transpile the first and the second separately to reuse the first layer, I didn't find a way for my second layer to be aware of the first transpiled layer. This is a follow-up to our discussion @1ucian0.
How can we reproduce the issue?
The code below could help to understand what I found:

from qiskit import QuantumCircuit, ClassicalRegister
from qiskit_ibm_provider import IBMProvider
from qiskit.circuit.library import EfficientSU2
from qiskit import transpile
import numpy as np

provider = IBMProvider()

ibm_brisbane = provider.get_backend("ibm_brisbane")

num_qubits = 7
qc = QuantumCircuit(num_qubits)
for i in range(0, num_qubits-1, 2):
    qc_su2 = EfficientSU2(2, reps=1)
    params_i = np.pi * np.random.rand(qc_su2.num_parameters)
    qc_su2 = qc_su2.assign_parameters(params_i)
    qc = qc.compose(qc_su2, [i,i+1])
    qc = transpile(qc, ibm_brisbane)

# Adding the classical shadows layer with a random projection set
n_shadow = 1
unitary_ids = np.random.randint(0, 3, size=(n_shadow, num_qubits))
qcs = []
for ns in range(n_shadow):
    qc_shadow = QuantumCircuit(num_qubits) # Classical Shadows layer circuit
    for i in range(num_qubits):
        if unitary_ids[ns, i] == 0:
            qc_shadow.h(i)
        elif unitary_ids[ns, i] == 1:
            qc_shadow.sdg(i)
            qc_shadow.h(i)
        elif unitary_ids[ns, i] == 2:
            pass
    # How do I transpile the circuit below with the same routing map of the previous circuit qc?
    qc_shadow = transpile(qc_shadow, ibm_brisbane)
    circuit = qc.compose(qc_shadow, range(num_qubits))
    circuit.add_register(ClassicalRegister(num_qubits))
    circuit.measure(range(num_qubits), range(num_qubits))
    qcs.append(circuit)

What should happen?
Been able to combine the two circuits while keeping the same logical qubits.
Any suggestions?
No response

What calls are you making that it seems like transpilation is taking a long time?  The first call to transpile with a new IBM Runtime backend may take a couple of seconds to initialise the backend fully, but after that, transpilation should be fast.  In your example, if I delay the transpilation until after the whole circuit is constructed, the transpilation takes 37ms on my machine.
You can set the initial virtual->physical mapping for subsequent transpilations by using the initial_layout argument to transpile.

What calls are you making that it seems like transpilation is taking a long time? The first call to transpile with a new IBM Runtime backend may take a couple of seconds to initialise the backend fully, but after that, transpilation should be fast. In your example, if I delay the transpilation until after the whole circuit is constructed, the transpilation takes 37ms on my machine.
You can set the initial virtual->physical mapping for subsequent transpilations by using the initial_layout argument to transpile.

Thank you for the quick reply, @jakelishman. For me this code is broken, isn't it for you?
When I said it takes too long is as if the whole transpilation is made after combining the two layers. Maybe it does not take too long for small circuits but the idea is to make it for 127 qubits with a  number of shadows around 10.000.

Sorry for the long delay between now and then.  The code block exactly as presented is broken, but I was talking about how long transpile took if you build the circuits completely and then transpile, so I used this tweaked code-block, with the only changes indicated:
from qiskit import QuantumCircuit, ClassicalRegister
from qiskit_ibm_provider import IBMProvider
from qiskit.circuit.library import EfficientSU2
from qiskit import transpile
import numpy as np

provider = IBMProvider()

ibm_brisbane = provider.get_backend("ibm_brisbane")

num_qubits = 7
qc = QuantumCircuit(num_qubits)
for i in range(0, num_qubits-1, 2):
    qc_su2 = EfficientSU2(2, reps=1)
    params_i = np.pi * np.random.rand(qc_su2.num_parameters)
    qc_su2 = qc_su2.assign_parameters(params_i)
    qc = qc.compose(qc_su2, [i,i+1])
# I think this `transpile` line should have been outside the loop anyway:
# REMOVED: qc = transpile(qc, ibm_brisbane)

# Adding the classical shadows layer with a random projection set
n_shadow = 1
unitary_ids = np.random.randint(0, 3, size=(n_shadow, num_qubits))
qcs = []
for ns in range(n_shadow):
    qc_shadow = QuantumCircuit(num_qubits) # Classical Shadows layer circuit
    for i in range(num_qubits):
        if unitary_ids[ns, i] == 0:
            qc_shadow.h(i)
        elif unitary_ids[ns, i] == 1:
            qc_shadow.sdg(i)
            qc_shadow.h(i)
        elif unitary_ids[ns, i] == 2:
            pass
    # REMOVED: qc_shadow = transpile(qc_shadow, ibm_brisbane)
    circuit = qc.compose(qc_shadow, range(num_qubits))
    circuit.add_register(ClassicalRegister(num_qubits))
    circuit.measure(range(num_qubits), range(num_qubits))
    qcs.append(circuit)

At the end of this, calling
transpile(qcs, ibm_brisbane)

was timed at 36.8(6)ms on my machine, which doesn't seem excessive.  Are you working at scales where you absolutely must pre-transpile the initial setup of the circuit?
In principle, the way you would do the transpile(qc_shadow, ibm_brisbane) call using the final layout map of a pre-transpiled circuit is to find the positions that virtual qubits $0, \dots, n-1$ end up in, and set that as the initial_layout argument to the second transpile call.  That looks something like:
qc_base_transpiled = transpile(qc_base, ibm_brisbane)
base_final_layout = qc_base_transpiled.layout.final_index_layout()
qc_shadow = <build your base shadow>
# This transpilation ensures the virtual qubits in `qc_shadow` start in the places that the
# same-numbered virtual qubits in `qc_base` finished on.
qc_shadow_transpiled = transpile(qc_shadow, ibm_brisbane, initial_layout=base_final_layout)
# We don't need to remap the qubits in the composition, because both circuits are in terms of
# the same physical qubits.
circuit = qc_base.compose(qc_shadow_transpiled)

I should note that you should add the measurements to the second circuit before you transpile it, to ensure that the remappings and any subsequent inserted swaps are respected.


Are the original GeoTIFF/COGs also available?

I'm having trouble making CoastTrain data geospatial again. Probably numpy arrays and associated metadata sheet should be sufficient to reconstruct GIS rasters, but most likely this will also be very time consuming. Any chance you have some snippets available for converting the numpy arrays to let's say rasterio objects? Or do you still have the original S2 GeoTiffs available?

Hi Floris, unfortunately we are not able to publish the imagery as geotiff or any other type of image, for painful bureaucratic reasons (in short, the usgs has restrictive rules over the publishing of imagery formats). Hence, the strange npz format that saves imagery and labels as numpy arrays. By publishing in this format, we could essentially set many of our own rules and avoid what would have amounted to intolerable delays. This decision was also because Coast Train was designed to train image segmentation models, so we simply use the imagery and labels together with models such as UNets that  don't know how to use the associated location information.
If you need GIS rasters, my best advice would be to save the images out as jpegs, and use the metadata to create a wld file for each image, and create geotiffs using gdal_translate. I think this would work, but I don't have the codes to do so. I hope that helps.

Hi @dbuscombe-usgs , thanks for explaing. That's a bummer but probably/maybe USGS has a fair point.
Coming back to making GIS rasters from the coasttrain data. The workflow posted below works. Please note that I deliberately used ["XMin", "YMin", ...] because I noticed a small difference when using ["LonMin",..] instead.
Maybe a lucky strike, but the first image was great:

However, when I wanted to convert all images I noticed that the geographic boundaries as descibed in the metadata are not correct see this issue
import pathlib

import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
import xarray as xr

coasttrain_dir = pathlib.Path.home().joinpath(
    "data", "src", "coasttrain", "Sentinel2_11_001"
)
metadata_fp = coasttrain_dir.joinpath("Sentinel2_11_001.csv")

def extract_fname(image_fp):
    """column with jpg filenames to numpy array fnames"""
    return image_fp.split("/")[1].rsplit(".", 1)[0] + ".npz"

# read metadata
metadata = pd.read_csv(metadata_fp)
# add column with fp
metadata["fname"] = list(map(extract_fname, metadata["images"]))

sample = metadata.sample(1)
fp = coasttrain_dir.joinpath(sample["fname"].iloc[0])
data = np.load(fp)

coords = sample[["XMin", "YMin", "XMax", "YMax"]].values[0]

img_shape = data["image"].shape
xcoords = np.linspace(coords[0], coords[2], img_shape[1])
ycoords = np.linspace(coords[1], coords[3], img_shape[0])[::-1]
ycoords = np.linspace(coords[1], coords[3], img_shape[0])

import hvplot.xarray
import rioxarray

data["image"].shape
da = xr.DataArray(data["image"], dims=["y", "x", "bands"])
da = da.assign_coords(
    {
        "x": ("x", xcoords),
        "y": ("y", ycoords),
        "bands": ("bands", list(range(img_shape[2]))),
    }
)
da = da.rio.write_crs(sample.epsg.item())
outpath = pathlib.Path.home().joinpath("tmp", "coasttrain_example.tif")
da.sel(bands=0).rio.to_raster(outpath)


Add Basic Authentication support

@cscetbon Thank you for the PR. Have you got a chance to test it ?

Yes I’ve tested 😉
I did not write a unit test though cause I don’t know how you test it. It seems you use a local version for that and not a mocking system.


Stillbirth rate - Kenya

Find a stillbirth rate by year.  Using UN IGME for Senegal.   Plan to keep adolescent stillbirth gradient from Noori et al.
Note from Anu Mishra that stillbirth data should be available soon by antenatal vs intrapartum.  Stillbirths are being used to simulate a realistic fertility population, so to simulate the approximate number of fetal losses in a population that is both concepting and contracepting so probably not necessary for FPsim at this point.

Updated to Kenya rates:
data = np.array([
    [2000, 22.5],
    [2010, 20.6],
    [2019, 19.7],
])

Note that these are midpoint estimates, a lower and upper bound is available on IGME data


[firebase_ui_auth]  "Unknown" hardcoded in editable_user_display_name.dart

Is there an existing issue for this?

[X] I have searched the existing issues and found no duplicates.

What plugin is this bug for?
Firebase UI Auth
What platform(s) does this bug affect?
Android, iOS, Web, macOS
List of dependencies used.

flutter pub deps -s list

  Dart SDK 3.5.4
Flutter SDK 3.24.4
XXXXX 0.3.0+61
dependencies:

flutter 0.0.0

characters 1.3.0
collection 1.18.0
material_color_utilities 0.11.1
meta 1.15.0
vector_math 2.1.4
sky_engine any

flutter_localizations 0.0.0

flutter any
intl 0.19.0
characters 1.3.0
clock 1.1.1
collection 1.18.0
material_color_utilities 0.11.1
meta 1.15.0
path 1.9.0
vector_math 2.1.4

cupertino_icons 1.0.8
firebase_core 3.6.0

firebase_core_platform_interface ^5.3.0
firebase_core_web ^2.18.1
flutter any
meta ^1.8.0

firebase_crashlytics 4.1.3

firebase_core ^3.6.0
firebase_core_platform_interface ^5.3.0
firebase_crashlytics_platform_interface ^3.6.44
flutter any
stack_trace ^1.10.0

firebase_analytics 11.3.3

firebase_analytics_platform_interface ^4.2.5
firebase_analytics_web ^0.5.10+2
firebase_core ^3.6.0
firebase_core_platform_interface ^5.3.0
flutter any

cloud_firestore 5.4.4

cloud_firestore_platform_interface ^6.4.3
cloud_firestore_web ^4.3.2
collection ^1.0.0
firebase_core ^3.6.0
firebase_core_platform_interface ^5.3.0
flutter any
meta ^1.8.0

firebase_auth 5.3.1

firebase_auth_platform_interface ^7.4.7
firebase_auth_web ^5.13.2
firebase_core ^3.6.0
firebase_core_platform_interface ^5.3.0
flutter any
meta ^1.8.0

firebase_messaging 15.1.3

firebase_core ^3.6.0
firebase_core_platform_interface ^5.3.0
firebase_messaging_platform_interface ^4.5.46
firebase_messaging_web ^3.9.2
flutter any
meta ^1.8.0

cloud_functions 5.1.3

cloud_functions_platform_interface ^5.5.37
cloud_functions_web ^4.10.2
firebase_core ^3.6.0
firebase_core_platform_interface ^5.3.0
flutter any

firebase_in_app_messaging 0.8.0+8

firebase_core ^3.6.0
firebase_core_platform_interface ^5.3.0
firebase_in_app_messaging_platform_interface ^0.2.4+44
flutter any
meta ^1.8.0

firebase_ui_shared 1.4.1

flutter any

firebase_ui_localizations 1.13.0

flutter any
flutter_localizations any
path ^1.8.3

firebase_ui_auth 1.16.0

email_validator ^2.1.17
firebase_auth ^5.3.1
firebase_core ^3.6.0
firebase_dynamic_links ^6.0.8
firebase_ui_localizations ^1.13.0
firebase_ui_oauth ^1.6.0
firebase_ui_shared ^1.4.1
flutter any
flutter_localizations any
meta ^1.10.0

firebase_ui_firestore 1.7.0

cloud_firestore ^5.4.3
firebase_ui_localizations ^1.13.0
firebase_ui_shared ^1.4.1
flutter any

intl 0.19.0

clock ^1.1.0
meta ^1.0.2
path ^1.8.0

community_material_icon 5.9.55

flutter any

flutter_local_notifications 18.0.0

clock ^1.1.0
flutter any
flutter_local_notifications_linux ^5.0.0
flutter_local_notifications_platform_interface ^8.0.0
timezone ^0.9.0

logger 2.4.0

Steps to reproduce
at line 122 of packages/firebase_ui_auth/lib/src/widgets/editable_user_display_name.dart there is an hardcoded string:
Subtitle(text: displayName ?? 'Unknown'),
Please localize it in firebase_ui_localizations
Expected Behavior
I expect that 'Unknown' string to be localized
Actual Behavior
'Unknown' string is hardcoded
Additional Information
No response

Hey @alexodus - if you want to open a PR with this localization label update, I'd be happy to take a look 😄

Hey @alexodus - if you want to open a PR with this localization label update, I'd be happy to take a look 😄

Ok, but my doubt is about the term 'unknown'. I would prefer "(empty full name)" or similar


Avoid receiving the terminal disconnection event before the terminal …

Avoid receiving the terminal disconnection event before the terminal has finished reading, which leads to incorrect display.

maybe just drain the pty like this https://github.com/alacritty/alacritty/blob/master/alacritty_terminal/src/event_loop.rs#L268

I've tried, but I still can't read all the data in this loop

How can I replicate this issue?

I'm doing a cargo check on a small project, and it either stops, doesn't show all, or there's no problem

I'm doing a cargo check on a small project, and it either stops, doesn't show all, or there's no problem

Is this "Run and Debug"?

here：

?

I encountered it in a windows environment


stabillize report

Codecov Report

Merging #32 into master will increase coverage by 0.14%.
The diff coverage is 70.58%.

@@             Coverage Diff             @@
##             master     #32      +/-   ##
===========================================
+ Coverage     59.16%   59.3%   +0.14%
- Complexity     1312    1317       +5
===========================================
  Files           151     151
  Lines          3171    3180       +9
===========================================
+ Hits           1876    1886      +10
+ Misses         1295    1294       -1

Impacted Files
Coverage Δ
Complexity Δ

src/Api/Transformer/Share/IssueTransformer.php
100% <ø> (ø)
2 <0> (ø)
:arrow_down:

src/Entity/Map.php
94.11% <ø> (ø)
21 <0> (ø)
:arrow_down:

src/Service/ReportService.php
0% <ø> (ø)
75 <0> (ø)
:arrow_down:

src/Api/Transformer/Foyer/IssueTransformer.php
100% <ø> (ø)
4 <0> (ø)
:arrow_down:

src/Api/Transformer/Share/CraftsmanTransformer.php
100% <ø> (ø)
2 <0> (ø)
:arrow_down:

src/Api/Response/Data/CraftsmanData.php
100% <ø> (ø)
2 <0> (ø)
:arrow_down:

src/Controller/External/ShareController.php
0% <ø> (ø)
5 <0> (ø)
:arrow_down:

.../Api/Transformer/Dispatch/CraftsmanTransformer.php
100% <ø> (ø)
2 <0> (ø)
:arrow_down:

src/Controller/External/ImageController.php
0% <ø> (ø)
6 <0> (ø)
:arrow_down:

src/Report/Report.php
0% <0%> (ø)
35 <0> (ø)
:arrow_down:

... and 9 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 8c1d9e3...d8b57e5. Read the comment docs.


Fatal Decrypt Error

Hello,
We have a very peculiar problem and needed help from this community.
We are using an Embedded device, our Target Platform is MQX RTOS, Coldfire MCF54XX processor and Codewarrior IDE with SharkSSL TLS1.2 Webserver
We are using a Cipher Suite TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256... Also we are using a Client Certificate for Client Authentication.
Now, the problem is,
SSL Handshake works with IE, Firefox and Safari browsers, but fails with Chrome with a fatal decrypt_error  After ServerHello, ServerCertificate, ClientCertificateRequest, ServerHelloDone (All sent in one packet) the client (Chrome Browser) returns this error.
After, some analysis we found that rest of the browsers and our dot net client uses different SSL stacks whereas Chrome uses OpenSSL, so the error was not from Chrome rather it was from OpenSSL.
Then we started reproducing command line openSSL and were able to reproduce same error,
openssl s_client -connect <IP_ADDRESS>:443 -tls1_2 -cert certificate.cer -CAfile certificate.cer -msg
openssl pkcs12 -in cpoclientcertificate.pfx -out mycertificates.crt
The result is that some times the command is able to connect to server, while some other times it fails with this error:
<<< TLS 1.2 Handshake [length 0095], ServerKeyExchange
0c 00 00 91 03 00 17 41 04 e9 c7 c8 b4 2f ca 91
e0 3f ce af 6b 29 e7 b2 69 02 89 f1 9b 82 65 44
90 bf b0 bb ae 58 1f 3b ac c6 b2 46 d2 4a 67 6f
2f 8e 56 45 37 c3 4a 88 c2 01 09 90 77 96 cf fb
61 5d 6a 03 17 f2 ff ed 87 04 03 00 48 30 46 02
21 00 1c 85 7d 57 53 70 bd cf c2 66 e9 f3 ab 3a
db d7 b7 24 0e bd f8 89 45 09 df ac 50 c2 6d c0
02 f9 02 21 00 f6 72 eb 4f e0 a8 27 7e 71 10 c0
7c cc b0 1d ce d0 37 c1 a3 46 8b 74 a8 0f 81 2d
28 18 25 b8 b2

??? [length 0005]
15 03 03 00 02
TLS 1.2 Alert [length 0002], fatal decrypt_error
02 33
6280832:error:1408D07B:SSL routines:ssl3_get_key_exchange:bad signature:s3_clnt.c:1973:

Which is the same error reported by Chromium. This seems to be a general issue with openssl
The version of openssl we've used to make these tests is 1.0.2d
How other SSL stacks are able to communicate whereas only OpenSSL client throws an error, is there some thing specific to OpenSSL?
Another interesting point if we use RSA based encryption OpenSSL client also works, is there something specific to ECDSA?
Please help
Regards,
Vamsi

This is most likely an issue in SharkSSL, not OpenSSL.
The difference between all the browsers you mention and OpenSSL and Chrome is that OpenSSL and Chrome have sha512 as the first in the list of signature algorithms and that the others have sha256.

Thank you for the comment...
Little confusing though. If the issue with SharkSSL how it works fine with other Browsers? Also how Chrome works fine when used with RSA. The failure happens only with ECDSA.
In what scenarios  routines ssl3_get_key_exchange from s3_clnt.c may fail?
Need a help here...

The error message also says "bad signature", and the file/line info points to place where the signature is checked.
Like I explained before, the other browsers are using ECDSA/sha256, while OpenSSL and Chrome are using ECDSA/sha512.
I think it's highly unlikely that there would be a bug in OpenSSL and Chrome related to this, since this is just used too much. The only thing here that doesn't look standard is SharkSSL.
I have no idea why RSA would work.

ECDSA with hashes larger than the curve truncates the hash, which is an odd corner case. I would not be surprised if SharkSSL got that wrong.
Chrome actually uses BoringSSL, not OpenSSL, but we're similar enough. Although a future version of Chrome will be revising our signature algorithms list to prefer SHA-256 over SHA-512 anyway. But SharkSSL is still probably buggy. Please report a bug with them.

Hi krisvamsi22 ,
Have you solved the this issue?
Our server is also using ECDSA/SHA386 and client get error code "SSL3 alert write:fatal:decrypt error"(1408D07B) during TLS handshake process.
And sometime connection is ok like you.
If you possible, Could you share the way you've fixed it ?

Hi,
Are you also using SharkSSL?
Yes we solved the problem upgrading to latest version of SharkSSL as there
were multiple fixes in the area of ECDSA in SharkSSL, we are not sure what
solved this issue exactly, however this concludes that it was neither a bug
with OpenSSL nor with Chrome.
I strongly agree with David Benjamin that "ECDSA with hashes larger than
the curve truncates the hash, which is an odd corner case. I would not be
surprised if SharkSSL got that wrong." so my opinion this could be one of
the fix done on SharkSSL which could have resolved the issue.
Please check around this area, probably may help,
Vamsi
On Thu, Feb 23, 2017 at 3:04 PM, sanggil<EMAIL_ADDRESS>wrote:

Hi krisvamsi22 ,
Have you solved the this issue?
Our server is also using ECDSA/SHA386 and client get error code "SSL3
alert write:fatal:decrypt error"(1408D07B) during TLS handshake process.
And sometime connection is ok like you.
If you possible, Could you share the way you've fixed it ?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/openssl/openssl/issues/1855#issuecomment-281942127,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ARRUJ62VM1EJ08WY_U8MiDseXeLhkWWHks5rfVK9gaJpZM4KqMhS
.

Since you solved this, we should probably close this issue.

Thank you for information.
Can I ask one more?
SharkSSL you updated is for server side or client side?

Server side...
On Thu, Feb 23, 2017 at 4:06 PM, sanggil<EMAIL_ADDRESS>wrote:

Thank you for information.
Can I ask one more?
SharkSSL you updated is for server side or client side?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/openssl/openssl/issues/1855#issuecomment-281956749,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ARRUJ9nTUFg4ul1_hFt5ooRJj7pkPi0Wks5rfWFHgaJpZM4KqMhS
.

Thank you a lot
It is a great help to us


Solved in the console, when the page is empty, use the key combinatio…

…n option+space (mac) or control+space (Windows), an NPE error will occur.
#1685
Fixed the error of assert in AutoSuggestContext.scala
What changes were proposed in this pull request?

[ ] Finshed changes describe
Solve the problem that NPE will occur in the console, when the page is empty, use the key combination option+space (mac) or control+space (Windows)。

How was this patch tested?

[ ] Testing done

Are there and DOC need to update?

[ ] Doc is finished
Do not need to update DOC

Spark Core Compatibility


Fix ci reporter

Small fix on the CI reporter where files2failed wasn't being made for the section on creating a list of messages on what failed, leading to an error and causing an all passing message to never be sent.

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.


Accept next word doesn't reveal it

type at the end of line
have ghost text
accept it word by word
🐛 when reaching the end of the viewport accepted words aren't revealed

https://user-images.githubusercontent.com/1794099/235932410-ad0dcf0e-da43-47ff-b735-17545b3ebc3d.mov

@hediet fyi that I have pushed https://github.com/microsoft/vscode/pull/213530 as a fix for this

Thank you! ❤ Sorry for not fixing this, I thought the fix was more complicated.

Accepting single word seems to move the horizontal scroll, but tabbing to accept the whole line does not scroll. Is that expected?

Marking as verified as word by word works.


Dropping support for prometheus 1.x

Prometheus 2.0 was released almost 2 years ago, maybe it is time to move on and remove support for 1.x from the operator code base.
Lots of the advanced features that this operator is bringing are not even available on prometheus 1.x. Additionally we test only upgrade path from 1.x to 2.x and not if features run on 1.x, which begs to question how much of operator features are supported in 1.4 (oldest version mentioned in Documentation/compatibility.md?
cc: @brancz, @metalmatze, @s-urbaniak, @squat, @LiliC, @bwplotka

Given that only the upgrade path actually works and only starting with 2.x rules work. I think it’s time to let 1.x go.

While on subject of dropping support. Can we also drop kubernetes 1.7 (https://github.com/coreos/prometheus-operator/blob/master/pkg/alertmanager/operator.go#L574-L576) ?
/cc @brancz

I think we long stopped supporting kube 1.7.


Delay playerdata load

Delay quester load purposefully by 20 TICKS(1 second)  to accomodate for changes of playerdata in other servers, and avoid overriding the playerdata

Thanks for your submission. What testing has been done to support this claim? Is it a Bungeecord environment?

can I get a jar for testing?

I have received a test jar from dc.
I saw the data is saved in mysql but
every time join the server, database info are not loaded, and only this message is showing when /q is used
strange

background info:
My testing environment is a OVH singapore database and 2 x hong kong minecraft servers, both of them connect to same databse.
I have tried with quests jenkins build 303 as a compare, have data loss problem sometimes, it depends on the delay between the sql server and minecraft server, when i host server and database in same computer, this problem almost won't happen, but for most of the mysql minecraft server host , they have mysql and minecraft server build in different computer, so it will happen.

Sorry for the troubles I just tested, it worked fine and i will open up a new pull request


Ensure that assert is not ignored for tests.

Right now tests aren't run if cmake is built in release mode because asserts are ignored. This PR makes sure NDEBUG is undefined in the testing code.

replaced with custom assert

@isaachier -- are you ok with this now?


"Mount" option for second disk

Allow a "mount" option for second disk.  If doing a re-installation or something.  Just mount the second disk (partitions).  Would require that this script was used, so we understand the structure of the second disk.

Duplicate of #14


Added an arithmetic coder and some simple tests

Added an arithmetic coder, specifically a range coder.
Added some simple tests using a uniform probability distribution.

Wow! Okay. I don't know much about arithmetic encoding but I like the tests and just have some code-level suggestions and comments.

Review status: 0 of 2 files reviewed at latest revision, 13 unresolved discussions, some commit checks failed.

src/fancy-transformers/arithmetic.spec.ts, line 5 [r1] (raw file):
alphabetical ordering :-)

src/fancy-transformers/arithmetic.spec.ts, line 10 [r1] (raw file):
spacing between operators

src/fancy-transformers/arithmetic.spec.ts, line 11 [r1] (raw file):
will this work in every browser? it may be safer to push the values

src/fancy-transformers/arithmetic.spec.ts, line 18 [r1] (raw file):
it's fine for this simple case but you're repeating the values in the title...i find names like simple encode and simple decode useful for these trivial cases

src/fancy-transformers/arithmetic.spec.ts, line 21 [r1] (raw file):
you repeat this line several times, how about extracting encoder and decoder into describe-level "member level" variables?

src/fancy-transformers/arithmetic.spec.ts, line 36 [r1] (raw file):
did you take these values from some reference implementation?

src/fancy-transformers/arithmetic.ts, line 6 [r1] (raw file):
great to include links!
did you base this code on some reference implementation?

src/fancy-transformers/arithmetic.ts, line 29 [r1] (raw file):
Looks like we can use Math.max in ES6 -- see the top answer here:
http://stackoverflow.com/questions/1669190/javascript-min-max-array-values

src/fancy-transformers/arithmetic.ts, line 41 [r1] (raw file):
Ditto, hopefully we can use ... from ES6 here.

src/fancy-transformers/arithmetic.ts, line 52 [r1] (raw file):
this looks like a perfect candidate for forEach

src/fancy-transformers/arithmetic.ts, line 68 [r1] (raw file):
i think you should raise an error if items[index] is out of range?

src/fancy-transformers/arithmetic.ts, line 103 [r1] (raw file):
yay const!

src/fancy-transformers/arithmetic.ts, line 158 [r1] (raw file):
can you use the protected constructor trick here to prevent anybody creating an instance of Coder?

Comments from the review on Reviewable.io

Review status: 0 of 2 files reviewed at latest revision, 12 unresolved discussions, some commit checks pending.

src/fancy-transformers/arithmetic.spec.ts, line 5 [r1] (raw file):
These are already in alphabetical order.

src/fancy-transformers/arithmetic.spec.ts, line 10 [r1] (raw file):
Okay I have made this change.

src/fancy-transformers/arithmetic.spec.ts, line 11 [r1] (raw file):
Okay I have made this change.

src/fancy-transformers/arithmetic.spec.ts, line 21 [r1] (raw file):
Since the encoder and decoder objects are stateful, I think you need to make a new instance for every test to be safe.

src/fancy-transformers/arithmetic.spec.ts, line 36 [r1] (raw file):
The encoding input is a real observed WebRTC packet that was breaking the encoder. The output is the encoding of that packet using a reference implementation. I have added comments to the test to say where the inputs and outputs come from.

src/fancy-transformers/arithmetic.ts, line 0 [r1] (raw file):
Okay I have made this change.

src/fancy-transformers/arithmetic.ts, line 0 [r1] (raw file):
It looks like not: "arithmetic.ts(146,3): error TS1089: 'protected' modifier cannot appear on a constructor declaration."

src/fancy-transformers/arithmetic.ts, line 0 [r1] (raw file):
I rewrote this using map.

src/fancy-transformers/arithmetic.ts, line 0 [r1] (raw file):
I rewrote this using reduce.

src/fancy-transformers/arithmetic.ts, line 0 [r1] (raw file):
There is no specific reference implementation for the code. There was psuedocode in http://www.arturocampos.com/ac_range.html that gave a general. However, it was incomplete and I filled in the gaps by looking at the other papers.

src/fancy-transformers/arithmetic.ts, line 0 [r1] (raw file):
Okay I have made this change.

Comments from the review on Reviewable.io

Great work!
:+1:

Review status: 0 of 2 files reviewed at latest revision, 6 unresolved discussions, some commit checks pending.

src/fancy-transformers/arithmetic.spec.ts, line 5 [r1] (raw file):
Gah, sorry.

src/fancy-transformers/arithmetic.spec.ts, line 18 [r1] (raw file):
Thanks!

src/fancy-transformers/arithmetic.spec.ts, line 23 [r1] (raw file):
In that case a beforeEach will help make things clearer:
http://jasmine.github.io/2.0/introduction.html#section-Setup_and_Teardown

src/fancy-transformers/arithmetic.ts, line 6 [r1] (raw file):
Awesome.

src/fancy-transformers/arithmetic.ts, line 29 [r1] (raw file):
Great! Sorry, I incorrectly assumed there was a Math.sum.

src/fancy-transformers/arithmetic.ts, line 147 [r1] (raw file):
Oh, TypeScript.

Comments from the review on Reviewable.io

Review status: 0 of 2 files reviewed at latest revision, 1 unresolved discussion, some commit checks pending.

src/fancy-transformers/arithmetic.spec.ts, line 21 [r1] (raw file):
Okay I have made this change.

Comments from the review on Reviewable.io


endpoint: Do not error out when bpf map entry is already deleted.

Do not error out if the map entry was already deleted from the bpf
map.  Incremental updates depend on this being OK in cases where
identity change events overlap with full policy computation.  In other
cases we only delete entries that exist, but even in that case it is
better to not error out if the map entry has been deleted in the
meanwhile.
Fixes: 7cca091b9dd ("endpoint: Use accumulated map changes for policy updates")
Signed-off-by: Jarno Rajahalme<EMAIL_ADDRESS>

This change is

test-me-please

Coverage decreased (-0.001%) to 44.145% when pulling d37390fda94059b94945508d9773b8a5d5a0564c on pr/jrajahalme/fix-mapchanges-delete into 03a47cc38b29f8681e497c1a59dd040ce3518387 on master.

Added missing package import, re-testing.

test-me-please


Support metric bytes (i.e. 1 kb = 1000 kb)

Breaking Changes:

Drop support for all platforms except netstandard2.0.
Namespace changed to ByteSize from ByteSizeLib.
ByteSize renamed to NonStandardByteSize but keeps same functionality.

New Features:

DecimalByteSize object: 1 KB = 1000 B with abbreivations KB, MB, etc.
BinaryByteSize object: 1 KiB = 1024 B with abbreivations KiB, MiB, etc.

Looking forward to when this gets merged

I decided to make this v2 given the changes that went into. An alpha is up on NuGet https://www.nuget.org/packages/ByteSize/2.0.0-alpha1

I observed the BinaryByteSize DecimalByteSize NonStandardByteSize thing and I think it is wrong. Let me explain.
Have you ever worked with the DateTime struct? It represents a point in time. And it supports many many string representations that can all be parsed and rendered. There is even a calendar thing that can display a point in time from any calendar. And there are not many structs to work with it; there is just one.
I suggest keeping only one struct that can do all the desired jobs.

ToString() and ToStandardString() can be used to display a standard format
ToWindowsString() can be used to display the unacceptable but long-loved format (find another name if you wish. I do blame MS for this)
ToDecimalString() can be used to display the decimal format
...

There are already some methods like these. FromKibiBytes and FromKiloBytes can be great together in the same class.
If you want compatibility for those who refuse the standard, you can make a static switch that will change the behavior of ToString.
If you don't like having multiple methods to get the string representation, then you can add an enum parameter or a renderer class.
If you still don't like that, you can also create a new format that can be passed to the ToString method (like DateTime). Something like "KiB#3" for "7.012 KiB", "BK" for "7 KB"...
What do you think?

Here is how I tend to display sizes in HTML. Everyone can understand whatever the size is.

There is only one size (1179694). There are many way of displaying it. So there should be one struct and many display methods.
Am I wrong?

I agree with @sandrock.
Another comparison could be temperature. Temperature is a property of a substance. It can have a value, which is probably represented the most canonically as an average velocity of particles in that substance. But as we all know, the temperature also has many more common representations, i.e. Fahrenheit or Celsius.
The temperature in this context is file size (or "content-length", or, more precisely, "data size"). The base representation is the number of bytes, or just "bytes". Kilobytes, kibibytes, megabytes, mebibytes, etc. are all alternative representations.

I appreciate the feedback in this thread.
To give some context, I initially had a single struct to manage both decimal and binary values. I went down the route of using separate structs make it explicit what the value being represented. I also wanted to keep backwards compatibility and provide users a way to do it the "wrong" way which is what the NonStandardByteSize struct is for. But thinking through this some more and reading the feedback here, I'm not seeing much value in doing it that way.
Given that, I'm thinking of dropping support for the non standard representation and going with the only decimal (kilobyte) and binary (kibibyte) because this is the trend we're heading down based on the limited research I've done.
So to summarize, alpha 2 of this will look like this:

Namespace reverted back to ByteSizeLib.
ByteSize struct with all the necessary methods to required for binary and decimals (i.e. FromKibiByte and FromKiloByte).
No support for representing a kilobyte as 1024 bytes.

Thanks again for taking the time to give your feedback. I'll get started on the changes above. In the meantime, let me know if you agree/disagree with the direction.

I just pushed alpha 2 to NuGet. https://www.nuget.org/packages/ByteSize/2.0.0-alpha2
I realized that I don't have a good API setup for the .ToString to output a binary value. That's something I'll take a look at next.
I'm thinking .ToBinaryString() or just make the useBinaryByte parameter available on .ToString().


Remove all unused icons and fields in top right of page in member portal (i.e. "settings").

User in top left of page should reflect username. Currently says<EMAIL_ADDRESS>

Almost done! Just remove "Updates" in top right profile button.


Install Script Error When Headless and Installing Neon

When running the install.sh script in an automated/headless manner, I get this error:
./install.sh: line 171: [: -eq: unary operator expected

Ran with:
./install.sh -c -p -g -N -ne -d

Running the headless installation way, $INSTALL_NEON never gets set.
Comparing as if it was a string would have worked since an unset variable would just become "" on a string comparison w/ ==. Since it's a numeric comparison w/ -eq it causes an error.

Fixed by PR #7


Player not run

Hi Dev, Everything is fine but Player does not play any videos. There are show download option by IDM but that videos does not play. please look into that ASAP.

yeah me to


Origin/at implement image namespace

What changes were proposed in this pull request?
(Please fill in changes proposed in this fix)
How was this patch tested?
(Please explain how this patch was tested. E.g. unit tests, integration tests, manual tests)
Quick checklist
The following checklist helps ensure your PR is complete:

[ ] Eclipse Contributor Agreement signed, and signed commits - see IP Requirements page for details
[ ] Reviewed the Contributing Guidelines and followed the steps within.
[ ] Created tests for any significant new code additions.
[ ] Relevant tests for your changes are passing.

Replaced by this PR: https://github.com/eclipse/deeplearning4j/pull/8702


Refactoring + Learn.jl

So with regard to restructuring this package I was thinking that we could generalize your learner type hierarchy and maybe move that into a base machine learning package like Learn.jl (should probably be LearnBase.jl, so that Learn.jl can be a meta package which installs suite of machine learning packages). After that we could probably flush out the Orchestra.jl container types for general ensemble learning composition and migrate specific implementations into their own packages. I can probably get started on the first step right away if that seems like a reasonable course of action?

A learner type hierarchy would definitely be worth exploring.
Great idea on separating the ML API and a meta package for installation/support (easy enough to install ML packages that can directly support the API, with wrappers for those that don't in the same package)!
As a strange as it sounds, I may not be using type hierarchies at all for separating Orchestra transformers/learners in the next release, currently experimenting with the use of declared capabilities for each transformer (will try to get this up ASAP through feature/restructure branch to better illustrate). This is mostly due to data representation + and nuanced differences between learners across different packages, of which Orchestra as a system should handle.
Agreed, a number of components of Orchestra should probably be separated into individual packages.
In terms of an immediate course of action, IMO your current type hierarchy found in Learn.jl might be more suitable as a foundation for a base machine learning package. An interesting possibility could be investigating what best data representation is required, I'd be happy to explore this with you along with associated matters through Learn.jl.
I'm going to keep this issue open for now, closing if this discussion migrates elsewhere.

@svs14 @Rory-Finnegan  We've been having a very similar discussion over at https://github.com/Evizero/LearnBase.jl/issues/2... it would be great if you could weigh in and also let us know if you might envision Orchestra merging into or using a shared framework/API.  If you've been working on a redesign, maybe yours could be the basis for LearnBase.jl?


Update to flanneld 0.22.3

Update flannel to latest minor release to get the latest bugfixes
See also: https://github.com/flannel-io/flannel/compare/v0.22.2...v0.22.3
Latest Version contains at least one Bugfix
https://github.com/flannel-io/flannel/commit/f64c1bd16117f769f427d945626272ce2872f053

We may need to update commit sha here: https://github.com/charmed-kubernetes/layer-canal/blob/main/build-canal-resources.sh#L21C17-L21C57 if this gets merged

@GerDner would you mind updating:
https://github.com/charmed-kubernetes/charm-flannel/blob/main/.github/workflows/tests.yaml#L14
-    uses: canonical-web-and-design/Inclusive-naming/.github/workflows/woke.yaml@main
+    uses: canonical/inclusive-naming/.github/workflows/woke.yaml@main


Build fails with GCC 7.2.0: error: unknown type name '__float128'

Building CUPS in Travis CI with GCC 7.2.0 fails with the errors below.
[…]
Compiling ppdc-constraint.cxx...
Compiling ppdc-driver.cxx...
In file included from ppdc-attr.cxx:18:
In file included from ./ppdc-private.h:20:
In file included from ./ppdc.h:22:
In file included from /usr/lib/gcc/x86_64-linux-gnu/7.2.0/../../../../include/c++/7.2.0/stdlib.h:36:
In file included from /usr/lib/gcc/x86_64-linux-gnu/7.2.0/../../../../include/c++/7.2.0/cstdlib:77:
/usr/lib/gcc/x86_64-linux-gnu/7.2.0/../../../../include/c++/7.2.0/bits/std_abs.h:101:3: error: unknown type name '__float128'
  __float128
  ^
/usr/lib/gcc/x86_64-linux-gnu/7.2.0/../../../../include/c++/7.2.0/bits/std_abs.h:102:7: error: unknown type name '__float128'
  abs(__float128 __x)
      ^
[…]

This looks like a GCC or libstdc++ bug - we never reference or use the__float128 type.

I don't think it's a libstdc++ bug. That line is only present in the libstdc++ header if _GLIBCXX_USE_FLOAT128 is defined, and if that's defined then __float128 would be valid. So it looks like something in your build is defining that macro when it shouldn't be defined.

Like I said, there is nothing in the CUPS code that would trigger or use this.

The error at https://travis-ci.org/paulmenzel/cups/jobs/272545457#L1172 is not one that G++ ever issues, but it is a Clang error, so the build seems to be using Clang with headers from libstdc++ 7.2.0, and failing.
I suspect the version of Clang in the Travis setup is too old to use those headers.

It looks like this is an old issue, that Clang doesn’t support this type.

Clang doesn't support the __float128 type. Here are some workarounds:

build with -D__STRICT_ANSI__
edit bits/c++config.h (somewhere inside /usr/include/c++/4.7.0) so it doesn't define _GLIBCXX_USE_FLOAT128
configure libstdc++ with clang instead of gcc
add 'struct __float128;' before you include any STL header

Experimentation with the LLVM fp128 and ppc_fp128 types a few months ago
indicated that we have essentially no backends which support __float128 yet,
so if we want to work around this directly in Clang, I think option (4) is
probably the best way (add a __float128 type which is always incomplete).

Don't use -D__STRICT_ANSI__!! That's an internal macro that is defined by the compiler and not for users to touch.  The correct approach is to use -std=c++14 instead of -std=gnu++14 (or -std=c++11 instead of -std=gnu++11 etc.) and then the compiler will define __STRICT_ANSI__.
Anyway that info is out of date, Clang supports the type now (since 3.9.0 I believe).

Sorry to dig up an old report. I'm looking for a workaround. Also see GCC Issue 88078, error: '__float128' was not declared in this scope on PowerPC


Need to pass '--no-deps' to the pip install command in requirements.py

My requirements.txt is frozen, and I don't want the pip install to pull some python 2 dependencies (my lambda runtime is python3).
Concrete example:
(make new virtualenv)
$ pip-install python-jose
$ pip freeze > requirements.txt
$ cat requirements.txt
ecdsa==0.13
future==0.17.1 <<<<<<<<< remove this line (python2 only, size is 1.5 megs)
pyasn1==0.4.4
python-jose==3.0.1
rsa==4.0
six==1.11.0

This is a matter of keeping the lambda function zip file size down. But if I do this currently, the serverless-wsgi plugin re-pulls the (transitive) future dependency. I don't want that.
A quick test shows that my code would still work without the future dependency.
$  pip uninstall future
Uninstalling future-0.17.1:
(...)
Proceed (y/n)? y
  Successfully uninstalled future-0.17.1
$ python
Python 3.6.6 (default, Aug 26 2018, 13:00:14)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from jose import jwt
>>> token = jwt.encode({'key': 'value'}, 'secret', algorithm='HS256')
>>> print(token)
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJrZXkiOiJ2YWx1ZSJ9.JPIDicqvQ6GAh14yE2yZ3wnZQ0LiLNTTRDtJgLZcn98

Could a capability be added to pass --no-deps to the pip install command-line run in requirements.py? Maybe a way to pass pip command-line arguments through the serverless.yml's custom: section, or some environment variable?
I'll try the python-requirements plugin to see what happens there.

Adding the ability to pass additional arguments to pip sounds reasonable, I agree


Using -o/--exclude-all-optional should exclude all optional tasks

Currently
-x <task>, --exclude=<task>                         Exclude optional task dependencies
Using -o/--exclude-all-optional should filter out all optional tasks from the build plan.

@mriehl review please

:+1: but make it --exclude-all-optional to avoid ambiguity

Will do

:+1:


error: size of array ‘altStackMem’ is not an integral constant-expression

As reported in Debian Bug #1017327:

During a rebuild of all packages in sid, your package failed to build
on amd64.
Relevant part (hopefully):
g++ -c -o out/issue122.o test/t/issue122.cpp -Iinclude -isystem test/include -std=c++11 -Werror -Wall -Wextra -pedantic -Wformat=2 -Wsign-conversion -Wshadow -Wunused-parameter -O3 -DNDEBUG -march=native -DSINGLE_THREADED -fvisibility-inlines-hidden -fvisibility=hidden -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -pthread
In file included from /usr/include/signal.h:328,
                 from test/include/catch.hpp:6392,
                 from test/unit.cpp:2:
test/include/catch.hpp:6415:33: error: size of array ‘altStackMem’ is not an integral constant-expression
 6415 |         static char altStackMem[SIGSTKSZ];
      |                                 ^~~~~~~~
test/include/catch.hpp:6466:45: error: size of array ‘altStackMem’ is not an integral constant-expression
 6466 |     char FatalConditionHandler::altStackMem[SIGSTKSZ] = {};
      |                                             ^~~~~~~~
mkdir -p ./out
g++ -c -o out/mutating_visitor.o test/t/mutating_visitor.cpp -Iinclude -isystem test/include -std=c++11 -Werror -Wall -Wextra -pedantic -Wformat=2 -Wsign-conversion -Wshadow -Wunused-parameter -O3 -DNDEBUG -march=native -DSINGLE_THREADED -fvisibility-inlines-hidden -fvisibility=hidden -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -pthread
make[1]: *** [Makefile:96: out/unit.o] Error 1

The full build log is available from:
http://qa-logs.debian.net/2022/08/13/mapbox-variant_1.2.0-1_unstable.log

Fedora has a patch to resolve this issue: https://src.fedoraproject.org/rpms/catch1/blob/rawhide/f/catch1-sigstksz.patch
This patch has been included in Gentoo:
https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7571d22a49cdce0626968667e68638ff2111471e
And Debian:
https://salsa.debian.org/debian-gis-team/mapbox-variant/-/commit/32514d612a19927725d0caf92735999d1ac4ae22
The catch package in Debian has a different patch:
https://sources.debian.org/src/catch/1.12.2-0.1/debian/patches/glib2.34.patch/


Logger fix for #237

@sfkiwi figured out this fix after a recent winston logger update broke the functionality to attach transports and logging to files (hopefully you don't mind me submitting this). This returns full functionality and I have been using/testing it for over a month now with no issues.
Fix source: https://github.com/sfkiwi/gdax-tt/commit/a75c6fc7cdeb2e1fd4542f210e9011e8732731cf
Original Issue: #237

Thanks for this! I can't merge PRs for some reason, will figure out what's going on and follow up.


Enable evals on multiple databases for OpenAI and Anthropic generators

In addition:

pass through join hints to the OpenAI and Anthropic generator prompts when c=0. These do not make any significant difference to performance (the difference in +- 0.5% with and without for gpt-4o, gpt-4, and claude-3.5-sonnet), but we are passing them through for the sake of apples to apples comparisons with other models.
remove glossary from all prompts, as it is not needed

Thanks for incorporating translations in the openai/anthropic runners! Just a few comments from me.

Fixed, thanks Wendy!


Python 2.6 not working

My Travis tests failed on Python 2.6: piskvorky/smart_open#15 .
After some digging around it appears this is because of moto. Moto apparently depends on some ordereddict package, but that package is not installed (nor mentioned anywhere in the docs, AFAICS).
Do you think you could make ordereddict a dependency for moto, when installing on Python 2.6?
In other words, after I successfully run pip install moto, I'd expect moto to work, even on Python 2.6.
And thanks for the great package!

This should already be the case as far as I know: https://github.com/spulec/moto/blame/master/setup.py#L18-21

In that case, I don't know why it fails, but it does.
I just checked: compare the Travis fail on
https://travis-ci.org/piskvorky/smart_open/builds/57924387 (no explicit pip install ordereddict)
vs. Travis pass on
https://travis-ci.org/piskvorky/smart_open/builds/57924974 (does an explicit pip install ordereddict)
The only difference between the two is installing ordereddict: https://github.com/piskvorky/smart_open/pull/17/files
Any ideas?

Okay, I have confirmed the issue. It looks like something to do with the wheel distribution files. If you install with pip install moto --no-use-wheel it will work. I'm going to keep digging into the root cause.


Deleted GPS traces do not disappear

I've recently removed some inaccurate GPS traces from http://www.openstreetmap.org/traces, but they still show up in iD. (In JOSM, they disappeared immediately.)

ah yeah this is #2450
The gps traces are a raster overlay tile layer and it I don't know when it gets updated.
The code for this gpx layer is in https://github.com/ericfischer/gpx-updater

Wouldn't it be possible to download the GPS traces directly instead?

Wouldn't it be possible to download the GPS traces directly instead?

See #2450 - it's currently too slow, and the API returns .  If it got some cgimap speedup, and an API call that returned gps traces as linestrings (instead of just points), we would probably use it.  It would be easy to add to iD in the same way that OpenStreetCam or Mapillary APIs currently work.


Add Makefile for local development

This patch intentionally does not integrate Make into the CI process, and instead lets interested users use Make to mimic the CI testing process.
Disclaimer:
Participation by NIST in the creation of the documentation of mentioned software is not intended to imply a recommendation or endorsement by the National Institute of Standards and Technology, nor is it intended to imply that any specific software is necessarily the best available for the purpose.

I am fine with this PR not being merged.  I just did not want to lose track of the Makefile I'd written to help understand the Poetry build process.


add Buf <-> Array[Byte] bijection

This PR defines a bijection between Array[Byte] and com.twitter.io.Buf with a bonus version bump of the util-core lib.

Looks fine to me, but best to resolve with Moses about Owned or Shared, I don't have enough context on Buf to know the best answer there.

Thanks @dschobel ! we're going to get this out in the next few days.


What is the restriction?

It seems I cannot pass any objects to the PChan like
PChan(Int32).new # success
PChan(Array(Int32)).new # fail
PChan(String) # fail
PChan(MyObj) # fail

Now can we only pass the Int* to it?

You can pass structs which contain other structs or primitive types only.

Got it. Thanks.


Unmarshaller refactoring

Description

some switches replaced by maps
strings.Fields() and strconv.ParseInt() replaced by new functions: lexer.readField() and lexer.readUint64Field()
because sdp size is small, lexer now uses just simple []byte
new parseError show invalid position
bug in tests messages: bytes wasn't converted to strings before output
bug in ConnectionInformation.String(): nil pointer dereference

Benchmark before
BenchmarkUnmarshal-12    	  175827	      6791 ns/op	    4008 B/op	     108 allocs/op
Benchmark after
BenchmarkUnmarshal-12    	  150302	      6761 ns/op	    2584 B/op	     108 allocs/op

Okay, gochecknoglobals, gochecknoinits, got it...

So, let's do it without refactoring, just optimizations...


[draco] Build error

C:\Users\관리자\vcpkg>vcpkg install draco
warning: Starting with the September 2023 release, the default triplet for vcpkg libraries will change from x86-windows to the detected host triplet (x64-windows). To resolve this message, add --triplet x86-windows to keep the same behavior.
Computing installation plan...
The following packages will be built and installed:
draco[core]:x86-windows -> 1.5.3
Detecting compiler hash for triplet x86-windows...
Restored 0 package(s) from C:\Users\관리자\AppData\Local\vcpkg\archives in 309.3 us. Use --debug to see more details.
Installing 1/1 draco:x86-windows...
Building draco[core]:x86-windows...
-- Note: draco only supports static library linkage. Building static library.
-- Using cached google-draco-1.5.3.tar.gz.
-- Cleaning sources at C:/Users/관리자/vcpkg/buildtrees/draco/src/1.5.3-f6cecd9b35.clean. Use --editable to skip cleaning for the packages you specify.
-- Extracting source C:/Users/관리자/vcpkg/downloads/google-draco-1.5.3.tar.gz
-- Applying patch fix-compile-error-uwp.patch
-- Applying patch fix-uwperror.patch
-- Applying patch disable-symlinks.patch
-- Using source at C:/Users/관리자/vcpkg/buildtrees/draco/src/1.5.3-f6cecd9b35.clean
-- Found external ninja('1.11.0').
-- Configuring x86-windows
-- Building x86-windows-dbg
-- Building x86-windows-rel
-- Fixing pkgconfig file: C:/Users/관리자/vcpkg/packages/draco_x86-windows/lib/pkgconfig/draco.pc
-- Using cached msys-mingw-w64-i686-pkg-config-0.29.2-3-any.pkg.tar.zst.
-- Using cached msys-mingw-w64-i686-libwinpthread-git-<IP_ADDRESS>73.5be8fcd83-1-any.pkg.tar.zst.
-- Using msys root at C:/Users/관리자/vcpkg/downloads/tools/msys2/9a1ec3f33446b195
CMake Error at scripts/cmake/vcpkg_fixup_pkgconfig.cmake:135 (message):
C:/Users/관리자/vcpkg/downloads/tools/msys2/9a1ec3f33446b195/mingw32/bin/pkg-config.exe
--exists draco failed with error code: 1
  ENV{PKG_CONFIG_PATH}: "C:/Users/관리자/vcpkg/packages/draco_x86-windows/lib/pkgconfig;C:/Users/관리자/vcpkg/packages/draco_x86-windows/share/pkgconfig;C:/Users/관리자/vcpkg/installed/x86-windows/lib/pkgconfig;C:/Users/관리자/vcpkg/installed/x86-windows/share/pkgconfig"
  output: Package draco was not found in the pkg-config search path.

Perhaps you should add the directory containing `draco.pc'
to the PKG_CONFIG_PATH environment variable
No package 'draco' found
Call Stack (most recent call first):
scripts/cmake/vcpkg_fixup_pkgconfig.cmake:200 (z_vcpkg_fixup_pkgconfig_check_files)
ports/draco/portfile.cmake:22 (vcpkg_fixup_pkgconfig)
scripts/ports.cmake:147 (include)
error: building draco:x86-windows failed with: BUILD_FAILED
error: Please ensure you're using the latest port files with git pull and vcpkg update.
Then check for known issues at:
https://github.com/microsoft/vcpkg/issues?q=is%3Aissue+is%3Aopen+in%3Atitle+draco
You can submit a new issue at:
https://github.com/microsoft/vcpkg/issues/new?template=report-package-build-failure.md&title=[draco]+Build+error
Include '[draco] Build error' in your bug report title, the following version information in your bug description, and attach any relevant failure logs from above.
vcpkg-tool version: 2023-02-16-12e657924d99511514c0287ca5ce46882d3657c7
vcpkg-scripts version: 223d33be7 2023-02-24 (2 days ago)
Please use the prefilled template from C:\Users\관리자\vcpkg\installed\vcpkg\issue_body.md when reporting your issue.
I want to install assimp, but it says to do it after draco installation, so I installed draco, but I keep getting an error. I also tried git pull vcpkg update. But I keep getting

Thanks for posting this issue, this error should be caused by your VCPKG path C:/Users/관리자/vcpkg, could you please clone vcpkg to a English path and rebuild draco or assimp?

However, I don't know what to do because the cmd main window has "관리자" as the default value, and I can't rename this "관리자" folder.

You can use pushd command, like pushd E:\.

Solved, thank you


simple chart global annotations don't work

Hi, I've started using simple chart to deploy my payload and I've noticed that the following snippet works only for labels:
settings:
  global:
    annotations: &global-annotations
      responsible: '{{ $.Values.context.responsible }}'
    labels:
      user: '{{ $.Values.context.responsible }}'
  containers:
    defaults:
      imageRef: busybox
      envFrom:
        - configMapRef:
            name: '{{ include "metachart.fullname" $ }}-globals'
            optional: false

#: Here's a workaround for settings.global.annotations, without them Kubernetes resources
#: remain without annotations
annotations:
  <<: *global-annotations

Thanks for report.
Please use release 0.1.1
Other charts have been also updated.


Fix two "end" conjunctions not translatable in download page

Fixes two "end" conjunctions that are not available for translation in the sentences: "More older releases are available here and for OS X here." and "QGIS Source Code is available here (latest release) and here (long term release)" in the download page,
Please, check if the fix actually fixes the bug before merging,

You are right, these two 'and' strings were not flagged as translatable.
Your commit fixes this.
Normally you would not see it, because those new 'strings' would have been pushed to transifex as new source. But I see/think dat 'and' already is a 'source-string' so should show up tomorrow.
I will also push new strings for the website this week anyway.
Thanks.

Thanks @rduivenvoorde.

I will also push new strings for the website this week anyway.

Could you please have a look at these suggestions: https://github.com/qgis/QGIS-Website/commit/a86e9f8297c76aa04cf625bc2826f7da76a7ca2a#r35767731 and https://github.com/qgis/QGIS-Website/pull/686#issuecomment-547189465 and eventually implement them before pushing the strings?
Thank you again.


Disks of StatefulSets are not Removed Correctly on OpenStack

Issue by I820491
Monday Dec 04, 2017 at 16:25 GMT
Originally opened as https://git.removed/kubernetes-attic/garden-operator/issues/244

Seems like there is an issue with draining the OpenStack cluster prior to the deletion step.
Here is the controller manager log (recurring):
E1204 15:48:45.805935       1 event.go:200] Server rejected event '&v1.Event{TypeMeta:v1.TypeMeta{Kind:"", APIVersion:""}, ObjectMeta:v1.ObjectMeta{Name:"alertmanager-db-alertmanager-1.14fd0936790fb285", GenerateName:"", Namespace:"shoot-garden-core-vedran-os", SelfLink:"", UID:"", ResourceVersion:"", Generation:0, CreationTimestamp:v1.Time{Time:time.Time{sec:0, nsec:0, loc:(*time.Location)(nil)}}, DeletionTimestamp:(*v1.Time)(nil), DeletionGracePeriodSeconds:(*int64)(nil), Labels:map[string]string(nil), Annotations:map[string]string(nil), OwnerReferences:[]v1.OwnerReference(nil), Initializers:(*v1.Initializers)(nil), Finalizers:[]string(nil), ClusterName:""}, InvolvedObject:v1.ObjectReference{Kind:"PersistentVolumeClaim", Namespace:"shoot-garden-core-vedran-os", Name:"alertmanager-db-alertmanager-1", UID:"f0b120f3-d8ca-11e7-af0b-fa163eb524e9", APIVersion:"v1", ResourceVersion:"3479265", FieldPath:""}, Reason:"ProvisioningSucceeded", Message:"Successfully provisioned volume pvc-f0b120f3-d8ca-11e7-af0b-fa163eb524e9 using kubernetes.io/cinder", Source:v1.EventSource{Component:"persistentvolume-controller", Host:""}, FirstTimestamp:v1.Time{Time:time.Time{sec:63647971979, nsec:0, loc:(*time.Location)(0x9de1220)}}, LastTimestamp:v1.Time{Time:time.Time{sec:63647999325, nsec:744733630, loc:(*time.Location)(0x9de1220)}}, Count:34, Type:"Normal"}': 'namespaces "shoot-garden-core-vedran-os" not found' (will not retry!)
E1204 15:48:46.113817       1 openstack_volumes.go:190] Cannot delete volume 0a4c6c0a-2e24-40f7-9854-34c2cc7cf93f: Invalid request due to incorrect syntax or missing required parameters.
E1204 15:48:46.113960       1 openstack_volumes.go:375] Cannot delete volume 0a4c6c0a-2e24-40f7-9854-34c2cc7cf93f: Invalid request due to incorrect syntax or missing required parameters.
E1204 15:51:23.521027       1 stateful_set.go:395] Error syncing StatefulSet shoot-garden-core-vedran-os/alertmanager, requeuing: namespaces "shoot-garden-core-vedran-os" not found
I1204 15:51:23.521107       1 stateful_set.go:422] StatefulSet has been deleted shoot-garden-core-vedran-os/prometheus
I1204 15:51:23.521122       1 stateful_set.go:422] StatefulSet has been deleted shoot-garden-core-vedran-os/alertmanager
I1204 15:51:23.526172       1 stateful_set.go:422] StatefulSet has been deleted shoot-garden-core-vedran-os/alertmanager
E1204 15:58:38.522697       1 stateful_set.go:395] Error syncing StatefulSet shoot-garden-core-vedran-os/alertmanager, requeuing: namespaces "shoot-garden-core-vedran-os" not found
I1204 15:58:38.522939       1 stateful_set.go:422] StatefulSet has been deleted shoot-garden-core-vedran-os/prometheus
I1204 15:58:38.522977       1 stateful_set.go:422] StatefulSet has been deleted shoot-garden-core-vedran-os/alertmanager
I1204 15:58:38.528089       1 stateful_set.go:422] StatefulSet has been deleted shoot-garden-core-vedran-os/alertmanager
I1204 16:01:11.633615       1 openstack_volumes.go:326] Created volume b802d595-8dba-4c0b-bcb8-7061d2a71ae6 in Availability Zone: rot_1

The alertmanager disk gets recreated by the scheduler every now and then. This issue leads to a lot of orphan disks in our OpenStack tenant (at some point the quota is filled up). Not sure if this is a kube-controller-manager issue or something else.

@afritzler As far as I know, this issue was discussed/clarified and we have no issue anymore, right? Please reopen otherwise.