🏗 Multi-platform support

add multi platform support (wip)

This is one of the reasons that UWP is better 😭
I remember multi-platform support was so easy...

This is one of the reasons that UWP is better 😭 I remember multi-platform support was so easy...

yeah I agree to @0x5bfa this was UWP at the first (SD Launcher) but it was so difficult to even a run a single Minecraft version because accessing resources is limited. This originally created the option 'Run Minecraft As Admin' because it would solve it at some kind of security risk

btw I planned to rewrite the Emerald.Core to Emerald.CoreX with a well (i'll try my best) organized code pattern so it would be easy to maintain.
I was away from the dev for kind of a time so I don't even understand somethings I have written before lol.
And I'll mostly focused on bringing Emerald for MacOS but emerald for Linux will be also created since I hope to use single framework for all.
Emerald for Windows works with no problem at all so I think it'll be a mess to replace Core with CoreX in Emerald.WinUI
BTW what do you guys think should I use for emerald cross platform?
would it be

MAUI
MAUI Hybrid (Blazor based MAUI app)
Blazor with Something like PWA or electron to create a desktop like (idk even this is possible at all lol)
Uno Platform
Or something else (Because I think all of these are not just perfect as native WinUI and apple UI (idk whatever they call it)

@RiversideValley/emerald what do you think?

Okay.....
So first things first. In terms of cross-platform, Uno seems like the best way to go as it is the most mature multi platform runtime engine. Blazor/Electron/ASP.NET apps are literally terrible and I wouldn't recommend them in a billion years as they are slow and buggy and the codebase is just messy - desktop apps shouldn't programmed in the same way as websites in my opinion. Plus, ASP.Net Core/Blazor/Electron apps are limited to most OS permission scopes as a website and may be able to open it but wouldn't function as a launcher in the same way that the Minecraft Launcher/Natsurainko.FluentLauncher/Lunar/Badlion/(whatever launchers are being used nowawadays) in terms of being actually able to manage the game on demand - you might as well be developing Emerald as a website that just launches Minecraft via protocols which betrays the true meaning behind what a Minecraft Launcher really is.
Emerald for macOS, on the other hand, will be difficult. I'm not sure whether .NET desktop apps designed and managed by Uno are even supported on macOS.
Then again, this leads me to question, why do we want Emerald to work as a cross-platform app? It's fine to make it universally available across different Windows versions (AMD64, Arm, Arm64, WinRT, etc.) but why do we really want it to function on different platforms? Minecraft on macOS is the only comparable version of the game to that of Windows and I am to suppose that we will have very little userbase who are interested in a Cupertino UI (what Apple's design system is called) Minecraft Launcher that lacks the features or core contributors of other major competitors or even the default Launcher itself? On top of that, Minecraft for Linux is incredibly underdeveloped and resembles Classic Minecraft in its entirety - not a proper game as Minecraft on Windows and macOS appears to be.
Another thing - codebase unifier platforms like Uno and MAUI generally lean towards having a single codebase as that is literally the meaning of the word Uno - it makes no sense to have a separate project for each version as all the apps being able to be built from a singular codebase is the very nature of Uno and MAUI in the first place.
All in all, this is merely speculative but it really does make me question what Emerald really is.

Okay..... So first things first. In terms of cross-platform, Uno seems like the best way to go as it is the most mature multi platform runtime engine. Blazor/Electron/ASP.NET apps are literally terrible and I wouldn't recommend them in a billion years as they are slow and buggy and the codebase is just messy - desktop apps shouldn't programmed in the same way as websites in my opinion.

Yeah I do also prefer Uno over the others, Just listed down the possible ways of doing this. And also, I have never tried either Uno or Blazor with electron(ized) before. So I may need time to get these thing well.

Plus, ASP.Net Core/Blazor/Electron apps are limited to most OS permission scopes as a website and may be able to open it but wouldn't function as a launcher in the same way that the Minecraft Launcher/Natsurainko.FluentLauncher/Lunar/Badlion/(whatever launchers are being used nowawadays) in terms of being actually able to manage the game on demand - you might as well be developing Emerald as a website that just launches Minecraft via protocols which betrays the true meaning behind what a Minecraft Launcher really is.

Just to mention, ig some of the popular (legal or cracked) minecraft launchers like TLauncher, Lunarclient uses HTML UI with Java (I'm not sure since I haven't observed any Java based app before, but I think it works like that)
I don't like Electron\Blazor UI based apps because of the performance. The only thing I like about it is we can craft whatever unique UI we want with HTML and CSS (although I'm not a web designer lol)

Emerald for macOS, on the other hand, will be difficult. I'm not sure whether .NET desktop apps designed and managed by Uno are even supported on macOS.

There is some built with Uno for macOS, like Devtoys, Ryujinx (An amazing project I found when searching for emulators, not so sure whether it is poweren by Uno)

Then again, this leads me to question, why do we want Emerald to work as a cross-platform app? It's fine to make it universally available across different Windows versions (AMD64, Arm, Arm64, WinRT, etc.) but why do we really want it to function on different platforms?

well Minecraft JAVA Edition is cross-platform, so why not emerald?
Actually I like to bring emerald for macOS since I have a mac tbh.

