a less painful solution for doing a bulk insert

Currently it is recommended that inserts are done with Data.stream!.  The problem with this is that right now this performs a row-by-row insert which is unbelievably slow (for me it was at least 10 minutes for 5e4 rows with a perfectly good connection).  It seems that libpq itself does not provide us with many good solutions.
One suggestion, thanks to Ibilli on discourse is to write a DataFrame to a buffer in the form of a CSV and upload it with a COPY statement.  While horrific, this might be the best option as it might otherwise be completely impractical to do a large insert.
Now, I realize that the posted solution involves both DataFrames and CSV and that these will not be added as dependencies.  My intention in opening this issue was to discuss:

Should some function be added to LibPQ to make implementing this easier?  Perhaps something like bulkcopy(::IO) and bulkcopy(::String)?  (As far as I can tell there's nothing like that here now.)
Is there a better solution lurking around that I'm just not seeing?  If so I'd be glad to make a PR to document it.

Thanks all.

It should definitely be possible to do a row-by-row insert faster than that. Were you using Data.stream! to a Statement as shown in the example? Did you surround it in a transaction? What were the types of the parameters?

Yes, I am doing Data.stream! to a Statement as in the example.  I'm doing
Data.stream!(df, LibPQ.Statement, cnxn, str)

where str is an insert statement of the same form as in the example (usually with about 10 columns).
I'm not sure how to surround it in a transaction, could you provide an example?

Put execute(conn, "BEGIN") before and execute(conn, "COMMIT") after

This tells PostgreSQL "record but don't actually make the changes to the db until I'm done"

That makes a hell of a lot of sense.
Sorry, this is probably due to my SQL inexperience.  Still, if I get it working nicely I'll do a PR to improve the example, if you don't mind.

Absolutely, I'd love better examples :)

I've also been struggling with slow bulk inserts.  I didn't know that transactions had such a big impact on performance!

I use these two functions:
function runexecutequery(query)
    conn = dbcon()
    result = execute(conn, query)
    clear!(result)
    close(conn)
end

function runcopyquery(conn, query,list)
    """
    conn - the connection to PostgreSQL.
    The query must specify the table and fields to copy the [list] to
    e.g.
    "COPY a_uts (ut, id) FROM stdin;\n"

    fields: must be an indication of what is in the list(in the correct order)
            and must correspond with what is in the query.
    e.g. for the above query:

    Use
  runcopyquery(conn, query, list)
    """
    execute(conn, query);
    for (fields) in list
        buf = string(join(fields, '\t'), '\n')
        PQputCopyData(conn.conn, pointer(buf), Cint(length(buf)))
    end
    PQputCopyEnd(conn.conn, C_NULL)

end

This week I will:

Add a hint about transactions in the documentation, and an example
Implement a COPY function

Hm, Data.stream! is still incredibly slow for me even enclosing it with execute(cnxn, "BEGIN") and execute(cnxn, "COMMIT").

What are the types of your DataFrame columns?

The one I just did that was pretty slow was (UUID, String, DateTime, Int, Int, Int).

Can try running LibPQ.parameter_pointers(LibPQ.string_parameters(row)) on each row of the DataFrame and getting the total time of that? That will really help narrow the issue down.

I'm not sure whether you mean the rows or the columns here (i.e. should I collect the rows into Vector{Any}?)
In the worst case scenario of doing this row-wise, it takes less than half a second, so I don't think this is the problem.

In the worst case scenario of doing this row-wise, it takes less than half a second, so I don't think this is the problem.

How exactly are you doing this? I can compare that with the Data.stream methods to figure out where the shenanigans are happening.
Btw, the Data.stream! method is going row-wise as well.

I did
v = [Any[c for c in row] for row in eachrow(df)]
LibPQ.parameter_pointers.(LibPQ.string_parameters.(row))

Yes, I realize Data.stream! is row-wise.  I'm using the tagged version of LibPQ so the logger really, really likes to remind me of that fact :laughing:

Oh! Hmm. Maybe outputting the log on every row is actually what's causing it. You could try running after Memento.setlevel!(getlogger(LibPQ), "warn")?

I'll just try running it on LibPQ master where we changed it to debug...

Even with the log output hidden, with the "BEGIN" and "COMMIT" statements it took 4 minutes to upload 2.7e4 rows of the types I gave above.

Alright I think I have enough to do a deep perf dive now.

Thanks for running things for me!

Thanks for working on it!

On Julia 1.0.1 I did:
julia> using LibPQ, DataFrames, DataStreams, UUIDs, Dates

julia> df = DataFrame(a=map(_->uuid4(),1:27000), b=fill("foo", 27000), c=fill(DateTime(2015,1,1,1,1,1), 27000), d=collect(1:27000), e=collect(1:27000), f=collect(1:27000))
27000×6 DataFrame
│ Row   │ a                                            │ b      │ c                   │ d     │ e     │ f     │
│       │ UUID                                         │ String │ DateTime            │ Int64 │ Int64 │ Int64 │
├───────┼──────────────────────────────────────────────┼────────┼─────────────────────┼───────┼───────┼───────┤
│ 1     │ UUID("cd3d8684-6c79-44af-bf53-0eba7e1842f3") │ foo    │ 2015-01-01T01:01:01 │ 1     │ 1     │ 1     │
│ 2     │ UUID("f0d6f314-fed1-4db6-8ad2-2dfe31ef7185") │ foo    │ 2015-01-01T01:01:01 │ 2     │ 2     │ 2     │
│ 3     │ UUID("71c36602-b9f8-4398-b3fe-9d37a8c0d931") │ foo    │ 2015-01-01T01:01:01 │ 3     │ 3     │ 3     │
│ 4     │ UUID("e924d31c-a055-455f-9140-e09a44540e3f") │ foo    │ 2015-01-01T01:01:01 │ 4     │ 4     │ 4     │
│ 5     │ UUID("e779d993-2cef-43dc-a747-d9076dc1e2ea") │ foo    │ 2015-01-01T01:01:01 │ 5     │ 5     │ 5     │
│ 6     │ UUID("df5c5269-aad4-4b7c-a757-2270234aef5b") │ foo    │ 2015-01-01T01:01:01 │ 6     │ 6     │ 6     │
│ 7     │ UUID("c77e1714-14a3-47e7-b5b1-85eb50fd2aee") │ foo    │ 2015-01-01T01:01:01 │ 7     │ 7     │ 7     │
│ 8     │ UUID("9354e6e3-0703-4cc7-8ab1-e85361e15cf3") │ foo    │ 2015-01-01T01:01:01 │ 8     │ 8     │ 8     │
│ 9     │ UUID("c89a57ac-c148-46df-b1a6-9bb92518d006") │ foo    │ 2015-01-01T01:01:01 │ 9     │ 9     │ 9     │
│ 10    │ UUID("89de8e20-ef9f-481d-a9e7-4e806e554ed6") │ foo    │ 2015-01-01T01:01:01 │ 10    │ 10    │ 10    │
│ 11    │ UUID("f89cf802-1b41-41a9-a1a8-fa19a4be7f32") │ foo    │ 2015-01-01T01:01:01 │ 11    │ 11    │ 11    │
⋮
│ 26989 │ UUID("f097b5fb-d0a6-4795-a029-5c13298ae600") │ foo    │ 2015-01-01T01:01:01 │ 26989 │ 26989 │ 26989 │
│ 26990 │ UUID("6b84d49f-c421-4cb6-8ded-e50cc63a868b") │ foo    │ 2015-01-01T01:01:01 │ 26990 │ 26990 │ 26990 │
│ 26991 │ UUID("39dc324a-d202-4347-b52c-f8a31e9ff8f2") │ foo    │ 2015-01-01T01:01:01 │ 26991 │ 26991 │ 26991 │
│ 26992 │ UUID("6ebd3252-4456-4702-bc14-5de78a27576f") │ foo    │ 2015-01-01T01:01:01 │ 26992 │ 26992 │ 26992 │
│ 26993 │ UUID("0259b17a-0ddb-481f-8a91-f50631a62a11") │ foo    │ 2015-01-01T01:01:01 │ 26993 │ 26993 │ 26993 │
│ 26994 │ UUID("6afd9759-88c1-4f53-a88f-98af4970c04c") │ foo    │ 2015-01-01T01:01:01 │ 26994 │ 26994 │ 26994 │
│ 26995 │ UUID("b609d2eb-49b2-4772-a4e3-ddb3f5d57671") │ foo    │ 2015-01-01T01:01:01 │ 26995 │ 26995 │ 26995 │
│ 26996 │ UUID("b147fce2-1293-48f1-9b8c-45dcf3ab4b7e") │ foo    │ 2015-01-01T01:01:01 │ 26996 │ 26996 │ 26996 │
│ 26997 │ UUID("18ae6f38-3dd4-4027-8ff2-080332c880b6") │ foo    │ 2015-01-01T01:01:01 │ 26997 │ 26997 │ 26997 │
│ 26998 │ UUID("bd8ea0b1-4a4f-4ed6-899f-706185bc6ce8") │ foo    │ 2015-01-01T01:01:01 │ 26998 │ 26998 │ 26998 │
│ 26999 │ UUID("15b949b7-2441-4091-9c65-b26063d837b7") │ foo    │ 2015-01-01T01:01:01 │ 26999 │ 26999 │ 26999 │
│ 27000 │ UUID("7da5c207-fc73-47c9-86d4-63b7612da1b8") │ foo    │ 2015-01-01T01:01:01 │ 27000 │ 27000 │ 27000 │

julia> conn = LibPQ.Connection("dbname=postgres");

julia> execute(conn, "CREATE TABLE insert_perf (a varchar(37) PRIMARY KEY, b varchar, c timestamp, d bigint, e bigint, f bigint)");

julia> execute(conn, "BEGIN;");

julia> @time Data.stream!(df, LibPQ.Statement, conn, "INSERT INTO insert_perf (a, b, c, d, e, f) VALUES (\$1, \$2, \$3, \$4, \$5, \$6)")
  7.453611 seconds (13.25 M allocations: 642.813 MiB, 4.29% gc time)
PostgreSQL prepared statement named __libpq_stmt_0__ with query INSERT INTO insert_perf (a, b, c, d, e, f) VALUES ($1, $2, $3, $4, $5, $6)

julia> execute(conn, "COMMIT;");

What version of Julia are you running?

I've forgotten about, but never been able to actually resolve this issue.  I don't have terribly long strings, the only difference I see is that you are using a string type instead of the uuid type.
It actually seems surprisingly tricky to run a local database for testing, so I haven't been able to confirm your result yet.

It actually seems surprisingly tricky to run a local database for testing, so I haven't been able to confirm your result yet.

What platform? Maybe I can help

Right now I'm trying to do it on an old Ubuntu 16.04 install.

You should be able to start and stop it with whatever service manager your OS has (I've seen service postgresql start and systemctl start postgresql.service). The binary should be at /usr/local/pgsql/bin/postgres, maybe that's not symlinked into /usr/local/bin on install? You could also try the EnterpriseDB version: https://www.enterprisedb.com/download-postgresql-binaries

The service always has status loaded active exited so I don't think it's actually running.  I tried restarting it a number of times and it doesn't seem to fix it.  It's ok, I'll have to dig into that.  I suppose the right thing to do would probably be to run a docker container anyway.

Ok, setting up a local PostgreSQL server is surprisingly annoying (for one, the server is not even open on localhost by default, which is kind of weird).
Anyway, confirmed, I do 10^5 rows in about 14 s.  So, I guess there must be some problem with my connection.  I'm going to look into it more thoroughly and see if I can get to the bottom of it.

If anyone needs to spin up a quick local Postgres instance for testing I recommend using the official docker container:
docker run --rm --name local_postgres \
  -e POSTGRES_PASSWORD=something \
  -p 5432:5432 \
  postgres:10.5

or similar (running it locally is a pain).

Wow I cannot believe how much faster copy is than insert statements, even though the insert statements were prepared statements, which run inside of a transaction.
I just rewrote a set of insert statements that put data into four interconnected tables, which took around four hours to load ~500,000 rows. I rewrote the insert statements to instead copy the data into a temporary table, and then split the data from the temporary table into the final tables. I used the copy statement on ~135,000 rows, which took twenty seconds instead of four hours.
Amazing, thank you so much!

My original problem was not even caused by this package, and there is now a COPY example in the documentation (thanks to whoever put it there!).
Seems appropriate to close this issue.  Thanks all.

Is there any way to make the transacted load! more efficient?

Yes, but I don't have time to work on them. I will also be away for a month so I won't be able to review.
Take a look at http://initd.org/psycopg/docs/extras.html#fast-execution-helpers for some ideas. You may be able to implement some of these yourself without needing any changes to LibPQ.jl.

Thanks for the response. That might be a bit too much too bite in the next couple months, but I can probably contribute cases and benchmarks in case someone else can look into it.

Is there a way to use LibPQ.jl for using psql \copy command?

Yes, that is what https://invenia.github.io/LibPQ.jl/dev/#COPY-1 does. Only copying data into the db though, not out.

I am not a superuser in that server so I ended up using,
run(`psql "user = $db_usr host =$db_host dbname = $db_name password = $db_pwd" -c "\copy $schema.$name FROM '$path' CSV HEADER NULL 'na';"`)

I thought it would be useful to share it here. I don't know if that would be something worth implementing directly thought LibPQ.jl.


Logo usage

Hi
Sorry, I couldn't find any other way to communicate this so created the issue.
Is it ok to use ajv logo as part of my project's logo?

Sure, as long as it’s used to mean this Ajv :)

Thank you :)


