chore(main): release 1.1.13

:robot: I have created a release beep boop
1.1.13 (2023-05-26)
Features

ActionsMenu.tsx: add ProjectActionsMenu component to display project actions menu with links to project overview and API key configuration pages (f1a5642)
add bookmarks table to allow users to bookmark occurrences (f1a5642)
add user, account, session, and verification token tables to support authentication and authorization (f1a5642)
api, factories, app: update table names to plural form to follow convention and improve semantics. Add a new page for displaying a notice's occurrences. (f1a5642)
bookmarks, notices, sidebar: add bookmarks page to sidebar, add search functionality to bookmarks and notices pages, refactor OccurrencesTable to receive occurrencesIds instead of occurrences, add id to jwt token to persist user id across sessions, add types to next-auth session to include user id, add next-auth.d.ts to include types, update tsconfig.json to include next-auth.d.ts file. (b06a4a9)
migration.sql: add triggers and functions to increment/decrement project notices count and update hourly occurrences count on occurrence creation and deletion (28cbbe7)
migration.sql: refactor database schema to improve performance and add new features, including new tables for accounts, sessions, users, and occurrence bookmarks. Copy data from old tables to new ones. Add foreign key constraints and create new indexes. Drop old tables. (f1a5642)
next.config.js: add old routes for occurrences and notices (92c7739)
next.config.js: enable typedRoutes experimental feature (f1a5642)
occurrence/[occurrence_id]/page.tsx: add Occurrence page component with tabs to display occurrence details and related data (f1a5642)
Overview.tsx: add confirmation dialogs to delete project and delete all errors for a project (f1a5642)
package.json: add @next-auth/prisma-adapter dependency (f1a5642)
page.tsx: add support for search query parameter to filter projects by name (f1a5642)
page.tsx: remove occurrence page component as it is no longer used in the application (f1a5642)
prisma/migrations: make several columns on occurrence table required by removing NOT NULL constraint (f1a5642)
Sort.tsx, page.tsx: add sorting functionality to the project notices page and refactor the page to use tabs for better navigation and organization (f1a5642)

Bug Fixes

airbrakeActions.ts: change projectId parameter type from bigint to string to match the type in the database (f1a5642)
docker-compose.yml: reduce connection limit to 8 for development database to avoid overloading the database server (f1a5642)
OccurrenceChartWrapper.tsx: change occurrenceId type from bigint to string to match the type of the id in the database (52619ec)
page.tsx: remove unused project_id parameter from Notice component (d6f5336)
update revalidatePath calls to point to project page instead of notices page to avoid 404 errors (7b359b5)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/icoretech/airbroke/releases/tag/v1.1.13 :sunflower:


Extracting segmentation masks from bbox coordinates

Hello @daniel-j-h. Thank you for the amazing repository. However, I have some questions to use this repo for my project. I have an unlabeled dataset of UAV imagery with coordinates of bounding boxes ( min and max long and lat ). Is there a way to use your code to use OpenStreetMap to create segmentation masks as you did but instead by using coordinates of the bounding box of images?

I don't work on this anymore, see the note in the readme
https://github.com/mapbox/robosat/blob/cbb1c73328183afd2d6351b7bfa3f430b73103ea/README.md
for support please ping the Mapbox folks like @jqtrde.

I am sorry I was not aware of this.
@bkowshik @jqtrde Could you help me out on tis issue?

I am sorry I was not aware of this.
@jqtrde Could you or anyone else help me out on this issue?


Add AHRC sponsor link, use full URLs and correct formatting in Landing.js

This PR changes the following

Use full direct links
Format actual closing brackets/lines without trailing comma
Use the common, more recent name for "The Arts & Humanities Research Council" (not, or no longer, "of Great Britain"); and
add its website.

Let me know if this works for you.

@janpaul123 Sure. All of them?

Yeah I'm assuming you run some sort of linter on this? Usually you can configure them to keep trailing commas

Done. Also adds a trailing comma to the two entries at the end which I had split to multiple lines.


Resolver

@munificent and @nex3 I have changed the API to compile in async_await.dart to take a second argument which is a path.  As far as I can tell, this is only used by the analyzer in error reporting.  It seems like an improvement, but I can make it optional if you think that's better.
The DART_SDK environment variable is used to find the SDK.
Running over pub on my workstation (using the shell script sdk/bin/pub --version) before this change took 2.9 seconds.  After it takes 6.2 seconds.  Removing the use of the CodeFormatter in pub, which probably isn't needed any more, reduces that to 4.0 seconds.  Still kind of disappointing.

Will this be merged and looks like it needs rebasing


Add custom property support for Map<String, String>

It would be nice to let the developer add custom key/value pairs, which he wants to transmit as well via the JSON payload as Map<String,String> to provide a flexible and generic way of enhancing the payload which is sent to the configured endpoint.

See https://github.com/OpenLocate/openlocate-ios/issues/65

possibly means https://github.com/OpenLocate/openlocate-android/issues/59


anvil's block timestamp interval does not go below 1s

Component
Anvil
Have you ensured that all of these are up to date?

[X] Foundry
[X] Foundryup

