Compose container renaming broken as described in docs

📝 Description of issue:
When creating a new installation of librephotos using docker compose method, containers cannot be renamed as described in the official docs here:
https://docs.librephotos.com/docs/installation/environment-variables
🔁 How can we reproduce it:
I've found two problems:
1 --
As per instructions, copy "librephotos.env" to ".env", edit ".env", rename containers, run "make rename", start setup of containers with "docker compose up -d".
The containers are not renamed. The Makefile pulls the names from "librephotos.env", not the renamed and edited ".env" file.
I fixed this by editing the Makefile to get the names from ".env".
2 --
After the containers have been renamed, librephoto proxy does not start as the hostnames are not as specified in "nginx.conf".
Please provide additional information:

💻 Operating system: Debian 12
⚙ Architecture (x86 or ARM): x86
🔢 Librephotos version: as pulled by docker compose
📸 Librephotos installation method (Docker, Kubernetes, .deb, etc.): docker
📁 How is you picture library mounted (Local file system (Type), NFS, SMB, etc.): local
☁ If you are virtualizing librephotos, Virtualization platform (Proxmox, Xen, HyperV, etc.): n/a

To rename the containers while keeping the proxy working, you just have to edit the docker-compose.yml file and change the container_name values to whatever you want

I borrowed the 'proxy' directory and used the following to solve the problem:

edit the 'Makefile' file and add the following to 'rename':

$(REPLACE_NAMES) proxy/nginx.raw > proxy/nginx.conf

edit the 'docker-compose.raw' file, replacing 'image: reallibrephotos/librephotos-proxy:${tag}'

build:
      context: ./proxy
      args:
        tag: ${tag}

create 'proxy/nginx.raw' and replace all 'frontend' and 'backend' in the default 'nginx.conf' with 'frontend__name', 'backend__name', the final content is as follows:

user  nginx;
worker_processes  1;

error_log  /var/log/nginx/error.log debug;

events {
    worker_connections  1024;
}

http {
  server {
    listen 80;

    location / {
      # React routes are entirely on the App side in the web browser
      # Always proxy to root with the same page request when nginx 404s
      error_page 404 /;
      proxy_intercept_errors on;
      proxy_set_header Host $host;
      proxy_pass http://__frontend_name__:3000/;
      proxy_http_version 1.1;
      proxy_set_header Upgrade $http_upgrade;
      proxy_set_header Connection "upgrade";
    }
    # Allow to download zip files directly. This has to go before the following rule
    location ~ ^/api/downloads/(.*)$ {
      root /;
      try_files /protected_media/zip/$1.zip =404;
    }
    location ~ ^/(api|media)/ {
      proxy_set_header X-Forwarded-Proto $scheme;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header Host __backend_name__;
      include uwsgi_params;
      proxy_pass http://__backend_name__:8001;
    }
    # needed for webpack-dev-server
    location /ws {
      proxy_pass http://__frontend_name__:3000;
      proxy_http_version 1.1;
      proxy_set_header Upgrade $http_upgrade;
      proxy_set_header Connection "upgrade";
    }
    # Django media
    location /protected_media  {
        internal;
        alias /protected_media/;
    }

    location /static/drf-yasg {
        proxy_pass http://__backend_name__:8001;
    }

    location /data  {
        internal;
        alias /data/;
    }

    # Original Photos
    location /original  {
        internal;
        alias /data/;
    }
    # Nextcloud Original Photos
    location /nextcloud_original  {
        internal;
        alias /data/nextcloud_media/;
    }
  }
}

edit 'Dockerfile'

ARG tag
FROM reallibrephotos/librephotos-proxy:${tag}
COPY nginx.conf /etc/nginx/nginx.conf

runsudo docker compose up --build -d


Upgrade pin_project dependency in tower-fallback to 1.0

Motivation
Zebra's tower-fallback crate has outdated code that depends on a deprecated pin_project project_replace API.
The latest project_replace API uses different attributes, struct contents, and struct names.
Solution

[ ] Upgrade tower-fallback to pin_project >= 1
[ ] Use #[pin_project(project_replace = ResponseStateProj)] as the attribute
[ ] Work out how to get the actual fut structs, rather than their PhantomData equivalents
[ ] Update the struct names generated by project_replace, if needed

Alternatives
We could continue using an old version of the dependency (until it causes compiler warnings or bugs).
Related Work
We upgraded other pin_project dependencies to resolve compiler warnings in PR #2356.

This change isn't urgent at all.


No tag for release 1.1.7

In the changelog I can see you have released version 1.1.7. But there is no git tag for it. Also, when I try to use this action with uses: actions-rust-lang/audit@v1 it still uses 1.1.6. If I specifically specify 1.1.7 I get this error:
Error: Unable to resolve action<EMAIL_ADDRESS>unable to find version `v1.1.7`

Thank you. I must have forgotten. I created the tag and created a new release.

Thank you for the quick response! Now it pulls in 1.1.7 when just specifying @1 :sparkles:


Datasource configuration elements doesn't match with the master-datasources.xml.j2

Location : https://is.docs.wso2.com/en/5.10.0/setup/changing-to-mssql/
This doc discuss the following configuration elements.

username and password | The name and password of the database user.
type | The type of the database.
hostname | The hostname of the host where database is hosted.
port | The port of the database.
name | The name of the database.

But the actual j2 template doesn't refer some of them. Instead use different configs such as 'url', 'driver'.
Please check with the IAM team and correct this page for all applicable RDBMS types.

Closing this, as the URL & Driver get populated internally based on type, hostname, name, and port.

Closing this, as the URL & Driver get populated internally based on type, hostname, name, and port.


Proof of Concept for FlashLoan

Development Branch for Flashloan's

This is just a "Proof of Concept" branch and further developments can/should be made before merging.

The FlashLoan contract
The FlashLoan contract in the Frankencoin ecosystem provides a mechanism for users to borrow and repay ZCHF tokens within the same transaction without collateral. This kind of mechanism could be needed in implementing a Roll-Over feature for Frankencoin positions.
Impact for FPS holders
FPS holder would benefit, due to

control over shutdown with veto power

function shutdown(address[] calldata helpers, string calldata message) external noCooldown {}

control over limit, e.g.

uint256 public constant FLASHLOAN_TOTALMAX = 10_000_000 ether;
uint256 public constant FLASHLOAN_MAX = 1_000_000 ether;

earn a fee, e.g. 0.1% which gets transferred directly to the reserve

zchf.transferFrom(msg.sender, address(zchf.reserve()), fee);

For a Position Roll-Over, the FlashLoan contract would allow users to:

Borrow the necessary amount of ZCHF to repay their existing position.
Repay the flash loan with the newly minted ZCHF from the new position.
Open a new position with potentially different parameters. (maybe not due to ownable?)

This process enables users to seamlessly(!) transition from one position to another without needing to have additional funds on hand (if possible). It's particularly useful for adjusting position parameters or extending the position's duration without closing and reopening.
The FlashLoan contract's ability to execute multiple calls in a single transaction (via the takeLoan function) makes it well-suited for this complex operation, ensuring atomicity and reducing the risk of partial execution.

Tested

FlashLoan.takeLoan(...)

Raw Logs
status	0x1 Transaction mined and execution succeed
transaction hash	0x3bcb3517c289908a970c76d25f7e8c755ffcb224bd2adab850456511faa89422
block hash	0x478544440337a2603c575fc2cc38fa7569ac083a59483b6ba446434195dfd5bf
block number	68
from	0x5B38Da6a701c568545dCfcB03FcB875f56beddC4
to	FlashLoan.takeLoan(uint256,address[],bytes[]) 0x3d33C01bCC36ac6A8f872599A9c9351c11Ef07E7
gas	202356 gas
transaction cost	170361 gas
execution cost	149289 gas
input	0x97a...00000
decoded input	{
	"uint256 amount": "1000000000000000000",
	"address[] targets": [
		"0x3d33C01bCC36ac6A8f872599A9c9351c11Ef07E7",
		"0x3d33C01bCC36ac6A8f872599A9c9351c11Ef07E7"
	],
	"bytes[] calldatas": [
		"0xab7b1c8900000000000000000000000000000000000000000000000006f05b59d3b20000",
		"0xab7b1c8900000000000000000000000000000000000000000000000006f05b59d3b20000"
	]
}
decoded output	{}
logs	[
	{
		"from": "0xFbCA1d693A100774A2443cc1D41bD1a3D5295112",
		"topic": "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
		"event": "Transfer",
		"args": {
			"0": "0x0000000000000000000000000000000000000000",
			"1": "0x5B38Da6a701c568545dCfcB03FcB875f56beddC4",
			"2": "1000000000000000000",
			"from": "0x0000000000000000000000000000000000000000",
			"to": "0x5B38Da6a701c568545dCfcB03FcB875f56beddC4",
			"value": "1000000000000000000"
		}
	},
	{
		"from": "0x3d33C01bCC36ac6A8f872599A9c9351c11Ef07E7",
		"topic": "0x006b9bb4766cf5ab74b890df959e4fad0e54b1c3885e49c9541d36253a6e39e6",
		"event": "LoanTaken",
		"args": {
			"0": "0x5B38Da6a701c568545dCfcB03FcB875f56beddC4",
			"1": "1000000000000000000",
			"2": "1000000000000000000",
			"to": "0x5B38Da6a701c568545dCfcB03FcB875f56beddC4",
			"amount": "1000000000000000000",
			"totalMint": "1000000000000000000"
		}
	},
	{
		"from": "0xFbCA1d693A100774A2443cc1D41bD1a3D5295112",
		"topic": "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
		"event": "Transfer",
		"args": {
			"0": "0x5B38Da6a701c568545dCfcB03FcB875f56beddC4",
			"1": "0x0000000000000000000000000000000000000000",
			"2": "500000000000000000",
			"from": "0x5B38Da6a701c568545dCfcB03FcB875f56beddC4",
			"to": "0x0000000000000000000000000000000000000000",
			"value": "500000000000000000"
		}
	},
	{
		"from": "0xFbCA1d693A100774A2443cc1D41bD1a3D5295112",
		"topic": "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
		"event": "Transfer",
		"args": {
			"0": "0x5B38Da6a701c568545dCfcB03FcB875f56beddC4",
			"1": "0x9C4e667fD64FfB8eA86dacA9BC78bfE976D0d726",
			"2": "500000000000000",
			"from": "0x5B38Da6a701c568545dCfcB03FcB875f56beddC4",
			"to": "0x9C4e667fD64FfB8eA86dacA9BC78bfE976D0d726",
			"value": "500000000000000"
		}
	},
	{
		"from": "0x3d33C01bCC36ac6A8f872599A9c9351c11Ef07E7",
		"topic": "0x07178c166b5aef4d8409e6bbfd0e7b1ad42c92eb65903a5e5482166f3f4e62f0",
		"event": "Repaid",
		"args": {
			"0": "0x5B38Da6a701c568545dCfcB03FcB875f56beddC4",
			"1": "500500000000000000",
			"2": "500000000000000000",
			"3": "500000000000000",
			"from": "0x5B38Da6a701c568545dCfcB03FcB875f56beddC4",
			"total": "500500000000000000",
			"repay": "500000000000000000",
			"fee": "500000000000000"
		}
	},
	{
		"from": "0xFbCA1d693A100774A2443cc1D41bD1a3D5295112",
		"topic": "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
		"event": "Transfer",
		"args": {
			"0": "0x5B38Da6a701c568545dCfcB03FcB875f56beddC4",
			"1": "0x0000000000000000000000000000000000000000",
			"2": "500000000000000000",
			"from": "0x5B38Da6a701c568545dCfcB03FcB875f56beddC4",
			"to": "0x0000000000000000000000000000000000000000",
			"value": "500000000000000000"
		}
	},
	{
		"from": "0xFbCA1d693A100774A2443cc1D41bD1a3D5295112",
		"topic": "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",
		"event": "Transfer",
		"args": {
			"0": "0x5B38Da6a701c568545dCfcB03FcB875f56beddC4",
			"1": "0x9C4e667fD64FfB8eA86dacA9BC78bfE976D0d726",
			"2": "500000000000000",
			"from": "0x5B38Da6a701c568545dCfcB03FcB875f56beddC4",
			"to": "0x9C4e667fD64FfB8eA86dacA9BC78bfE976D0d726",
			"value": "500000000000000"
		}
	},
	{
		"from": "0x3d33C01bCC36ac6A8f872599A9c9351c11Ef07E7",
		"topic": "0x07178c166b5aef4d8409e6bbfd0e7b1ad42c92eb65903a5e5482166f3f4e62f0",
		"event": "Repaid",
		"args": {
			"0": "0x5B38Da6a701c568545dCfcB03FcB875f56beddC4",
			"1": "500500000000000000",
			"2": "500000000000000000",
			"3": "500000000000000",
			"from": "0x5B38Da6a701c568545dCfcB03FcB875f56beddC4",
			"total": "500500000000000000",
			"repay": "500000000000000000",
			"fee": "500000000000000"
		}
	}
]