Question: Is this project still valid?

Sometimes projects don't need to be updated,and they work fine. I'm curious if this still works? Does the project require updates for it to keep working? I see the build is passing, but I have no idea if that's going from current google hardware updates.
Thanks!

It does work, but connecting to the internet is impossible because google patched the update function causing GaleForce to be removed, or soft-brick the device (reset needed)

Thank you!


Scroll to label or legend when linked from error summary

By default, the browser will scroll the target into view. Because our labels or legends appear above the input, this means the user will be presented with an input without any context, as the label or legend will be off the top of the screen.
Manually handling the click event, focussing the element and scrolling the question into view solves this.
To do

[ ] Test in all supported browsers

[x] Internet Explorer 8 (Windows)
[x] Internet Explorer 9 (Windows)
[x] Internet Explorer 10 (Windows)
[x] Internet Explorer 11 (Windows)
[ ] Edge (latest 2 versions) (Windows)
[ ] Google Chrome (latest 2 versions) (Windows)
[ ] Mozilla Firefox (latest 2 versions) (Windows)
[ ] Safari 9+ (macOS)
[ ] Google Chrome (latest 2 versions) (macOS)
[ ] Mozilla Firefox (latest 2 versions) (macOS)
[ ] Safari 9.3+ (iOS)
[ ] Google Chrome (latest 2 versions) (iOS)
[ ] Google Chrome (latest 2 versions) (Android)
[ ] Samsung Internet (latest 2 versions) (Android)

[ ] Test in assistive technologies

[x] JAWS + Internet Explorer 11
[ ] ZoomText + Internet Explorer 11
[ ] Dragon NaturallySpeaking + Internet Explorer 11
[ ] NVDA + Firefox
[ ] VoiceOver (iOS)
[ ] VoiceOver (macOS)

IE11 + Jaws announces for example:
"Conditional?  "text input edit" "Problem with input type of text"

Zoom Text + IE11 doesn't move up to label on
Checkboxes and Conditional revealing content

Samsung Internet on Android scrolls to Conditional reveal label, opens keyboard and scrolls just down a little. Others, including text input are ok.

There is still 'jumpy' scrolling in IE8 and IE9, where clicking the link takes you first to the input and then very quickly 'back up' to the legend or label:

However, I've been able to fix this in IE10 and above 🎉
Whilst it's not ideal, I think it is acceptable for IE8 and IE9 to do this.
Alternatively, we could choose to do nothing in browsers that don't support history.pushState, which would mean in IE8 and IE9 you'd end up jumping to the input with the legend or label off the top of the screen.

It looks like this change also massively improves things for NVDA users:
Text Input
Before: "Edit, has autocomplete"
After: "Label for input, edit, has autocomplete, problem with input, blank"
Textarea
Before: "Edit, multiline"
After: "Label for textarea, edit, multiline, problem with input, blank"
Select
Before: "Combobox, collapsed, option one."
After: "Label for select, Combobox, option one, collapsed, problem with select"
Select
Before: "Spin button, edit"
After: "Label for date input, grouping, problem with date input. Day, spin button, edit, blank"
File Upload
Before: "Browse, no file selected"
After: "Browse, button"
Radios
Before: "Radio button, not checked"
After: "Legend for radios, grouping, problem with radios. Label for first radio button, radio button not checked, 1 of 2"
Checkboxes
Before: "Checkbox, not checked"
After: "Legend for checkboxes, grouping. Label for first checkbox, checkbox not checked."
Single checkbox
Before: "Checkbox, not checked"
After: "Label for single checkbox, checkbox not checked, problem with single checkbox"

I'm happy that this is good to review now 👍

Glad to see this get done, the NVDA improvements are awesome.

Needs a changelog entry

Bugs filed as a result of this work:

NVDA does not announce label, legend or description when following a link to an input (NVDA, Firefox, Windows)
Legend not announced when following a link to an input within a fieldset using Ctrl-Option-Space (Voiceover, Safari, macOS)
Voiceover reads checkbox labels twice (Voiceover, Safari, macOS)

Linking to this ticket https://github.com/alphagov/govuk-design-system-backlog/issues/155 so it can be documented how the error summary links to each form control by ID (not a legend/label).
I've found a mix of behaviours across our services (some linking to empty links ) which we need to correct. This work is fab.

@colinrotherham there's a PR open on the Design System which adds guidance around this to the Error Summary – if you fancy checking it out, it'd be great to get feedback from someone outside the team.
https://github.com/alphagov/govuk-design-system/pull/634


Remove the HTML and JSON caches to avoid craches due to memory leak (infinit caches)

(to merge in a week or so, if no crashes have been encountered)
EDIT: (it does not resolve the issue, but makes it maybe slightly more bearable)

It does not fix the issue full (though it looks like it helps a bit) but it makes the code easier to maintain anyway


MobileNet-SSD inputsize192x192

I use the inputsize which is 192x192, and the mAP is 0.6. However, using the inputsize of 300x300, the mAP is 0.74. Why this? Can you give me advise?

The resolution size can affect mAP, if the resolution size is bigger, the mAP is higher.
How do you get mAP 0.74? the author just trains a model and its mAP is 72.7%.

Could you teach me how to change the input size, plz!


Add Scintilla support

