[Fabric] - Server Crash

Describe the bug
Server crashes when using the mod.
It only started happening after I switched to 1.4.1 (switching back to 1.4.0 doesn't fix it [switching to 1.3.17 fixes it]).
Logs
https://pastebin.com/cj5a8pqt

alright i actually fixed it this time


[libiconv] Make built libraries relocatable

This is required to build libintl (gettext) with iconv support (see #8484).
Also updated to the latest version 1.16.

@JackBoosY i fixed your remarks, will squash commits later whet the pr is approved

@JackBoosY done, please check


Added values to each governance template and improved the README template

Adding the values relates to this issue: https://github.com/cncf/tag-contributor-strategy/issues/80
The README improvements were designed to incorporate some of the guidance we've added around Charter: Mission, Scope, Values, and Principles along with a few other things that CNCF projects should have in their README files.
Before we ping our TOC reps for review, I'd love to get feedback from the contrib strat team!

/lgtm, ready for TOC approval

@dims This is the PR with the new templates that we talked about in the Contrib Strategy TAG meeting last week. Let me know if you have questions about any of these!

@dims I just pushed a new commit with all of these changes. Let me know if you see any other issues or have any other feedback!

/approve
Looks good @geekygirldawn!

Requested a review via email from our TOC Liaisons: @saad-ali and @alena1108


A new problem occurred while I was running the Alphafold

When I entered the amino acid sequence, the program reported an error：
AttributeError                            Traceback (most recent call last)
 in
23
24 # Validate the input.
---> 25 sequences, model_type_to_use = notebook_utils.validate_input(
26     input_sequences=input_sequences,
27     min_length=MIN_SINGLE_SEQUENCE_LENGTH,
AttributeError: module 'alphafold.notebooks.notebook_utils' has no attribute 'validate_input'
I don't know what's going on, I hope everyone can help me.

I think this was caused by the changes in v2.3.0 which happened recently - your Colab notebook likely got out of sync with the code. Could you try running in a fresh notebook?
https://colab.research.google.com/github/deepmind/alphafold/blob/main/notebooks/AlphaFold.ipynb


(#102) Add support for STACKREF

Description
This PR adds support for STACKREF and STACKINT by introducing Reference Stacks which hold references to other KV pairs.
Issue
#102
How was the patch tested?
Added unit tests + existing tests

I guess splitting the patch into two will make it a little easier to review.

Also squash "Renaming/comment" commits to a single commit "implemented".


Cannot save invoice: "Item must be less than 10 KB"

When I try to save my invoice with several items (8 items to be precise), it says "Item must be less than 10 KB". I assume the 10 KB limit is the total size of all items (payload) that's being stored.
If that so, is it a UI-imposed limit or a limitation from Userbase itself?

Cheers!

Good catch :)
That's imposed by Userbase, with some relevant notes:

The underlying items stored in Prinvoice are unnecessarily large because they have a ton of unnecessary whitespace. If you open up the dev console while you're creating an invoice, you'll see clean SQL statements with all that extra unnecessary whitespace. That whitespace could easily be trimmed, and items (and invoices) could therefore be much larger.

I could change userbase-sql.js a bit to store larger SQL statements as files, and that would work ok. I'm actually using this pattern in a new piece of software I'm working on that's using Userbase, I'll link to it here to show you how it can be done :)

Good catch :)
That's imposed by Userbase, with some relevant notes:

The underlying items stored in Prinvoice are unnecessarily large because they have a ton of unnecessary whitespace. If you open up the dev console while you're creating an invoice, you'll see clean SQL statements with all that extra unnecessary whitespace. That whitespace could easily be trimmed, and items (and invoices) could therefore be much larger.

I could change userbase-sql.js a bit to store larger SQL statements as files, and that would work ok. I'm actually using this pattern in a new piece of software I'm working on that's using Userbase, I'll link to it here to show you how it can be done :)

I see. Thanks for the explanation! Looking forward for the link so I can try it in my machine.

I see. Thanks for the explanation! Looking forward for the link so I can try it in my machine.

Check this out:

if an item exceeds the limit, I upload it as a file
then when loading a database, I check if the item is stored as a file, then retrieve the file


log/slog: Faulty test fails on spaces in file path