Minecraft on macOS is the only comparable version of the game to that of Windows and I am to suppose that we will have very little userbase who are interested in a Cupertino UI (what Apple's design system is called)

Yeah I agree, but I have experienced that annoying user experience when I try to install 3rd party MC launcher on my new mac.
I had to manually install Java runtime, finding the correct runtime could be challenging not to me but to other normal non-dev peoples like my younger brother who only knows to open emerald and launch minecraft.
Since CMLLib automatically installs required java rumtime which is very easy for normal users.

Minecraft Launcher that lacks the features or core contributors of other major competitors or even the default Launcher itself? On top of that, Minecraft for Linux is incredibly underdeveloped and resembles Classic Minecraft in its entirety - not a proper game as Minecraft on Windows and macOS appears to be.

I had only a linux based device before (Which actually came with windows but had to install a linux because it was too old for Windows). I played Minecraft on that device using Tlauncher, I was happy with it. (even though the performence was not so great)
I think Emerald would easily work if it was cross platform thanks to the well-written CMLLib.

Another thing - codebase unifier platforms like Uno and MAUI generally lean towards having a single codebase as that is literally the meaning of the word Uno - it makes no sense to have a separate project for each version as all the apps being able to be built from a singular codebase is the very nature of Uno and MAUI in the first place. All in all, this is merely speculative but it really does make me question what Emerald really is.

yeah, so do I 😀. Emerald is just a UI for some "custom minecraft launcher" Libraires. made for easy of use, easily download mods using Modrinth API and install and run moded MC version just like TLauncher.
btw what would be the final decision? what about. MAUI? actually I really don't love any of these, I would rather build a native mac app if I knew SwiftUI

wow Ive written a whole essay lol

Ryujinx isn't powered by Uno afaik

well Minecraft JAVA Edition is cross-platform, so why not emerald?
Actually I like to bring emerald for macOS since I have a mac tbh.

Yeah me too

btw what would be the final decision? what about. MAUI? actually I really don't love any of these, I would rather build a native mac app if I knew SwiftUI
I know a tiny bit of Swift because it was the second language I learnt after getting into programming but it's very rusty. Also, using an app like Xcode is very unintuitive. Objective-C is also just terrible and I personally think refactoring Emerald via MAUI or Uno is preferable

Also, I just remembered, MAUI doesn't support Linux so it wouldn't work that way anyway

Also, I just remembered, MAUI doesn't support Linux so it wouldn't work that way anyway

so, a one solution is gone lol

Ryujinx isn't powered by Uno afaik

But this feels like WinUI in Uno
https://github.com/user-attachments/assets/b287a5c6-7094-41a8-9bed-543ff97afeda
(don't mind about that time btw)

Yeah it's a shame since MAUI is very much supported by Microsoft and it would be very nice to get to use it while its new because I imagine that in the near future Microsoft will standardise it as the core universal multi-platform framework for .NET

But this feels like WinUI in Uno

Yes it looks like it because they recently replaced the UI with a custom built fluentUI framework for .NET called Avalonia

Yes it looks like it because they recently replaced the UI with a custom built fluentUI framework for .NET called Avalonia

ahh I know that, how about using it?

Cross platform WPF

💀
never knew that

ahh I know that, how about using it?

In Emerald?
That would require rewriting the app from scratch.

If you think about it Uno has loads of potential.
For example, if you ported an app like FluentHub to Uno you would be able to have a FluentHub mobile, and even a web interface. It's very cool to think about.

In Emerald? That would require rewriting the app from scratch.

It seems like that. if so, that would be challenging. I can be never done because we don't have that much time. So It should be Emerald.Uno

What do you mean "we don't have much time"?

What do you mean "we don't have much time"?

I mean I would try to do that if I had more time to spend on this

Yes. It seems like Uno is the way to go for now though.

I give up 😭😭😭
This is practically impossible...

guys I've recreated the store! now it has mods, shaders, plugins, modpacks and resourcepacks support

now it's kind of well organized lol

I read online that apparently if you do this command:
@sourcery-ai review

It's meant to do some kind of AI-based PR review?

@sourcery-ai review

Maybe you guys can use Directory.Build.props to remove duplicated properties among projects?

We should do this 👀

@NoobNotFound let's merge, what do you think? I'll need to review this first but it'll be easier to just commit to main rather than an insanely large PR.


remove an old code path when searching for Z3

One step towards addressing https://github.com/verus-lang/verus/discussions/387#discussioncomment-6298063

It appears that switching this code path to a panic actually causes it to panic:
$ ./tools/get-z3.sh
...
$ vargo run -p rust_verify -- ./rust_verify/example/calc.rs
...
warning: verus was compiled in debug mode, which will result in worse performance
thread 'main' panicked at 'we are in vargo, but VERUS_Z3_PATH is not set; this is a bug', /home/jay/verus/simplify-verusroot/source/rust_verify/src/driver.rs:269:17
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

Looking within the vargo source itself, I don't see anything actually setting that environment variable; there is only a check for if it is set, but that check only happens if ./z3 doesn't already exist: https://github.com/verus-lang/verus/blob/ce715d977f801747d12b35079b4ed073f48b9e43/tools/vargo/src/main.rs#L235-L237

Great catch!
That explains why that code path was there. I think this other change should have the same effect but still reduce the number of different ways VERUS_Z3_PATH can be set.


Vector is not being returned

Qdrant 0.5.1
vector is not being returned when getting points or performing search

Hi @aaroncueckermann have you specified "with_vector": True parameter?


Update nginx.txt

add nginx.conf also

Wow

Custom wordlist & I found nginx misconfiguration exploit by that
On Sat, Aug 28, 2021, 1:25 AM g0tmi1k @.***> wrote:

Source? Reasoning?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/danielmiessler/SecLists/pull/633#issuecomment-907441252,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AL7RPPUP55AQZQQUKNKENLLT67URVANCNFSM5BJUNNPA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

Thank you!


Use indexing instead of choose

numpy.choose does not work when x.shape[1] > 32. I replaced choose with indexing.
fix #875

LGTM!


[Clapack]Could not find blas when install clapack on Linux

This issue found when install Blaze on Ubuntu 16.0, clapack installed successfully on windows.
linux001@linuxtest01:~/vcpkg$ ./vcpkg install clapack
Your feedback is important to improve Vcpkg! Please take 3 minutes to complete o                                                                                ur survey by running: vcpkg contact --survey
The following packages will be built and installed:
    clapack[core]:x64-linux
Starting package 1/1: clapack:x64-linux
Building package clapack[core]:x64-linux...
-- Using cached /home/linux001/vcpkg/downloads/clapack-3.2.1.tgz
-- Applying patch /home/linux001/vcpkg/ports/clapack/use-other-blas-and-install-                                                                                include.patch
-- Applying patch failed. This is expected if this patch was previously applied.
-- Configuring x64-linux-dbg
CMake Error at scripts/cmake/vcpkg_execute_required_process.cmake:56 (message):
    Command failed: /home/linux001/vcpkg/downloads/tools/cmake-3.12.4-linux/cmak                                                                                e-3.12.4-Linux-x86_64/bin/cmake;/home/linux001/vcpkg/buildtrees/clapack/src/clap                                                                                ack-3.2.1-CMAKE;-DCMAKE_MAKE_PROGRAM=/home/linux001/vcpkg/downloads/tools/ninja-                                                                                1.8.2-linux/ninja;-DCMAKE_SYSTEM_NAME=Linux;-DBUILD_SHARED_LIBS=OFF;-DVCPKG_CHAI                                                                                NLOAD_TOOLCHAIN_FILE=/home/linux001/vcpkg/scripts/toolchains/linux.cmake;-DVCPKG                                                                                _TARGET_TRIPLET=x64-linux;-DVCPKG_PLATFORM_TOOLSET=external;-DCMAKE_EXPORT_NO_PA                                                                                CKAGE_REGISTRY=ON;-DCMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY=ON;-DCMAKE_FIND_PACKA                                                                                GE_NO_SYSTEM_PACKAGE_REGISTRY=ON;-DCMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_SKIP=TRUE;-                                                                                DCMAKE_VERBOSE_MAKEFILE=ON;-DVCPKG_APPLOCAL_DEPS=OFF;-DCMAKE_TOOLCHAIN_FILE=/hom                                                                                e/linux001/vcpkg/scripts/buildsystems/vcpkg.cmake;-DCMAKE_ERROR_ON_ABSOLUTE_INST                                                                                ALL_DESTINATION=ON;-DVCPKG_CXX_FLAGS=;-DVCPKG_CXX_FLAGS_RELEASE=;-DVCPKG_CXX_FLA                                                                                GS_DEBUG=;-DVCPKG_C_FLAGS=;-DVCPKG_C_FLAGS_RELEASE=;-DVCPKG_C_FLAGS_DEBUG=;-DVCP                                                                                KG_CRT_LINKAGE=dynamic;-DVCPKG_LINKER_FLAGS=;-DCMAKE_INSTALL_LIBDIR:STRING=lib;-                                                                                DCMAKE_INSTALL_BINDIR:STRING=bin;-G;Ninja;-DCMAKE_BUILD_TYPE=Debug;-DCMAKE_INSTA                                                                                LL_PREFIX=/home/linux001/vcpkg/packages/clapack_x64-linux/debug
    Working Directory: /home/linux001/vcpkg/buildtrees/clapack/x64-linux-dbg
    See logs for more information:
      /home/linux001/vcpkg/buildtrees/clapack/config-x64-linux-dbg-out.log
      /home/linux001/vcpkg/buildtrees/clapack/config-x64-linux-dbg-err.log

Call Stack (most recent call first):
  scripts/cmake/vcpkg_configure_cmake.cmake:265 (vcpkg_execute_required_process)
  ports/clapack/portfile.cmake:35 (vcpkg_configure_cmake)
  scripts/ports.cmake:71 (include)

Error: Building package clapack:x64-linux failed with: BUILD_FAILED
Please ensure you're using the latest portfiles with `.\vcpkg update`, then
submit an issue at https://github.com/Microsoft/vcpkg/issues including:
  Package: clapack:x64-linux
  Vcpkg version: 2018.11.23-unknownhash
Additionally, attach any relevant sections from the log files above.

config-x64-linux-dbg-err.log:
linux001@linuxtest01:~/vcpkg/buildtrees/clapack$ cat ./config-x64-linux-dbg-err.                                                                                log
CMake Error at /home/linux001/vcpkg/downloads/tools/cmake-3.12.4-linux/cmake-3.1                                                                                2.4-Linux-x86_64/share/cmake-3.12/Modules/FindPackageHandleStandardArgs.cmake:13                                                                                7 (message):
  Could NOT find BLAS (missing: BLAS_LIBRARIES)
Call Stack (most recent call first):
  /home/linux001/vcpkg/downloads/tools/cmake-3.12.4-linux/cmake-3.12.4-Linux-x86                                                                                _64/share/cmake-3.12/Modules/FindPackageHandleStandardArgs.cmake:378 (_FPHSA_FAI                                                                                LURE_MESSAGE)
  /home/linux001/vcpkg/downloads/tools/cmake-3.12.4-linux/cmake-3.12.4-Linux-x86                                                                                _64/share/cmake-3.12/Modules/FindBLAS.cmake:702 (find_package_handle_standard_ar                                                                                gs)
  /home/linux001/vcpkg/scripts/buildsystems/vcpkg.cmake:253 (_find_package)
  CMakeLists.txt:7 (find_package)

Close this issue because PR has been merged.


doc: added documentation to API methods

Wrote JSdocs for relevant methods, as per UPS API.

@Lucca-C besides the requested changes, also update the description on your Pull Request please :)


Most of the time hardlinks are not being created and cross-seed is using the same category as it's precedessor

`// If you find yourself always using the same command-line flag, you can set
// it here as a default.
module.exports = {
/**
* Pause at least this much in between each search. Higher is safer.
* It is not recommended to set this to less than 2 seconds.
*/
delay: 10,
/**
 * List of Torznab URLs.
 * For Jackett, click "Copy RSS feed"
 * For Prowlarr, click on the indexer name and copy the Torznab Url, then append "?apikey=YOUR_PROWLARR_API_KEY"
 * Wrap each URL in quotation marks, and separate them with commas, and surround the entire set in brackets.
 */
torznab: ["xxx],
/**
 * To search with downloaded data, you can pass in directories to your downloaded torrent
 * data to find matches rather using the torrent files themselves for matching.
 *
 * If enabled, this needs to be surrounded by brackets. Windows users will need to use
 * double backslash in all paths in this config.
 * e.g.
 * 		dataDirs: ["/path/here"],
 * 		dataDirs: ["/path/here", "/other/path/here"],
 * 		dataDirs: ["C:\\My Data\\Downloads"]
 */
dataDirs: ["/data/torrents/movies", "/data/torrents/tv"],

/**
 * Determines flexibility of naming during matching. "safe" will allow only perfect name matches
 * using the standard matching algorithm. "risky" uses filesize as its only comparison point.
 * Options: "safe", "risky"
 */
matchMode: "risky",

/**
 * Defines what category torrents injected by data-based matching should use.
 * Default is "cross-seed-data"
 */
dataCategory: "cross-seed",

/**
 * If this is specified, cross-seed will create links to scanned files in the specified directory.
 * It will create a different link for every changed file name or directory structure.
 */
linkDir: "/data/torrents/cross-seed-torrents",

/**
 * cross-seed will use links of this type to inject data-based matches into your client.
 * Only relevant if dataDirs is specified.
 * Options: "symlink", "hardlink"
 */
linkType: "hardlink",

/**
 * Whether to skip recheck in Qbittorrent. If using "risky" matchMode it is HIGHLY
 * recommended to set this to false.
 * Only applies to data based matches.
 */
skipRecheck: false,

/**
 * Determines how deep into the specified dataDirs to go to generate new searchees.
 * Setting this to higher values will result in more searchees and more API hits to
 * your indexers.
 */
maxDataDepth: 3,

/**
 * Directory containing .torrent files.
 * For qBittorrent, this is BT_Backup
 * For rtorrent, this is your session directory
 * 		as configured in your .rtorrent.rc file.
 * For Deluge, this is ~/.config/deluge/state.
 * For Transmission, this would be ~/.config/transmission/torrents
 *
 * Don't change this for Docker.
 * Instead set the volume mapping on your docker container.
 */
torrentDir: "/torrents",

/**
 * Where to put the torrent files that cross-seed finds for you.
 * Don't change this for Docker.
 * Instead set the volume mapping on your docker container.
 */
outputDir: "/cross-seeds",

/**
 * Whether to search for all episode torrents, including those from season packs. This option overrides includeSingleEpisodes.
 */
includeEpisodes: true,

/**
 * Whether to include single episode torrents in the search (not from season packs).
 * Like `includeEpisodes` but slightly more restrictive.
 */
includeSingleEpisodes: true,

/**
 * Include torrents which contain non-video files
 * This option does not override includeEpisodes or includeSingleEpisodes.
 *
 * To search for everything except episodes, use (includeEpisodes: false, includeSingleEpisodes: false, includeNonVideos: true)
 * To search for everything including episodes, use (includeEpisodes: true, includeNonVideos: true)
 * To search for everything except season pack episodes (data-based)
 *    use (includeEpisodes: false, includeSingleEpisodes: true, includeNonVideos: true)
 */
includeNonVideos: false,

/**
 * fuzzy size match threshold
 * decimal value (0.02 = 2%)
 */
fuzzySizeThreshold: 0.02,

/**
 * Exclude torrents first seen more than this long ago.
 * Format: https://github.com/vercel/ms
 * Examples:
 * "10min"
 * "2w"
 * "3 days"
 */
excludeOlder: undefined,

/**
 * Exclude torrents which have been searched
 * more recently than this long ago.
 * Examples:
 * "10min"
 * "2w"
 * "3 days"
 */
excludeRecentSearch: undefined,

/**
 * With "inject" you need to set up one of the below clients.
 * Options: "save", "inject"
 */
action: "inject",

/**
 * The url of your rtorrent XMLRPC interface.
 * Only relevant with action: "inject".
 * Could be something like "http://username:password@localhost:1234/RPC2
 */
rtorrentRpcUrl: undefined,

/**
 * The url of your qBittorrent webui.
 * Only relevant with action: "inject".
 * Supply your username and password inside the url like so:
 * "http://username:password@localhost:8080"
 */
qbittorrentUrl: "xxxx",

/**
 * The url of your Transmission RPC interface.
 * Usually ends with "/transmission/rpc".
 * Only relevant with action: "inject".
 * Supply your username and password inside the url like so:
 * "http://username:password@localhost:9091/transmission/rpc"
 */
transmissionRpcUrl: undefined,

/**
 * The url of your Deluge JSON-RPC interface.
 * Usually ends with "/json".
 * Only relevant with action: "inject".
 * Supply your WebUI password as well
 * "http://:password@localhost:8112/json"
 */
delugeRpcUrl: undefined,

/**
 * qBittorrent and Deluge specific
 * Whether to inject using the same labels/categories as the original torrent.
 * qBittorrent: This will apply the category's save path
 * Example: if you have a label/category called "Movies",
 * this will automatically inject cross-seeds to "Movies.cross-seed"
 */
duplicateCategories: true,

/**
 * cross-seed will send POST requests to this url
 * with a JSON payload of { title, body }.
 * Conforms to the caronc/apprise REST API.
 */
notificationWebhookUrl: undefined,

/**
 * Listen on a custom port.
 */
port: 2468,

/**
 * Bind to a specific host address.
 * Example: "<IP_ADDRESS>"
 * Default is "<IP_ADDRESS>"
 */
host: undefined,

/**
 * Whether to require authentication for API.
 * Run the command `cross-seed api-key` to find your api key.
 * Keys can be provided in an X-Api-Key HTTP header or a query param.
 */
apiAuth: true,

/**
 * Run rss scans on a schedule. Format: https://github.com/vercel/ms
 * Set to undefined or null to disable. Minimum of 10 minutes.
 * Examples:
 * "10min"
 * "2w"
 * "3 days"
 */
rssCadence: "15min",

/**
 * Run searches on a schedule. Format: https://github.com/vercel/ms
 * Set to undefined or null to disable. Minimum of 1 day.
 * If you have RSS enabled, you won't need this to run often (2+ weeks recommended)
 * Examples:
 * "10min"
 * "2w"
 * "3 days"
 */
/* searchCadence: "4w",*/
searchCadence: "4d",

/**
 * Fail snatch requests that haven't responded after this long.
 * Set to null for an infinite timeout.
 * Format: https://github.com/vercel/ms
 * Examples:
 * "30sec"
 * "10s"
 * "1min"
 * null
 */
snatchTimeout: undefined,

/**
 * Fail search requests that haven't responded after this long.
 * Set to null for an infinite timeout.
 * Format: https://github.com/vercel/ms
 * Examples:
 * "30sec"
 * "10s"
 * "1min"
 * null
 */
searchTimeout: undefined,

/**
 * The number of searches to be done before it stops.
 * Combine this with "excludeRecentSearch" and "searchCadence" to smooth long-term API usage patterns.
 * Default is no limit.
 */
searchLimit: undefined,

};
`
Like I said in the title most of the time hardlinks are not being created and cross-seed is using the same category as it's precedessor and the torrents are already started, instead of being stopped.
Didn't see any error in the logs, everywhere I have set the same permissions and group, so that would not be it...

https://www.cross-seed.org/docs/basics/faq-troubleshooting#my-data-based-search-is-searching-torrent-files
This is how torrent based searches and matches work in v5. Only data links, read the docs FAQ for info.
This is expected behavior.

@zakkarry Okay, but why does like 20% of the matches works fine (hardlinks are being created, and new torrent is being placed in a different category)?

point torrentDir at an empty directory to avoid running torrent based searches.


Make main entrypoint + option for selecting extensions

Adds a main entry point, which will run pytest with our plugin loaded and enabled, and
without python collection.
Adds option --links-ext for which extensions (md, ipynb, html) to check the links of.

Hah, closed/reopened by habit since CI didn't run 🥇


Ability to hide navigation bar

Sometimes users will just want to work off a list of issues, so the ability to hide the navigation bar will be useful.

Hello Jamie, How's about having the nav bar "shrink" down to it's mobile state on a mouse out of 5 to 10 seconds. Having the smaller bar visible will keep the desired effect of increasing space and and reducing screen content while not freaking out non-tech savvies that they've somehow destroyed the site.

Might have an even easier way of implementing this with the ability to save preferences (large or small nav) to session or even user state. Will think more.


radicle-node: 1.0.0-rc.14 -> 1.0.0-rc.17

Description of changes
https://radicle.zulipchat.com/#narrow/stream/409174-announcements/topic/radicle.201.2E0.2E0-rc.2E16
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[x] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Update to rc-17: https://radicle.zulipchat.com/#narrow/stream/409174-announcements/topic/radicle.201.2E0.2E0-rc.2E17/near/467218863

This is a semi-automatic executed nixpkgs-review with nixpkgs-review-checks extension. It is checked by a human on a best effort basis and does not build all packages (e.g. lumo, tensorflow or pytorch).
Result of nixpkgs-review pr 338983 run on aarch64-darwin 1

1 package built:

radicle-node

The following issues got detected with the above build packages.
Please fix at least the ones listed with your changed packages:

radicle-node:

warning: EvalError
Cannot evaluate attribute ‘radicle-node’ in ‘/nix/store/27ir1y2zjan3v0rz36k84rypq8rsaz4k-nixpkgs’.

This is a semi-automatic executed nixpkgs-review with nixpkgs-review-checks extension. It is checked by a human on a best effort basis and does not build all packages (e.g. lumo, tensorflow or pytorch).
Result of nixpkgs-review pr 338983 run on x86_64-linux 1

1 package failed to build and are new build failure:

radicle-node: plain log

The following issues got detected with the above build packages.
Please fix at least the ones listed with your changed packages:

radicle-node:

warning: environment-variables-go-to-env
Environment variable PKG_CONFIG_ALLOW_CROSS should be moved to env attribute rather than being passed directly to ‘stdenv.mkDerivation’.
Near pkgs/build-support/rust/build-rust-package/default.nix:135:3:
    |
135 |   PKG_CONFIG_ALLOW_CROSS =
    |   ^

See: https://github.com/jtojnar/nixpkgs-hammering/blob/master/explanations/environment-variables-go-to-env.md

This is a semi-automatic executed nixpkgs-review with nixpkgs-review-checks extension. It is checked by a human on a best effort basis and does not build all packages (e.g. lumo, tensorflow or pytorch).
Result of nixpkgs-review pr 338983 run on x86_64-linux 1

1 package built:

radicle-node

The following issues got detected with the above build packages.
Please fix at least the ones listed with your changed packages:

radicle-node:

got build log for '/nix/store/v69wj1959d71p33mprvqxqypb9chbqw3-radicle-node-1.0.0-rc.17' from 'daemon'
When evaluating attribute ‘radicle-node’:
warning: environment-variables-go-to-env
Environment variable PKG_CONFIG_ALLOW_CROSS should be moved to env attribute rather than being passed directly to ‘stdenv.mkDerivation’.
Near pkgs/build-support/rust/build-rust-package/default.nix:135:3:
    |
135 |   PKG_CONFIG_ALLOW_CROSS =
    |   ^

See: https://github.com/jtojnar/nixpkgs-hammering/blob/master/explanations/environment-variables-go-to-env.md


Stream parsing is limited to one item only

I ran into problems with stream parsing where messages mysteriously disappear when using parse-stream with (java.io.BufferedReader. (java.io.InputStreamReader. (java.io.PipedInputStream. op))) -kind of stream (op is java.io.PipedOutputStream getting its content ultimately from TCP socket).
After debugging it turns out that the problem boils down to this:
user=> (require '[cheshire.core :as json])
nil
user=> (def reader (java.io.BufferedReader. (java.io.StringReader. "{\"a\": \"test\"}{\"b\": \"second\"}")))
#'user/reader
user=> (def a (json/parse-stream reader true))
#'user/a
user=> (def b (json/parse-stream reader true))
#'user/b
user=> a
{:a "test"}
user=> b
nil

parse-stream returns the first item and throws away the rest. If the stream content happens to come from network the consecutive parse-stream calls may even seem to work properly if only one JSON message at time becomes available for the .read -method of the Reader, however with streams the amount of bytes is arbitrary and one .read(..) may contain multiple JSON objects and parser should yield them all.
ADDED: The parsed-seq seems to resolve the the String backed BufferedReader example above but doesn't seem to work with PipedInputStream where data is added. Also seems that its intended use case does not match this problem.? (Lazy access to static content vs. streams?)

Here is yet better example:
user=> (require '[cheshire.core :as json])
nil
user=> (def op (java.io.PipedOutputStream.))
#'user/op
user=> (def ip (java.io.PipedInputStream. op))
#'user/ip
user=> (def reader (->> (java.nio.charset.Charset/forName "UTF8")
  #_=>                  (java.io.InputStreamReader. ip)
  #_=>                  (java.io.BufferedReader.)))
#'user/reader
user=> (def blob (byte-array (concat (.getBytes (json/generate-string {:a "test"})) (.getBytes (json/generate-string {:b "sec"})))))
#'user/blob
user=> (json/parsed-seq (java.io.BufferedReader. (java.io.StringReader. (apply str (mapv char blob)))))
({"a" "test"} {"b" "sec"})
user=> (.write op blob 0 (count blob))
nil
user=> (json/parsed-seq reader true)

.. in which point it deadlocks, probably waiting for EOF.

Using parse-stream drops away the second message as shown in the StringReader example above
Replaced cheshire with (clojure.data.json/read reader :key-fn keyword) and everything works as expected.

@dakrone I am also running into this issue. It would be great if we could call parse-stream multiple times on the same reader. I have this use case:
Content-Type: foo

{"a": 1 ....
some json
}

Content-Type: foo

{"b": 1 ....
some other json
}

So I need to alternate read-line with json/parse-stream. I can do this using clojure.data.json, but I would prefer to have this in cheshire, since cheshire is bundled with babashka and I would like to support this in babashka scripts.
If you are open to this, I can look into a PR for this.

@dakrone In jet I managed to do it this way:

(ns jet.formats
  {:no-doc true}
  (:require
   [cheshire.core :as cheshire]
   [cheshire.factory :as factory]
   [cheshire.parse :as cheshire-parse]
   ...)
  (:import [com.fasterxml.jackson.core JsonFactory]
           [java.io Reader]
        ...))

(set! *warn-on-reflection* true)

(defn json-parser []
  (.createParser ^JsonFactory (or factory/*json-factory*
                                  factory/json-factory)
                 ^Reader *in*))

(defn parse-json [json-reader keywordize]
  (cheshire-parse/parse-strict json-reader keywordize ::EOF nil))

So maybe just exposing a function like json-parser and adding some docs of how to use these together with parse/parse-strict would be sufficient as an alternative solution.

@borkdude I'd definitely be interested if you would like to look into a PR for this!

@borkdude I found that JsonParser has a .releaseBuffered method that you could use but I imagine it requires some annoying buffer management.

@nilern Luckily when reading from stdin it works like intended. You can read one JSON object when feeding one object to stdin, and then wait, then feed the next one and read the next one.


qname-minimisation causes incomplete response to A query when it follows a CNAME query

Describe the bug
When qname-minimisation is enabled, if we send a CNAME query for a domain followed by an A query, and if both records sets exist, Unbound only returns the CNAME records for even the A query.
To reproduce
Steps to reproduce the behavior:

Start Unbound with qname-minimisation enabled.
Query CNAME record followed by an A record for a domain, drive.aexp.com
Assuming Unbound is running locally, and you have the dig command line tool setup:

dig @localhost drive.aexp.com CNAME
dig @localhost drive.aexp.com A

Expected behavior
For the second query, Unbound should return the A record for the domain, but Unbound only returns the CNAME record for both queries
System:

Unbound version: 1.13.1 running in a docker container
OS: Ubuntu 18.04
unbound -V output:

Version 1.13.1

Configure line: --enable-dnstap --with-libevent --prefix=/source/microsoft/binaries
Linked libs: libevent 2.1.11-stable (it uses epoll), OpenSSL 1.1.1f  31 Mar 2020
Linked modules: dns64 respip validator iterator

BSD licensed, see LICENSE in source package for details.
Report bugs to<EMAIL_ADDRESS>or https://github.com/NLnetLabs/unbound/issues

Unbound returns response from msg cache. In iterator.c Unbound stores query type from upstream server response of authoritative server.  - https://github.com/NLnetLabs/unbound/blob/6b2e96430e925245d3633ce831810e386c9c6ffd/iterator/iterator.c#L2867. Unbound modifies the query from CNAME to A before sending it to upstream and stores the response of CNAME as A response in msg cache.
Suggested FIX – store original query type in msg cache instead of query type from response. Use query type from qchase structure.

How is your unbound.conf configured?
 Could you verify that the issue is resolved with 1.15.0?


Support multiprocessing

Hi @Jeff-Meadows
I wanted your feedback, if possible, while I continue to work on this. At this point I need to adjust pytest tests (and I admit I have more experience with nose than with pytest. I'd welcome the assistance but your review is the most valuable!)
If you would rather review when I am done with the work, that is also fine. I can tag you when that time comes, too.
But the reason I'm pinging you now is more about the important concepts, which are as follows:

This leverages the multiprocessing Manager. This is how I've seen multiprocessing implemented according to the documentation, as well as the xunitmp nose plugin.
Because the manager runs at such a high level, it is essentially a global process, which also matches the above implementation patterns
Because it is a global process, it is difficult (if not impossible) to mock. So the tests now instead use the global process, clearing its contents at the beginning of each test run. This is the pattern I would expect to implement in the pytest unit tests when I can get to them.

Thanks for any feedback!

Hi @benpatterson, thanks for the pull request. Before we can merge it, we need you to sign our Contributor License Agreement. You can do so electronically here: http://opensource.box.com/cla
Once you have signed, just add a comment to this pull request saying, "CLA signed". Thanks!

CLA signed

Verified that @benpatterson has just signed the CLA. Thanks, and we look forward to your contribution.

Hey @benpatterson pytest is already working with the xdist plugin (see #35 fixed by #38).
If I were tackling this, I'd probably subclass the MP list to give it a stream-like interface, and use it only in the nose plugin. That way, you won't need to touch the pytest plugin or the base class.
Does that sound like a good direction?

Ah thanks for the feedback, @Jeff-Meadows, let me go in that direction and see what I can do.


Default modal renders beneath z-indexed elements

Hello!
Currently using the default hellosign-embedded modal in an app. Unfortunately, it's rendering beneath elements which have (quite low) z-indices.
Could you provide an option to configure a z-index for the hellosign modal, or give it a default z-index which is high? My assumption is most people would not want UI to render on top of the hellosign modal.

Unfortunately there's no one-size-fits-all solution for z-index. Sending it in through as an option could be possible, but it would override any other styling. If you'd like to customize the CSS, you're more than welcome! Try just applying a z-index property to .x-hellosign-embedded in your CSS. If that doesn't work, feel free to re-open.


Add GitLab SSH Keys

Is your feature request related to a problem? Please describe.
Similar to GitHub, it would be great if we could ascertain GitLab ssh keys.
Describe the solution you'd like

Identify keys that are used in GitLab
Identify keys that are used in both GitHub and GitLab

Describe alternatives you've considered
Custom python scripts
Additional context

This is already supported in TruffleHog v3, by the way. We haven't updated the driftwood CLI in a while but intend to add it here too.
https://github.com/trufflesecurity/trufflehog


test for tracking dvcyaml

Adds test per https://github.com/iterative/dvclive/pull/710/files#r1331366225

Codecov Report
Patch coverage is 100.00% of modified lines.

Files Changed
Coverage

tests/test_dvc.py
100.00%

:loudspeaker: Thoughts on this report? Let us know!.


Fix performance-unnecessary-value-param warning reported by clang-tidy

This close #1105

By the way, I'm curious if there are any automated tools to fix relatively simple check like this one. @PragmaTwice

@tanruixiang I think such code fixes aren't similar to formatting and are able to change program behavior, so probably it's better to fix them manually, double-checking every case. Even if, in 99.99% of cases, the 'auto-fix' will do the right thing.

By the way, I'm curious if there are any automated tools to fix relatively simple check like this one. @PragmaTwice

Sure, some clang-tidy checks provide auto-fix, but it cannot guarantee 100% right for fixed code, so I recommand at least manual review these reports one by one.
BTW, if you configure your editor/IDE correctly (vim/vscode/emacs with clangd or clion), you should see a fix button in the pop-up window in every code segment where a report exists here.

BTW, if you configure your editor/IDE correctly (vim/vscode/emacs with clangd or clion), you should see a fix button in the pop-up window in every code segment where a report exists here. Some of them may also provide a button to fix all reports in the current source file.

Yes, vscode just need to download Clang-Tidy and take effect without any configuration.

Thanks all. Merging...


Integration testing for status update loop

We should add integration tests that cover status update scenarios (as implemented in https://github.com/istio/istio/pull/17360).

Fixed in https://github.com/istio/istio/pull/17622


Nemrod and Virtuoso

Hello
do you have an idea how to use virtuoso with Nemrod instead of blazegraph to produce and consume RDF resources ?
I did that in parameters file:
nemrod_endpoint_host: 'http://localhost'     nemrod_endpoint_port: 8890     nemrod_endpoint_path: sparql?default-graph-uri=http://localhost:8890/bigdata
but it gives me this error: HTTP request for SPARQL query failed
Client ->update ('INSERT { <http://data.nobelprize.org/resource/laureateaward/571c883784784> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://data.nobelprize.org/terms/LaureateAward> . <http://data.nobelprize.org/resource/laureateaward/571c883784784> <http://data.nobelprize.org/terms/year> "2015"^^<http://www.w3.org/2001/XMLSchema#integer> . <http://data.nobelprize.org/resource/laureateaward/571c883784784> <http://data.nobelprize.org/terms/category> <http://data.nobelprize.org/resource/category/Chemistry> . <http://data.nobelprize.org/resource/laureateaward/571c883784784> <http://data.nobelprize.org/terms/field> "field" . <http://data.nobelprize.org/resource/laureateaward/571c883784784> <http://data.nobelprize.org/terms/motivation> "motiv" . <http://data.nobelprize.org/resource/laureateaward/571c883784784> <http://data.nobelprize.org/terms/laureate> <http://data.nobelprize.org/resource/laureate/571c88378479e> . <http://data.nobelprize.org/resource/laureateaward/571c883784784> <http://www.w3.org/2000/01/rdf-schema#label> "Chemistry 2015, name family n" . <http://data.nobelprize.org/resource/laureate/571c88378479e> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://data.nobelprize.org/terms/Laureate> . <http://data.nobelprize.org/resource/laureate/571c88378479e> <http://xmlns.com/foaf/0.1/givenName> "name" . <http://data.nobelprize.org/resource/laureate/571c88378479e> <http://xmlns.com/foaf/0.1/gender> "female" . <http://data.nobelprize.org/resource/laureate/571c88378479e> <http://xmlns.com/foaf/0.1/familyName> "family n" . <http://data.nobelprize.org/resource/laureate/571c88378479e> <http://xmlns.com/foaf/0.1/birthday> "1961-01-01"^^<http://www.w3.org/2001/XMLSchema#date> . <http://data.nobelprize.org/resource/laureate/571c88378479e> <http://dbpedia.org/property/dateOfDeath> "2015-12-17"^^<http://www.w3.org/2001/XMLSchema#date> . <http://data.nobelprize.org/resource/laureate/571c88378479e> <http://www.w3.org/2000/01/rdf-schema#label> "name family n" } WHERE {} ')  in C:\wamp\www\nemrod\vendor\conjecto\nemrod\src\Conjecto\Nemrod\QueryBuilder\Query.php at line 295
and others errors

Hey, I didn't survey Github and I didn't see your issue. Can I know what was your error ?

it's solved, thank you, can i ask an other question, when i try to execute this query        $all = ```
$repository->getQueryBuilder()             ->insert(" <http://localhost/testp/resource/image/$id>                           dc:description . '\''.$description.'\'' ;                          dc:rights . '\''.$rights.'\'' ;                          dc:subject . '\''.$subject.'\'';                          dc:publisher . '\''.$publisher.'\'';                          dc:date . '\''.$date.'\'';                          dc:title . '\''.$title.'\'';                          dc:source . '\''.$source.'\'';                          dc:language . '\''.$language.'\'';                          dc:contributor . '\''.$contributor.'\'';                          dc:creator . '\''.$creator.'\'';                          dc:coverage . '\''.$coverage.'\'';                          dc:type . '\''.$type.'\''".)
it gives me this error    "code": 500,
"message": "HTTP request for SPARQL query failed"

Before your $qb->update(), you can make a echo $qb->getSparqlQuery() and execute the result on your sparql interface to see more details.

i tried  echo $qb->getSparqlQuery() but it gives me undefined method  getSparqlQuery(), i want to know if you are defining the insert query like i did or not since in your documentation there is no example for insert queries

Make $qb=$repository->getQueryBuilder();
echo $qb->insert(...)->getSparqlQuery();
Yes it seems correct but your  http://localhost/testp/resource/image/$id is weird.
But on are your sure your update endpoint address is correct in Nemrod ?

In fact you must not make $repo->getQueryBuilder() because its initializing a query construct . If you do this make a $qb->reset() or make a $rm->getQueryBuilder() to have an empty query builder.

my endpoint is correct since i try other select queries and it works, when i make $qb=$repository->getQueryBuilder();
echo $qb->insert(...)->getSparqlQuery(); it gives me
INSERT { <http://localhost/testp/resource/image/amn>                           dc:description . '\''.amn.'\'' ;                          dc:rights . '\''.amn.'\'' ;                          dc:subject . '\''.amn.'\'';                          dc:publisher . '\''.amn.'\'';                          dc:date . '\''.amn.'\'';                          dc:title . '\''.amn.'\'';                          dc:source . '\''.amn.'\'';                          dc:language . '\''.amn.'\'';                          dc:contributor . '\''.amnamn.'\'';                          dc:creator . '\''.amn.'\'';                          dc:coverage . '\''.amn.'\'';                          dc:type . '\''.amn.'\''. } WHERE { ?s a rdf:Description. ?s ?p ?o } {"code":500,"message":"HTTP request for SPARQL query failed"}

You string is not correct. Try something like that
$qb->insert("http://localhost/testp/resource/image/$id dc:description "$description"; ...");

it doesn't work either, when i try the same query in the endpoint directly  like this  INSERT DATA
{
http://localhost/testp/resource/image/nada
dc:description "nada.descrip" ;
dc:rights "nada.rights" ;
dc:subject "nada.subject";
dc:publisher "nada.publisher";
dc:date "Thu Mar 03 14:16:15 CET 2016";
dc:title "nada.title";
dc:source "nada.source";
dc:language "fr";
dc:contributor "nada.contributor";
dc:creator "nada.creator";
dc:coverage "www";
dc:type "png".
} it works

You should not have the "WHERE { ?s a rdf:Description. ?s ?p ?o } " in your query.

yes that why i'm asking you how you are defining the insert query because when i use select query like         $all = $repository->getQueryBuilder()
->select("?s")
->where('?s dc:language'. '''.$p.''')
->getQuery()
->execute();  it works .. for insert i dont know how you are defining the query

If you pass by the repository to get the query builder, this query builder is already initialized with a construct query to get all objects with passed rdf:type.
The repository do :
$qb->construct("?s ?p ?o")->where("?s a rdf:type")->andWhere("?s ?p ?o"); Yhe query builder is then returned to you.
So if you do a select with this query builder, you will keep the ->where("?s a rdf:type")->andWhere("?s ?p ?o") parts and the construct will be overridden by your select. It is exactly the same think if you do an insert or a delete.
So the result is that you have a $qb->insert(datas)->where("?s a rdf:type")->andWhere("?s ?p ?o"); But in this case the where is not correct because it has to be empty.
You have three solutions to correct your problem.

You can ask an empty query builder (with no where part). To do this, make a $this->get('rm')->-getQueryBuilder() and you will be able to do your inserts.
You can call this repository query builder and reset it, it is exactly the same that the first solution.
You can make your insert like before and override the where part with an empty where call like $qb->where();

when i try your 3th solution it gives me Warning: Missing argument 1 for Conjecto\Nemrod\QueryBuilder::where(), called in Class X

a $qb->where("") should be better: )

an other error "code": 500,
"message": "You must specify with which property you want to filter"

It seems that virtuoso in more restrective that BlazeGraph. try to add a where("?s a rdf:yourResourceType");

WHERE { ?s rdf:Description } {"code":500,"message":"HTTP request for SPARQL query failed"} :/

WHERE { ?s a rdf:Description }

either  WHERE { ?s rdf:Description } {"code":500,"message":"HTTP request for SPARQL query failed"}

you do not specify the rdf:type
You should dp a WHERE { ?s **rdf:type **rdf:Description } or a WHERE { ?s a rdf:Description }

WHERE { ?s *a rdf:Description } {"code":500,"message":"HTTP request for SPARQL query failed"}
WHERE { ?s rdf:type *rdf:Description } {"code":500,"message":"HTTP request for SPARQL query failed"}

Can you give me your entire request please ?

this is my function :
`    /**
*
* @ApiDoc(description="Add a photo.")
* @Rest\RequestParam(name="id", nullable=true, description="Tags that associates photo.")
* @Rest\RequestParam(name="description", nullable=true, description="Tags that associates photo.")
* @Rest\RequestParam(name="rights", nullable=true, description="Tags that associates photo.")
* @Rest\RequestParam(name="subject", nullable=true, description="Tags that associates photo.")
* @Rest\RequestParam(name="publisher", nullable=true, description="Tags that associates photo.")
* @Rest\RequestParam(name="date", nullable=true, description="Tags that associates photo.")
* @Rest\RequestParam(name="title", nullable=true, description="Tags that associates photo.")
* @Rest\RequestParam(name="source", nullable=true, description="Tags that associates photo.")
* @Rest\RequestParam(name="language", nullable=true, description="Tags that associates photo.")
* @Rest\RequestParam(name="contributor", nullable=true, description="Tags that associates photo.")
* @Rest\RequestParam(name="creator", nullable=true, description="Tags that associates photo.")
* @Rest\RequestParam(name="coverage", nullable=true, description="Tags that associates photo.")
* @Rest\RequestParam(name="type", nullable=true, description="Tags that associates photo.")
* @Rest\View()
*/
public function postResourceAction(ParamFetcher $paramFetcher)
{
            //getting manager
    $manager = $this->container->get('rm');

    //getting repository
    $repository = $manager->getRepository('rdf:Description');

    $id = $paramFetcher->get('id');
    $description = $paramFetcher->get('description');
    $rights = $paramFetcher->get('rights');
    $subject = $paramFetcher->get('subject');
    $publisher = $paramFetcher->get('publisher');
    $date = $paramFetcher->get('date');
    $title = $paramFetcher->get('title');
    $source = $paramFetcher->get('source');
    $language = $paramFetcher->get('language');
    $contributor = $paramFetcher->get('contributor');
    $creator = $paramFetcher->get('creator');
    $coverage = $paramFetcher->get('coverage');
    $type = $paramFetcher->get('type');

    //getting years by querying directly the triplet store
  $all = $repository->getQueryBuilder()
        ->insert("http://localhost/testp/resource/image/.$id.
                     dc:description . '\''.$description.'\'' ;
                     dc:rights . '\''.$rights.'\'' ;
                     dc:subject . '\''.$subject.'\'';
                     dc:publisher . '\''.$publisher.'\'';
                     dc:date . '\''.$date.'\'';
                     dc:title . '\''.$title.'\'';
                     dc:source . '\''.$source.'\'';
                     dc:language . '\''.$language.'\'';
                     dc:contributor . '\''.$contributor.'\'';
                     dc:creator . '\''.$creator.'\'';
                     dc:coverage . '\''.$coverage.'\'';
                     dc:type . '\''.$type.'\''.")
        ->where("?s rdf:type *rdf:Description")
        ->getQuery()
        ->execute();

    //getting all categories
    //$categories = $manager->getRepository('terms:Category')->findAll();

    return array("all" => $all);

}`

You can try two solutions :
public function postResourceAction(ParamFetcher $paramFetcher)
{
    //getting manager
    $manager = $this->container->get('rm');

    // getting empty query builder
    $insertQueryBuilder = $manager->getQueryBuilder();

    //getting repository
    $repository = $manager->getRepository('rdf:Description');

    $id = $paramFetcher->get('id');
    $description = $paramFetcher->get('description');
    $rights = $paramFetcher->get('rights');
    $subject = $paramFetcher->get('subject');
    $publisher = $paramFetcher->get('publisher');
    $date = $paramFetcher->get('date');
    $title = $paramFetcher->get('title');
    $source = $paramFetcher->get('source');
    $language = $paramFetcher->get('language');
    $contributor = $paramFetcher->get('contributor');
    $creator = $paramFetcher->get('creator');
    $coverage = $paramFetcher->get('coverage');
    $type = $paramFetcher->get('type');

    // insert datas to triplestore
    $insertQueryBuilder
        ->insert("<http://localhost/testp/resource/image/$id>
                 dc:description \"$description\" ;
                 dc:rights \"$rights\" ;
                 dc:subject \"$subject\";
                 dc:publisher \"$publisher\";
                 dc:date \"$date\";
                 dc:title \"$title\";
                 dc:source \"$source\";
                 dc:language \"$language\";
                 dc:contributor \"$contributor\";
                 dc:creator \"$creator\";
                 dc:coverage \"$coverage\";
                 dc:type \"$type\"")
        ->getQuery()
        ->execute();

    //getting all categories
    //$categories = $manager->getRepository('terms:Category')->findAll();

    return array("all" => $repository->findAll());

}
Or another solution more integrated to Nemrod Symfony2 :
public function postResourceAction(ParamFetcher $paramFetcher)
{
    $manager = $this->container->get('rm');
    $repository = $manager->getRepository('rdf:Description');

    // getting variables
    $variables = array();
    $id = $paramFetcher->get('id');
    $variables['dc:description'] = $paramFetcher->get('description');
    $variables['dc:rights'] = $paramFetcher->get('rights');
    $variables['dc:subject'] = $paramFetcher->get('subject');
    $variables['dc:publisher'] = $paramFetcher->get('publisher');
    $variables['dc:date'] = $paramFetcher->get('date');
    $variables['dc:title'] = $paramFetcher->get('title');
    $variables['dc:source'] = $paramFetcher->get('source');
    $variables['dc:language'] = $paramFetcher->get('language');
    $variables['dc:contributor'] = $paramFetcher->get('contributor');
    $variables['dc:creator'] = $paramFetcher->get('creator');
    $variables['dc:coverage'] = $paramFetcher->get('coverage');
    $variables['dc:type'] = $paramFetcher->get('type');

    $resource = $repository->find("http://localhost/testp/resource/image/$id");
    foreach ($variables as $predicate => $object) {
        $resource->add($predicate, $object);
    }
    $manager->flush();

    return array("all" => $repository->findAll());
}

Note that you not should add quotes like " rdf:predicate "$object" " if the $object is not a string.

i tried the first solution and it works with execute and not with update query .. thank you so much

Could you just try the second to see if it works with virtuoso please ?

yes with pleasure .. it gives me that  : "message": "Error: Call to a member function add() on a non-object"

Ok could you just retry with this line
$resource = $repository->find("http://localhost/testp/resource/image/$id"); just before the foreach ?

same error, but it's the same line no ?  $resource = $repository->find("http://localhost/testp/resource/image/$id");
foreach ($variables as $predicate => $object) {
$resource->add($predicate, $object);
}

Oh github has removed my quotes... Could you try with an opening quotes before http and a closing one after $id ?

When i add the quotes , "message": "HTTP request for SPARQL query failed"

I have corrected my comment, it's chevrons that you have to add (<>)

even if i add (<>) :  "message": "HTTP request for SPARQL query failed"

Ok no problem, thanks for having tried :)

if you have other propositions, i have no problem , i can try all day :p

:) I close this issue.


The runbook job was attempted 3 times, but it failed each time. Too vauge?

We have a runbook to do inventory of all azure resources. Since adding more subscriptions we have been unable to get the runbook to complete, and all we get is the dreaded "The runbook job was attempted 3 times, but it failed each time." error.
On this page there are several causes listed, and we have tried to mitigate each one as if it were the cause but to no luck. Running the script locally is successful, and I can see that it uses way under the 400mb limit, as well as no web sockets. We do no subprocess or exe calls, changed foreach loops to foreach-object, and even have externalized most functions and so each is a different runbooks and is called once per subscription.
Is it possible to make this error a little more verbose? Just getting told that automation fails with no reason is a bit frustrating when trying to debug. We write no output, and jobs are failing with nothing in any output stream.

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

ID: 74e930ff-4035-cd39-4a66-fb57147a8aca
Version Independent ID: 95160a74-1401-7ad8-359a-fe2a208b2d34
Content: Troubleshoot errors with Azure Automation Runbooks
Content Source: articles/automation/troubleshoot/runbooks.md
Service: automation
GitHub Login: @georgewallace
Microsoft Alias: gwallace

@snyder-riley-pfg Thanks for the question! We will investigate this issue and get back to you soon.
@georgewallace Would you've any suggestions for this query or does this need deep dive technically?

@snyder-riley-pfg Thanks for reaching out.  I am reaching out to the team to see what can be done about this.

@snyder-riley-pfg per update from @georgewallace and the feature team, we need to take a look at the backend logs to get to the bottom of this. Please raise a support ticket with Azure technical support using these steps.
If you don't have a support plan, please send mail to<EMAIL_ADDRESS>your subscription ID and a link to this thread (for context) and we will gladly assist you with raising a support ticket.
We will now close this request and look forward to your support request.
Cheers.


DAP logging: Allow sending tracing data to DAP client Debug Console

The mechanism of passing messages from the dap_server to the client via stderr is replaced with writing dap_server messages and tracing output to the DAP client's Debug Console, using the DAP Output event.

In addition to making message delivery more reliable, this also paves the way for a multi-session debugger, where each session can log their own messages to the corresponding client console.
Cleanup of messages relating to when PR #2331 changed the logging to be driven by log-file parameter.
To facilitate better testing, I took the liberty of downgrading some of our logging verbosity where calls such as Core::status were using tracing instrument spans with a default level of INFO (obviously caused a lot of noise).

I think it would be nice if we could figure out @Yatekii's difficulties logging probe-rs events to vscode.

As far as I know, there are two problems:

#2331 changed logging to depend on the --log-file command line parameter, but there was never any attempt to add support for this to the VSCode extension.  I am in the process of PR'ing that now.
The error message was not updated and so it sends the user looking for RUST_LOG when the code is not driven by that. This PR will fix that.

but we should probably address the expectations, too.

@bugadani Can you clarify what you mean by this please?

but we should probably address the expectations, too.

@bugadani Can you clarify what you mean by this please?

My (and Noah's and maybe more people's) expectation is that setting RUST_LOG will result in debug logs to be printed to Debug Console. The code currently hard-codes LogLevel::Error to stderr regardless of RUST_LOG. Should we add a third tracing subscriber that logs to stdout if the env variable is set?

but we should probably address the expectations, too.

@bugadani Can you clarify what you mean by this please?

My (and Noah's and maybe more people's) expectation is that setting RUST_LOG will result in debug logs to be printed to Debug Console. The code currently hard-codes LogLevel::Error to stderr regardless of RUST_LOG. Should we add a third tracing subscriber that logs to stdout if the env variable is set?

There are two tracing subscribers.

The stderr one which we need to pass essential errors to VSCode.
Whatever is set by RUST_LOG. It won't write that to Console Log, but it will write one of two things ...
a)  Log output will be written to: "/Users/the_rock/dev/log.txt" if the user uses the --log-file option.
b)  No logging data will be written because no log-file destination was specified. if the user uses the --log-dir option. I will fix this here
c) No logging data will be written because no log-file destination was specified. if neither the above are set.

Before the log to file was introduced, we used to log to the Debug Console. We can revert to that for (c) ... what do you think?

Before the log to file was introduced, we used to log to the Debug Console. We can revert to that for (c) ... what do you think?

I think that sounds reasonable, especially if we document that setting any of the options disables log-to-console

@bugadani If you want to manually test this during review, please use the VS Code changes from https://github.com/probe-rs/vscode/pull/94/.
probe-rs-debugger-0.23.0.vsix.zip

The implementation looks to be on the more-complex-than-necessary side at points, but it also seems to be working well, so thanks!

It took a lot of wrangling to get the tracing implementation to share the file it write to. They take ownership of anything you pass in as a impl Write. I started off thinking this will be simple, and then had to build out complexity to avoid ownership and reference and runtime access collisions. As always, I'd be happy to incorporate suggestions.

I'm not sure this change deserves about 15 PR's worth of changelog, though 😅

Haha ... you know me, I can get a little verbose. I will trim the changelog :)

@bugadani Thank you very much for taking the time to collaborate on this. I feel much better about the quality of this.


Use information schema tables in BigQuery

Feature
Feature description
BigQuery recently added support for an INFORMATION_SCHEMA in beta at the time of this writing.
When these tables become more mature (and we're confident they won't change in breaking ways) dbt should make use of them instead of using the BQ API directly. This will help keep things consistent across adapters, and will likely help us delete a whole bunch of code

@beckjake this should be closed by https://github.com/fishtown-analytics/dbt/pull/1881, yeah?

I think so!


In CardForm, onFormComplete exhibits different behavior on iOS vs Android

Describe the bug
Not totally sure this is a bug, but seems likely. On an iOS simulator, onFormComplete triggers only once CardForm has been completely filled out. On an Android emulator, onFormComplete triggers with each key press.
To Reproduce
Steps to reproduce the behavior:

Console.log something within onFormComplete on a CardForm component.
Run the app on iOS and Android.
Fill out the form and observe the console as you do.

Expected behavior
From the name of onFormComplete, I would expect it to function the way it does on iOS – triggering only once: when the form has been completely filled out. It's important because a button is enabled as a result of the form being complete and is enabled too soon on Android because of this.
Screenshots
My onFormComplete:
onFormComplete={(cardDetails) => {
        console.log('card details:', cardDetails);
        this.setState({ formValid: true });
}}

The output on Android after typing in the first 8 numbers of a cc (the fields say undefined until the form is actually complete, then the fields are populated):

The output on iOS after filling out the whole form:

Desktop

OS: Monterrey 12.2
Browser: Chrome
Version 103.0.5060.114

Virtual Devices
iOS:

Device: iPhone SE (1st generation) simulator
Version: 15.4

Android:

Device: Galaxy S21 emulator
Version: Android 12

Additional context
I am using version 0.16.0 of stripe-react-native. Thank you!

Hi! IIRC, this is a limitation of the native libraries we depend on. I think for your use case you should actually be checking the complete field in that callback rather than just enabling the button once the callback is fired. Does that work for you?

@charliecruzan-stripe Omg, yes! That's works great! Thank you!

no problem! happy to help


Adjust template URL

Currently clicking on the number of issues takes you to the non-function pre-gitlab link.
This updates to a gitlab link, although we would have to update the head branch each minor.

Sorry for the delayed feedback! I was on vacation for 2 weeks. We should try to find a way to automatically change the URL since it would be hard to keep this up to date. I would prefer removing the URL altogether temporarily given that it isn't working until we can figure out a way to create this link without requiring manual work.

I do agree, and not being a ruby developer, I didn't really try. I believe in json.rb we could parse the output of 'git remote set-head origin -a' or 'git remote show origin' to get the current HEAD branch, save that to data.json as a top level key and insert it into the template in cores.rb, but I will have to look up the syntax and methods needed to do that, but before I try, it does bring up an interesting question.
What do you want to do with this site when the D9 branch opens in a month or two?
Drop everyone to zero, and start counting again from the branch? Have separate lists for D8 and D9?  Just keep going and rebrand slightly to keep track of contributions to drupal 8+?


Feature request:Add config to enable a fixed address

I'm opening this issue because:
Though random appendix can be disabled in config,but the difference between "send" and "receive" URL makes it difficult to write in a ntc tag(two tags are needed).
After disabling in receive the URL is like http://<IP_ADDRESS>:233/receive/qrcp
But in send it likes http://<IP_ADDRESS>:233/send/qrcp
Dose it possible to add a config to make the URL same in receive and send?Like http://<IP_ADDRESS>:233/qrcp .This will be helpful for nfc trigger users.Thanks a lot.

[ ]  I have found a bug

I want to request a feature

[ ] I have a question

[ ] Other

My Go version is: (paste the output of go version and remember that qrcp requires at least version 1.8 of Go)

My GOPATH is set to: (paste the output of echo $GOPATH)

Hi @sky96111, thanks for requesting this feature! It requires some refactoring but it can be definitely done.
Cheers,
Claudio


armv8m: fix whitescan bugs

[Detail]
CWE476: All paths that lead to this null pointer comparison
already
dereference the pointer earlier
CWE570: An unsigned value can never be less than 0
[Verified Cases]
Build Pass: <py_engine_demo>
Test Pass:  <py_engine_demo>

感谢提交 Pull Requests！
Thanks for submitting a pull request.

start build

手动触发！
感谢 Pull Requests！
Thanks for submitting a pull request.

Security Check : 6f09b840c00e672541dfafeba998365146f7d05e

auto build success,number:71

autotest success,number:1137


Crash in render/fields/fields.rb with metanorma-ieee document

From https://github.com/metanorma/SWF-Corpus_and_IEEEP2874-D2/issues/24
Trace:
Metanorma XML Syntax: (XML Line 006288:254): character content of element "stage" invalid; must be equal to "approved", "draft", "superseded" or "withdrawn"
ruby/3.1.2/lib/ruby/gems/3.1.0/gems/relaton-render-0.5.12/lib/relaton/render/fields/fields.rb:112:in `role_inflect'
ruby/3.1.2/lib/ruby/gems/3.1.0/gems/relaton-render-0.5.12/lib/relaton/render/fields/fields.rb:36:in `role_fields_format'
ruby/3.1.2/lib/ruby/gems/3.1.0/gems/relaton-render-0.5.12/lib/relaton/render/fields/fields.rb:12:in `compound_fields_format'
ruby/3.1.2/lib/ruby/gems/3.1.0/gems/relaton-render-0.5.12/lib/relaton/render/general/render.rb:170:in `block in citations1'
ruby/3.1.2/lib/ruby/gems/3.1.0/gems/relaton-render-0.5.12/lib/relaton/render/general/render.rb:168:in `each'
ruby/3.1.2/lib/ruby/gems/3.1.0/gems/relaton-render-0.5.12/lib/relaton/render/general/render.rb:168:in `each_with_object'
ruby/3.1.2/lib/ruby/gems/3.1.0/gems/relaton-render-0.5.12/lib/relaton/render/general/render.rb:168:in `with_index'
ruby/3.1.2/lib/ruby/gems/3.1.0/gems/relaton-render-0.5.12/lib/relaton/render/general/render.rb:168:in `citations1'
ruby/3.1.2/lib/ruby/gems/3.1.0/gems/relaton-render-0.5.12/lib/relaton/render/general/render.rb:150:in `render_all'
ruby/3.1.2/lib/ruby/gems/3.1.0/gems/isodoc-2.5.10/lib/isodoc/presentation_function/refs.rb:28:in `references_render'
ruby/3.1.2/lib/ruby/gems/3.1.0/gems/metanorma-ieee-1.0.15/lib/isodoc/ieee/presentation_ref.rb:48:in `references_render'

The content of the document has not changed since Jan, so it's an implementation bug?

Potentially a missing plural of a new role like "Authoriser", but if so, that role should not be being surfaced to begin with. Also need to default to using descriptions instead of roles, when defined (outside of "editor", which is well-understood).

All IETF RFCs now contain <role type="authorizer" />. There are 2 instances of them in the document. We need to fix this ASAP. Thanks.

Cannot currently replicate: IEEE  P2874 generates correctly.

I have not updated the relevant code recently, so I don't understand why I can't replicate the crash. @ronaldtse please confirm with me steps you took to replicate, but I'm just compiling in metanorma p2876.adoc with latest libraries.

Whatever the issue is, it is NOT authorizer:
      def role_inflect(contribs, role)
        role.nil? || contribs.size.zero? ||
          %w(author publisher distributor
             authorizer).include?(role) and return nil
        number = contribs.size > 1 ? "pl" : "sg"
        @r.i18n.get[role][number] || role
      end

I suspect my Relaton cache and Reese's are not in sync: clearing relaton...

I've replicated the issue now. I have a more secure version of the code about, but curious to see what role is triggering it...

It's "Chair".
I was about to get all angry and complain about Chair being put into the role, but I'm delighted to find that
(a) Chair is appearing in Description, not Role, as I had requested, for OASIS MQTT Version 5.0
(b) I am already doing what I had said I would do, prioritise descriptions over roles where available.
Fixing in relaton-render.

So if it doesn't find a plural in the i18n file for the role or description, it will use the singular it is given.


error: The method 'localToGlobal' isn't defined for the type 'RenderObject'

I want to get the offset of a StatefulWidget, as I need it to set the positioning of an OverlayEntry widget. I have tried to get the offset using the following snippets:
final renderBox = context.findRenderObject();
final offset = renderBox.localToGlobal(Offset.zero);

final _key = GlobalKey();
/* ----------Some code------------- */
final renderBox = _key.currentContext.findRenderObject();
final offset = renderBox.localToGlobal(Offset.zero);

But each time I do either of these, I get this error message from the Dart Analyzer:
The method 'localToGlobal' isn't defined for the type 'RenderObject'.
Try correcting the name to the name of an existing method, or defining a method named 'localToGlobal'.

This is the version of Flutter that I am currently using:
[√] Flutter (Channel stable, v1.17.5, on Microsoft Windows [Version 10.0.18363.900], locale en-NG)
Flutter 1.17.5 • channel stable • https://github.com/flutter/flutter.git
Framework • revision 8af6b2f038 (8 days ago) • 2020-06-30 12:53:55 -0700
Engine • revision ee76268252
Tools • Dart 2.8.4

Hi @samueladekunle
Please provide object type since keeping  dynamic wouldn't allow localToGlobal to know it's only RenderBox we wanna use and localToGlobal on it
Please try this code sample

Code Sample
import 'package:flutter/material.dart';

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

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Material App',
      theme: ThemeData.dark(),
      home: Home(),
    );
  }
}

class Home extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Material App Bar'),
      ),
      body: Center(
        child: Container(
          child: Text('Hello World!'),
        ),
      ),
      floatingActionButton: FloatingActionButton.extended(
        label: Text('print localToGlobal'),
        icon: Icon(Icons.adb),
        onPressed: () {
          final RenderBox renderBox = context.findRenderObject();
          final offset = renderBox.localToGlobal(Offset.zero);
          print(offset);
        },
      ),
    );
  }
}

flutter doctor -v
[✓] Flutter (Channel dev, 1.20.0-3.0.pre, on Mac OS X 10.15.5 19F101, locale
    en-GB)
    • Flutter version 1.20.0-3.0.pre at /Users/taha/Code/flutter_dev
    • Framework revision 0af027f805 (5 days ago), 2020-07-04 12:19:20 -0700
    • Engine revision a751393804
    • Dart version 2.9.0 (build 2.9.0-20.0.dev 22da8934ac)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.0)
    • Android SDK at /Users/taha/Code/sdk
    • Platform android-30, build-tools 30.0.0
    • ANDROID_HOME = /Users/taha/Code/sdk
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

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

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

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 47.1.2
    • Dart plugin version 193.7361
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6222593)

