StackStorm v3.4.0 Pre-release Testing

We're not yet ready to prepare the StackStorm v3.4 release and start the pre-release testing, but I'm opening this issue now in preparation. We still need to include a list of major features or areas that saw a large amount of code churn, as well as a complete list of the changes from the changelog so users can test each change. See the previous pre-release testing discussion for an example.

Release Process Preparation
Per Release Management Schedule @blag  is the Release Manager and @amanda11 is Assisting for v3.4. They will freeze the master for the major repositories in StackStorm org, follow the StackStorm Release Process which is now available to public, accompanied by the Useful Info for Release managers. Communication is happening in #releasemgmt and #development Slack channels.
The first step is pre-release manual user-acceptance testing for v3.4dev.
Why Manual testing?
StackStorm is very serious about testing and has a lot of it:

Linting, Compile, and Unit tests
Integration tests
User Interface tests
Packaging tests
Deployment Integrity checks
Smoke tests
end-to-end tests when automation spins up new AWS instance for each OS/flavor we support, installs real st2 like user would and runs set of st2tests (for each st2 PR, nightly, periodically, during release), including end-to-end tests ChatOps

See st2ci and st2cd for more examples and workflows about how StackStorm automation is used to test StackStorm (dogfooding).

That's a perfect way to verify what we already know and codify expectations about how StackStorm should function.
However it's not enough.
There are always new unknowns to discover, edge cases to experience and tests to add. Hence, manual Exploratory Testing is an exercise where entire team gathers together and starts trying (or breaking) new features before the new release. Because we're all different, perceive software differently and try different things we might find new bugs, improper design, oversights, edge cases and more.
This is how StackStorm previously managed to land less major/critical bugs into production.
TL;DR
See the Testing Process, where it will walk you through:

Spinning up a StackStorm instance using st2vagrant
Running StackStorm's self-check script
Running through the basic manual testing steps

Additionally, try to use that StackStorm instance as you normally would, maybe try to break it in new and interesting ways that you haven't tried before, and report any regressions found comparing to v3.3.
Extra points for PR hotfixes, reporting entirely new bugs, and missing test cases!
Specific things to check

[ ] Proper integration between st2web and st2flow

[ ] The blue + button to create a new workflow is visible in the actions list in the Actions tab
[ ] An action that is an Orquesta workflow has a blue EDIT button in the action details pane

[ ] Python 2 deprecation

[ ] ST2 should install packs with Python 3.6 by default
[ ] The python3 boolean option should not appear in the web UI in the packs.install action
[ ] The st2 pack install command should print a warning when passed the --python3 flag
[ ] New sensors are run with Python 3.6
[ ] Installation on U16 requires a PPA. A warning and confirmation will be required before it is installed by the ST2 installers, but flags/variables are available to automatically install as well.

[ ] st2resultstracker was removed

[ ] st2ctl status does not show any running st2resultstracker processes
[ ] st2ctl restart does not start any st2resultstracker processes

[ ] RBAC

[ ] RBAC not enabled by default by installers
[ ] RBAC can be enabled by following latest documentation

[ ] LDAP
[ ] Add support for GitLab SSH URLs

Superseded by https://github.com/StackStorm/discussions/issues/66


Add a few SourcePawn heuristics

Some of the SourcePawn include files (.inc) in https://github.com/shavitush/bhoptimer/tree/master/addons/sourcemod/scripting/include are being picked up as C++ for the repository's language percentage.
addons/sourcemod/scripting/include/closestpos.inc (via linguist)
addons/sourcemod/scripting/include/convar_class.inc (on language page)
addons/sourcemod/scripting/include/dhooks.inc (on language page)
addons/sourcemod/scripting/include/shavit.inc (via linguist)

Description
This adds some more patterns to heuristics.yml to match for the following SourcePawn syntax:

methodmap ExtendedType < BaseType
stock returntype FunctionName()
native returntype FunctionName()
forward returntype FunctionName()

Checklist:

[x] I am fixing a misclassified language

[ ] I have included a new sample for the misclassified language:

Sample source(s):

[URL to each sample source, if applicable]

Sample license(s):

[x] I have included a change to the heuristics to distinguish my language from others using the same extension.

Looks like it caused the Pawn tests to fail as it detected it as SourcePawn. Can I have some guidance on what I should do about this?

You'll need to adjust your heuristic to ensure it only captures SourcePawn-specific syntax. If that's not possible, then your only option is to close this PR and implement an override in your repo.

I changed the heuristic that was catching Pawn files and the tests pass on my local computer now.
The file shavit.inc is still recognized as C++ though. Would it be fine to add that as a SourcePawn sample? I didn't know that adding a sample affects the classifier at the start but it seems just dropping that file into the samples would've caused all the files to be correctly recognized as SourcePawn and I wouldn't have needed to add heuristics.

Would it be fine to add that as a SourcePawn sample? I didn't know that adding a sample affects the classifier at the start but it seems just dropping that file into the samples would've caused all the files to be correctly recognized as SourcePawn and I wouldn't have needed to add heuristics.

You could, and adding it would have the effect of helping correctly identify all the files in your repo it increases the chances the tokens match. I think a question needs to asked first: what specifically about the file (on its own) makes it SourcePawn as opposed to Pawn or C++? Identifying that could help improve the heuristic even more so others get the benefit too.
Also, keep in mind we don't aim for 100% accuracy with Linguist, so an override may need to used in particularly tricky or vague scenarios.

I think a question needs to asked first: what specifically about the file (on its own) makes it SourcePawn as opposed to Pawn or C++?

Mainly the SourceMod SharedPlugin and SetNTVOptional stuff. Back in 2014 or so SourcePawn's syntax was expanded though to be more C/C++ -like (while still maintaining compatibility with the old syntax). Things like methodmap, view_as<float>(somerandomint), and enum struct are now good indicators that a file is SourcePawn instead of Pawn if the SharedPlugin or SetNTVOptional stuff isn't in a file.
As for differentiating between SourcePawn and C++, the methodmap, view_as<float>(somerandomint), and the function modifiers forward, stock, and native would be good ways. C++ also has enum struct so that wouldn't work. The forward, stock, and native things already caused problems with making Pawn be recognized as SourcePawn so I'm not sure how that can be used well.
So for why that file is recognized as C++: Making a skeleton .inc file with only the content asdf inside causes the file to be recognized as C++ for me so I think the C++ classifier is just too strong and the heuristics aren't able to override it since modern SourcePawn already looks similar to C++.

Making a skeleton .inc file with only the content asdf inside causes the file to be recognized as C++ for me so I think the C++ classifier is just too strong and the heuristics aren't able to override it since modern SourcePawn already looks similar to C++.

There are no heuristics so the classifier is the only thing doing the guessing and it is notoriously bad at small samples, especially if there are no language-specific tokens in it. This happens a lit with C-family header files.
asdf is also a really terrible way to try test a language analyser based on content on its own without any other context, you'd never guess the language… its not even English 😁

Oh yes, C++ came out as the result for your test because it's alphabetically before Pawn and SourcePawn and not because of the content or anything the classifier knows about as none of the samples for these languages have asdf as a token 😁

There are no heuristics

Whoops, ignore that. I was mixing up my discussions. However, it's still kinda true as the heuristics wouldn't match asdf so wouldn't help in this scenario.

Mainly the SourceMod SharedPlugin and SetNTVOptional stuff.

🤔 I've taken a closer look at your shavit.inc file and it has both of those so the current heuristic should be correctly detecting the language of that file. I'm not sure why it's not doing so though.

Worked it out... those lines happen quite late into the file and the heuristics only analyse the first 50kb of the file:
https://github.com/github/linguist/blob/c492ac0d5bc697033c4261e8bfb597949ea882e2/lib/linguist/heuristics.rb#L6-L24
I'm not keen on increasing this as it's set low to keep things performant so I think it makes sense to add a sample that contains these tokens for the few cases like yours where we fall through to the classifier.

Worked it out... those lines happen quite late into the file and the heuristics only analyse the first 50kb of the file:

That definitely explains what was happening then.

I'm not keen on increasing this as it's set low to keep things performant so I think it makes sense to add a sample that contains these tokens for the few cases like yours where we fall through to the classifier.

Understandable. A couple of good samples that I think would be good to use:

shavit.inc - enum struct, SharedPlugin, SetNTVOptional, char[] buffer, default parameter values
dhooks.inc - typeset, methodmap, SetNTVOptional
bhopstats.inc - methodmap, methodmap properties, SharedPlugin, SetNTVOptional

And I guess test_heuristics.rb:test_inc_by_heuristics should have SourcePawn moved out of the nil key and swapped to *.inc
Also, I found is that mfile.inc isn't SourcePawn. It's actually Pawn and seems to be for open.mp, a GTA: San Andreas mod based on the API used.
I'll wait to see if you have any thoughts before adding more commits for any of it.