What version of Go are you using (go version)?
Compiler go version go1.20.5 windows/amd64
Attempted to Build go version devel go1.21-5b72f45dd1 Fri Jun 30 22:02:00 2023 +0000 windows/amd64
Does this issue reproduce with the latest release?
slog is in next release
What operating system and processor architecture are you using (go env)?
go env Output
$ set GO111MODULE=
set GOARCH=amd64
set GOBIN=
set GOCACHE=C:\Users\Merrick Clay\AppData\Local\go-build
set GOENV=C:\Users\Merrick Clay\AppData\Roaming\go\env
set GOEXE=.exe
set GOEXPERIMENT=
set GOFLAGS=
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOINSECURE=
set GOMODCACHE=C:\Users\Merrick Clay\goprojects\pkg\mod
set GONOPROXY=
set GONOSUMDB=
set GOOS=windows
set GOPATH=C:\Users\Merrick Clay\goprojects
set GOPRIVATE=
set GOPROXY=https://proxy.golang.org/,direct
set GOROOT=C:\Program Files\Go
set GOSUMDB=[sum.golang.org](http://sum.golang.org/)
set GOTMPDIR=
set GOTOOLDIR=C:\Program Files\Go\pkg\tool\windows_amd64
set GOVCS=
set GOVERSION=go1.20.5
set GCCGO=gccgo
set GOAMD64=v1
set AR=ar
set CC=gcc
set CXX=g++
set CGO_ENABLED=1
set GOMOD=C:\Users\Merrick Clay\goprojects\src\goroot\src\go.mod
set GOWORK=
set CGO_CFLAGS=-O2 -g
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-O2 -g
set CGO_FFLAGS=-O2 -g
set CGO_LDFLAGS=-O2 -g
set PKG_CONFIG=pkg-config
set GOGCCFLAGS=-m64 -mthreads -Wl,--no-gc-sections -fmessage-length=0 -fdebug-prefix-map=C:\Users\MERRIC~1\AppData\Local\Temp\go-build60902014=/tmp/go-build -gno-record-gcc-switches

What did you do?

Downloaded source code
cd src
all.bat
Error occurred in testing

What did you expect to see?
I expected all tests to pass
What did you see instead?

TestConnections failed
--- FAIL: TestConnections (0.00s)
    logger_test.go:109:
        got  time=2023-07-02T18:04:14.412-06:00 level=INFO source="C:/Users/Merrick Clay/goprojects/src/goroot/src/log/slog/logger_test.go:108" msg=msg2
        want ^time=\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d{3}(Z|[+-]\d{2}:\d{2}) level=INFO source=.*logger_test.go:\d{3} msg=msg2$
FAIL
FAIL    log/slog        1.187s

It appears the 'expected' regex does not anticipate the quotes that are added to the source when the path has a space in it (as it does in the Merrick Clay directory). Either the regex should be updated to add an optional quote after logger_test.go:\d{3 or slog should be updated to always or never surround the source in quotes (and the regex should be updated).
Updating the regex in the test by adding "? after logger_test.go:\d{3 allowed me to build and pass all tests. I'd love to put resolve this issue with a PR as my first contribution to the project once a path forward is agreed upon :)

(attn @jba)
Marking as release-blocker for Go 1.21 because this is a new test failure in 1.21 and windows/amd64 is a first-class port.

@merrickclay, please feel free to send a fix per https://go.dev/doc/contribute.
(I would recommend sending directly through Gerrit instead of using a GitHub PR — the GitHub import flow is kind of rough and you're going to end up in Gerrit anyway.)

@merrickclay, let me know if you want to fix. If not, I'm happy to do it.

@jba  I'm walking through https://go.dev/doc/contribute to submit a fix :)


[Discussion] Metadata - How, Which & Where

This is issue is to discuss the specifics of how and which metadata to save.
On previous issue #949 @ncw  mentioned the use of BoltDB and from what I could find looking at embedded databases bolt seems like the best option. Since we are looking for a pure go implementation there are not many other options goleveldb, tiedot will probably work but leveldb feels like it will require more bootstrapping and tiedot doesn't seem as mature (both has seem to be a lot less popular than bolt).
So I think bolt should be the better choice but I never worked with any of the above some I'm open to suggestions.
As with which data to save -
hash
Modification time
file name (absolute path)
I think this is the bare minimum we need to save for anything useful. I'll think of a proper schema and upload it here once I have it a bit more finalized but i think of some relation between remotes might be useful.
I haven't done the schema yet but having the hash as one of the keys will probably be very useful. this means that we need to make sure it is unique and though SHA1 might be good enough I would much rather go with SHA256 but that might be a bit expensive to store and calculate especially for large files ( hashes being calculated for verifying the remote file would still be saved for cache and for verifying the remote file hasn't changed )
If SHA256 is much less common than SHA1 with the remotes it might be worth using it and taking the almost non existent risk of collision
When storing file path we still need to take into consideration that files might move on local filesystem/remote  #1331
We need to see how we handle dedupe files since they obviously going to have the same hash but might change independently in future runs
Versioning for db/records it might be useful to version the meta data so if we have any future schema changes migration wont be an issue
We need to see where to store the database file itself. rclone config path is probably the best place but we might want to offer a cmd flag to change the default
There are probably some more considerations I'm forgetting.

Did you check how/what https://github.com/astrada/google-drive-ocamlfuse is storing, since report is that its working the best.

Btw it would not be bad idea to keep metadata database directly on cloud so it could be read from multiple servers without making API calls. The only thing to consider is database locks when multiple mounts write at same time.
Each file list is one API call, while download is not.

@ajkis  Thanks for the tips.
I looked into google-drive-ocamlfuse and they save a lot of meta data. I don't thin we need so much info but we'll see how it goes if the db footprint is not very big it might be worth the add some more stuff in the future.
One thing that might be useful is the remote file id since I assume this can save a request when verifying the file but that might be different with each remote.
I was initially against saving the meta data on the remotes as having a single db as the source of truth might make things simpler. There are some advantages for having the remote metadata saved on the remote but I'm not sure if the added complexity is worth it -
Adv -

easy to know when remote has changed from a different machine
no need to query remote for individual changes

Complexity -

We need to work on local version of the db even for a remote so downloading and updating it is necessary
We need to keep a list of deleted files where with a single local db we just delete the record as we remove it from the local/remote
We might actually need to verify the data on the remote (adv 2) to match the metdata since updates are not necessarily done by rclone or metadata might fail to update (if there is some connection error in the middle of rclone run and it exists)

I do think we can eventually implement a few modes where metadata can save api calls but I prefer to first implement a simple version and try not make it too complex. So for now rclone will still do the same verification as it did before, but it can rely on cached checksums and can use the metadata to know if file has been removed between runs

Yea I agree, best way at begining would be to make local version with minimum data in DB and then add more if there would be some major benefits.

So I was looking into the actual schema and I think the following should be enough -

This design should allow us to find files by remote/path or by hash.
In theory the mod time can be saved per file and not per remote, but since some remotes don't support time change it might cause issues.
The Hash is being saved multiple times. this is not a major issue with SHA1 but with SHA256 or anything that takes more space we might benefit from having the Hash as a separate index and making references using generated ids
I also added a schema for resume uploads -

But after looking at it it doesn't benefit much from being saved in a proper database. So I think for now it might be worth just saving this data separately as json format

Looks good, btw now with db support hash for crypt could be added as well.

Yea I'm thinking there might be some secondary data added to some remotes.
Since the schema doesn't have to be fixed or identical I think I'll try to have an API which will allow each remote to add custom metadata if it needs it.

This might help as well and probably change what fields/info is gathered. https://github.com/ncw/rclone/issues/1346

After looking a bit more closely at the source I think we'll probably want to save size as well since it is used to check if file has changed before calculating the hash.
@DTrace001 I think the issue you referenced relates more to limit the fields in the metadata rclone fetched from google and has minor impact on which metadata is saved locally

Please save all stats so nothing need to be queried
https://puu.sh/vn9fj/63ee41fd0b.png

I think it might be worth exploring what this DB would be used for exactly.
I'd like something which would help with

#949 - local caching of hashes
#897 - cache a remote hierarchy so it could them be kept up to date with the changes API

My original thinking was to cache serialized versions of the Object keyed on path.  This would mean adding some new methods to the Fs to serialize and unserialize them.  This is essentially "caching the remote file id" as you mention above, just in a more generic fashion.
Then when rclone does a list operation, it can query the db instead of the remote as required, unserializing objects as it goes along.
[ I also have a plan to remove the root of the Fs, and have this be handled by a higher layer.  This would help with this - the remote:path stuff will need care with the path. ]
The DB design above has quite a few more things in - what issues are they relevant to?

My original thinking was to cache serialized versions of the Object keyed on path. This would mean adding some new methods to the Fs to serialize and unserialize them. This is essentially "caching the remote file id" as you mention above, just in a more generic fashion.

I guess we can serialize the whole Object, I thought of limiting the data to the specific stuff we need will keep the db minimal and will make using it simple, but serializing the Object is probably easier.
It seems like that way we need each FS to handle serialization and I would prefer to have it a bit more generic where all the logic including serialization is handled in a single module, but that might be hard since some remote will need very specific meta data.
So If I understand you correctly we just need the a bucket per remote where Path -> Serialized object.
Having a file bucket with hash as keys can help us find dedupes and files that has been renamed or copied but I guess we can scrape it for now and create it once we have an actual use case

Could this also be used to handle the "save symlink" scenario?  eg if I have ln -s foo1 foo2 then it would be good to have foo2 meta-data indicate it's a symlink pointing to foo1.


add content-toggle block

Describe your specific features or fixes
Resolves: MWPW-143344
Test URLs:

Pre Migration Link: https://adobe.com/express/collaborations
Before: https://main--express-milo--adobecom.hlx.page/express/collaborations
After: https://MWPW-143344--express-milo--adobecom.hlx.page/express/collaborations

Additional Test URLs:

https://MWPW-143344--express-milo--adobecom.hlx.page/express/experiments/ccx0110/education-challenger

Codecov Report
Attention: Patch coverage is 8.73016% with 115 lines in your changes missing coverage. Please review.

Project coverage is 63.96%. Comparing base (51241ff) to head (dc1d308).
Report is 12 commits behind head on main.

Files with missing lines
Patch %
Lines

express/blocks/content-toggle/content-toggle.js
8.73%
115 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #68      +/-   ##
==========================================
- Coverage   64.94%   63.96%   -0.98%
==========================================
  Files          38       42       +4
  Lines        5611     6525     +914
==========================================
+ Hits         3644     4174     +530
- Misses       1967     2351     +384

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

@vhargrave - Is this what you're talking about?
https://github.com/user-attachments/assets/c2987208-5791-4e78-8bb4-b1ce59c2717b

https://MWPW-143344--express-milo--adobecom.hlx.page/express/experiments/ccx0110/education-challenger

@jrrings no, I can't seem to reproduce the weird jumpy behaviour anymore today, which is good I guess. I'm also getting slightly different behaviour on prod than what I had yesterday lol
whatever the case, your version is working like a pure copy of prod for me today, so all good. I'll approve.


Use incremental installation

Description
This PR updates Flutter's Podfile templates to enable incremental installation by default. This may increase the speed of subsequent iOS builds when complex plugins like Firestore are being used, because Flutter won't need to recompile all the plugins when a new one is added.
Related Issues
Fixes https://github.com/flutter/flutter/issues/46198
Tests
There should be no functional change here, just increased performance. I think that this should be covered by build time performance benchmarks.
Checklist
Before you create this PR confirm that it meets all requirements listed below by checking the relevant checkboxes ([x]). This will ensure a smooth and quick review process.

[X] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[X] I signed the CLA.
[X] I read and followed the Flutter Style Guide, including Features we expect every widget to implement.
[X] I read the Tree Hygiene wiki page, which explains my responsibilities.
[X] I updated/added relevant documentation (doc comments with ///).
[X] All existing and new tests are passing.
[X] The analyzer (flutter analyze --flutter-repo) does not report any problems on my PR.
[X] I am willing to follow-up on review comments in a timely manner.

Breaking Change
Did any tests fail when you ran them? Please read Handling breaking changes.

[X] No, no existing tests failed, so this is not a breaking change.
[ ] Yes, this is a breaking change. If not, delete the remainder of this section.

[ ] I wrote a design doc: https://flutter.dev/go/template Replace this with a link to your design doc's short link
[ ] I got input from the developer relations team, specifically from: Replace with the names of who gave advice
[ ] I wrote a migration guide: Replace with a link to your migration guide

Is this PR still relevant? Or should we close it?

@collinjackson I think this is a good change if it's commented out with a comment above it about when to uncomment it, like:
https://github.com/flutter/flutter/blob/master/packages/flutter_tools/templates/cocoapods/Podfile-ios-objc#L1

ping @collinjackson to follow up on Jenn's comments

Closing this for now to get it out of the review queue, I want to do a more thorough investigation before landing.


Move Razor's language server OOP

[x] Create a .NET Core ServiceHub host for Razor's language server
Hookup components

[ ] Telemetry
[x] LogHub
[ ] Watson
[ ] Other perf metrics/crash reporting
[ ] Hook up options

[x] Create feature flags to turn it on/off to iteratively bring it out.
[ ] Update packaging to ship our language server in a standalone format like we do in VSCode
Link

Talked with @NTaylorMullen offline. We think that this won't end up being worth the trouble at this time.
At least some of our slow scenarios (semantic tokens) have been confirmed to be issues which this would not resolve (other Language Servers) and some of our expected wins will be gained regardless due to other initiatives. That combines with the fact that this would come with a loss of telemetry (or at least this telemetry would be very difficult to re-obtain) which might make it difficult to diagnose future problems.
All that combined makes us think this isn't worth it at the moment and we should instead focus perf efforts on specific scenarios and driving targeted solutions. This of course might change if additional data becomes available, we become certain telemetry/error reporting will be a smother process or some other unforeseen technical challenge changes the landscape.

For Options:
Feature flag itself: https://github.com/dotnet/razor-tooling/commit/0076a35ab4ad8b3e3aebd46ef6e0ddbcda4ecf49
Transition Razor experimental editor feature flag to extension. · dotnet/razor-tooling@0076a35

Prior to this the feature flag was only defined in the VS repo. With these changes we override the default impl in the VS repo and expose it when our extension is available.
Updated the preview...

How to read it: https://github.com/dotnet/razor-tooling/commit/d1cd8d3ce52019f2216d00f3bbe05209dc259d8d#diff-3cd7093489cb3ee7fd37c74582ca4fd5c97656d677439892511916e241674c7aL183
Turn Razor LSP editor on-by-default. · dotnet/razor-tooling@d1cd8d3

Removed the experimental editor feature flag and all the implications it imposed in our feature detector in regards to LiveShare.
Updated tests to verify only what's still valuable.

Fi...

Closing this out. We're going to be running things in OOP soon, but not a language server. We also won't have our own language server :D


Ensure page title is set on all bloom pages.

Issue link / number:
#1043
What changes did you make?
Ensured that the page title on all Bloom pages matches the actual title of the respective page.
Why did you make the changes?
As per the ticket's request, the default title was set to "Bloom" and updated to match the actual title of each page.
Did you run tests?
Yes
@eleanorreem  and @annarhughes , please review this and let me know if anything else is needed or if it doesn't match the requirements.

Hi @Vishnu21710, thank you for this PR and patience as the devs were out of office. I will be reviewing this PR moving forward.
First, I will remove the changes in CONTRIBUTING.MD as they look like mistakes. Next, can you verify the method you used to update the metadata titles? It looks like you added <title> tags where they were previously missing.
Thanks!

@Vishnu21710 please ignore the CONTRIBUTING.md file edits, it is actually an issue with the linters we have configured. So you can just leave those!

Hi @kyleecodes ,
Thank you for reviewing the PR. Yes, the  tags were missing in some of the files, and when I added them, the metadata titles worked as expected.
Please let me know if there's anything else you'd like me to adjust.
Thanks!
Vishnu

Great work @Vishnu21710. Only small flag is that a generic title tag is set in app.tsx. It would be great to delete that so as not to confuse search engines!

Hi @eleanorreem ,
I've removed the generic  tag from app.tsx. Please review the changes and let me know if any further adjustments are needed.
Thanks!

Thanks ⭐  Great work 😄


Editor View Only

The model preview is hidden when the ?editor URL parameter is given.
The editor then takes up the entire width of the screen.
#5

Thanks for submitting this.
I'm in vacation until January, so I'll review this when I get back.
Happy holidays!


n/shebang has wrong entry for report node

The bug is here:
https://github.com/eslint-community/eslint-plugin-n/blob/master/lib/rules/shebang.js#L164
Instead of selecting node, we need to select only the first line of the file.
In other words, when in VSCode:

When the shebang is there and it is not supposed to be, we want the yellow squiggly line to appear only over the shebang, not over the entire file.
When the shebang is missing and it is supposed to be there, we want the yellow squiggly line to appear on the first line, not over the entire file.

yes, it's not a good UX to highlight the entire file. are you willing to submit a PR? :)

Sorry, I don't have time.


Fixes when the refine price range sliders get cut off

They were getting cut off by 1 point, so I added a spacer.
Fixes https://github.com/artsy/eigen/issues/2224

👍 LGTM!


Replace generate Antlr files by msbuild task

Try using https://github.com/kaby76/Antlr4BuildTasks instead of explicit java and bump Antlr4.Runtime.Standard version
And bump Antlr version to 4.11.1

We can use JavaDownloadDirectory parameter

Hi - we've moved all development to a new version of the Q# compiler and QDK, which is in another repo: https://github.com/microsoft/qsharp. This repo is in "maintenance mode" and we're trying to avoid making unnecessary changes. It looks like this change isn't related to fixing a bug, so we can't accept it at this time, but thanks for your contribution!


Docker pull fix

Fixed docker pull issue #1006
Shows none provided if no test parameter files provided in public viewing of entry

Codecov Report

Merging #143 into hotfix/2.0.1-SNAPSHOT will not change coverage.
The diff coverage is n/a.

@@                  Coverage Diff                   @@
##           hotfix/2.0.1-SNAPSHOT     #143   +/-   ##
======================================================
  Coverage                  64.95%   64.95%
======================================================
  Files                         96       96
  Lines                       2565     2565
  Branches                     323      323
======================================================
  Hits                        1666     1666
  Misses                       725      725
  Partials                     174      174

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 00d8568...9dc93e2. Read the comment docs.


Update README.md

Fixing a few minor typo's
Title of pull request
The pull request should be described here
Description

Describe here your pull request modifications
It could be more than one thing

How to Test

Run both ganache-cli
Enter into the bridge directory and run all the tests

Case 1

Go to bridge directory

$~ cd bridge

Run all the tests

$~ npm run test

Expected Result

It should pass the test

Run the first ganache-cli

$~ npm run ganache

Open another shell and run the ganache mirror

$~ npm run ganache-mirror

Go to the federator directory

$~ cd ../federator

Run the integration test

$~ npm run integrationTest

Expected Result

It should pass the test

Run the integration test

$~ npm run integrationTest

Expected Result

It should pass the test

Case N...
Checklist
Bridge Directory cd bridge

[] Lint is clean npm run lint
[] Test is passing npm run test
[] Contracts are compiling npm run compile

Federator Directory cd federator

[] Lint is clean npm run lint
[] Test is passing npm run test
[] Typescript is compiling npm run build

This guy is a hacker. Wouldn't recommend approving his workflow. See https://github.com/hashgraph/hedera-mirror-node/pull/8028/files


Barb Renderer: unable to enable after copying region

To reproduce:

Open Vapor, load Katrina.
Create a Barb Renderer, enable it.
Create an Image Renderer, enable it.
Change the Geometry of the image renderer.
Disable both renderers.
Go to the Geometry tab of the Barb renderer.
Copy region from the Image renderer.
Enable the Barb renderer. Notice it's unable to enable.

This bug is fixed, thus closing.


Support creating ItemCollections in Transaction Extension

Description:
Implements "create ItemCollection" via the Transaction extension and provides additional validation and behavior on ids when creating Items or ItemCollections. I'll note that the api spec indicates percent encoded characters are discouraged, but this change makes them invalid for this backend. That's an opinioned change, and I'm willing to walk it back to a subset (like just "/") if that flexibility is desired.
See: https://github.com/radiantearth/stac-spec/blob/master/best-practices.md#item-ids
See: https://github.com/radiantearth/stac-api-spec/blob/master/ogcapi-features/extensions/transaction/README.md#methods
Fixes: https://github.com/stac-utils/stac-fastapi-pgstac/issues/23
PR Checklist:

[x] pre-commit hooks pass locally
[x] Tests pass (run make test)
[x] Documentation has been updated to reflect changes, if applicable, and docs build successfully (run make docs)
[ ] Changes are added to the CHANGELOG.

Note: This is draft until https://github.com/stac-utils/stac-fastapi/pull/574 is merged, as tests here will fail without it.

@gadomski I added some commits that should address your comments, thanks for the feedback. I had started down the path of response unification, but then realized the extent to which it was a meaningful breaking changed, and walked it back in a subsequent commit. Tests pass locally against stac-fastapi main, so I'll leave this in draft until the next stac-fastapi release.


System.OutOfMemoryExceptionNLog.Internal.ExceptionHelper.MustBeRethrownImmediately exception

NLog version:  4.6.3
Platform: .Net 4.6.1

What is the current result?
Application crashes
What is the expected result?
Do not crash application
Did you checked the Internal log?
NO
Please post full exception details (message, stacktrace, inner exceptions)
System.OutOfMemoryExceptionNLog.Internal.ExceptionHelper.MustBeRethrownImmediately(Exception exception):0 Exception of type 'System.OutOfMemoryException' was thrown. System.OutOfMemoryException: Exception of type 'System.OutOfMemoryException' was thrown.  at NLog.Internal.ExceptionHelper.MustBeRethrownImmediately(Exception exception)  at NLog.Common.InternalLogger.Write(Exception ex, LogLevel level, string message, object[] args)  at NLog.Targets.Wrappers.AsyncTargetWrapper.ProcessPendingEvents(object state)  at System.Threading.TimerQueueTimer.CallCallbackInContext(object state)  at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, object state, bool preserveSyncCtx)  at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, object state, bool preserveSyncCtx)  at System.Threading.TimerQueueTimer.CallCallback()  at System.Threading.TimerQueueTimer.Fire()  at System.Threading.TimerQueue.FireNextTimers()  at System.Threading.TimerQueue.AppDomainTimerCallback(int id)
Are there any workarounds? yes/no
NO
Is there a version in which it did work?
Not sure
Can you help us by writing an unit test?
No

Are you sure this is a NLog issue? We are stopping on a OutOfMemoryException, but most OutOfMemoryExceptions are caused not by NLog (but only logged)
Without NLog, (e.g. remove nlog.config), it there aren't an OutOfMemoryException?
If it's a NLog issue, we need really more info.

I don't have more info... I just got a crash report and this is full stacktrace....

How do you think we could solve this then?

...Exception of type 'System.OutOfMemoryException' was thrown. at NLog.Internal.ExceptionHelper.MustBeRethrownImmediately(Exception exception) at... As I see it was thrown by NLog lib.

Why stacktrace doesn't give me more detailed info... Don't know...

MustBeRethrownImmediately
Rethrows exceptions and doesn't create.

See https://github.com/NLog/NLog/blob/7beca26b87ca795b112da9b14fe738e314faf6bc/src/NLog/Internal/ExceptionHelper.cs#L111

Why stacktrace doesn't give me more detailed info... Don't know...

I think there is no memory to record many details
Anyway, out if memory are hard issues. I would recommend to test and isolate the problem.

Maybe this is helpful
https://stackoverflow.com/a/3700618/201303


Closes #113 Fixed Arrows

Updated progressblock so that makeNext and makePrev are components rather than functions

Fixed simultaneously in another branch.


Better PP20 Packer

The current PP20 packer is decent, but it isn't as good as the original.
Thankfully, https://github.com/lab313ru has plans to reverse engineer PP20 into C, which will make creating a better packer much easier.

Finished / completed.


build: Use git describe instead of custom git_info

The number of issues we ran into with the previous approach made it not worthwhile. We may eventually provide more git information at build time, but it's best to keep it simple for the time being.
Resolves #16.

is the e2e failure known?

No, but hopefully a transient failure:
#12 [builder  6/11] RUN go mod download
#12 361.8 go<EMAIL_ADDRESS>Get<EMAIL_ADDRESS>dial tcp <IP_ADDRESS>:443: i/o timeout
#12 ERROR: process "/bin/sh -c go mod download" did not complete successfully: exit code: 1
------
 > [builder  6/11] RUN go mod download:
#12 361.8 go<EMAIL_ADDRESS>Get<EMAIL_ADDRESS>dial tcp <IP_ADDRESS>:443: i/o timeout
------
Dockerfile:8
--------------------
   6 |     COPY go.mod go.mod
   7 |     COPY go.sum go.sum
   8 | >>> RUN go mod download
   9 |
  10 |     COPY pkg/ pkg/
--------------------
ERROR: failed to solve: process "/bin/sh -c go mod download" did not complete successfully: exit code: 1
make: *** [Makefile:161: vm-informant] Error 1
Error: Process completed with exit code 2.


.Net: Add AssemblyAI connector for Audio-to-text

Motivation and Context
AssemblyAI is a speech AI company and SK provides a new IAudioToTextService for different connectors to implement.
Description
I added a connector for AssemblyAI that implements IAudioToTextService.
The AssemblyAIAudioToTextService accepts AudioContent as mandated by the interface, but also a Stream as discussed here, a FileInfo, and a Uri.
Remarks:

I couldn't run tests in Connectors.UnitTests because of compilation issues in referenced projects, but I could verify the functionality in the integration tests.
We're working on our C# SDK, so the code will be updated once our C# SDK lands.

Questions:

How should I set up the icon and README.md file in this connector project?
Should the IAudioToTextService interface accept PromptExecutionSettings? It seems a little odd to me since this isn't prompting an LLM.
Which of these overloads makes sense to pull into IAudioToTextService? I added Stream, FileInfo, and Uri to our implementation.

Contribution Checklist

[ ] The code builds clean without any errors or warnings
[x] The PR follows the SK Contribution Guidelines and the pre-submission formatting script raises no violations
[ ] All unit tests pass, and I have added new tests where possible
[x] I didn't break anyone :smile:

Should the IAudioToTextService interface accept PromptExecutionSettings? It seems a little odd to me since this isn't prompting an LLM.

Yes, but you don't need create class derived from PromptExecutionSettings

Which of these overloads makes sense to pull into IAudioToTextService? I added Stream, FileInfo, and Uri to our implementation.

I have answered in review.

I couldn't run tests in Connectors.UnitTests because of compilation issues in referenced projects, but I could verify the functionality in the integration tests.

Could you send a log?

@Krzysztof318 I think I got to all the feedback.
I'm not convinced that adding File and Url to the AudioContent class is a good approach, but it gets the job done.

Hi @Swimburger thanks for your contribution!
This PR was promoted to a dedicated Connector feature branch, feature-connectors-assemblyai.
Please any additional change feel free to create small incremental PRs againts your dedicated branch.
FOr more details about the process see: https://github.com/microsoft/semantic-kernel/blob/feature-connectors-assemblyai/docs/decisions/0031-feature-branch-strategy.md
I'm closing this and waiting for you great contributions on the new branch. Thanks.

@Swimburger, suggestion for the changes on the connector, seggregate the HttpClient out of your service, make it independent and being able to be provided following similar patterns we have for OpenAI, Ollama, Gemini and HuggingFace (WIP).

btw. You can apply experimental attribute at assembly level like here https://github.com/microsoft/semantic-kernel/blob/main/dotnet/src/Experimental/Agents/AssemblyInfo.cs#L6

I incorporated the new feedback.
Some thoughts:
I don't like how AudioContent requires you to specify the MediaType of the binary data as it's an extra thing that devs need to ensure to configure correctly.
The MediaType isn't something that needs to be specified for our API, not sure about other STT APIs.
I feel like both ImageContent and AudioContent need a separate class for passing the Uri vs the BinaryData.
It seems odd to combine them.

FYI, I had a conversation with Matthew Bolanos at Orlando Code Camp 🔥
For now, we're only adding our "async" transcript model, meaning upload audio, process audio, return transcript.
When SK adds support for real-time transcription, we'll be happy to integrate our real-time transcript service too.
We'll think about other models and features too, but we want to get the basic in first.

@Swimburger feel free to extend SK abstraction with live streaming :)
but do it in next PRs and try making PRs small so it will be easy for us to review