nicer batch file error when building miri-script fails

https://github.com/rust-lang/miri/pull/3700#issuecomment-2184026431

Thanks :)
@bors r+

:pushpin: Commit b74ba4317fae0e9c8c71b1f5ce98bfa127a6fb9b has been approved by RalfJung
It is now in the queue for this repository.

:hourglass: Testing commit b74ba4317fae0e9c8c71b1f5ce98bfa127a6fb9b with merge c7ea8f8e1573207b50675f7f1ec7e40fba45f27a...

:sunny: Test successful - checks-actions
Approved by: RalfJung
Pushing c7ea8f8e1573207b50675f7f1ec7e40fba45f27a to master...


Support insecure server connections when using SSL

Sometimes cURL's -k flag is really useful when using APIs on networks that are not entirely configured yet. This is my case currently, I systematically get the following message:

Is there any chance you can add a parameter / checkbox somewhere to allow insecure connections?

+1 for that. I have a lot of self signed certificates

Interesting... I'll take a look during the weekend. 🧐

now +2 for that. I am dealing in my lab with a lot of selfsigned certs as well. Would be great if we can get the option to disable this if necessary.
Thanks for your work!

now +3 for that.


Added Hungarian and Serbian Latin translations

Summary of changes
Added Hungarian and Serbian Latin translations
Checklist

[ ] New functions have typespecs, changed functions were updated
[ ] Same for documentation, including moduledocs
[ ] Tests were added or updated to cover changes
[x] Commits were squashed into a single coherent commit
[ ] Notes added to CHANGELOG file which describe changes at a high-level

Coverage remained the same at 72.208% when pulling 4b76f797c3bb16ab4a90f86d69b4f743aeef5934 on nandorstanko:master into 0831edf2dae8060be740330b8cfcaeb8ce1ee762 on bitwalker:master.


functional: fleetctl submit multiple units

Make testUnitSubmit() also do an additional test for submission of multiple units. It copies multiple units with different names, and verify that they are submitted.
After redestroying all submitted units, it checks for every unit being completely removed, making use of util.WaitForState() etc.
This was originally implemented as my own spin-off from #1509. Though I got this decoupled from other unmerged commits, using instead util.WaitForState().

This is definitely nice-to-have. But now I think this entire code is outdated. I'm going to rewrite this PR based on #1544 , once the #1544 got merged.

Closed #1541 in favor of https://github.com/coreos/fleet/pull/1552


Add ModelStateInvalidFilter to actions with an applied WebHookAttribute

We should get rid of the if (!ModelState.IsValid)… boiler-plate in user code.
Should also throw an InvalidOperationException if [ApiController] is applied to a controller containing WebHook actions.
/cc @rynowak anything else we need to worry about now that WebHooks gets all the 2.1 goodness?

More code we can clean up using 2.1 features: Don't need to special-case media type suffix matches and should instead use application/*+json or application/*+xml in WebHookVerifyBodyTypeFilter. The following hack can go away: https://github.com/aspnet/WebHooks/blob/ca7f0e7c9a11663be336d0d0412e0e26b4d9117a/src/Microsoft.AspNetCore.WebHooks.Receivers/Filters/WebHookVerifyBodyTypeFilter.cs#L167-L171

@danroth27, any objections about moving this out from preview2?

ec834ebabb

Merged to dev in 607d59b9e6


Message informing the GM that all players are ready was not sent when all players were ready.

The players in the combat specifically were
Fate [GM]/ Gamemaster[GM]
Ezren
Kyra
Merisiel
Valeros
Fate Readied up first,
then Valeros
then Merisiel
then Kyra
then Ezren
This may be related to the presence of 2 GMs in the game, should investigate whether putting Fate in a different scene causes problems

Rejected: As theorized, if both GMs and all players are ready, the message is sent normally. In actual use, Fate would be in their own room, and would not be included in this check.


missing SHORTEN_NAMES for parameterless recipes

What is the smallest, simplest way to reproduce the problem?

        @BeforeTemplate
        String before() {
            return "foo";
        }

        @AfterTemplate
        String after() {
            return SomeClass.SOME_CONSTANT;
        }

What did you expect to see?
The generated recipe should contain SHORTEN_NAMES. It's meant to be generated with every recipe, according to https://github.com/openrewrite/rewrite-templating/blob/0e4a1440df56537041bbc86294dc77f22758c288/src/main/java/org/openrewrite/java/template/processor/RefasterTemplateProcessor.java#L272
What did you see instead?

No additional recipe references. Therefore running the recipe leads to a FQN for SomeClass.SOME_CONSTANT. (Workaround: Add the ShortenFullyQualifiedTypeReferences to the recipe list explicitly).
Root cause is https://github.com/openrewrite/rewrite-templating/blob/0e4a1440df56537041bbc86294dc77f22758c288/src/main/java/org/openrewrite/java/template/processor/RefasterTemplateProcessor.java#L278 not adding the embedOptions collection (it does this correctly in https://github.com/openrewrite/rewrite-templating/blob/main/src/main/java/org/openrewrite/java/template/processor/RefasterTemplateProcessor.java#L284).
Are you interested in contributing a fix to OpenRewrite?

Yes. I would combine the 2 code blocks to remove the code duplication, since such code duplications will lead to similar failures again.

Thanks for the in depth look and offer to help @Bananeweizen ; do you want me to assign this issue to you then?

Sure! Appreciate you exploring a type of recipe we hadn't tested before. Looking over the example once more it seems like a reimplementation of Replace String literal with constant, but with compile time checking; neat!


Refactor Code

Refactor code to improve code quality

Codecov Report

Merging #200 (cae1b0c) into master (02213b6) will decrease coverage by 0.02%.
The diff coverage is 79.06%.

@@             Coverage Diff              @@
##             master     #200      +/-   ##
============================================
- Coverage     66.03%   66.00%   -0.03%
- Complexity      546      547       +1
============================================
  Files            90       90
  Lines          2002     2012      +10
  Branches        219      221       +2
============================================
+ Hits           1322     1328       +6
  Misses          601      601
- Partials         79       83       +4

Impacted Files
Coverage Δ

...java/seedu/anilist/logic/commands/ListCommand.java
76.19% <0.00%> (ø)

src/main/java/seedu/anilist/ui/MainWindow.java
0.00% <0.00%> (ø)

...va/seedu/anilist/logic/commands/CommandResult.java
82.35% <66.66%> (ø)

...java/seedu/anilist/logic/commands/FindCommand.java
85.71% <75.00%> (-14.29%)
:arrow_down:

.../seedu/anilist/logic/commands/GenreAddCommand.java
90.47% <92.85%> (-1.84%)
:arrow_down:

...edu/anilist/logic/commands/GenreDeleteCommand.java
90.47% <92.85%> (-1.84%)
:arrow_down:

...du/anilist/logic/commands/ConfirmClearCommand.java
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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


Updated the readme with yarn commands

Updated the instructions with the yarn commands that worked for me when building the browser extension.  The NPM commands didn't work for me:
yarn install
yarn run build
yarn run package

Hey,
Thanks a lot for the PR! This will surely make it easier for yarn users to use this extension. Just one comment: I think many people still use npm, so could you please change the PR to include both?
So it'd say for example:
"You can either use yarn or npm to build this extension and instructions for both are included below"
and then
npm install
or
yarn install
for each section? Take a look at how other JS projects do it for reference...
Thanks again.

Actually, Tom.  the npm commands didn’t work at all for me.  Some research on the package.json and the web pack.config.js led me to yarn, which worked.  I think that only the yarn commands are relevant the way it currently stands.
Kevin

On Jun 5, 2019, at 12:24 AM, Tom Hacohen<EMAIL_ADDRESS>wrote:
Hey,
Thanks a lot for the PR! This will surely make it easier for yarn users to use this extension. Just one comment: I think many people still use npm, so could you please change the PR to include both?
So it'd say for example:
"You can either use yarn or npm to build this extension and instructions for both are included below"
and then
npm install
or
yarn install
for each section? Take a look at how other JS projects do it for reference...
Thanks again.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/tasn/webext-signed-pages/pull/21?email_source=notifications&email_token=ACSZARWNPS32PZD5W4K43RDPY5S2ZA5CNFSM4HS7OES2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODW62XZQ#issuecomment-498969574, or mute the thread https://github.com/notifications/unsubscribe-auth/ACSZARX2VMXRF7OFM25YQ4LPY5S2ZANCNFSM4HS7OESQ.

It's because it's meant to be npm run-script build and npm run-script package. Could you fix that as well and show the alternatives? If not, I'm happy to do that, but you'll have to rebase this patch over my changes.

Feel free to make the changes you like and I’ll rebase and do another pull request.  That should be cleaner.

On Jun 5, 2019, at 10:28 AM, Tom Hacohen<EMAIL_ADDRESS>wrote:
It's because it's meant to be npm run-script build and npm run-script package. Could you fix that as well and show the alternatives? If not, I'm happy to do that, but you'll have to rebase this patch over my changes.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/tasn/webext-signed-pages/pull/21?email_source=notifications&email_token=ACSZARVXGWPJN3ZOG7EDXR3PY7ZTBA5CNFSM4HS7OES2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODXAN6QY#issuecomment-499179331, or mute the thread https://github.com/notifications/unsubscribe-auth/ACSZARQJLJ4G54ZQWCNEM6LPY7ZTBANCNFSM4HS7OESQ.

Done, thanks!