[✓] VS Code (version 1.46.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.12.1

[✓] Connected device (4 available)
    • SM M305F (mobile)      • 32003c30dc19668f          • android-arm64  •
      Android 10 (API 29)
    • Taha’s iPhone (mobile) • 00008020-001059882212002E • ios            • iOS
      13.5.1
    • Web Server (web)       • web-server                • web-javascript •
      Flutter Tools
    • Chrome (web)           • chrome                    • web-javascript •
      Google Chrome 83.0.4103.116

• No issues found!

Hope this helps
Thank you

Hello @TahaTesser, yes that works. I somehow assumed that findRenderObject, returns a RenderBox, that was a wrong assumption on my part. Thank you for taking the time to lend an helping hand, it was really helpful.

After migrating to null-safety, I keep getting the following error:
The method 'localToGlobal' isn't defined for the type 'RenderObject'.
Try correcting the name to the name of an existing method, or defining a method named 'localToGlobal'

Here is the code snippet that I am using. It used to work before migrating to null-safety.
findButton() {
    final RenderObject? renderBox = _key.currentContext!.findRenderObject();
    _buttonPosition = renderBox!.localToGlobal(Offset.zero);
  }

@taiyrbegeyev
This issue is closed and it's not related to null safety
please file a new issue with the exact description of what happens, logs, and the output of flutter doctor -v.

After migrating to null-safety, I keep getting the following error:
The method 'localToGlobal' isn't defined for the type 'RenderObject'.
Try correcting the name to the name of an existing method, or defining a method named 'localToGlobal'

Here is the code snippet that I am using. It used to work before migrating to null-safety.
findButton() {
    final RenderObject? renderBox = _key.currentContext!.findRenderObject();
    _buttonPosition = renderBox!.localToGlobal(Offset.zero);
  }

Maybe  localtoGlobal  parent is RenderBox, so you can change the line to
final container = _containerKey.currentContext!.findRenderObject() as RenderBox;
container.localToGlobal(Offset.zero);


Boosting: Update Pallet Readme Documentation

Verify that the human readable documentation is updated with the extrinsics, state queries, and RPCs as needed.

https://github.com/frequency-chain/frequency/blob/main/pallets/capacity/README.md

Up to date in the ProviderBoost branch: https://github.com/frequency-chain/frequency/pull/1694/files#diff-e505645c23b7d2fd2b3eeac7f66351cb2fae4dcb38363a40d8526c7c49108597


Specify storage region in object storage benchmark

Let the user specify which storage region to use in the object storage
benchmark.

@yuyantingzero @stfeng Please take a look.

@stfeng @yuyantingzero I think I've fixed all of the issues you found. Please take a look.

I added some comments. One additional question here: did you test and verify the new code? And what was the test matrix?

I think I've responded to all of your comments. I'm waiting for your decision on whether to move BuildCommandString() outside of its containing function, but otherwise, I've addressed everything.
I forgot to mention before how I tested this. I did two kinds of tests. First, I tested each benchmark using GCP as the provider, to verify that they still worked after the BuildCommandString() refactor. Then I tested each region in AWS S3 to verify that the region-to-endpoint mapping worked (I did them all in parallel. I believe two of the processes hung, but I think that is because I was out of quota rather than because there was a bug that only appeared in two regions).
I think I also tested GCP and Azure storage just to make sure it worked, but I'm not sure because it was a while ago. In any case, I will do more testing with the updated code before I push it.

Talked with Noah about this. Looks like we need some more testing here for this feature, specifically: 1) validate that bucket metadata shows the bucket is created in the region as expected. 2) For AWS S3 where we need to connect to a specific endpoint given a region, validate (via tcpdump) that the connect request is actually sent to the expected endpoint.
It will take some time to do such testing, which will likely happen at a later time (after Noah finishes some other higher priority work).
Once testing is done, code review will resume.