@Swimburger merge main branch, there are changes in audio abstraction. Fix all building warnings/errors if any after merge and at the end run dotnet format.

I added extensions to add the service to the kernel builder.

@Swimburger I will take a look tomorrow your new changes. But please don't do this PR bigger. I had hope we can merge this,  but now I have to review new changes.
Try making future PRs small.

I simplified the service extensions and move the polling interval back to execution settings.

@Swimburger Please familiarize yourself with this ADR, especially the part that the link leads to, it will help you avoid problems in future PRs. https://github.com/microsoft/semantic-kernel/blob/main/docs/decisions/0031-feature-branch-strategy.md#merging-main-branch-to-feature-branch-before-finish-feature

I updated the code resolving the latest feedback.

The OpenAI audio tests are failing because we made BinaryData.MediaType mandatory to match image content logic.
I think we should be laxer here as the user doesn't need to specify this to do audio-to-text.

@Swimburger You are behind main branch. Meanwhile in main there already are many fixes and changes related to BinaryContent. And one important PR waits for merge https://github.com/microsoft/semantic-kernel/pull/5229
But keep in mind you will have complications if you merge main to this PR.
Ask for merge via git command main to your feature branch someone with write access to SK repo.

@Swimburger Please familiarize yourself with this ADR, especially the part that the link leads to, it will help you avoid problems in future PRs. https://github.com/microsoft/semantic-kernel/blob/main/docs/decisions/0031-feature-branch-strategy.md#merging-main-branch-to-feature-branch-before-finish-feature