I’m sorry, Tom.  I can’t figure out how to do a rebase.  I found the button in SourceTree, but I asks me to select a commit and doesn’t allow me to select a commit.  I can’t find the rebase option at Github.com.  I’m not willing to get into the command line for something this insignificant.  it’s crazy that it’s this difficult for such a tiny correction. — Kevin

On Jun 6, 2019, at 1:27 AM, Tom Hacohen<EMAIL_ADDRESS>wrote:
Done, thanks!
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/tasn/webext-signed-pages/pull/21?email_source=notifications&email_token=ACSZARV4MD5XEFITVHLH2PLPZDDABA5CNFSM4HS7OES2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODXCDYMQ#issuecomment-499399730, or mute the thread https://github.com/notifications/unsubscribe-auth/ACSZARQKOWC3Q3T6KFCGVTDPZDDABANCNFSM4HS7OESQ.

OK, sorry to hear. Please let me know if you ever get around to it, happy to accept the patch as discussed above. Though at least we now got the readme to show the correct commands. Thanks for that.


Update update.go

remove -cli from update file name. See https://github.com/harness/harness-cli/issues/30

@terrafied I wanted to personally reach out and express our gratitude for this pull request. It's always exciting to see new contributors (And!! You're the very first❤🚀), and we truly appreciate the time and effort you've put into helping improve harness CLI utility.
For contributors like yourself, we understand that diving into a new codebase can be a challenge, and we're grateful that you took that leap. Your contribution not only helps improve the tool for everyone but also fosters a collaborative and inclusive community around harness-cli.
Our team will review your PR shortly. We're here to help and ensure that your contribution gets merged smoothly.
In the meantime, if you have any questions, need assistance, or want to discuss your usecase further, please feel free to reach out via Slack. We're always here to help and support our contributors.
Once again, thank you for your contribution. We look forward to seeing more of your work in the future and hope you continue to be an active member of our community🎉🌟


resize is not working properly.

Possible bug
Is this a possible bug in a feature of sharp, unrelated to installation?

[x] Running npm install sharp completes without error.
[x] Running node -e "require('sharp')" completes without error.

If you cannot confirm both of these, please open an installation issue instead.
Are you using the latest version of sharp?

[x] I am using the latest version of sharp as reported by npm view sharp dist-tags.latest.

If you cannot confirm this, please upgrade to the latest version and try again before opening an issue.
If you are using another package which depends on a version of sharp that is not the latest, please open an issue against that package instead.
What is the output of running npx envinfo --binaries --system --npmPackages=sharp --npmGlobalPackages=sharp?
System:
OS: Windows 10 10.0.19044
CPU: (6) x64 Intel(R) Core(TM) i5-9400 CPU @ 2.90GHz
Memory: 4.43 GB / 15.88 GB
Binaries:
Node: 16.15.0 - D:\Program Files\nodejs\node.EXE
npm: 8.5.5 - D:\Program Files\nodejs\npm.CMD
npmPackages:
sharp: ^0.30.7 => 0.30.7
What are the steps to reproduce?
original image:

sharp(src).resize(256,256).toFile('./test.png')

resized image

What is the expected behaviour?

Hi, did you see the fit option?
https://sharp.pixelplumbing.com/api-resize#resize
It looks like you want to ignore aspect ratio, so a suitable value would be fill.
.resize(256, 256, { fit: 'fill' })

or
.resize({ width: 256, height: 256, fit: 'fill' })


Add automated tests for Taquito Plugin commands for VS Code Extension

As an SDET, I want to add tests to verify that the next CLI commands can run from VS Code command palette:
@command:taqueria.install @taqueria/plugin-taquito
@command:taqueria.deploy

@michaelkernaghan for context

dupe of #1650


Enabled deletes in merge_on_read

Deletes, after this change, works for any insert written to log files (which is the expected behavior going forward).

@vinothchandar made necessary changes.

@vinothchandar Addressed your comment.


Explicit connection thows exception when used from .NET 4.6.2 but it doesn't when used from .NetStandard 2.0

FTP OS: Windows
FTP Server: Shared Hosting @ Fastcomet
Computer OS: Win 10
I have implemented a solution with three projects;

NetStandard 2.0. It is a wrapper of FluentFTP for uploading files and testing connection settings (uses upload files function for testing) [installed nuget package 19.1.2]
.NET Core 2.0. Web App that uses FuentFTP wrapper to test the connection settings.
.NET 4.6.2. Azure Web Job that uploads files to the ftp using the FluentFTP wrapper [installed nuget package 19.1.2]