What version of Foundry are you on?
anvil 0.2.0 (a470d63 2024-05-16T00:20:38.420768000Z)
What command(s) is the bug in?
anvil --block-time 0.01
Operating System
macOS (Apple Silicon)
Describe the bug
When setting --block-time to a value <1s (e.g. 0.01s), blocks will be created at the desired <1s rate, but block timestamps will still increase by 1s for each block. This results in block.timestamp rapidly getting far ahead of wall time.
--block-time values above 1s have correct intervals (e.g. timestamp increases by 2s per block with a --block-time of 2s), so this only seems to apply for values <1s.
Reproduction (observe how each block's timestamp goes up by 1s):
❯ anvil --block-time 0.01

                             _   _
                            (_) | |
      __ _   _ __   __   __  _  | |
     / _` | | '_ \  \ \ / / | | | |
    | (_| | | | | |  \ V /  | | | |
     \__,_| |_| |_|   \_/   |_| |_|

    0.2.0 (a470d63 2024-05-16T00:20:38.420768000Z)
    https://github.com/foundry-rs/foundry

Available Accounts
==================

(0) 0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266 (10000.000000000000000000 ETH)
(1) 0x70997970C51812dc3A010C7d01b50e0d17dc79C8 (10000.000000000000000000 ETH)
(2) 0x3C44CdDdB6a900fa2b585dd299e03d12FA4293BC (10000.000000000000000000 ETH)
(3) 0x90F79bf6EB2c4f870365E785982E1f101E93b906 (10000.000000000000000000 ETH)
(4) 0x15d34AAf54267DB7D7c367839AAf71A00a2C6A65 (10000.000000000000000000 ETH)
(5) 0x9965507D1a55bcC2695C58ba16FB37d819B0A4dc (10000.000000000000000000 ETH)
(6) 0x976EA74026E726554dB657fA54763abd0C3a0aa9 (10000.000000000000000000 ETH)
(7) 0x14dC79964da2C08b23698B3D3cc7Ca32193d9955 (10000.000000000000000000 ETH)
(8) 0x23618e81E3f5cdF7f54C3d65f7FBc0aBf5B21E8f (10000.000000000000000000 ETH)
(9) 0xa0Ee7A142d267C1f36714E4a8F75612F20a79720 (10000.000000000000000000 ETH)

Private Keys
==================

(0) 0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80
(1) 0x59c6995e998f97a5a0044966f0945389dc9e86dae88c7a8412f4603b6b78690d
(2) 0x5de4111afa1a4b94908f83103eb1f1706367c2e68ca870fc3fb9a804cdab365a
(3) 0x7c852118294e51e653712a81e05800f419141751be58f605c371e15141b007a6
(4) 0x47e179ec197488593b187f80a00eb0da91f1b9d0b13f8733639f19c30a34926a
(5) 0x8b3a350cf5c34c9194ca85829a2df0ec3153be0318b5e2d3348e872092edffba
(6) 0x92db14e403b83dfe3df233f83dfa3a0d7096f21ca9b0d6d6b8d88b2b4ec1564e
(7) 0x4bbbf85ce3377467afe5d46f804f221813b2bb87f24d81f60f1fcdbf7cbf4356
(8) 0xdbda1821b80551c9d65939329250298aa3472ba22feea921c0cf5d620ea67b97
(9) 0x2a871d0798f97d79848a013d4936a73bf4cc922c825d33c1cf7073dff6d409c6

Wallet
==================
Mnemonic:          test test test test test test test test test test test junk
Derivation path:   m/44'/60'/0'/0/

Chain ID
==================

31337

Base Fee
==================

1000000000

Gas Limit
==================

30000000

Genesis Timestamp
==================

1715840211

Listening on <IP_ADDRESS>:8545

    Block Number: 1
    Block Hash: 0xeca56a8d107e852363ae8a7751d130679266e24fb30a21794a925daaea376046
    Block Time: "Thu, 16 May 2024 06:16:52 +0000"

    Block Number: 2
    Block Hash: 0xc9cb337b3198b2f63c1fc4ada6a207aaae811a0ac83c6a43c7f304ac87b557dd
    Block Time: "Thu, 16 May 2024 06:16:53 +0000"

    Block Number: 3
    Block Hash: 0x12b492dfc7c20e63833bb9f64fb909a3b4b408d5fad23e8064aa5f746c504c2a
    Block Time: "Thu, 16 May 2024 06:16:54 +0000"

    Block Number: 4
    Block Hash: 0x7ba48879310c22b84b35b4380a533d051520ad340dc6765a686078cfbf4d39f1
    Block Time: "Thu, 16 May 2024 06:16:55 +0000"

    Block Number: 5
    Block Hash: 0xb7220b28fd063ae0460171a65640c72bbfbad0b235e8f3e471ae6f00244a4d72
    Block Time: "Thu, 16 May 2024 06:16:56 +0000"

    Block Number: 6
    Block Hash: 0x70c99f01c7dde1beb7c4475eb1cbd3e984483d85f021792745d6f39ee526d4de
    Block Time: "Thu, 16 May 2024 06:16:57 +0000"

    Block Number: 7
    Block Hash: 0x5ca657878d91937e18632af0ae4e62581a11056d172436b53f6fcd7eae54cfc3
    Block Time: "Thu, 16 May 2024 06:16:58 +0000"

    Block Number: 8
    Block Hash: 0xba03a9b70e155eacd1ea5c47aa36a7b1e76ebb2a0aa17b9992002060c3bc4fee
    Block Time: "Thu, 16 May 2024 06:16:59 +0000"

    Block Number: 9
    Block Hash: 0xce23210057796ae9225315016b68a2604d1d439cdd1820a67369af2304b64cb2
    Block Time: "Thu, 16 May 2024 06:17:00 +0000"

I guess the fix here might be non-trivial (or even wontfix), as block.timestamp is an integer ofc. I was imagining anvil maintain a separate internal "true" timestamp (lets call it true_timestamp) stored with decimals, and incrementing the block.timestamp only when floor(true_timestamp) increases.

yeah, I believe this breaks assumptions that timestamp always increases by at least one, but I can see how this could be useful and we can technically do it because we don't validate the timestamp.
@yash-atreya we can support float parsing and see what else we'd need to change in the time manager to support <1s intervals

right that's fair — up to you guys if you think it'd be okay to implement! fwiw if this does end up getting implemented, ideally the change would carry over to auto mining as well (as rn if you automine 100 blocks within 1s, block timestamp gets ahead of wall time by ~100s)


UI Refresh: Implement funding chart

Description

Add a toggle in the market details bar to switch between price and funding chart
Implement funding history chart

Ref: Figma Design

See also #1161

@avclarke The Figma link above seems to not work correctly anymore. Would appreciate if you could send a new one or update it.


Add options input to pass any flag to trivy

Hi, I took the liberty of opening this pull request to add a new "options" input.
This input allow us to pass any flag to trivy like the timeout
Resolve #29

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

@giorod3 Please help


fix(umd): now factory returns module

Fixes incorrect place of return module;

grunt build && grunt karma:ci works fine.
Need to run grunt build before grunt karma:ci via .travis.yml or package.json:
{
 "scripts": {
    "test": "grunt karma:ci",
    "pretest": "grunt build"
  }
}

Awesome :+1:
Just landed in Munich. As soon as I'm in front of a computer, I'll merge it in and create a new release. :wink:
Thx again.

@mdreizin Ok, merged and released on Bower. Travis build is also stable again.
I know about the build you have to do before the karma:ci tests run. It's not ideal, but prevents from errors that are added in the build step (which occured). We're working on the v2 version where we'll switch to gulp and semantic-release. So we'll fix that there probably. Thx again


[Linux] Only pass script arg to the method channel if it is not null (Fix #64)

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Not sure why tests are failing for Linux or other platforms that weren't modified. Feel free to close this and add the line however is convenient.


As a User of reconciliation service I need documentation that explains its usage.

Related to https://github.com/gnames/gnames/issues/101

Docs are done by @amandawhitmire  and @dimus at https://github.com/gnames/gnverifier/wiki/OpenRefine-readme


Implement "consume" loads on PowerPC

Like ARM, PowerPC is also a weakly ordered architecture where "acquire" loads are more expensive than "consume" loads, which require no special instructions.

Thanks for the PR! Unfortunately, the resulting code is less efficient than acquire load that uses isync because LLVM uses lwsync for powerpc's compiler_fence: https://godbolt.org/z/9MEnsWrT5

@taiki-e Huh… but why is compiler_fence issuing any kind of *sync at all? Based on the documentation, I would've expected it not to generate any special instructions:

compiler_fence does not emit any machine code, but restricts the kinds of memory re-ordering the compiler is allowed to do.

But empirically, that's clearly not the case…

compiler_fence's documentation is incorrect, see https://github.com/rust-lang/rust/issues/62256 for more.


3.0.0 oauth2 application flow  in AddSecurityDefinition in ASP.Net core 2.0

Hi all, I'm facing with an issue after change my security definitions from implicit (works fine!) to application. When I specify client key and client secret on Available authorizations popup, this put me on the same popup an error : auth errorTypeError: NetworkError when attempting to fetch resource. . On chrome network tab it seems to be 200 the request but it is an OPTIONS request and when I make the same request via browser, Azure Ad tells me

Sorry, but we’re having trouble signing you in.
AADSTS90056: This endpoint only accepts POST, OPTIONS requests. Received a GET request.

This are my security definitions:
options.AddSecurityDefinition("oauth2", new OAuth2Scheme
               {
                   Type = "oauth2",
                   Description = "OAuth2 App Authentication grant",
                   Flow = "application",
                   AuthorizationUrl = $"https://login.microsoftonline.com/{TenantId}/oauth2/v2.0/authorize",
                   Scopes = new Dictionary<string, string>
                       {

                       }
                   ,
                   TokenUrl = $"https://login.microsoftonline.com/{TenantId}/oauth2/token"

               });

               options.AddSecurityRequirement(new Dictionary<string, IEnumerable<string>>
                   {
                       {"oauth2",new string[]{ }},
                   });

I add to this configs but with no luck in any case:
 app.UseSwagger().UseSwaggerUI(options =>
                   {
                       options.SwaggerEndpoint("/swagger/v1/swagger.json", "API V1");
                       options.OAuthRealm(_azureAdOptions.ClientId);
                       options.OAuthAppName("Swagger Client App");
                       options.OAuthScopeSeparator(" ");
                       options.OAuthAdditionalQueryStringParams(new { resource = $"{Audience}" });
                   });

What's happening with this options?
I'm using:

ASP.Net Core 2.0
Swashbuckle.AspNetCore 3.0.0
Azure Ad as Identity provider.

PS: Also happens with flow: password.

swagger ui is a client-side app. this server-side grant type would have to send all of its information to the client for the ticket exchange and then you lose much of the benefits from the stricter grant type.
also to use auth code you would need to send the secret to the client which is very insecure.
https://github.com/swagger-api/swagger-ui/blob/master/docs/usage/oauth2.md
most oidc providers wont even let you use this grant type with client-side apps.

I think the implicit flow is the correct one for using Swagger UI.
It is less secure because all of the tokens are visible to the browser but at least everyone will know it ahead of time. If you use auth code and make the client secret available to the bowser that is even less secure because you are using a "server-side" flow on the client-side. If your team has decided they don't like the implicit grant type there will need to be a discussion on your team about how to manage this.
We have omitted the swagger ui client in our production system. In prod the swagger UI is a source of documentation not api experimentation for us. you could also limit the available scopes that the swagger UI client has to mitigate the risk. If you are setting up a public API you are using the Swagger UI as some kind of sandbox i still think implicit is appropriate for this use case
that got kinda rambly. I hope that answered your question


Support for nested suites

Hi,
do you plan to support nested suites?
Kind regards
Oliver

It would be nice to add support for nested suites. Since 2.0 we are going to remove suites from model and use labels instead. But I don't know how to specify the suites order in this case.
 Could you please give us more information about your case?

I use  have several nested suites in my Java testframework. Currently I just can have three levels: Suite, Test case and step. I would like to have an infinite depth.

@OLibutzki thanks, I got it. For now you can use features for 2-level grouping.

Всем привет. Вставлю свои 5 копеек.
У меня на проекте будет более 700 фич, которые хранятся  иерархически, по подсистемам конфигурации 1С.
Глубина вложенности может быть произвольной.
Поэтому в отчете нужен improvement, чтобы можно было отобразить иерархию фич с любой степенью вложенности.

This could possibly apply to nested describe blocks in javascript frameworks mocha and jasmine?

Done in Allure 2


Added Husky&Prettier to the contracts dir to mirror dApp - :beer:

Issue:
resolves #533
Description:
I mirrored the husky/prettier hook from the dApp project to the contract project.
Changes:

Added Husky:^4.3.0 to devDependencies
Added husky hook for pre-push
added all the missing js directories in alphabetical order to the prettier package.json scripts
pushed with no-verify to keep footprint small(bypass husky)

Testing:

merge pr into your branch and attempt to push branch to origin. The husky hook should run.

I don't know why this is failing:
1) Compensation Claims
       User claims
         "before each" hook for "should show a user their funds, and a total of all funds":
     Error: Timeout of 20000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves. (/home/runner/work/origin-dollar/origin-dollar/contracts/test/compensation/compensationClaims.js)

I didn't touch that code and I didn't format any js.

The Compensation Claims is flaky. Not related to the changes in this PR, your can ignore.


Define secret in UOD

Define a secret in the Aggregator that a UOD must know/contain for an engine to be able to establish a connection.
Please create clear and concise error messages that engines with a wrong secret will get if they attempt to connect.
This measure should ensure that random engines cannot connect to an aggregator on an open network.
Br Eskild

We need to conside exactly what the Threat Model is and what attacks and attackers we want to protect from.
Adding a secret by itself isn't a difficult change in the code, but introduces some complexity wrt. how the secret is distributed to the UODs/engines.

My assumption is that the aggregator will always run in a segregated network. As such, we don't need to protect from attackers but just from people who don't know too well about the consequences of their actions.
The main "threat" that I anticipate is that team A operates an aggregator for their own use, which team B attempts to use without first consulting with team A. In this case, the purpose of the secret is that team B has to communicate with team A to agree that they can be allowed use team A's aggregator before they get access (get the secret).
I propose we implement this by requiring basic authentication for the "register engine" endpoint on the aggregator. See https://fastapi.tiangolo.com/advanced/security/http-basic-auth/#simple-http-basic-auth for technical details.
It's a simple solution to implement. The credentials can be configured in environment variables.
Br Eskild


Bug <IP_ADDRESS> ARMA III Workshop Items not Downloading

System Information
Windows Server 2012 R2 64-bit
AMP TITAN v<IP_ADDRESS>
Mainline
I confirm:
[x] that I have searched for an existing bug report for this issue.
[x] that I am using the latest available version of AMP.
[x] that my operating system is up-to-date.
Symptoms
Workshop items for ARMA III not downloading
This is the log file that is happening from steamcmd
[2019-07-23 15:54:02] Loading workshop items for 1 installed apps for user [a:1:20388878]:
[2019-07-23 15:54:05] Loading workshop items for 1 installed apps for user [a:1:4243746936]:
[2019-07-23 15:54:06] [AppID 107410] Loaded workshop items in "d:\ampdatastore\instances\arma301\arma3\233780\steamapps\workshop" (0 installed, 2 needed)
[2019-07-23 15:54:06] [AppID 107410] Download item 333310405 requested by app
[2019-07-23 15:54:06] [AppID 107410] Starting Workshop download job (downloading  )
[2019-07-23 15:54:06] [AppID 107410] Update canceled: Failed to initialize depot 107410, manifest<PHONE_NUMBER>969528608 (Invalid Parameter) (Missing decryption key)
[2019-07-23 15:54:06] [AppID 107410] Download item 333310405 result : Failure
[2019-07-23 15:54:06] [AppID 107410] Finished Workshop download job : Missing decryption key
[2019-07-23 15:54:06] [AppID 107410] Download item 366425329 requested by app
[2019-07-23 15:54:06] [AppID 107410] Starting Workshop download job (downloading  )
[2019-07-23 15:54:07] [AppID 107410] Update canceled: Failed to initialize depot 107410, manifest<PHONE_NUMBER>452620843 (Invalid Parameter) (Missing decryption key)
[2019-07-23 15:54:07] [AppID 107410] Download item 366425329 result : Failure
[2019-07-23 15:54:07] [AppID 107410] Finished Workshop download job : Missing decryption key
[2019-07-23 15:54:07] [AppID 107410] Updating workshop item details failed with Failure
Also here is what my steamcmdplugin.kvp looks like
SteamWorkshop.WorkshopItemIDs=[333310405,366425329,450814997,463939057,497660133,497661914,501966277,541888371,549676314,583496184,583544987,620019431,621650475,628053534,632435682,708250744,723217262,767380317,773125288,773131200,782415569,783712164,800694387,834122161,843425103,843577117,843593391,843632231,853743366,882231372,884966711,952560410,953118282,1118660496,1374639840,1375890861,1378365088,1381545544,1447351824,1492916646]

Not an AMP issue, it's just asking SteamCMD to perform the download. You can put AMP into debug logging mode (Monitoring.LogLevel=0 in AMPConfig.conf for the instance) to see the full set of arguments it's giving to steamcmd - but the error you're seeing comes from SteamCMD rather than AMP.

How can I change it to use my credentials every time or is that not possible?
[09:57:08] [steamcmdplugin Debug] : Starting process ./arma3/steamcmd.exe
[09:57:08] [steamcmdplugin Debug] : Working Directory: ./arma3/
[09:57:08] [steamcmdplugin Debug] : Sensitive arguments, not logging.
[09:57:08] [steamcmdplugin Debug] : Using Win32 console assistant.
[09:57:08] [steamcmdplugin Debug] : Started process with ID 288
[09:57:08] [System Debug]         : CPID: 3620
[09:57:08] [System Debug]         : Redirecting stderr to 'D:\AMPDatastore\Instances\Arma301\arma3\logs\stderr.txt'
[09:57:08] [System Debug]         : [  0%] Checking for available updates...
[09:57:09] [System Debug]         : [----] Verifying installation...
[09:57:09] [System Debug]         : Steam Console Client (c) Valve Corporation
[09:57:09] [System Debug]         : -- type 'quit' to exit --
[09:57:10] [System Debug]         : Loading Steam API...OK.
[09:57:11] [System Debug]         : Connecting anonymously to Steam Public...Logged in OK
[09:57:12] [System Debug]         : Waiting for user info...OK
[09:57:12] [steamcmdplugin Warning] : No subscription error!
[09:57:12] [steamcmdplugin Warning] : No username and password

Okay I made a batch script any way to tell AMP to execute that batch when the update button is hit?
@echo off
set Mods[0]=333310405
set Mods[1]=366425329
set Mods[2]=450814997
set Mods[3]=463939057
set Mods[4]=497660133
set Mods[5]=497661914
set Mods[6]=501966277
set Mods[7]=541888371
set Mods[8]=549676314
set Mods[9]=583496184
set Mods[10]=583544987
set Mods[11]=620019431
set Mods[12]=621650475
set Mods[13]=628053534
set Mods[14]=632435682
set Mods[15]=708250744
set Mods[16]=723217262
set Mods[17]=767380317
set Mods[18]=773125288
set Mods[19]=773131200
set Mods[20]=782415569
set Mods[21]=783712164
set Mods[22]=800694387
set Mods[23]=834122161
set Mods[24]=843425103
set Mods[25]=843577117
set Mods[26]=843593391
set Mods[27]=843632231
set Mods[28]=853743366
set Mods[29]=882231372
set Mods[30]=884966711
set Mods[31]=952560410
set Mods[32]=953118282
set Mods[33]=1118660496
set Mods[34]=1374639840
set Mods[35]=1375890861
set Mods[36]=1378365088
set Mods[37]=1381545544
set Mods[38]=1447351824
set Mods[39]=1492916646
::set Mods[40]=
echo This Will Install/Update Arma3 Mods
set "login=UserNameHere"
set "pass=PasswordHere"
set "dir=D:\AMPDatastore\Instances\Arma301\arma3\233780"
set "x=0"
:SymLoop
if defined Mods[%x%] (
call set list=%list% +"workshop_download_item 107410 %%Mods[%x%]%%" validate
set /a "x+=1"
GOTO :SymLoop
)
echo.
steamcmd +login %login% %pass% +force_install_dir %dir% %list% +quit

No, and that is almost exactly what AMP does when you hit update. You can see what it's running by turning on Debug mode.

Closing due to no activity for over one month.


The NavigationAgent does not always move from region to region

Godot version
3.5 beta 1
System information
Ubuntu 20.04
Issue description
Green dot - target_location, blue - final_location. There are three regions in the demo, two of which have a cutout for the third one - "rounded". It was expected that the agent would not go around the circle in the center and would be able to freely enter and exit it:
https://user-images.githubusercontent.com/15277964/149674317-fd99098d-9f43-4c0a-9207-72fe8b5e177e.mp4
P.S. The behavior does not change regardless of whether the regions overlap each other or not.
Steps to reproduce
See Map_CSG.tscn
Minimal reproduction project
MOBA_3.5_v3.zip

@Killfrra
The center navigation mesh and the outside navigation meshes have problematic verticies around the circle. The verticies are within edge_connection_margin of the navigation_map and the positions are nearly on top of each other but small float errors prevent a proper merge at such close proximity. The individual verticies do not overlap properly or have working angles to other edges. With a rebaked, slightly smaller navmesh and a 0.1-0.2 distance between edges merging happens correctly.
The reason why the agent can sometimes still enter or exit the inner circle is that when close enough the path get_closest_point will start the agent already inside the correct navmesh.

Can be closed as this is not a bug but an issue with the imported navmesh.
The imported navmesh has small float errors for the vertex so it fails the navmesh vertex merge.
The navmesh also does not properly align the edges so it also fails the navmesh edge connections.
Everything else was explained above. When the mesh is fixed navigation works fine.


Add new server side stub with dependencies and remove the existing server

Describe your feature request :
Add new server side stub with dependencies and remove the existing server
Implementation tasks and next steps :

[x] complete #44
[x] complete #45

Alternate proposals if any :
Additional context :

Completed adding new server side stub and its dependencies


changed article links in it footer

Checklist:

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the main branch of freeCodeCamp.
[x] I have tested these changes either locally on my machine, or GitPod.

Closes #XXXXX

I am having some issues with testing if the title lengths are compatible with the footer width - I will be back

ok, managed to test, and the titles seem not too long


RFC: graceful error/exceptions handling and documentation

Key information

RFC PR: (leave this empty)
Related issue(s), if known: n/a
Area: all
Meet tenets: Yes
Approved by: ''
Reviewed by: ''

Summary
Revisit the exceptions/errors currently thrown by the utilities, and document them to raise awareness and visibility for developers using the powertools at scale in production.

One paragraph explanation of the feature.

Motivation
Currently, the libraries throw exceptions/errors if unwanted behaviour happens, as it's expected. However, not all developers getting started might be aware of this for a lack of familiarity with the tools.
It would be good to raise visibility about this behaviour so that developers can take action on this and handle exceptions thrown by the powertools gracefully.

Why are we doing this? What use cases does it support? What is the expected outcome?

This is especially relevant when the developer needs to decide whether this invocation should be retried or not.
It would be good to understand if errors make sense at all.
Do we want the whole Lambda function invocation to fail if an observability-related step such as logging or tracing fails? We should take this into account.
Proposal
As in the summary:

Revisit the exceptions/errors currently thrown by the utilities, and decide on a different behaviour when it makes more sense;
Document error/exceptions thrown (via code comments or docs) to raise awareness and visibility for developers using the powertools at scale in production;

This is the bulk of the RFC.

Explain the design in enough detail for somebody familiar with Powertools to understand it, and for somebody familiar with the implementation to implement it.

If this feature should be available in other runtimes (e.g. Java), how would this look like to ensure consistency?
User Experience
How would customers use it?
Any configuration or corner cases you'd expect?
Demonstration of before and after on how the experience will be better
Drawbacks

Why should we not do this?

Do we need additional dependencies? Impact performance/package size?

Rationale and alternatives

What other designs have been considered? Why not them?
What is the impact of not doing this?

Unresolved questions

Optional, stash area for topics that need further development e.g. TBD

@saragerion - Sounds interesting.

Ensure runtime errors are clearly documented
Default behavior for non-critical features should be not to raise an error like raise_on_empty_metrics, raise_on_no_idempotency_key and raise_on_transform_error.
Document how to use the middleware to handle errors (especially in decorators)
Potentially removed errors like InvalidLoggerSamplingRateError and replace with warnings


upgrade terminate

Summary
There is an ongoing issue with event-stream since a malicious person took over, see
https://github.com/dwyl/terminate/pull/36
https://github.com/indexzero/ps-tree/pull/34
https://github.com/dominictarr/event-stream/issues/116
Test plan

close https://github.com/smooth-code/jest-puppeteer/issues/157


Request block by cricbuzz

hi my request is block by cricbuzz. iI think cricbuzz block my server IP, what I do please help.

Use proxy or change server
Update the user agent
or
use Vercel or Heroku - Example - https://github.com/mskian/cri-deploy

thanks @mskian I try one of solution.


how can I check wasm plugin‘s logs？’

(This is used to request new product features, please visit https://discuss.istio.io for questions on using Istio)
Describe the feature request
how can I check wasm plugin‘s logs？’
Describe alternatives you've considered
how can I check wasm plugin‘s logs？’
Affected product area (please put an X in all that apply)
[ ] Docs
[ ] Installation
[ ] Networking
[ ] Performance and Scalability
[x ] Extensions and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure
Affected features (please put an X in all that apply)
[ ] Multi Cluster
[ ] Virtual Machine
[ ] Multi Control Plane
Additional context

if you are talking about log like the following code do, it will send to stdout by default, you can check them by kubectl logs <POD> -cistio-proxy
https://github.com/tetratelabs/proxy-wasm-go-sdk/blob/6240ca76120709132cc33281bd2d0f29dd8cb0e4/examples/http_headers/main.go#L88

thanks


Troubleshooting a simple implementation of the commander pattern

This is just a troubleshooting question. Ie, I'm using Onyx, trying to implement the commander pattern over kafka. But I'm not seeing any results written to the topic.
Borrowing from the existing Onyx Commander Example, I tried something very similar: writing EDN to a kafka topic and seeing some results.
In a docker compose, I stand up zookeeper, kafka, and my application. I then i) create the topics and ii) write EDN messages to them (using the franzy EDN serializer and deserializers). I then iii) try to start the onyx cluster, which starts up without error. However, I don’t see the "Peer %s saw segment %s" :lifecycle/after-batch message in any console.
I’ve made a small example that highlights my setup. I'm sure that I've got some small config wrong. I'm just not sure what it is. Can someone point out my error? To run this, just do the following.

git clone
docker-compose up
cider-connect to localhost:7888 (we're port mapping and I hard-coded the port; see here)

I then try to the following (see the comment scratchpad in (see here)

(one-setup-topics)
(two-write-to-topic)
(onyx.api/submit-job peer-config job)

Context from Slack: Kafka set up is suspect. Kafka consumers aren't reading as expected from Kafka, excluding Onyx for the moment.

Hey @MichaelDrogalis . I dug in a little bit. In my test project, I have a docker compose container that just has kafka tools.
After I docker-compose up, I can cider-connect (to localhost:7888). From there, I can setup topics.

I know that works, because I can use the kafka-console-producer to produce to the source scanner-command topic. I can then successfully consume from the same source scanner-command topic. When consuming from the destination scanner topic, nothing is there.
I can also successfully produce messages with Clojure code. And again, using the kafka-console-consumer , I can consume from the source topic. But I cannot consume from the destination topic.

All this tells me that I've set up the workflow incorrectly in Onyx. And that messages are not getting processed from source scanner-command to destination scanner topics. I'll keep digging into it. But I wanted to see if there was a glaring error in my onyx setup. Let me know if you want me to throw up any onyx or kafka logs. But I'm wondering about things like:

Do I have enough peers to run the job ?
Is my job configuration correct?
What's tenancy id ?
Is that printer agent still nil ( obviously I borrowed this from the learn onyx project : ) ?

These are just some bash functions I used to produce and consume to and from topics. And when producing using kafka-produce , I just sent a message like asdf,{:foo :bar} (key and value).

export KAFKA_HOST=simplekafkaonyxcommander_kafka_1
export ZOOKEEPER_HOST=simplekafkaonyxcommander_zookeeper_1
export BOOTSTRAP_SERVERS=${KAFKA_HOST}:9092;
export ZOOKEEPER_CONNECT=${ZOOKEEPER_HOST}:2181;

kafka-produce() {
    kafka-console-producer \
        --broker-list ${BOOTSTRAP_SERVERS} \
        --topic $1 \
        --property parse.key=true \
        --property key.separator=,
    };
kafka-consume() {
    kafka-console-consumer \
      --zookeeper ${ZOOKEEPER_CONNECT} \
      --topic $1 \
      --property print.key=true \
      --property key.separator=, \
      --from-beginning
    };

On my queue to look at later today. Thanks for investigating!

I also noticed that I was incorrectly using the :kafka/deserializer-fn config. Now I have this.
:kafka/deserializer-fn :com.interrupt.streaming.core/deserialize-kafka-message
...
:kafka/serializer-fn :com.interrupt.streaming.core/serialize-kafka-message

But there's still something missing. A) I don't see the echo lifecycle message Peer %s saw message %s in the onyx.log or cider repl. And B) I don't see any processed messages in the scanner output topic.
Let me know if anything jumps out at you. I'll keep digging.

Sorry, this one slipped away from me last night. Regarding your first set of questions:

If a peer config was invalid, our Schema would reject it. Consult the cheat sheet for info on what each key means.
Same for job configuration & tenancy ID. There are descriptions of all these keys in the cheat sheet.

Do you see any exceptions in onyx.log? On that note, can you Gist your log file? I'm wondering whether your job ever started up in the first place.
One quick thing you can do to make sure your Kafka readers are picking up any data is to add an :onyx/fn to them:
In your catalog entry:
:onyx/fn ::spy

Then define a function:
(defn spy [segment]
 (prn segment)
segment)

You can at least check what data is coming in and going out on the input topics as a quick spot check.

Hey @MichaelDrogalis , sorry for the delay in responding. So I threw up gists for the onyx.log. Some meaningful data that I see are 3 sets of these. And this looks like things are starting up and processing ok.
Peer c17f0979-51e5-dae9-fee1-aab10210d533 - Enough peers are active, starting the task
Peer c17f0979-51e5-dae9-fee1-aab10210d533 - Fell out of task lifecycle loop
Peer c17f0979-51e5-dae9-fee1-aab10210d533 - Stopping task lifecycle.

ButI did add a segment spy to read and write tasks, to help troubleshoot. And I don't spy those segments in the read task. For context, I also added gists of logs for these accompanying environments. I do see what looks like some errors at the bottom of the zookeeper log. Those happen when Onyx fires up, and I don't quite know what it means.

zookeeper logs (in docker-compose)
kafka logs (in docker-compose)
app logs (in docker-compose)

From the looks of your Onyx logs, your cluster is starting, then immediately stopping.
You're using with-test-env: https://github.com/twashing/simple-kafka-onyx-commander/blob/master/src/clojure/com/interrupt/streaming/core.clj#L206
If you look at what that macro does, it starts an Onyx environment in memory, then executed the body, then stops the Onyx env. onyx.api/submit-job will submit a job out to the cluster and immediately return. You should either

Block after api/submit-job
Not use with-test-env in this set up. Using Docker-compose gets you closer to a real Onyx set up, in which case you probably want to take the contents of the with-test-env macro and move them directly into your app, tweaking it to suit your needs.

I'd recommend the first to make sure this is the problem. Sorry I didn't spot it sooner. If I'm wrong again, happy to keep trying to debug with you!

Sweet. Thanks a bunch for the tip. That got it mostly working.
A) I had an exception in the write task: Insufficient usable storage for new log of length= (discussed in the onyx clojurians slack channel). I just had to configure 1G memory allocation for the Aeron shm directory (/dev/shm). Is there a way of calculating a reasonable size?
B) But mainly, I don't seem to have my output message in the right format. Where do we finnagle the message in the expected format?
17-05-01 06:38:14 15d8546edfe6 WARN [onyx.peer.task-lifecycle:131] -
                              java.lang.Thread.run              Thread.java:  745
java.util.concurrent.ThreadPoolExecutor$Worker.run  ThreadPoolExecutor.java:  617
 java.util.concurrent.ThreadPoolExecutor.runWorker  ThreadPoolExecutor.java: 1142
                                               ...
                 clojure.core.async/thread-call/fn                async.clj:  442
 onyx.peer.task-lifecycle/start-task-lifecycle!/fn       task_lifecycle.clj:  902
      onyx.peer.task-lifecycle/run-task-lifecycle!       task_lifecycle.clj:  448
                onyx.peer.task-lifecycle/iteration       task_lifecycle.clj:  429
    onyx.peer.task-lifecycle.TaskStateMachine/exec       task_lifecycle.clj:  826
onyx.peer.task-lifecycle/wrap-lifecycle-metrics/fn       task_lifecycle.clj:  854
              onyx.peer.task-lifecycle/write-batch       task_lifecycle.clj:  117
  onyx.plugin.kafka.KafkaWriteMessages/write-batch                kafka.clj:  286
           onyx.plugin.kafka.KafkaWriteMessages/fn                kafka.clj:  288
                                 clojure.core/into                 core.clj: 6614
                            clojure.core/transduce                 core.clj: 6601
                       clojure.core.protocols/fn/G            protocols.clj:   13
                         clojure.core.protocols/fn            protocols.clj:   75
                 clojure.core.protocols/seq-reduce            protocols.clj:   31
                       clojure.core.protocols/fn/G            protocols.clj:   19
                         clojure.core.protocols/fn            protocols.clj:  136
                                               ...
                            clojure.core/map/fn/fn                 core.clj: 2633
                               clojure.core/cat/fn                 core.clj: 7327
                               clojure.core/reduce                 core.clj: 6544
                                               ...
                clojure.core/preserving-reduced/fn                 core.clj: 7316
                            clojure.core/map/fn/fn                 core.clj: 2633
        onyx.plugin.kafka.KafkaWriteMessages/fn/fn                kafka.clj:  292
        onyx.plugin.kafka/message->producer-record                kafka.clj:  241
                              clojure.core/ex-info                 core.clj: 4617
clojure.lang.ExceptionInfo: Payload is missing required. Need message key :message
         payload: {:foo :bar}
    recoverable?: false
clojure.lang.ExceptionInfo: Handling uncaught exception thrown inside task lifecycle :lifecycle/write-batch. Killing the job. -> Exception type: clojure.lang.ExceptionInfo. Exception message: Payload is missing required. Need message key :message
          job-id: #uuid "10d348a7-ecc3-b0da-4317-b88df873aaae"
        metadata: {:job-id #uuid "10d348a7-ecc3-b0da-4317-b88df873aaae", :job-hash "7555c7b867726317f7deff6cb9aab6ed2765e962c888a0cf7bb8b186bef4b"}
         payload: {:foo :bar}
         peer-id: #uuid "7e37afba-1df4-326e-7de2-9630614f543f"
    recoverable?: false
       task-name: :write-messages

Generally (A) is a function of how many messages are buffered in memory. The default settings (around 1-2 gigs) are almost always sufficient. Docker is the exception since you have to explicitly give it that amount of memory. You should set set now.
(B) Tack an :onyx/fn on your Kafka output task to change the structure of the outgoing segment and get a :message key. Your serializer will receive the content of :message. You're trying to do the serialization over the entire record, when you only need to turn the payload into a byte array. See onyx-kafka's tests for how this works.

@MichaelDrogalis Yesss, that did the trick. Messages are getting processed to the output Kafka topic.
Ok, I have the basic down now, and can build out the rest. I really appreciate your help on this. I feel I now have a solid footing with Onyx. Cheers.

@twashing Fantastic! Happy to help if you hit anything else.

Sweet, will do. Thanks a bunch @MichaelDrogalis .


Strange editor autocompletion

Description
What steps will reproduce the problem?

Create a dummy package like this just to have something simple to play with, all listed files can be empty:
myPackage/
myPackage/util2
myPackage/util2/util3File.py
myPackage/util2/util2File.py
myPackage/util2/init.py
myPackage/util2/util1File.py
myPackage/util1
myPackage/util1/util3File.py
myPackage/util1/util2File.py
myPackage/util1/init.py
myPackage/util1/util1File.py
myPackage/util3
myPackage/util3/util3File.py
myPackage/util3/util2File.py
myPackage/util3/init.py
myPackage/util3/util1File.py
myPackage/init.py
add the folder where the myPackage is located to the python path using the PATH_MANAGER
try to edit some import statements using the autocompletion of the user
i.e.
from myPackage.util1 import util1File
from myPackage.util1 import util2File

What is the expected output? What do you see instead?
I would expect the autocompletion works always however it works just for the first import statement
Please provide any additional information below
What is interesting and strange is that if I add a statment like this
import myPackage.util2
at the begining i.e. not in the "from" form it seems that the auto completion works again in all lines.
Version and main components

Spyder Version: 2.3.6
Python Version: 3.4.3
Qt Versions:  4.8.6, PyQt4 (API v2) 4.11.3 on Linux

Optional dependencies
pyflakes >=0.6.0:  0.9.2 (OK)
pep8 >=0.6      :  1.6.2 (OK)
pygments >=1.6  :  2.0.2 (OK)
IPython >=1.0   :  4.0.0 (OK)
zmq >=2.1.11    :  14.7.0 (OK)
qtconsole >=4.0 :  4.0.1 (OK)
pandas >=0.13.1 :  0.16.2 (OK)
sphinx >=0.6.6  :  1.2.3 (OK)
psutil >=0.3    :  2.2.1 (OK)
rope >=0.9.2    :  0.9.4-1 (OK)
jedi >=0.8.1    :  0.9.0 (OK)
matplotlib >=1.0:  1.4.3 (OK)
sympy >=0.7.3   :  <IP_ADDRESS> (OK)
pylint >=0.25   :  0.25.1 (OK)

@blink1073?

I can't reproduce with the master branch:

Note this only works because these files are imported in the __init__ files in the subpackage.

You are right if you use some other packages like skimage or numpy it seems to work.
I tried to add the following initializations to my "dummy" package into the
myPackage/init.py file:
from . import util
from . import util1
from . import util2
from . import util3
but this doesn't help. So I suppose my dummy package is wrong, since numpy, skimage and others work as expected.
On the otherhand if I do import mypackage then afterward if I do tab completion into the ipython console it works as expected but not in the editor...
 What m I missing or doing wrong?

The IPython console has the advantage of being able to evaluate everything, and in general can offer better introspection.

Closing as this is a very old issue.


Do not compile resx files

Hi
With prevision version of ASP.NET we had option to deliver non-compiled resx file. That was great when you need a way to change OOB strings at already installed site: customers was able to do that by they own.
With ASP.NET Core looks like there is no way avoid compiling of resx files. Am I wrong?

I think I have just what you are looking for
https://github.com/joeaudette/cloudscribe.Web.Localization
also be sure to see the ASP.NET Core localization docs if you haven't already
https://docs.asp.net/en/latest/fundamentals/localization.html

Well, I did (almost) the same, but still I think what compiling of resources is not always needed, so will be great to have this as an option.
PS and offtopic. Removing \bin folder turns folder structure to mess ((( I know, who cares in case of Cloud, but in IIS it looks really like a mess.

@joeaudette btw, am I wrong, or in your project resx file will be compiled and published to server?

@antonGritsenko I am embedding the resx files in my class library and overriding them if needed with resx files in a folder in the main web app.
in any case I think ultimately resx files always get compiled, if they are on disk then they are JIT compiled

@joeaudette  Not really. In old ASP.NET you can have just App_GlobalResources folder and set all resx files as "Content". No *.resource.dll will be created, only the proxy class in main assembly.

@antonGritsenko I don't think that is true, if you add more resx files to App_GlobalResources folder it slows startup time because it does JIT the files, you don't see the dll because it is down in the windows temporary files

@joeaudette we talking about little bit different things. You talking about JIT compiler (when site starting), I'm talking about "main" compiler and publishing. I don't care how long my site starting - two seconds or three :)

if you pre-compile the resx then it does not need to be jit compiled, if you don't then it does I think

same with .aspx files .ascx files etc

but in case of pre-compiled I can't change them.

correct. because resx files must be compiled either pre-compiled or jit compiled, it is best to only include resx files for languages you are actually using in the App_GlobalResources folder, because those files do need to be jit compiled and if you have lots of them it can slow down startup a lot.

I know that :) And that's what talking about - I don't want to pre-compile resx file. At all. Because I have to change them later. And I know about performance issue, so those file are not very big and I'm using one file per language, so no real penalty (may be about 2 or 3 seconds).
And again, with old ASP.NET I has option - pre-compile or not. Now I don't have such option. All resx pre-compiled, no matter where are they in project structure.

Moreover, customer may want to add new language later by they own, or create new sub-language (en-UK or whatever). In case of old ASP.NET they needs only to copy one file. How to do that in new ASP.NET - have no idea.

that does not appear true to me, in the main web app you can add resx files into a folder
services.AddLocalization(options => options.ResourcesPath = "GlobalResources");

raw resx files there can be edited at any time, I believe they are JIT compiled
when it comes to the case of class library projects, if I embed the resx files I'm not sure they get pre-compiled, they might still get jit compiled because I did not specifically configure them to be compiled.
but the thing is there are 2 different resx models now. There is still the old way for static resources where you create a default resx file like MyResources.resx and that one gets a designer file and the keys can have no spaces. The designer file will definitely get compiled.
the new resx model where you don't create a default resx files, you only create ones for specific languages like MyResources.fr.resx, no designer file is created at all and the keys are allowed to have spaces. This is the model I'm using and the one needed for IStringLocalizer. If I embed those files I'm not sure they get pre-compiled unless I specifically indicate to do that in project.json.
Maybe someone on the team can confirm or shed light about it

raw resx files there can be edited at any time
On IIS, after a site was published?
And you don't have all those "en-US", "de" etc folders in published site(or in \bin folder of VS studio project)?

note also that I don't think you can use the old static resource way with resx files in a folder in the main web app. I think that only works for the new way with IStringLocalizer an dnot using a default resx file
I have not yet fully tested publishing, but from initial test, I can make my raw resx files be in the published out put like this:
    "publishOptions": {
    "include": [
      "wwwroot",
        "Views",
        "GlobalResources",
      "appsettings.json",
      "web.config"
    ]
  },

where GlobalResources is the folder with my resx files. I do still see the folders for languages with dlls in them, I tried to exclude that like this but it did not work
    "buildOptions": {
        "emitEntryPoint": true,
        "preserveCompilationContext": true,
        "compile": {
            "exclude": [ "GlobalResources/**" ]
       }
   },

I have not yet tested deployment to see if I can still edit those resx files after deployment

I have same experience - publishing is not a problem, but no way to exclude them from compile.

have you tried editing a resx file after publishing or adding a new one for another language? I have not tried it yet, hope it works or my goals will not be met

Not yet, have some issues with my implementation of IString* :) and don't have time right now to fix it ) Will check this today later.

crap! I just tried it and editing the resx file after deployment did not work. this sucks!

so I guess my solution does still allow clients to add languages or override resx from class libraries, but it requires them to re-publish the app if they do that. still useful but not ideal

now that I've had some time to process this, I think my initial anger at my cheese being moved has given way to acceptance. after all, adding a new language to a site is an infrequent activity, and I guess the framework should not be optimized for infrequent activity. If someone wants to add a new language, they will need to re-publish and I will give up on the idea of deploying raw resx files. the benefit is that since the resx files don't need to be jit compiled since they are pre-compiled means better performance even if there are a lot of languages included.

Hi folks, there are no plans to have this built-in, but with the extensibility in the system it's certainly possible to build such a system. We see some of the linked projects above offer some solutions to this, so perhaps check those out.

@Eilon , can you please review the thread. The issue was not about ADD such function to Core. The issue (even with custom solution) is that we can't disable compilation of a resx file.

Oh, oops, of course 😄 A few of us met and we focused too much on the overall scenario and not the actual problem! 😄

Ok I think the way to do this is to add something like this to your project.json file:
  "resourceExclude": "**/*.resx",

This (or something similar to it) should instruct the .NET compiler to not process the RESX files in any folder as resources. You might also need to then add them back as "content" files in the publishOptions/include section:
  "publishOptions": {
    "include": [
      "**/*.resx",
      ...
     ]
  },

But that's mostly just from memory 😄 If you're seeing issues with the options in project.json, please file an issue at https://github.com/dotnet/cli/issues/.

@Eilon  thanks a lot!
For history, the right way to exclude resources is using embed:
"embed": {       "exclude": [ "Resources/**/*.resx" ]     }

Ah, yes, that looks right 😄

Hi there!
I've been trying to disable the resx compilation (we want to be able to swap in new resx files to provide custom string support for our clients), and I cannot get @antonGritsenko 's solution to work, despite trying multiple ways to disable them in my project.json.
I am using @joeaudette 's solution to use Shared Resource files (https://github.com/joeaudette/cloudscribe.Web.Localization)
If someone could please point me in the right direction I would be very grateful!
Here's some excerpts from my project.json:

"dependencies": {
    "Microsoft.AspNetCore.Diagnostics": "1.0.0",
    "Microsoft.AspNetCore.Mvc": "1.0.0",
    "Microsoft.AspNetCore.Razor.Tools": {
      "version": "1.0.0-preview2-final",
      "type": "build"
    },
"tools": {
    "Microsoft.AspNetCore.Razor.Tools": "1.0.0-preview2-final",
    "Microsoft.AspNetCore.Server.IISIntegration.Tools": "1.0.0-preview2-final"
  },

  "frameworks": {
    "net452": {
      "frameworkAssemblies": {
        "System.ServiceProcess": "<IP_ADDRESS>"
      }
    }
  },
"embed": { "exclude": [ "GlobalResources/**/*.resx", "GlobalResources" ] },
  "buildOptions": {
    "emitEntryPoint": true,
    "preserveCompilationContext": true,
    "platform": "x86",
    "compile": {
      "excludeFiles": [
        "GlobalResources\\AdministrationSharedResources.en.resx",
        "GlobalResources\\AdministrationSharedResources.es.resx",
        "GlobalResources\\AdministrationSharedResources.fr.resx",
      ],
      "exclude": "GlobalResources"
    }
  },
  "publishOptions": {
    "include": [
      "wwwroot",
      "**.cshtml",
      "appsettings.json",
      "web.config",
      "GlobalResources"
    ]
  },

Here's excerpts from my Startup.cs:
 public void ConfigureServices(IServiceCollection services)
        {

            services.Configure<GlobalResourceOptions>(Configuration.GetSection("GlobalResourceOptions"));
            services.AddSingleton<IStringLocalizerFactory, GlobalResourceManagerStringLocalizerFactory>();

            services.AddLocalization(options => options.ResourcesPath = "GlobalResources");
            services.Configure<RequestLocalizationOptions>(options =>
            {
                var supportedCultures = new[]
                {
                new CultureInfo("en"),
                new CultureInfo("fr"),
                new CultureInfo("es"),
            };
                options.FallBackToParentCultures = true;
                options.FallBackToParentUICultures = true;
                options.DefaultRequestCulture = new RequestCulture(culture: "en-US", uiCulture: "en-US");
                options.SupportedCultures = supportedCultures;
                options.SupportedUICultures = supportedCultures;
            });

            services.AddMvc()
                .AddViewLocalization(LanguageViewLocationExpanderFormat.Suffix)
                .AddDataAnnotationsLocalization();

        }

        public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
        {

            var locOptions = app.ApplicationServices.GetService<IOptions<RequestLocalizationOptions>>();
            app.UseRequestLocalization(locOptions.Value);
}

Thank you again!

@vameszar here is my preject.json snippet:
  "buildOptions": {     "emitEntryPoint": true, // change this to false to build assembly     "preserveCompilationContext": true,     "compile": {       "include": [ "../SharedCode/**/*.cs", "**/*.cs" ],       "exclude": [         "wwwroot",         "node_modules",         ".bower",         "App_GlobalResources",         "**/*.resx"       ]     },     "embed": {       "exclude": [ "Resources/**/*.resx" ]     },     "define": [ "DEBUG", "netfx4" ],     "defines": [ "DEBUG", "netfx4" ]   },

Hmmm... I've altered my project.json to be closer to yours and still no dice. I am going to try making a sample project and see if I can get it working there.  I'll check in later if I still cannot figure it out.
Thank you for the help!

please consider re-adding the option to leave resx files un-compiled, customers for a web app require different message langue for the same error or information message a web app pops.
think about this as an added value to allow customers to sort of customize their web app after delivery.
which dosen't mean a new language.

@alfred-zaki you can file an issue in Home repo, the issues in this repo were moved there


attempt to compare number with nil

As soon as the environment starts, multiple notifications are generated that never stop saying...
Cannot Detect App
An Error Happened
attempt to compare number with nil
i am using arch linux
                   -`                    n0c7u4@4n70n10
                  .o+`                   --------------
                 `ooo/                   OS: Arch Linux x86_64
                `+oooo:                  Host: PS63 Modern 8RD REV:1.0
               `+oooooo:                 Kernel: 6.1.4-arch1-1
               -+oooooo+:                Uptime: 2 hours, 12 mins
             `/:-:++oooo+:               Packages: 718 (pacman)
            `/++++/+++++++:              Shell: bash 5.1.16
           `/++++++++++++++:             Resolution: 1920x1080, 1920x1080
          `/+++ooooooooooooo/`           WM: awesome
         ./ooosssso++osssssso+`          Theme: decay # or dark_decay, or light_decay [GTK3]
        .oossssso-````/ossssss+`         Terminal: kitty
       -osssssso.      :ssssssso.        CPU: Intel i7-8565U (8) @ 4.600GHz
      :osssssss/        osssso+++.       GPU: Intel WhiskeyLake-U GT2 [UHD Graphics 620]
     /ossssssss/        +ssssooo/-       GPU: NVIDIA GeForce GTX 1050 Ti Max-Q
   `/ossssso+/:-        -:/+osssso+-     Memory: 14817MiB / 15839MiB
  `+sso+:-`                 `.-/+oso:
 `++:.                           `-/+/
 .`                                 `/

Thank you very much for your attention, I would really appreciate your help

/usr/share/awesome/lib/wibox/widget/textbox.lua:171: bad argument #2 to 'parse_markup' (string expected, got nill)
you can debug the error says it is hosted here

Sorry, I realized that the problem is awesomeWM and not the environment, I leave the solution link

https://github.com/awesomeWM/awesome/issues/546

I had the same error again but the solution I found is not possible, it seems that it was not correct

I have observed in the parts of the .config where the awesome folder is located, the times that the code uses the set_markup_silently() function and I comment them to see what changes there are, this does not make any changes, it remains the same...
The part of the code in the address where it says that the error is is the following...
--- Set the text of the textbox.(with
-- [Pango markup](https://docs.gtk.org/Pango/pango_markup.html)).
--
-- @tparam string text The text to set. This can contain pango markup (e.g.
--   `<b>bold</b>`). You can use `gears.string.escape` to escape
--   parts of it.
-- @method set_markup_silently
-- @treturn[1] boolean true
-- @treturn[2] boolean false
-- @treturn[2] string Error message explaining why the markup was invalid.
function textbox:set_markup_silently(text)
    if self._private.markup == text then
        return true
    end

    local attr, parsed = Pango.parse_markup(text, -1, 0)
    -- In case of error, attr is false and parsed is a GLib.Error instance.
    if not attr then
         return false, parsed.message or tostring(parsed)
    end

    self._private.markup = text
    self._private.layout.text = parsed
    self._private.layout.attributes = attr
    self:emit_signal("widget::redraw_needed")
    self:emit_signal("widget::layout_changed")
    self:emit_signal("property::markup", text)
    return true
 end

Thank you for answering because the error is not critical, since my temporary solution was to comment the lines that generate this repetitive notification between lines 7 and 14 of your notifications.lua code... but this is not a solution...
Before the request to verify the volume and temperature codes, they are fine, I raise and lower the volume correctly and the temperature is displayed on the dashboard properly, I also did what you asked me to test the codes and they do not throw any errors. .
To your other request this is the result...
in this section it is repeated constantly...
error: attempt to compare number with nil
2023-02-06 06:15:28 W: awesome: luaA_dofunction:78: error while running function!
stack traceback:
[C]: in function 'math.min'
/usr/share/awesome/lib/wibox/widget/slider.lua:381: in function 'wibox.widget.slider.set_value'
(...tail calls...)
...n0c7u4/.config/awesome/ui/dashboard/modules/controls.lua:47: in function <...n0c7u4/.config/awesome/ui/dashboard/modules/controls.lua:46>
(...tail calls...)
...n0c7u4/.config/awesome/ui/dashboard/modules/controls.lua:62: in function <...n0c7u4/.config/awesome/ui/dashboard/modules/controls.lua:61>
[C]: in field 'emit_signal'
/home/n0c7u4/.config/awesome/signal/volume.lua:17: in function </home/n0c7u4/.config/awesome/signal/volume.lua:16>
(...tail calls...)
/usr/share/awesome/lib/awful/spawn.lua:491: in function </usr/share/awesome/lib/awful/spawn.lua:485>
[C]: in function 'xpcall'
/usr/share/awesome/lib/gears/protected_call.lua:41: in function </usr/share/awesome/lib/gears/protected_call.lua:40>
(...tail calls...)
/usr/share/awesome/lib/awful/spawn.lua:591: in upvalue 'done'
/usr/share/awesome/lib/awful/spawn.lua:606: in function </usr/share/awesome/lib/awful/spawn.lua:598>
error: attempt to compare number with nil
2023-02-06 06:15:31 W: awesome: luaA_dofunction:78: error while running function!
stack traceback:
[C]: in function 'math.min'
/usr/share/awesome/lib/wibox/widget/slider.lua:381: in function 'wibox.widget.slider.set_value'
(...tail calls...)
...n0c7u4/.config/awesome/ui/dashboard/modules/controls.lua:47: in function <...n0c7u4/.config/awesome/ui/dashboard/modules/controls.lua:46>
(...tail calls...)
...n0c7u4/.config/awesome/ui/dashboard/modules/controls.lua:62: in function <...n0c7u4/.config/awesome/ui/dashboard/modules/controls.lua:61>
[C]: in field 'emit_signal'
/home/n0c7u4/.config/awesome/signal/volume.lua:17: in function </home/n0c7u4/.config/awesome/signal/volume.lua:16>
(...tail calls...)
error: attempt to compare number with nil
2023-02-06 06:15:34 W: awesome: luaA_dofunction:78: error while running function!
stack traceback:
[C]: in function 'math.min'
/usr/share/awesome/lib/wibox/widget/slider.lua:381: in function 'wibox.widget.slider.set_value'
(...tail calls...)
...n0c7u4/.config/awesome/ui/dashboard/modules/controls.lua:47: in function <...n0c7u4/.config/awesome/ui/dashboard/modules/controls.lua:46>
(...tail calls...)
...n0c7u4/.config/awesome/ui/dashboard/modules/controls.lua:62: in function <...n0c7u4/.config/awesome/ui/dashboard/modules/controls.lua:61>
[C]: in field 'emit_signal'
/home/n0c7u4/.config/awesome/signal/volume.lua:17: in function </home/n0c7u4/.config/awesome/signal/volume.lua:16>
(...tail calls...)

Hello again, sorry for late response, i was kinda busy with exams lol... well this looks very strange, because it looks like it can't get the output of the volume signal, and this usually happen when it can't execute the volume.sh script because one of the next two reasons:

the shell is something like fish which do not accept bash/zsh-like syntax for scripting so it keeps throwing errors.
there are some requirements that aren't being satisfied at all, like some missing program.

so my questions here are, are u using something like pipewire? the volume.sh script just works with pulseaudio iirc (sadly, i wanna change this because i figured out that pipewire is so much better and this script don't work at all)
and well, looks like now u're using zsh so it should work ok, but can you show me the output of the ./scripts/volume.sh get script? i wanna see if there is something diff there and on my system
in fact this issue is strange tbh :sweat_smile: cuz something in your end looks ok, but this is still failing LOL

Aha! Xephyr is no longer spitting out errors after I installed light (which tbf I thought wouldn't work on my computer, and maybe it doesn't, but it certainly satisfies the dotfiles). @St3v3n-4n4 I fixed the issues by installing playerctl, jq, jq-devel, and light. Don't know if that will help you.

Aha! Xephyr is no longer spitting out errors after I installed light (which tbf I thought wouldn't work on my computer, and maybe it doesn't, but it certainly satisfies the dotfiles). @St3v3n-4n4 I fixed the issues by installing playerctl, jq, jq-devel, and light. Don't know if that will help you.
oh so you stopped from getting the error notification?

Aha! Xephyr is no longer spitting out errors after I installed light (which tbf I thought wouldn't work on my computer, and maybe it doesn't, but it certainly satisfies the dotfiles). @St3v3n-4n4 I fixed the issues by installing playerctl, jq, jq-devel, and light. Don't know if that will help you.

oh so you stopped from getting the error notification?

Yep! It's so perfect now. Thank you so much for creating such a beautiful theme.

if I have playerctl, jq and light installed, and the problem continues

@St3v3n-4n4 Do you have the development version of jq installed? It also looks like the issue is likely with the volume part. I don't have pactl, but do you have all audio controls and drivers installed? Double check that devel versions (if available) are installed, I often find that is an issue.

I'm not using pipewire I'm using pulseaudio
this is the script, it works fine for me, the volume goes up and down
#!/usr/bin/env bash

SINK=$(pactl list short sinks | sed -e 's,^\\([0-9][0-9]*\\)[^0-9].*,\\1,' | head -n 1 | awk '{print $1}');

get () {
    pactl list sinks | grep '^[[:space:]]Volume:' | head -n $(( $SINK + 1 )) | tail -n 1 | awk '{print $5}' | tr '%' ' ' | xargs
}

mute () {
    pactl set-sink-mute $SINK toggle
}

if [[ $1 == "get" ]]; then
    get
fi

if [[ $1 == "mute" ]]; then
    mute
fi

the command you told me to use returns nothing
./scripts/volume.sh get

It is that it is very strange, because everything works fine, only the error notification comes out constantly, my master solution was to deactivate it :v but it is not a solution anyway

the version I have is jq-1.6-4

@St3v3n-4n4 The script for volume should return the value of your current volume. Mine is 19. If it's not returning a number, then even though you can adjust the slider, I don't think the module is working. And again, jq-1.6-4 is fine, but I also installed the development version. I think I have both alsa and pulse installed (I don't have pipewire installed, but pactl is the ctrl for pulse), maybe you could see if installing the alsa-pulse joint package thing works? Else I could see if there's an easy way to disable the audio widget.

Okay, possible lead, @St3v3n-4n4 @AlphaTechnolog : When I run the side widget and adjust my volume, the header of the notification on the top right screen says Xfce Volume Control as the header. Could the issue be that somehow the widget is looking for xfce4-mixer?

okay yes, I'm seeing that the volume.sh script doesn't work, but set-volume.sh does, since the slider does work

but if mute works, in that script only mute works

So likely it's not actually changing the volume? Running ./scripts/set-volume.sh get returns invalid volume specification (as it should). Can you run pactl --help?

bash set-volumen.sh 50

in this way you lower the volume to 50%
if it works for me
pactl --help

of the code, the truth is about to read it and looking at where it is called in the vs code, I think that set-volume is the one that is called when the volume bar is moved on the dashboard

I think it should be noted but if I don't make myself understood well it's because I use a translator, I speak Spanish

Set-volume is called, but volume.sh is what is causing problems. Does 'pactl list sinks' work?

if it returns the following
Destino #0
	Estado: SUSPENDED
	Nombre: alsa_output.pci-0000_00_1f.3.analog-stereo
	Descripción: Audio Interno Estéreo analógico
	Controlador: module-alsa-card.c
	Especificación de muestra: s16le 2ch 48000Hz
	Mapa de canales: front-left,front-right
	Módulo propietario: 6
	Silencio: no
	Volumen: front-left: 65536 / 100% / 0,00 dB,   front-right: 65536 / 100% / 0,00 dB
	       balance 0,00
	Volumen base: 65536 / 100% / 0,00 dB
	Fuente que lo monitoriza: alsa_output.pci-0000_00_1f.3.analog-stereo.monitor
	Latencia: 0 usec, configurados 0 usec
	Indicadores: HARDWARE HW_MUTE_CTRL HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY
	Propiedades:
		alsa.resolution_bits = "16"
		device.api = "alsa"
		device.class = "sound"
		alsa.class = "generic"
		alsa.subclass = "generic-mix"
		alsa.name = "ALC298 Analog"
		alsa.id = "ALC298 Analog"
		alsa.subdevice = "0"
		alsa.subdevice_name = "subdevice #0"
		alsa.device = "0"
		alsa.card = "0"
		alsa.card_name = "HDA Intel PCH"
		alsa.long_card_name = "HDA Intel PCH at 0xa4410000 irq 155"
		alsa.driver_name = "snd_hda_intel"
		device.bus_path = "pci-0000:00:1f.3"
		sysfs.path = "/devices/pci0000:00/0000:00:1f.3/sound/card0"
		device.bus = "pci"
		device.vendor.id = "8086"
		device.vendor.name = "Intel Corporation"
		device.product.id = "9dc8"
		device.product.name = "Cannon Point-LP High Definition Audio Controller"
		device.form_factor = "internal"
		device.string = "front:0"
		device.buffering.buffer_size = "352800"
		device.buffering.fragment_size = "176400"
		device.access_mode = "mmap+timer"
		device.profile.name = "analog-stereo"
		device.profile.description = "Estéreo analógico"
		device.description = "Audio Interno Estéreo analógico"
		module-udev-detect.discovered = "1"
		device.icon_name = "audio-card-pci"
	Puertos:
		analog-output-speaker: Speakers (tipo: Altavoz, prioridad: 10000, disponibilidad desconocida)
		analog-output-headphones: Headphones (tipo: Auriculares, prioridad: 9900, No disponible)
	Puerto Activo: analog-output-speaker
	Formatos:
		pcm

Hmm, shows same as mine (besides minor device variations). Can you run the actual shell in the terminal?
pactl list sinks | grep '^[[:space:]]Volume:' | head -n $(( $SINK + 1 )) | tail -n 1 | awk '{print $5}' | tr '%' ' ' | xargs

if nothing returns me
I know that this is not interesting in the subject, but the truth is that the dotfile is very cool

I think it might be because your computer is in Spanish!! Looking at what the file is calling, it's saying to output the result that comes after the word "Volume", but on your pactl list sinks it's "Volumen" instead. Could you try changing your global language locale to English and see if that helps?

hehehe What a mistake of mine, and that I changed several parts of the code because I used Spanish and I did not realize that detail, yes that was the error

Hurray!! I'm so glad it's working now

the same for me, the truth is that it happened to me, I had already taken into account the language thing but this really happened to me, for someone who speaks Spanish the only thing they should change in the scripts is to use the word volumen and not volume
pactl list sinks | grep '^[[:space:]]Volumen:' | head -n $(( $SINK + 1 )) | tail -n 1 | awk '{print $5}' | tr '%' ' ' | xargs

Thank you very much for helping me. The truth is that for this problem I investigated for two full days to make it something very simple. @quiltedstars @AlphaTechnolog

I'm glad to be able to help, and thank you for being patient in figuring out how to fix it rather than just giving up!

That's how Linux is, that's why I like it even though it sounds masochistic


#845 - Fix multiple Incremental DOM instance issues when extending from another component that has a separate instance

Add a renderer() callback to customise the renderer.
This allows a child component to inherit the render() and renderer() from a parent component so that multiple versions of Incremental DOM aren't brought in (only the one from the parent). While this isn't bullet proof, it's a good boyscout refactor to contain things more closely to where they're used in the base Componnet class and covers the major use case of inheriting from a parent where you're not redefining the renderer or render methods. The added benefit is that renderer() can now be overridden, which is desirable as we move towards a more decoupled rendering pipeline (even if we continue to support Incremental DOM).

Missing tests.


Enable-PSRemoting/Install-PowerShellRemoting should have configuration name that is independent of the version

Steps to reproduce
Enable-PSRemoting

Expected behavior
Predictable ConfigurationName created that is not tied to the specific version as administrators cannot guess which specific version is installed on the target.
Would make sense to keep the version specific ConfigurationName for side-by-side use, but perhaps we should also create a PowerShell-6 (last one wins, so it may not be the latest)
Actual behavior
ConfigurationName is powershell-6.0.1 or worse powershell-6.1.0-Preview1
Environment data
Name                           Value
----                           -----
PSVersion                      6.0.2
PSEdition                      Core
GitCommitId                    v6.0.2
OS                             Darwin 17.4.0 Darwin Kernel Version 17.4.0: Sun Dec 17 09:19:54 PST 2017; root:xnu-4570.41.2~1/RELEASE_X86_64
Platform                       Unix
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

Fixed in #6519


[BWC] fix mixedCluster and rolling upgrades

This PR fixes mixedCluster and rolling upgrades by spoofing OpenSearch
version 1.0.0 as Legacy version 7.10.2. With this commit an OpenSearch 1.x node
can join a legacy (<= 7.10.2) cluster and rolling upgrades work as expected.
Mixed clusters will not work beyond the duration of the upgrade since shards
cannot be replicated from upgraded nodes to nodes running older versions.
Signed-off-by: Nicholas Walter Knize<EMAIL_ADDRESS>

start gradle check

working the following failure:
REPRODUCE WITH: ./gradlew ':modules:repository-url:internalClusterTest' --tests "org.opensearch.repositories.url.URLSnapshotRestoreIT.testUrlRepository" -Dtests.seed=941AE0E9E203B1BE -Dtests.security.manager=true -Dtests.jvm.argline="-XX:TieredStopAtLevel=1" -Dtests.locale=ko-KR -Dtests.timezone=Pacific/Efate -Druntime.java=15

start gradle check

start gradle check

Looks like two test failures:
 - org.opensearch.transport.netty4.SimpleNetty4TransportTests.testTcpHandshake
 - org.opensearch.transport.netty4.SimpleNetty4TransportTests.testHandshakeUpdatesVersion

start gradle check


Llama2 execution on AMD CPU - not getting any results

Hello,
I am trying to run Llama2 model on AMD by accelerating it on CPU, but it keeps on running for more than an hour and gets stuck at "warmup" stage. For AIE it runs within couple of minutes.
Is there any way to speed up the process of execution for CPU or has anyone executed it on CPU who can tell how many hours did it actually take to run the model dedicatedly on CPU?
Thanks,
Ashima

If you running llama2 in the same way like you are running on NPU, just by changing the --target then it should work.
NPU run
python run_awq.py --task decode --target aie --w_bit 4
CPU run
python run_awq.py --task decode --target cpu --w_bit 4

Thanks for the reply @uday610
I am running the exact same command for CPU, but I am not able to generate any output even after running it for couple of hours.
Can you help me to know how long it usually takes to run Llam2 model with 4 bit AQW quantization on CPU?

This 1.1 flow is obsoleted because we have flow with 1.2 now. Hence closing this issue


java-backend: support SMTLIB translation for KVar binders

~Support the format [smtlib((forall|exists ((#1 <sort>)) <term>))]. See the test for an example.~
Support SMTLIB translation for binders of sort KVar.

Now this PR becomes more general, supporting SMTLIB translation for arbitrary KVar binders. Please re-review.


Error in SIP METS Profile structMapElement reqlevel and reference

The SIP METS profile v2-0-4 gives the reqlevel of the requirement for a structMap in the METS as SHOULD wheras in CSIP it is MUST. The METS profile element also references CSIP_3 rather than the structMap requirement CSIP_80.

Looking into this...

In the SIP specification one can read:

3.6. Extended use of the METS structural map (element structMap)
The mandatory METS structural map element  is intended to provide an overview of the components included in the package. It can also link elements of that structure to associated content files and metadata. In the CSIP the structMap describes the higher-level structure of all the content in the root and may link to existing representations.
The SIP specification does not change or extend any of the requirements already defined by the Common Specification for Information Packages (for more information see section 5.3.6 of the CSIP)

The METS schema defines the scriptMap as MAY, however, the Common Specification restricts its use o MUST. The SIP specification then changes its cardinallity to MAY again, which is incorrect.
Furthermore, the reference should be to CSIP80 and not CSIP30.

If the SIP spec does not change anything about the requirement relative to the structMap, then it should not refer this requirement at all, because it is implicit that SIP should include all requirements from CSIP.

@karinbredenberg Do you have an opinion on this? Should we remove the reference from SIP spec altogether?

CSIP80 states that the cardinality of the structmap must be 1 or more, and that is what is implemented in the current commons ip version available

The structMap is the only mandatory element in METS therefore its a MUST in CSIP. As @luis100 writes its then not needed to repeat in E-ARK SIP unless you want it to cover a structMap not being the CSIP one so if you want to say you can use whatever extra structMaps you want.
Not sure where in the mets.xsd for METS version 1 you find it being a may, its mandatory and can be repeated as many times as needed.

You're right. Sorry about that. I was looking at this file https://www.loc.gov/standards/mets/profile_docs/mets.profile.v2-0.xsd which led me to believe that it was optional.

Fixed in commit https://github.com/DILCISBoard/E-ARK-SIP/commit/c97a77b7c93f9943707b8eccdde6f6dc0d3f13b6.
The fix will be part of the next release v2.1.1


Environment variable tables from extensions for admin docs (as includable .adoc file)

The following is based on an intense discussion with @dragonchaser
With the current and upcoming extensions, we have environment variables for that extensions that need to be documented. Because the doc team cannot take care on what has changed on a regular basis respectively when there is a new oCIS release, we need to automate this task. There are some requirements to get that done:

Docs will include ready to use files provided by dev via an automatism based on the Antora format (.adoc)
These files will get included by a docs build run automatically
Each file provided is created automatically, there is no intervention from the docs
Each extension will get its own and clearly identifyable file name
Like extension-proxy-environment.adoc which helps if we have in future different things for an extension to do
One single location for all files docs need to include
Tagging has to be used to define versions - on the oCIS side AND on the docs side
When a new oCIS version is published, a notification to docs will be made to switch the tag on docs and start a doc build. This procedure is already well working eg. with core or the clients.
It is highly recommendable that we do some thinking upfront what information will be provided and how we want to render it.
The proposal is, that we use tables (not a big deal) but include in this table an info with which version an env has been added or decommissioned (some braining necessary). Else a customer will have hard times to find differences or relevant info.

This implementation should be made asap to enable the docs team to implement it properly.
The docs team is happy to help how to define the table layout.
@micbar @wkloucek (pls edit to add more)
@EParzefall FYI

Update: post a discussion with @micbar, we have decided:

For the location to use the existing path: https://github.com/owncloud/ocis/tree/docs/extensions/_includes
Note that this is the doc branch in ocis
Note that this folder contains already automatically built documents for the dev docs
A new mechanism hast to be implemented to create tags which are necessary to reference to a stable and public version.

Update:
Just did a push to the docs branch into the _includes folder with all *_configvars.md converted to *_configvars.adoc files (excluded the accounts files as this will go away). Just take one file as template.
Additional build notes/rules when automated:

Use the proper name on the top line for identification
There must be no space between the + or - sign and the version number (to avoid auto-linebreaks)
A + sign before the version number means added with,
a - sign means deprectated with, just see the text at the bottom (which must be printed...).
Multi lined environment variables: the first one ends with a blank and a plus sign and continues with the next env for the same row on the next line. If there would ever be a third or more envs for the same row, the same applies to each line but the last one
Each env is embedded between ticks (just see into a raw file and you get it)
Each value starting with http (or https) must have a leading \ to avoid generating an unresolvable link. Example: \https:localhost:9200. This mechanism creates plain text, else it would render to a clickable link. The only exception, if this is implementable, if the link points to a real existing outer world address.
The same as above is true when there is an email address like<EMAIL_ADDRESS>
@dragonchaser you can now start implementing the magic to autogenerate those files 😄
@EParzefall fyi

Note: as I just learned, CI fully overwrites the _include directory on every merge which wipes out any data added manually. Now the stuff added is gone. I therefore will add the files locally in our docs and post a link to the sources here.

@dragonchaser you can find the files for reference now at:
https://github.com/owncloud/docs-ocis/tree/master/modules/ROOT/partials/extension_tables

This has been implemented, closing


Transactional Interactions

Allows Discord notifications for all transactional notifications. Allow interaction from the message itself.
Academy / Legacy Exams

Academy exam course enrolled (All) - Complete
Academy exam result (All) - Complete
Legacy exam assigned (All) - Complete
Legacy exam result (All) - Complete

Roster Membership

New transfer request (Senior Staff)
Transfer action (deny/approve) (Senior Staff)
Removed from roster (Senior Staff)
Transfer pending (Senior Staff)

Support Tickets

New Ticket (VATUSA Staff)
Ticket assigned to you (Facility Staff)
Ticket reply (All)
Ticket reopened (All)
Ticket closed (All)

Academy exams complete.


feat!: upgrade to initializers system in Bridgetown 1.2

What kind of change does this PR introduce? (check at least one)

[ ] Bugfix
[x] Feature
[ ] Code style update
[x] Refactor
[ ] Build-related changes
[ ] Other, please describe:

Does this PR introduce a breaking change? (check one)

[x] Yes
[ ] No

If yes, please describe the impact and migration path for existing applications:
The PR fulfills these requirements:

[x] All tests are passing
[x] New/updated tests are included

Other information:
I modeled these changes after those done in

@rickychilcott yep just don't have the bandwidth atm and it's not a major priority since you can still do it both ways but hoping to get back to this in the nearish future


[Storage] Fix changelog typo for file_request_intent

As title states

API change check
API changes are not detected in this pull request.


CA2254 doesn't trigger in Azure Function projects

Use (say) an interpolated string in LogError, LogWarning etc. calls in an ASP.NET project, and this warning will trigger.
But in an Azure Function it won't trigger.  I even made it an explicit error and it still didn't trigger.
This is most likely the reason: https://github.com/dotnet/roslyn-analyzers/issues/5987
Furthermore in an Azure Function project:-
log.LogInformation("C# HTTP trigger function processed a request, {name}.");

does not give a compilation error saying that an arg is missing (for params object[] args).  Again, ASP.NET projects get this right.
I am using Visual Studio 2022 173.2 and .NET 6.

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

ID: f5662dc7-dcf6-47d5-9340-55b22ebfeca8
Version Independent ID: 0df9ae80-f763-ba60-a876-a98e86d64887
Content: CA2254: Template should be a static expression - .NET
Content Source: docs/fundamentals/code-analysis/quality-rules/ca2254.md
Product: dotnet-fundamentals
GitHub Login: @Youssef1313
Microsoft Alias: gewarren

This isn't a docs issue, but I'm not sure where it should be transferred. Let's ask @gewarren or @BillWagner as I assume they'd know.

@Ievangelist That would be dotnet/roslyn-analyzers, but I'm not sure if that's a duplicate of https://github.com/dotnet/roslyn-analyzers/issues/5987 and can just be closed?

I cannot transfer to that repo. I'm going to close this, as it seems to be captured in that issue - and this isn't a docs issue.


Links missing in sign-up process

Describe the bug

The "Create Account" page requires the user to acknowledge "I agree with the terms of service of Open Collective", but the page does not link to them.
The Terms of Service requires that "each Financial Contributor must (i) read the full description of the Collective and its mission" but there is no link the the full description and/or mission

To Reproduce
Steps to reproduce the behavior:

Go to "Create Account"
Observe there is a checkbox labelled "I agree with the terms of service of Open Collective"
Note that there is no link to the terms of service page

Also

Go to section 4 of the Terms of Service page
Observe that the text says "each Financial Contributor must (i) read the full description of the Collective and its mission"
Note there is no link the the full description and/or mission

Expected behavior

The "Create Account" page should include a link to the Terms of Service page
The Terms of Service page should provide appropriate links allowing the user to read the the full description of the Collective and its mission

Screenshots
None provided
Desktop (please complete the following information):
Issue applies when accessing the site from any device or platform. For completeness, I was using

OS: Ubuntu Linux 20.04.5
Browser: Firefox
Version: 108

Smartphone (please complete the following information):
Issue applies when accessing the site from any device or platform. I did not test from mobile
Additional context
I first came to opencollective.org through clicking a link to become a regular contributor to the Logseq project.  I was directed to the "Create Account" page where I needed to check a box labelled "I agree with the terms of service of Open Collective".  Unfortunately the page does not contain a link to the terms of service.
Obviously it wasn't hard to track down the terms of service page, since it seems to be linked from pretty much every page on the site except the account creation page.  However the terms of service page includes the requirement that "each Financial Contributor must (i) read the full description of the Collective and its mission" - once again the text does not include a link to the appropriate document.  I have got a sense of what the Collective is about from browsing the site and watching the introductory video, but I really have no idea whether I've complied with this specific requirement in section 4 of the terms of service.

Triage Template (core team only)
This template is for members of the team to triage for prioritisation. For more guidance see https://www.loom.com/share/369ab467fbc64dec848085d38ff57ca0:
P1 high frequency, high impact
P2 low frequency, high impact
P3 high frequency, low impact
P4 low frequency, low impact
Examples of high impact - a problem affects users during an essential process (expenses and payments > onboarding and registration > contributing) with no workaround.
High frequency - >10% of users affected (measured as a proportion of total potential users for this case).

@grantm Thank you for documenting this issue, there should indeed be a link there.
The implementation was done in https://github.com/opencollective/opencollective-frontend/pull/7834, but looking at the relevant design it seems that the link was not part of the initial proposal:

We could make Terms of service clickable there.
cc @opencollective/design @SudharakaP in case I'm missing anything

A duplicate issue was created in https://github.com/opencollective/opencollective/issues/6489 and resolved in 8680


neil add kaocha: normalize alias indentation

Please answer the following questions and leave the below in as part of your PR.

[x] This PR corresponds to an issue with a clear problem statement.

https://github.com/babashka/neil/issues/215

[x] I have updated the CHANGELOG.md file with a description of the addressed issue.

Problem
This PR addresses #215. Currently, neil add kaocha may add the :kaocha alias with one fewer indent than expected, leaving a deps.edn file like this:
{:paths ["src"]
 :deps {babashka/fs {:mvn/version "0.2.16"}
        babashka/process {:mvn/version "0.4.16"}
        borkdude/edamame {:mvn/version "1.4.25"}
        cheshire/cheshire {:mvn/version "5.11.0"}
        enlive/enlive {:mvn/version "1.1.6"}
        org.babashka/cli {:mvn/version "0.6.44"}
        org.clj-commons/hickory {:mvn/version "0.7.3"}
        org.clojure/data.xml {:mvn/version "0.0.8"}}
 :aliases
 {:dev
  {:extra-paths ["dev" "test"]
   :extra-deps {io.github.nextjournal/clerk {:mvn/version "0.13.842"}}}

 :kaocha ;; added by neil
 {:extra-deps {lambdaisland/kaocha {:mvn/version "1.91.1392"}}
  :main-opts ["-m" "kaocha.runner"]}}}

The :dev and :kaocha aliases don't line up.
Proposed solution

Split add-alias into a pure part (add-alias-str) and an impure part (add-alias)
Implement add-alias-str using only borkdude.rewrite-edn/assoc-in, avoid manually calculating indent spaces

Tests
I've tried to write the tests so that it's easy to see visually how indents line up.
Future work
If we merge this PR, we may consider storing kaocha-alias and nrepl-alias as clojure data. Currently, they are strings:
https://github.com/teodorlu/neil/blob/02c0fc9c68db2e9f0cd876605eb1aca6ab7a013f/src/babashka/neil.clj#L205-L209
https://github.com/teodorlu/neil/blob/02c0fc9c68db2e9f0cd876605eb1aca6ab7a013f/src/babashka/neil.clj#L225-L229

Thanks!


Add internal middlewares to the realtime compiler

Abstract
Adds a simple middleware feature to the realtime compiler HttpKernel.
This separates out concerns like path rewriting from the router. There is currently no public API added for this feature. As such, the middleware types are not explicitly enforced.
Usage
Middlewares are simple. They are callables that accept the incoming Request instance, and returns a modified one. Each middleware gets executed in order, and override the request instance, before being passed to the Router.
Closure middleware
$this->middleware[] = function (Request $request): Request {
    // Do something with the request here...

    return $request;
};

Invokable class middleware
class ExampleMiddleware extends BaseHttpKernel
{
    public function __invoke(Request $request): Request
    {
        // Do something with the request here...

        return $request;
    }
}

class HttpKernel
    /** @var array<class-string<callable>>|array<callable(Request): Request> */
    protected array $middleware = [
        PathNormalizerMiddleware::class,
    ];
}

Invokable class middleware (anonymous)
$this->middleware[] = new class {
    public function __invoke(Request $request): Request {
        // Do something with the request here...

        return $request;
    }
};

Using invokable classes adds a ~0.280ms overhead for the class loader. Which is nothing. Especially since they are much more readable.


Use pydata theme

🚀 Pull Request
Description

WORKING IN PROGRESS - DO NOT MERGE
Adoption of the pydata theme (https://pydata-sphinx-theme.readthedocs.io/en/latest/) for Iris.  This has meant some slight restructuring of the rst files to allow for the navigation.
Others changes of note:

Add icons to each section on homepage
Added a icon and link to the support (Iris Discussions)
Added the version number as text after the logo in the top left corner.  It also shows "latest" or "stable" if appropriate.

I plan to  bring the PR out of draft after Iris 3.2 has been released.
You can view the built docs here: https://tkknight-iris-test-doc.readthedocs.io/en/latest/
Related to https://github.com/SciTools/iris/discussions/4344
TODO

[ ] Decide how to handle the figure labelling in the gallery, imho the figure numbering spacing is too close.  Experimenting in theme_override.css.  Was tempted to disable the figure numbering, not there yet though.
[ ] Post messages on legacy support channels driving traffic to Github discussions instead (after this PR is merged/released?)
[ ] Remove the TODOs in the source (auto populates todo entries on the index page for easy reference)
[ ] Whats new
[ ] Considers structuring docs around the quadrants tutorials, how- to's, explanation, reference (see https://documentation.divio.com/).  This could be a follow on pr.
[ ] Could incoporate the Getting Started into the user guide.

Consult Iris pull request check list

Some random comments on this ...
Most broadly, I love the layout + structure but dislike the rendering.
On the plus side, I really like the layout, epecially the way that the sections now run across the top as main headings/tabs.
On the minus side, I find the extreme paleness of everything with the thin fonts rather hard on the eyes.

links are hard to spot because the blue is so muted
code sections don't stand out very strongly
everything runs together, the only thing breaking the flow is the headings (though these are fairly bold)

On the other hand, I guess there is nothing that we can do about that if we want to be consistent with Numpy docs et al?
But I did agree with @trexfeathers that sphinx-book is generally easier to look at - and, I think, to navigate
Some detail points

In the API pages,  I miss the clear highlighting of class headers (existing ones have a light-blue background)
In the User Guide, we don't seem to have subsections appearing in the LHS index (though we do still have a multi-level index for the API pages)

P.S. however, looking at the Pandas and Bokeh docs, it looks like those visibility points can be addressed while staying within the "pydata theme".
numpy maybe not so much -- that one does seem to suffer from the same criticisms (for me)

Is it possible to put a gallery link somewhere more prominent?  Both Matplotlib and Cartopy have the Examples/Gallery link in the top bar, so if we did the same I think it would be more intuitive for users to find.


Provide support for non EBS-backed instances

I'm submitting a...

[ ] bug report
[x] feature request
[ ] support request - read the FAQ first!
[ ] kudos, thank you, warm fuzzy

What is the current behavior?
As far as I can understand, today there's no way to launch instances that aren't EBS-backed (e.g. instance-store backed ones).
As a matter of fact, the current implementation always assumes the user wants to provision a EBS volume along with the instance, but that might actually not be the case for instance types that come with ephemeral local storage devices (which are a lot, see the link above).
What do you think?

Might be a good idea to allow per worker group external launch templates here: https://github.com/terraform-aws-modules/terraform-aws-eks/blob/v12.0.0/workers_launch_template.tf#L129-L137
This would allow you and others to just supply their own LT with whatever settings they need.

Reopen? This is relevant for our current usage.