I'll wait for #5229 to merge and then request a merge from the main to the feature branch.

@Swimburger You are behind main branch. Meanwhile in main there already are many fixes and changes related to BinaryContent. And one important PR waits for merge #5229
But keep in mind you will have complications if you merge main to this PR. Ask for merge via git command main to your feature branch someone with write access to SK repo.

Now that #5229 has been merged, can someone merge main via git command into the feature-connectors-assemblyai branch?
git checkout feature-connectors-assemblyai && git merge main

@Swimburger Yes, will look into it.

Small suggestion;
Since your branch will likely live some time and you want to develop a comprehensive connector for AssemblyAI. I propose you to create similar issue to this one #4680 it allows us tracking changes and eventually help you with writing new features.
This is not necessary, but it will nice to have such issue :)

I merged the changes from the feature branch into this PR branch, and implemented the new interface method for OpenAI's STT services.

@Swimburger Small suggestion; Since your branch will likely live some time and you want to develop a comprehensive connector for AssemblyAI. I suggest you to create similar issue to this one #4680 it allows us tracking changes and eventually help you with writing new features.
This is not necessary, but it will be nice to have such issue :)

Done: #5392

What are the next steps to get this PR merged? 🙇

Refreshed the feature branch with the latest main. Will add some comments on top of it.
Looking forward to get this one merged next week in the feature branch.

@Swimburger the PR is merged in the feature branch as it's getting bigger and long running.
New changes needs to be made regarding the Abstractions as suggested above, looking forward for the next PR's!


filters: 2.0.1-2 in 'foxy/distribution.yaml' [bloom]

Increasing version of package(s) in repository filters to 2.0.1-2:

upstream repository: https://github.com/ros/filters.git
release repository: https://github.com/ros2-gbp/filters-release.git
distro file: foxy/distribution.yaml
bloom version: 0.10.7
previous version for package: 2.0.0-1

It looks like bloom didn't complete successfully for this release.  CI is showing:
2021-07-13T14:02:09.1396726Z rosdistro: DEBUG: Skipped "github_manifest_provider()": specified tag "release/foxy/filters/2.0.1-2" is not a git tag

@jonbinney Can you re-release this package?

At least part of the failing checks was also due to https://github.com/ros/rosdistro/issues/29964. Which is why I merged master here. @clalancette's comment still stands.


Allocate simulator by UUID

Suppose we would like a reference to a simulator with a specific UUID (e.g., because we know we have put that exact instance in a particular state we want).
I can do this by creating a very generic FBSimulatorSet
FBSimulatorControlConfiguration *controlConfig = [FBSimulatorControlConfiguration configurationWithDeviceSetPath:nil
                                                                                options:0];
FBSimulatorSet *sims = [FBSimulatorSet setWithConfiguration:controlConfig
                                                    control:self.control
                                                     logger:nil
                                                      error:&e];

And then running a query on the result:
FBiOSTargetQuery *query = [FBiOSTargetQuery udids:@[deviceID]];
NSArray <FBSimulator *> *results = [sims query:query];

However, when I try to use one of the resulting simulators I get odd memory behavior, such as the simulator's set being nil or the processFetcher being nil. When I use lldb, sometimes these values are present.
The behavior is consistent when I obtain a simulator using the recommended approach (allocating a particular FBSimulatorConfiguration), but the configurations don't seem to allow for specifying a particular UUID.

I should probably make the FBSimulatorSet constructor 'private' as you should not be using it directly. You should obtain the FBSimulatorSet from the FBSimulatorControl principal class.
Call the FBSimulatorControl class constructor then get the FBSimulatorSet from the set property.

Well, that was the magic bullet :)

So this no longer works for iPadPro after pulling the latest master:
+ (FBSimulator *)simulatorWithDeviceID:(NSString *)deviceID {
    FBSimulatorSet *sims = [self control].set;
    if (!sims) { return nil; }

    FBiOSTargetQuery *query = [FBiOSTargetQuery udids:@[deviceID]];
    NSArray <FBSimulator *> *results = [sims query:query];
    if (results.count == 0) {
        NSLog(@"No simulators found for ID %@", deviceID);
        return nil;
    }
    FBSimulator *sim = results[0];
    return sim;
}

The simulator reports having no deviceConfiguration and therefore no simulatorArchitecture and so is unable to do anything. Worked on at least one iPhone 5 sim, still testing others.

We need to create a configuration for each kind of device, the reason that we do this is to decouple the available runtimes that are loaded from CoreSimulator from the API that allows you to specify a query for each of them. Sounds like we have to add a configuration for the iPad Pro in order to get this working.

https://github.com/facebook/FBSimulatorControl/commit/8191e91f6aa9995dc8f6b4f64d0c0758d997b269 should fix the iPad Pro on Xcode 8 issues.

Closing as it appears the iPad Pro issue was resolved.


[Add2App] App crashes when orientation changes while Recent Apps list is open on Android

Using the new embedding API for Android to embed Flutter in an existing app, it is possible for the app to crash when bringing up the Recent Apps List.

Simply launch an activity with a Flutter embedding fragment
With app (and flutter view) in foreground, bring up the Recent Apps list
Change the orientation of the device with the Recent Apps list showing
Come back to the app

A crash happens at this point. Here is the crash log:
--------- beginning of crash
E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.sonos.acr, PID: 5757
    java.lang.NullPointerException: Attempt to invoke virtual method 'io.flutter.embedding.engine.systemchannels.LocalizationChannel io.flutter.embedding.engine.FlutterEngine.getLocalizationChannel()' on a null object reference
        at io.flutter.embedding.android.FlutterView.sendLocalesToFlutter(FlutterView.java:737)
        at io.flutter.embedding.android.FlutterView.onConfigurationChanged(FlutterView.java:262)
        at android.view.View.dispatchConfigurationChanged(View.java:10498)
        at android.view.ViewGroup.dispatchConfigurationChanged(ViewGroup.java:1312)
        at android.view.ViewGroup.dispatchConfigurationChanged(ViewGroup.java:1316)
        at android.view.ViewGroup.dispatchConfigurationChanged(ViewGroup.java:1316)
        at android.view.ViewGroup.dispatchConfigurationChanged(ViewGroup.java:1316)
        at android.view.ViewGroup.dispatchConfigurationChanged(ViewGroup.java:1316)
        at android.view.ViewGroup.dispatchConfigurationChanged(ViewGroup.java:1316)
        at android.view.ViewRootImpl.updateConfiguration(ViewRootImpl.java:3341)
        at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1771)
        at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1254)
        at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6337)
        at android.view.Choreographer$CallbackRecord.run(Choreographer.java:874)
        at android.view.Choreographer.doCallbacks(Choreographer.java:686)
        at android.view.Choreographer.doFrame(Choreographer.java:621)
        at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:860)
        at android.os.Handler.handleCallback(Handler.java:751)
        at android.os.Handler.dispatchMessage(Handler.java:95)
        at android.os.Looper.loop(Looper.java:154)
        at android.app.ActivityThread.main(ActivityThread.java:6119)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)