Understandable. A couple of good samples that I think would be good to use:
* [`shavit.inc`](https://github.com/shavitush/bhoptimer/blob/da9144f1b5fbc2a9d7d2153f3a584a75c7218a90/addons/sourcemod/scripting/include/shavit.inc) - `enum struct`, `SharedPlugin`, `SetNTVOptional`, `char[] buffer`, default parameter values

* [`dhooks.inc`](https://github.com/peace-maker/DHooks2/blob/008a2fd0220c7999e3c6337faf0e69c3b04f7bda/sourcemod_files/scripting/include/dhooks.inc) - `typeset`, `methodmap`, `SetNTVOptional`

* [`bhopstats.inc`](https://github.com/shavitush/bhopstats/blob/9ad328ccdf7ac44f61c190d7fcebe7420d3b9ece/scripting/include/bhopstats.inc) - `methodmap`, methodmap properties, `SharedPlugin`, `SetNTVOptional`

I think adding all three will be good for the classifier.

And I guess test_heuristics.rb:test_inc_by_heuristics should have SourcePawn moved out of the nil key and swapped to *.inc

Yup. 👍

Also, I found is that mfile.inc isn't SourcePawn. It's actually Pawn and seems to be for open.mp, a GTA: San Andreas mod based on ~API used~ the author (Y-Less) and commit it was added

If you're 💯 on this, then lets move it to Pawn.

Number of errors (39) is above the acceptable threshold (38)

Looks like the classifier cross-validation error count increased from that I think from these:

Pascal/GraphicConfiguration.inc BAD (SourcePawn)

dhooks.inc causes this for some reason

Pawn/fixed.inc BAD (SourcePawn)
Pawn/mfile.inc BAD (SourcePawn)

Is this a problem or a just a situation where the ACCEPTABLE_ERRORS gets bumped? It should only be decreased. :thinking:
https://github.com/github/linguist/blob/a3a3b8b330d296589f103d322303826a4c2bcfda/script/cross-validation#L3-L5

Is this a problem or a just a situation where the ACCEPTABLE_ERRORS gets bumped?

Yes, this is a problem as we're trying to improve the classifier. The increase in errors is an indication that these changes have caused something to now be incorrectly classified.
master has the following known misclassifications around Pawn and SourcePawn:
Pawn/fixed.inc BAD (SourcePawn)
SourcePawn/mfile.inc BAD (C++)

This branch has these:
Pascal/GraphicConfiguration.inc BAD (SourcePawn)  <--- This is new and definitely unwanted as it was correct before
Pawn/fixed.inc BAD (SourcePawn)
Pawn/mfile.inc BAD (SourcePawn)

I suspect this might be happening because of the amount of duplication of syntax in the large files you've added which appears to be swaying the classifier towards SourcePawn.

dhooks.inc causes this for some reason

If this is the case, then lets remove it. This should take us back down to the two known incorrect classifications which will improve if and when more diverse samples are added for Pawn in future.

dhooks.inc causes this for some reason

If this is the case, then lets remove it. This should take us back down to the two known incorrect classifications which will improve if and when more diverse samples are added for Pawn in future.

Alright, done for that.

Unrelated, it looks like the boo grammar has gone MIA. I'll see if I can fix that in a separate PR.

That got me too when I bootstrapped a fresh repo and had to keep alt-tabbing back to my terminal wondering why it was taking so long.


GCP labels - clean git_repo

Git repository paths may contain directories and subdirectories, so the git_repo tag must also be modified to match Google's regex limitations, eg:
Error: Error updating Secret "projects/project/secrets/thing": googleapi: Error 400: Invalid field "labels.git_repo"; value "foo/bar" does not conform to regular expression "[\p{Ll}\p{Lo}\p{N}_-]{0,63}"; character "/" at position 4 is not a non-uppercased letter (Unicode character class Ll or Lo), digit, hyphen, or underscore

This PR naiively builds on the structure of @nimrodkor previous MR.  Mostly untested - I'm not a Go developer - but this might work :D

GCP Label values also has a case constraint. It cannot contain uppercase characters, whereas repositories and filepaths can contain uppercase characters. Do we handle this anywhere?


move mfranczy to emeritus approvers

Signed-off-by: Marcin Franczyk<EMAIL_ADDRESS>
What this PR does / why we need it:
With new projects, it's hard to track changes in KubeVirt code, I should not be an approver anymore.
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #
Special notes for your reviewer:
Release note:

None

/cc @rmohr

/lgtm
/approve
too bad.


The project is outdated and cannot be compiled with modern vulkan libraries.

https://bugs.gentoo.org/938268
Basically it's continuation of the bug https://github.com/aejsmith/vkdevicechooser/issues/21
Meanwhile, if you are on Linux, use next:
MESA_VK_DEVICE_SELECT=list vulkaninfo
check what your GPUs are.
Then i.e. in Steam for a game set launch options:
MESA_VK_DEVICE_SELECT=0123:4567! %command%

Meanwhile, if you are on Linux, use next:
MESA_VK_DEVICE_SELECT=list vulkaninfo
check what your GPUs are.
Then i.e. in Steam for a game set launch options:
MESA_VK_DEVICE_SELECT=0123:4567! %command%

Thank you!
For those like me who might be confused why that's not working, on Arch Linux you need to also install vulkan-mesa-layers.


Undocumented config

Description
README.md show's:
FTP & FTPS Configuration Options
{
    "protocol": "ftp",
    "host": "example.com", // string - The hostname or IP address of the FTP server. Default: 'localhost'
    "port": 21, // integer - The port of the FTP server. Default: 21
    "user": "user", // string - Username for authentication. Default: 'anonymous'
    "pass": "pass", // string - Password for authentication. Default: 'anonymous@'
    "promptForPass": false, // boolean - Set to true for enable password dialog. This will prevent from using cleartext password in this config. Default: false
    "remote": "/",
    "secure": false, // mixed - Set to true for both control and data connection encryption, 'control' for control connection encryption only, or 'implicit' for implicitly encrypted control connection (this mode is deprecated in modern times, but usually uses port 990) Default: false
    "secureOptions": null, // object - Additional options to be passed to tls.connect(). Default: (null) see https://nodejs.org/api/tls.html#tls_tls_connect_options_callback
    "connTimeout": 10000, // integer - How long (in milliseconds) to wait for the control connection to be established. Default: 10000
    "pasvTimeout": 10000, // integer - How long (in milliseconds) to wait for a PASV data connection to be established. Default: 10000
    "keepalive": 10000, // integer - How often (in milliseconds) to send a 'dummy' (NOOP) command to keep the connection alive. Default: 10000\. If set to 0, keepalive is disabled.
    "watch":[ // array - Paths to files, directories, or glob patterns that are watched and when edited outside of the atom editor are uploaded. Default : []
        "dist/stylesheets/main.css", // reference from the root of the project.
        "dist/stylesheets/",
        "dist/stylesheets/*.css"
    ],
    "watchTimeout":500 // integer - The duration ( in milliseconds ) from when the file was last changed for the upload to begin.
}

However, generating an ftp/sftp file gets you this:
{
    "protocol": "sftp",
    "host": "example.com",
    "port": 22,
    "user": "user",
    "pass": "pass",
    "promptForPass": false,
    "remote": "/",
    "local": "",
    "agent": "",
    "privatekey": "",
    "passphrase": "",
    "hosthash": "",
    "ignorehost": true,
    "connTimeout": 10000,
    "keepalive": 10000,
    "keyboardInteractive": false,
    "keyboardInteractiveForPass": false,
    "remoteCommand": "",
    "remoteShell": "",
    "watch": [],
    "watchTimeout": 500
}

This includes the local option, that's undocumented in the README.md, it's unclear what it does.
Versions
remote-ftp 2.2.2
Additional Information
fix: explain in README.md what the options does.
"local": "" // explain here

After some testing I'm pretty sure that the local settings is just a way to set the project folder where you want the files to be stored on your local machine. If you just remove the setting remote-ftp has a way to tell where you might want the files. I'm guessing that's why you need to open a project folder in Atom. Hope this helps.

https://github.com/icetee/remote-ftp/issues/1265#issuecomment-486117603
I’ve tried to set it to a ‘src’ folder, that didn’t work.

#1265 (comment)
I’ve tried to set it to a ‘src’ folder, that didn’t work.

I think it might be the same as the 'remote' setting where you need to use absolute paths starting with '/'
I was having problems and I did that and it seems to be working now.

#1265 (comment)
I’ve tried to set it to a ‘src’ folder, that didn’t work.

I think it might be the same as the 'remote' setting where you need to use absolute paths starting with '/'
I was having problems and I did that and it seems to be working now.

Shouldn't "local": "./src" work then, since ./ is an 'absolute' path to the current directory?

#1265 (comment)
I’ve tried to set it to a ‘src’ folder, that didn’t work.

I think it might be the same as the 'remote' setting where you need to use absolute paths starting with '/'
I was having problems and I did that and it seems to be working now.

Shouldn't "local": "./src" work then, since ./ is an 'absolute' path to the current directory?

Maybe try it without the . (dot)


vagrant up - An error occurred during the signature verification

next branch, OS X El Capitan.
cassiopeia:baseimage-docker anton.zagorskii$ vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Importing base box 'phusion-open-ubuntu-14.04-amd64'...
==> default: Matching MAC address for NAT networking...
==> default: Setting the name of the VM: baseimage-docker_default_1473167742618_9037
==> default: Clearing any previously set forwarded ports...
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
    default: Adapter 1: nat
==> default: Forwarding ports...
    default: 22 (guest) => 2222 (host) (adapter 1)
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
    default: SSH address: <IP_ADDRESS>:2222
    default: SSH username: vagrant
    default: SSH auth method: private key
    default:
    default: Vagrant insecure key detected. Vagrant will automatically replace
    default: this with a newly generated keypair for better security.
    default:
    default: Inserting generated public key within guest...
    default: Removing insecure key from the guest if it's present...
    default: Key inserted! Disconnecting and reconnecting using new SSH key...
==> default: Machine booted and ready!
==> default: Checking for guest additions in VM...
    default: The guest additions on this VM do not match the installed version of
    default: VirtualBox! In most cases this is fine, but in rare cases it can
    default: prevent things such as shared folders from working properly. If you see
    default: shared folder errors, please make sure the guest additions within the
    default: virtual machine match the version of VirtualBox you have installed on
    default: your host and reload your VM.
    default:
    default: Guest Additions Version: 4.3.6
    default: VirtualBox Version: 5.1
==> default: Mounting shared folders...
    default: /vagrant => /Users/anton.zagorskii/pumpkin/baseimage-docker
    default: /vagrant/baseimage-docker => /Users/anton.zagorskii/pumpkin/baseimage-docker
==> default: Running provisioner: shell...
    default: Running: inline script
==> default: stdin: is not a tty
==> default: OK
==> default: W: An error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: http://apt.puppetlabs.com trusty Release: The following signatures were invalid: KEYEXPIRED<PHONE_NUMBER>
==> default:
==> default: W: Failed to fetch http://apt.puppetlabs.com/dists/trusty/Release
==> default:
==> default: W: Some index files failed to download. They have been ignored, or old ones used instead.

I do not have any experience with the Docker Vagrant provider, did you get this working?

As I haven't heard back from you, I will be closing this. Please let us know if the issue persists.


CASMPET-6323 and CASMINST-5988

Summary and Scope
This PR contains fixes for the following two issues:

CASMPET-6323 IUF abort taking a long time / hanging when pressing Ctrl+C
CASMINST-5988 BREAK/FIX: management-node-rollout breaks with "default" product containing jinja templates

Is this change backwards incompatible, backwards compatible, or a backwards compatible bugfix?
Yes
Issues and Related PRs
List and characterize relationship to Jira/Github issues and other pull requests. Be sure to list dependencies.

Resolves:

CASMPET-6323
CASMINST-5988

Change will also be needed in docs-csm, cray-nls, cray-nls-charts, csm

Testing
gamora, lemondrop
Test description:
How were the changes tested and success verified? If schema changes were part of this change, how were those handled in your upgrade/downgrade testing?
Adhoc testing
Risks and Mitigations
Are there known issues with these changes? Any other special considerations?
None
Pull Request Checklist

[x] Version number(s) incremented, if applicable
[x] Copyrights updated
[x] License file intact
[x] Target branch correct
[x] CHANGELOG.md updated
[x] Testing is appropriate and complete, if applicable
[x] HPC Product Announcement prepared, if applicable

/backport release/1.4


For /Filter entries containing Names, ignore the /DecodeParms entry if it contains an Array (issue 8895)

Fixes #8895.

/botio test

/botio-linux preview

/botio makeref

Thank you for fixing this!


[Snyk] Upgrade husky from 6.0.0 to 8.0.3

This PR was automatically created by Snyk using the credentials of a real user.Snyk has created this PR to upgrade husky from 6.0.0 to 8.0.3.
:information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.

Warning: This is a major version upgrade, and may be a breaking change.

The recommended version is 9 versions ahead of your current version.
The recommended version was released a month ago, on 2023-01-03.

Release notes

Package name: husky

8.0.3 - 2023-01-03
fix: add git not installed message #1208

8.0.2 - 2022-11-08
docs: remove deprecated npm set-script

8.0.1 - 2022-05-09
fix: use POSIX equality operator

8.0.0 - 2022-05-08What's Changed
Feats

feat: add husky - prefix to logged global error messages by @ joshbalfour in #1092
feat: show PATH when command not found to improve debuggability
feat: drop Node 12 support
feat: skip install if $HUSKY=0

Fixes

fix: hook script use /usr/bin/env sh instead of direct path of sh by @ skhaz in #1051
fix: actually set 'husky_skip_init' as readonly in ./husky.sh by @ hyperupcall in #1104
fix: force basename/dirname to treat $0 as an argument by @ mataha in #1132
fix: remove git.io links by @ renbaoshuo in #1136

Docs

docs: fix uninstall via npm by @ pddpd in #1033
docs: add dog emoji as favicon by @ jamiehaywood in #1095
docs: replace deprecated npx --no-install option with npx --no by @ sibiraj-s in #1070
docs: add pnpm installation by @ MohamadKh75 in #1139

Chore

chore: update workflows by @ tiziodcaio in #1125

7.0.4 - 2021-10-21No changes. Husky v7.0.3 was reverted, this version is the same as v7.0.2.

7.0.3 - 2021-10-217.0.3

7.0.2 - 2021-08-25Fix pre-commit hook in WebStorm (#1023)

7.0.1 - 2021-07-06
Fix gracefully fail if Git command is not found #1003 (same as in v6)

7.0.0 - 2021-07-01
Improve .husky/ directory structure. .husky/.gitignore is now unnecessary and can be removed.
Improve error output (shorter)
Update husky-init CLI
Update husky-4-to-7 CLI
Drop Node 10 support

Please help me develop and release OSS projects ❤ on GitHub Sponsors or Open Collective. Thank you for your support!

6.0.0 - 2021-03-29After being in early access for Open Source projects and Sponsors for a limited time, I'm happy to announce that husky 6 is MIT again and can be freely used in commercial projects! 🎉
Many thanks to the Open Source projects and Companies which have switched to/sponsored the new husky during this period!
OSS is my full-time job, please consider sponsoring the development of husky on GitHub sponsors or Open Collective. Thank you!
Breaking change

husky init has been moved to its own package (npx husky-init)

Added

Programmatically use husky: require('husky')
TypeScript definitions

Migrating from husky 4
Husky 6 contains breaking changes. If you're coming from v4, npm install husky@6 won't be enough.
Recommended: see husky-4-to-6 CLI to automatically migrate your config. There's also a dedicated section in the docs.
If you're curious why config has changed, you may be interested in reading:
https://blog.typicode.com/husky-git-hooks-javascript-config/
Also Husky 6 follows official npm and Yarn best practices regarding autoinstall. It's recommended to use prepare script instead (see usage in docs).

    from husky GitHub release notes

Commit messages

Package name: husky

3c0e08d 8.0.3
1ed3f9a fix: change message
500d450 fix: add git not installed error message (#1208)
2945907 chore(deps): bump minimatch from 3.0.4 to 3.1.2 (#1229)
9f6dac4 chore: remove stale bot
f6c2c06 chore: update package-lock.json
f862dc2 chore: update devDependencies
9efb720 8.0.2
573de60 docs: remove deprecated npm set-script
3db28d4 chore: increase daysUntilStale
51aeba5 chore: update devDependencies
9e6073d docs(readme):  fix minor command typo (#1197)
840c416 docs: add double-hyphen flag between npx and the command to run (#1164)
b6e4c92 docs: update deprecated npm command
47e96ec docs: README update (#1154)
e4e4575 chore: npx option --no-install replaced with --no -- due to deprecation (#1149)
c4207f2 8.0.1
90a69a2 fix: use POSIX equality operator
eff7a08 docs: v8 update
f5b5c33 chore: update version
3e0e15c feat: show PATH if command not found
356714b test: command not found message
21bc342 feat: skip install if $HUSKY=0
e9351c0 docs: add pnpm installation (#1139)

Compare

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.
For more information:
🧐 View latest project report
🛠 Adjust upgrade PR settings
🔕 Ignore this dependency or unsubscribe from future upgrade PRs

Coverage: 100.0%. Remained the same when pulling d25cf2b407feb29ecdb48a2f430515587fe6e847 on snyk-upgrade-13b8759fd35fc9f7d40b21ca37bb5183 into ceb141d33794383372c01535d6034d9df1899eff on main.


Default storage mechanism not working

I'm using oidc-client.js for authentication and various flows, such as renewing the token and logout for Azure B2C AD.
I have the below configuration:
const settings = {
    authority: 'https://test.abc.com/accounts-test.abc.com/b2c_1a_abcidnormalsignin/v2.0/.well-known/openid-configuration',
    loadUserInfo: false,
    redirect_uri: 'http://localhost:3000/signin-callback.html',
    response_type: 'code',
    client_id: 'd47b8cd9-1234-5678-c01de-a0a57ab7a22a',
    //add client id to get access token
    scope: 'openid offline_access d47b8cd9-1234-5678-c01de-a0a57ab7a22a',
     metadata: {
       issuer:"https://abcidb2ctest.b2clogin.com/7c8969d1-3d1c-460c-a32f-879d8941255f/v2.0/"
      ,authorization_endpoint:"https://test.abc.com/OAuth/oauth2/v2.0/authorize?p=b2c_1a_abcidnormalsignin"
      ,token_endpoint:"https://test.abc.com/OAuth/oauth2/v2.0/token?p=b2c_1a_abcidnormalsignin",
      end_session_endpoint:"https://test.abc.com/OAuth/Logout?p=b2c_1a_abcidnormalsignin"
      ,jwks_uri:"https://abcidb2ctest.b2clogin.com/accounts-test.abc.com/discovery/v2.0/keys?p=b2c_1a_abcidnormalsignin"
  },
  //despite below it still stores token in session storage
  stateStore: new WebStorageStateStore({ store: window.localStorage }),
  userStore:new WebStorageStateStore({ store: window.localStorage }),
  post_logout_redirect_uri:'http://localhost:3000'
} as UserManagerSettings;

this.userManager = new UserManager(settings);

Despite the fact that I have mentioned the localstorage as the default storage mechanism, it still considers sessionstorage.
Do I need to make any other changes to make it work?

You'd need to configure similar values in the signin-callback.html

@brockallen Thanks it is working after making changes in signin-callback.html.


Removed programs

What does "Removed programs" mean at "http://dashboard.loda-lang.org/grafana/"?

There is a continously running maintenance job running which validates all programs. Sometimes it finds errors in programs and removes them. That is the number that you see on the dashboard.


[hotfix] API key exposure

API key seems to be exposed here (at line 7 of prediction.py). Should be fixed.

Thank you for commenting, we removed the api-key and found that OpenAI automatically disables the key if it is leaked public.

https://platform.openai.com/api-keys


Add documentation of how we host Postgres databases on RDS

This documents my current understanding of how we want to host Postgres on RDS, apart from how we'll handle backups.
I'd like to keep this pull request open until we finish our current project of moving some databases to RDS, since we'll probably want to at least tweak this as we go, but what's here is open for comments at any time.

Aside from the above questions/comments, looks good to me :+1:

@dpoirier do you have time for the small comments on this to get addressed?

@ironfroggy I've updated this.

+1


ThemeProvider does not support in-browser modules for micro-frontends

When @material-ui/core or @mui/material is loaded as in-browser module and the ThemeProvider is imported from it, only components loaded as in-browser modules get the custom theme. While components loaded from npm fallback to material's default theme.

[x] The issue is present in the latest release.
[x] I have searched the issues of this repository and believe that this is not a duplicate.

Current Behavior 😯
This goes both ways: loading the ThemeProvider as in-browser modules colours other in-browser components but not components loaded from npm. And loading the ThemeProvider from npm colours other components from npm but not components loaded during browser runtime.
Expected Behavior 🤔
The custom theme gets always applied, no matter how the packages are imported.
Steps to Reproduce 🕹
https://github.com/PaulKujawa/bug-showcase-sspa-material-ui
Steps can be seen in the readme
Context 🔦
We use micro frontends, orchestrated with Single-SPA and importmaps. We want to share @material-ui/{core|lab} as well as our material-based components between apps to save bundle-size. But we noticed that we have no chance of proper theming as either the shared components or inline-components (components written in Apps) will get the wrong theme.
Your Environment 🌎

`npx @mui/envinfo`
I use Chrome.
   System:
    OS: macOS 11.3
  Binaries:
    Node: 16.9.0 - /usr/local/bin/node
    Yarn: Not Found
    npm: 7.21.1 - /usr/local/bin/npm
  Browsers:
    Chrome: 93.0.4577.82
    Edge: Not Found
    Firefox: 86.0.1
    Safari: 14.1

Thanks for the feedback.
This is an unfortunate feature of contexts. They need to be used from the same module. So you need to make sure that your micro frontends share the same ThemeProvider module.
We can't solve this problem without completely getting rid of all React.createContext usage.

For future reference: having the mui packages as a peerDependency in your components packages might do the trick.

I am not sure if we are aligned on what works and what does not.
We publish the 2nd level of material-ui as individual in-browser modules. So we have Button, Card, List, but also Styles. All micro frontends list these as externals and load them from the same source (CDN) linked in an importmap. And this works. A Button loaded during browser runtime receives the theme / React Context loaded from the ThemeProvider loaded during browser runtime, too. What does not receive the Theme are components loaded during compilation, loaded from npm.
I will do tests with React Proxy and in-browser modules to understand @eps1lon answer better, but it would be tragic for us if sharing material between micro frontends does not work at all.

I will do tests with React Proxy and in-browser modules to understand @eps1lon answer better, but it would be tragic for us if sharing material between micro frontends does not work at all.

It should work just as good or bad as any React context.


Update rus.po

add new lines

Hey, didn't see you in a while 😃

Hey, didn't see you in a while 😃


is there a way to scan only first word of a page?

Hello guys,
I am trying to identify page category by recognizing the only first word on a page, but the pages can have much more text so it is taking so much time. I just wanted to limit scanning to one word only. I have tried psm option but no luck there.

Please respect guidelines for posting issue: use tesseract user forum for asking questions/support.


SQL Script fix for Portal Information

Fixes #2521 by re-building the view for the PortalsDefaultLanguage.

@dnnsoftware/tag I believe this is the right way to fix this, it is a breaking change though for anyone that has already tested a 9.3.0 upgrade, but I believe that would be the case no matter what.  If I need to change let me know

I doubt that this is the proper fix. it looks like a data call in code behind is not matching columns properly, SQL is always matching by column names.

Well this would have been broken only on 9.3 and there was no production release of 9.3, so I think this is good in my opinion.

Sebastian if the order changes of an underlying table a view built with Select * can get out of sync.
There are two fixes.

Refresh the view
Recreate the view

Given the prior processes in DNN I used option 2, since that is how we do it.
You can recreate this issue easily to confirm. We have also tested on multiple 9.3.0 builds that this resolves

@mitchelsellers
instead of recreating the view, you could exec sp_refreshsqlmodule '{databaseOwner}[{objectQualifier}vw_PortalsDefaultLanguage]', however, it would be better to generally avoid using "SELECT *" in views, see https://sqlblog.org/2009/10/10/bad-habits-to-kick-using-select-omitting-the-column-list, https://stackoverflow.com/questions/128412/sql-query-select-from-view-or-select-col1-col2-coln-from-view etc.

@sleupold Yes, looking back at the history, execution of sp_refreshsqlmodule is not something we have done, and if an error occurs we wouldn't have a handle.  Thus why I went the other route.
I left it as SELECT * for simplicity, if you want to update this PR to list all of the columns, go ahead.  But I'm looking to keep the changes as minimal as possible for review etc at this point.
I'd like in 9.4, or 10.0 to review & remove all SELECT * usage across the board as a dedicated effort, etc.

Cool, can someone merge then so we have a working nightly build.

Given that this already had the needed approvals, from not myself, I merged this change


Hi every one, don't use
https://github.com/floatinghotpot/cordova-plugin-facebookads
or
https://github.com/floatinghotpot/cordova-admob-pro
These plugins includes a precompiled .jar for "license system check" that share with the plugin author 30% of you traffic.
If you sniff the http traffic of your app with the plugin installed, you'll notice an http request to http://adlic.rjfun.com/adlic that returns a response with a "r" parameters set to "30". This means that you are sharing the 30% of you traffic.
I know that the license says the if you don't pay the 20$ license, you are agree with sharing the 2% of you traffic.

If use in commercial project, please get a license, or, you have monetized more than $1000 using this plugin, you are also required to: either get a commercial license ($20), or, no need pay but share 2% Ad traffic, read the License Agreement for details. As a commercial customer, you will be supported with high priority, via private email or even Skype chat.

BUT 30% is NOT 2%!!!
I found out that a guy on ionic forum had exactly the same problem. The plugin author remove his issue and then removed the issue tab from admob pro.
Here's the topic:
https://forum.ionicframework.com/t/don-t-use-admob-pro-plugin-steal-30/90245
And here's the pdf with the emails that he wrote to the plugin author:
https://drive.google.com/file/d/0B5vtpya8P4b-NUZTdUhBVkFlU0E/view?usp=sharing
I tried to write 3/4 emails to the plugin author 3 weeks ago asking for explainations, but still got no answer.
I believe this is very incorrect, a real scam.

Hey @Be4t5 thanks for sharing.
This plugin is awesome and easy to configure in cordova from other plugins, that's why many developer used it.
One thing, have you any alternative plugins that you trust?

Hey @Be4t5 thanks for sharing.
This plugin is awesome and easy to configure in cordova from other plugins, that's why many developer used it.
One thing, have you any alternative plugins that you can trust?

Yes, now I'm using this plugin; fully open source and free. https://admob-plus.github.io/

@Be4t5 thanks for your opinion. I also decided to use admob-plus.
One more thing, this developer also serve cordova-nativeaudio plugin that i already used my projects. And there is another issue for phone state access "https://github.com/floatinghotpot/cordova-plugin-nativeaudio/issues/112".


Allow workspaces/crates to limit support to an explicit set of targets

Problem
(I looked for existing issues that cover something like this, since it feels like this must have come up before, let me know if this is a duplicate of something else.)
Motivation
A Cargo.lock file currently tracks the dependency graph for a crate across all possible compilation targets, including target-conditional dependencies. This means that a Cargo.lock file (and related commands such as cargo update) must cover dependencies across targets that are unlikely to be used for a given project, creating substantial cognitive substantial overhead as well as likely different kinds of computational overhead.
Examples
The windows-rs crate is now split in a bunch of different crates, so that any workspace pulling in windows platform support might end up tracking the versions of all of these crates:

windows_aarch64_gnullvm
windows_aarch64_msvc
windows_i686_gnu
windows_i686_msvc
windows_x86_64_gnu
windows_x86_64_gnullvm
windows_x86_64_msvc

Windows is a pretty widespread and mature platform. But any workspace depending on dirs-next pulls in redox_users, which is arguably not a widespread platform today. Similarly, iana-time-zone is a chrono dependency providing platform support, and one of the platforms it supports is haiku for which it pulls in the cxx and cxx-build crates, which in turn depend on cxxbridge-flags, cxxbridge-macros and link-cplusplus.
Proposed Solution
Provide a supported-targets table in a crate or workspace manifest that constrains the supported platforms to an explicit set, analogous to the support that cargo-deny has today:
supported-targets = [
    { triple = "x86_64-apple-darwin" },
    { triple = "x86_64-unknown-linux-musl" },
    { triple = "x86_64-unknown-linux-gnu" },
]

This will allow Cargo to avoid including dependencies exclusive to other platforms in the Cargo.lock file and any dependency resolution considerations. In turn, Cargo will error out when something does try to build the workspace or crate with an unsupported target.
Notes
I would be willing to implement this feature if a similarly scoped feature is accepted by the Cargo team. I am aware that the Cargo team has limited review capacity, but I think this is a relatively small feature with a well-targeted solution.

Possibly related: #10801
Not that if affects the point of this issue but the windows-rs issue may be solved by the (soon to be stabilized) raw-dylib feature. Unfortunately the feature is not yet available for windows_i686_gnu and windows_i686_msvc targets but that will hopefully change in the future.

I am enthusiastic for this idea. Informally Cargo team members have discussed this many times, but no one has taken the time to see it through. The beautiful part of this idea is that the existing invariant is that "the lock file specifies how a bill should work for any system". With this change the invariant is still true, it's just that instead of specifying what dependencies to use for Windows it specifies to give an error for those systems.
Off the top of my head I can see some issues that still need to be designed:

Does this work the same for a lib as it does for a bin?
How does this work with artifact dependencies?
Should it be an opt in list or an opt out list?
Does there need to be some way to override the configuration? (The maintainers say this platform is unsupported, but I want to give it a try and see if it's working.)
Should this be config full target triples, arbitrary CFG's, or something in the middle. It would be nice to say not windows, without either having to specify all of the flavors of windows not supported, or all of the flavors of Linux that are supported.
How does this work for custom targets?
What amount of logic is applied to combine the restrictions with target specific dependencies? Obviously some the entire point is to exclude winapi from the tree. But there are hazards involved in making things too smart, does only supporting M1 architecture imply Mac OS? On one hand that's the only operating system that supports that target, on the other hand that could change at anytime.
How does this interact with resolution? If I say that I only support Linux and I unconditionally depend on winapi do I resolve to the most recent version and get a build error Or do I resolve to some older version that is not marked windows only?

It could be that if I thought about it more deeply each of these would have a simple correct answer. But when we're done documenting why each has an answer, we've written an RFC length document at that point. So I think an RFC may be needed.

Another thing to consider is what should happen in a workspace if one member specifies supported_targets but the rest of the workspace does not. Should it throw an error when building the whole workspace on an "unsupported" platform, or could it be ignored since it is a local crate?

There might be an interaction with the vendor command as well:
https://github.com/coreos/cargo-vendor-filterer

Before finding this issue discussion, I've been exploring the implementation of a new custom rust utility that scans a crate's project source folder and makes a best effort attempt to determines which platforms the crate's implementer planned it to run on (those it was targeted for). In my brief evaluation of the current status quo, it appears such a tool might not be fully comprehensive, and would almost certainly involve the use of some interesting heuristics (TBD). I hope that a potential solution which addresses this Github issue would make this software utility possible, and hopefully fully deterministic and comprehensive. While clearly beyond the scope of this issue, if the specific platforms a given crate is intended to be targeted/run on is known, then this would make it feasible to also (optionally) have a release document provided for each software release of the crate that indicates the actual targets that the new software release was actually tested with.

This appears to be a duplicate of #6179, closing in favor of that.  If there is something I missed that we should keep this open separately, let us know!


alfred-download fails - URL not publicly accessible

The alfred-download fails with a 409 when it downloads the first file JSON_FILES_URL. Looks like an issue with the file no longer being publicly-accessible rather than an issue with the script:
> wget https://aka.ms/alfworld/json_2.1.1_json.zip
--2023-06-09 23:24:35--  https://aka.ms/alfworld/json_2.1.1_json.zip
Resolving aka.ms (aka.ms)... <IP_ADDRESS>
Connecting to aka.ms (aka.ms)|<IP_ADDRESS>|:443... connected.
HTTP request sent, awaiting response... 301 Moved Permanently
Location: https://textworld.blob.core.windows.net/$web/datasets/tw-alfred/json_2.1.1_json.zip [following]
--2023-06-09 23:24:36--  https://textworld.blob.core.windows.net/$web/datasets/tw-alfred/json_2.1.1_json.zip
Resolving textworld.blob.core.windows.net (textworld.blob.core.windows.net)... <IP_ADDRESS>
Connecting to textworld.blob.core.windows.net (textworld.blob.core.windows.net)|<IP_ADDRESS>|:443... connected.
HTTP request sent, awaiting response... 409 Public access is not permitted on this storage account.
2023-06-09 23:24:36 ERROR 409: Public access is not permitted on this storage account..

I have the same issue.
Error: Public access is not permitted on this storage account.

@zhempstead and @RishiHazra, I have moved those files to Github release files:
JSON_FILES_URL = "https://github.com/alfworld/alfworld/releases/download/0.2.2/json_2.1.1_json.zip"
PDDL_FILES_URL = "https://github.com/alfworld/alfworld/releases/download/0.2.2/json_2.1.1_pddl.zip"
TW_PDDL_FILES_URL = "https://github.com/alfworld/alfworld/releases/download/0.2.2/json_2.1.1_tw-pddl.zip"

This should be permanent.


Paint mode off indication

Would it be possible to add some indication for when no paint mode is active.
Either an "off" button or have all paint mode buttons toggled to off.
It's rather unintuitive to switch into edit mode and see the build button highlighted but not be in build mode.

Definitely something I've thought about before. I'm working around the limitations of Blender's UI system so it may take a while to figure out a better system.


Different name for "Account" object breaks user preferences

When installing KTL and trying to set up saved user preferences, nothing gets saved to the Knack database. I believe this is the case because in our instance of Knack, the Account object is actually named "Users", and the primary KTL.js file refers to it by the name "Accounts" specifically.

Switching the object's name solves the issue.

Hi Steve,
I've modified the KTL structure so that it allows customizing the Accounts table to match your app's.  With this code below, you don't have to change your app to match KTL's requirements, but the other way around: KTL adapts to your app, just like any respectful toolkit should.
Add this to your Javascript pane in the Builder:
window.ktlReady = function () {
    //Put all your KTL-relatd code here: setup, callbacks, etc.

    ktl.iFrameWnd.setCfg({
        accountsObjName: 'Users' //Or any table name you have.
    });
}

Thanks,
Norm


User facing prover session

The idea of this PR is to add the most commonly used workflow to the outer facing powdr crate so that users have quick access to the prover functionalities for Rust programs.
The changes to powdr/src/lib.rs wrap those common functionalities (compiling Rust to powdr-asm, compiling powdr-asm to PIL, witgen, proof generation with continuations) into simple function calls and hide the Pipeline type a bit by using the new Session trait.
The end result is that a user can do the following:
use powdr::Session;
use std::path::Path;

fn main() {
    env_logger::init();

    let some_data = vec![1, 2, 3, 4, 5];

    let out_path = Path::new("powdr-target");
    let mut session = Session::new("./guest", out_path).write(1, &some_data);

    // Dry run to test execution
    session.run();

    // Compute the proof
    session.prove();
}

TODO:

[x] Decide on the abstraction
[x] Try to remove some clones from the continuations setup
[x] Make sure the prove function re-uses artifacts if available (like setup), and re-runs if needed
[x] Should we have a separate setup call? I feel like it should be automatic with the item above.

I think this is ready as is. We still need to:

Make sure to remove the keys if the PIL file changes
Make proving key deserialization faster

but I think it's fine to do in a different PR

@Schaeff fixed all I think


RabbitManagementTemplate for CloudFoundry [Backport]

Add RabbitManagementTemplate(String uri) ctor to accept it with the form http://guest:guest@localhost:15672/api/, together with UserInfo

Merged as https://github.com/spring-projects/spring-amqp/commit/5f593441ddf35b6c205edf3cef47f4b35958d5dc


Pinned Actor = Screen-Black-Out (WHY?)

Is your feature request related to a problem? Please describe.
Not really a problem. More a really big 'work-flow' issue.
Describe the solution you'd like
When editing a script like "Move Position" on an actor that is pinned to screen, you can't visualize where your location/position will be because the whole dang screen is blacked out (except for the standard pinned actor screen area - top left, as always...)
Describe alternatives you've considered
Instead of totally blacking out the area that is "out of bounce". Make the outside 50% visible? Maybe even 75%? Maybe even have a little pull down menu where you can select the transparency of that layer?
Additional context
This is what a pinned actor's frame work, should look like like in the GBS UI:

Found it! it's not related to the other helpers as i initially thought, just this function it seems.
gbstudio\src\components\world\Actor.css line 29
https://github.com/chrismaltby/gb-studio/blob/9010620ac511107e142d98b1558678d6384e2de6/src/components/world/Actor.css#L25-L30
could be changed to
outline: 2000px solid rgba(0, 0, 0, 0.5);

An alternative solution would be to only show the overlay when the pinned actor is dragged around, as the overlay is only really useful for that.


Heap Sort

Please assign me to this. I have written many algorithms both in Java and C++. I do leetcode regularly and am rated 1889 on it.
I will add easy to understand Heap Sort algorithm with comments.

I am willing to work on this.

please assign me this

Please assign me this problem


Update util.c

Updated error codes to support CloudFlare custom error codes.

This has been merged. Thanks!


Documenting vite.ssr.noExternal

Vite externalizes SSR dependencies by default: https://vitejs.dev/guide/ssr.html#ssr-externals
A lot of npm packages are not ESM-ready so it leads to errors when using ESM imports.
This can be fixed by forcing those packages to be transpiled by vite using vite.ssr.noExternal in astro.config
vite: {
  ssr: {
    noExternal: ['package-name']
  }
}

Since it's not obvious how to arrive at this solution (and vite's docs are a bit sparse), maybe this should be added somewhere in the astro docs, e.g. the troubleshooting section?
Also there are probably other cases for using vite.ssr.noExternal that I can't think of right now.

Looks like we name-drop it on the styling page, but deserves its own spot somewhere as there are other use cases

Docs team discussed; the remaining use case to document is when using a non-ESM package. We can note this in Troubleshooting and link from our static assets page

💡 Idea
How about we link from our “NPM Packages” section in the imports guide to the config reference section about Vite? We could then beef up the config reference to add some of the helpful context from @mayank99 and add a noExternal example.

@mayank99 Would you be interested in making a PR for this, by any chance?

@sarah11918 Done! https://github.com/withastro/docs/pull/2254
Frankly, I do not fully understand what Vite does and what Astro does, so it would help if someone who better understands the vite externalization sorcery can review the PR.

Thank you, @mayank99 🙌
we'll let some Astro wizards handle the sorcery part. 🧙♂ This is so helpful!


EclipseKeys.eclipseOutput isn't used for play generated routes

Using bin as the default output directory for eclipse generated class files can be problematic for projects that use that directory for scripts or other purposes.  But if I override the eclipseOutput variable by adding the following line to build.sbt it isn't used as the target for Play Framework generated route files:
EclipseKeys.eclipseOutput in ThisBuild := Some(".target/bin")

To reproduce this in a Play Framework:

Add the line above to build.sbt.
Re-create the eclipse settings for example with: sbt 'eclipse with-source=true skip-parents=false'
Open your project in Eclipse and clean the project to force a build
Observe that there are files in both bin/ and .target/bin such as bin/Routes.class and .target/bin/routes
The .classpath has entries to store some but not all objects in the dir (note in particular the last entry):

  <classpathentry output=".target/bin" kind="src" path="app-2.11"/>
  <classpathentry output=".target/bin" kind="src" path="app"/>
  <classpathentry output=".target/bin" kind="src" path="conf"/>
  <classpathentry output=".target/bin" kind="src" path="test/resources"/>
  <classpathentry output=".target/bin" kind="src" path="test-2.11"/>
  <classpathentry excluding="resources/" output=".target/bin" kind="src" path="test"/>
  <classpathentry kind="output" path="bin"/>

Glancing at the source, it appears that settings are using createSrc here and here but that the createSrc implementation does not use the setting.  Should it use the eclipseOutput function to set this?
Empirically, if I manually edit the last entry from above to be the following, the source is all put in the proper place:
  <classpathentry kind="output" path=".target/bin"/>

It looks to my eye as though this line is where all the uses of "bin" could properly be set to the eclipseOutput setting.
Separately, not everyone on our team uses Eclipse, so it would be nice to be able to set this default in the global plugin settings without having to alter all the build.sbt files with tooling.  Is there some way to do this?

Looks like fixing this bug requires a substantial investment in learning scalaz.  Anyone familiar see how to apply the eclipseOutput setting to the kind=output directory path?


Add Option to Prefer Cache Image (if exists) over Placeholder

Apologies if this already exists, but I couldn't find a reference anywhere in the docs, and I'm unclear as to the order of ops when it comes to loading cached items vs. the placeholder images. As far as I'm aware, calling the following:
        imageView.pin_setImage(
            from: site.image,
            placeholderImage: UIImage(named: "Custom Placeholder")
        )

will cause the library to load the placeholder image and attempt to make a network call. If the call succeeds it will use that item, otherwise it falls back to the cache.
Is there any way to configure the PINRemoteImageManager or the PINCache to always check the cache first and load any image found there before going to the network? This would greatly reduce the number of times that my placeholder image is shown.
I can reach into the cache myself, but I figure I'd check if its natively supported before doing so.

@Sonictherocketman It does check the cache before hitting the network, but you're right, it doesn't check it before setting the placeholder image.


Configuration Management

Software configuration management plan which follows IEEE 828-2005 standard and needs to have the following sections:
Introduction – Describes the plan’s purpose, scope of application, key terms, and references.
SCM Management (Who?) – Identifies the responsibilities and authorities for managing and accomplishing the planned SCM activities.
SCM Activities (What?) – Identifies all activities to be performed in applying to the project.
SCM Schedule (When?) – Establishes required coordination of SCM activities with other activities in the project.
SCM Resources (How?) – Identifies tools and physical and human resources required for the execution of the plan.
SCM Plan Maintenance – Identifies how the Plan will be kept current while in effect.
For each section or subsection that is missing or is incorrect, deduct -2 points.

done


flyway configuration example - minor change suggested

Suggested for ease of install - add the following to the flyway example configuration:

Change user to cube_admin
Change password to cube_admin
Add flyway.schemas=datacube
the flyway locations also implies an installation location for flyway - maybe replace with /database/sql

Renamed agdc-default.conf to agdc-example.conf, which more accurately reflects it's role.
Changed default user to cube_admin, and added comments to clarify when to use admin vs user.
Made default schemas consistent between Flyway conf and datacube.conf

Setting the flyway location to '/database/sql' would imply an even stronger forced locationo, wouldn't it? Not to mention forced OS. Currently it's a relative path, so if you unzip Flyway into the database folder, and name it flyway, it should "just work".


docs(Ecto.Repo): Inform that measurements may, but don't have to, be present

As described in https://github.com/elixir-ecto/ecto/issues/3405 , measurements like :idle_time may be nil. Documentation currently doesn't mention it. It gives impression that it those measurements are always present (that they are never nil).

:green_heart: :blue_heart: :purple_heart: :yellow_heart: :heart:


Ruby 2.3.1 build issues on Mac OS X El Capitan 10.11.6

I am getting an odd error when building 2.3.1. I get one of two errors:
BUILD FAILED (OS X 10.11.6 using ruby-build 20160602)

Inspect or clean up the working tree at /var/folders/_y/qc89fk7n3m1f1p5pt8kpsgvdv009dp/T/ruby-build.20160909104415.25429
Results logged to /var/folders/_y/qc89fk7n3m1f1p5pt8kpsgvdv009dp/T/ruby-build.20160909104415.25429.log

Last 10 log lines:
compiling vm_backtrace.c
compiling vm_trace.c
compiling thread.c
compiling cont.c
compiling ./missing/explicit_bzero.c
compiling ./missing/setproctitle.c
compiling dmyenc.c
make: ./config.status: Permission denied
make: *** [ruby-runner.c] Error 1
make: *** Waiting for unfinished jobs....

or
BUILD FAILED (OS X 10.11.6 using ruby-build 20160602)

Inspect or clean up the working tree at /var/folders/_y/qc89fk7n3m1f1p5pt8kpsgvdv009dp/T/ruby-build.20160909110514.33878
Results logged to /var/folders/_y/qc89fk7n3m1f1p5pt8kpsgvdv009dp/T/ruby-build.20160909110514.33878.log

Last 10 log lines:
compiling enc/unicode.c
compiling enc/utf_8.c
compiling enc/trans/newline.c
linking miniruby
generating encdb.h
make: ./miniruby: Permission denied
make: ./miniruby: Permission denied
make: *** [.rbconfig.time] Error 1
make: *** Waiting for unfinished jobs....
make: *** [encdb.h] Error 1

I have checked and there is nothing strange about the perms of these files. Perhaps antivirus or something like that is the culprit?
However if I cd /var/folders/_y/qc89fk7n3m1f1p5pt8kpsgvdv009dp/T/ruby-build.20160909110514.33878/ruby-2.3.1 and run make install it seems to install it successfully to ~/.rbenv/versions/
Any ideas or can I provide more information? Does installing ruby 2.3.1 this way cause any problems? make test also passed.

I'm getting different errors in a similar environment.
❯ rbenv install 2.3.1                                                       0 < 16:24:46
Downloading ruby-2.3.1.tar.bz2...
-> https://cache.ruby-lang.org/pub/ruby/2.3/ruby-2.3.1.tar.bz2
Installing ruby-2.3.1...

BUILD FAILED (OS X 10.11.6 using ruby-build 20160602)

Inspect or clean up the working tree at /var/folders/lj/kndx6mlx3flcd0gl8xp7__680000gn/T/ruby-build.20160914162742.65586
Results logged to /var/folders/lj/kndx6mlx3flcd0gl8xp7__680000gn/T/ruby-build.20160914162742.65586.log

Last 10 log lines:
  Referenced from: /private/var/folders/lj/kndx6mlx3flcd0gl8xp7__680000gn/T/ruby-build.20160914162742.65586/ruby-2.3.1/./miniruby (which was built for Mac OS X 10.12)
  Expected in: /usr/lib/libSystem.B.dylib

dyld: Symbol not found: _clock_gettime
  Referenced from: /private/var/folders/lj/kndx6mlx3flcd0gl8xp7__680000gn/T/ruby-build.20160914162742.65586/ruby-2.3.1/./miniruby (which was built for Mac OS X 10.12)
  Expected in: /usr/lib/libSystem.B.dylib

make: *** [encdb.h] Trace/BPT trap: 5
make: *** Waiting for unfinished jobs....
make: *** [.rbconfig.time] Trace/BPT trap: 5

Puzzled by the references to built for Mac OS X 10.12 which doesn't officially come out for a week or so. I'm running 10.11.6

I hade the second problem described here, probably because Xcode was upgraded. Solved by running
xcode-select --install

@stenlarsson nailed it. Thanks!
Seems that installing Xcode on a new machine doesn't automatically install the command line tools. Could have sworn that used to be the case. Or at least they would prompt you to.

@pc-mreeves Might that be the cause of your problems as well?

It could definitely be related. However, IIRC I did not need to run that command because I ran the homebrew install first which installs the command line tools:
https://raw.githubusercontent.com/Homebrew/install/master/install
If I try to run it again I get this:
xcode-select: error: command line tools are already installed, use "Software Update" to install updates
I'll update and see if that fixes the issue... (after 3.44 gigs (!!!) downloads and installs...)

@pc-mreeves Did the App Store download fix the problem for you?

Unfortunately no... As I mentioned I had manually run make install on 2.3.1 so I didn't want to re-install that. So I tested by installing 2.2.5 and got the same error "make: ./miniruby: Permission denied". I suspect it might be Sophos antivirus or some other random culprit.
I can still cd to the directory and run make install and then it works.

@pc-mreeves Thank you for the reply!
May I ask: when you say, "I can still cd to the directory and run make install and then it works." which directory are you referring to?

When the rbenv install 2.2.1 -v command fails it says something like (note this is a different error though):
/var/folders/_y/qc89fk7n3m1f1p5pt8kpsgvdv009dp/T/ruby-build.20161003102300.18142 /
Downloading ruby-2.2.1.tar.bz2...
-> https://cache.ruby-lang.org/pub/ruby/2.2/ruby-2.2.1.tar.bz2
/usr/local/bin/ruby-build: line 382: ./bin/rm: No such file or directory

BUILD FAILED (OS X 10.11.6 using ruby-build 20160602)

Inspect or clean up the working tree at /var/folders/_y/qc89fk7n3m1f1p5pt8kpsgvdv009dp/T/ruby-build.20161003102300.18142
Results logged to /var/folders/_y/qc89fk7n3m1f1p5pt8kpsgvdv009dp/T/ruby-build.20161003102300.18142.log

If I cd to /var/folders/_y/qc89fk7n3m1f1p5pt8kpsgvdv009dp/T/ruby-build.20161003102300.18142 I can run make install and it will complete successfully.

Confirmed -- I got the same output re: miniruby permissions, and a make install solved it. Thanks for documenting this.
I'll also note my ruby is 2.3.1. Apparently this problem occurs on multiple versions of ruby. Thank you for documenting a workaround.

@pc-mreeves thank you for your suggestion to cd into the working tree ie. /var/folders/jj/wc_0mglj53x4rlnqxl9yzkk467jj82/T/ruby-build.20161023213421.54245 and then run make install  after i did this ruby 2.3.1 successfully built!   Then to start using the latest version I had to write rbenv global 2.3.1 to my terminal.

It seem for 2.3.1, under the working tree, there is another folder called ruby-2.3.1, needs to go there and then make install to install the ruby 2.3.1

I'm getting this when make install..
JM:ruby-build.20161117072715.65539 jm$ make install
make: *** No rule to make target `install'.  Stop.
JM:ruby-build.20161117072715.65539 jm$

I got the same error when I was trying to install ruby 2.4.0 on OSX Yosemite 10.10.5.
Why do I have to append an sudo before rbenv install 2.4.0? I thought rbenv is installing everything into my ~/.rbenv, isn't that the truth?
I think prefixing install command with sudo defeat the purpose of having rbenv in home folder.

Closing due to staleness. If there is more recent information, steps to reproduce, workarounds, please open a new issue! 🙇

Our team still has this issue.
ruby-build: use openssl from homebrew
Downloading ruby-2.6.1.tar.bz2...
-> https://cache.ruby-lang.org/pub/ruby/2.6/ruby-2.6.1.tar.bz2
Installing ruby-2.6.1...
ruby-build: use readline from homebrew

BUILD FAILED (OS X 10.14.3 using ruby-build 20190130)

Inspect or clean up the working tree at /var/folders/fj/wd8pp7d54rj2gmklzybhx0_r78033x/T/ruby-build.20190307074938.84367
Results logged to /var/folders/fj/wd8pp7d54rj2gmklzybhx0_r78033x/T/ruby-build.20190307074938.84367.log

Last 10 log lines:
Target: x86_64-apple-darwin18.2.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
compiling ./main.c
compiling dmydln.c
make: ./tool/darwin-cc: Permission denied
make: ./tool/darwin-cc: Permission denied
make: *** [main.o] Error 1
make: *** Waiting for unfinished jobs....
make: *** [dmydln.o] Error 1

In my particular case, the machine is new install of MacOS (vs upgraded) with:

MacOS 10.14.3 (Mojave)
Homebrew 2.0.3
Xcode 10.1
ruby-build 20190130

Workaround to cd /var/folders/.../ruby-2.6.1 and run make install from original post still works.
What can we do to help troubleshoot and find resolution?

I had the same problem and was able to finally solve it (I was trying to install using rbenv but also rvm was failing for me with the same error). Basically my problem was with MacPorts, I had to upgrade macports (by reinstalling it) and then port selfupdate, port upgrade outdated and found the issue when this failed for gcc, then I've run port uninstall obsolete, once I did that, rbenv worked like a charm

July 2019, this still happens.... workaround... cd into the folder of the build and make install

This is still a problem. I don't compile stuff very often so this was an all-morning struggle.
To provide some specifics for others in this situation:
I was patching 2.4.2 ruby so that ruby-prof could dump memory.

https://github.com/skaes/rvm-patchsets

After downloading the patches, this was the command that failed with the permission issue:
cat *.patch | rbenv install --patch -f 2.4.2
error:
Inspect or clean up the working tree at /var/folders/99/8h26v_fs6d76rfhsyxkj89hw7807y2/T/ruby-build.20190830111832.57168
Results logged to /var/folders/99/8h26v_fs6d76rfhsyxkj89hw7807y2/T/ruby-build.20190830111832.57168.log

Last 10 log lines:
...
make: ./config.status: Permission denied

The file it will fail on with permissions can vary but this was my fix:
cd
cd .rbenv/versions/
mkdir 2.4.2
mkdir 2.4.2/lib
cd /var/folders/99/8h26v_fs6d76rfhsyxkj89hw7807y2/T/ruby-build.20190830111832.57168/ruby-2.4.2
make install

make install works - but if I do that it does not link to homebrew's openSSL. How do we make sure make install uses homebrew's openSSL

Same problem here on MacOS 10.15.1. However there were some tricks for asdf:
I solved the problem doing the cd plus make install. However, I am using asdf to manage my environment, and I needed to do a few things to make asdf work properly.
Before running make install, ensure that the following folders and links (change the version) are created:
mkdir -p ~/.asdf/installs/ruby/2.5.6/bin
mkdir -p ~/.asdf/installs/ruby/2.5.6/lib
mkdir -p ~/.asdf/installs/ruby/2.5.6/include
ln -s /var/folders/path/to/ruby-build/openssl-1.1.1b ~/.asdf/installs/ruby/2.5.6/openssl

Now you can run make install. After the installation completes, set the ruby version in asdf. I needed to asdf reshim in order to asdf to be able to see it.

Same issue on MacOS 11. cd into working directory and make install fixes it.

Dec. 2019 and still happening!

Finally Got it working !!
Go to .rvm/src/ruby-x.x.x and run make install

Same issue on Mac OS Monterey 12.2.1, and I fixed navigating to the temp folder and running make install


Worked fine for ESP8266 but failed for ESP32

I created a new docker volume then:
docker run --rm -ti -v /volume1/docker/esp32/:/opt marcelstoer/nodemcu-build bash
cd /opt
git clone --recurse-submodules https://github.com/nodemcu/nodemcu-firmware.git
cd nodemcu-firmware
git checkout dev-esp32
but it aborts with a listing of all the app/include/ files that will be overwritten.

See https://github.com/marcelstoer/docker-nodemcu-build#support for user support -> closing
Just scanned this briefly but isn't your sequence of commands a bit odd?


[WIP] Close issue as archived/resolved/merged

replace #23522
close #22793
Screenshot
close issue dropdown & button:

select duplicate issue dialog:

the comment of "close as duplicate":

Run make lint-js-fix to fix the lint issues.

There are still problem which I can't understand, for example, why you need a form in duplicate-issue-modal and why it should be submitted. If I understand correctly, you just want to choose an issue and pass the ID to the "comment form".
So I do not know how to review, sorry

If I understand correctly, you just want to choose an issue and pass the ID to the "comment form".

I have removed the form in the duplicate-issue-modal and trigger the form submit manually after clicking confirm .

@techknowlogick please tell me if the functionality of this PR now deviates f.rom what is expected in the issue. If it does, i will keep fixing.

Some tests for new functionality would be good.

If merged, we have to extend the api type also, update the go-sdk and add it to the migrator

@sillyguodong a couple of notes:

when closing as duplicate, etc.. and a comment is made "#X is closed as dupe of #Y", could you also ensure that the linked issue also has a message linking back?
the "close as x,y,z" dropdown still shows when the issue is closed.

I'm going to make some changes to the UI.
After clicking "close as duplicate" in the dropdown, the dialog of "select duplicate issue" will display.
And after clicking "confirm" in dialog, the dialog will hidden, and no submit form any more. the text of the close button will changed to "close as duplicate #{issue_id}".

Is is really need? On GitHub I usually comment "Duplicate of #1234" and close as "Not planned" and I think that is sufficient as well and we woudn't need extra UI. See #25867 for an example.

@silverwind  Since markdown editor haven't  implemented # search function, and the keyword of "Duplicate of" also needs to be configurable to support multiple languages. It needs more work. So I think maybe dialog could be a temporary solution. what do you think about?

I'm going to simplify this PR and just keep the functionality of "close as archived/resolved/stale".
And I will create a new PR to complete the functionality of "close as duplicate".

I will take a look and test it

Well, TBH, I think there are still many problems ....

Is the changed code initIssueSearchDropdown  related to this PR? I don't see how it works
Forn closed issue, the dropdown menu still exists? Then choose "Close as xxx", a no-op?
UI misalignment

I haven't done a full test, just a quick look, I guess there might be more problems .....

@wxiaoguang for 2 that is what I mentioned in my feedback above, but in exploring how github does it, they have the dropdown show even for closed items to change the closed status. So I think it is ok if we keep it this way.

@wxiaoguang for 2 that is what I mentioned in my feedback above, but in exploring how github does it, they have the dropdown show even for closed items to change the closed status. So I think it is ok if we keep it this way.

No, that's different. GitHub's "close" can re-mark the close state as another again. But, this PR's behavior is buggy.

But, this PR's behavior is buggy, it is a no-op (at least, during my test it is a no-op, nothing happened when I click it)

I made a mistake when resolving confilcts, it should be fixed in 5bf1e17.

UI misalignment

Misalignment fixed in ef2318a

Can you explain why this is deleted? I think it causes bugs.

Is this screenshot up to date?

For resolved, the issue state color for resolved should go purple, not red. For other states, please check on GitHub.

See comment in https://github.com/go-gitea/gitea/issues/22793#issuecomment-1676290692, I think we should only have two closed states and not split into archived/stale.

We will need to adapt colors in templates/shared/issueicon.tmpl as per https://github.com/go-gitea/gitea/issues/22793#issuecomment-1685317256.

The only reason I can think to need an 'archived' status is if you had a bug report that couldn't be verified - you could archive it to indicate that you couldn't find it rather than that it was a bug that you didn't plan to fix. Then again, I think the difference between 'we fixed this' and 'we couldn't/didn't fix this' in complete and not planned is probably sufficient to indicate that, and anyone particularly interested could just look through the docs.

I think it is also useful for when an issue was closed as stale, because the reporting user did not respond to a question in a long time. In that case the issue was not resolved, and I think "not planned" is not appropriate either because to me that would mean that the maintainers are not open to such a change.

Why did you close the MR?
Its fine if you dont want to work anymore on it, the reason I ask is to know if the feature was rejected internally, or if it can have another chance.

Oh, I see. It was replaced with an other one.
Writing this so that anyone who has subscribed to this issue gets to know, as references dont kick off a notification.


java.lang.NoClassDefFoundError: mu/KotlinLogging in .jar

Hi,
i use this lib in a Kotlin Project (not Multiplatform) with gradle from mavenCentral.
implementation("io.github.microutils:kotlin-logging:2.0.11")
unfortunately when i build the artifact in Intellij and want to run it, i always get a
java.lang.NoClassDefFoundError: mu/KotlinLogging
error. Because the lib is missing in the jar file.
It happens only with this lib and i hope someone can help me out with this.

Jeah that didn't work either. But i think it's maybe a bug in Intellij because i previously used the wrong version.
I have to go to the artifacts -> Extracted Directory and then add the jar from .gradle/caches/modules-2/files-2.1/io.github.microutils  ...
Then it works.


Mock application user

Could be nice to add basic interface and scope to manage application user
Current/selected user could be optional - so starter could work without required login or user selection

Hello @zs-dima!
Thanks for the issues, but I'm afraid that user-related features are out of the starter's scope.
Not all applications use the concept of current users and sessions, and when developing an MVP I'd say it's even counterproductive to introduce that concept from the start. Because of that very reason, the starter lack user-based, and app-based/shared settings – everything is shared in that form.
Hope that clears things out :)


IS - File based SP/IDP configurations are incomplete

Moved from https://wso2.org/jira/browse/IDENTITY-4758
The documentation in [1] does not give a detail description about the configuration.
Ex: There is no/limited details about configuring the following elements. Others are also not in a descriptive manner and hence it is difficult to identify the usage of each property/element.
```<ProvisioningConnectorConfigs>
</ProvisioningConnectorConfigs>
<DefaultProvisioningConnectorConfig></DefaultProvisioningConnectorConfig>
<ClaimConfig></ClaimConfig>
<Certificate></Certificate>
<PermissionAndRoleConfig></PermissionAndRoleConfig>
<JustInTimeProvisioningConfig></JustInTimeProvisioningConfig>```

[1] https://docs.wso2.com/display/IS510/Configuring+a+SP+and+IdP+Using+Configuration+Files

This issue is being closed due to extended inactivity. Please feel free to reopen it if further attention is needed. Thank you for helping us keep the issue list relevant and focused!


yolov10的onnx转tensorrt报错

调用：TensorRtSharp.Custom.Nvinfer.OnnxToEngine(@"C:\Users\Administrator\Desktop\yolov10n.onnx",1024);
报错：
[05/29/2024-07:28:53] [I] [TRT] [MemUsageChange] Init CUDA: CPU +523, GPU +0, now: CPU 8558, GPU 1190 (MiB)
[05/29/2024-07:28:54] [I] [TRT] [MemUsageChange] Init builder kernel library: CPU +240, GPU +68, now: CPU 8993, GPU 1258 (MiB)
[05/29/2024-07:28:54] [I] [TRT] ----------------------------------------------------------------
[05/29/2024-07:28:54] [I] [TRT] Input filename:   C:\Users\Administrator\Desktop\yolov10n.onnx
[05/29/2024-07:28:54] [I] [TRT] ONNX IR version:  0.0.6
[05/29/2024-07:28:54] [I] [TRT] Opset version:    11
[05/29/2024-07:28:54] [I] [TRT] Producer name:    pytorch
[05/29/2024-07:28:54] [I] [TRT] Producer version: 2.0.1
[05/29/2024-07:28:54] [I] [TRT] Domain:
[05/29/2024-07:28:54] [I] [TRT] Model version:    0
[05/29/2024-07:28:54] [I] [TRT] Doc string:
[05/29/2024-07:28:54] [I] [TRT] ----------------------------------------------------------------
[05/29/2024-07:28:54] [W] [TRT] onnx2trt_utils.cpp:369: Your ONNX model has been generated with INT64 weights, while TensorRT does not natively support INT64. Attempting to cast down to INT32.
[05/29/2024-07:28:54] [I] [TRT] No importer registered for op: Mod. Attempting to import as plugin.
[05/29/2024-07:28:54] [I] [TRT] Searching for plugin: Mod, plugin_version: 1, plugin_namespace:
[05/29/2024-07:28:54] [E] [TRT] ModelImporter.cpp:773: While parsing node number 300 [Mod -> "/model.23/Mod_output_0"]:
[05/29/2024-07:28:54] [E] [TRT] ModelImporter.cpp:774: --- Begin node ---
[05/29/2024-07:28:54] [E] [TRT] ModelImporter.cpp:775: input: "/model.23/TopK_1_output_1"
input: "/model.23/Constant_12_output_0"
output: "/model.23/Mod_output_0"
name: "/model.23/Mod"
op_type: "Mod"
attribute {
name: "fmod"
i: 0
type: INT
}
[05/29/2024-07:28:54] [E] [TRT] ModelImporter.cpp:776: --- End node ---
[05/29/2024-07:28:54] [E] [TRT] ModelImporter.cpp:779: ERROR: builtin_op_importers.cpp:4890 In function importFallbackPluginImporter:
[8] Assertion failed: creator && "Plugin not found, are the plugin name, version, and namespace correct?"
load error: Assertion failed: creator && "Plugin not found, are the plugin name, version, and namespace correct?"
tensorRT load mask onnx model successfully!!!...
[05/29/2024-07:28:54] [E] [TRT] 4: [network.cpp::nvinfer1::Network::validate::2671] Error Code 4: Internal Error (Network must have at least one output)
try to save engine file now~~~
“WindowsFormsApp1.exe”(CLR v4.0.30319: WindowsFormsApp1.exe): 已加载“C:\Windows\Microsoft.Net\assembly\GAC_MSIL\mscorlib.resources\v4.0_<IP_ADDRESS>_zh-Hans_b77a5c561934e089\mscorlib.resources.dll”。模块已生成，不包含符号。
“System.AccessViolationException”类型的未经处理的异常在 TensorRtSharp.dll 中发生
尝试读取或写入受保护的内存。这通常指示其他内存已损坏。
尝试用官方yolov10命令直接导出tensorrt可以导出成功，但是用该项目无法调用
测试环境：
tensorrt<IP_ADDRESS>
cuda11.7+cudnn8.8.0

你这个应该是模型导出onnx设置有问题，有问题可以入群交流，QQ群：945057948


Creating Packages

Hi,
So I am trying to create a plugin for dext and have a few questions.

How do i get dext-cli to detect my plugin? I have published it to npm but it doesn't show up when doing dpm s term
Is there a more efficient way to develop plugins? That is without republishing each time? I know that there's npm link, does dpm link work the same way?

How do i get dext-cli to detect my plugin? I have published it to npm but it doesn't show up when doing dpm s term

Your plugin's package.json should contain a dext-theme or dext-plugin in the keywords list. (see here)

Is there a more efficient way to develop plugins? That is without republishing each time? I know that there's npm link, does dpm link work the same way?

The best method for dev is to use dpm link and dpm unlink. It works like npm link and npm unlink. This will allow you to easily create symlinks from your working project's directory to the ~/.dext/plugins directory. The command will also automatically add/remove the plugin in the ~/.dext/config.json file.

Okay so I am trying to understand how I can adapt action to do something. Lets say instead of one of the options provided, I'd like the plugin to execute a function, I can't seem to figure out how that is done

You can use the exec action which will spawn a child process. See how we did this on the screensaver plugin.

Okay but that may not be ideal since it doesn't allow arguments to be passed along? I've made a modification that allows that and will commit after some more testing

@z3t0 exec actions currently doesn't support sending extra args to the new process but this would be a great addition. I'd like to see how you solve your issue when it's ready and perhaps we can merge it into core? Open for thoughts.

This has been answered


New cached responses generated for identical request

Talkback keeps generating new cached responses after server restart even though the requests are identical. I thought the expected behaviour was that identical requests would cause the cached response to be returned.

I'm guessing differences in meta and res shouldn't cause a new cached response to be generated?

You're right, identical req should match existing tapes. meta and res are not taken into account during the lookup.
Looking at the image I don't see any reason why the tape shouldn't match.
If you're willing to test, I published a new version talkback@beta that adds a debug option.
Set it to true, and it will print a lot of debug information.
For each saved tape, it will print the reason why it doesn't match a new request.
Thank you

I think I found the bug that makes this happen.
The response for this tape is not considered human readable (meta.resHumanReadable=false) because header value for "content-encoding" is gzip. The request is on the other side considered human readable, which is correct.
In the source file tape.js the method static fromStore(raw, options) checks on the var raw.meta.resHumanReadable for both if tests. The first if test is used for the request and has a bug is on line 22, where it should test the raw.meta.reqHumanReadable instead.

You're totally right @roypa! Thank you so much.
I just released 1.2.0 that fixes this issue.

Great!
Thank you so much for such a quick response.


refactor: make index executable

refactor: make index executable
just a chmod +x index.js

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


[Support] Add cf_subshell_scoped_login helper script.

What
This is useful when you want to login to one of the persistent
environments for a specific task without that affecting other terminal
sessions.
For context, the CF CLI keeps information about the currently targeted
API endpoint along with auth tokens etc in $CF_HOME/.cf/config.json. If
CF_HOME is unset, it detaults to $HOME.
This script therefore creates a temporary directory and sets CF_HOME to
that before dropping into a subshell. An exit trap cleans all this up.
How to review

Consider whether the script name makes sense (I found it hard to come up with a good name for this).
In one terminal log in to a dev environment.
In another terminal window, use this script to log in to staging or prod (./scripts/cf_subshell_scoped_login staging).
Verify that first terminal session is unaffected and remains logged into the dev environment

Who can review
Not me.
P.S. I realise I'm no longer on support, but this is something I started while on support last week.

a future addition to this could be allow logging in as different users.

The script doesn't need to know what user you're logging in as because that's all delegated to the SSO provider. It only does a cf login --sso.

I just realised this doesnt end in .sh like the rest of the files in the script dir - was there a reason for this i'm missing?

I just realised this doesnt end in .sh like the rest of the files in the script dir - was there a reason for this i'm missing?

Good call, this also means that it won't be being run through shellcheck. I'll do a PR to rename this.


[Please don't merge this branch] the progress

I am bin working on identifying some morphemes according to the Chapter 5 (Chen's book).
I made the following comments in the "Remark" column:

"inconsistent" : differences between Chapter 5 and the wordlist. For example, tone, /h/ becomes /ʰ/,  /i/ becomes /e/, and so on.

"absent" : the examples only appear in Chapter 5.

cool! I will give it a try tomorrow. The link to HM data on Edictor is the same as before, right?

Yes, the link is the same.


swift: backport logging fixes for 1.0.x upgrade

This is further Swift logging cleanup task which @craigtracey implemented on during the 1.0.x upgrade. It can be backported, but might be considered a feature too and could simply be used for future releases.
/cc @dlundquist

Closing as this will get rolled into #893


Provide Build service compatible example.  Comment out interactive ex…

This example is designed to run without requiring user input but assumes variables coming from a build service.  Should it be split in to two examples?

Feel free to merge these branches in, figure most discussion will be around merging into dev/master?
Wonder if it would be worthwhile to have a separate Examples folder at the root of the repo? Could use them in DeploymentType examples or scenario examples in the docs


Out-of-Geozone-bounds position error

Added an error for when the user sets the position too far away
Fixes AB#2338

I don't have an immediate (complete) solution to the problem but this isn't a complete solution yet either.

ok well the issue specifically is with position.x being too large for the geozone, and cosh and sinh return exponentially huge values depending on zone.radius i think. This is all in udGeoZone_CartesianToLatLong


[Bug]: Async call timeout exceeded. Timeout 500

Telegram Application
Telegram for Android, Telegram for iOS, Telegram for macOS, Telegram Desktop
Describe the Bug
I am having situations on initialization getting this error: "Async call timeout exceeded. Timeout 500"
The application is done with next.js 13, so I am doing async loading.
'use client';

import {
  SDKProvider,
  type SDKInitOptions,
  DisplayGate,
} from<EMAIL_ADDRESS>
interface SDKProviderErrorProps {
  error: unknown;
}

function SDKProviderError({ error }: SDKProviderErrorProps) {
  console.log("🚀 ~ SDKProviderError ~ error:", error)
  return (

      Oops. Something went wrong.

          {error instanceof Error ? error.message : JSON.stringify(error)}

  );
}

function SDKProviderLoading() {
  return (

      SDK is loading.

  );
}

function SDKInitialState() {
  return (

      Waiting for initialization to start.

  );
}

/**
 * Root component for the whole project.
 */
export const TeleSDKProvider = (props: React.PropsWithChildren) => {
  const options: SDKInitOptions = {
    cssVars: true,
    acceptCustomStyles: true,
    async: true,
  };

  return (
    <SDKProvider options={options}>
      {/* @ts-ignore */}
      <DisplayGate
        error={SDKProviderError}
        loading={SDKProviderLoading}
        initial={SDKInitialState}>
        {props.children}
      </DisplayGate>
    </SDKProvider>
  );
};

But this code worked in example nextjs 14.
To Reproduce
Steps to reproduce the behavior:
Wrap _app.tsx by example code in NextJS 13
Expected Behavior
Libraries compatible with both NextJS 13 and NextJS 14

Hey! Could a create a reproducible example and show it in some repo? I have no big experience using the latest versions of Next. So, I am not sure I will be able to reproduce it

Hey! Could you a create a reproducible example and show it in some repo? I have no big experience using the latest versions of Next. So, I am not sure I will be able to reproduce it.
Also check if you are using the latest versions of @tma.js/sdk and @tma.js/sdk-react

I'm only having problems with nextjs 13, version 14 works fine like the example. I searched for a solution on github by downgrading @tma.js/sdk-react to version 1.1.0.

i have this problem with typescript too

@vitminakov Hey! You have different problem. Please, create a reproduction example. It's something wrong with your typings, as long as DisplayGate is just FC (Functional Component type from react)

Closing due to inactivity. Let me know if you have something new


Access Transformers

ATs should be applied during setup both in the OML dev env and the future mod dev env.

ATs are currently the biggest PITA in when it comes to the Forge setup. We should have a way to direct user generated ATs that are not timed to any mods. Not sure if this was due to a bug in ForgeGradle but I had an issue where any user generated transformers were discarded.

You place them in resoures and you rerun the gradle stuff. How is that a PITA?

It depends on your setup. My current setup for forge is not centralized to any mod, instead I have a basic forge mdk project, and then the other projects are imported from git. This is what allows me to have 10 or 15 mods in a workspace. With ForgeGradle, if I want to use an access transformer, I currently have to put it in one of my mods, push a new build, and then add that build to my central gradle, and then re-run the setup. Previously I had a generic at file that I would add stuff to temporarily (like you have suggested) but some time during ForgeGradle 2 that stopped working for me. I haven't been able to get it to detect my generic AT since.


⬆ bump @docusaurus/* from 2.0.0-beta.21 to 2.0.0-beta.22

Closes #52
Closes #53
Closes #54

Changes Ref. https://github.com/facebook/docusaurus/pull/7644


[BUG] no access to my dedicated index in RC

Describe the bug
I want to create an index that is only visible to a dedicated user. This seems to work in the Dev Tools but the index doesnt show up in the discover view
To Reproduce
// create an index
PUT /bank-index/_doc/1
{
  "type": "deposit",
  "amout": 200
}

PUT bank-index/_doc/2
{
    "type" : "transfer",
    "amout" : 100
}

// check the content
GET _mget
{
  "docs": [
    {
      "_index": "bank-index",
      "_id": "1"
    },
    {
      "_index": "bank-index",
      "_id": "2"
    }
  ]
}

=> result
{
  "docs" : [
    {
      "_index" : "bank-index",
      "_type" : "_doc",
      "_id" : "1",
      "_version" : 2,
      "_seq_no" : 2,
      "_primary_term" : 1,
      "found" : true,
      "_source" : {
        "type" : "deposit",
        "amout" : 200
      }
    },
    {
      "_index" : "bank-index",
      "_type" : "_doc",
      "_id" : "2",
      "_version" : 2,
      "_seq_no" : 3,
      "_primary_term" : 1,
      "found" : true,
      "_source" : {
        "type" : "transfer",
        "amout" : 100
      }
    }
  ]
}

// create a role
PUT _plugins/_security/api/roles/banker
{
   "cluster_permissions" : [
      "indices_all",
      "indices:data/read/search",
      "indices:admin/aliases/get"
    ],
  "index_permissions": [{
    "index_patterns": [
      "bank-*"
    ],
    "dls": "",
    "fls": [],
    "masked_fields": [],
    "allowed_actions": [
      "read"
    ]
  }]
}

=> result
{
  "status" : "CREATED",
  "message" : "'banker' created."
}

// create user
PUT _plugins/_security/api/internalusers/banker-tom
{
  "password": "TheHumanHasBeenNeutralized"
}

// add rolemapping
PUT _plugins/_security/api/rolesmapping/banker
{
  "users" : [ "banker-tom" ]
}

=> result
{
  "status" : "OK",
  "message" : "'banker' updated."
}

Result in the logs when going to http://localhost:5601/app/discover# :
opensearch-node1         | [2021-06-14T14:16:07,956][INFO ][o.o.s.p.PrivilegesEvaluator] [opensearch-node1] No permissions for [indices:data/read/search]
opensearch-dashboards    | {"type":"log","@timestamp":"2021-06-14T14:16:07Z","tags":["error","opensearch","data"],"pid":1,"message":"[security_exception]: no permissions for [indices:data/read/search] and User [name=banker-tom, backend_roles=[], requestedTenant=user]"}
opensearch-dashboards    | {"type":"response","@timestamp":"2021-06-14T14:16:07Z","tags":[],"pid":1,"method":"get","statusCode":403,"req":{"url":"/api/saved_objects/_find?fields=title&per_page=10000&type=index-pattern","method":"get","headers":{"host":"localhost:5601","user-agent":"Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:89.0) Gecko/20100101 Firefox/89.0","accept":"/","accept-language":"en-US,en;q=0.5","accept-encoding":"gzip, deflate","referer":"http://localhost:5601/app/discover","content-type":"application/json","osd-version":"1.0.0-rc1","dnt":"1","connection":"keep-alive","securitytenant":"user"},"remoteAddress":"<IP_ADDRESS>","userAgent":"Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:89.0) Gecko/20100101 Firefox/89.0","referer":"http://localhost:5601/app/discover"},"res":{"statusCode":403,"responseTime":7,"contentLength":9},"message":"GET /api/saved_objects/_find?fields=title&per_page=10000&type=index-pattern 403 7ms - 9.0B"}
Expected behavior
See the bank-index in the discover view
Plugins
all the once in the default docker compose file for the RC
Screenshots

Empty discover view

banker-tom can query via the Dev tools

In the admin view I have the settings below

Host/Environment (please complete the following information):

OS: Linux mint 21
Docker version 20.10.7, build f0df350

Ticket can be closed, I got it working after I found an example in the docs.
https://docs-beta.opensearch.org/security-plugin/access-control/users-roles/#sample-roles
Mapping the "banker" role and the internal " kibana_user" role to banker-tom fixed the issue.
The "kibana_read_only" made only the dashboard show up.

Thanks, @drBenway :)


refactor: clean up testing files

I accidentally merged a PR that didn't have a file formatted correctly and it made CI on main fail. This fixes that but also clean ups some testing files to be better organized.

Ah, just curious, shouldn't the same formatting checks run on PRs and main? How'd it get merged in the first place?

I hit enable auto-merge which says "Automatically merge when all requirements are met." - let me checking the repo settings

Weird, pre-build is not required, but should be? Enabling now: cc @oxy and @code-asher

actually, i bet i broke it when i changed it to "Pre-Build" instead of "Pre-build"

argh, auto update imports didn't work lol fixing

Haha, I dislike auto merge because of these sorts of problems, but I see how it can be helpful :man_shrugging:

I feel ya, luckily this has only happened once or twice

Moment of truth

Hmm but we require end-to-end tests which requires pre-build? Is it sneaking in the auto-merge in the gaps before the next check starts??

I guess it might be? Maybe it's a bug? I went into the settings and added "Pre-Build" as a required check. Maybe it's sneaking in because the previous run had both of those passing? I'm not too sure


Remove roct dependency on libdrm and libdrm_amdgpu.  Build roct as st…

…atic. This removes need for libhsakmt, libdrm, and libdrm_amdgpu.  The libhsakmt had the libnuma.so dependency.   So we added libnuma to libhsa-runtime64. .  The patch to roct (patches/roct-thunk-interface-no-drm.patch) creates a new cmake variable called HSAKMT_SKIP_DRM_REQUIREMENT that is default off.  When turned on, the call to topology_get_marketing_name is not used.  This is not needed because topology.c has all the marketing names in the tables.
The call to topology_get_marketing_name is the only place in libhsakmt where the dependency on libdrm and libdrm_amdgpu is created.   Eliminating this call with cmake variable HSAKMT_SKIP_DRM_REQUIREMENT=on will remove the need for libdrm and libdrm_amdgpu.

I would like this merged before we release AFAR and AOMP 15.0-3.

Yep OK, that makes sense to me. There's an ongoing internal discussion where I'm hoping to find a way forward that doesn't involve patching roct.
A higher effort but possibly better path we could take is to write a single file that exposes the API libdrm uses and backs it by reading the pci table.  Essentially pull the code deleted by https://github.com/RadeonOpenCompute/ROCT-Thunk-Interface/commit/7951aea41ae48fad7efa3d6aa73b81d544745ff1 into a new file and pick the names to resolve the symbols from libdrm.


Removed references to png images

Description
While researching this discussion, I chanced upon the fact that Ferdi does not depend on the *.png images (maybe it did at an earlier date).
Motivation and Context
By removing the remaining methods that reference the png image files, we can then safely remove the images themselves in the recipes, thus making the final installer file smaller in size while also removing dead code.
Screenshots

Checklist:

[x] My pull request is properly named
[x] The changes respect the code style of the project ($ npm run lint && npm run reformat-files && npm run manage-translations && npm run apply-branding)
[x] I tested/previewed my changes locally

Do we need to make similar changes to the internal server?

Icons for services

TickTick
Amazon WorkMail
Google Contacts
HackMd
Kimai Cloud
Zimbra

seem to be missing for me in the Available services > All services, but they do have the correct icon once added a service. Not sure if related to this change, though.

Yes - those are missing the icon even without this PR. Thanks for approving.