fix(ingestion/transformer): Add container support for ownership and domains

Checklist

[ ] The PR conforms to DataHub's Contributing Guideline (particularly Commit Message Format)
[ ] Links to related issues (if applicable)
[ ] Tests for the changes have been added/updated (if applicable)
[ ] Docs related to the changes have been added/updated (if applicable). If a new feature has been added a Usage Guide has been added for the same.
[ ] For any breaking change/potential downtime/deprecation/big changes an entry has been made in Updating DataHub

add

Done, added TC for containers

Needs tests
You can add or update tests in tests/unit/test_transform_dataset.py

Done, added TC for containers


caching landsat scenes/images and gdal for travis-ci

using travis-ci caching mechanism to speed-up builds

Coverage decreased (-0.006%) to 52.087% when pulling 117de8516f058353a3c6c62e16d5c604db56e2d2 on cachelandsat into b2348541f0acbb88adf5c81f8b1d0c7b348d35de on master.


port to neoforge

forge bad

Yeah I wanted to port it either to either neoforge or fabric since I've heard fabric is a lot easier and more intuitive.
I'll probably port it to neoforge some time and then all following updates will be on that version.


workflow properties toggle button css issue fixes

@nmaludy This change isn't going into the master branch.  It's a fix going to be merged into the integrate-st2flow feature branch. We will have a changelog specific to the feature integration when that super PR is ready.
@shital-orchestral Just clean up the commented out code and I'll approve the change here.


Ninth view column and discard buttons obscured by scroll bars

Checked for duplicates
Yes - I've already checked
Is this a regression?
No - This is a new bug
Version
aerie-ui-1.11.0
Describe the bug
When using Chrome on Mac with nine or more views in the view list opened by "Browse saved views," the ninth row is obscured by the scroll bar.

Note that the horizontal scroll bar should not be there since there is plenty of room for the columns of the table.  In addition, the right discard (trash can) button in the far right column is obscured by the vertical scroll bar.  Resizing the columns of the table does not fix this.
This occurs for large and small browser window sizes.  Increasing the zoom mitigates the problem but the row and column are still partially obscured.
Reproduction
With Chrome on Mac

Use "Save as" in the view menu drop-down to add views until there are nine or more.
View them using the "Browse saved views" item in the view menu drop-down.
Note the obscured ninth view.
Scroll vertically to see the scroll bars.
Hover the cursor over the right side of the table for any of the view rows and note that the third icon (trash can), is obscured.

Logs
No response
System Info
Chrome, Mac

Severity
Minor

Safari on Mac does not have this problem.

This issue does not seem to appear in aerie 1.13.0 though the similar bug with the plans table is still present in that release. @bradNASA would you mind double checking on the aerie dev server?

Closing as improvements to table resizing seem to have resolved this issue. @bradNASA feel free to re-open if you still see this issue with more recent versions of the UI.


Kotlin native portion of download failing

Describe the bug
For versions 1.9.21 and up, the plugin is producing an error on download.
Steps to reproduce
When running asdf install with the following .tool-versions file:
kotlin 1.9.24

The following error occurs

Same behaviour occurs when running: asdf install kotlin 1.9.24

I uninstalled and reinstalled and it seemed to resolve itself - weird issue

Same here, I fixed by running asdf plugin update kotlin


Adding German Translation and the Admin Dashboard-Page is fully Translateable.


use BEAM=3 in benchamrk CI

how long does it take, and is the output faster?

very minor improvement, not worth the extra 50% search time


Add directory as an option to checkpoint commands

containerd provides support for providing the storage location for checkpoints, and this exposes that same support at the docker level. (This is useful when you want to create multiple containers from a single checkpoint).
Signed-off-by: Ross Boucher<EMAIL_ADDRESS>

Honestly, I think I'm 👎  on this.
Storage of checkpoints should be managed by Docker, not by a docker user.

So, by default storage is managed by Docker. I feel like this fits in with the notion of batteries included but swappable. Not allowing you to specify the location of checkpoints is actually very limiting, and will basically force people to just go in and muck around anyway, with added expensive move operations.

Thanks for this PR.
We have moved the code from this repo back into the main docker/docker repository; if you still wish to make this change you will need to reopen this PR on the main repo.
You can find the code for the client and types here:
https://github.com/docker/docker/tree/master/api/types
https://github.com/docker/docker/tree/master/client
Sorry for the inconvenience but making this change helps people better contribute and not have the vendor mess going forward when changing the types or client for Docker.
Sorry about that and feel free to ask if you have any questions.


[CLOUDGA-17429]: Add Azure CMK support to Terraform

Summary:
This PR adds support for Azure CMK:

Create a cluster with Azure CMK
Update state of Azure cmk
Enable/disable azure cmk

Additionally, also fixed a backupDescription related issue in this PR.
cannot use &backupDescription (value of type *string) as openapi.NullableString value in assignment

As you have update the managed import you need to regenerate the mock api, https://github.com/uber-go/mock
For example for the AccountApi
mockgen -destination=./mock_yugabytedb_managed_go_client_internal/mock_api_account.go  -build_flags=--mod=mod github.com/yugabyte/yugabytedb-managed-go-client-internal  AccountApi

Please address the comment from Gwenn.

Addressed all the comments, please TAL.


Denisarray01

Description
Problem Solved
Please include the name of the problem solved
NOTE: only one pull request per problem is accepted.
Also, if a pull request solves multiple problems, only one of the solved problems will be add to the user points (and therefore the leaderboard)
Dependencies and Reason
List any dependencies that are required for this solution and the reason why you used these dependencies
List of Developers
This solution has been implemented by the following Developers:

@GithubProfileTag

Checklist:

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] My changes generate no new warnings
[ ] I have checked my code and corrected any misspellings

NOTE: the PR have to be labelled in-progress until the work is complete, the PR will be checked, reviewed and merged only after being labelled as complete

Hai messo 2 problemi in uno stesso branch

Crea un branch separato per il secondo problema
Elimina il secondo problema da denisarray01 così scompare anche da questa Pull Request


config.json: add topics to etl

I don't think the dificulty needs to be changed for this. (#345)

note: this is out of order, as I've just completed it.


Random Tile Function stopped working

Foundry V12 330
Moulinette Core 12.0.0 / Tiles 12.1.3
Issue: Clicking on the canvas does not spawn a random tile, throws error.
Process: Going to the Tiles Tool and selecting Moulinette Tiles, then clicking the dice icon in front of the works fine. Right-clicking on the canvas only moves to Tiles Layer (does not cycle). Left-clicking on the canvas throws an error instead of creating a tile.
Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'getRandomAsset')     at MoulinetteTiles.onLeftClickGrid (moulinette-tiles.js:829:47)     at moulinette-layer.js:49:53     at Array.forEach (<anonymous>)     at MoulinetteLayer._onClickLeft (moulinette-layer.js:49:29)     at #onClickLeft (foundry.js:25816:59)     at MouseInteractionManager.callback (foundry.js:30823:17)     at #handleClickLeft (foundry.js:31024:15)     at #handleLeftDown (foundry.js:31006:38)     at #handlePointerDown (foundry.js:30970:58)     at vh.notifyListeners (EventBoundary.ts:1454:26)     at vh.notifyTarget (EventBoundary.ts:662:18)     at vh.propagate (EventBoundary.ts:299:14)     at vh.dispatchEvent (EventBoundary.ts:210:14)     at vh.mapPointerDown (EventBoundary.ts:683:14)     at vh.mapEvent (EventBoundary.ts:231:28)     at ra.onPointerDown (EventSystem.ts:373:31)

Thank you for reporting this!
I found an issue with Tiles 12.1.3 and implemented a fix in v-12.1.4.
However, you should upgrade Core to 12.1.1, too. 12.0.0. is pretty old.
I think your error message is due to incompatibility between core and tiles.
I close this issue but feel free to reopen it if it's still not fixed for you

Reopening for a potentially bigger issue: My Moulinette Core is up-to-date according to the Foundry browser, no newer version than 12.0.0 available. Same if I reinstall the module. Same thing on a different instance I'm running local - it is not possible to upgrade Core.


Fix escaping of strings and None values in argo workflow parameters