Can you paste the flutter doctor output?`

[✓] Flutter (Channel dev, v1.10.14, on Mac OS X 10.14.6 18G103, locale en-US)
    • Flutter version 1.10.14 at /Users/danny.valente/Library/flutter/1.10.14-dev
    • Framework revision 1946fc4da0 (3 weeks ago), 2019-10-07 15:23:31 -0700
    • Engine revision 1d62160fdb
    • Dart version 2.6.0 (build 2.6.0-dev.1.0 d6c6d12ebf)

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

[✓] Xcode - develop for iOS and macOS (Xcode 11.0)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.0, Build version 11A420a
    • CocoaPods version 1.7.5

[✓] Android Studio (version 3.5)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 40.2.2
    • Dart plugin version 191.8593
    • Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b49-5587405)

I'm able to reproduce this.

Issue appears to be that we get disconnected from the engine when going to the background, then we come to the foreground and get the onConfigurationChanged before we're reattached to the FlutterEngine, and then we get an NPE.
/cc @matthew-carroll  - any thoughts on this?

I can try to repro, but the engine should be attached in onCreate() and I can't imagine that onConfigurationChanged() is called before onCreate(), is it?

onConfigurationChanged() is indeed getting called before onCreate.

Hm, ok. I'll add this ticket to the refactor project and add it to the code freeze priority list. Hopefully I can take a crack at it today or tomorrow.

Actually trying to validate that still.. I thought it was in the log clearly but now I'm not so sure.

Actually, does onConfigurationChanged() even execute in a normal activity that doesn't override config changes? Does the Activity in question override orientation change?

Thanks for looking into this @dnfield. Any chance that #35054 is related to this too?
@matthew-carroll any chance you can get it added to the refactor project too, seeing users lose the ability to type in a text field.
Thanks!

onConfigurationChanged is in the FlutterView

From Android docs for View for onConfigurationChanged():

You only need to use this if you are not relying on the normal Activity mechanism of recreating the activity instance upon a configuration change.

So is the containing Activity overriding configuration changes?

CC @xster for @dannyvalentesonos above question about adding #35054 to the code freeze priority list.

We should fix it for phase 1. Can @dnfield help you propose a solution?

For #35054 we should loop in @collinjackson for related testing infra, @gspencergoog for visibility, and @nturgut for web visibility.

Matt and I worked this out - patch will be incoming momentarily.

@dnfield Thanks for fixing this. Will this be in the next Dev build?

Probably not the next one, maybe the one after.


Can't select text once it exceeds constraints

Steps to Reproduce
As seen in this pad
Expected results:
Expected to be able to select text by long press dragging
Actual results:
TextField begins scrolling along with your drag direction, rather than selecting text. Works fine as long as the text doesn't overflow.

[✓] Flutter (Channel master, 1.21.0-10.0.pre.54, on Linux, locale en_CA.UTF-8)
[✗] Android toolchain - develop for Android devices
    ✗ Unable to locate Android SDK.
      Install Android Studio from: https://developer.android.com/studio/index.html
      On first launch it will assist you in installing the Android SDK components.
      (or visit https://flutter.dev/docs/get-started/install/linux#android-setup for detailed instructions).
      If the Android SDK has been installed to a custom location, set ANDROID_SDK_ROOT to that location.
      You may also want to add it to your PATH environment variable.

[✓] Linux toolchain - develop for Linux desktop
[!] Android Studio (not installed)
[✓] Connected device (1 available)

! Doctor found issues in 2 categories.

@Calamity210 Put the textfeild widget under SingleChildScrollView and you will get the desired result :-)

Also reproducible on latest master (1.21.0-10.0.pre.138) channel.

 sample code
import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      theme: ThemeData.dark(),
      home: Material(
        child: Center(
          child: SingleChildScrollView(
            child: TextField(
              controller: TextEditingController(text: 'In publishing and graphic design, Lorem ipsum is a placeholder text commonly used to demonstrate the visual form of a document or a typeface without relying on meaningful content.  In publishing and graphic design, Lorem ipsum is a placeholder text commonly used to demonstrate the visual form of a document or a typeface without relying on meaningful content. '),
              maxLines: 1,
            ),
          ),
        ),
      ),
    );
  }
}

 flutter doctor -v
[✓] Flutter (Channel master, 1.21.0-10.0.pre.138, on Mac OS X 10.15.6 19G2021,
    locale en)
    • Flutter version 1.21.0-10.0.pre.138 at
      /Users/pedromassango/dev/SDKs/flutter_master
    • Framework revision 3562b3c0de (27 hours ago), 2020-08-18 01:46:02 -0400
    • Engine revision 02de4eb7ce
    • Dart version 2.10.0 (build 2.10.0-37.0.dev)

[!] Android toolchain - develop for Android devices (Android SDK version 30.0.1)
    • Android SDK at /Users/pedromassango/Library/Android/sdk
    • Platform android-30, build-tools 30.0.1
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)
    ! Some Android licenses not accepted.  To resolve this, run: flutter doctor
      --android-licenses

[✓] Xcode - develop for iOS and macOS (Xcode 11.6)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.6, Build version 11E708
    • CocoaPods version 1.9.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[!] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)

[✓] IntelliJ IDEA Community Edition (version 2020.2)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 48.1.4
    • Dart plugin version 202.6397.47

[!] VS Code (version 1.48.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    ✗ Flutter extension not installed; install from
      https://marketplace.visualstudio.com/items?itemName=Dart-Code.flutter

[✓] Connected device (4 available)
    • sdk gphone x86 (mobile) • emulator-5554 • android-x86    • Android 11 (API
      30) (emulator)
    • macOS (desktop)         • macos         • darwin-x64     • Mac OS X
      10.15.6 19G2021
    • Web Server (web)        • web-server    • web-javascript • Flutter Tools
    • Chrome (web)            • chrome        • web-javascript • Google Chrome
      84.0.4147.135

! Doctor found issues in 3 categories.

Duplicate of https://github.com/flutter/flutter/issues/59141


Get ready to patch the Linux kernel for CVE-2016-0728 (privilege escalation bug)

More info can be found here: http://perception-point.io/2016/01/14/analysis-and-exploitation-of-a-linux-kernel-vulnerability-cve-2016-0728/
EDIT: The patch should be released soon. Probably sometime today.

Debian patch: https://anonscm.debian.org/cgit/kernel/linux.git/commit/?id=e9490659aaedd81d48f783c9df4852e2d16ee8e4

That's the same patch as in PR #12492.


Search by question only checks first question tag

The search function only checks the first entry in the questions field and discards the article if the first question does not match the search term. Some articles have the search term listed as the 3rd or 4th question in the questions field for example.
Search should recurse through the questions slice. Check the code.

db/search.go 140-142: return too early.
for _, j := range a.Questions {
		return j.Number == qnNumber && j.Year == year
	}

If the first one is false the function returns false without checking the rest of a.Questions.


qa_openstack: Add Liberty

Be able to run the qa_openstack.sh job with packages from
Cloud:OpenStack:Liberty and Cloud:OpenStack:Liberty:Staging .

+1

merged


Put did_install fact into group_vars

Fixes #1287

did_install variable is used per roles, not per entire playbook. Sharing the var across all roles will skip installation of some packages which are not present on the system.
If a node role installs kubernetes-node package, did_install is set globally to true. Once you start running master role, did_install is still set to true and the kubernetes-master does not get installed.

#1380 will cover this.


App Crash in Saved Projects

Steps to reproduce:
Long press some project and then click on Select All option and the app crashes.
Ideally, all the items in the list must be selected.
I would like to fix this issue.

@sm86 I can't replicate this issue. Yes before this was issue and was reported in #271 And was resolved in #309. I think your branches are not updated with original ones that's why it is causing problem.

@vishwesh3, I saw the issue you stated was in Drafts. The drafts is working exactly fine. But I got the issue in Saved Projects. Please let me know if it is also resolved and there is an issue with my branch

Yes https://github.com/BuildmLearn/BuildmLearn-Toolkit-Android/pull/309/files in Saved Projects it is solved.


[New game]: Melody Master

🎮 Game Request
"Melody Master" is an immersive piano frontend project that combines the joy of playing music with interactive gameplay. The game offers a realistic and visually appealing virtual piano interface, complete with authentic sound effects, to create an engaging and authentic musical experience.
Point down the features

Interactive UI
Easy to use
Minimalist

Select program in which you are contributing
GSSoC23
Code of Conduct

[X] I follow CONTRIBUTING GUIDELINE of this project.

Hey @Atulsingh30 !
Thank you for raising an issue 💗
You can self assign the issue by commenting /assign in comment 😀
Make sure you follow CODE OF CONDUCT and CONTRIBUTING GUIDELINES 🚀
Don’t Forget to ⭐ our GameZone🎮
Make sure you join our Discord🕹

/assign

Hello @Atulsingh30, Time's Uppp!⏰
Sorry for closing your issue!
But it's more than a week since we haven't received anything from your side 😢 .
Come up with new ideas, create a new issue and make sure you finish it within a week! 🔥
All the best! 🚀
Happy Hacking! 💗

Hey @Atulsingh30 ! Thank you so much for your raising the issue💗
It’s all yours, you can come anytime again and make some contributions! 🚀
Alone, we can do little, but together we can do so much! 😇

/assign

Hey @atulsingh30 ! , This issue is already assigned to @atulsingh30. 💗
You can work on other issues 🚀
If there is anything wrong you can contact us on Discord🕹👀


docs: remove extraneous @, fix docs

ok third time is a charm, sorry for the churn.

@twhitbeck 	see https://github.com/koajs/koa-router/pull/8/commits/d0a66f1f71ac768a4861efebc74d6df2350aa41e#r299631734


Fix ERC20 swap regression

This is a good catch, I made a PR for this fix already: #154

Ah my bad I didn't see the PR! Feel free to close this one and merge yours instead if you want to :+1:


build(macOS/CMake): enhance CMakeLists to dynamically detect kernel version

This probably should be done for non arm? @UdjinM6 opinion here?

This probably should be done for non arm?

yeah, makes sense


GitHub Actions

move to GitHub Actions;
update requirements;
make setup script less archaic;

poor Travis :(

@hotsyk I guess this is the time we bade it a lighthearted farewell, huh?
P.S. you're still a legal maintainer, so do not hesitate to look through a line or two of code ;)


Fix for broken pages routes

Fixes the following issues :

Bureau Structure page broken on mobile.
Table rows not handling clicks on the Careers Openings table.

Changes

Moved routes and updated module reference paths.

Testing

Run gulp build and visit the Bureau Structure page on mobile. Visit the Career Openings page and click on a row (not the link); you should navigate to the correct jobs page.

Review

@anselmbradford
@jimmynotjim
@KimberlyMunoz

Checklist

[ ] Changes are limited to a single goal (no scope creep)
[ ] Code can be automatically merged (no conflicts)
[ ] Code follows the standards laid out in the front end playbook
[ ] Passes all existing automated tests
[ ] New functions include new tests
[ ] New functions are documented (with a description, list of inputs, and expected output)
[ ] Placeholder code is flagged
[ ] Visually tested in supported browsers and devices
[ ] Project documentation has been updated (including the "Unreleased" section of the CHANGELOG)

👍


Update howto-large-clusters.md

@johnmarco
Can you review the proposed changes?
Important: When the changes are ready for publication, adding a #sign-off comment is the best way to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team


[MBL-1942] Hotfix for keyboard covering input field in Messages

📲 What
Update layout root padding based on IME insets in MessagesActivity
🤔 Why
Currently, when the device keyboards opens it covers the messaging input field.
🛠 How
Set the bottom padding of the layout's root view based on IME insets to keep the input field visible.
This is the same logic as in WindowInsetsUtil.manageEdgeToEdge() with a slight adjustment to handle the keyboard.
👀 See
Trello, screenshots, external resources?

Before 🐛
After 🦋

Video
Video

📋 QA
Instructions for anyone to be able to QA this work.
Story 📖
[Name of Trello Story](Trello link)

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 68.43%. Comparing base (802bba4) to head (a4883f3).

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@             Coverage Diff              @@
##             master    #2191      +/-   ##
============================================
- Coverage     68.43%   68.43%   -0.01%
+ Complexity     2188     2187       -1
============================================
  Files           351      351
  Lines         23558    23558
  Branches       3455     3455
============================================
- Hits          16122    16121       -1
  Misses         5610     5610
- Partials       1826     1827       +1

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


feat(Styleguide): Storybook 6 alpha upgrade + Story ordering

Updates to<EMAIL_ADDRESS>Overall stability seems fine, viewMode is still broken (i linked to the pending fix in a comment).
Set a default ordering that I think makes sense, feedback welcome:
About.mdx
Foundations
Atoms
Molecules
Organisms
Brand
Meta

It falls back to alphabetical, so About.mdx should likely be at the top for the subpages, we'll see in the deploy.
--
Merging your changes
When you are ready to merge to master and publish your changes, use the "squash and merge" button in GitHub, and follow the PR Title Guide to format your PR title and write your PR merge description.
IMPORTANT: If your PR contains breaking changes, please remember to follow the instructions for breaking changes!

🚀 Styleguide deploy preview ready!https://5e8fa15ec1f9b0fa95e23a9e--codecademy-styleguide.netlify.comDeploy Logs


Refreshing Task Details doesn't refresh if a change was made outside of the extension

workaround: click on a different task and then click on the previous task to force a refresh

for me it works, just if you change something in android app  you can click "refresh" button in extention and tasks will reload successfully


Created new friend page

Thanks for setting this up!

Your pull request seems good, but must be checked by a human maintainer for the following reason(s):

This contains potentially hazardous tags that need manual review.

Please be patient until a maintainer has time to look over your contribution.
This is an automated response, beep boop.
if you think there is a mistake, contact a maintainer

c8126839077855da25514f2536dbaa2cafa1df15


[EN DateTimeV2] Incorrect time span in query {book my time for swimming every Tuesday and Thursday 19:00 - 21:00} - regression

Describe the bug
A clear and concise description of what the bug is.
“thursday 19:00 - 21” other than “thursday 19:00 – 21:00” is recognized as a resolution from query "book my time for swimming every Tuesday and Thursday 19:00 - 21:00".
Nuget package v1.1.5

Regression fixed in #1484.


OmniSharp puts up 'This application requires one of the follwing versions of the .NET Framework..' prompt

Environment data
dotnet --info output:
VS Code version: 1.7.2
C# Extension version: v.1.6.0-beta3
.NET Core version: 1.0.0-SDK Preview2-003133
Steps to reproduce

Open vscode and click Extensions button install C# Extension.

click Restart Now button.
Open hwapp folder in attachments directly.
hwapp.zip

Expected  behavior
It can successfully install package and no error messages.
Actual behavior
It pops up error message as following:

Investigation

It pops up error message but when I press No button it have no influence for debugging.
This issue occur in win8.1 x64.
I only wonder if he is not by design.

@qian6 as of C# extension 1.5, this is expected on Windows. Its not debugger related, so it will not impact the debugger (other than things like generating a launch.json will not work). If you click 'yes' should hopefully get help installing .NET 4.6.


Fix backtick in docs/configuration.md

Fix some of backquotes missed or placed wrong in docs/configuration.md

thank you


Content updates - docs

Do we still want to call this "new"? It may be the new "Fabric" lifecycle in v.2.0. but it's not the latest "Transaction" lifecycle (which is new in 2.4 with new Fabric Gateway service). May just need changing from "new" to "v2.x" with caveat that Tx lifecycle changed in 2.4.
https://hyperledger-fabric.readthedocs.io/en/latest/chaincode_lifecycle.html#migrate-to-the-new-fabric-lifecycle

"new" for 2.0 may be problematic language for the "latest" (2.4) release. Depends on interpretation of "new".
https://hyperledger-fabric.readthedocs.io/en/latest/enable_cc_lifecycle.html

Hi, I am Axit, a contributor to OpenForce 2022. I would like to work on this issue. I would be making a PR as soon as I am done with resolving the issue. @joshhus


feat: support cargo/runtime dependencies

Fixes #126.
If a Rust project has dependencies, cargo-clippy and cargo check will fail in the pre-commit-check derivation.
This adds settings.rust.cargoDeps and settings.runtimeDeps options, which can be used to specify the dependencies, e.g.
settings = {
  runtimeDeps = [ pkgs.openssl ];
  rust.cargoDeps = pkgs.rustPlatform.importCargoLock {
    lockFile = ./Cargo.lock;
  };
}

Sorry for the mess, we revamed module structure in https://github.com/cachix/pre-commit-hooks.nix/pull/397, could you port these changes over?

Sorry for the mess, we revamed module structure in #397, could you port these changes over?

Done :smile:

@domenkozar looks like this is conflicted again.
Please let me know if you would like to get this merged, and I will resolve conflicts one more time 😃

Yeah sorry :(

Does https://github.com/cachix/git-hooks.nix/pull/430 address this?

Does #430 address this?

It looks like it addresses this partially.

settings.runtimeDeps seems to be addressed.
settings.rust.cargoDeps (required e.g. to run clippy in sandboxed/offline mode) isn't, afaict.

I'll have to look into it at a later time.

I'm just wondering if this is the right place to inject these dependencies. Can they go into the packages for clippy and cargo check?

I'm just wondering if this is the right place to inject these dependencies. Can they go into the packages for clippy and cargo check?

You mean using something like symlinkJoin?
I don't think so. They need to be in nativeBuildInputs and cargoSetupHook is needed so that clippy can find the crates.

Otherwise, aren't the individual hook entrys broken unless executed within this run derivation?

No, they're not. Clippy will fetch the crates from the crate registy (just as cargo build does).

Will a manual pre-commit run <hook_id> work inside the shell?

Yes.

You mean using something like symlinkJoin?

No, I meant using buildInputs and friends in a derivation that wraps clippy. But since this is a purely flake check issue, that would make setting up the shell more expensive than it needs to be.
My current concerns/thoughts/ideas:

The new options only affect nix flake check and that isn't clear from the way they're defined.
The new options are essentially mkDerivation options. Can and should we generalize this? Is there a design that's basically "give us an attrset and we'll merge it into mkDerivation"?
Should runtimeDeps be added to the shell as well? In that case, can we re-use extraPackages?

I see.

My current concerns/thoughts/ideas:

Here are my thoughts:

The new options only affect nix flake check and that isn't clear from the way they're defined.

Good point. I guess they could go in a settings.check set?

The new options are essentially mkDerivation options. Can and should we generalize this? Is there a design that's basically "give us an attrset and we'll merge it into mkDerivation"?

I would say YAGNI. The options could be deprecated and copied into such an attrset if that is needed one day.
But maybe this can be worked around be overriding the attrs if the run derivation? In which case this could be closed if it's too much of an edge case 🤔
(I'll have to look into that later)

Should runtimeDeps be added to the shell as well? In that case, can we re-use extraPackages?

Yes, I think so.

@mrcjkb, let's get this merged in. Would you have time to work on this?
Let's re-use extraPackages and mark somehow mark that cargoDeps is specifically for nix flake check. Either settings.check or some sort of flakeCheck option in `pre-commit.nix.