I did some more testing on this. I have observed by watching the consoles/portals that this creates buckets in the requested regions for AWS, Azure, and GCP. I also have a tcpdump file that shows the client connecting to s3-us-west-2.amazonaws.com when using a bucket in the us-west-2 region, as desired. Would you like me to check other regions, or is this enough verification?

Yep, the verification looks good to me! Once you update the code with merges and incorporate existing CR comments, please ping me, I will take another look.
Thanks.

@stfeng I updated with all of the comments above and rebased on master. Please take a look.

@stfeng I think I've addressed all of your concerns. Please take a look.


Please add an option to hide last page

If the list is very large, old records are obsoleted usually, I think it is necessary to hide the last page to avoid user to click.

A pull request would be very much appreciated

No response in more than a year, closing


[Orion] Orion RC support

Extension
https://www.raycast.com/plonq/orion
Description
Extension only works with public builds of Orion.
Can a setting be added to switch between Orion and Orion RC?
Steps To Reproduce
No response
Current Behaviour
No response
Expected Behaviour
No response

I'll have a look in the next few days

@thebitstick I'm not sure where to download Orion RC. Can you confirm that if there was an option to specify the path to it, that that would be enough? For reference, the path the extension currently uses is /Library/Application Support/Orion.

The path for Orion RC profile is the same as Orion except with RC added:
/Users/thebitstick/Library/Application Support/Orion RC/Defaults
The Search Browser History extension has Orion support with the ability to enter a custom profile directory. It works with adding RC.