The original code appears to have a bug where the comment says and but the code says or.  I believe the original intent is to handle the case where, for a parameter that was not required, there was no default value specified for it (hence the defaultValue evaluates to the python None).  This translates to a JSON null (unescaped) which Argo-workflows does not like as a default parameter value in its arguments.  In order to work around this, the code intended to create some non-null value but ended up creating the string "null" rather than something that represents no value.  It's unclear what consequences this has had on non-required parameters that were not specified at trigger time.
Moreover, because of the logical bug in the code, the JSON encoding was being applied to non-required string parameters with a non-null default value as well.  The resulting JSON had a bunch of extra escaped quotes (eg: \"\\\"defaultStringValue\\\"\" instead of \"defaultStringValue\" which is both unnecessary and confusing.
To fix this, we're assigning unspecified default values for non-required parameters to an empty string.  This works as intended for strings - an unspecified parameter default resolves to an empty string (where it previously resolved to the non-null string value "null").  This new behavior is arguably more intuitive than the old.
NOTE: For non-strings this behavior is unchanged because the previous default value of "null" was also a string.  Python's typing of the parameter from the creation of the FlowSpec object, will result in a type assignment failure eg: Error: Invalid value for '--notRequiredIntParameterWithNoDefault':  is not a valid integer which the user can then see and correct.

Abandoning this PR since the current behavior is as desired and not a bug.


[8.x] Allow model resources to define their own response class

Motivation:
We have strict API standards that we need to follow in our responses, for pagination; we need to return a single cursor value. I would like to create a base pagination resource response class that our application can use for all resources.
Benefits:
This will give folks more flexibility while maintaining BC
Resource response to be resolved by the container, allowing folks to DI any other classes into their response class -- for example a custom cursor.

Have you considered using the Responsable interface instead of API Resource?

@deleugpn Yes, but i would like to utilize the helpers that come with API resources, mergeWhen, mergeWhenLoaded, etc.. I also want us to continue to follow the framework way, easier for new folks to understand since laravel is well documented.

@huskicsuad You might not even need this sense the current JsonResource and ResourceCollection classes both contains an empty withResponse method. You might be able to utilize this method to define what ever logic you desire.
You have access to the original content within the property original on the response object.
Not sure tho just a thought.

@morloderex -- can yo share more details on that? I tried messing around with withResponse but it ended up being very hacky


feat: revise Axiom logo for light background

As requested here

@seiflotfy would we need new release for this?


fix setup reqs, removed cpan pining as neccesery for debian testing

@atrakic
Thanks for the patch!


Vault Theft Recovery

Is your feature request related to a problem? Please describe.
Operational errors or implementation bugs may cause Vaults to mistakenly spend or double-spend Bitcoin, causing them to be liquidated for theft. The interbtc protocol does not allow operators to prevent liquidation, even if they are willing to send the Bitcoin back to a registered Vault address.
Describe the solution you'd like

Extend the current VaultStatus enum to:

enum VaultStatus {
  Active(bool),
  Liquidated,
  CommittedTheft,
  PendingLiquidation(amount, recovery_deadline_block), // <--- new field
}

Add a storage value, TheftRecoveryPeriod, denoting a number of parachain blocks. This is the grace period during which a Vault may report a confirmed Bitcoin transaction that restores stolen funds.
Add an extrinsic: recover_theft(vault_id, merkle_proof, raw_tx, active_status). See description below.
Add an extrinsic: pending_liquidation_elapsed(vault_id). See description below.

A valid report_vault_theft(...) extrinsic changes a Vault’s status from Active(...) to PendingLiquidation(amount, TheftRecoveryPeriod::get()). The Vault’s collateral is frozen rather than being transferred to the Liquidation Vault, reusing the approach in the slash_for_to_be_redeemed() method.
Subsequent thefts from the same reported VaultId increase the amount stored in the PendingLiquidation status, without extending the recovery deadline. When the recovery period elapses, the vault’s status is set to CommittedTheft.
Triggering of the PendingLiquidation deadline can be performed either by off-chain workers, or by storing an on-chain heap data structure which stores VaultIds and is sorted in ascending order by the recovery_deadline_block. This is done by sending a pending_liquidation_elapsed(vault_id) extrinsic.
A valid recover_theft(vault_id, merkle_proof, raw_tx, active_status) extrinsic decreases the amount stored in the PendingLiquidation status, and if this amount reaches zero, the Vault's status becomes Active(active_status).
Current valid VaultStatus state transition:
Active(_) ---report_vault_theft---> CommittedTheft

Summarizing the above, the proposed extension to the CommittedTheft state transition:
Active(_) ---report_vault_theft(amount)---> PendingLiquidation(amount, TheftRecoveryPeriod::get())
PendingLiquidation(_,_) ---pending_liquidation_elapsed---> CommittedTheft
PendingLiquidation(amount, deadline) ---report_vault_theft(stolen_amount)---> PendingLiquidation(amount + stolen_amount, deadline)
PendingLiquidation(amount,_) ---recover_theft(recovered_amount)---> PendingLiquidation(amount - recovered_amount, deadline), if recovered_amount < amount
PendingLiquidation(amount, _) ---recover_theft(recovered_amount, active_status)---> Active(active_status), if recovered_amount >= amount

Additional context
Historic theft reports are stored on-chain, so recovered Active Vaults are not in danger of being liquidated again for the same Bitcoin transaction.
This feature can be exploited to allow a Vault operator to back more wrapped tokens than the physical Bitcoin it holds. The operator only needs to ensure that they cycle the physical Bitcoin through all the VaultIds they registered, every TheftRecoveryPeriod blocks. This can be mitigated by slashing a small amount of collateral when the Vault becomes active again - however this means that Vault Liquidation Recovery would slash the vault if they already spent the Bitcoin after becoming undercollateralized.

Thanks for writing up this issue, it's a good starting point. Before we move to implementation, though, we should think about edge cases. Some from the top of my head that need to be discussed and probably have tests:

[ ] what happens to the collateralization rate if you call slash_for_to_be_redeemed?
[ ] what happens when the vault gets below the liquidation threshold while it is in the PendingLiquidation state. If you previously moved using slash_for_to_be_redeemed, will the correct amount be confiscated?
[ ] What happens if a redeem is cancelled (reimbursed) while in the PendingLiquidation state that requires the locked collateral?
[ ] We need a new storage field storing all transactions reported by recover_theft to prevent transactions from being reported multiple times
[ ] This feature effectively allows the vault to loan bitcoin, which we should disincentivize -> we should probably take some punishment fee. To really disincentivize loaning the punishment needs to be proportional to the theft, but this will also place bigger vaults at higher risk.
[ ] what actions are still allowed on vaults in the PendingLiquidation state? For sure open requests (issue and redeem) should be able to be fulfilled. But we'll probably should disallow new requests, similarly to banned vaults

Triggering of the PendingLiquidation deadline can be performed either by off-chain workers, or by storing an on-chain heap data structure which stores VaultIds and is sorted in ascending order by the recovery_deadline_block. This is done by sending a pending_liquidation_elapsed(vault_id) extrinsic.

This could also be an incentivized action, i.e. some of the theft report fee could go to the account who submits pending_liquidation_elapsed(vault_id).

While possible, I think it'd make more sense for the off-chain worker to do this

@sander2

what happens to the collateralization rate if you call slash_for_to_be_redeemed?
what happens when the vault gets below the liquidation threshold while it is in the PendingLiquidation state. If you previously moved using slash_for_to_be_redeemed, will the correct amount be confiscated?

What I'm suggesting is that when a vault enters PendingLiquidation status, it is just like sending a report_vault_theft(...) extrinsic currently, but the liquidate(...) method treats the issued and to_be_issued tokens just as it currently does the to_be_redeemed ones. They are still moved to the liquidation vault. The change is equivalent to setting collateral_for_to_be_redeemed here to the entire backing_collateral of the vault.
However, one thing I just noticed and was not aware of is that the current implementation does not liquidate collateral that backs to_be_redeemed_tokens even in case of undercollateralization, which is too permissive even now in my opinion. If this is changed to actually move the collateral to the Liquidation Vault in case of undercollateralization, then we can reuse the liquidate(...) method with the modification in the paragraph above.

What happens if a redeem is cancelled (reimbursed) while in the PendingLiquidation state that requires the locked collateral?

Nothing would change there, the execution path would reach this line: https://github.com/interlay/interbtc/blob/3028edd3baaba7a1aeed35bd81f65c0958259d64/crates/redeem/src/lib.rs#L549
vault.is_liquidated() would return true for the PendingLiquidation status as well.

We need a new storage field storing all transactions reported by recover_theft to prevent transactions from being reported multiple times

Makes sense.

This feature effectively allows the vault to loan bitcoin, which we should disincentivize -> we should probably take some punishment fee. To really disincentivize loaning the punishment needs to be proportional to the theft, but this will also place bigger vaults at higher risk.

We can slash a small percentage of collateral on recovery, though this makes recovery from undercollateralization (with spent Bitcoin) more costly.

what actions are still allowed on vaults in the PendingLiquidation state? For sure open requests (issue and redeem) should be able to be fulfilled. But we'll probably should disallow new requests, similarly to banned vaults

The assumption would be that the vault maliciously spent the Bitcoin until proven otherwise, so it should be "quarantined" / banned, yeah.

@sander2 @gregdhill @nud3l I'd like to suggest simply banning vaults rather than adding an intermediary step to confiscating collateral. The vault's status is still set to PendingTheft(...), but it would ensure no edge cases are introduced. Otherwise, critical logic in the code would need to be changed, such as cancel_redeem.
The downsides of simply banning vaults rather than freezing their collateral or calling slash_for_to_be_redeemed on them are:

Vaults would be able to withdraw collateral that backs tokens which were not stolen
A race condition would be introduced, since TheftRecoveryPeriod would be replaced by the PunishmentDelay. Vaults could become unbanned before someone triggers liquidation. If there is an overlap of one block between the ban being active and pending_liquidation_elapsed() being callable it's probably fine though.
Rewarding theft reporters has to be refactored out of the liquidate method, but this looks fairly simple

In spite of the above, all concerns raised in the previous comments would be removed:

Vaults in PendingTheft status would still be liquidated for undercollateralization, like an active vault
No new requests can be made to PendingTheft vaults
Vaults are punished using the report-theft fee, so they would not abuse this feature
Handling of pending / cancelled requests would not change at all

If we can reuse existing logic, I think then it's the right approach to do so.
Questions/comments:

The downsides of simply banning vaults rather than freezing their collateral or calling slash_for_to_be_redeemed on them are:

Vaults would be able to withdraw collateral that backs tokens which were not stolen (by redeeming or requesting to replace)
That is fine. They would only be able to withdraw the collateral if they fulfill the requests.

A race condition would be introduced, since TheftRecoveryPeriod would be replaced by the PunishmentDelay. Vaults could become unbanned before someone triggers liquidation. If there is an overlap of one block between the ban being active and pending_liquidation_elapsed() being callable it's probably fine though.

Is there a way to ensure that there is no race conditions? We should make sure vaults are liquidated. If they are unbanned, users might request to issue and send BTC to a vault that should be liquidated.
My suggestion (which adds some extra checks) is to treat any Vault as banned as long as it's in the PendingTheft. That way, the Vault might be "unbanned" but it's still being treated as being banned before the liquidation is executed.

My suggestion (which adds some extra checks) is to treat any Vault as banned as long as it's in the PendingTheft. That way, the Vault might be "unbanned" but it's still being treated as being banned before the liquidation is executed.

I agree, this seems to most elegant - we can impose the restrictions of banned vaults without actually touching the banned_until field just by adding a check for PendingTheft status here.

Theft reporting removed in #677


feedback_email test fails due to line wrapping in email

The test_send_error_to_admins test for nomcom feedback email fails if the path to the feedback_email.py file is long enough to cause line wrapping in the email handling. It searches for "feedback_email.py" in the email content, but this has "=\n" inserted in it when it is wrapped.
Should update the test to take this into account

I think this may have already been done? Please confirm, and if it has, close the issue?

Yes, was fixed by #3926 I think


New version: Spotify.Spotify version <IP_ADDRESS>1.g9440c6cf

[X] Have you signed the Contributor License Agreement?
[X] Have you checked that there aren't other open pull requests for the same manifest update/change?

[ ] Have you tested your manifest locally with winget install --manifest <path>?
[X] Does your manifest conform to the 1.4 schema?

Microsoft Reviewers: Open in CodeFlow

Pipelines do not currently support Elevation prohibited. @stephengillie will need to manually review


Transition from cpplint to clang-tidy

The cpplint utility is not clearly documented and missing functionality for excluding files from the top level directory. Migrating to clang-tidy would make linting easier.

Right now userConfig.c and all of the bme280 library source code are excluded.


[3.x] BulletPhysicsServer::area_get_space: null check

This is now the same as e.g. body_get_space.
Fixes https://github.com/godotengine/godot/issues/60113.

Thanks!

Cherry-picked for 3.4.5.


[stable/minio] Bump version minio

Signed-off-by: Login Victor<EMAIL_ADDRESS>
What this PR does / why we need it:
Which issue this PR fixes
(optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged)

fixes #

Special notes for your reviewer:
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[x] DCO signed
[x] Chart Version bumped
[x] Variables are documented in the README.md
[x] Title of the PR starts with chart name (e.g. [stable/chart])

/assign @nitisht
/assign @wlan0

/ok-to-test
/assign
/lgtm


In-Chat Wiki (approach) Floods View

Camperbot's wiki invocation (via such commands as explain, help, etc.,) results in, potentially, large wiki pages that can contain: multiple lines, static (or dynamic gif) images and other media that disrupts the chat window (both on desktop/ and mobile platforms). Would it be possible to limit summary to 2-4 lines and provide the actual link to the wiki?

:+1:

when i wrote this before, i trim it up to the first heading. but that means people need to know that, and always put a first heading near the start of the wiki entry.
i think i put a character cut off in there too, but sometimes that chopped off html in the middle of a tag, so it screwed up other markup. you'd need to be smarter about where you edit. maybe split the text on newlines and trim there?

That's a good point (about the cutoff of html) tags, I was thinking about the practicality of this (because, there would need to be a parallel styling change to wikis (and existing wikis (even with a bash script would be a PITA but doable) not sure there would be overall support to effort

Closing as a wontfix.
https://github.com/FreeCodeCamp/camperbot/issues/103


e2e tests: automate tests

(from HackMD list)

Stale, e2e has progresses towards automation and other tasks capture the same.


@safe setter for driver

Track number of open files/sockets in driver to allow @safe setting/swapping of the IO Driver.

You may be able to migrate the open files as well, if you pull them out of the current driver as file descriptors, and open them in the new driver.

That meant keeping track of all open files within the driver, not a reasonable option. Also driver changes don't seem to have a use-case.
Furthermore an async driver would mark sockets as non-blocking during opening, migrating such flags seems unfeasible either.

I actually meant manually, not automatically . I’m thinking of the standard handles which you don’t want to close.

I agree that changing drivers mid-program doesn't really have a great use case. However, it should be supported on entry to main.

btw, you can store shared driver in TLS:
struct LocalShared(T)
{
	shared T value;
	alias value this;
}
LocalShared!Driver _driver;


We need to execute stylecop ruleset from command line.

We have used StylecopCLI.exe to execute the rulesets but it does contain its own dll which we cant included in our porject.So is der any specific nuget package or any other tool available.
From Visual studio we were able to add the nuget to our project and by running from visual studio its is possible to perform code anaylsis even with customized ruleset.
While trying from a batch file it will first combile the code at that time it will refers the dll for rules instead of customized rules and all  warning related to all rules are displayed i console..

Duplicate of #2571


Remove PyO3 clippy workaround once 0.17 is release

Environment
Delta-rs version:
main branch
Binding:
Python
Environment:

Cloud provider: NA
OS: linux
Other: NA

Bug
What happened: A clippy inner attribute was added to work around a lint error that comes from the PyO3 project in conjunction with the Rust 1.63.0 release.
What you expected to happen: The project should build without lint checks disabled.
How to reproduce it: N/A
More details:  The PyO3 ticket is expected to be resolved Tuesday 2022-08-23 with the 0.17 Release.
Fix: The following line should be removed, and the build is expected to succeed.

Arrow just updated their version of pyo3 to 0.17, and that change is still awaiting release. In the meantime that is preventing cargo update from succeeding. Hopefully that fix will get released soon.


feat(shwap/store): Add q4 trimming support in store

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

Please upload report for BASE (shwap@1502153). Learn more about missing BASE report.

Files with missing lines
Patch %
Lines

store/store.go
60.97%
10 Missing and 6 partials :warning:

store/metrics.go
23.52%
13 Missing :warning:

pruner/full/pruner.go
0.00%
1 Missing :warning:

Additional details and impacted files
@@           Coverage Diff            @@
##             shwap    #3680   +/-   ##
========================================
  Coverage         ?   46.69%
========================================
  Files            ?      312
  Lines            ?    17781
  Branches         ?        0
========================================
  Hits             ?     8303
  Misses           ?     8470
  Partials         ?     1008

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


Finish hdf5 1.14.4 (Windows)

impi 2021.13 seems broken, which is preventing this migration from completing, because there is not:

2021.12 builds of the new hdf5, nor
2021.13 builds with the older hdf5

so the only way to test impi 2021.13 is by upgrading hdf5. The failing tests don't involve hdf5 at all, though. It's extremely basic communicator setup that appears to fail. Super weirdly, though, exercising mpi via mpi4py doesn't trigger any issue. Maybe it's the C++ interface? There is no useful debugging output that I can find.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe/meta.yaml) and found it was in an excellent condition.