Fixes #455.
Fixes #452.

@mrcjkb, let's get this merged in. Would you have time to work on this?

Sure.
I've updated the PR to reuse extraPackages (concatenating them from each hook)
and renamed rust.cargoDeps to rust.check.cargoDeps to clarify that it's only needed for checks.
It would be nice to have cargoDeps per hook, but I don't think it's possible to merge them from multiple hooks.

I've been using this and it seems to be in a good position will this be merged soon?


Add 'Domain ID' field on the profile drop-down menu

Design Link: https://www.figma.com/file/e1ACMcvRIUHnlwLVMLjn2T/Console-Components?node-id=199%3A79047&t=rkZX39DCz7Z2xZl7-1


turn off reliable delivery by default

This is still relevant and #81 didn't make it any easier!
The crux of the problem is that the RpcConsumer should not delegate its queue management to the QueueConsumer. It should instead manage its own queues (possibly by subclassing QueueConsumer). This will also allow us to  bind to multiple different brokers / vhosts and give us better management of channels and connections.

This is still relevant and #81 didn't make it much easier!
Directly related to https://github.com/onefinestay/nameko/issues/294. The fact that Rpc entrypoints delegate to (possibly) shared RpcConsumers means we have to:

Instantiate the RpcConsumer inside the entrypoint constructor or
Explicitly update __params when new attributes are set post-instantiation so they're not lost using bind() (preferable) and
Add a custom sharing_key to RpcConsumer to make sure we don't reuse instances when they're supposed to have different configurations

This has been superseded by the work in #311. Reliable delivery is now enabled everywhere by default, which is consistent and a more sensible default.


Break out privatenet in separate dockers

Effect AI already does this https://github.com/effectai/neo-dev-toolkit/blob/master/docker-compose.yml and we can always keep the neo-privatenet docker image for developers that need a quick setup, but this caters to more use cases:

Occasionally a node goes offline, we should be able to simply start and restart nodes (potentially even from the CLI!).
In a way, learning to work with consensus nodes (adding a new one to the already existing pool f.e.) can also be a learning experience for developers interested in DBFT.

These two key points are more easily possible if we break out the consensus nodes in separate dockers.

-= Assigned to nunojusto =-

Hours of work on this.
Please use this MVP to test it.
Clone my own git for that:
https://github.com/nunojusto/neo-local/tree/4-isolated-consensus-nodes

@revett and @jeroenptrs
Consensus nodes started like this, but for some reason there's no blocks yet:
NEO-CLI Version: <IP_ADDRESS>

neo> open wallet wallet1.json
open wallet wallet1.json
password: ***
neo> start consensus
[21:13:42] OnStart
[21:13:42] initialize: height=1 view=0 index=2 role=Backup
[21:14:12] timeout: height=1 view=0 state=Backup
[21:14:12] request change view: height=1 view=0 nv=1 state=Backup, ViewChanging
[21:15:12] timeout: height=1 view=0 state=Backup, ViewChanging
[21:15:12] request change view: height=1 view=0 nv=2 state=Backup, ViewChanging

what could be happening?

Found the bug, it was a bad path...

I've created a new branch for neo-local called 4-isolated-consensus-nodes
That way we can test this and if it's OK, we can merge back to master

Another step achieved: One image to rule them all
Consensus nodes are now a single smaller (777MB) standard image spawned in 4 containers.
Notable advantages:

4x faster to build
1/4 storage space

More steps completed:

Multi neo-cli version can be setup from the .env file.
Note: And we can even mix various versions inside the same privatenet, like if it was a testnet/mainnet

Next step is publish the docker image to docker hub.
I'm waiting for a chain to become long enough.

Conainers commited and pushed to the newly official docker repo cityofzion/neo-local-privatenet

https://github.com/CityOfZion/neo-local/pull/92


setup: Check for setuptools version and inform user

fixes #83
debian jessie's (and maybe others?) apt-get ships a rather deprecated version of setuptools (5.5.1). Setup of pyota failed with a rather unclear exiting message:
X@Y:/usr/local/src/pyota$ sudo python setup.py install
error in PyOTA setup command: 'install_requires' must be a string or list of strings containing valid
project/version requirement specifiers