Would be nice to support it even if it might be a bit overkill (we really don't need text editing support)
That being said as we don't need text-editing implementing support for it would likely be easier.
http://www.scintilla.org

So this is interesting which would save quite a bit of work:
https://github.com/Gargaj/ScintillaGL
Maybe it would be possible to implement this on top of bgfx directly?

I build the code above and it works as expected and I did some small testing with the code editor and it seems to work quite nice.

Moved to https://prodbg.phoreplay.com/T4


Fix Helm chart version comparison

This PR uses compare-versions gem to compare Helm chart versions. Also, current version is not disabled anymore when upgrading a release. This way user can switch a release to use chart from other repository.
Fixes #145

This fixes the version compare part but version is still resolved from all matching chart repos. Is that safe to do? For me it sounds too risky to upgrade chart from a different repo 🤔

You don't really know from what chart repository the release is installed.
For example, redis chart is deprecated in stable repository and new versions are available in bitnami repository:

To update an exisiting stable deployment with a chart hosted in the bitnami repository you can execute
$ helm repo add bitnami https://charts.bitnami.com/bitnami
$ helm upgrade my-release bitnami/chart


x-zally-ignore: explanation must be mandatory for each ignored rule

Currently, x-zally-ignore extension accepts a set of RuleIds to be ignored. This is a great feature, but we have to assure the correct usage of it. Let's begin with understanding the behaviour of the users.
We want the API designers to explicitly state a reason why the desicion has been made to ignore the rule. Therefore, the interface has to change from:
x-zally-ignore:
  type: array
  items:
    type: string

to
x-zally-ignore:
  type: array
  items:
    type: object
    required:
      - rule_id
      - reason
    properties:
      rule_id:
        type: string
      reason:
        type: string

Acceptance criteria

[ ] Rules are not deactivated if no reason provided
[ ] RESTful API is adjusted (reason is mandatory)
[ ] New check is implemented which creates violations if reason is not provided (a MUST violation, can be linked to Zalando rule 100: https://opensource.zalando.com/restful-api-guidelines/#100)

Sounds great... a few additional thoughts...

We have a bunch of API definitions using the current format already, would be good if we could have some transition period where the code is capable of understanding both styles. Perhaps a separate @Check for deprecated use of x-zally-ignore?
Should make sure AvoidXZallyIgnoreRule works properly with the new style ignores (ideally while continuing to support the old way for a while - see above)
Most of openapi properties are defined lowerCamelCase so I think rule_id would be better as ruleId or just rule.


Geode support?

This is the closest thing to free megahack i've seen yet, and it's awesome! But, unfortunately, it doesn't work with geode for obvious reasons. The only mod menu there is on geode is Prism, which is worse than openhack imo. Will there ever be a .geode version for this mod? Thanks in advance!

Geode support is planned.
I already have a beta version of openhack running on geode, but it's completely unstable due to geode having a lot of issues.
There is also a trade of, because geode doesn't support all Geometry Dash versions, while openhack can be launched on 2.200-2.204 without any issues. That also goes for future game updates, as with geode, there will be a time window where mod won't support the new version (not an issue with current setup).
I guess the best case scenario is to have two separate branches, like it's currently done for megahack.

Pushed first commit into the geode branch. It runs, but there are still issues with some methods, which need to be hooked manually. I think I will finish it Soon™.

How can I install it?

It's still very unstable, so right now the only option is to build it yourself.
I will try to finish today or tomorrow.

That was fast! Thank you!

Done!
Releases page now contains a .geode file available for download.
It's also available for download through "Download" tab in Geode menu.


Go Mobile support for DID Key

Codecov Report

Merging #457 (ad95bb9) into main (e745002) will decrease coverage by 0.23%.
The diff coverage is 41.46%.

@@            Coverage Diff             @@
##             main     #457      +/-   ##
==========================================
- Coverage   57.42%   57.19%   -0.23%
==========================================
  Files          67       67
  Lines        7499     7486      -13
==========================================
- Hits         4306     4281      -25
- Misses       2456     2468      +12
  Partials      737      737

Files Changed
Coverage Δ

did/util.go
31.63% <0.00%> (-0.15%)
:arrow_down:

crypto/keys.go
74.83% <42.11%> (-4.65%)
:arrow_down:

did/key/key.go
70.52% <100.00%> (ø)

CodeQL will be broken until the authors update it to support go1.21, should not block merge

tests added, comments made, bugs fixed. should be good to go


Please invite me to the GitHub Community Organization

Please invite me to the GitHub Community Organisation.

Name: venu kalam

Discord Username(if exists):

Additional Context:

 I found eddie on youtube (freecodecamp channel)
 I think this is one great way to learn new stuff and improve your network.
:nerd_face:

Invitation sent for the GitHub Organisation. Welcome to the community 🎉
Don't forget after accepting to make it public so it appears on your GitHub profile for everyone else to see, you can do this by finding your name in the GitHub organisation list and change the dropdown to public https://github.com/orgs/EddieJaoudeCommunity/people
Tips for practising:
Customise your GitHub profile, here is a live stream on it https://www.youtube.com/watch?v=cT6GXCuS0Zo
Practice repo, instructions on how to add your name to the README in the README https://github.com/EddieJaoudeCommunity/hacktoberfest-practice
Remember contributing to open source is not just about code, its about collaboration, communication and adding value
I hope that helps

Hi @eddiejaoude
Can you send me an invitation too..

@OmkarPh Maybe you could open a new issue for an invitation request on EddieJaoude/support/invite-me ?
That might be faster since Eddie gets a lot of github notifications, and this might not get noticed by them...
:)

Ohh fine ✌


[Lexer] Fix an assertion failure when invoking code completion inside a single-quoted string literal

Explanation: When performing code completion inside a single-quoted string literal, we were trying to generate a Fix-It to change the string literal to double quotes. This Fix-It accidentally contained the null byte that signified the code completion location, resulting in an assertion failure. Exclude the null byte from the Fix-It to resolve the assertion failure.
Scope: Completion inside single-quoted string literals
Risk: Fairly low, we are just skipping over null bytes in Fix-Its
Testing: Added a regression test
Issue: rdar://126924962
Reviewer:  @rintaro on https://github.com/apple/swift/pull/73467

@swift-ci Please test


Replace ! with :exclamation:

looks like some other characters are converted into related emojis (like $ into :heavy_dollar_sign: ), but the exclamation point is missing D:
This means posting the oldpeoplefacebook sandwich copypasta doesn't work :cry:

Fixed! Thanks for reporting this.


Create install script

Create install script for module installation

done

see v0.1.7
available on NuGet
perform NuGet install biz.dfch.PS.Appclusive.Client -Version 0.1.7 and execute .\Install.ps1 in downloaded package folder


Weird artifacts when closing windows

Hello,
I’ve noticed weird glitches and color artifacts when closing windows.
I’ve taken two pictures of my screen with my phone ;-)
It’s not possible to screenshot (using grim+slurp), since the glitches disappear when something is drawn over them.

I’m using sway 9d6787d1 and wlroots 526ae59.
I’ve bisected the issue with that version of sway and found out that the commit introducing this bug is ef846a8 in wlroots.
On the bright side I sort of enjoy them, but they’re a bit distracting.
A tip if you want to bisect: there's also a bug in https://github.com/swaywm/wlroots/commit/ef846a883950e59f95507daa6d3f96f0e84da3af#diff-b91e9e2ef3f34f2129df43dc0e78f8543153f9ea6699a83ea79269932b9575efR140. The new age parameter was added to wlr_swapchain_acquire in the parent commit, but the change isn't reflected and triggers a compilation error. It is fixed in the next commit though. https://github.com/swaywm/wlroots/commit/68a8d9905513c0277037cc74325bb2ea507ac012#diff-b91e9e2ef3f34f2129df43dc0e78f8543153f9ea6699a83ea79269932b9575efR140

Your bug report is missing debug logs. Please add a link to the full debug log file.

Of course, sorry about that.
https://gist.github.com/MisterDA/1844ddd618d93c764d8299ffbbeb67d5
I’m using the dreaded --my-not-gpu-wont-be-nvidia but set WLR_DRM_DEVICE to the integrated GPU, if that changes anything. If that’s the root of the problem, well… so be it.
I’ve tested with the default configuration and ASAN+UBSAN (no reports except leaks at exit). You have to disable the background picture to reproduce.

Does INTEL_DEBUG=nofc help?

Yes, the artifacts don't appear anymore. This fixes my problem, thanks for the workaround.

This is an iris driver bug, already fixed upstream: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3425


deploy-kustomize RBAC problem

Using the new kabanero deploy-kustomize pipeline for the baristahttp coffeeshop microservice and the deploy step is failing due to an RBAC problem...
STEP-DEPLOY
[INFO] Starting dry run...
I0520 13:57:57.680399      12 request.go:621] Throttling request took 1.130849793s, request: GET:https://<IP_ADDRESS>:443/apis/monitoring.coreos.com/v1?timeout=32s
Error from server (Forbidden): error when creating "/workspace/git-source/environments": namespaces is forbidden: User "system:serviceaccount:kabanero:kabanero-pipeline" cannot create resource "namespaces" in API group "" at the cluster scope
Error from server (Forbidden): error when retrieving current configuration of:
Resource: "kafka.strimzi.io/v1beta1, Resource=kafkas", GroupVersionKind: "kafka.strimzi.io/v1beta1, Kind=Kafka"
Name: "kafka", Namespace: "coffeeshop-dev"
from server for: "/workspace/git-source/environments": kafkas.kafka.strimzi.io "kafka" is forbidden: User "system:serviceaccount:kabanero:kabanero-pipeline" cannot get resource "kafkas" in API group "kafka.strimzi.io" in the namespace "coffeeshop-dev"

@kvijai82 mentioned something about having a doc tell the user how to configure the service account to avoid this issue

Updated kabanero-pipeline-role with the new info.

Not seeing this problem anymore after the changes


Add template evaluate

Current dependencies on/for this PR:

main

PR #130   👈

This comment was auto-generated by Graphite.

Merge Activity

Sep 11, 7:37 AM: @alanvardy started a stack merge that includes this pull request via Graphite.


Reason for calling main class SerialPortStream instead of SerialPort?

I've recently started using this library to replace MS's implementation in System.IO.Ports and so far I'm impressed.
Just one niggle comes to mind: I have to replace all occurrences of SerialPort with SerialPortStream to port code using the MS implementation to yours. Do you have any specific reason for naming your class SerialPortStream instead of SerialPort? Your class can't collide with MS's, since both are namespaced. Furthermore, you named almost all other types and events exactly the same as MS, so there would already be collisions if you would include both namespaces via using statement. It would make changing simpler if it were named SerialPort, since then one would only need to change using System.IO.Ports at the top of each file to using RJCP.IO.Ports to port existing code.
I know it's probably too late now, since you have users who already have code using SerialPortStream objects. But can you please consider this if you ever release a 3.0?

Good idea!

All my use cases when I created this project a few years ago required a buffered stream. I didn't see the need for a direct copy of MS-API, and it was an additional overhead (developer time) that I didn't need. One would initialize the stream, and then pass it to APIs that then use the base abstract Stream as input.
Microsoft's implementation chose to talk to the driver direct and have the buffering in the driver, where I chose to do buffering within software for better abstraction of the different problems between libraries.


[ENH] Init a Nipoppy dataset with a BIDS dataset

Closes #233
Extracted from #321

Changes proposed in this pull request:

add bids-source to to the "init" CLI and workflow
copy the BIDS dataset if one is passed
create a manifest from the BIDS dataset

Checklist (for reviewers)
This section is for the PR reviewer

[x] PR has an interpretable title with a prefix (e.g. [BUG], [DOC], [ENH], [MAINT])
Refer to NumPy Development Guide for a full list
[x] PR links to GitHub issue with mention Closes #XXXX
[x] Tests pass
[ ] Checks pass

For new features:

[ ] Tests have been added

For bug fixes:

[ ] There is at least one test that would fail under the original bug conditions

Addressed most of your points but I am still unsure about what's the most desirable default behavior: copy, move, copy with symlink?


Running multiple CVP downloads simultaneously result in errors

Hi! I'm using the eos_download.py to provision multiple CVP servers (as part of a cluster) simultaneously. When I do that I see the following error message in all but one server:
# /data/eos_download.py --api TOKEN--ver cvp-2021.1.0 --img rpm
cvp-rpm-installer-2021.1.0 is currently downloading....
100%|######################################################################################################################################################################9| 5.64G/5.65G [02:08<00:00, 22.5MB/s]Traceback (most recent call last):
  File "/data/eos_download.py", line 356, in <module>
    sha512_download_link = (sha512_result.json()["data"]["url"])
KeyError: 'data'

As a result, the CVP installer is downloaded but not the md5 checksum file, and ultimately my playbook fails as the exit code is not 0 (and would fail afterward as the next step would be checking the md5sum).
I believe that this is happening as the session gets invalidated when new ones are created and the script never tries to refresh it before getting the .md5 download link (therefore the script working on only one server, whose session was created last).

I've submitted pull request #6 to deal with that situation.


Roll engine c0ee647ca422..db36d28ed074 (1 commits)

https://github.com/flutter/engine/compare/c0ee647ca422...db36d28ed074
git log c0ee647ca4226fcb38a5af178a97ce8ba9129184..db36d28ed074b8b4f018ce6f7cb93b4e8ffcf456 --no-merges --oneline
db36d28ed Roll src/third_party/dart a8f3a5dae6..8e73b3c006 (92 commits)
The AutoRoll server is located here: https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff (garyq@google.com), and stop
the roller if necessary.

Auto-roller completed checks. About to merge.


Outdated error message when user is not logged into MAS