Discussing on the fenics slack, it may actually be related to mpi4py 4 which is also only available with impi 2021.13

Updating with context: upstream tests are experiencing similar issues with impi 2021.12 and mpi4py 4, while C++ tests are passing fine here with 2021.13, so it seems to be something specific in the Python interface, which makes me think it could be mpi_init-related.


Convert film_detail to Dagger

add cache/remote
add Dagger
extract OkHttpClient as a singleton (CoreComponent)

fixed in #17 #18


Node Example

A node example, would be fantastic. I know the docs mention we should use startReplyChain, but a code example would be great, and if not a link to the start reply chain docs would also be amazing.

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

ID: ba8d3979-14f5-3105-ad89-ce6f98d11df1
Version Independent ID: e53a7d1e-0e70-ca30-9809-fda7ebe5f4da
Content: Proactive messages - Teams
Content Source: msteams-platform/concepts/bots/bot-conversations/bots-conv-proactive.md
Product: msteams
GitHub Login: @o365devx
Microsoft Alias: o365devx

Hi - you can find examples in Node here: https://github.com/OfficeDev/microsoft-teams-sample-complete-node/tree/master/src/dialogs/examples/teams


[Observability] Add observability support for VectorStores

To continue the https://github.com/spring-projects/spring-ai/issues/953 story we would like to provide observability support for the Spring AI VectorStore abstractions.
We would like to observe the add, delete and similaritySearch endpoints.
Related suggestions by @ThomasVitale :