Same with installing via pip. I went through the version log of setuptools and found 'install_requires' was touched in versions 5.5, 20.5. and later. I tested with version 20.7. with which setup was flawless. So, I assume version 20.5. is the minimum requirement.

Hey @HerrMuellerluedenscheid thanks for your pull request!  This is a great idea!
Couple of requests:

Could you change your PR so that it uses develop as the target branch?
Could you modify the error message so that it indicates the minimum setuptools version number?

Thanks @HerrMuellerluedenscheid !  Will do a final review later today.

Looks good!  Thanks!!


KeyError: "No object named 'MambaIRModel' found in 'model' registry!"

Hello,
I encountered an issue while using the basicsr module in your project. Specifically, when I call the build_model(opt) function, I receive the following error:
Traceback (most recent call last):
File "/data1/fengchuang/MambaIR-main/basicsr/test.py", line 46, in
test_pipeline(root_path)
File "/data1/fengchuang/MambaIR-main/basicsr/test.py", line 36, in test_pipeline
model = build_model(opt)
File "/data1/fengchuang/anaconda3/envs/mambair/lib/python3.9/site-packages/basicsr/models/init.py", line 26, in build_model
model = MODEL_REGISTRY.get(opt['model_type'])(opt)
File "/data1/fengchuang/anaconda3/envs/mambair/lib/python3.9/site-packages/basicsr/utils/registry.py", line 71, in get
raise KeyError(f"No object named '{name}' found in '{self._name}' registry!")
KeyError: "No object named 'MambaIRModel' found in 'model' registry!"
I checked the opt configuration and ensured that model_type is set to MambaIRModel. However, it seems that the model cannot be found in the registry.
Could you please advise on how to resolve this issue? Are there any additional steps needed to register the MambaIRModel?
Thank you for your help!

maybe you need to run this command "python setup.py develop" before next operations.

请问你解决了嘛

Have you changed the file name of mambair_model.py and mambair_arch.py? The registry code scans the folder file name to obtain the registried model.
If you have not change the file name, you may give it a shot to remove the basicsr library in your conda environment since all the needed basicsr backends have already exist in the project file './baiscsr'. And you can also find in the ./environment.yaml that basicsr is not installed.

重新装了一下低torch版本就解决啦，谢谢！

don't install baiscsr and modify the /MambaIR/basicsr/test.py can work it out!


Reduce Factory Instance. Communicate via Controller.

Right now some signals are talking straight to the test (such as assertions) but if instead we'd use the TestController as an in between we wouldn't need to instance per test, hopefully reducing our memory footprint (exponentially as tests are added)

Resolved by #f1c8eab178634a7cc015793628c43e04cf2398da


Integrated tyto with Excel-to-SBOL

Added tyto's functionality to Excel-to-SBOL.
Modified the pichia toolkit template.
Modified the converter_functions.py and column_functions.py files

Is this the latest commit? The linting is still failing as is some of the testing (e.g. read_in_sheet is failing which should not fail based on the changes you made). Do you know how to run tests locally and debug them? Or how to read and understand the tests that are currently failing?


Publish Latvian 4.0 license translation

This translation has been signed off by CC Legal and is ready to go live. Please double-check the HTML validation before merging. Thank you! (We will be announcing this translation on the CC blog on October 3, so please publish on or before that day if at all possible.)

@aldenstpage I forgot to mention that this translation currently uses the old legal code formatting because it was created before the redesign, so you'll need to do whatever you did last time to make the update. Thank you!


Fix wait indicator animation

The wait indicator's animation is snappy/jarring because it doesn't transition smoothly

Doesn't happen within lightdm-webkit2-greeter


Added spanish translations and replaced OK and CANCEL text.

Replaced OK and CANCEL text so no translations are needed for them.
(Now using android.R.string.ok and android.R.string.cancel)

Good call with using the system strings, I always forget about those!