Description
Version: 0.42.2
Error message indicates only "topic" and "consumer-group" commands, whereas it should mention all data plane commands.
Steps to reproduce

Login using token

rhoas login --token "fhhfhf-gjjgjg"

Run command to list artifacts in the service-registry

rhoas service-registry artifact list

Logs
> [rhoas@83ac83d7c8a9 /]$ rhoas service-registry artifact list
❌ Not logged in to identity.api.openshift.com. Run "rhoas login" to authenticate. Note: token-based login is not supported by the Kafka "topic" and "consumer-group" subcommands. Run the command in verbose mode using the -v flag to see more information

To be done this sprint. We removing mas-sso


alert-box not working with gem?

Try as I might, copying all of your examples on the documentation, I cannot get the
...
 variations to work with the Rails gem. I tried updating and reinstalling the gem, too. Is it possible that this isn't included in the gem? I get some minimal styling when I use
...
 or
...
, but they don't resemble the alert boxes on the documentation page.

Hey Clay,
The alert boxes were part of Foundation 2.0.2.  Our gem has just been updated to 2.0.2, so go ahead and run gem update zurb-foundation while its still hot.

Thanks. I did that right before I posted here; guess I was a few minutes early. Thanks!

No problem, we're currently working on automating the build process for our gem so there's minimal delay from when we release updates to Foundation to when the gem is updated.
Happy Coding!

@ludicast Foundation doesn't currently include the javascript to close out alert boxes.  I'll go ahead and get this change added to Foundation and update the Gem.  Thanks!

@ludicast Foundation has been updated to include this functionality.  Go ahead and run bundle update zurb-foundation and you should be all set!

wow that was quick.  thanks!


Adds AWS platform guide

Add guide for deployed etcd on AWS discussing resource planning and cluster design

Some styling nits

commit title should be Documentation: ...
etcd does not use line-breaks on markdown docs, so please put one paragraph in one line

Thanks!

nits addressed, @gyuho

working on CI fixes now

updated, @heyitsanthony

Thanks for the review, @heyitsanthony. I'll work on your suggestions tomorrow.

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@c0fc389). Click here to learn what that means.
The diff coverage is n/a.

@@           Coverage Diff            @@
##             master   #7666   +/-   ##
========================================
  Coverage          ?   73.2%
========================================
  Files             ?     328
  Lines             ?   26643
  Branches          ?       0
========================================
  Hits              ?   19504
  Misses            ?    5657
  Partials          ?    1482

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 c0fc389...03f42bf. Read the comment docs.

ready for another round of review @heyitsanthony, thanks!

Documentation/platforms is a bit anemic and I can't seem to find any links to the directory. As it stands, this doc will be practically hidden. Maybe this should be moved into op-guide with a link under Operating etcd clusters in Documentation/docs.md (or a subsection ### Platforms that lists supported architectures / aws / freebsd)?
/cc @xiang90

@heyitsanthony Probably a subsection called operating etcd in the cloud environment?

hmm... maybe operating etcd is better... i can image we want to add a section about running etcd atop kubernetes with etcd operator.

@xiang90 the op-guide presumably is a guide for operating etcd already, though. Platforms is maybe too general but it also would completely encompass running etcd on k8s, azure, freebsd, container linux, weirdo architectures, whatever. Is it overlooking something / not clear?

@heyitsanthony
i just feel freebsd, container linux and aws should not be at the same level under platform. freebad is not comparable with aws really. but after second thought, that maybe a good start anyway.

updated, @heyitsanthony, @xiang90

lgtm. Thanks!
I guess we can sort out how to tie this into the top-level docs in another PR

@calebamiles thanks!


Website plugin page needs links to plugin repo/docs

Description of the problem or steps to reproduce
https://micro-editor.github.io/plugins.html
Clicking on the plugin expands the install instructions but there is no other info outside of searching github. Try looking for Comment 1.06.
Specifications
You can use micro -version to get the commit hash.
Commit hash:
OS:
Terminal:

I thought I opened an issue for this long ago, but I guess I forgot to. This has always bothered me too.

Problem is with how the website pulls plugin info. It reads from the plugin-channel's channel.json, which doesn't actually contain the repo's upstream URL.
It could rip it from the README, but that would be quite weird.

@zyedidia Maybe Micro could allow the repo.json to have an Upstream field, which could then be read by the website.
Example on my own plugin:
[
	{
		"Name": "fmt",
		"Description": "A multi-language formatting plugin for Micro",
		"Upstream": "https://github.com/sum01/fmt-micro",
		"Tags": [
			"beautifying",
			"beautifier",
			"beautify",
			"formatter",
			"formatting",
			"multi-language",
			"pretty-printer",
			"prettifier"
		],
		"Versions": [
			{
				"Version": "3.2.0",
				"Url": "https://github.com/sum01/fmt-micro/archive/v3.2.0.zip",
				"Require": {
					"micro": ">=1.3.0"
				}
			}
		]
	}
]

Yeah this has always been an issue with the repo.json specification. It would be nice if a "homepage" field could be provided.

Can a Homepage field be dropped into the repo.json without breaking things, or does it require changes in code somewhere?

Pulling the link from the table in the README could be done without changing anything, and would not be too difficult; it would just require some string management.
ex: (pseudocode)
readme = load(README.md)
lines = readme.split("\n")
for line in lines:
  if "|" is in line:
    tablerow = line.split("|")
    homelink  = tablerow[3].strip()

There now is a Website option so this issue can be closed.


Added slovak language file

Signed-off-by: Peter Vágner<EMAIL_ADDRESS>

Hello Peter,
thanks for the contribution. It's true that "Running windows" should be named rather as "Open windows". I am going to fix that in the other language files and the source code.

So I have added the slovak localisation to the code and released updated installer and portable versions for download. The updated releases can be downloaded from the WinSwitcher  repo homepage.


Docking of tiles

egui recently got support for multi-viewports (many native windows).
I'd like to be able to drag out a tile from the root egui viewport, spawning a new viewport containing that tile. That is, something like how browser tabs can be detached from their parent window into their own windows, and then dragged back into the parent window again.
For this to work well we should support:

Dragging out a tile into a new viewport
Dragging one viewport onto another viewport, merging the two
Dragging tiles between viewports

Detecting that one viewport is being dragged onto another is complicated without:

https://github.com/rust-windowing/winit/issues/3229

Perhaps a bit off topic, but one important thing to consider here is how this should work on tiling window managers. I daily drive Hyprland, and as an example, Chrome's tab moving feature is actually incredibly broken. I'd like to see a solution that works better. I'm not sure how exactly that solution would be implemented, however.


Basic Fantasy sheet update

Lots of minor updates.

If you are updating the preview image, would you mind deleting the old image for me? Thanks!


feat: only run greeter on opened or reopened PRs (try 2)

Save resources and prevent duplication by running the PR greeter only on opened or reopened.

This is being replaced by an overhaul of action-pr-description-add.


warning on JPA annotations applied to fields

What I thought we had decided was that when you have a Java annotation of a Ceylon attribute, then the annotation always gets applied to the field, eliminating any ambiguity that it might be applied to the getter.
And in fact, this is what seems to actually happen. (Phew! I was really worried for a sec.) But I still get a warning from the Java backend:
Ambiguous annotation target: generatedValue could be applied to several targets, use one of generatedValue__FIELD, generatedValue__GETTER to disambiguate

That warning should be removed, I believe.
WDYT, @tombentley ?

I'm also in favor of removing this warning if annotations are automatically applied to fields, I'd like to avoid using those ugly id__FIELD if possible :)

@tombentley ? is this something for 1.2.3 or should it be moved to 1.3?

Fixed.

I just tried @DiegoCoronel's example Swarm app, and I found that when I used inject instead of inject__FIELD, I still get these useless warnings.
source/jaxrs/example/provider/PersistenceProvider.ceylon:15: warning: ambiguous annotation target: persistenceContext could be applied to several targets, use one of persistenceContext__FIELD, persistenceContext__GETTER, persistenceContext__SETTER to disambiguate
        persistenceContext
        ^
source/jaxrs/example/resource/EmployeeResource.ceylon:37: warning: ambiguous annotation target: inject could be applied to several targets, use one of inject__FIELD, inject__GETTER, inject__SETTER to disambiguate
        inject
        ^
source/jaxrs/example/resource/EmployeeResource.ceylon:40: warning: ambiguous annotation target: inject could be applied to several targets, use one of inject__FIELD, inject__GETTER, inject__SETTER to disambiguate
        inject
        ^
4 warnings

I seriously do not know what the purpose of this is supposed to be. If I have:
shared class EmployeeResource() {

	inject
	late EntityManager entityManager;

	inject
	late EmployeeService service;

        ...

}

Seriously what do I care if the `@Inject` annotation gets applied to the field or to the getter? It's not even confusing to Java folks, since the declaration _actually looks like a Java field_!

👍

So where does it get applied? I could be misremembering, but I thought you wanted it to be the field before, but if late, doesn't it need to be the setter?

So where does it get applied?

To the field.

but if late, doesn't it need to be the setter?

Oh is this because of the late annotation?

The thing is that @DiegoCoronel was bypassing the whole late stuff by just using inject__FIELD, and it was working...

OK, so, indeed: there's a problem that merits this warning for attributes which are both:

late, and
of optional type.

But it's very rare to be injecting things that might be null (in fact I think that's illegal) so the warning still seems like overkill.
I agree we could leave it there for attributes which satisfy both 1 and 2.

In this case i wanst able to use Constructor injection because RestEasy wants a no arg constructor and i was required to use that way

In this case i wanst able to use Constructor injection because RestEasy wants a no arg constructor and i was required to use that way

I saw that. And there's no way to inject into named constructors now, is there?

I saw that. And there's no way to inject into named constructors now, is there?

No, its a limitation from RestEasy, no arg constructor  must exist and the design with ceylon will not work if I have 2 constructors, because that way my field would need to be null also

Oh, so we get the warning because late actually comes with an extra "it's been set already" field that is only set in the setter, right? So in this case it has to be the setter if it's about injection, and it has to be the getter if it's about reading/writing the value (JPA). That's a tricky case indeed.

Oh, so we get the warning because late actually comes with an extra "it's been set already" field that is only set in the setter, right?

Yeah, exactly, except that only some late fields are like that: primitives, and fields of optional type. Lots of late fields don't have the extra boolean at all.

Yeah, exactly, except that only some late fields are like that: primitives, and fields of optional type.

I wonder if we should just give up and make this sort of late field return the Java default value if it hasn't been initialized.

Maybe make late fields always boxed so we don't need the extra boolean?

Maybe make late fields always boxed so we don't need the extra boolean?