We can follow the general DB conventions (https://opentelemetry.io/docs/specs/semconv/attributes-registry/db/) and use the "db.operation.name" attribute to distinguish between add, delete, similaritySearch...

About the similarity search, it would be nice to use the upcoming attributes in the Vector DB conventions, whenever they make sense: https://github.com/open-telemetry/semantic-conventions/blob/da6649b090511a66779bffb585216884407dbc4f/docs/attributes-registry/db.md#db-vector-attributes

Following UML class diagram illustrates the Spring AI VectorStore Observability implementation:

Following UML class diagram illustrates the Spring AI VectorStore Observability implementation:

Sample Grafana/Tempo traces for add and search:

resolved by https://github.com/tzolov/spring-ai/commit/c8e03f1a98b6e7e55cb101a8200f2b20202e70d6


Query builder fixes

Summary

[x] Displays query title in query builder on top left corner of the window

[x] When in the derived property editor, parameters that display should match the type of the derived property otherwise they should be hidden since the user will not be able to drag and drop the parameter to the derived property value.

[x] If there is already a created constant with the same variable name, show a validation error for user when they try to name the parameter.

[x] If the constant type is a date, rather than the label showing previously just meta::pure::functions::date::adjust a more descriptive title should appear for users.

Originally:

Now:

[x] Styling fix to show that the 'export' button in query builder is able to be pressed when previously it appeared the same whether disabled or active.

Originally:

Now:

How did you test this change?

[ ] Test(s) added
[x] Manual testing (please provide screenshots/recordings)
[ ] No testing (please provide an explanation)

@beekemarie


Hardware register default value doesn't make sense on DMG for CGB-only registers

In the Power Up Sequence page, at the bottom is the hardware register table.
For example for the HDMA registers, it doesn't make sense that they read as $FF on DMG, as every register that doesn't exist reads as $FF, so it's slightly misleading. Technically correct, but nonsense.
It would be better if these registers would get flagged as -- or N/A or something similar, perhaps with a clarification at the end of the table that all undefined registers read as $FF.
If N/A in capital letters is chosen, it's difficult with vision problems to differentiate at a first glance from just a regular hexadecimal value in nearby cells, as it has the same height, and almost the same width, very much blending in with the other nearby cells.
Adding a footnote link (the superscripted tiny number to the right of the cell contents) should be a good step to make it slightly easier to differentiate if no non-intrusive differentation method is available.

Sure, -- should work too. (Perhaps three, so they stand out even if not in a <code> block.)

I feel like I should bring this up since it's somewhat related, but the CGB-only registers in the CGB / AGB column are also misleading/technically correct, for DMG mode only (which isn't mentioned anywhere). Some registers are marked as ?? with a footnote for compatibility mode, but others are marked as $FF with no indication that it's not the actual value. I think it would be more useful to list the actual values of all these registers on CGB / AGB, and describe the $FF behavior in compatibility mode under the footnote for this issue.

I believe the GBC-only regs are still R/W in DMG mode, just inoperative? I'm not certain, though.

No, they read as $FF and writes are ignored. I believe the current values were taken directly from the source code of a test ROM which runs in DMG mode, which was a bit of an oversight.


Shut down Buddy

Registrar website dependency
Find API dependency

@athandle  What is the "shutdown buddy"?

Overtaken by #411


Phonegap Build fails for android

Hi Realtime team.
I'm using Realtime plugin with an app (for android and iphone) built through "Phonegap Build".
In my config.xml file I added:
 <gap:plugin name="co.realtime.plugins.cordovapush" version="0.1.4" />

But I get the following build error:
"Error - Two of the plugins in your app are incompatible as they both add a file with the same name. View logs to find which plugins are causing this issue."
An Abstract of config.xml is as follows:
<preference name="permissions" value="none" />
<preference name="orientation" value="default" />
<preference name="target-device" value="universal" />
<preference name="fullscreen" value="false" />
<preference name="webviewbounce" value="true" />
<preference name="prerendered-icon" value="true" />
<preference name="stay-in-webview" value="false" />
<preference name="ios-statusbarstyle" value="black-opaque" />
<preference name="detect-data-types" value="true" />
<preference name="exit-on-suspend" value="false" />
<preference name="show-splash-screen-spinner" value="true" />
<preference name="auto-hide-splash-screen" value="true" />
<preference name="disable-cursor" value="false" />
<preference name="android-minSdkVersion" value="7" />
<preference name="android-installLocation" value="auto" />
<preference name="DisallowOverscroll" value="true" />

<gap:config-file parent="/manifest/application" platform="android">
    <activity android:launchMode="singleInstance" />
</gap:config-file>

<!-- GAP PLUGINS CORDOVA -->
<gap:plugin name="org.apache.cordova.battery-status"  />
<gap:plugin name="org.apache.cordova.camera"  />
<gap:plugin name="org.apache.cordova.console"  />
<gap:plugin name="org.apache.cordova.contacts"  />
<gap:plugin name="org.apache.cordova.device"  />
<gap:plugin name="org.apache.cordova.device-motion" />
<gap:plugin name="org.apache.cordova.device-orientation"  />
<gap:plugin name="org.apache.cordova.dialogs"  />
<gap:plugin name="org.apache.cordova.file"  />
<gap:plugin name="org.apache.cordova.file-transfer"  />
<gap:plugin name="org.apache.cordova.geolocation"  />
<gap:plugin name="org.apache.cordova.globalization"  />
<gap:plugin name="org.apache.cordova.inappbrowser"  />
<gap:plugin name="org.apache.cordova.media"  />
<gap:plugin name="org.apache.cordova.media-capture"  />
<gap:plugin name="org.apache.cordova.network-information"  />
<gap:plugin name="org.apache.cordova.splashscreen"  />
<gap:plugin name="org.apache.cordova.vibration"  />

<!-- GAP PLUGINS EXTERNAL -->
<gap:plugin name="com.phonegap.plugins.barcodescanner" />
<gap:plugin name="nl.x-services.plugins.launchmyapp">
    <param name="URL_SCHEME" value="XXXXXXXX" />
</gap:plugin>
<gap:plugin name="com.phonegap.plugin.statusbar" />
<gap:plugin name="com.badrit.macaddress" />
<gap:plugin name="com.simonmacdonald.telephonenumber" />
<gap:plugin name="nl.x-services.plugins.socialsharing" />
<gap:plugin name="nl.x-services.plugins.googleplus" source="plugins.cordova.io"/>

<gap:plugin name="com.phonegap.plugins.facebookconnect">
    <param name="APP_ID" value="XXXXXXXX" />
    <param name="APP_NAME" value="YYYYYYYY" />
</gap:plugin>

<gap:plugin name="nl.x-services.plugins.insomnia" />
<gap:plugin name="net.bgta.phonegap.plugin.appversion" />
<gap:plugin name="org.pushandplay.cordova.apprate" />
<gap:plugin name="co.realtime.plugins.cordovapush" version="0.1.4" />

I tried many modifications to plugin import but cannot find the problem.
If I remove "co.realtime.plugins.cordovapush" the build ends without errors.
Do you know which could be the problem?
Many Thanks
Silvano

Could you provide the log referred in the issue description so we can understand with which other plugin we are in conflict?
Thanks.