@thebitstick If you are able, can you test the update: https://github.com/raycast/extensions/pull/4624 (I am unable to test as I don't currently have access to Orion RC).


"Bee" Library build fail Windows.Foundation Android

Describe the bug
Hi,
I recently tried to switch a MRTK 2.8 HoloLens project to Android for a MagicLeap build, meaning switching build config from UWP to Android.
Thing is, whenever I try to build, I get this error :
Building Library\Bee\artifacts\Android\ManagedStripped failed with output:
C:\Program Files\Unity\Hub\Editor\2022.3.7f1\Editor\Data\il2cpp\build\deploy\UnityLinker.exe @Library\Bee\artifacts\rsp\3806026182830091584.rsp
Fatal error in Unity CIL Linker
Mono.Cecil.AssemblyResolutionException: Failed to resolve assembly: 'Windows.Foundation.UniversalApiContract, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null'
   at Unity.IL2CPP.Common.MissingMethodStubber.GetTypeModule(TypeReference type, IEnumerable`1 assemblies)
   at Unity.Linker.Steps.AddUnresolvedStubsStep.MarkAssemblyOfType(UnityLinkContext context, TypeReference type)
   at Unity.Linker.Steps.Marking.UnresolvedStubMarking.HandleUnresolvedType(TypeReference reference)
   at Unity.Linker.Steps.UnityMarkStep.HandleUnresolvedType(TypeReference reference)
   at Mono.Linker.Steps.MarkStep.MarkType(TypeReference reference, DependencyInfo reason, IMemberDefinition sourceLocationMember)
   at Mono.Linker.Steps.MarkStep.MarkField(FieldDefinition field, DependencyInfo& reason)
   at Mono.Linker.Steps.MarkStep.MarkFields(TypeDefinition type, Boolean includeStatic, DependencyInfo& reason, Boolean markBackingFieldsOnlyIfPropertyMarked)
   at Mono.Linker.Steps.MarkStep.ApplyPreserveInfo(TypeDefinition type)
   at Mono.Linker.Steps.MarkStep.MarkType(TypeReference reference, DependencyInfo reason, IMemberDefinition sourceLocationMember)
   at Mono.Linker.Steps.MarkStep.MarkType(TypeReference reference, DependencyInfo reason, IMemberDefinition sourceLocationMember)
   at Mono.Linker.Steps.MarkStep.MarkField(FieldDefinition field, DependencyInfo& reason)
   at Mono.Linker.Steps.MarkStep.MarkEntireTypeInternal(TypeDefinition type, Boolean includeBaseTypes, DependencyInfo& reason, IMemberDefinition sourceLocationMember, HashSet`1 typesAlreadyVisited)
   at Mono.Linker.Steps.MarkStep.MarkEntireTypeInternal(TypeDefinition type, Boolean includeBaseTypes, DependencyInfo& reason, IMemberDefinition sourceLocationMember, HashSet`1 typesAlreadyVisited)
   at Mono.Linker.Steps.MarkStep.MarkEntireAssembly(AssemblyDefinition assembly)
   at Mono.Linker.Steps.MarkStep.InitializeAssembly(AssemblyDefinition assembly)
   at Unity.Linker.Steps.UnityMarkStep.InitializeAssembly(AssemblyDefinition assembly)
   at Mono.Linker.Steps.MarkStep.Initialize()
   at Unity.Linker.Steps.UnityMarkStep.Process(LinkContext context)
   at Unity.Linker.UnityPipeline.ProcessStep(LinkContext context, IStep step)
   at Mono.Linker.Pipeline.Process(LinkContext context)
   at Unity.Linker.UnityDriver.UnityRun(UnityLinkContext context, UnityPipeline p, LinkRequest linkerOptions, TinyProfiler2 tinyProfiler, ILogger customLogger)
   at Unity.Linker.UnityDriver.RunDriverWithoutErrorHandling(TinyProfiler2 tinyProfiler, ILogger customLogger)
   at Unity.Linker.UnityDriver.RunDriverWithoutErrorHandling()
   at Unity.Linker.UnityDriver.RunDriver()

UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&)

I know this means someting somewhere is referencing a WinRT or WinMD namespace, but everything in my code that does is conditionned by "#if WINDOWS_UWP ; #if ENABLE_WINMD_SUPPORT ; #if !UNITY_EDITOR && UNITY_WSA_10_0 ; #if NETFX_CORE ; #if UNITY_EDITOR_WIN || UNITY_STANDALONE_WIN ; #if (UNITY_WSA && !UNITY_EDITOR)..."
I tried to check into the .rsp file to see if Windows.Foundation is referenced but it isn't, and the only topic I can find on internet that is close is talking about the Burst package that fixed it above v1.7.x -> I have Burst (used by gltFast), but the 1.8.3 version that does not have the issue any more....
Anyone came across this problem before ?
Thanks
Screenshots

Your setup (please complete the following information)

Unity Version 2022.3.7f1
MRTK Version 2.8

Target platform (please complete the following information)

MagicLeap 2

Hello @SashelI,
This repository is tracking work on MRTK3. For MRTK 2.x support / issues, please use https://github.com/microsoft/MixedRealityToolkit-Unity.
Thank you!

@SashelI we recommend you move to MRTK3. Magic Leap is supporting MRTK3, and can assist with issues related to that platform.

Hi,
We currently can't afford to move to MRTK 3 as it is a full product and not a new project

Hey @SashelI! Did you find an answer to this?

Hey @SashelI! Did you find an answer to this?

Hey, this was a while ago, but I think this was one of these :

I had the dlls of "Windows.ApiContract" inside the project, but not installed with Nuget package manager

Or, the dll was referenced in a "link" file but actually never used so I could remove it safely

Sorry I can't remember the exact solution, but after creating a new project from scratch and fighting with dll problems I managed to solve this.

Hey for anyone else struggling with this I also seemed to fix it by deleting the Library folder and restarting Unity :)
I've had to do it a few times since then but it always seems to work. I've been having battles with low ram usage while building in Unity despite having 32gb of ram. Closing Chrome, Steam, etc. while building has fixed this for me.


feat: add helm execution gradle task: HelmInstallChartTask

Description
This pull request changes the following:

settings-plugins
fullstack-examples becomes a separate gradle project in order to leverage the fullstack-gradle-plugin
HelmInstallChartTask
added example usages of HelmInstallChartTask in fullstack-examples project

Notes:

fullstack-examples now has to be opened as a separate IntelliJ project in order for it to load in IntelliJ
running fullstack-examples from the command line:

cd fullstack-examples
../gradlew clean build
../gradlew spotlessApply
../gradlew helmInstallNginxChart
helm uninstall nginx-release --namespace nginx-ns

PR Walkthrough (21 minutes): https://www.loom.com/share/01ec31f227af4b6c8debbdaa6f5faf49?sid=70205d86-fe5c-43db-98e9-cd6b1ec22007
Related Issues

Relates to #288
Closes #322
depends on #365
depends on #366

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

GitHub release
npm package (@latest dist-tag)

Your semantic-release bot :package::rocket:


Feature Request - Data Table: Row Expansion

The amount of data in each field of a data row can vary widely. Fields can also contain multi-line values. However, the data displayed in the table cells is necessarily limited in length.

A very useful mechanism for displaying large data value is row expansion
This can be done by clicking in a special expansion column to cause an application-defined expansion panel to be shown
This allows each data field to be displayed on a separate line and for fields that may contain large amounts of data to be displayed in a text area that supports both scrolling and expansion
This also allows arbitrary user-defined contents to be displayed in the expansion panel

The following screen capture show how this feature works in the current release of Studio Lite using the PrimeNg Data Table.

The PrimeNG data table supports this feature using an . This is used in the current release of Studio Lite as follows.
The first column defines the attribute expander="true" and the  defines the content to be displayed when the expansion is activated.

This feature could also be implemented as an overlay card. But the inline expansion is a much better UX.

something similar can be used today if you use a dialog instead of the row expansion

Agreed. But I do think the row expansion makes a better UX. This one is lower priority for that reason.
From: Kyle Ledbetter <notifications<EMAIL_ADDRESS>Reply-To: Teradata/covalent <reply<EMAIL_ADDRESS>Date: Wednesday, July 5, 2017 at 4:21 PM
To: Teradata/covalent <covalent<EMAIL_ADDRESS>Cc: Jack Dundon <jack.dundon<EMAIL_ADDRESS>Author <author<EMAIL_ADDRESS>Subject: Re: [Teradata/covalent] Feature Request - Data Table: Row Expansion (#744)
something similar can be used today if you use a dialog instead of the row expansion
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/Teradata/covalent/issues/744#issuecomment-313252998, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AYu_EXWZYH947KU2XJClsVV9FRvitLSHks5sLBp9gaJpZM4OO3ow.

Is master-detail supported by the datatable?

Really need this. Or even a way to insert another row with the following syntax.
<td-data-table
    [data]="filteredData"
    [columns]="columns"
    [selectable]="true">

Closing this as we will not be support td-data-table in future versions. please use the data table provide by angular material.
https://material.angular.io/components/table/overview

Closing this as we will not be support td-data-table in future versions. please use the data table provide by angular material.
https://material.angular.io/components/table/overview


Non-existant file still gets its success callback called

The following prints out "shouldnthappen"
$script('doesntExist.js', function() {
  console.log('shouldnthappen')
}, function(notFound) {
    console.log(notFound)
})

This makes me think script.js isn't in any way production ready.

+1 just read this now, pls update README to indicate callback will fire in the event of failure to load the script, been searching for hours for this answer

@kzap - I believe this behavior exists in script.js because older browsers don't support the onerror callback. Here's a script loader for modern browsers (IE9+) that has the same API as script.js and adds support for success/fail callbacks https://github.com/muicss/loadjs

@amorey the behaviour is fine, the documentation could be more verbose :)


Update zstash error reporting

https://github.com/E3SM-Project/zstash/blob/master/zstash/utils.py#L42 just raises an exception without saying why the exception occurred. Update this and other exceptions as necessary to give more specifics.

It might also be good to check if the command includes hsi and if so specifically tell the user to be sure they logged into HSI at some point.


Getting started: start failed!

In the very first try user will fail trying to run even simplistic app! In "Getting Started" we try to build library and get this:
C:\Users...\dub\packages\dlangui-master\src\dlangui\core\files.d(264,22): Error: cannot implicitly convert expression (lastSlash + 1LU) of type ulong to uint
C:\Users...\dub\packages\dlangui-master\src\dlangui\core\files.d(354,17): Error: cannot implicitly convert expression (start) of type ulong to uint
OK, no problem to fix unnecessary ulong type and put uint. But when we try to use Button with handler:
// assign Ok button onClick handler: show content of editor
btn1.onClickListener = delegate(Widget src) {
    window.showMessageBox("Button btn1 pressed"d, "Editor content:"d ~ edit1.text);
    return true;
};

....we get smashed by absolutely stupid error:
Error: no property 'onClickListener' for type 'dlangui.widgets.controls.Button'

And this is FIRST experience user get from dlangui?! No way, man!

C:\Users...\dub\packages\dlangui-master\src\dlangui\core\files.d(264,22): Error: cannot implicitly convert expression (lastSlash + 1LU) of type ulong to uint
C:\Users...\dub\packages\dlangui-master\src\dlangui\core\files.d(354,17): Error: cannot implicitly convert expression (start) of type ulong to uint

Are you on x86 system? Looks like it might have been caused by #128 PR.

I'm on Win7 x64. It's strange to use so huge type to address file path! (and nobody got compile error??)

Just tried and got the same compile errors for v0.7.29 and v0.7.28.
v0.7.27 compiles without problems.

Sorry, my fault with types, I don't work on Windows.
onClickListener is an old name, use click instead. Need to update docs accordingly.

Many of signal names were changed to shorter ones.
Need to update documentation.
Where is Getting Started doc located?

https://github.com/buggins/dlangui/wiki/Getting-Started

Fixed both Wiki and dlangui-examples code,


Fix #1597

Change the type from string to int for GitVersion properties "PreReleaseNumber" and "CommitsSinceVersionSource"

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. We will now review your pull request.
Thanks,
.NET Foundation Pull Request Bot

@WebDucer your changes have been merged, thanks for your contribution 👍


refactor: set default value for keep_trailing_newline more idiomatically

Just a minor stylistic refactoring.

Just a little nitpicking: this commit should have been labeled as style:, to avoid displaying it in the changelog. No big deal, just so you know for next times. Thank you!

Thanks for bringing this up! I'm still struggling with conventional commits in some cases like this. The way I understand guides like https://gist.github.com/qoomon/5dfcdf8eec66a051ecd85625518cfd13, this should be a (very simple) refactoring, but I agree it's hardly worth an entry in the changelog. Isn't style: only for stylistic changes?

I agree with @sisp's sentiment, sometimes it's not clear, but I exactly do like @yajo and eventually decide whether refactor and chore/ci/style depending on whether the change should appear in the changelog :relaxed:

The ones that appear in the changelog are: feat, fix, refactor, perf. The rest won't appear. Ah, and those with the BREAKING CHANGE: trailer.
More details here: https://github.com/commitizen-tools/commitizen/blob/36cfcab746fd9a5c1bc495332fc3dcd11db967ae/commitizen/cz/conventional_commits/conventional_commits.py#L34-L40
So yes, the question is: should this appear in the changelog? If not, use other marker.

Okay, got it. 👍