Importing component scripts (FR #1457)

A start point for the FR from @tomayac #1457.
In summary, this PR adds the feature to automatically insert <script> elements for AMP components to the <head> element, when the user adds code requiring that component.
Frontend
The frontend adds a module auto-importer which listens for events from the AMP Validator. Where the validation result is a failure, the errors are filtered to determine whether any correspond to missing imports.
The resulting missing imports list is cross-referenced with the parsed state of the <head> element (as the former can sometimes report missing elements that are actually present), to arrive at a list of elements to insert.
The logic for insertion is as follows:

If the AMP engine <script> element already exists, insert any missing <script> component elements directly beneath it.
If the AMP engine does not exist, then insert both the AMP engine and required component elements as the last elements in the <head> element.

Currently more complex scenarios seeking to group together existing elements, sort them etc are not dealt with, but the output of parsing the <head> element does contain what would be required for this.
Backend
The frontend, on initialization, obtains a mapping of AMP component to version number from the backend, using the endpoint  /playground/amp-component-versions
This mapping is formed from the GitHub AMP extensions directory structure (thank you @sebastianbenz).
The mapping returned by the endpoint is stored in Memcache, backed by Datastore. Requests that cause a stale list to be served, trigger an update which is achieved through a named TaskQueue entry.
Demo
An demo can be seen in this video

Looks like Go linting fails, yet running gofmt -l . now shows no files to change. I guess this is what happens to amateurs like me...

Thanks @sebastianbenz for the comments! I will work through them!
On the <amp-carousel> example, this of course comes straight back from the validator, as per on the command-line (example.html containing your HTML):
$ amphtml-validator example.html
example.html:19:2 The mandatory attribute 'lightbox' is missing in tag 'AMP-CAROUSEL [lightbox]'. (see https://www.ampproject.org/docs/reference/components/amp-carousel)
example.html:19:2 The tag 'AMP-CAROUSEL [lightbox]' requires including the 'amp-carousel' extension JavaScript. (see https://www.ampproject.org/docs/reference/components/amp-carousel)
example.html:19:2 The tag 'AMP-CAROUSEL [lightbox]' requires including the 'amp-lightbox-gallery' extension JavaScript. (see https://www.ampproject.org/docs/reference/components/amp-carousel)
example.html:21:2 The tag 'amp-iframe' requires including the 'amp-iframe' extension JavaScript. (see https://www.ampproject.org/docs/reference/components/amp-iframe)

From what I can see in the validator spec for amp-carousel, it looks like the wrong TagSpec is being identified for the amp-carousel: the lightbox mode one compared with the plain one.
I can open a bug against the validator for this one? I think that's probably the appropriate place to try to fix this? What do you reckon? (I ask as I am very new to this....!)

Added: https://github.com/ampproject/amphtml/issues/18091 for the amp-carousel issue.

Hi Sebastian, I think I've made a stab at making the changes. Thank you for the review

Apologies for that Sebastian, I believe it's fixed now. Thanks for the suggestion, my original approach was bad.

Regarding adding components too early, one option might be to inspect the token just before the cursor when a validation error takes place using cm.getTokenAt(). If this is of type tag, then stop the auto-import, as the cursor is within an element tag.
This would mean auto import wouldn't happen til the tag was closed or a space entered to then add attributes.
e.g:
const currentTag = this.editor.getTokenAt(this.editor.getCursor());
if (currentTag.type === 'tag') {
  return;
}

Thoughts?

This sounds like a perfect solution!

I've added:

Handling of errors from GitHub better, and use of authenticated requests to the API
Better logging of errors, including passing back any GitHub HTTP error code through to the client
Delaying auto-import until outside of a tag entry

Should I add some documentation anywhere about use of GitHub API key, and how to set it up in DataStore? Does it fit in the README.md, or is it something that anyone deploying would know already..?

I've added a readme about adding the token to Datastore.

Fantastic Thanks!


Support 0 or 1 argument in Union and Intersect

With 0 or 1 argument, Union and Intersect could behave like this:
Union() === Never
Intersect() === Never
Union(String) === String
Intersect(String) === String

But current implementation doesn't allow that. Usually these usages should be considered deprecated, but it is sometimes useful, for example https://github.com/pelotom/runtypes/issues/38#issuecomment-809003522.

Intersect() should equal Unknown, right?

That should, thanks! That way we will be able to maintain monoid-like abstraction for Union and Intersect.


Gah, this pull request thing totally didn't work out the way I'd expected it to

tab indentations are all wrong, ide files got changed... if it's easier for you then just copy the changes, I don't care if I'm in the commit logs or not. You're welcome to adapt this however you want, I don't really care it's been useful so far though. It probably definitely could stand to get some more testing, and I am testing though I mainly just wanted to get this up here so I can get some idea of where to go with it, if anywhere.
Description:
A logger class that allows a user to attach a handler action; calls to the handler action are made asynchronously to prevent blocking. I'm confident in saything this is a good thing.
Of course when you're dealing with threads there's a lot to take into account. Take a look at line 55 in RiakLogger.cs to see how it works.
I also added the ability to export data for debugging, namely so I could write a cURL request generator. I haven't been able to come up with a way that is particularly safe (other than to do a deep clone of the data that is passed which is annoying and I could care less because I trust myself better than that.) Currently to see how it works, take a look at RiakConnection.cs (you'll see that I called Debug() with an anonymous type as the first parameter as the carriage for various objects that I wanted to look at.
Here's the code for using the debugger/logger. It's currently not the best example of a log handler but just to give you an idea, this is what I hoped to accomplish and to some degree have:
            CorrugatedIron.RiakLogger.Instance.AddErrorLevel(RiakLogLevel.Debug);
			// may need to spend a lot of time looking for stuff in the debugger... 150 seconds
			CorrugatedIron.RiakLogger.Instance.SetAsyncCallbackTimeoutPeriod(150000);
			CorrugatedIron.RiakLogger.Instance.Output += (logdata) =>
			{
				//Notes:
				// A better way for people to use this thing would be to get what they need out of it into a concurrent queue
				// and deal with it off thread since the max lifetime of the thread by default is 500 msecs
				try
				{
					// dump data if any
					if(logdata.debugging.Any(a => a.GetType().GetProperty("request") != null))
					{
						// Write message
						Log.WriteLine(logdata.level.ToString() + ": " + logdata.message);

						// parse payload
						foreach(object obj in logdata.debugging)
						{
							if(obj.GetType().GetProperty("request") != null)
							{
								// yay for anonymous types and dynamic
								var request = obj.ToDynamic().request;
								if(request.GetType() == typeof(CorrugatedIron.Messages.RpbSetBucketReq))
								{
									var rRequest = (CorrugatedIron.Messages.RpbSetBucketReq) request;
									string bucket = (rRequest.bucket != null) ? Encoding.Default.GetString(rRequest.bucket) : "";
									Log.WriteLine("(Riak SetBucketReq) | Bucket: " + bucket);
								}
								else if(request.GetType() == typeof(CorrugatedIron.Messages.RpbGetReq))
								{
									var rRequest = (CorrugatedIron.Messages.RpbGetReq) request;
									string bucket = (rRequest.bucket != null) ? Encoding.Default.GetString(rRequest.bucket) : "";
									string bucketType = (rRequest.type != null) ? Encoding.Default.GetString(rRequest.type) : "";
									string Rkey = (rRequest.key != null) ? Encoding.Default.GetString(rRequest.key) : "";
									Log.WriteLine("(Riak RpbGetReq) | Bucket: "
										+ bucket
										+ " | BucketType: "
										+ bucketType
										+ " | Key: "
										+ Rkey);
								}
								else if(request.GetType() == typeof(CorrugatedIron.Messages.RpbIndexReq))
								{
									var rRequest = (CorrugatedIron.Messages.RpbIndexReq) request;
									string bucket = (rRequest.bucket != null) ? Encoding.Default.GetString(rRequest.bucket) : "";
									string bucketType = (rRequest.type != null) ? Encoding.Default.GetString(rRequest.type) : "";
									string index = (rRequest.index != null) ? Encoding.Default.GetString(rRequest.index) : "";
									string Rkey = (rRequest.key != null) ? Encoding.Default.GetString(rRequest.key) : "";

									Log.WriteLine("curl -vvv -X POST http://localhost:8098/types/"
										+ bucketType
										+ "/buckets/"
										+ bucket
										+ " -H 'riak-index-" + index + "-bin: " + Rkey +"'");
								}
								else
								{
									// Set a breakpoint here, look for stuff
									//request	{CorrugatedIron.Messages.RpbIndexReq}	CorrugatedIron.Messages.RpbIndexReq
								}
							}
						}
					}
				}
				catch(Exception ex)
				{
					// should always have try catch blocks in the log handler, otherwise the exception is caught
					// in a try catch block in riak and is Console.Writelined.
					Log.WriteLine("Riak log handler exception: " + ex.Message);
				}
			};

to use that code you also need the dynamic extensions class I found... (I think on stackoverflow)
public static class DynamicExtensions
	{
		public static dynamic ToDynamic(this object value)
		{
			IDictionary<string, object> expando = new ExpandoObject();

			foreach (PropertyDescriptor property in TypeDescriptor.GetProperties(value.GetType()))
				expando.Add(property.Name, property.GetValue(value));

			return expando as ExpandoObject;
		}
	}

you will also need
using System.ComponentModel;
using System.Dynamic;

to use the dynamic extension.
It's been real useful to me so far, this is what it does:
<Main>m__0 : Debug: protocol buffer WriteRead
----
<Main>m__0 : curl -vvv -X POST http://localhost:8098/types/UserData/buckets/SocialMedia2_erratic -H 'riak-index-ObjectType-bin: de.netcrave.Zombielet.ZombieletPost'

from the code:
var streamClient = BackendManager.Instance.GetStreamStore();

			var indexResult = streamClient.GetSecondaryIndex(new RiakIndexId(
				SettingsManager.Instance.settings.StreamBucketType,
				SettingsManager.Instance.settings.StreamBucketName + "_" + username,
				"ObjectType"), t.ToString());

obviously trying to figure out how to generate a proper curl request and such still, but at least now I have a means to troubleshoot whats going on and figure out a solution.

Hi @paigeadele - we've got logging on the post-2.0 release TODO list.


Update peerDependencies

@warmrobot can you please update peerDependencies to match your project requirements ?
"grunt": "~0.4.4"`
Don't understand why you downgrade your package.json in your last commit 8f8aeaafb3aa85a99657c94f3330159393669ef5
Thanks !

Can you publish the new version (v0.1.3) to npm? Thank you for your reactivity


Add a notice that bus and shuttle times are approximate and not live

See title.


refactor: use svelte component to open modal

:tada: This PR is included in version 1.9.3-alpha.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

:tada: This PR is included in version 1.9.3 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Add debug mode for Horizontest

This patch introduces new option for test-operator that keeps the pod running after a successful run or even after a failure has occurred. It resolves the issue that oc rsh session is killed once the execution of the run_horizontest.sh file finishes.

Thanks for the PR @ashu-011! :1st_place_medal:
The pre-commit is failing:
{  rd/bases/test.openstack.org_horizontests.yaml
@@ -70,6 +70,14 @@ spec:
               dashboardUrl:
                 description: DashboardUrl is the URL of the Horizon dashboard.
                 type: string
+              debug:
+                default: false
+                description: Activate debug mode. When debug mode is activated any
+                  error encountered inside the test-pod causes that the pod will be
+                  kept alive indefinitely (stuck in "Running" phase) or until the
+                  corresponding Tobiko CR is deleted. This allows the user to debug
+                  any potential troubles with `oc rsh`.
+                type: boolean
               flavorName:
                 default: m1.tiny
                 description: FlavorName is the name of the OpenStack flavor to create
@@ -88,14 +96,6 @@ spec:
                 default: http://download.cirros-cloud.net/0.6.2/cirros-0.6.2-x86_64-disk.img
                 description: ImageUrl is the URL to download the Cirros image.
                 type: string
-              debug:
-                default: false
-                description: Activate debug mode. When debug mode is activated any
-                  error encountered inside the test-pod causes that the pod will be
-                  kept alive indefinitely (stuck in "Running" phase) or until the
-                  corresponding Tobiko CR is deleted. This allows the user to debug
-                  any potential troubles with `oc rsh`.
-                type: boolean
               kubeconfigSecretName:
                 description: Name of a secret that contains a kubeconfig. The kubeconfig
                   is mounted under /var/lib/horizontest/.kube/config in the test pod.
{"component":"entrypoint","error":"wrapped process failed: exit status 1","file":"sigs.k8s.io/prow/pkg/entrypoint/run.go:84","func":"sigs.k8s.io/prow/pkg/entrypoint.Options.internalRun","level":"error","msg":"Error executing test process","severity":"error","time":"2024-09-20T09:31:29Z"}
}

Try using make generate and make manifests when updating the CRD.
Also, you can run the pre-commit locally by following the steps here [1].
[1] [https://github.com/openstack-k8s-operators/test-operator?tab=readme-ov-file#contributing]

@ashu-011, there are still formatting issues:
index f0cc9fe..14230c3 100644
--- a/api/bases/test.openstack.org_horizontests.yaml
+++ b/api/bases/test.openstack.org_horizontests.yaml
@@ -75,8 +75,8 @@ spec:
                 description: Activate debug mode. When debug mode is activated any
                   error encountered inside the test-pod causes that the pod will be
                   kept alive indefinitely (stuck in "Running" phase) or until the
-                  corresponding HorizonTest CR is deleted. This allows the user to debug
-                  any potential troubles with `oc rsh`.
+                  corresponding HorizonTest CR is deleted. This allows the user to
+                  debug any potential troubles with `oc rsh`.
                 type: boolean
               flavorName:
                 default: m1.tiny
diff --git a/config/crd/bases/test.openstack.org_horizontests.yaml b/config/crd/bases/test.openstack.org_horizontests.yaml
index f0cc9fe..14230c3 100644
--- a/config/crd/bases/test.openstack.org_horizontests.yaml
+++ b/config/crd/bases/test.openstack.org_horizontests.yaml
@@ -75,8 +75,8 @@ spec:
                 description: Activate debug mode. When debug mode is activated any
                   error encountered inside the test-pod causes that the pod will be
                   kept alive indefinitely (stuck in "Running" phase) or until the
-                  corresponding HorizonTest CR is deleted. This allows the user to debug
-                  any potential troubles with `oc rsh`.
+                  corresponding HorizonTest CR is deleted. This allows the user to
+                  debug any potential troubles with `oc rsh`.
                 type: boolean
               flavorName:
                 default: m1.tiny

Thank you @ashu-011!
P.S.: Please, next time try to keep the width of each line in the body of a commit messages under 72 chars.

@lpiwowar Apologies man , I didn't pay attention but I will make sure to keep this in mind next time . Thanks!

@ashu-011 no problem:). It was just a tip for the future.


Add a way to dynamically set a hidden field's value

Is it possible to set the value of a widget? I tried several variations on the following:
forms.create({
	_csrf: forms.widgets.hidden({ value: 'a csrf token' })
}).toHTML()

I assume that I'm doing it wrong, so I asked a question on SO showing my other attempts. @ljharb mentioned in #70 that this should be simple, but I'm not feeling too bright right now. I tried using fields.string({ type: hidden, value: 'a csrf token' }), but that's not right either.

My situation is quite similar to d4goxn. And I just need to a value attribute and put the csrfToken in it.But wired, I try this:
    var loginForm = forms.create({
         username: fields.string({ required: validators.required('xxxx') }),
         password: fields.password({ required: validators.required('xxxx') }),
        csrfToken: widgets.hidden({
            required: true
        })
    }).bind({ fields:{ csrfToken: req.csrfToken() }});

"no bind function error"
and this:
    var loginForm = forms.create({
         username: fields.string({ required: validators.required('xxxx') }),
         password: fields.password({ required: validators.required('xxxx') }),
        csrfToken: widgets.hidden({
            required: true
                 value: req.csrfToken()
        })
    });

I dump the csrf value, it's there. But at the end, the form didn't have a value attribute.
And I try 'value':req.csrfToken() too.
it dosen't work too.
pls help, thnks.

In your second snippet you're missing a comma - is that just a copy/paste error, or is that in your original code?
As for "no bind function error" can you gist the actual output you're getting?

Thanks your reply.
The second snippet syntax error just a copy/paste mistake. The code is find.
'no bind function error' detail :
TypeError: undefined is not a function
   at /Users/jamesying/Desktop/lc/node_modules/forms/lib/forms.js:36:47
   at Array.forEach (native)
   at Object.f.bind (/Users/jamesying/Desktop/lc/node_modules/forms/lib/forms.js:34:35)
   at /Users/jamesying/Desktop/lc/routes/articles.js:25:8
   at Layer.handle [as handle_request] (/Users/jamesying/Desktop/lc/node_modules/express/lib/router/layer.js:82:5)
   at next (/Users/jamesying/Desktop/lc/node_modules/express/lib/router/route.js:110:13)
   at csrf (/Users/jamesying/Desktop/lc/node_modules/csurf/index.js:97:5)
   at Layer.handle [as handle_request] (/Users/jamesying/Desktop/lc/node_modules/express/lib/router/layer.js:82:5)
   at next (/Users/jamesying/Desktop/lc/node_modules/express/lib/router/route.js:110:13)
   at Route.dispatch (/Users/jamesying/Desktop/lc/node_modules/express/lib/router/route.js:91:3)

Yes, I am making another form. But I use the same way to create the form.

@elantion This discussion should really go in a brand new issue. Can you file one?

sure, I will do it.