Of course!
But it is a short log, I cannot get which is the conflict  :(
Build Date: 2015-08-17 19:12:24 +0000
----------------------------------------------
debug: Creating Cordova project for the Android platform:
Path: ../../../../../../project
Package: com.agohub.client
Name: AgorHub
Android target: android-21
Copying template files...
Running: android update project --subprojects --path "../../../../../../project" --target android-21 --
library "CordovaLib"
Resolved location of library project to: /project/CordovaLib
Updated and renamed default.properties to project.properties
Updated local.properties
No project name specified, using Activity name 'AgorHub'.
If you wish to change it, edit the first line of build.xml.
Added file ../../../../../../project/build.xml
Added file ../../../../../../project/proguard-project.txt
Updated project.properties
Updated local.properties
No project name specified, using project folder name 'CordovaLib'.
If you wish to change it, edit the first line of build.xml.
Added file ../../../../../../project/CordovaLib/build.xml
Added file ../../../../../../project/CordovaLib/proguard-project.txt

Project successfully created.

It stops here without additional information.
Thank you for your reply.
Silvano

Thanks for the reply but I'm afraid it doesn't help. Could you send us<EMAIL_ADDRESS>an example project where the issue is replicated so we can make a few tests? It would help a lot. Thanks.

As you requested I've sent you an email with an example project (to framework@realtime.co).
As mentioned in the email, I've found that Realtime plugin is in conflict with both plugins (phonegap build plugins) for google+ login (nl.x-services.plugins.googleplus   -   cordova-plugin-googleplus).
Thanks
Silvano

We have changed the structure of your project (we have sent a copy to your email) and the build was successful. Can you check if it solves the issue?

Hi Realtime!
Thanks for the answer, I've tried to build the example you sent me with "Phonegap Build" but it gives to me the same error as before.
Could you tell me How did you build it successfully? Maybe with some other tool, outside Phonegap Build?
Thanks a lot
Silvano

We are investigating the conflict (we could replicate it) with the cordova-plugin-googleplus plugin. We suspect it's related with the way we are adding the googleservices library.

Building the project using Cordova CLI revealed the error:

Failed to install 'cordova-plugin-googleplus':Error: Uh oh!
".../platforms/android/libs/google-play-services.jar" already exists!

We expect to publish tomorrow a new release of the plugin to solve this issue.

Fantastic!!!!!!!!

Thank you a lot for the support.
Silvano

Il giorno 20/ago/2015, alle ore 20:01, Realtime Framework<EMAIL_ADDRESS>ha scritto:
Building the project using Cordova CLI revealed the error:
Failed to install 'cordova-plugin-googleplus':Error: Uh oh!
".../platforms/android/libs/google-play-services.jar" already exists!
We expect to publish tomorrow a new release of the plugin to solve this issue.
—
Reply to this email directly or view it on GitHub.

Hi @silvanoAdami
Please try the new Adobe PhoneGap Build Push example (using the latest CordovaPush plugin version): https://github.com/realtime-framework/phonegap-push

Hi Realtime!
Thank you for your support, now the problem with google+ is solved... But unfortunately (I'm sorry to say) I've found a new incompatibility problem regarding Phonegap Build - Facebook plugin and the latest Realtime CordovaPush (just Android builds).
Here the error log file:
   Build Date: 2015-08-25 15:38:11 +0000
   ----------------------------------------------
   Buildfile: /project/build.xml

   -set-mode-check:

   -set-release-mode:

   -release-obfuscation-check:
          [echo] proguard.config is ${proguard.config}

   -pre-build:

   -check-env:
    [checkenv] Android SDK Tools Revision 24.3.0

    -setup:
       [echo] Project Name: AgorHub
      [gettype] Project Type: Application

     -build-setup:
          [getbuildtools] Using latest Build Tools: 20.0.0
          [echo] Resolving Build Target for AgorHub...
     [gettarget] Project Target:   Android 5.0.1
     [gettarget] API level:        21
          [echo] ----------
          [echo] Creating output directories if needed...
         [mkdir] Created dir: /project/bin
         [mkdir] Created dir: /project/bin/res
         [mkdir] Created dir: /project/bin/rsObj
         [mkdir] Created dir: /project/bin/rsLibs
         [mkdir] Created dir: /project/gen
         [mkdir] Created dir: /project/bin/classes
         [mkdir] Created dir: /project/bin/dexedLibs
          [echo] ----------
          [echo] Resolving Dependencies for AgorHub...
     [dependency] Library dependencies:
     [dependency]
     [dependency] ------------------
     [dependency] Ordered libraries:
     [dependency]
     [dependency] ------------------
     [dependency] Found 2 versions of android-support-v4.jar in the dependency list,
     [dependency] but not all the versions are identical (check is based on SHA-1 only at this time).
     [dependency] All versions of the libraries must be the same at this time.
     [dependency] Versions found are:
     [dependency] Path: /project/com.phonegap.plugins.facebookconnect/client-
     FacebookLib/libs/android-support-v4.jar
     [dependency] 	Length: 758727
     [dependency] 	SHA-1: efec67655f6db90757faa37201efcee2a9ec3507
     [dependency] Path: /project/libs/android-support-v4.jar
     [dependency] 	Length: 995386
     [dependency] 	SHA-1: a13f8fe2c278737e2f0b6fcf00f6b2ae4034aacf

     BUILD FAILED
     /home/ec2-user/android-sdk/tools/ant/build.xml:573: Jar mismatch! Fix your dependencies

     Total time: 1 second

To reproduce it, you can add the following line in the config.xml project I sent you.
     <gap:plugin name="com.phonegap.plugins.facebookconnect">
         <param name="APP_ID" value="XXXXXXXX" />
        <param name="APP_NAME" value="YYYYYYYY" />
     </gap:plugin>

Searching the net, I've found this is a common problem working with android-support-v4.jar and Facebook. If you need further information I'm at your disposal.
Thank you a lot
Silvano

Sure, we'll investigate on that. Thanks for the feedback.

@silvanoAdami please try with version 0.1.6
https://build.phonegap.com/plugins/4345

Good morning!
I''ve tried with the new plugin, I've noticed that something has changed (the android-support-v4 has been added as a dependency in your project (Length and SHA-1 has changed)),
but still I get "almost" the same error:
     [dependency] Ordered libraries:
     [dependency]
     [dependency] ------------------
     [dependency] Found 2 versions of android-support-v4.jar in the dependency list,
     [dependency] but not all the versions are identical (check is based on SHA-1 only at this time).
     [dependency] All versions of the libraries must be the same at this time.
     [dependency] Versions found are:
     [dependency] Path: /project/com.phonegap.plugins.facebookconnect/client-
     FacebookLib/libs/android-support-v4.jar
     [dependency] 	Length: 758727
     [dependency] 	SHA-1: efec67655f6db90757faa37201efcee2a9ec3507
     [dependency] Path: /project/libs/android-support-v4.jar
     [dependency] 	Length: 987314
     [dependency] 	SHA-1: 9b6a9a9078af571732159b904ad423b03b7cc786

It seems to me that Facebook connect is using a different version of android-support-v4.jar in his plugin dependencies.
Maybe you are up to date with the latest one and they are using an older version.
Do you know if there could be a possible way to align those versions of jar?
If not, It could be possible to have, maybe a customized, unofficial version of your Cordova-Push, that uses the same version of android-support-v4.jar that Facebook connect uses?
Again, really, Thank you a lot for your patience and your help!!
Silvano

I understand your point but it's difficult for us to be maintaining distinct versions of the plugin.
Please feel free to fork our repo and publish your own plugin using our source code and adding the android-support-v4.jar that Facebook connect uses (you can find it at https://github.com/Wizcorp/phonegap-facebook-plugin/tree/master/platforms/android/FacebookLib/libs)
Wizcorp (the phonegap-facebook-plugin maintainers) should start using the dependency instead of using the jar directly.

It worked forking your repo, as you suggested.
Thanks for the hint and for the fixes.
Silvano
PS: yes I agree. Wizcorp should start using dependency instead of the jar directly. I asked them to do this way.


[SYSTEMML-1240] Cleanup crc files when write scalar

Cleanup crc files when write scalar to local file system.

Can test with (MLContext-style test):
@Test
public void testScalarWrite() {
	String s = "A = 2.0; write(A,\"scalar.txt\")";
	Script script = dml(s);
	ml.execute(script);
}

Thank you @deroneriksson for making scalar crc file cleanup consistent with matrix crc file cleanup.
LGTM

Thank you for reviewing @gweidner!

BTW all tests passed: https://sparktc.ibmcloud.com/jenkins/job/SystemML-PullRequestBuilder/1100/


⚠ Samsung has degraded performance

In 1bd55b0, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 2320 ms

Resolved: Samsung performance has improved in 7251684.


About pretrained models to generate 36 per image feature

Thank you for your excellent work!
I have a question. I'm using this bottom up attention method to generate 36/image feature. In your README, you wrote that:

To recreate the pretrained feature files with 36 features per image, set MIN_BOXES=36 and MAX_BOXES=36 use this alternative pretrained model instead. The alternative pretrained model was trained for fewer iterations but performance is similar.

which is resnet101_faster_rcnn_final_iter_320000.caffemodel.
However, when I was doing caption task, I generateed 36/image features with resnet101_faster_rcnn_final.caffemodel , and found that features generated this way is better than waht you recommended above.
So I was wondering why? Does resnet101_faster_rcnn_final.caffemodel is better anyway? Looking forward to your reply. Thanks a lot.
@peteanderson80

In other words, why did you recommend using resnet101_faster_rcnn_final_iter_320000.caffemodelto generate 36/image features?

@masonwang96
where to download the resnet101_faster_rcnn_final.caffemodel？
can you share the url？

https://www.dropbox.com/s/5xethd2nxa8qrnq/resnet101_faster_rcnn_final.caffemodel?dl=1

https://github.com/peteanderson80/bottom-up-attention/issues/87#issue-603744880
Dear scholar,
I can't download the model resnet101_faster_rcnn_final_iter_320000.caffemodel.
I think maybe this model can generate the similar features provided by the author.
So the author maybe proposes this model will get better performance than the resnet101_faster_rcnn_final.caffemodel(10~100).
If you have BaiduWangpan, could you share the model file "resnet101_faster_rcnn_final_iter_320000.caffemodel" with me ?
I am so eager to attain the model file.

Sorry about the delay. I have shared the "resnet101_faster_rcnn_final_iter_320000.caffemodel"  through BaiduWangpan. The link is as follows:
链接: https://pan.baidu.com/s/18TGdxmx_IxCqbzx2APEd2w  密码: 8aa4

By the way, this is the "resnet101_faster_rcnn_final.caffemodel":
链接: https://pan.baidu.com/s/1ELt5hL1BKemfDYDyN1dOPw  密码: altw

Thanks DaLao，Pour a bottle of coca cola for you.
---Original---
From: "Mason<EMAIL_ADDRESS>Date: Sat, Feb 27, 2021 14:25 PM
To<EMAIL_ADDRESS>Cc: "Comment"<comment<EMAIL_ADDRESS>Subject: Re: [peteanderson80/bottom-up-attention] About pretrained models to generate 36 per image feature (#87)
Sorry about the delay. I have shared the "resnet101_faster_rcnn_final_iter_320000.caffemodel"  through BaiduWangpan. The link is as follows:
链接: https://pan.baidu.com/s/18TGdxmx_IxCqbzx2APEd2w  密码: 8aa4
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or unsubscribe.

Thanks for your timely share! Thanks again.
And I run the generate_tsv.py, with the resnet101_faster_rcnn_final_iter_320000.caffemodel that you share, and the result can be reproduced.
with the same picture, COCO_train2014_000000150367.jpg. The boxes is the same.
The result run by generate_tsv.py
[[  0.           0.         608.7625     350.63208   ]
[276.54065     54.26455    639.2        454.42773   ]
[  0.          18.055298   286.9795     464.57227   ]
[  0.         277.6827     583.3728     479.2       ]
[ 26.716516   131.85942    322.95587    259.661     ]
[386.7497      44.484303   522.03094    154.81404   ]
[ 75.55986    327.47873    421.8147     463.39697   ]
[306.05084    353.73135    386.62222    454.88385   ]
[242.39853    355.86627    333.31012    453.9502    ]
[263.6872     144.34995    479.49268    319.98187   ]
[279.20203      0.         584.5702     132.85336   ]
[584.67584      0.         639.2        107.73751   ]
[300.33197    265.5234     387.11652    347.883     ]
[  0.           0.         252.79614    140.41837   ]
[452.19727    384.70477    542.59       425.482     ]
[141.57083    140.46927    455.4457     344.03836   ]
[118.00602    138.60199    289.6468     235.06424   ]
[321.5712     358.26862    377.40723    448.2745    ]
[277.84735    345.26016    382.9519     455.149     ]
[338.34506      0.         639.2        164.73306   ]
[ 39.608967   170.50273    219.11008    257.4533    ]
[503.02118     49.59502    582.64844    156.79427   ]
[280.75128    146.12346    347.84033    265.48737   ]
[156.60852    352.786      344.48508    450.08588   ]
[  0.         302.57465     78.91972    395.2979    ]
[ 27.668285     4.043219   181.89998    120.18465   ]
[  0.86831665 315.65247     70.51543    366.01852   ]
[403.1822      65.44243    437.54654    103.289085  ]
[263.4151     366.8589     314.9948     444.99268   ]
[440.21368    156.93144    500.5992     193.9488    ]
[169.18588    359.8093     271.23724    456.87762   ]
[203.40878      2.5947204  379.92694     80.30624   ]
[389.56876    239.18001    475.52667    330.16315   ]
[149.9029     152.9564     193.36127    188.3182    ]
[158.44717      0.         214.74826    108.832054  ]
[ 67.062485   213.83627    249.61057    352.60757   ]]
GPU 0: 1/1 0.964s (projected finish: 0.00 hours)
The train2014.zip
array([[  0.        , 277.6827    , 583.3728    , 479.2       ],
[389.56876   , 239.18001   , 475.52667   , 330.16315   ],
[300.33197   , 265.5234    , 387.11652   , 347.883     ],
[118.00602   , 138.60199   , 289.6468    , 235.06424   ],
[  0.        ,   0.        , 252.79614   , 140.41837   ],
[156.60852   , 352.786     , 344.48508   , 450.08588   ],
[280.75128   , 146.12346   , 347.84033   , 265.48737   ],
[386.7497    ,  44.484303  , 522.03094   , 154.81404   ],
[338.34506   ,   0.        , 639.2       , 164.73306   ],
[321.5712    , 358.26862   , 377.40723   , 448.2745    ],
[279.20203   ,   0.        , 584.5702    , 132.85336   ],
[263.4151    , 366.8589    , 314.9948    , 444.99268   ],
[440.21368   , 156.93144   , 500.5992    , 193.9488    ],
[  0.        ,   0.        , 608.7625    , 350.63208   ],
[452.19727   , 384.70477   , 542.59      , 425.482     ],
[  0.86831665, 315.65247   ,  70.51543   , 366.01852   ],
[149.9029    , 152.9564    , 193.36127   , 188.3182    ],
[ 27.668285  ,   4.043219  , 181.89998   , 120.18465   ],
[276.54065   ,  54.26455   , 639.2       , 454.42773   ],
[141.57083   , 140.46927   , 455.4457    , 344.03836   ],
[584.67584   ,   0.        , 639.2       , 107.73751   ],
[169.18588   , 359.8093    , 271.23724   , 456.87762   ],
[158.44717   ,   0.        , 214.74826   , 108.832054  ],
[  0.        , 302.57465   ,  78.91972   , 395.2979    ],
[  0.        ,  18.055298  , 286.9795    , 464.57227   ],
[503.02118   ,  49.59502   , 582.64844   , 156.79427   ],
[ 75.55986   , 327.47873   , 421.8147    , 463.39697   ],
[403.1822    ,  65.44243   , 437.54654   , 103.289085  ],
[277.84735   , 345.26016   , 382.9519    , 455.149     ],
[306.05084   , 353.73135   , 386.62222   , 454.88385   ],
[242.39853   , 355.86627   , 333.31012   , 453.9502    ],
[203.40878   ,   2.5947204 , 379.92694   ,  80.30624   ],
[263.6872    , 144.34995   , 479.49268   , 319.98187   ],
[ 26.716516  , 131.85942   , 322.95587   , 259.661     ],
[ 39.608967  , 170.50273   , 219.11008   , 257.4533    ],
[ 67.062485  , 213.83627   , 249.61057   , 352.60757   ]],
only the order is placed

Good news!

Hi,
I am having a problem while running the code. Please help me.
This is the error I am having:
Error under config key: TRAIN
Traceback (most recent call last):
  File "./tools/generate_tsv.py", line 202, in <module>
    cfg_from_file(args.cfg_file)
  File "/home/tejan/bottom-up-attention/tools/../lib/fast_rcnn/config.py", line 290, in cfg_from_file
    _merge_a_into_b(yaml_cfg, __C)
  File "/home/tejan/bottom-up-attention/tools/../lib/fast_rcnn/config.py", line 277, in _merge_a_into_b
    _merge_a_into_b(a[k], b[k])
  File "/home/tejan/bottom-up-attention/tools/../lib/fast_rcnn/config.py", line 262, in _merge_a_into_b
    raise KeyError('{} is not a valid config key'.format(k))
KeyError: 'HAS_RPN is not a valid config key'

hi!, could you give a share relevant prototxt about the the model

@masonwang96
Hi, I hope to reproduce the same results, but the link is gone.
Can you share resnet101_faster_rcnn_final_iter_320000.caffemodel ?
I cannot use Baidu

Sorry about the delay. I have shared the "resnet101_faster_rcnn_final_iter_320000.caffemodel" through BaiduWangpan. The link is as follows:
链接: https://pan.baidu.com/s/18TGdxmx_IxCqbzx2APEd2w 密码: 8aa4

Dear @masonwang96,
Can you share 'resnet101_faster_rcnn_final_iter_320000.caffemodel' by dropbox or alternative link, please?
I tried to download from BaiduWangpan, but failed. :'(
I hope to reproduce the results, and I would really appreciate your help!
Thank you.


Black Theme for the main menú

There's a dark mode menu when you're using an enterprise account, and in normal accounts too, normal apps also have dark mode. So I don't think so there's a need to implement dark mode only for the menu.


Switch to using jasmine-browser-runner

The Jasmine Ruby gems have been deprecated and are no longer supported. And whilst they still work with Rails 6 apps, they aren't compatible with Rails 7 which is now becoming a blocker.
Note that this PR cannot be merged until Chromedriver has been installed on Jenkins - currently passing on CI as they happen to have run on a worker which has Chromedriver, but this isn't the case for all workers.
⚠ This repo is Continuously Deployed: make sure you follow the guidance ⚠

@kevindew - have addressed your comments, do you mind having another quick look?


DM-31960: Port JupyterClient

This PR ports the Jupyter, Cachemachine, and Gafaelfawr clients into noteburst. The purpose of this work is to extract Python/notebook execution functionality from mobu into a common service (noteburst) that can be used by other applicaitons.
While mobu uses aiohttp, this code now runs under httpx and [websockets] (https://websockets.readthedocs.io/en/stable/index.html). This has necessitated some changes to the APIs and architecture during the design process.
JupyterClient is a context manager now to help maintain its login-specific http session. The JupyterLabSession, which holds a websocket connection, is also a context now.
Note that mobu has code that mocked the websocket connection. In the "wip" commit I've tried to port that over to work with the websockets library, but I could never get it to work. I've left that commit in for now, but I could as easily pull it out onto a separate branch to get around to later.
Instead of the websocket mock, I've ended up writing a /noteburst/prototype set of endpoints that logging in (POST /noteburst/prototype/login), spawning a shutting down a JupyterLab pod (POST /noteburst/prototype/spawn), and finally running code in a JupyterLab websocket session (POST /noteburst/prototype/code). I've been able to run all of these endpoints successfully.
Lastly, I've added support for running the notebook execution extension, though this hasn't been fully tested yet.

Thanks for the improvements @rra. I'll rework the JupyterClient context manager in the next story.
You're right that I'll have to keep in mind the Mobu use cases with richer return types. That'll get clearer when we get to building out the API.


feat(gatewayresponses): add support for API Gateway Responses

This is a WIP. Remaining:

~Documentation~
~Example~
Edge Cases Which Will Be Pointed Out to Me, I'm Sure???

Issue #, if available:
#815
Description of changes:
Added new property GatewayResponses to AWS::Serverless::API. This translates to x-amazon-apigateway-gateway-responses in the generated Swagger with some convenience transformations applied for SAMier syntax.
Description of how you validated changes:
In addition to the present test suite, ran a company project through the translator. It deployed and worked correctly. (Then I reluctantly took it back down.)
Checklist:

[x] Write/update tests
[x] make pr passes
[x] Update documentation
[x] Create example

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Documentation is added. I tried to match house style, but lemme know if it's n-not?
I intend to have an example committed today, but Day Job may interfere.

OK, I think we in it.
I am the farthest thing from a professional Python developer, so please do let me know where I've fallen down.

Codecov Report

Merging #841 into develop will increase coverage by 0.24%.
The diff coverage is 93.1%.

@@             Coverage Diff             @@
##           develop     #841      +/-   ##
===========================================
+ Coverage    94.23%   94.48%   +0.24%
===========================================
  Files           67       67
  Lines         2688     2881     +193
  Branches       478      527      +49
===========================================
+ Hits          2533     2722     +189
- Misses          80       83       +3
- Partials        75       76       +1

Impacted Files
Coverage Δ

samtranslator/model/sam_resources.py
96.09% <ø> (+0.35%)
:arrow_up:

samtranslator/model/apigateway.py
96.81% <100%> (+0.49%)
:arrow_up:

samtranslator/swagger/swagger.py
98.38% <100%> (+0.45%)
:arrow_up:

samtranslator/plugins/globals/globals.py
100% <100%> (ø)
:arrow_up:

samtranslator/model/api/api_generator.py
94.33% <86.2%> (-1.8%)
:arrow_down:

samtranslator/plugins/api/implicit_api_plugin.py
96.26% <0%> (-3.74%)
:arrow_down:

samtranslator/model/intrinsics.py
94.44% <0%> (-1.02%)
:arrow_down:

samtranslator/model/__init__.py
96.85% <0%> (ø)
:arrow_up:

samtranslator/sdk/resource.py
100% <0%> (ø)
:arrow_up:

samtranslator/model/eventsources/cloudwatchlogs.py
100% <0%> (ø)
:arrow_up:

... and 5 more

Continue to review full report at Codecov.

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

Awesome. Thanks so much. I'm past EoD here in my time zone, but I'll jump on these in the morning.

Apologies for the force pushes -- trying to get the merge conflict resolved.
This is now caught up with current feedback.

Really glad to see this merged! Thanks @chrisoverzero for picking this up!
@brettstack @keetonian do you guys have any idea when this will be released? I'm in dire need of this to avoid having to define the entire API myself at the moment.

We're working on it now. We just cut a release branch: https://github.com/awslabs/serverless-application-model/tree/release/v1.11.0
We should be able to release this soon, barring any unforeseen issues with the new features.


apache / .htaccess

Apologies if this is covered somewhere else, or a major faux-pas to the mindset behind roots.
I love the instant deploy to netlify (and all the optimizations that they do server side) but we still have a lot of clients that need to be an apache server ala Mediatemple.
Would you have any interest (or does it already and i'm not seeing it) in having roots spitting out the correct .htaccess for the clean urls?

hey @dbox we've got a roots extension called roots-netlify that exposes an easy-to-use interface to netlify's redirect rules. this plugin will compile the appropriate _redirects file in your root path. note, this extension isn't 100% necessary, you could write out a _redirects file in your project -- we just like having it in our app.coffee where all our other configuration is. further, josh lays it out a little in the readme of roots-netlify

It's also a common roots convention to start files with an _ to ignore them during compilation. Since Netlify would normally be configured with a _headers and _redirects file, using this extension allows you keep that nice clean convention throughout the whole project.

oh, I see that doesn't exactly answer your question. for .htaccess - if you simply put a .htaccess file in your root-dir, roots will copy it over to public/.htaccess at which time you can point your apache configuration to that.

Thanks @kylemac. Yeah, sorry I wasn't clear. Basically I'm wanting roots to auto-magically generate the mod-rewrite rules to the .htaccess file. Basically the same thing it's doing for netlify: mysite.com/about.html -> mysite.com/about/
Obviously it can be done manually but that's the beauty of roots. Taking away all the dirty work. :smile:
If this is out of scope of roots, totally understandable, but it'd be super handy.

I think this might actually be possible using an extension, but it would be a little complicated. Essentially, this extension would have to:

Know what files are going to be compiled
Even if their compilation is the responsibility of another extension
While maintaining a buffer string that will eventually get compiled after everything compiles

The buffer string would eventually get compiled to the .htaccess file that maps the compiled URL to a rewrite rule.
The really tricky part is getting the extension to know what files are compiled or not. This is easy for standard Roots static or compiled files - simply inspect the templating engine view and check if it has a partial or not - but pages made through roots-records will be a hell of a lot trickier to detect...
Perhaps having it fully-automatic might mean it will be a little over-engineered. Perhaps being explicit and providing a glob match for this kind of thing would be easier - but therein again lies the problem of matching against views generated by other extensions...

I was just stumbling over the same issue, that /about.html is accessible but /about/ is not. I didn't realize it's a netlify feature.
Suggestion: Add an option that renders /about/index.html instead of /about.html. Then accessing /about/ works in every environment, even locally.

I think Jeff and I once spoke about supporting canonical URLs (like you are describing here) and there was an issue that prevented them from making their way into Roots. However this was before V3 so I think we could explore the idea again as I am also interested.
For now, you can do the same thing with this in your app.coffee:
server:
  clean_urls: true
  # and other things like:
  # gzip: true

But in production you will have to use Charge to serve your site.

yeah, what declan said -- we use charge (which is built into roots and is what is serving your site when you run roots watch) for our local development. it has all the features you'd want from a web-server so you don't have to install apache locally or something crazy like that. then in our app.production.coffee we usually default to netlify's clean url rewrite. if we were deploying to an apache server, we would just write a basic .htaccess into our project and use that.
to see what declan shared in more context, here's the app.coffee file for http://roots.cx which is hosted on netlify - https://github.com/carrot/roots-www/blob/master/app.coffee#L26-L27

@kylemac but wouldn't it be awesome if roots (or an extension) automagically wrote that .htacess file for you? :smile:

@dbox That's a perfect use case for roots extensions. There's a roots-netlify extension that writes config files for a static hosting platform called Netlify. It's a good starting point for figuring out how to write an extension for writing an .htaccess file.

Thanks @joshrowley. Might be a little over my head at the moment, but hopefully someone can take it on.

I might be missing something, but the code for serving /about.html (when accessing /about) using .htaccess is just the following:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.html [NC,L]

So, @dbox , this means that you don't need to "auto-magically generate the mod-rewrite rules to the .htaccess file", because you can do that with just one simple rule for every URL (instead of one rule for each URL).

Well awesome. Didnt know you could do that. Thanks!


Refactor context to store session for downstream context creation

Issue:
The DownStreamClusterWranglerContext function in the Shepherd project is currently not handling sessions correctly. When this function is called, it passes nil for the session parameter, resulting in a panic when objects are created on the downstream cluster using wrangler client.
Solution:

Add a session attribute to the Context struct
Update the NewContext function to initialize the session attribute
Modify DownStreamClusterWranglerContext to use the stored session

It looks good to me, @Priyashetty17 could you confirm this is fixing the existing problem and session with downstream is working as intended and queueing the created downstream resources via the wrangler context?

@caliskanugur  Yes, the tests are passing now. I have shared the freeform job with you on slack.


Not able to use the library as a browser module because of "path" dependency

I am trying to import this library as a module in the browser. There is a require("path") dependency that is preventing it from being used as a browser module.
Any solutions to this problem.

Hmm, the require("path") looks like something that is either part of WABT's glue code (note that this issue tracker is part of an automated buildbot that is not adding own code), or part of the glue code generated by Emscripten.

So, I checked with rollup and webpack. Both cannot get the library as such. Is there any way that can be done differently? Or are there any examples where it is used as a npm module instead of importing directly on the <script> tags

Last time I checked it worked just fine as an npm module via require("wabt"), but bundling it may require shimming node's path module apparently. I know that webpack can do this with config options, either stubbing the module out (not sure if that'll work, depends on what wabt does with it I guess) or providing an alternative implementation that works in the browser.

For rollup it sayd requires$$0 not found. I am assuming it must be due to the reliance of require in the browser. Now the UMD module works perfectly fine using window.WabtModule (try importing <script src="wabt.js"></script>).

I tried it with parcel and its the only bundler that seems to work with this module as per my configurations. This is an emscripten issue perhaps.

v1.0.16 works for me, v1.0.17, not.


How is it possible to feed a ListBox with field names from input anchor ?

I tried to use the field names of my input to build a ListBox that the user can use.
I successfully built an array containing options but can't pass it to the ListBox component. Do you have an example showing how to do so ?

Hi Jean-Bi. Can you provide a code sample of what you are trying with the context you are trying to use the ListBox component in? This would be very useful in trying to understand what is preventing you from getting the ListBox to work in your particular use case. Thanks.

Hi @kingedward35, here is my code sample !
`import React, { useContext, useEffect, useCallback, useState } from 'react';
import ReactDOM from 'react-dom';
import { AyxAppWrapper, Box, Grid, Typography, makeStyles, Theme, Radio, FormControl, FormLabel, RadioGroup, FormControlLabel, Paper, NumericInput, InputLabel, ListBox, Container } from '@alteryx/ui';
import { Alteryx } from '@alteryx/icons';
import { Context as UiSdkContext, DesignerApi } from '@alteryx/react-comms';
const useStyles = makeStyles((theme: Theme) => ({
alteryx: {
color: theme.palette.primary.main,
height: '125px',
width: '125px'
}
}));
const initialModelState = {
ranking: "top",
rows: 1
};
const initialData = [
{ name: 'First', value: 'First' },
{ name: 'Second', value: 'Second' },
{ name: 'Third', value: 'Third' },
{ name: 'Fourth', value: 'Fourth'}
];
const App = () => {
const classes = useStyles();
const [model, handleUpdateModel] = useContext(UiSdkContext);
var fieldsList = model.Meta?.fields[0][0].fields;
let choices = [
{ name: 'First', value: 'First' }
];
for (let i = 0; i < fieldsList?.length; i++) {
choices[i] = { name : fieldsList?.[i]?.name, value : fieldsList?.[i]?.name };
}
console.log(choices);
const handleRankingChange = event => {
const newModel = { ...model };
newModel.Configuration = { ...newModel.Configuration, ranking: event.target.value };
handleUpdateModel(newModel);
};
const handleRowsChange = value => {
const newModel = { ...model };
newModel.Configuration = { ...newModel.Configuration, rows: value };
handleUpdateModel(newModel);
};
const [items, setItems] = useState(choices);
const onChange = useCallback(
(event, selectedItems, action) => {
const { itemsIndex, selected } = action;
if (itemsIndex === 'all') {
setItems(
items.map(({ value, ...item }) => ({
...item,
value,
selected
}))
);
} else {
const updatedItems = [...items];
updatedItems[itemsIndex].selected = selected;
setItems(updatedItems);
}
},
[choices, items]
);
// Dev Harness Specific Code ---------- Start
// The following code is specifically a dev harness functionality.
// If you're developing a tool for Designer, you'll want to remove this
// and check out our docs for guidance
useEffect(() => {
handleUpdateModel(model)
}, []);
// Dev Harness Specific Code ---------- End
return (

Ranking type

<FormControlLabel control={} label="Top" value="top"/>
<FormControlLabel control={} label="Bottom" value="bottom"/>

Number of rows
<NumericInput id="simple-numeric-input" onChange={value => handleRowsChange(value)} value={model.Configuration.rows}/>

)
}
const Tool = () => {
return (
<DesignerApi messages={{}} defaultConfig={{ Configuration: { ranking: "top", rows: 1 } }}>

)
}
ReactDOM.render(
,
document.getElementById('app')
);
`

Hey Jean-Bi,
After looking at your code, I don't see the ListBox component being used. Is there some code missing that I am not seeing?


Endless Uploads after Error

Hi,
I see there are a number of issues logged that sound similar but not exactly the same. At 2216 last night I experience the below error and since then the add-on has been sending continuously - it appears that uploads are not working and it's constantly retrying.
 12/27/2024 22:12:23 [34] Error: Failed getting Drive Id. Microsoft.Graph.Models.ODataErrors.ODataError: General exception while processing    at Microsoft.Kiota.Http.HttpClientLibrary.HttpClientRequestAdapter.ThrowIfFailedResponseAsync(HttpResponseMessage response, Dictionary2 errorMapping, Activity activityForAttributes, CancellationToken cancellationToken)
at Microsoft.Kiota.Http.HttpClientLibrary.HttpClientRequestAdapter.SendAsync[ModelType](RequestInformation requestInfo, ParsableFactory1 factory, Dictionary2 errorMapping, CancellationToken cancellationToken)
at Microsoft.Kiota.Http.HttpClientLibrary.HttpClientRequestAdapter.SendAsync[ModelType](RequestInformation requestInfo, ParsableFactory1 factory, Dictionary2 errorMapping, CancellationToken cancellationToken)
at Microsoft.Graph.Drives.DrivesRequestBuilder.GetAsync(Action1 requestConfiguration, CancellationToken cancellationToken)    at hassio_onedrive_backup.Graph.GraphHelper.GetDriveIdFromAppFolder() in /src/Graph/GraphHelper.cs:line 383 12/27/2024 22:12:23 [34] Error: generalException: General exception while processing. Microsoft.Graph.Models.ODataErrors.ODataError: General exception while processing    at Microsoft.Kiota.Http.HttpClientLibrary.HttpClientRequestAdapter.ThrowIfFailedResponseAsync(HttpResponseMessage response, Dictionary2 errorMapping, Activity activityForAttributes, CancellationToken cancellationToken)
at Microsoft.Kiota.Http.HttpClientLibrary.HttpClientRequestAdapter.SendAsync[ModelType](RequestInformation requestInfo, ParsableFactory1 factory, Dictionary2 errorMapping, CancellationToken cancellationToken)
at Microsoft.Kiota.Http.HttpClientLibrary.HttpClientRequestAdapter.SendAsync[ModelType](RequestInformation requestInfo, ParsableFactory1 factory, Dictionary2 errorMapping, CancellationToken cancellationToken)
at Microsoft.Graph.Drives.DrivesRequestBuilder.GetAsync(Action1 requestConfiguration, CancellationToken cancellationToken)    at hassio_onedrive_backup.Graph.GraphHelper.GetDriveIdFromAppFolder() in /src/Graph/GraphHelper.cs:line 383    at hassio_onedrive_backup.Graph.GraphHelper.GetItemsInAppFolderAsync(String subPath) in /src/Graph/GraphHelper.cs:line 203

I have the same issue.

I have done the following and it has worked for me.
Stop the add-on
Delete all backups on HASS
Delete all backups on OneDrive
Reboot the HASS server
All these steps might not be necessary but just restarting HASS didn't work so I tried fully resetting the add-on.
After this the add-on ran a backup which it uploaded and I wait to see how the next one goes.


Helm Chart: Remove upgrade and encryption key volumes

These can be migrated to secrets.
@jaymccon As discussed

Upgrade volume has already been removed.


Implement filter logic for control technology - Emissions filter logic

Definition of Ready

[x] Does this meet the INVEST criteria?
[x] Does this have a clearly defined user?
[x] Does this have an estimate?
[x] Does this have acceptance criteria?
[x] Does this have sufficient context for the specific functionality being developed (design, business rules, etc.)
[x] Does this have a dev link been provided in the design?
[x] Is this traceable to a feature, epic, or PI?

User Story
As a custom data download user I want the filter logic to function for control technology so that I can avoid producing a query with no results
Acceptance Criteria
Given that a user has selected an emissions subtype
When the functionality is displayed
Then the user is required to apply filter criteria for time period first
AND the optional filters are greyed out until time period criteria is applied
Given that a user has selected an emissions subtype on the custom data download
When filter criteria is applied for time period
Then the filter logic is engaged
AND the control technology filter is narrowed based on the selected time period and subsequent selections
Given that the filter logic is engaged
When the control technology filter panel functionality is displayed
Then non applicable selections are grayed out from the checklist
Given that the filter logic is engaged
When filter criteria is applied for control technology
Then the optional filters are narrowed based on the applied control technology filter criteria
Given that the filter logic is engaged
When the control technology  filter tag is removed
Then the control technology filter is narrowed based on applied criteria
Development Notes
Does this Story require 508 Testing?

[ ] Implementing a new authoring tool that will produce code / content for the application
[ ] Implementing a 3rd party widget that will be part of the application
[x] Adding new / updating custom functionality
[ ] Adding new / updating a page template
[ ] Adding new / replacing existing functionality (unless the replacement has already passed 508 testing)
[ ] Full Site Review prior to a scheduled EPA 508 review
[ ] Planning a video that will appear on the application
[ ] Producing a video that will appear on the application
[ ] Producing Training materials
[ ] Producing documents

Context
(User journeys, design mockups, architectural diagrams, business rules, data element definitions)
Testing
Test Case: TC458
Tester: @JanellC
508 Testing
Tester: @aprematta
Definition of Done

[x] Have all Acceptance Criteria been agreed to and validated by the scrum team?
[x] Has the code been unit tested and peer reviewed?
[x] Have the functional tests been executed?
[x] Have all defects been reviewed and dispositioned, resolved, or deferred?
[x] Is the user story ready to be deployed to the test/staging environments?

TC458 passed @tlageman-epa . This ticket is ready for 508 testing @aprematta


Norminette in flatpack container of vscode

In Berlin the clusters run via  flatpack on a container version of vscode , and some funcionalities dont get access:
"....This version is running inside a container and is therefore not ableto access SDKs on your host system!"

So in order to even run our zsh terminal we have to:
 "terminal.integrated.defaultProfile.linux": "bash",
    "terminal.integrated.profiles.linux": {
      "bash": {
        "path": "/usr/bin/flatpak-spawn",
        "args": ["--host", "--env=TERM=xterm-256color", "zsh"]
      }
    },

Im wondering if there is away to bypass this issue in some similar way, since the extension cant find the norminette installed on our computer, similarly how vscode cant find our zsh without this tweaks.
It works perfectly well at home but would love to run it on the clusters
I tried all the workarounds that came to my mind like giving the absolute norminette path /nfs/homes/ccattano/.local/bin/norminette with no avail
https://stackoverflowteams.com/c/42network/questions/2134

Due to the flatpak sandbox, vscode can read your home but not the system binaries.
Here is a solution to install the norminette inside the sandbox:
$ flatpak run --command=sh com.visualstudio.code
[📦 com.visualstudio.code ~]$ python3 -m pip install --user norminette

Another solution would be to use --filesystem=host and access the norminette via /run/host/xxx (but it kinda defeats the point of flatpak sandboxing ^^)

Could not succeed,  it installs but there is still not a way to access it
  Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.

And after adding it to PATH as suggested I get
Traceback (most recent call last):
  File "/nfs/homes/ccattano/.local/bin/norminette", line 5, in <module>
    from norminette.__main__ import main
ModuleNotFoundError: No module named 'norminette'

Could not succeed, it installs but there is still not a way to access it
WARNING: The script norminette is installed in '/nfs/homes/ccattano/.local/bin' which is not on PATH.
  Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.

And after adding it to PATH as suggested I get
Traceback (most recent call last):
  File "/nfs/homes/ccattano/.local/bin/norminette", line 5, in <module>
    from norminette.__main__ import main
ModuleNotFoundError: No module named 'norminette'

I have the same issue, any solution to fix this issue?

@jdkeke142 the only workaround I got is to download vscode binaries from tulhe official page(x86 64 Linux tar) and then adding it to you PATH. Instructions here in the last comment https://stackoverflowteams.com/c/42network/a/2145/15336


Changed the MONGO_URI to use Docker instead

Task linked: FRI-419 Modify MONGO URI in the create Frigg app


Consider defining type alias for dimension (String, String)

Expected behavior
It should be clear what each String in a dimension tuple represents.
Actual behavior
Saw this code and had to google search to remind myself that dimensions are just key-value pairs:
let dimensions: [(String, String)]

Please consider defining type alias:
typealias Dimension = (key: String, value: String)

let dimensions: [Dimension]

Steps to reproduce
N/A
If possible, minimal yet complete reproducer code (or URL to code)
N/A
SwiftMetrics version/commit hash
1.1.0
Swift & OS version (output of swift --version && uname -a)
N/A

Took a quick glance here, and naming this Dimension would collide with the type in Foundation. Maybe we could call it MetricDimension ?
This could be a usability win since we could also add some documentation on the typealias, but it'd be a breaking change. Anyone else have thoughts if this would be helpful?


update to v2 libs, Go 1.12, and add systemd service file

The only v2 library breaking change is that irc.Message now has the
trailing string as part of its params field.
Manually tested the bot on the fdroid channels and it seems to work just
fine.

@stapelberg FYI, if you want to review. I've added you as a collaborator so I can more easily ask for reviews in the future (and so you can do more if you want to, as well).