I have noticed that .NET Core project can use and upload files when EncryptionMode=FtpEncryptionMode.Explicit but the Web Job fails with this setting (works with FtpEncryptionMode.None).
Web Job thows the following error (translated from Greek because my developing pc's locale is Greek);
Unable to read data from the transfer connection An existing connection was interrupted by the remote computer.
I removed nuget package from web job and directly linked the NetStandard 1.6 assembly from the packages folder. Then it worked both in Core and in web job.
I assume that the implementation of the net45 has a bug in the FtpEncryptionMode.Explicit mode.

.NET Support reworked (soon to be removed) as of v40. Please add a note if this issue still occurs. Closing as it is not applicable.


Test TCNN with other instance segmentation results

Hello,
Is there a way to test the tracking performance of TRCNN based on the segmentation results of other models (eg. Cascade-RCNN)?
Or is there any plan to release the PyTorch code?

Hi,
we currently don't have plans for a PyTorch version.
If you want to use a cascade R-CNN you would have to modify the code yourself. Note that the detection code is borrowed from tensorpack, which also has code for cascade R-CNN, so it would be possible to adapt the tensorpack cascade R-CNN code here, but it still is some effort.

Closing for now, please reopen if needed


Add supporting documents for HDInsight with PySpark.

:warning: Validation status: warnings

File
Status
Preview URL
Details

academic-services/graph/reference-data-schema.md
:warning:Warning

Details

academic-services/graph/TOC.yml
:white_check_mark:Succeeded

academic-services/graph/get-started-setup-azure-data-lake-analytics.md
:white_check_mark:Succeeded

academic-services/graph/get-started-setup-azure-hdinsight.md
:white_check_mark:Succeeded

academic-services/graph/get-started-setup-provisioning.md
:white_check_mark:Succeeded

academic-services/graph/index.yml
:white_check_mark:Succeeded

academic-services/graph/media/create-hdinsight-account-details.png
:white_check_mark:Succeeded

academic-services/graph/media/create-hdinsight-select.png
:white_check_mark:Succeeded

academic-services/graph/media/create-hdinsight-storage-account-details.png
:white_check_mark:Succeeded

academic-services/graph/media/create-spark-cluster-1.png
:white_check_mark:Succeeded

academic-services/graph/media/create-spark-cluster-2.png
:white_check_mark:Succeeded

academic-services/graph/media/create-spark-cluster-3.png
:white_check_mark:Succeeded

academic-services/graph/media/create-spark-cluster-4.png
:white_check_mark:Succeeded

academic-services/graph/media/samples-login-hdinsight.png
:white_check_mark:Succeeded

academic-services/graph/media/samples-run-pyspark-script.png
:white_check_mark:Succeeded

academic-services/graph/media/samples-view-pyspark-script-results.png
:white_check_mark:Succeeded

academic-services/graph/samples-azure-data-lake-analytics.md
:white_check_mark:Succeeded

academic-services/graph/samples-azure-hdinsight.md
:white_check_mark:Succeeded

academic-services/graph/reference-data-schema.md

Line 126: [Warning] Invalid file link:(~/graph/resources-faq).

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Bearer Access Token Authentication does not work.

Package
next-drupal (NPM package)
Ask the question
Access Token does not work.
I have used Access Token authentication to fetch data with secure API but getting below error.
Error: Failed to fetch JSON:API index at <base_url>/jsonapi
Could you please help me over here? Am I missing something to add here?
Note:- This is working without authentication. But we enable authentication it does not work. Token is generating correct. I tried with postman.
Here is my code
const getToken = await fetchToken();

  const drupal = new DrupalClient(baseUrl, {
    auth: {
      access_token: getToken.access_token,
      token_type: getToken.token_type,
      expires_in: getToken.token_type
    },
  });

  const articles = await drupal.getResourceCollection("node--news", {
    withAuth: {
      access_token: getToken.access_token,
      token_type: getToken.token_type,
      expires_in: getToken.expires_in
    },
  });

Just want to inform you like I tried other test cases to fetch data using token but it does not work. Is there any solution?
Test Case 1: Use Access Token
  const drupal = new DrupalClient(baseUrl, {
    fetch: (url, options) => {
      options.headers = {
        ...options.headers = {
          Authorization: `Bearer ${getToken.access_token}`
        }
      };
      return fetch(url, options)
    }
  });

  'тип Error: Failed to fetch JSON:API index at https://chhcpportalode4.prod.acquia-sites.com/jsonapi - Unexpected token '<', "<!DOCTYPE "... is not valid JSON'

Test Case 2:
  const drupal = new DrupalClient(baseUrl, {
      auth: {
        access_token: getToken.access_token,
        token_type: getToken.token_type,
        expires_in: getToken.expires_in,
      },
  });

 'тип Error: Failed to fetch JSON:API index at https://chhcpportalode4.prod.acquia-sites.com/jsonapi - Unexpected token '<', "<!DOCTYPE "... is not valid JSON'

Test Case 3
  const drupal = new DrupalClient(baseUrl, {
      auth: {
        token: {
          access_token: getToken.access_token,
          token_type: getToken.token_type,
          expires_in: getToken.expires_in,
        }
      },
  });

`тип Error: 'clientId' and 'clientSecret' are required for auth. See https://next-drupal.org/docs/client/auth
    at BlogPage (./app/mynews/page.jsx:74:20)`


Parameterized pages not loading data in v14

Bug Description
Parameterized pages are not rendering correctly in latest release. They appear to "flash" correctly before rendering error states for components.
Examples:

https://meltanolabs.github.io/jaffle-shop-template/Philadelphia/
https://mdsinabox.com/teams/mil/

Severity

[x] High - I'm not able to use Evidence until this bug is fixed
[ ] Medium - I'm able to use Evidence, but a feature I need to use is not working
[ ] Low - I'm able to keep using Evidence as normal, but flagging this for the team to fix

Expected Behavior
Components should render correctly

@matsonj @aaronsteers FYI

Thanks, @archiewood, for logging! 🙏

I think I was a bit hasty.
#688 does not seem to fix this in production

This reminds me of an issue we solved recently, where clicking the table of contents would error out the components on a production parameterized page: #590. The cause of that issue was trailing slashes getting appended to the URL when the TOC links were clicked.
On checking the URLs in v15, it seems that a trailing slash is being appended for all pages:
E.g., if you navigate to mysite.com/company, it will redirect to mysite.com/company/
This may be the cause of the components breaking on the page (although I don't know exactly how)

Very interesting. Good idea.
Could {$page.params.company} then refer to eg acme/ rather than acme.
Which might then cause all the filters to error out in the components?

https://learn.svelte.dev/tutorial/trailingslash

If you disable JS on the webpage, it show up.

And if you look at the requests in the browser I notice two things:

If you navigate to mdsinabox.com/teams/mil you get redirected to mdsinabox.com/teams/mil/
mdsinabox.com/teams/mil/ returns an HTML page that contains all the data, rendered correctly

A few other pieces of info to help us narrow this down:

We have this line in our layout file to set trailing slashes in sveltekit:
https://github.com/evidence-dev/evidence/blob/12d04899b9dcc5dc54b51c58c671837b8f9cdd83/sites/example-project/src/pages/%2Blayout.server.js#L5

Our most recent release's vercel preview is able to display our parameterized page example in production:
https://evidence-development-workspace-git-changese-3c260c-evidence-dev.vercel.app/parameterized-pages/Dallas/

Note that the example we have running in example-project does not replicate the issue, it uses the syntax:
/category/[page].md not [category]/page.md
This is an example of where our dev environment works differently to a user project, I believe.

@archiewood @matsonj
As of v15, this only seems to occur under the following conditions:

You are using parametrized pages on Netlify
You are looking up non-lowercased data using the page parameter.

Other issues should be solved by this PR that is already in version 15.
This issue was actually happening on Netlify with Evidence version 12 and prior but not as obvious.  Attached gif shows this happening on current deployment on v12 on mdsinabox.com.  It just takes a few more hops to reproduce it on older versions compared to versions after v12.  Post v12, we are loading the data via js/json when the user initially lands on the page, where as with v12 and prior we only did so if you update your DOM by navigating to different places on the site - hence the extra hops.

Underlying issue is Netlify forces all URL paths to be lower case. When Netlify forces the casing on the path to be lowercase (https://mdsinabox.com/teams/MIL -> https://mdsinabox.com/teams/mil/ via redirect), the page param is affected: i.e $page.param.nba_teams goes from 'MIL' -> 'mil'.  This results in the data not being found.  This is not an issue on initial load of the page in v12 only because the HTML had preloaded the data
Most hosting sites won't force lower case the paths.  There is a discussion thread on Netlify around
@matsonj I created a demo PR on your repo showing how we can get around the Netlify issue (tested out on Netlify, so it should work if you choose to merge it as is).

The issue with parameters in the middle of the path not working seems to be restricted to v14 and appears to be fixed in v15.
Running example here => https://hilarious-hamster-5fc657.netlify.app/
Between this and the Netlify workaround mentioned in the previous comment, I think we are good to close this one.

Do you have the source code for that somewhere?
The table on the coupe page looks very odd on iPhone WebKit
(Different issue)
On March 24, 2023 at 14:11 GMT, Udesh Senaratne<EMAIL_ADDRESS>wrote:
The issue with parameters in the middle of the path not working seems to be restricted to v14 and appears to be fixed in v15.
Running example here => https://hilarious-hamster-5fc657.netlify.app/
Between this and the Netlify workaround mentioned in the previous comment, I think we are good to close this one.
—
Reply to this email directly, view it on GitHubhttps://github.com/evidence-dev/evidence/issues/691#issuecomment-1482868630, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AN3CLAQIOY57UHHDNT7NAFLW5WTRVANCNFSM6AAAAAAV2TZPPE.
You are receiving this because you were mentioned.Message ID: @.***>
[https://bolt.im/t/?KT7-CHhnLBzBG7ocPebG6_F20s4Hun4XflANhjOsG9ImU3ZFoQhDst8oGtCoEI-p9C2hCIsyrxNYrk-XooXJaA]

Do you have the source code for that somewhere? The table on the coupe page looks very odd on iPhone WebKit See #712

https://github.com/eddietestgithub/parametrized-pages-demo/tree/main/pages/[category]


How to align items centered in the screen

Not sure where to ask this, is it possible to align a button centered in the screen? Or do i need to wrap it in a view to do this?

Just had the same problem. I looked into a buttons code and found that I had to set the buttons style toalignSelf: 'auto' because otherwise it would be overwritten to flex-start in this line
(alignSelf: (this.props.block) ? 'stretch' : 'flex-start').
I don't know if it makes sense to default to flex-start or what was the motivation for it 😄

@ansgarm For now you can wrap it in View for alignment.
And yes, we have been receiving many upvotes for this. It's on our list

@ansgarm Does alignSelf: flex-start not work when you use it to style the button? Also if what does it default to, if we don't set any alignSelf at all? Just curious?

@robtaireeo You can wrap it inside a view or use alignSelf: flex-start for the time being.

@sankhadeeproy007 @SupriyaKalghatgi BTW, this still happens in 2.3.3 and I'm pretty curious why this is the case. After changing from RN's Button to NativeBase's button, I have a parent ImageBackground with alignItems=center and RN's Button centered it, while Native's Button I have to add alignSelf=auto.
Why is this? And if it's intentional then this I suggest this be better mentioned in the docs.


SPARK-9296 (add variance support)

extending variance support which leverages stddev implementation.

Can one of the admins verify this patch?

closing this pull request. based on the performance comparison of Declartive vs. Imperative aggregate (SPARK-10953), the implementation of central moment computation will be based on Imperative aggregate approach (SPARK-10641)


Refactor tests login method

Refactor the login method method that it only mocks the login data_api_client for the duration of the login so that other tests on the same views module are not affected. The mocking of get_user method in a more aggressive way stays the same because it is needed for subsequent
requests. However, it is now cleaned up in the teardown.
This change also updates all the tests to use the same login method. Some tests had replaced the core one in an attempt to allow testing of the things it was mocking. This should no longer be necessary.

:+1:


the skin disappears

when I use this mod, my skin disappears, but it appears when I use an emotion from the emotecraft mod

Enabled auto 3rd person in the settings. Not sure why it's not the default behaviour ...

Toggle 3rd person view by F5, or enable auto 3rd person in OrthoCamera settings


[BUG] - nextui() plugin does not allow tailwind intellisense

Describe the bug
just noticed this with the new 2.0.0 upgrade. Once I add nextui() to the plugins array of tailwing.config.js I am unable to get tailwind intellisense when styling but the moment I remove it from the plugins array, I get the tailwind intellisense. Wondering if this is supposed to be happening ?
Your Example Website or App
No response
Steps to Reproduce the Bug or Issue

Add nextui() in plugins array of tailwind.config.js
Try tailwind intellisense
Remove nextui() in plugins array of tailwind.config.js
Try tailwind intellisense

Expected behavior
Expected behavior is for tailwind intellisense to keep functioning.
Screenshots or Videos
No response
Operating System Version
macOS M2
Browser
Safari

Hey @dejiemiabata vscode intellisense works fine for me, please check this again.
https://github.com/nextui-org/nextui/assets/30373425/e04c2bd9-3e8e-4a57-a8bf-a50e50d142ff

seems like this issue might just be with my IntelliJ IDE. I tried on VScode and you are correct that intellisense works

Ok so I will close this issue 👍🏻


Zappa deployment step in details to AWS Lambda

Hi Jonh,
Thank you for create a good tool for us. This is really rapid way to create Alexa Skills. After I did create and testing with ngrok. Now, I would like to deploy on AWS Lambda, use Zappa. I tried to follow the instruction but not successful.
command -> zappa init
This is result.
Calling deploy for environment dev..
Warning! AWS Lambda may not be available in this AWS Region!
Warning! AWS API Gateway may not be available in this AWS Region!
Oh no! An error occurred! :(
I just wonder how can to get full document deployment to production base on Flask-Ask way.
Thank you
Panya

Yes - I've received a lot of requests for this. I'll put something together within the next few days and let you know.

Hi John,
Cloud you please add instruction to deploy on Heroku as well? I felt it more easier than AWS Lambda.
Thank you.
Panya

I'm sorry. I can't do Heroku. Just Lambda.

Look at chapter 17 of Flask Web Development by Miguel Grinberg
It explains how to deploy a Flask app with Heroku.
That should get you started in the right direction.

Here is a video tutorial I put together on how to deploy Flask-Ask skills to AWS Lambda with Zappa. Feedback appreciated
https://www.youtube.com/watch?v=mjWV4R2P4ks


constant variable plotted with variance-based levels

Reported by ansley b manke on 27 Aug 2015 22:40 UTC
The variance-based color level scheme is used by default for LAS color plots. If the variable is a constant, it make some funny-looking color bars.
Investigate - if the automatic computation has determined to use just one or two color levels (will it ever decide to use just a couple?) , then do not do variance-based levels.
Migrated-From: http://dunkel.pmel.noaa.gov/trac/ferret/ticket/2311

Comment by ansley.b.manke on 14 Sep 2015 18:11 UTC
This is fixed.  Also improved the computation of the mean and std in compute_mnstd.F by sending in the single-precision version of the bad-flag from the Ferret side.


timestampAssest how to use it?

Good Morning guys,
I'm currently trying to use the timestampAssest in my renative.json:

When I enabling it, I'm getting the following warning when I run the app:

I'm getting the following error in my the DevTools:

What I noticed is that my app is trying to access to an app.css file timeStamped, but in my platformBuilds folders I only have the normal app.css and not one timeStamped.

My index.html is the following, as you can see my app tries to access the app-1594973772393.css but this css is not generated:

Can anyone help me with this problem? How can I enable the timestampAssest in my project?
Thanks in advance.
Joao

@JoaoCEAlmeida  Looks like a gap in docs. could you also add this part to your config:
{
  "platforms": {
        "web": {
              "timestampAssets": true,
              "timestampBuildFiles": [
                "public/app.css"
              ]
        }
  }
}

@pavjacko Thanks for the fast reply, it seems to work now.


Fixed python backend to flush call queue

What do these changes do?
Flushes self.call_queue when we call get in PandasOnPythonRemotePartition
Related issue number
#286

[x] passes git diff upstream/master -u -- "*.py" | flake8 --diff
[x] passes black --check modin/

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-Performance-PRB/89/
Test PASSed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/151/
Test PASSed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-Performance-PRB/90/
Test PASSed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/152/
Test PASSed.


Component Loading

I'm curious about best practices for my use-case (which I believe is probably very common). It's combination of react, redux, react-router but I believe the discussion is best suited for redux
Documentation and guides are very vague when it comes to component-to-component communication (of a non parent-child nature). Imagine using react-router where the overall page is derived of nested layout components such as
ReactDOM.render((
    <Router>
        <Route component={DefaultLayout}>
            <Route path="foo" component={FooLayout}>
                <Route path="products" component={Products}>
                <Route path="users" component={Users}>
                <Route path="widgets" component={Widgets}>
            </Route>
        </Route>
    </Router>
), document.getElementById('app'))

DefaultLayout looks like this:
export default React.createClass({
    render: function() {
        return (

                    {this.props.children}

        )
    }
})

For the sake of this example, FooLayout (loaded into this.props.children) can be any sub layout you want to imagine.
All three routes: /products, /users, or /widgets have a button in their component. When clicked, it will load a whole new component into the DefaultLayout's

 section. For example
Products component:
import store from 'path/to/store'

export default React.createClass({
    render: function() {
        return (

                Lorem ipsum...
                <button onClick={this.onClick}>Click Me</button>

        )
    },
    onClick: function() {
        // There are several ways to have a component loaded DefaultLayout's
        // div.receive-any-component
    }
})

This whole example is over simplified. I'm using react-redux in the real thing. Official react docs only say one small bit on this type of use-case:

For communication between two components that don't have a parent-child relationship, you can set up your own global event system. Subscribe to events in componentDidMount(), unsubscribe in componentWillUnmount(), and call setState() when you receive an event. Flux pattern is one of the possible ways to arrange this.

So, I understand that I can use Redux to dispatch info whereby DefaultLayout is subscribed, but I need to load a whole component into DefaultLayout. It would seem to me there are two basic options, neither of which I feel are correct.
Option One
Have our Product component dispatch the component we want to load:
import store from 'path/to/store'
const componentToLoad = (
    <Whatever />
)

export default React.createClass({
    render: function() {
        return (

                Lorem ipsum...
                <button onClick={this.onClick}>Click Me</button>

        )
    },
    onClick: function() {
        store.dispatch({
            type: 'LOAD',
            component: componentToLoad
        })
    }
})

Ultimately, I'd like the DefaultLayout to be unaware of what components it's loading, so this solution works out in that regards. But sending a component into redux just seems so wrong, but it works.
Option Two
Instead of dispatching a component, dispatch some state that indicates which component should be loaded. In this case, it would seem that DefaultLayout would have to import every possible component it might need to load (which in my real usecase is many), then subscribe to our state and use a switch statement to determine which one of our loaded components should be placed into .receive-any-component. This feels better from the redux end but feels crappy that DefaultLayout is aware of every possible component that it might need to load.
I'm not new to JS, but somewhat new to React/Redux. What am I missing?
And I apologize this question is so long. It's difficult for me to describe this any other way

It is advisable that both actions and state are always serializable. Therefore putting a component into the action doesn’t seem like the correct way, and I would encourage you not to do that.

Instead of dispatching a component, dispatch some state that indicates which component should be loaded. In this case, it would seem that DefaultLayout would have to import every possible component it might need to load (which in my real usecase is many), then subscribe to our state and use a switch statement to determine which one of our loaded components should be placed into .receive-any-component. This feels better from the redux end but feels crappy that DefaultLayout is aware of every possible component that it might need to load.

This is exactly what I would suggest. I don’t think at all it is bad. You can have a separate module that does this.
import Button from './Button'
import Checkbox from './Checkbox'

function resolveComponent(componentId) {
  switch (componentId) {
  case 'BUTTON':
    return Button
  case 'CHECKBOX':
    return Checkbox
  }
}

and in your component:
function mapStateToProps(state) {
  let Type = resolveComponent(state.componentId)
  let children = <Type />
  return { children }
}

If your bundler supports code splitting, you can even make resolveComponent dynamically load components and return a promise so you can show some default view while component is being loaded.

Thanks, I can massage this into my real example


Missing dependency to puppetlabs-inifile

When installing from puppet forge, puppetlabs-inifile is not installed as a dependency which makes puppet run fail.

Added this in the 0.1.14 release along with your begin/rescue fix. Thank you!


How to Use with UIKit.

I need to Use with UIKit
Detailed Description

I'm using UIKit, not an SwiftUI. I really don't know how to implement with to my project. If you have any sample thing kindly share to it will really help for me.
I found some solution with UIHostingController
That's also I really i don't know to pass data to LineChart(). Kindly do needfully and thanks in advance
Context

Possible Implementation

Sorry no support for UIKit, and there will be none in the future. I believe there are many great open source projects for displaying charts in UIKit


Feature/3552 app bar example clean up

Fixes # BLUI-3552

Changes proposed in this Pull Request:
App Bar
Examples
Start with the snap example
Custom content description doesn't make sense — this one will be different from Angular….the react implementation works like a normal app bar, whereas the Angular one has specific content projection slots — reach out to me and I'll help with the description

Screenshots:

To Test:

yarn start:reactdev
Navigate to App Bar

Small thing - would it be an easy fix to remove the overflow X scrollbar at the bottom of these examples?  It's just a little distracting.

Your final example, Adding Additional Content, talks specifically about the Toolbar but highlights the entire AppBar; can you focus the Toolbar instead?

Is it on windows? I don't see it on mac

Yes mac does a nice job of hiding the scroll bar.  This isn't a big issue, just ignore it for now.


python cli.py web-build  cant support  --host <IP_ADDRESS>  option？

python cli.py web-build --host <IP_ADDRESS>
Usage: cli.py web-build [OPTIONS]
Try 'cli.py web-build --help' for help.
Error: No such option: --host

It doesn't support --host param, and you don't need the --host param too.


Remove empty paragraph tags from rendered markup

Depending on what we've done in a markdown file, the renderer can sometimes create empty

 tags.
These should be removed from the final markup. Make sure to investigate the markdown library itself to see if it already handles this.

Current render process is:

render markdown
render nunjucks

The problem is nunjucks comments are wrapped in

 first by the markdown renderer, and then the comment content is removed during the nunjucks render. That leaves us with the empty
 element.
We'll need to remove them as custom code after the nunjucks rendering.


How can I run a python script in the background?

This question was made by @dvirvahav via e-mail, and we will try our best to answer that. Next, we will provide some solution and description for this question.

To run a Python script in the background, you can use the nohup command in Unix-based systems like Linux or macOS. The nohup command allows you to run a command or a script in the background even if you log out or close your terminal window.
Here's an example of how you can use nohup to run your Python script in the background:
nohup python your_script.py > log.out 2>&1 &

In this command, your_script.py is the name of your Python script. The log.out instruction is the name of the log file where the output of your script will be saved. The 2>&1 redirects the error output to the same log file. The & at the end of the command puts the process in the background.
After running this command, you should see a message like:

nohup: ignoring input and appending output to 'log.out'

This is indicating that your script is running in the background. You can safely close your terminal window or log out, and the script will continue to run.
Note that this approach assumes you are running your Python script on a Unix-based system, like Linux or macOS. If you are running your script on Windows, you can use the Python subprocess module to achieve a similar effect. You also have specific answers concerning the Tobii Eye Tracker on StackOverflow.


Laravel =<5.6 Migrations generator

Current Migrations generator isn't compatible, so have created a fork of the project which I'll keep up to date.

According to the CONTRIBUTING.md:
Must haves for Packages, Starter Projects, Codebases etc.

300+ stars on GitHub.
Support Laravel 5.5 LTS or higher.
Use PSR-4 autoloader.
Packages must be listed on Packagist.
Packages must have also had 10,000 downloads.
Tests!
Utilize Travis-CI or similar CI tools to automatically check coding standards and run tests.

Sorry, not enough stars: https://github.com/chiraggude/awesome-laravel/blob/master/CONTRIBUTING.md


Replace InstanceKey.StringCode() and DisplayString() with String()

The 3 functions generated the same output and were interchangeable so the code is cleaner and easier to understand if just String() is used.  This suggested patch removes the redundant functions.
It's confusing otherwise and you need to check the code to see what the difference is between the 3 functions when actually there's no difference at all.  There are no functional changes to any of the code.

[x] contributed code is using same conventions as original code
[x] code is formatted via gofmt (please avoid goimports)
[x] code is built via ./build.sh

Shlomi, I saw the travis build failed and fixed the failed tests, and have pushed these fixes but don't see a way to do an "update branch".   The workflow here is not clear to me.

@sjmudd I updated the branch for you. It's strange that you don't see the button, since you're a committer.

@sjmudd the reason for the different functions:

String() is by convention a visual string representation of an object; something that is made for humans and debug output.
As such, I do not wish to rely on String() on anything that is logic. So never use it as a key to a map.
Which is what StringCode() is there for.
Granted, both currently return the same value.
I'm happy to remove DisplayString() though.

In summary, I will not replace StringCode() with String() but am happy to replace DisplayString() with String().

@shlomi-noach Thanks for clarifying. Perhaps this could be clearer in the code comments?
It's easier to close this PR and create a new one just changing DisplayString() to String() and I'll add a comment along the lines of what you indicate so this is clear.


Icons: standardize images

Hi @inesdgomes, we finally fixed the icon rendering in the button and other places. However, while I was testing it, it seems like some of the icons have much different dimensions and thus render differently inside components that use them, like buttons.
Here are a few examples:

I added a table of all of the icons with the names and previews to that pacakge README which you can see here
I think the problem is that many of the icons have differing amounts of padding in their viewBoxes. The SVGs themselves are the same size, but there are varying amounts of empty space around the actual image inside the SVGs that cause the icons to appear as if they're different sizes.
I think the solution here is to do the same thing we did with the logos, recreating them one by one to make sure that they all have the same proportion.

Hi @justintemps OK, will change the icons. Before I do that, does this make sense to you:

All SVGs are 24:24px (no exceptions)
Icons inside the SVGs are always centered
Icons inside the SVGs are always either 16px wide or 16px tall, depending on the icon (this is what we did for the social media icons)
Icons with very odd ratios may exceptionally be a bit taller or wider - this may be necessary for icons that are very long or tall, but will try to avoid the exceptions.

Hey @inesdgomes, I'm not sure why we'd want the SVG to be 24px but the image inside the SVG to only be 16px. They'll be much easier to work with if they go edge to edge.
Yes, they should always be centered.

We agreed that @inesdgomes would standardize the icons in Figma and then we'll figure out a way to export them to the package

@inesdgomes let's talk about a few of these icons, because I think it doesn't make sense to have a few of them and we can deprecate them and use similar ones. Like for example, why do we have so many types of chevrons? we should use only one to make sure the experience looks cohesive. Right now, from my point of view, its like we are using two different sets of icons.

Also, a few of the icons have border-radius on some corners and others don't. Shouldn't we use the same style for all of them?

Hi @beatrizmartinmartins As discussed, please do streamline the style of the icons and remove duplicates and icons that are not used anywhere. Thanks

Please check the updates here All of the icons have been updated to the latest style and we don't have duplicates anymore

@beatrizmartinmartins Much better, thanks! I remember you pointed out that some icons also had different styles, for example the home icon has rounded corners. Please could you also review that and then list here which icons were changed so developers can replace them? Thanks

@inesdgomes All those icons are review and I just changed them. Honestly, all icons have changed. I changed every single one of them. Adjusted the sizings, the paddings, made sure that every single icon looked nice and applied it to templates to make more reviews. The list of final icons is the following:

Add
Close
Minus
Caret Right
Caret Left
Caret Down
Caret Up
Arrow Left
Arrow Right
Arrow Down
Arrow Up
Arrow Go To Right
Arrow Go To Left
Home
Arrow Sort
Chevron Down
Chevron Up
Chevron Right
Chevron Left
Download
Calendar
Search
Check
Copyright
Send
Mail
Launch
Online
Conference
Dot Menu
Notification Success
Notification Error
Notification Info
Notification Info Outlined
Notification Warning
Burger
Language
Video Sound On
Video Sound Off
Settings
Fullscreen
Pause
Play
Statistics
Social RSS
Pin
Social TikTok
Social LinkedIn
Social Facebook
Social Twitter
Social Instagram
Social Flickr
Social Youtube
Upload

cc @justintemps

Ok, cool! One final question: is there a reason for the right and left chevrons to be smaller than the other chevrons? Wondering how that's going to look in the search results' pagination? Scroll to the bottom here: https://www.ilo.org/search?search_api_fulltext=&ilo_date[min]=&ilo_date[max]=&sort_by=search_api_relevance&f[0]=language%3Aen

@inesdgomes so basically left and right chevrons are used to navigate through content or pagesm basically an action, while the top and bottom chevrons is more of a dropdown kind of chevron where it shows something up, not really a navigation. Although if you'd like we can make them the same size and have them all look the same

Review and sizing aligned @inesdgomes

Thanks @beatrizmartinmartins Could you just check the chevrons in the templates? Something doesn't look quite right in Search Results pages.

@inesdgomes checked and changed on the templates!

Hi @justintemps This is ready for development: https://www.figma.com/design/szl87D4Zg4MeWXzKWMCCZO/ILO-Icons?node-id=5949-9510&t=ttLvr2f80hUvsoWB-0
Beatriz adjusted all the icons and removed duplicates and unnecessary icons. All icons need to be replaced in the code.

@justintemps This is ready for development. See comment above.

@Shashika6 so the task here is to replace the icon files that we have in the icon packages with the ones we have above and include any that are missing (including download).

@Shashika6 Please replace all SVG files, even those that look similar. All icons were changed, even if by a few pixels.

Hey team can I please get access to this one. https://www.figma.com/design/szl87D4Zg4MeWXzKWMCCZO/ILO-Icons?node-id=5949-9510&t=ttLvr2f80hUvsoWB-0

email is :-<EMAIL_ADDRESS>Cc :- @inesdgomes @justintemps

Hi @Shashika6 Sorry, thought you had access to all the files. It should work now.

Hey team so I started working on this one and I noticed a few things and have some questions.

Some of the currently existing icons that are being used have different names should we change these to sync with the new names on the design ?

Some of the old icons are not available in the designs but they are used on the website. How are we going to action this ?

There are a few new icons should we add them into the package as well ?

Discussed this with @inesdgomes and we agreed that we should change the names of the icons to the ones that are used in Figma. Also, we need a list of the icon names to the Storybook documentation for the Icon component, otherwise you don't understand how to use it.

Hi @Shashika6 Just to clarify:

Some of the currently existing icons that are being used have different names should we change these to sync with the new names on the design ? Yes, we should use the names from the design files

_- - Some of the old icons are not available in the designs but they are used on the website. How are we going to action this Can you please let me know which icons are these?

There are a few new icons should we add them into the package as well ?_ In principle, yes, but could you let me know which ones are new?

Sure @inesdgomes will document everything on the go.

Hey @justintemps @inesdgomes.
I documented how the new icons are going to be.
As mentioned, it's clear how to add and replace the new icons and the unused ones can be easily removed, but what about the existing ones that are not in the design?
New Icons added
ArrowGoToLeft
ArrowSort
Calendar
Upload
NotificationInfo
Conference
Settings
Statistics
Launch
Online
Mail
Pin
Send
Share
ClosedCaptions
ChevronUp
ChevronLeft
ChevronRight
CaretUp
CaretLeft
Replaced Icons
Add
Arrow -> ArrowDown
ArrowUp
BreadcrumbDividerRTL -> ArrowLeft
PaginationArrow/ BreadcrumbDivider -> ArrowRight
Burger
CheckMark -> Check
Download
DoubleArrow-> ArrowGoToRight
Home
Copyright
Play
Pause
Facebook -> SocialFacebook
Instagram -> SocialInstagram
Flickr -> SocialFlickr
RSS -> SocialRss
X -> SocialX
LinkedIn -> SocialLinkedIn
TikTok -> SocialTiktok
Elipsis -> DotMenu
Global -> Language
Error -> NotifcationError
Info -> NotificationInfoOutlined
Success -> NotificationSuccess
Warning -> NotificationWarning
Search
Minus
Muted -> VideoSoundOff
Volume -> VideoSoundOn
SteMarrow -> ChevronDown
ListArrow-> CaretRight
Equilateraltriangle -> CaretDown
Used Old icons not available on the design
Quote
FooterTriangle
HalfSquareTriangle
Triangle
Unused Old icons
Scalenerighttriangle
Scalenerighttrianglereverse
TriangleDecoration
TriangleReverse
ListArrowReverse

Hey @Shashika6
We need to make sure that the Unused Old Icons aren't being used by the website somewhere.
@inesdgomes
As per @Shashika6's comment above, we have some old icons that are not in the designs but that are being used in various places by the DS. @Shashika6 will paste some examples below.
Used Old icons not available on the design
Quote
FooterTriangle
HalfSquareTriangle

Hi @Shashika6 Thanks for this. @justintemps On the old icons that are used in the DS but are not available in the design, I'll discuss with @beatrizmartinmartins, but my first thought is:

Quote should be added to the Icons package in the designs file.
FooterTriangle and HalfSquareTriangle do not have the value of icons and they could perhaps be moved to the brand assets package. I don't think we need them in the designs files, but will check with Beatriz.

As for the Unused Old icons, if we're 100% sure they're not used anywhere, we can delete them.

Are these ones the ones missing from this file? @Shashika6 Is it possible to use change the names of them to something more agnostic?

FooterTriangle could be Horizontal Triangle
HalfSquareTriangle could be Triangle
Something like this maybe?

Should I add these Icons to the components where they are being used? @inesdgomes

Yes @beatrizmartinmartins :) those are the icons that are missing. They seem to be different in size compared to the other ones as well.
Also, Yes we can change the names of these icons.

Hey team waiting on a reply to this :)
Cc :- @beatrizmartinmartins , @inesdgomes

Hi @Shashika6 Beatriz and I talked about this and agreed that:

We'll keep only the 'Quote' and 'HalfSquareTriangle' icons. Beatriz already added them to the design files in a separate page called Others.
As we're getting rid of the 'FooterTriangle', we'll use the 'HalfSquareTriangle' in the footer instead. Beatriz will update the component.
Beatriz will also make sure that in the design files we use the 'HalfSquareTriangle' in the credits and context menu, to ensure it's aligned with development.
As for the name, @beatrizmartinmartins and @Shashika6 let's use 'Triangle-RightAngle'. I know it's long, but we need to differentiate it from the equilateral triangle, which is part of the ILO brand guidelines.

Sure @inesdgomes, Thanks :'). @beatrizmartinmartins Let me know when you update the above component.

Hey, we are using the long triangle on the Cards as well. Should we use the Triangle-RightAngle instead @inesdgomes ?
Screenshot attached

Apart from the above, all the other components like Footer, Credits and Context Menu, as well as the Strips of the NavBar have been updated. @Shashika6 and @inesdgomes Check them here:

Credit
Footer
Navigation Strips

Hey, we are using the long triangle on the Cards as well. Should we use the Triangle-RightAngle instead @inesdgomes ?
Screenshot attached

Hi @beatrizmartinmartins Can we see how it would look with the Triangle-RightAngle?

Apart from the above, all the other components like Footer, Credits and Context Menu, as well as the Strips of the NavBar have been updated. @Shashika6 and @inesdgomes Check them here:

Credit
Footer
Navigation Strips

Thanks @beatrizmartinmartins Some comments:

Credit There's a small size issue here. I left a comment in the design
[Footer](https://www.figma.com/design/RRxsfLNxjoypKrfJg1EwJf/ILO-Components-Library?m=auto&n

ode-id=1590-15140&t=JIVvLQYx1iQ47Ijn-1) The triangle in the footer creates weird layouts, depending on the breakpoint and amount of social media icons. This was happening with the other triangle too. See screenshot below of the footer in the ILO global website. Should we make it much smaller so it uses just a tiny bit of the corner? Or would you rather completely remove it?
Navigation Strips All good

Context menu  This component is using another triangle, which is an equilateral one. The equilateral one should also be used in the lists, though it has been replaced with the carret. Let's talk about this tomorrow.

@inesdgomes I think it doesn't really make much difference using one triangle or another honestly, so I'd go with the Triangle-RightAngle that we decided to keep. What do you think?
Before

After

Related to the components:

Credit. Already fixed it.
Footer. I think we should remove it. It doesn't add anything to the footer anyway and if it's making our lives harder, it's better to remove.
Context Menu. I think that is not even an icon, is simply a triangle container. But yes, let's talk about it tomorrow.

@beatrizmartinmartins Agree on changing the triangle in the card component, as well as removing the triangle from the footer.
To discuss tomorrow:

Should we also remove the triangle from the credit button? It does look odd and it's not making things easy in the photo gallery component.
Triangle in the context menu and lists. Do we need an equilateral triangle for those?

hey @Shashika6 I don't think the above request is necessarily ready for dev yet, please hold off on that.

Hey @beatrizmartinmartins and @inesdgomes, I think that in the Figma files you guys mixed up arrows and chevrons.
This is an arrow:

And this is a chevron:

I've renamed these appropriately in the in the icons package. Here's a brief recap of all of the icon names:
add.svg
arrowdown.svg
arrowleft.svg
arrowright.svg
arrowsort.svg
arrowup.svg
burger.svg
calendar.svg
caretdown.svg
caretleft.svg
caretright.svg
caretup.svg
check.svg
chevrondown.svg
chevrongoleft.svg  <- Used to be arrowgotoleft.svg
chevrongoright.svg <- Used to be arrowgotoright.svg
chevronleft.svg
chevronright.svg
chevronup.svg
close.svg
closedcaptions.svg
conference.svg
copyright.svg
dotmenu.svg
download.svg
footertriangle.svg
fullscreen.svg
halfsquaretriangle.svg
home.svg
language.svg
launch.svg
mail.svg
minus.svg
notificationerror.svg
notificationinfo.svg
notificationinfooutlined.svg
notificationsuccess.svg
notificationwarning.svg
online.svg
pause.svg
pin.svg
play.svg
quote.svg
search.svg
send.svg
settings.svg
share.svg
socialfacebook.svg
socialflickr.svg
socialinstagram.svg
sociallinkedin.svg
socialrss.svg
socialtiktok.svg
socialx.svg
socialyoutube.svg
statistics.svg
upload.svg
videosoundoff.svg

Hi @beatrizmartinmartins A few notes on this for our meeting:

I already corrected the names of arrows/chevrons
We need to check which triangle is being used in lists and context menu. Ideally, it should be an equilateral triangle.
The instagram icon is the only social media icon that is outlined. Should we change that?

Hey @inesdgomes and @justintemps
I just included the icons listed above:

Changed all the carets to have an equilateral triangle (based on what we have on the Brand Guidelines defined)
Removed the Play button triangle. We are going to use the Caret from now on.
Added the Triangle-Equilateral to be used on tooltips, loading and context menus.
X (Previously Twitter) icon doesn't have an option with solid color, so we will keep it like it is.
Instagram logo has been changed from outlined to solid form.


Error in Hapi example

The example suggests importing ApolloHAPI as  import { ApolloHapi } from 'apollo-server';
The instructions should read  import { ApolloHAPI } from 'apollo-server'; as ApolloHAPI is actually the name of the exported object.

@siegesmund Thanks! Can you make a quick PR to fix it please? You can edit the README.md directly on github.

Looking at the source in the Github repo, it looks like it was changed to camel case 5 days ago. The version on NPM reflects the old nomenclature. With the next version bump, the instructions will be correct. So, I guess, nevermind.

The docs / readme should be consistent with the currently released version though, so I still think this is an issue.

I agree. Wasn't sure when you were planning on releasing the next version. I'll make the pull request.

Corrections made in apollostack/apollo-server#142

Thanks for the PR, I just merged it!


(BKR-1061) Beaker destroy implementation

Adding spec and acceptance tests, but wanted to get some code up for discussion

Refer to this link for build results (access rights to CI server needed):
http://jenkins-beaker.delivery.puppetlabs.net//job/qe_beaker_btc-intn/3680/

Refer to this link for build results (access rights to CI server needed):
http://jenkins-beaker.delivery.puppetlabs.net//job/qe_beaker_btc-intn/3688/

Refer to this link for build results (access rights to CI server needed):
http://jenkins-beaker.delivery.puppetlabs.net//job/qe_beaker_btc-intn/3689/

Refer to this link for build results (access rights to CI server needed):
http://jenkins-beaker.delivery.puppetlabs.net//job/qe_beaker_btc-intn/3690/

Refer to this link for build results (access rights to CI server needed):
http://jenkins-beaker.delivery.puppetlabs.net//job/qe_beaker_btc-intn/3691/

Refer to this link for build results (access rights to CI server needed):
http://jenkins-beaker.delivery.puppetlabs.net//job/qe_beaker_btc-intn/3692/

Refer to this link for build results (access rights to CI server needed):
http://jenkins-beaker.delivery.puppetlabs.net//job/qe_beaker_btc-intn/3693/

Refer to this link for build results (access rights to CI server needed):
http://jenkins-beaker.delivery.puppetlabs.net//job/qe_beaker_btc-intn/3694/

Refer to this link for build results (access rights to CI server needed):
http://jenkins-beaker.delivery.puppetlabs.net//job/qe_beaker_btc-intn/3695/

Refer to this link for build results (access rights to CI server needed):
http://jenkins-beaker.delivery.puppetlabs.net//job/qe_beaker_btc-intn/3697/

Refer to this link for build results (access rights to CI server needed):
http://jenkins-beaker.delivery.puppetlabs.net//job/qe_beaker_btc-intn/3698/

Refer to this link for build results (access rights to CI server needed):
http://jenkins-beaker.delivery.puppetlabs.net//job/qe_beaker_btc-intn/3699/

Refer to this link for build results (access rights to CI server needed):
http://jenkins-beaker.delivery.puppetlabs.net//job/qe_beaker_btc-intn/3700/

Refer to this link for build results (access rights to CI server needed):
http://jenkins-beaker.delivery.puppetlabs.net//job/qe_beaker_btc-intn/3701/

Refer to this link for build results (access rights to CI server needed):
http://jenkins-beaker.delivery.puppetlabs.net//job/qe_beaker_btc-intn/3702/

Refer to this link for build results (access rights to CI server needed):
http://jenkins-beaker.delivery.puppetlabs.net//job/qe_beaker_btc-intn/3716/

Refer to this link for build results (access rights to CI server needed):
http://jenkins-beaker.delivery.puppetlabs.net//job/qe_beaker_btc-intn/3717/

Refer to this link for build results (access rights to CI server needed):
http://jenkins-beaker.delivery.puppetlabs.net//job/qe_beaker_btc-intn/3718/


feature: add INSTRUCTOR models as embedding backend

Is your feature request related to a problem? Please describe.

Describe the solution you'd like

These instructor models are well tuned for embeddings, as demonstrated here.
But as I understand it, they cannot be used as an embedding backend in localai, because it is not bert or llama.cpp models.
And as I see here, there is no way to use different embedding models than llama.cpp compatible models and bert models.
There is a way to use these embedding models via chroma, but it may be more reasonable to use embeddings via localai REST API.
Why localai, but not chroma?
Because the simpler and more correct way would be to use localai as the backend for embeddings, because then end-user can scale this solution, e.g. in kubernetes and make changes to the architecture of that backend fairly quickly.
How this would work through chroma is hard for me to say.
I think it's not quite right to use chroma as embeddings backend and also complicates the code a bit if someone decides to switch these models to openai bert for example via environment variable or something like that.
Example of model configuration:
name: "instructor-large-embeddings"
license: "Apache 2.0"
urls:
- https://huggingface.co/hkunlp/instructor-large
description: |
    Large Instructor model that can be used for embeddings
config_file: |
    parameters:
      model: hkunlp-instructor-large
    backend: instructor-embeddings
    embeddings: true
files:
- filename: "hkunlp-instructor-large"
  sha256: "fb7f63752cf10103be938bc50dfad0b6fa1e63bc67b963471fc827838d9bbb41"
  uri: "https://huggingface.co/hkunlp/instructor-large/resolve/main/pytorch_model.bin"

Ref: https://github.com/go-skynet/model-gallery
Describe alternatives you've considered

Example of code with instructor models for embedding in chroma vector database:
# import
# from langchain.embeddings.sentence_transformer import SentenceTransformerEmbeddings
from chromadb.utils import embedding_functions
from langchain.text_splitter import CharacterTextSplitter
from langchain.vectorstores import Chroma
from langchain.document_loaders import TextLoader

# use localai instead of openai api
base_path = os.environ.get('OPENAI_API_BASE', 'http://localhost:8080/v1')

# load the document and split it into chunks
loader = TextLoader('state_of_the_union.txt')
documents = loader.load()

# split it into chunks
text_splitter = CharacterTextSplitter(chunk_size=300, chunk_overlap=70)
texts = text_splitter.split_documents(documents)

# create the open-source embedding function
# embedding_function = SentenceTransformerEmbeddings(model_name="hkunlp/instructor-xl")
embedding_function = embedding_functions.InstructorEmbeddingFunction(model_name="hkunlp/instructor-xl", device="cpu")

# load it into Chroma
db = Chroma.from_documents(texts, embedding_function)

# query it
query = "What did the president say about Ketanji Brown Jackson"
texts = db.similarity_search(query)

# print results
print(texts[0].page_content)

Additional context

Links:

https://instructor-embedding.github.io/
https://github.com/HKUNLP/instructor-embedding
https://huggingface.co/spaces/mteb/leaderboard
https://docs.trychroma.com/embeddings#instructor-models
https://python.langchain.com/docs/modules/data_connection/vectorstores/integrations/chroma
https://mudler.pm/posts/localai-question-answering/
https://github.com/go-skynet/model-gallery/issues/1

this is now possible as internal backends where moved to gRPC services. This allows to have a backend, let's say, in python, given it satisfies our gRPC server implementation.

With https://github.com/go-skynet/LocalAI/pull/778 it was introduced the huggingface embedding in python - will follow along with docs soon but an example can be seen in https://github.com/go-skynet/LocalAI/blob/master/tests/models_fixtures/grpc.yaml  , didn't tried yet with instructor embeddings but worth a shot?

With https://github.com/go-skynet/LocalAI/pull/778 it was introduced the huggingface embedding in python - will follow along with docs soon but an example can be seen in https://github.com/go-skynet/LocalAI/blob/master/tests/models_fixtures/grpc.yaml  , didn't tried yet with instructor embeddings but worth a shot?

Hi,
Thanks for your feedback.
Not tested it yet. We can close an issue now.


Add new adapter TingoDB

Awesome! Thank you for your contribution to the Sails and Waterline ecosystem @andyhu.


Overhead tile occlusion and other details do not work as expected

My use case for this is pretty niche, so I'm not sure if it's addressable without breaking something else.
When an overhead tile's Occlusion Mode is set to "None (always visible)," the tile still appears translucent to the GM unlike in Core functionality.
Furthermore, its opacity does not seem to be animatable by such modules as Sequencer.  I believe that before recently, this wasn't the case (though I will admit I am not certain of it).
I've attached some short video captures of attempting the same things with and without Perfect Vision enabled, as well as the macro script I'm using.
Active Modules in this Test Environment:
libWrapper
Perfect Vision
Sequencer
socketlib
Macro being used:
const target = canvas.foreground.get('LyiKGI0UBmI3svax')
target.document.update({ alpha: 0 })

new Sequence()
    .animation()
        .on(target)
        .fadeIn(1000, {ease: "easeOutCubic"})
    .play()

https://user-images.githubusercontent.com/27756065/157387140-e71e3ed1-5924-47e0-b625-84f57cfe2f3c.mp4
https://user-images.githubusercontent.com/27756065/157387145-30bbf067-1e28-4e2d-bdba-24a36cbf326f.mp4

Thanks for the report! Fixed in 3.7.7.


Updating README.md to include @HensonNavigable and Parceler integration

Some changes to the README.md to get ready for 2.0!

Comments + RTM


[python] Fix python api can't connect to remote gateway server

For now, python API could only communicate python gateway server
in the same hosts, this patch makes it could work with different hosts,
and export java gateway setting to configure file

I've already test in my server and it work.

Codecov Report

Merging #8248 (22b23d6) into dev (a778146) will decrease coverage by 0.01%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##                dev    #8248      +/-   ##
============================================
- Coverage     44.94%   44.93%   -0.02%
+ Complexity     3950     3948       -2
============================================
  Files           672      672
  Lines         26182    26182
  Branches       2825     2825
============================================
- Hits          11768    11764       -4
- Misses        13304    13306       +2
- Partials       1110     1112       +2

Impacted Files
Coverage Δ

...e/dolphinscheduler/remote/NettyRemotingClient.java
50.70% <0.00%> (-2.82%)
:arrow_down:

Continue to review full report at Codecov.

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

Others LGTM

Changed base on some suggestions, PTAL @kezhenxu94 @ruanwenjun thanks

Thanks ~


Add a template skeleton for data migration pipeline

This minimal runnable version of template reads from a MySQL dump, transforms the data, and then write mutations to a Spanner table
The template is named "data_migration_pipeline" instead of spanner specific naming, b/c in future we want the write action to be easily switched to other databases on template applied
Tested with local spanner emulator

Thanks for the prompt review!

When update branch with latest changes, there is a unsigned commit. Instead of authoring that commit on behalf of me so I could sign that, will create a new Pr instead.


Decide What Chart Library To Use

React has a bevy of charting libraries that make developing interactive charts easy...or at least more integrated into a React-based project. I think Nivo provides the easiest way to view samples of what you can do, and it also looks like you mainly declare props instead of dealing with a bunch of sub-components...might be good, might be bad.
References:

Best chart library rundown - https://livecodestream.dev/post/7-react-chart-libraries-for-your-web-projects/
Coolest looking library - https://nivo.rocks/
Could be something - https://formidable.com/open-source/victory/docs
Lots of examples but docs are in Chinese - https://github.com/alibaba/BizCharts
Most widely used but not great for quick examples - https://github.com/recharts/recharts

Acceptance Criteria

[x] Review references above from a developer and designer approach.
[x] Add chosen library to this project.
[x] Check accessibility requirements

Nivo https://github.com/plouc/nivo/issues/126

[x] Replace pie graphic in homepage #227 with a pie chart using the chosen library.

Next Issue
The decision here should help with the mockups and tieing the design more closely to code. I'm not familiar with many of the types of charts those libraries have in demos so I would look those over to come up with ideas vs. designing the mockups without any relation/insight to how it fits into code.

I looked through these libraries and I think we can make any of these work for our purposes.
Aesthetically I like the Nivo one the most (also not really feeling Alibaba anything these days)
I guess my questions are:

Is the Nivo one harder to work with since its my understanding that it's set up on the server side ?
From an accessibility stand point is there one of these what works better than the other? (like are the graphs screen reader friendly)
Knowing that we will likely only use the most basic graphs ( Bar chart, Pie chart, etc) do you think Nivo is the best option?

Ultimately I will defer to you on which library will be the best to use since I think the functionality and architecture will be the most important factor in this choice. Its true that we could potentially find more versatile data to visualize on the report but for now I would just expect it to be similar to last year sine none of us have the bandwith to be hunting for data. Visually we will be keeping it on the simple side so as long as we can change the colors and the font size on the labels I can make it work.

Well, to the accessibility point https://github.com/plouc/nivo/issues/126 is the best issue I can find. So apparently it is not something they baked into the beginning.
If you don't need fancy charts, then maybe a more widely used library is better. For example, Nivo works with React but not outside of it. Some React libraries interface with general JS libraries so it is theoretically easier to use those graphics across projects that don't use React.
I will take a second look for the more simple and easier to use in multiple places libraries.
On accessibility though, what is our standard? We should have a concrete level of WCAG to adhere to.

I completely agree. We should have a designated WCAG level to adhere to. I know we have been able to get away with not following the strict level that the University has to legally abide to because we can live under the Foundation but maybe we should make these choices working towards that more strict level?
Regardless of the specific WCAG level, I think we should aim for a graph library that can work with some standard accessibility measures. If NIVO doesn't then we should probably use something else.

The university has no "Strict level" and I bet a lot of web properties aren't at a high level of compliance. I can tell you for a fact that colorado.edu/ sites are only checked on launch for accessibility and then content editors can do all sorts of things after that check.
I just talked to the NextGen team to try and get some standards out of them, but I didn't get a concrete answer. I think they will have some meetings and then tell me something.

@duquennoisa just following up here. We chose Recharts and discussed keeping the bar chart but using a graphic for the pie chart. I will continue to update the bar chart in another issues but leave the pie chart alone.


unknown exception: ImportError('Flask or its dependencies are not fully installed, they are required for serving HTTP requests.Please use pip install "jina[http]" to install it.')

Problem
python app.py index now seems to work okay. But running python app.py search results in:
unknown exception: ImportError('Flask or its dependencies are not fully installed, they are required for serving HTTP requests.Please use pip install "jina[http]" to install it.')

Why?
flask not in requirements.txt and not showing when run pip list

Running pip install jina[http] fixes the error

This has been fixed and both indexing and querying work fine.


Implementing calculate_results functions

[x] First step based on the old code has been done, seems to work, some open things remain
[x] adding some plots
[x] pytesting this calculate results functions against old code

Thinking through

[ ] Why the uncorrected alpha is used to calculate L_rel? (was fed through Fmag). Upon comparing to the old code it was found that Fmag needs the uncorrected alpha input and aero_coeffs requires the corrected alpha input.
[ ] Why is a [0,1,0] needed?

Reggarding L_rel, in the old code it needs Fmag and aero_coeffs, which is already the corrected alpha in that implementation. It does not deppend on the uncorrected value.
[0,1,0] is needed to know the geometrical span wise direction. It can also be obtained in another way to make it robust against different orientation in the geometry input.


Ensure ResultCache.cache_root doesn't return symlinks

On OS X the temp directory is under /var/folder/... but /var is a symlink to /private/var and that causes the symlink check in Cache#save to fail.
This is the same issue than #683 and caused the spec to fail on OS X.
I’m not sure what to write in the Changelog for this.

Thanks! I don't have an OS X machine to test on, but it looks good to me. Since this is a correction of an unreleased change, you don't need to update the changelog.

You might want to setup Travis to run the tests on both Linux and OS X: https://docs.travis-ci.com/user/multi-os/

Looks good to me! :+1:

You might want to setup Travis to run the tests on both Linux and OS X: https://docs.travis-ci.com/user/multi-os/

Perhaps. I'm a bit wary about making the tests twice as slow, though.

I'm a bit wary about making the tests twice as slow, though.

Travis isn't charging you anything for their CPU time. They run tests in parallel, too. Better take advantage of it!

Hehe. PR welcome! :-)


(shortfin.array) What if we had a context manager for briefly getting a host copy of a device array?

It might be nice if we have something that lets us do
with GetMapOfViewOnHost(device_array, index, discard=True) as m:
   m.fill(0)

instead of
seq_lens_host = seq_lens.for_transfer()
with seq_lens_host.map(discard=True) as m:
    m.fill(0)
    m.items = [len(req.input_token_ids) for req in self.exec_requests]
seq_lens_host.copy_to(seq_lens)

or, alternatively, for a lighter-weight easier-to-implement more flexible approach...
I wonder if something like
class GetArrayOnHost:
    def __enter__(self, array: shortfin.array.device_array):
        self.array = array
        self.host_array = array.for_transfer()
        return self.host_array

    def __exit__(self, exc_type, exc_val, exc_tb):
        self.host_array.copy_to(self.array)

That enables
with GetArrayOnHost(device_array) as host_array:
    ... read / write array

Instead of
host_array = device_array.for_transfer()
... read / write array
host_array.copy_to(device_array)

would be nice.

Don't think too hard about making what is there nicer. We need a new API for managed DMA. it's not just ergonomics. The current approach creates global locks on the memory system that slow everything down. Was just the easiest thing to make and is always need as a fallback.


Values of "$ref" and component names are not encoded

I've successfully generated the spec JSON file, and I uploaded it to https://editor.swagger.io/ for validation. These error messages are shown:

$ref values must be RFC3986-compliant percent-encoded URIs
Component names can only contain the characters A-Z a-z 0-9 - . _

I think they are caused by "$ref" values like these:

$ref: '#/components/schemas/{substitutions:Substitution[];}'
type
'{substitutions:Substitution[];}':

This happens when the type of the property is like this:
substitutions?: SubstituteStep['config']['substitutions'];

I couldn't reproduce the issue with: substitutions?: SubstituteStep['config']['substitutions']; It ignores referring these kind of indexed type accesses, and put the whole schema in front of the property, which I think is fine.
could you share the all the types and output?

I indeed tested with ref: true
It most likely related to ignoreErrors which could generate incorrect schemas if there are syntax errors in ts code.
Let me know if that's the case.

I found a way to reproduce it. Just need to append this into common-interfaces.ts:
// No change to the original content up to `statuses: STATUS[];`
  statuses: STATUS[];
  repairConfig: Repair['config'];
  damageFollowUps: FollowUp[];
}

declare enum ProcessingType {
  Discard = "discard",
  Repair = "repair",
}
interface AbstractProcessing<T extends ProcessingType, C> {
  type: T;
  config: C;
}

type Discard = AbstractProcessing<ProcessingType.Discard, { location: string }>;
type Repair = AbstractProcessing<ProcessingType.Repair, {
  repairer: string;
  estimatedCost: number;
  substitutions: Substitution[];
}>;

interface Substitution {
  from?: string;
  to: string;
}

type FollowUp = Discard | Repair;

Then just need to run the test case "should validate against SwaggerParser and json file with refs", and you will find these:

#/components/schemas/{repairer:string;estimatedCost:number;substitutions:Substitution[];}
#/components/schemas/{location:string;}

I think it is related to how fullTypeName is determined. It seems to be from:
else {
                fullTypeName = this.getTypeName(typ);

Alright then, found out the problem is it falling into the if 15 lines after fullTypeName you mentioned, at asRef = true;.


fix(RHTAPWATCH-1021): revert #3818 enable Tekton StepActions in prod

a revert PR in case anything unexpected happends while turning
the StepAction feature on while still an alpha feature in v0.59.9
(  as it is built upon an unmerged change, it appears as no files were changed)

a revert PR in case anything unexpected happends while turning the StepAction feature on while still an alpha feature in v0.59.9
( as it is built upon an unmerged change, it appears as no files were changed)

yep you'll have to rebase / do the revert after the merge of #3818

@Omeramsc @amisstea best as I can tell there has been no problems reported that are related to https://github.com/redhat-appstudio/infra-deployments/pull/3818
unless you all know something I don't, I think we can close this
next step I suppose will be if you or someone else starts modifying build-definitions to use StepActions, is that correct?

@Omeramsc was able to verify StepActions are working in prod so I agree we can close this.
@gabemontero I already have some StepActions to add to the build-definitions repo. I should have a PR for them sometime this week.


Fails when file has brackets

Hey,
It seems that the script fails to work when the image in question has brackets in the name. Here's the log:
Error: Command failed: /bin/sh -c find /Applications/MAMP/htdocs/frontend-framework/assets/dist/img/imgOptim-Screen Shot 2015-05-27 at 14.22.38 (2).png | sh ./node_modules/gulp-imageoptim/node_modules/.bin/imageOptim -a -c -q | grep TOTAL
/bin/sh: -c: line 0: syntax error near unexpected token `('
/bin/sh: -c: line 0: `find /Applications/MAMP/htdocs/frontend-framework/assets/dist/img/imgOptim-Screen Shot 2015-05-27 at 14.22.38 (2).png | sh ./node_modules/gulp-imageoptim/node_modules/.bin/imageOptim -a -c -q | grep TOTAL '

As soon as I took out the brackets it worked. While I appreciate that you shouldn't have brackets or spaces (etc) in your file names, it could still do with being fixed?

Thanks for reporting this issue.  It's been fixed.

Awesome! @allbitsnbytes


CI: reuse caching steps

What does this PR do?
Fixes #<issue_number>
Before submitting

[ ] Was this discussed/approved via a Github issue? (no need for typos and docs improvements)
[x] Did you read the contributor guideline, Pull Request section?
[ ] Did you make sure to update the docs?
[x] Did you write any new necessary tests?

PR review
Anyone in the community is free to review the PR once the tests have passed.
If we didn't discuss your PR in Github issues there's a high chance it will not be merged.
Did you have fun?
Make sure you had fun coding 🙃

no idea why suddenly all tests in the complete testing takes so much longer while nothing changed on the package side and caching is still within expectation limit...

@Borda Is it working properly? I had a look at some runs, and it looks like it doesn't use caching at all if I see it correctly. Just curious if you have any idea why it's not working?

@Borda Is it working properly? I had a look at some runs, and it looks like it doesn't use caching at all if I see it correctly. Just curious if you have any idea why it's not working?

could you point me to the case? I was testing it on HF cache and it seems to be restored, but still I could make a mistake :rabbit:

@Borda Is it working properly? I had a look at some runs, and it looks like it doesn't use caching at all if I see it correctly. Just curious if you have any idea why it's not working?

could you point me to the case? I was testing it on HF cache and it seems to be restored, but still I could make a mistake 🐰

I had a look again, and apparently, I was wrong😄 All seem to be working properly :)

I had a look again, and apparently, I was wrong All seem to be working properly :)

not wrong yeah, at the time there was a bug that Caching does not create even an empty folder if the cache is empty, so it was fixed in meantime by soft folder creation...


Opt-in for event logging

The app does not seem to provide a way for the user to opt out of event logging. Ideally this should be an opt-in selection that is provided during the initial onboarding workflow in the app.

Event logging meaning https://meta.wikimedia.org/w/index.php?title=Special%3APrefixIndex&prefix=MobileApp&namespace=470
Actually do we really need this logging at all?

I was wondering about that - it's likely there because the original devs intended for some sort of analytics to be run (AFAIK WMF runs analytics on most of its projects?). I don't think we need it for the time being, but when we implement the Wikidata edits with Nearby we would need to log those (but that might not be related).

Closing, since event logging was removed from the app.