No, that would be worse, sadly. :-(

So, to be clear, I think a warning for a Java annotation applied to an attribute is reasonable iff:

the Java annotation has METHOD but not FIELD, and there is a setter generated, or
the Java annotation is FIELD and there are two fields generated (due to it being late).

Otherwise, it seems to me that there is no ambiguity.
WDYT, @tombentley, @FroMage?

Yeah, seems OK to me.

the Java annotation is FIELD and there are two fields generated (due to it being late).

Well the flag field is purely an implementation detail, and isn't something the user should know or care about. Why would they ever want to annotate this?

Should be fixed

@tombentley

Well the flag field is purely an implementation detail, and isn't something the user should know or care about. Why would they ever want to annotate this?

Because if they use @Inject to inject into the field, then the flag field won't be correctly set, so the injection will have failed from the point of view of the Ceylon class itself. That's why this case should be a warning. Fortunately it's the less common case, AFAICT.

Ah, OK, so it's not the usual ambiguous target warning, but a new one.

Hmm, but this is very specific to @Inject.

@tombentley not really, there are a whole raft of annotations in Java EE and in JPA that exist to allow the container or ORM set a value to a field. Lots of them do this.

OK, but I'm struggling to phrase the warning.

"injecting a field value directly does not initialize the attribute in this case: if XXX annotation is being used for injection consider using XXX__GETTER or XXX__SETTER instead" ?

There's a warning because the user has to pick the getter or setter. Some annotations (JPA) should go on the getter (even though that requires extra annotations on the class to tell it to not stick to fields but also include properties), while others (CDI injection) should go on the setter. It really depends.

Actually I wonder if we're doing this right, since Java reflection can set final fields, no? We're using late because we don't want to mark the field variable and we don't want to give it an initial value because there are not always meaningful default values (for non-optional types we can't use null).
But we only get a trick case when the attribute is optional or primitive: both cases where there's a decent default value. Should we not then use this pattern?
inject
late NotOptional notOptional;

inject
String? optional = null;

inject
boolean bool = false;

That should work, no? And also avoid any warning.

"injecting a field value directly does not initialize the attribute in this case: if XXX annotation is being used for injection consider using XXX__GETTER or XXX__SETTER instead"

Try "This attribute value cannot be properly initialised by changing its value: depending on XXX's semantics consider annotating the JavaBean Property getter with XXX__GETTER or its setter with XXX__SETTER."

Thanks @tombentley.

A couple observations:

When null is the initialization indicator, we’re considering it a good thing that reflection can be used to bypass our initialization checks (i.e. no protection against early reads or multiple writes by reflection is “ok”)
A late attribute with a Java annotation is very likely to be the target of value injection, where, we’ve established, it’s fine for an application to bypass initialization checks

I’m not going to propose we actually do the following, because among other things, that would get me flamed. But it would be somewhat consistent to:
Disable initialization checks for late attributes that have Java annotations when the null value can’t be used to indicate the uninitialized state.
It might follow that there should be a warning when initialization checks are disabled. But, to be consistent, we might then also be compelled to warn in scenario (1) that reading or writing a field using reflection bypasses initialization checks. But, of course, that warning would seem excessive.
To an extent, we’re already “looking the other way” re initialization rules with interop.
Granted, initialization checks sill provide value when reading attributes (to make sure injection actually happened), and forgoing them in (2) adds risk of bugs using default values. OTOH, all of this is for interop, and it would be no less safe than the same in Java.
Again… this is just a brainstorm.

I think that would be an OK compromise, actually.
On 18 Oct 2016 22:23, "John Vasileff"<EMAIL_ADDRESS>wrote:

A couple observations:

When null is the initialization indicator, we’re considering it a
good thing that reflection can be used to bypass our initialization
checks (i.e. no protection against early reads or multiple writes by
reflection is “ok”)
A late attribute with a Java annotation is very likely to be the
target of value injection, where, we’ve established, it’s fine for an
application to bypass initialization checks

I’m not going to propose we actually do the following, because among other
things, that would get me flamed. But it would be somewhat consistent to:
Disable initialization checks for late attributes that have Java
annotations when the null value can’t be used to indicate the uninitialized
state.
It might follow that there should be a warning when initialization checks
are disabled. But, to be consistent, we might then also be compelled to
warn in scenario (1) that reading or writing a field using reflection
bypasses initialization checks. But, of course, that warning would seem
excessive.
To an extent, we’re already “looking the other way” re initialization
rules with interop.
Granted, initialization checks sill provide value when reading
attributes (to make sure injection actually happened), and forgoing them in
(2) adds risk of bugs using default values. OTOH, all of this is for
interop, and it would be no less safe than the same in Java.
Again… this is just a brainstorm.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/ceylon/ceylon/issues/5751#issuecomment-254643419, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AA1rf0V2tHcEPT-0IJMHI1VTWnr-_o1oks5q1TizgaJpZM4GmnjV
.

@jvasileff By "initialization checks" you mean the extra boolean field?

Yes, the extra boolean field and associated code.

So nobody's going to pick up on what I said about not needing late for primitives and optionals?


Feature/175 introduce unit tests

@leculver , adding unit testing project per #181 discussion.
Adding most popular unit testing framework set to begin with: AutoFixture, xUnit, nSubstitute.
As a next step simple test with ClrObject (thus needs fake ClrType) is introduced.
An exception (GCDesc property is internal = cannot be touched = failure) takes place during ClrType mock built process.
Further commits lift visibility for from internal to protected internal allowing those be touched by derived = mock generation.
Thanks.

@mitikov I've merged just the access changes to make sure clrmd 1.0.1 has these implemented.


Namespace collision with flutter_android_lifecycle

This is the counter-issue I'm opening for the issue I have opened in the other repository: https://github.com/blackmenthor/flutter-android-lifecycle-plugin/issues/6 . I'm doing this to facilitate communication for both packages, if necessary.
This is very unfortunate and I don't have a good solution for this. Personally, I'll be forking the other repository for a while and change the name until this has been "officially" resolved.
After updating the image_picker dependency (https://pub.dev/packages/image_picker), I am now getting this error:
...\app-name\android\app\src\main\java\io\flutter\plugins\GeneratedPluginRegistrant.java:17: error: a type with the same simple name is already defined by the single-type-import of FlutterAndroidLifecyclePlugin
import io.flutter.plugins.flutter_plugin_android_lifecycle.FlutterAndroidLifecyclePlugin;

(Because of this change in image_picker: https://github.com/flutter/plugins/commit/35957436b517793fa4cb568a3af6a1f054c7bdbb#diff-94aec143fa15896e4c8aca6854f7ecd7R19)
...\app-name\android\app\src\main\java\io\flutter\plugins\GeneratedPluginRegistrant.java looks like this:
/**
 * Generated file. Do not edit.
 */
public final class GeneratedPluginRegistrant {
  public static void registerWith(PluginRegistry registry) {
    if (alreadyRegisteredWith(registry)) {
      return;
    }
    FlutterAndroidLifecyclePlugin.registerWith(registry.registrarFor("com.anggach.flutterandroidlifecycle.FlutterAndroidLifecyclePlugin"));
    FlutterAndroidLifecyclePlugin.registerWith(registry.registrarFor("io.flutter.plugins.flutter_plugin_android_lifecycle.FlutterAndroidLifecyclePlugin"));

...
  }

...

This package is the package with the competing namespace: https://pub.dev/packages/flutter_android_lifecycle
Again, this is super unfortunate because either you have to change the namespace of this package, or communicate with the maintainers of the other package to change it on their end.

I am having the sam Issue +1

I had the same Issue I was Able o solve it by implementing my own Image picker class I just remove the android life cycle from the original one and upload it here :
https://github.com/MOOUDE/image_picker
and.in pubspec.yaml file I add this dependency :
image_picker:     git:       url: https://github.com/MOOUDE/image_picker.git

@SvenSchoene
do you need to use image_picker together with flutter_android_lifecycle which is a third party plugin?
why to not use only flutter_plugin_android_lifecycle?

@VladyslavBondarenko
That is a good question!
I personally started using flutter_android_lifecycle because we're using the branch.io Flutter plugin in our codebase: https://pub.dev/packages/flutter_branch_io_plugin
In their examples they use the "other" lifecycle plugin in order to listen to lifecycle events from inside Flutter like this:
// General code used for setting up Branch
      if (Platform.isAndroid) FlutterBranchIoPlugin.setupBranchIO();  // will throw an exception if it fails
      FlutterBranchIoPlugin.listenToDeepLinkStream().listen((string) {
        print("DEEPLINK $string");
        // PROCESS DEEPLINK HERE
      });

// HERE is the code where the lifecycle plugin comes in
      if (Platform.isAndroid) {
        FlutterAndroidLifecycle.listenToOnStartStream().listen((string) {
          print("ONSTART");
          FlutterBranchIoPlugin.setupBranchIO();
        });
      }

Looking at both the description as well as the source code of flutter_plugin_android_lifecycle it doesn't seem like both plugins attempt to do the same thing / offer the same functionality.
So while the names for both plugins are well picked (because both deal with lifecycles on Android), they seem to have different intentions for what they want to offer.

@blasten Is there any reason we couldn't just rename this to match the package (FlutterPluginAndroidLifecycle)? Would people's projects have references other than the generated registrant (which would automatically update)?


[FEATURE] Support AutoMap to allow creation of mappings using type inference

My trying to rewrite my code with new elasticsearch client v8-beta.1.
I am using mapping attributes on index class and AutoMap function. I did not find this feature in new version.
I hope this will be possible.
Thank You in Advance.

Hi, @lukapor. This is not in the current beta's, but we do plan to port the functionality before GA. It's always helpful to have examples of real usage that we can test against, so if you are able to share a code snippet of where you are using this, that would be great!

Hi, I want to write a test but I saw that you allready have test for that.
7.17/tests/Tests/ClientConcepts/HighLevel/Mapping/AttributeMapping.doc.cs

just to know...is it implemented now on 8.x version?

@meriturva No, this didn't make the cut for the initial release. I don't have an ETA for us re-introducing it yet.

@stevejgordon What would your advice be for my usecase: I want to use the inferred mapping for all properties except for one I want to set explicitly. I can't seem to find a way to do that through the .DefaultMappingFor method. Must I call .CreateIndexAsync and explicitly map out the whole object by hand?

I am also in need of mapping attributes in v8. My problem is in NEST v7, the densevector attribute is missing the index and similarity properties. It’s not clear to me how to me how to enable index=true and similarity=“dot_product” on new index mapping without those attribute properties. Assuming NEST v7 won’t be updated, please enable attribute mapping in v8 and include the index and similarity options for densevector.

@mwrothbe-intc Manual mapping is already possible using the v8 client. This issue is only about the missing AutoMap functionality 🙂
For your case, something like this should work:
var mapResponse = client.Indices.PutMapping("index", x => x
    .Properties<Person>(p => p
        .DenseVector(x => x.Data, d => d
            .Index(true)
            .Similarity("dot_product"))));

any idea when AutoMap will be added? still on v7, been waiting for this feature

hi,
i agree also, the AutoMap Feature is near a "must have", if the index creation is fully OO driven, otherwise there is only a manual way with a static json mapping file usage, or write a own AutoMapper Function, But this seems not so trivial, if i take a look on the old AutoMapper code by the client 7.x.
@stevejgordon what is your recommendation pls for a workaround about this missing AutoMap function?

Steve is no longer maintaining the library (this is now my job). Until I reintroduce auto-mapping, your options are:

Use the v7 NEST client in compatibility mode just for index creation (it can be used side-by-side with the new v8 client)
Use manual mapping (like described in my previous comment)
Write your own auto-mapper implementation based on the NEST code

That being said, I'm fully aware this is one of the more frequently requested features, but I can't give you any definitive ETA.

Hi @flobernd
i got some APi issues with the index creation by the nest 7.15.5 client, if i use the newer .map(...) api calls
https://github.com/elastic/elasticsearch-net/issues/7929
i have solved this issues with the older .mappings(... ) APi usage.

I tried to use old client to Automap, and it fails on enums.

Hi, @lukapor. This is not in the current beta's, but we do plan to port the functionality before GA. It's always helpful to have examples of real usage that we can test against, so if you are able to share a code snippet of where you are using this, that would be great!

So it's now 2024 and the NEST client is deprecated in nuget. Is there an ETA on this functionality?

I would like to know as well.  We just tried migrating away from NEST, which went smoothly until we encountered the lack of automap.

We really really need this. We have over 200 indices and this is in our core library.

Hi 👋 Just to clarify a few things:

AutoMapping functionality will come back.
The current plan is to release this as an independant package to allow for re-use in some of our other projects. This might introduce some technical difficulties which we don't have discussed in detail yet.
There still is no ETA. I'm the only person working on the .NET client right now and besides that I'm as well responsible for other high priority projects.
I'm happy to accept PRs to kick-start this project if anybody is keen starting to port over the auto mapping code from NEST to the v8 client.

Is there any eta when this might be completed? We really really need this

I know that this is probably the most awaited high level feature that I promised to port over from NEST, but I still don't have capacity to work on this right now.
Currently on the roadmap (ordered by priority from top to bot):

Improve documentation
I'm currently working on a tool that automatically generates C# code snippets from (Kibana) REST/JSON request inputs. This allows us to display corresponding C# code for each example code on our REST API documentation.
Improve usability
Planning and implementing a new descriptor/object design which solves multiple pain-points like e.g. the missing functionality to inspect the state of a descriptor or to convert between the descriptor/object representation.
Evaluating various other changes to improve the quality and usability of the generated code (like exposing most fields publically, reverting from init to set, etc.).
High level helpers
Like e.g. AutoMap.

My previous statements are still valid; especially:

I'm happy to accept PRs to kick-start this project if anybody is keen starting to port over the auto mapping code from NEST to the v8 client.


Fixed ManagePerson page bug

Ticket Link
Ticket
List of squashed commits

Edited names of variables
Edited tests
Editing endpoints
Fixed ManagePerson page bug

Test Checklist

[X] Unit Tests Passed:
[X] Jasmine Tests Passed:
[X] General Visual Inspection:

That 'member' variable in the managePersonResults javascript function is a bit funny-looking. Is that used?

That 'member' variable in the managePersonResults javascript test function is a bit funny-looking. Is that used?

managePersonResults requires something being sent in, so member is just an undefined variable for managePerson to look up and to test against the URL

The "username" change/reference reminds me of a conversation we had to standardize on "uid", "uhUuid", and "uhIdentifier" for values provided by the user that could be either one.

All functions in the Rest controller all use uid for both uid and uhUuid parameters. Maybe there should be a ticket to replace "uid" with "uhIdentifier" in the UI and API Rest controllers.

Please go ahead and create the ticket for epic 2.3 to ensure that uid is
not used where uhUuid is also in scope for the variable.
On Tue, Dec 13, 2022 at 6:55 PM Jordan Wong @.***>
wrote:

The "username" change/reference reminds me of a conversation we had to
standardize on "uid", "uhUuid", and "uhIdentifier" for values provided by
the user that could be either one.
All functions in the Rest controller use uid for both uid and uhUuid
parameters. Maybe there should be a ticket to replace "uid" with
"uhIdentifier" in the UI and API Rest controllers.
—
Reply to this email directly, view it on GitHub
https://github.com/uhawaii-system-its-ti-iam/uh-groupings-ui/pull/687#issuecomment-1350395843,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACX2CMG5TI74R7JJXTPPDQ3WNFHLXANCNFSM6AAAAAAS5WU6LY
.
You are receiving this because your review was requested.Message ID:
@.***
com>


[$1000] 2 phone results appear in invite member search

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

Open the app
Open settings
Open workspaces
Open any workspace
Open manage members
Click on invite
Search for phone number to which you have already communicated before (pick any phone number currently available in invite members list without any search)
Observe that on search of that phone number, 2 separate results are displayed
If second result is selected first then app allows to select both the results and if first result is selected then app removes other search result (even on inviting both results, only one will be added as both are same)

Expected Result:
App should not display 2 different search result for same phone number and both the options should not be selectable
Actual Result:
App displays 2 separate results for same phone number and also allows to select and invite both the results if second result if selected first
Workaround:
unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[x] Android / native
[x] Android / Chrome
[x] iOS / native
[x] iOS / Safari
[x] MacOS / Chrome / Safari
[x] MacOS / Desktop

Version Number:  v1.2.99-4
Reproducible in staging?: y
Reproducible in production?: y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://user-images.githubusercontent.com/43996225/231634148-a4e8b4f7-a0b1-4ff6-8008-8c5cb8ce9add.mp4

Expensify/Expensify Issue URL:
Issue reported by: @dhanashree-sawant
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1681313720969739
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~013901b6b55d04933d
Upwork Job ID:<PHONE_NUMBER>998703616
Last Price Increase: 2023-04-17

Triggered auto assignment to @isabelastisser (Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details.

Bug0 Triage Checklist (Main S/O)

[ ] This "bug" occurs on a supported platform (ensure Platforms in OP are ✅)
[ ] This bug is not a duplicate report (check E/App issues and #expensify-bugs)

If it is, comment with a link to the original report, close the issue and add any novel details to the original issue instead

[ ] This bug is reproducible using the reproduction steps in the OP. S/O

If the reproduction steps are clear and you're unable to reproduce the bug, check with the reporter and QA first, then close the issue.
If the reproduction steps aren't clear and you determine the correct steps, please update the OP.

[ ] This issue is filled out as thoroughly and clearly as possible

Pay special attention to the title, results, platforms where the bug occurs, and if the bug happens on staging/production.

[ ] I have reviewed and subscribed to the linked Slack conversation to ensure Slack/Github stay in sync

I will prioritize this today.

Reviewing this now.

Job added to Upwork: https://www.upwork.com/jobs/~013901b6b55d04933d

Current assignee @isabelastisser is eligible for the External assigner, not assigning anyone new.

Triggered auto assignment to Contributor-plus team member for initial proposal review - @Santhosh-Sellavel (External)

Triggered auto assignment to @marcaaron (External), see https://stackoverflow.com/c/expensify/questions/7972 for more details.

Hey @marcaaron @Santhosh-Sellavel, before we accept proposals, can you confirm this is not the same issue as https://github.com/Expensify/App/issues/17108? It looks similar to me!

Yes dupe, it seems!

Thanks @Santhosh-Sellavel ! Closing!


What happened to REMOTE_ADDR ?

Hello,
Making the remote address available to the handlers was discussed here #453 and a few PR tried to add it #1721 #1720, but all 3 are closed.
Is there any plan to add it, was it simply forgotten or is it never going to happen ?
Best regards

#453 is still open, as is #1722 and #1947. #1721 and #1720 are closed by the author due to git issues.

Oops sorry I read closed at the end thought #453 was closed, and I didn't find #1722 so sorry.


Celery worker fixes

Use a celery queue name so tasks would not collide if running multiple celery workers on the same redis instance
Initialize worker state (i.e. redis connection) inside task, and not globally, since this causes problems.

What problem(s) is this code trying to solve, and how does it solve them?

updated in description


fix() minor refactor to Scrollable logic

Minor code changes in order to trigger a release from the previous PR which did not triggered ones

I think you must have a colon in your commit message, something like:
fix(): your commit message goes here

:tada: This PR is included in version 1.5.8 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

@ykadosh - The automatic release jumped from 1.5.6 to 1.5.8, skipping 1.5.7.
I don't know why that happened


chat sheet print outs

is there a way i can export a spreadsheet or get a pdf cheat sheet with the rankings in color coated tiers? thanks

This is where he gets his data and tiering:
http://www.borischen.co/

yeah, i get the data directly from Boris. I believe you can download a CSV from his website.


IGNITE-11636 Web console: incorrect value is restored after Refresh.

The ticket is resolved, closing PR.
Please close PRs for your resolved tickets and other non-needed PRs.
Alternatively, ask a committer

to use GitHub UI (committer can associate accounts here: https://gitbox.apache.org/setup/ )
or /scripts/apply_pull_request.sh from Apache Ignite source.
or mention in commit message 'Fixes #(a number of PR)'.

These methods will automatically close PR.
Feel free to reopen this PR if it is actual.


Mouse-over element highlighting freezes

Normal behavior: When the main window is called up, moving the mouse cursor over the different shortcuts listed will cause each item to be highlighted while the cursor is hovering over it.
Wonky behavior: If, when the main window is called up, the cursor is already at a point on the screen such that the KeyClu window opening causes one of the shortcut list items to appear under the cursor arrow, then that item will be stuck permanently highlighted, even if the mouse cursor is moved away from that item or onto other items. This resets when the main window is dismissed.

Hey revcor, thanks for reporting the issue. Could you please let me know which macOS version you're currently running?
I've come across another issue, the grid should always begin at the top. This is something I haven't encountered on Big Sur, Ventura, or Sonoma before.

Woops that's probably important haha. Intel mac running Monterey 12.7 (Mid 2015 MBP dual GPU Retina 15-inch in case it matters).
I had also noticed the empty space above some of the columns. In the app preferences I fiddled with the different values for "Columns" and toggling "Show inactive elements" and nothing had any effect on the empty spaces.

Hey revcor, I've made some fixes for macOS 12, could you please provide a bit of assistance in verifying whether these fixes have made a difference.

Absolutely, anything I can do to help. I can't get to it right at this moment but in a few hours I'll be free

https://github.com/Anze/KeyCluCask/assets/94559820/073e1f6c-a240-412c-91d4-f411165a40fa
v0.14 initial testing
I did all the actions in the video quickly to keep video file size down, so you may want to pause it at various points to see the relevant parts
Observations:

The columns are all flush with the top of the window now
In some cases, not all columns are populated, leaving some stacked from the left, then empty space, and remainder on the far right (only seen with Finder selected as the active app)
Single item highlighting issue persists: If window called up on top of the pointer location, and a shortcut list item occupies the same space as pointer, that item will be permanently highlighted even after moving pointer away.  If window called up does not overlap pointer, then moving pointer over list items does not cause any items to be highlighted

Apologies for delay in getting this to you

Thanks for the report.
It's great to hear that it's already making a difference, especially in terms of the visual aspect. Still, there are some issues that can't be resolved immediately, as they require a more in-depth investigation. One of these issues is the substantial memory leak in macOS 11 & 12, which is not present in macOS 13 & 14. I'm working on performance improvements to mitigate these memory leaks, although they haven't been completely eliminated yet.
As for the empty columns, I've made improvements of the distribution and fill columns more evenly. While it's not a universal solution for all cases, it should still provide a better overall experience.

Definitely an improvement! Any way I can be of assistance, please let me know. Under what conditions does this memory leak happen?

One of the case happens when elastic scrolling reaches the top or bottom.

Hey revcor,
I've just released a new version. It would be greatly appreciated if you could check to see if there are any differences.

Grabbing it now

Hey revcor,
I've just released a new version with significant performance enhancements. Would love to hear your thoughts on it.


Using vim when logging through Putty to a remote server doesnt display arrows correctly in nerdtree

Environment: Describe your Vim/NERDTree setup.

Operating System: …
Ubuntu
Vim version :version: …
VIM 7.4
Process: List the steps that will recreate the issue.

…I have solved the problem, after working through

https://serverfault.com/questions/475925/how-to-fix-putty-showing-garbled-characters
and
https://github.com/scrooloose/nerdtree/issues/522
However, since there are a lot of people using Putty, and using nerdtree, is it possible to potentially somehow check if they are using putty, and give a warning about a incorrect font or switch to a better font?
The option would be to provide this as a faq.

Is there anything in the remote system's environment to indicate that it is being launched in a Windows Putty application? An environment variable, perhaps? If yes, then you could put an if block in your vimrc to set the arrows to something else. That's the only way I can imagine being able to do this. I have no way to test this on my setups.

Based on this stackexchange post, you need to use this code in the vimrc of the remote system:
if exists('$SSH_CLIENT') || exists('$SSH_TTY')
    let g:NERDTreeDirArrowExpandable = '+'
    let g:NERDTreeDirArrowCollapsible = '~'
endif

I'm closing this issue. If this code doesn't solve your issue, reopen it.


MLIBZ-1611: Push not received

Description
This PR keeps a shared instance of the PushNotificationPlugin.
Changes

Do not set shared instance of PushNotificationPlugin to null when unregistering the device.
Use cache storage to store device information.
Throw error if an active user does not exist and a user id was not provided.
Update push notification unit tests.

Codecov Report

Merging #9 into master will increase coverage by 1.15%.

@@            Coverage Diff             @@
##           master       #9      +/-   ##
==========================================
+ Coverage   67.34%   68.49%   +1.15%
==========================================
  Files           4        4
  Lines         297      346      +49
  Branches       56       63       +7
==========================================
+ Hits          200      237      +37
- Misses         97      109      +12

Impacted Files
Coverage Δ

src/push.js
86.4% <89.15%> (-3.41%)
:x:

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 5b43f85...8733c3e. Read the comment docs.


feat: allow increase size of map in cat view

Description
This draft PR allows users to increase the size of the map in cat view.

Allows users to toggle into full-screen
Allows users to resize map by dragging either the lower right portion of the map, or the lower part of the map.
Resolves https://github.com/NordicSemiconductor/asset-tracker-cloud-app-js/issues/317

Issues

When resizing using the lower portion of the map, the map does not resize one the map container changes. I can't seem to find a map container resize event in order to re-render the map once the container size changes.

For mobile view, on first full-screen toggle the map does not render all of the tiles only a portion but on succeeding toggles the map renders completely.

When resizing using the lower portion of the map, the map does not resize one the map container changes. I can't seem to find a map container resize event in order to re-render the map once the container size changes.

You could move the logic for resizing the container outside of the map component and reload the map component on resize.

When resizing using the lower portion of the map, the map does not resize one the map container changes. I can't seem to find a map container resize event in order to re-render the map once the container size changes.

You could move the logic for resizing the container outside of the map component and reload the map component on resize.

The logic I went with was to treat the map container as the resizable component, and I added a draggable element below it and just refer the height changes based on that draggable element.
Is there a way for me to get the id of the leaflet map itself and not the container?
On the other hand, adding CSS resize property to the map container works fine. I've also tried using the resize event and included that in the EventHandler but this event only fires when I toggle full-screen which makes sense since the component I'm resizing using the draggable element is the container and not the map itself.

Thank you for the feedback @coderbyheart. I have few questions that need clarification.

However, it does not work in Firefox and on Mobile.

I'm having trouble connecting to localhost on my phone, might be a firewall issue. I was only able to try it out on mobile view on the browser.

I could also imagine adding a menu icon left of the cog wheel could work well as the handler for dragging.

You mean, instead of the current resize cursor, we'll use the menu icon?

Note that the drag handler can be dragged to the left and right of the card, that should not happen.

That's strange, I'm guessing this happened in firefox. The resize logic should only change y-coordinates.

You mean, instead of the current resize cursor, we'll use the menu icon?

No, like this:

You mean, instead of the current resize cursor, we'll use the menu icon?

No, like this:

Oh okay, and that portion is the only draggable part of the container.

Yes.

Hi @coderbyheart, I tested this on the ff:

Chrome
Edge
Firefox
Mobile (Iphone XR, Pixel 5)

It seems to work as expected.
I'm having trouble running the e2e tests, the region seems to be missing.

Closed because of inactivity.


GEODE-5627: ConcurrencyRule passes when not used.

Before this, if ConcurrencyRule was used for a test it failed because
allthreadsExecuted was false.
Also delegate to the non-default constructor with the default
constructor.
@balesh2

This is ready to merge, the IntegrationTest failure is a known flaky test


aardvark-dns, netavark: init

Motivation for this change
Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[ ] Fits CONTRIBUTING.md.

Seems we need to hack around build.rs scripts / vergen crate to set the version, etc otherwise the build fails.
Looks like youki https://github.com/NixOS/nixpkgs/pull/156799 has the same issue.

Just adding the packages in this PR, seems like they can be wrapped so I'll do that in a follow up.

Just adding the packages in this PR, seems like they can be wrapped so I'll do that in a follow up.


RELS-INT error

Here's the error:
Unable to link resouces: The datastream "xml" referenced in the RDF datastream "RELS-INT" on test:1000010143 did not exist at 2012-06-01T20:24:21.831Z!
Looking at the object, it looks like the datastreams were created at the following times:
RELS-INT: 2012-06-01T20:24:21.831Z
xml:            2012-06-01T20:24:21.832Z

So the message is technically correct, but we should be more lenient.
I'll get a fix in to create a placeholder for the datastream and log a warning in such a case but proceed anyway.

This is being tracked here:
https://jira.duraspace.org/browse/FCREPO-1585


HTTP 504 from NuGet servers when performing restore

Over the past two days (2/2/15 & 2/3/15) we've noticed that many operations against the NuGet Azure servers are failing.
e.g. the following request nearly always results in a 504 - Gateway Timeout:
GET https://az320820.vo.msecnd.net/packages/autofac.extras.dynamicproxy<IP_ADDRESS>.nupkg HTTP/1.0
NuGet-Operation: Restore
User-Agent: NuGet Command Line/2.8.50126.400 (Microsoft Windows NT 6.2.9200.0)

Thanks for posting - we will analyze the failures to see if we can determine the cause.  We will look at client improvements to these types of failures where we can

On a side note: we switched to a different CDN provider near the end of february. @cmoore-cimpress, are you still seeing this?

Thanks for reporting this. We are not seeing this currently.

I noticed a similar issue when trying to restore older versions of packages. For example, go to  https://www.nuget.org/packages/RazorEngine/3.2.0 and click "Download", which takes you to https://api.nuget.org/packages/razorengine.3.2.0.nupkg . That URL is currently giving us an HTTP 504 error. Same with https://api.nuget.org/packages/autofac.wcf.<IP_ADDRESS>2.nupkg .
Downloading the latest versions of the packages works fine.


Allow role to run with INJECT_FACTS_AS_VARS set to false

Currently, the role failed to run with INJECT_FACTS_AS_VARS set to false as the required ansible_* variables (e.g. ansible_os_family) are not defined.
The configuration INJECT_FACTS_AS_VARS and the Ansible fact namespace ansible_facts.* has been added in Ansible 2.5. In the porting guide of that version it stated that:

A new configuration variable, inject_facts_as_vars, has been added to ansible.cfg. Its default setting, ‘True’, keeps the 2.4 behavior of facts variables being set in the old ansible_* locations (while also writing them to the new namespace). This variable is expected to be set to ‘False’ in a future release. When inject_facts_as_vars is set to False, you must refer to ansible_facts through the new ansible_facts.* namespace.

It was also confirmed by Ansible developer on reddit that INJECT_FACTS_AS_VARS was planned to be deprecated in the future.
Therefore, it would be great if the role supported INJECT_FACTS_AS_VARS=false as well.
To fix this just change all ansible_* variables to ansible_facts.*. This should work for ansible versions >=2.5. I can do a PR when I have time.

Interesting, I was not aware of that.
Thanks for bringing this up. I will be happy to merge your pull request. If I find the time to fix it myself before you create a pull-request, I will do so and post a comment in this issue.


Project manager

Github is saying that project-manager can't automatically be merged into develop-2020-aug. Can you take a look, Andy, and see what's up?

It looks like the Care Network versions were different in the two branches, which is odd, since I branched the project-manager branch directly from the develop-2020 one.
I noticed after the change that I did, that it's missing the ending parenthesis. When I reviewed it, it also merged develop into project-manager. I didn't know it would do that, but I added the fourth commit to correct the parenthesis and it should be fine now.

Hi Andy - thanks for doing the review and finding that missing paren. :-) Not sure what happened with the Care Network code, either. I don’t think anyone else was messing with it. I’m out today but will pull this into the instance this evening. I expect everything will be working then.
BTW, we had a great session on Tuesday training people on your new project management tool. They are very excited with all the new capabilities! What a great gift you have given Catalyst!
Thank you,
==> Dan

On Jul 7, 2021, at 10:39 PM, Andy Situ @.***> wrote:
It looks like the Care Network versions were different in the two branches, which is odd, since I branched the project-manager branch directly from the develop-2020 one.
I noticed after the change that I did, that it's missing the ending parenthesis. When I reviewed it, it also merged develop into project-manager. I didn't know it would do that, but I added the fourth commit to correct the parenthesis and it should be fine now.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/dandahle/Catalyst-AppVetting/pull/292#issuecomment-876143532, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABQDU4OE7R6U5XF4RT6OVKLTWU2Y7ANCNFSM473F57RQ.


Fixed issue with custom validators not respecting localizer

The checkboxes page in the Umbraco app looks like this:
Radios is similar.

Resolved - duplicates were being added through the Umbraco app but not the standalone app.


[BUG] Rewriting querybuilders that require async actions fail

Describe the bug
Currently, it is possible in OpenSearch to register an asynchronous request in order to rewrite a querybuilder (see QueryRewriteContext.registerAsyncAction). Internally, this makes its way to the static method Rewriteable.rewriteAndFetch where the pending asynchronous actions are executed and querybuilders are rewritten.
This functionality is used for query types like AbstractGeometryQueryBuilder, and a new query type I am helping to build (NeuralQueryBuilder).
The problem is that in SearchSourceBuilder, RescoreBuilders call Rewritable.rewrite instead of Rewritable.rewriteAndFetch. Internally, this will continue to rewrite the queries inside the rescore context, but will never call the async actions. So, if the query should be rewritten until the async actions completes (in my case this is required), it will eventually throw a 500 saying there have been too many rewrite rounds:
curl -XPOST "localhost:9200/test-index/_search?pretty" -H 'Content-Type: application/json' -d'
{
  "query": {
    "match_all": {}
  },
  "rescore": {
    "window_size": 50,
    "query": {
      "rescore_query": {
        "script_score": {
          "query": {
            "neural": {
              "cool_field": {
                "query_text": "biggest land animal",
                "model_id": "Yr725oMBizWWjtGmFzhE",
                "k": 1000
              }
            }
          },
          "script": {
            "source": " 10.0 + 1"
          }
        }
      }
    }
  },
  "_source": []
}
'

{
  "error" : {
    "root_cause" : [
      {
        "type" : "illegal_state_exception",
        "reason" : "too many rewrite rounds, rewriteable might return new objects even if they are not rewritten"
      }
    ],
    "type" : "illegal_state_exception",
    "reason" : "too many rewrite rounds, rewriteable might return new objects even if they are not rewritten"
  },
  "status" : 500
}

Expected behavior
QueryBuilders can be rewritten with async actions when present in rescorers.
It seems there should be another method, rewriteAndFetch, that operates on lists, similar to Rewriteable.rewrite.
Plugins
No plugins required, but I ran into error when:

opensearch-knn
opensearch-ml
opensearch-neuralsearch

Actually, I believe I made a mistake in my querybuilder class. When the object does not change, I still return a copy, which will result in an error.
Instead, I should follow the geo builder and do:
        if (vectorSupplier()) {
            return vectorSupplier.get() != null ? new KNNQueryBuilder(fieldName(), vectorSupplier.get(), k()) : this;
        }

        if (vectorSupplier() == null) {
            SetOnce<float[]> vectorSetOnce = new SetOnce<>();
            queryRewriteContext.registerAsyncAction(
                ((client, actionListener) -> ML_CLIENT.inferenceSentence(modelId(), queryText(), ActionListener.wrap(floatList -> {
                    vectorSetOnce.set(vectorAsListToArray(floatList));
                    actionListener.onResponse(null);
                }, actionListener::onFailure)))
            );
            vectorSupplier(vectorSetOnce::get);

            return new NeuralQueryBuilder(fieldName(), queryText(), modelId(), k(), vectorSupplier());
        }

        return this;

This is probably still an issue on a list of rewritables.  I am pretty sure I ran across the same issue with rewritable sort builders.


Part 1 Step 14 should indicate that only data from OBD Modules needs to be stored

I don’t expect anyone to object to adding OBD in front of ECU.
The user bears the responsibility for use of the test where test expectations are not met.
This is related to the OBD compliance = 00h problem too.
I can also say we can add fail if data provided by non OBD ecu in the plurality of cases, but shan’t: it hasn’t been needed.
This would not be good way to inform me of design decisions after the fact.

I am confused.  Currently, the spec says:
<IP_ADDRESS> Actions
a. Global DM26 [(send Request (PGNPG 59904) for PGNPG 64952 (SPNSPs 3301-3305)]).
i. Create list by ECU address of all data and current status for use later in the test.
b. Display monitor readiness composite value in log for OBD ECU replies only.
Are we going to update the document to say "save only the OBD ECUs"?  Later in the testing, we only use the OBD module info so, for clarity, it might help to call that out here.

By definition in SAE J1939-73, any DM26 data received is OBD data.
It should come only from an OBD ECU, but that isn’t in the failure criteria.
There is the general requirement to provide a warning for any response that was not received from an OBD module.
Creating a list of the received responses will suffice. Time since ... is usually checked for accuracy to the second from the baselines like this one.
<IP_ADDRESS> Fail criteria:
a. Fail if any response for any monitor supported in DM5 by a given ECU is reported as '0=monitor  complete this cycle or not supported' in SPN 3303 bits 1-4 and SPN 3305 [except comprehensive components  monitor (CCM)].
b. Fail if any response for each monitor not supported in DM5 by a  given  ECU  is  not  also  reported  in  DM26  as '0=monitor complete  this  cycle or  not supported'  in  SPN 3303 bits  5 or not  supported'  in  SPN  3303  bits  1
c. Fail  if  any response  from 2  and  SPN 3304.[20] an  ECU  indicating  support  for  CCM  monitor  in  DM5  reports  '0=monitor  disabled  for  rest  of this  cycle or  not  supported'  in  SPN  3303  bit  3.
d. Fail  if  any  response indicates  number  of  warm
e. Fail  if  any  response indicates  time since engine start (SPN  3301)  is  not  zero.
f. Fail  if  no  OBD ECU provides  DM26

No changes to the text are believed to be required in this case, unless only data from OBD modules was saved.

The current design on preserves responses from OBD modules, though it will display any responses it receives from non-OBD modules.

In that case let’s add OBD in front of ECU
<IP_ADDRESS> Actions
a. Global DM26 [(send Request (PG 59904) for PG 64952 (SPs 3301-3305)]).
i. Create list by OBD ECU address of all data and current status for use later in the test.
b. Display monitor readiness composite value in log for OBD ECU replies only.

Changes from SPN to SP and PGN to PG in the recent text are intended to strictly editorial, to meet new terminology conventions for the ballot. No technical are intended.

OBD inserted in front of ECU for <IP_ADDRESS>.a.i
i.	Create list by OBD ECU address of all data and current status for use later in the test.


optimize generic invoke

What is the purpose of the change
use generic type "raw.return" to reduce an unnecessary result convert, use for hessian serialization only

Codecov Report

Merging #4048 into master will increase coverage by 0.02%.
The diff coverage is 28.57%.

@@             Coverage Diff              @@
##             master    #4048      +/-   ##
============================================
+ Coverage     63.12%   63.15%   +0.02%
  Complexity      565      565
============================================
  Files           753      753
  Lines         32417    32422       +5
  Branches       5145     5148       +3
============================================
+ Hits          20464    20475      +11
+ Misses         9598     9588      -10
- Partials       2355     2359       +4

Impacted Files
Coverage Δ
Complexity Δ

...ava/org/apache/dubbo/rpc/filter/GenericFilter.java
48.14% <25%> (-1.86%)
0 <0> (ø)

...va/org/apache/dubbo/rpc/support/ProtocolUtils.java
70.37% <33.33%> (-1.63%)
0 <0> (ø)

...bo/rpc/cluster/support/FailbackClusterInvoker.java
67.21% <0%> (-3.28%)
0% <0%> (ø)

.../exchange/support/header/HeaderExchangeServer.java
66.98% <0%> (-0.95%)
0% <0%> (ø)

...g/apache/dubbo/registry/consul/ConsulRegistry.java
59.6% <0%> (-0.67%)
27% <0%> (ø)

...apache/dubbo/common/config/ConfigurationUtils.java
72% <0%> (+8%)
0% <0%> (ø)
:arrow_down:

...ache/dubbo/remoting/p2p/support/AbstractGroup.java
56.81% <0%> (+11.36%)
0% <0%> (ø)
:arrow_down:

.../apache/dubbo/qos/protocol/QosProtocolWrapper.java
82.05% <0%> (+17.94%)
0% <0%> (ø)
:arrow_down:

Continue to review full report at Codecov.

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


Use different modules DBs when testing

Expected Behavior
Use new modules DBs while testing.
Actual Behavior
While testing, modules DBs are the ones used for distribution.
Proposal
Split modules DBs from the common ones while testing to avoid any conflict.

Done in https://github.com/leon-ai/leon/commit/81ec213ff2566b61e21917718e4c0e9c6a7c5271.
process.env.LEON_NODE_ENV was not taking in consideration while running e2e tests because Python modules was trying to get this environment variable, whereas these modules run under a different process. So the trick here would be to load all env variables in the TMP file that allow inter-process communication. But finally I ended up passing the variable env before running the npm script and flush the test DBs files via a specific Node.js script once Jest finish his full execution.


Added support for a default error widget in case of any exception.

Implemented the feature that receive a default widget and added a function that detect the exception that may occur build the image and show the default widget instead .

This is really close. I'm going to make a couple more changes myself. Thanks!


Discord link?

Hi! The video and this template mention Discord for discussions but I cannot find any links in the repo or the docs site. Perhaps it's there but it is not easy to find.

https://openziti.discourse.group/new-topic?category=Support/General Questions


In Duel Mode, award the faster user more points than the slower one in the backend (if the answer was correct)

Issue was resolved within commit 75da7833d00cfa74bdd42508f161b2512119cf9c

Issue was resolved within commit 75da7833d00cfa74bdd42508f161b2512119cf9c

Gets tested by intermediatePoints_timeDifference_fasterGetsMorePoints in GameControllerServiceTest.java, added with commit af08n87


[Retrospective] Release version 1.3.2

How to use this issue?
Please add comments to this issue, they can be small or large in scope. Honest feedback is important to improve our processes, suggestions are also welcomed but not required.
What will happen to this issue post release?
There will be a discussion(s) about how the release went and how the next release can be improved. Then this ticket will be updated with the notes of that discussion along side action items.

Initially there were component issues for this release, then those were not used

The release issue was not getting much attention from individuals / teams, there were many preparation checklist items unchecked well into the 'coding' phase of the release.

I don't feel confident yet on the state of our automation.  It seems like need two things before I'm (more) confident:  1) weekly inspection of code %/mechanism in place to block merges for commits that reduce coverage.  2) A review/some other confidence builder on the goodness of those tests.  It's not enough to exist, they have to be comprehensive.  3) A review/some other confidence build on the existence/goodness of integration tests.

Our performance tests missed an issue with performance https://github.com/opensearch-project/opensearch-build/issues/2054  Either we're not testing what we think we are (https://github.com/opensearch-project/OpenSearch/issues/2985), or we are testing things but not inspecting/alerting on results

Closing the 1.3.2 retro issue after 10 days of releasing the distribution. Feel free to re-open if needed.