(iso4) Make sure the appropriate error message is returned when creating a token while authentication is disabled

Description
#3900 for the iso4 branch
Self Check:
Strike through any lines that are not applicable (~~line~~) then check the box

[x] Attached issue to pull request
[x] Changelog entry
[x] Type annotations are present
[x] Code is clear and sufficiently documented
[x] No (preventable) type errors (check using make mypy or make mypy-diff)
[x] Sufficient test cases (reproduces the bug/tests the requested feature)
[x] Correct, in line with design
[x] End user documentation is included or an issue is created for end-user documentation (add ref to issue here: )

Reviewer Checklist:

[ ] Sufficient test cases (reproduces the bug/tests the requested feature)
[ ] Code is clear and sufficiently documented
[ ] Correct, in line with design

Processing this pull request

Merged into branches iso4 in 7926bc74e12cd03456f15f0e8da807fb150e388c


Add support for mhlo.dynamic-slice/dynamic-update-slice

They can be lowered to subtensor or subtensor_insert, and be flow.tensor.update

I just encountered this in a real model I'm trying to get working. Should I assume you're looking at it?

Yes, please. I already have a ongoing patch. (still have few comments to address)

mhlo.dynamic-slice is added in https://github.com/tensorflow/mlir-hlo/commit/a3fc99efe0af66da3eae469e30685ed32b3b6877
Do you want me to prioritize the support of dynamic-update-slice? It should be simple; it is not a blocker to me. So I plan to hold it off a bit.

Not currently blocking me, so proceed at the pace that makes sense. Thanks for taking care of dynamic-slice :-)

This should work now right? If so please close it?

dynamic-update-slice is not supported, I should file another issue for it.


upload logs if test fails

What does this PR do?
Complete the test workflow. Transfer the failure logs to html format files and upload to a tecent cloud instance for debugging.
I'll set up a fileserver there afterwards for better view.

I first try to use pem file for ssh verification, but failed when decrypt the key. see https://github.com/hanzezhenalex/raft/pull/9/commits/d5bf3373998e2418d33264ecbe2694ea4e9a3b3e
For now I'm using username/password.


[Bug]: Pipeline referenced in Pipeline Log or Worflow Log entry not exported to HOP server

Apache Hop version?
2.6.0 (2023-09-12 10.14.56)
Java version?
<IP_ADDRESS>
Operating system
Linux
What happened?
Problem with remote server and pipeline/workflow logging.
I have created logging pipelines for workflow logging as well as pipeline logging.
I have also created Pipeline Log and Workflow Log metadata objects. They refer to the corresponding logging pipelines.
Logging works just fine when running locally on the workstation.
But when I run workflows or pipeline on a remote HOP server,  I get the warning message
WARNING: The Workflow Log pipeline file '....pg_workflow_log_pipeline.hpl' couldn't be found to execute.
And the corresponding warning for pipeline logging.
In the run configuration for remote server, I have checked "Export linked resource to server".
Issue Priority
Priority: 1
Issue Component
Component: Hop Server

I am not sure about the issue component, but selected Hop Server from the user perspective.

.take-issue

We'd need some sort of export feature for all metadata which references pipelines or workflows.
The metadata would need to be changed to match the exported reference.


docs for compliance server callbacks

https://github.com/stellar/bridge-server/blob/master/readme_compliance.md#callbacks  this section doesn't exist.

Fixed in https://github.com/stellar/bridge-server/commit/06f0268c1f1522356f3b37eeede96c406b0234b3


Error while running example vue app with --production or build

Steps:

Create an example app  with  meteor create --vue nfc-vue3
Run with meteor --production or build with meteor build --architecture=os.linux.x86_64 --server-only ./bundle
Error:

WARNING: The output directory is under your source tree.
         Your generated files may get interpreted as source code!
         Consider building into a different directory instead
         meteor build ../output

⚡ Building packages to make them available to export analyzer...
⚡ Packages built (24047.86ms)
⚡ Building with Vite...
vite v3.2.5 building for production...
transforming...
✓ 33 modules transformed.
rendering chunks...
node_modules/.vite-meteor/dist/meteor-entry.js   0.02 KiB / gzip: 0.04 KiB
node_modules/.vite-meteor/dist/About.js          0.59 KiB / gzip: 0.33 KiB
node_modules/.vite-meteor/dist/main.js           285.62 KiB / gzip: 67.41 KiB

⚡ Build successful (1835.6ms)
Errors prevented bundling:
While minifying app code:
packages/minifyStdJS/plugin/minify-js.js:49:25: terser minification error (SyntaxError:"Import" statement may only appear at the top level)
Source file: client/main.js  (2:0)
Line content: import "./vite/meteor-entry.js"

at maybeThrowMinifyErrorBySourceFile (packages/minifyStdJS/plugin/minify-js.js:49:25)
at packages/minifyStdJS/plugin/minify-js.js:77:11
at Array.forEach (<anonymous>)
at MeteorMinifier.processFilesForBundle (packages/minifyStdJS/plugin/minify-js.js:66:11)

While minifying app stylesheet:
app/client/main.css: While loading postcss config: Must use import to load ES Module: /Users/wayneuong/Downloads/nfc-vue3/postcss.config.js
require() of ES modules is not supported.
require() of /Users/wayneuong/Downloads/nfc-vue3/postcss.config.js from /Users/wayneuong/Downloads/nfc-vue3/node_modules/lilconfig/dist/index.js is an ES module file as it is a .js file whose nearest parent package.json
contains "type": "module" which defines all .js files in that package scope as ES modules.
Instead rename postcss.config.js to end in .cjs, change the requiring code to use import(), or remove "type": "module" from /Users/wayneuong/Downloads/nfc-vue3/package.json.

While minifying app code:
packages/minifyStdJS/plugin/minify-js.js:49:25: terser minification error (SyntaxError:"Import" statement may only appear at the top level)
Source file: client/main.js  (2:0)
Line content: import "./vite/meteor-entry.js"

at maybeThrowMinifyErrorBySourceFile (packages/minifyStdJS/plugin/minify-js.js:49:25)
at packages/minifyStdJS/plugin/minify-js.js:77:11
at Array.forEach (<anonymous>)
at MeteorMinifier.processFilesForBundle (packages/minifyStdJS/plugin/minify-js.js:66:11)

While minifying app stylesheet:
app/client/main.css: While loading postcss config: Must use import to load ES Module: /Users/wayneuong/Downloads/nfc-vue3/postcss.config.js
require() of ES modules is not supported.
require() of /Users/wayneuong/Downloads/nfc-vue3/postcss.config.js from /Users/wayneuong/Downloads/nfc-vue3/node_modules/lilconfig/dist/index.js is an ES module file as it is a .js file whose nearest parent package.json
contains "type": "module" which defines all .js files in that package scope as ES modules.
Instead rename postcss.config.js to end in .cjs, change the requiring code to use import(), or remove "type": "module" from /Users/wayneuong/Downloads/nfc-vue3/package.json.

Update: according to this forum post not using dynamic import of components solved one of the issues. However, these errors remain:
Warning: The --production flag should only be used to simulate production bundling for testing purposes. Use
meteor build to create a bundle for production deployment. See: https://guide.meteor.com/deployment.html
[[[[[ ~/Downloads/nfc-vue3 ]]]]]

=> Started proxy.
=> Started HMR server.
⚡ Building packages to make them available to export analyzer...
⚡ Packages built (23707.55ms)
⚡ Building with Vite...
vite v3.2.5 building for production...
transforming...
✓ 33 modules transformed.
rendering chunks...
node_modules/.vite-meteor/dist/meteor-entry.js   295.17 KiB / gzip: 69.45 KiB

⚡ Build successful (2016.09ms)
=> Started MongoDB.
=> Errors prevented startup:

   While minifying app stylesheet:
   app/client/main.css: While loading postcss config: Must use import to load ES Module:
   /Users/wayneuong/Downloads/nfc-vue3/postcss.config.js
   require() of ES modules is not supported.
   require() of /Users/wayneuong/Downloads/nfc-vue3/postcss.config.js from
   /Users/wayneuong/Downloads/nfc-vue3/node_modules/lilconfig/dist/index.js is an ES module file as it is a
   .js file whose nearest parent package.json contains "type": "module" which defines all .js files in that
   package scope as ES modules.
   Instead rename postcss.config.js to end in .cjs, change the requiring code to use import(), or remove
   "type": "module" from /Users/wayneuong/Downloads/nfc-vue3/package.json.

   While minifying app stylesheet:
   app/client/main.css: While loading postcss config: Must use import to load ES Module:
   /Users/wayneuong/Downloads/nfc-vue3/postcss.config.js
   require() of ES modules is not supported.
   require() of /Users/wayneuong/Downloads/nfc-vue3/postcss.config.js from
   /Users/wayneuong/Downloads/nfc-vue3/node_modules/lilconfig/dist/index.js is an ES module file as it is a
   .js file whose nearest parent package.json contains "type": "module" which defines all .js files in that
   package scope as ES modules.
   Instead rename postcss.config.js to end in .cjs, change the requiring code to use import(), or remove
   "type": "module" from /Users/wayneuong/Downloads/nfc-vue3/package.json.

=> Your application has errors. Waiting for file change.
=> Modified -- restarting.
=> Errors prevented startup:

   While minifying app stylesheet:
   app/client/main.css: While loading postcss config: Must use import to load ES Module:
   /Users/wayneuong/Downloads/nfc-vue3/postcss.config.js
   require() of ES modules is not supported.
   require() of /Users/wayneuong/Downloads/nfc-vue3/postcss.config.js from
   /Users/wayneuong/Downloads/nfc-vue3/node_modules/lilconfig/dist/index.js is an ES module file as it is a
   .js file whose nearest parent package.json contains "type": "module" which defines all .js files in that
   package scope as ES modules.
   Instead rename postcss.config.js to end in .cjs, change the requiring code to use import(), or remove
   "type": "module" from /Users/wayneuong/Downloads/nfc-vue3/package.json.

=> Your application has errors. Waiting for file change.

Guys I’m facing the same problems in production and I’m totally blocked! Any help please?

Just re-opening this one for the moment as we haven't quite yet gotten the latest changes into the official package.


SPIKE - Dropdown alternatives

This is a draft PR to demonstrate a spike result.
I investigated dropdown alternatives to solve issues with how the dropdown is positioned, specifically related to clipping contexts etc.:

Popup API is the most browser-native approach, but it's still experimental, doesn't support anchors yet, etc

It's available as an experimental feature on Chrome, and as a polyfill, but neither support anchors

Popper works well with the strategy: 'fixed' option, displaying the dropdown on top of everything using position: fixed

It's a widely used library, e.g. in Material-UI

Floating-UI seems almost exactly equivalent to Popper, with a slightly different "middleware" philosophy

If you run this locally, the alternatives will be viewable at:
http://localhost:8000/components/dropdown/demo/dropdown-alternatives.html
Rally: https://rally1.rallydev.com/#/?detail=/userstory/663397013693&fdp=true

Videos:
Note: The videos below show Popper, but Floating-UI has similar results.
Main popper usage:
https://user-images.githubusercontent.com/8449639/197071595-23c6c712-e710-406c-8b0d-13c85ac3276a.mp4
Flipping at viewport boundaries:
https://user-images.githubusercontent.com/8449639/197071621-9b129a60-6afd-4978-b66a-a6233ac83ad2.mp4
Clean scrolling when using placement=right:
https://user-images.githubusercontent.com/8449639/197071611-51b0825f-7bb3-4175-98f6-948b1d532ad9.mp4

Just a clarification - The Popup API is in origin trial currently, which means that it is available without experimental flags if one registers their origin to trial and adds the registration token to their pages. I'm not suggesting we do that, but the origin trials are intentionally time-limited, and after which the feature is generally released not long after assuming no major changes are necessary.
When I follow the Popper link to GitHub, it takes me to the Floating-UI repo. I get the impression Floating-UI is lower level, and the most recent version of Popper uses it.  I think we should have more discussion if we're thinking of adopting either of these.

Floating-UI is lower level, and the most recent version of Popper uses it

Yep that was the feeling I got when playing with them, they felt very equivalent (though Popper was easier to use). And you're right, that's confirmed on the repo: "Popper is now Floating UI!"

The Popup API is in origin trial currently

Yeah, thanks for the clarification. I still think that without any anchoring logic, the only thing the Popup API buys over position: fixed is not having to mess with z-index - though it may be worth it just for that. It's probably possible to combine Popup API with one of these libraries.

Chatted with Erik about this PR - we have the branch and all the details nicely summarized in Rally. Closing since we don'y need the open PR.


Exception in thread "main" java.lang.NullPointerException

Hi Qowyn,
Thanks for all the effort you put into this.
I'm having a problem with this working with my server save file. It worked fine with an SP save with two tamed dinos.
Server file size is 225 MB. There's a few mods installed, but none of them modify dinos in any way. Here they are: http://steamcommunity.com/profiles/76561198053278697/myworkshopfiles/?browsefilter=myfavorites
D:\Downloads\ark-tools>java -jar ark-tools.jar tamed TheIsland.ark dinos Exception in thread "main" java.lang.NullPointerException         at qowyn.ark.properties.PropertyReader.readProperty(PropertyReader.java:45)         at qowyn.ark.structs.StructPropertyList.<init>(StructPropertyList.java:27)         at qowyn.ark.arrays.ArkArrayStruct.<init>(ArkArrayStruct.java:26)         at qowyn.ark.arrays.ArkArrayReader.read(ArkArrayReader.java:32)         at qowyn.ark.properties.PropertyArray.<init>(PropertyArray.java:23)         at qowyn.ark.properties.PropertyReader.readProperty(PropertyReader.java:59)         at qowyn.ark.GameObject.loadProperties(GameObject.java:335)         at qowyn.ark.ArkSavegame.readBinaryObjectProperties(ArkSavegame.java:222)         at qowyn.ark.ArkSavegame.readBinary(ArkSavegame.java:129)         at qowyn.ark.ArkSavegame.<init>(ArkSavegame.java:60)         at qowyn.ark.ArkSavegame.<init>(ArkSavegame.java:46)         at qowyn.ark.tools.AnimalListCommands.tamed(AnimalListCommands.java:78)         at qowyn.ark.tools.App.main(App.java:30)
Also posted this in the survivetheark.com thread

Same error but file size is only 48mb, also have mods installed on server though

Uploaded ark-tools-issue-1.zip which might make your savegames processable. Would really like to take a look at one of those savegames.
Also a savegame with 225MB and the new format seems huge. I'd like to do some performance testing with that because i had disabled some code that potentially increases performance for large saves.

The server (PvE) has been around since July (or late June) 2015; I clean it weekly, but yea... Heard from one server owner that no matter what he did, saves would eventually become bloated and only wipes could fix that, /shrug. Maybe there's piles of useless data in it.
Gladly sharing the save:
https://mega.nz/#!cE9ECZJQ!kp7FkDmh7gVYiwwpnxSt1wl5Png3YTGJx0BdRobYbIA
The new upload worked much better! Got some warnings below, but it pulled a large number of dinos from the file.
D:\Downloads\ark-tools\ark-tools-issue-1>java -jar ark-tools.jar tamed TheIsland.ark dinos Found invalid nametable index -11064320 at 3379d36 Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -8519474 at 337a05c Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -8519474 at 35a7e73 Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -14463232 at 3f05ed0 Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -14463232 at 41a8bba Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -3031808 at 41a8ed0 Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -16711936 at 43d038d Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -14463232 at 43d06b8 Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -3031808 at 43d09de Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -3031808 at 43d0f50 Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -11064320 at 43d127b Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -11064320 at 43f30b4 Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -3031808 at 43fcf8d Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -14463232 at 43fd5f0 Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -14463232 at 43fda0d Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -11064320 at 43feeac Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -11064320 at 43ff1c3 Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -11064320 at 43ff4da Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -11064320 at 43ff7f1 Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -11064320 at 43ffb08 Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -3031808 at 43ffe1e Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -3031808 at 4400134 Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -3031808 at 440044a Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -3031808 at 4400760 Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -14463232 at 4400a75 Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -14463232 at 4400d8a Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -3031808 at 44010a0 Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -3031808 at 44013b6 Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -11064320 at 4598ef2 Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -3031808 at 4599208 Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -14463232 at 4599646 Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -14463232 at 459995b Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -3031808 at 4599c71 Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -3031808 at 4599f87 Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -3031808 at 459a297 Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -11064320 at 459a7f4 Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -3031808 at 459b0d7 Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -14463232 at 459b3ec Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -11064320 at 501fdae Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -11064320 at 5193ab5 Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -1 at 51cbb5d Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -3031808 at 51cbf4f Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -6251 at 51cc3fc Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -16711681 at 6046d0e Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -16776961 at 60472b5 Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -16776961 at 713844a Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -11064320 at 96667ac Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -11064320 at b8b3c72 Warning: Property name is null. Ignoring remaining properties. Found invalid nametable index -11064320 at bef0afd Warning: Property name is null. Ignoring remaining properties. Reading finshed after 5840 ms Dump finshed after 343 ms Completly finshed after 6183 ms
Btw, would you think about adding a total of tamed dinos per class or overall? And if that is even possible, date of tame (in-game or actual time)?

New version released, improved loading times for me by about... 700%
Also no more warnings and basic statics, including the count of each dino class. Date of tame needs more research, in-game time might be impossible because the length of night and day can be changed.
I'll now try to find some editor capable of loading the 1,3 GB json version of that save 😄

Haha, have fun and thanks!


WebView with react native gesture handler not working as expected.

I am facing an issue, Web View wrapped with GestureDetector.  pan gesture is working fine on iOS but it is not working on Android.
i want to close web view with a left to swipe right, and web view scroll must be enabled.
Environment:

OS: MAC OS
OS version: 14.5
react-native version: 0.73.6
react-native-webview version: 13.9.1
react-native-gesture-handler: 2.16.0

hey I have the same issue here


Scarlet X's arrows don't always trigger Destruction effects

I think we can finally call this once closed.

I think we can finally call this once closed.


Add a GherkinSourceRead event

Summary
Adds a new event that fires when a Gherkin document is read in.
Details
Motivation and Context
This event will allow formatters to create their own Gherkin AST, should they need it. This would also potentially allow us to simplify the core Test::Case value objects to no longer contain references to the AST.
It's also needed to support the standard event protocol
How Has This Been Tested?
See features/docs/events/gherkin_source_read_event.feature
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)

Checklist:

[x] I've added tests for my code
[x] My change requires a change to the documentation.
[x] I have updated the documentation accordingly.

@mattwynne Can you rebase this and I'll merge?

Rebased. Thanks @danascheider!


How to access full profile spectrum?

Sorry, more a question than an issue - I can access the mass spectra in two ways:
average_scan = raw_file.average_scans_in_scan_range(first_scan_number, last_scan_number, scan_filter, options)
spectrum = average_scan.segmented_scan
for i in range(len(spectrum.positions)):
    print(f'  {i} - {spectrum.positions[i]}, {spectrum.intensities[i]}')
for i in range(average_scan.centroid_scan.length):
    print(f'  {average_scan.centroid_scan.masses[i]} {average_scan.centroid_scan.intensities[i]}')

and there is also a function that Converts the segmented scan to centroid scan. Used to centroid profile data.
But how do I access the raw profile data?
The segmented_scan seems to set values which are below a certain threshold to zero respectively does not show m/z ranges outside the identified peaks but I want the full intensity vs. m/z date pairs for the whole scan range - or is this more of a nomenclature problem and the "segmented scan" is actually the "profile"?!?

As mentioned in the other comment, this was due to a terminology problem in which the "profile spectra" did not show up under the name I expected.
Also, it is a bit confusing that in the "centroid scan" the x-values are accessed as average_scan.centroid_scan.masses[i] while in the "segmented scan" (= profile spectrum) it is done by spectrum.positions[i] but in fact both kind of refer to a m/z value

I have now solved my problem with the following code at the core:
 def get_average_spectrum(raw_file, first_scan_number, last_scan_number, mass_range, title):
    options = raw_file.default_mass_options()
    options.tolerance_units = ToleranceUnits.ppm
    options.tolerance = 5.0
    scan_filter = raw_file.get_filter_for_scan_number(first_scan_number)
    average_scan = raw_file.average_scans_in_scan_range(first_scan_number, last_scan_number, scan_filter, options)
    spectrum = average_scan.segmented_scan
    x = []
    y = []
    for i in range(len(spectrum.positions)):
        x.append(spectrum.positions[i])
        y.append(spectrum.intensities[i])
    plot_diagram(x, y, mass_range, "m/z (Da)", "intensity", title)
    integrate(x, y)
return x,y

where plot_diagram() and integrate() are the output

For integration of the spectrum, I used integral = np.trapz(y, x) from numpy
And the m/z range to integrate is selected by defintion of the sum formulas of "species of interest" and then using IPMolecule("<sum_formula>") from pythoms.molecule of the pythoms library
These calculated mass ranges can then be extract by
    mass = mol.bar_isotope_pattern[0]
    intensity = mol.bar_isotope_pattern[1]

In case somebody might be interested in my - admittedly very crude - code here it is:
mass_spec_integrator_v2.zip


seg3d: remove

Motivation for this change

seg3d was packaged in 2009, but the packaged version has never been updated since and the package is marked broken for 2.5 years (see https://github.com/NixOS/nixpkgs/commits/d27643bc0ae06ed52a5d88aa875d79d1da9ffcb1/pkgs/applications/graphics/seg3d/default.nix)
seg3d itself seems to be under quite active development (see: https://github.com/SCIInstitute/Seg3D ). To me it makes sense to throw the old packaging file away and start a fresh approach if someone wants to have it back (which haven't been the case in years) than keeping the old broken file forever for "just in case".

Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[ ] NixOS
[ ] macOS
[x] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

@jtojnar I saw that you added #73126 to "Picking up garbage". This might be a candidate as well.


Relative date parser

Given a relative statement about time, parse a date/time from it. Examples:

"two days ago"
"three hours past noon on friday"
"7 minutes ago"
"3:00pm on Monday"

And the list goes on. Need to establish what valid phrases can be composed of, and write a new tokenizer for these relative date strings.

I'm closing this for now, as I see it being implemented as a third-party plugin for timex at this time, but if anyone is interested in it, let me know and I'll maybe play around with getting it started.

@bitwalker Where is this plugin you were talking about? I'm trying to parse a string from HTML that looks like: "22 days ago" into a proper DateTime object to persist in my database.
In Rail's land with Chronic I can go: Chronic.parse(string) - is this something Timex can do today? I know this is a pretty stale thread.

@sergiotapia IIRC it was this one


Add Typescript support

Issue Type

[ ] Bug Report
[x] Feature Request
[ ] Other

Current/Missing Behaviour
Typescript does not recognize nw-builder as a module after installing it.
Expected/Proposed Behaviour
It would be cool to have basic types when building nw as TypeScript becomes more and more mandatory to the working environment.

We went down this path with create-desktop-shortcuts and found that Using TypeScript's supplied solutions actually didn't work well with the TS Engine or editors, so we instead added JSDoc Comments which supplied types and also documentation.

https://github.com/nwutils/create-desktop-shortcuts/pull/69

This shows screenshots comparing the bad result you get when using TS or .d.ts files, and the much better result you get from JSDocs.

The solution looks like this:

A single JS file that defines all the types:

api-type-definitions.js
The file exports out variables that have JSDoc comments on them

Then in the files where the types are used, you import just those variables and apply then in the JSDoc comment:

example

We have a linting rule in place in this repo to apply JSDocs to every function, but that has a high maintenance cost and has mostly been ignored while the codebase has been under constant change (understandable).
However, this GitHub issue request would only require applying the JSDoc comment blocks to the public facing API, not the entire codebase (much easier).

I think only typing the main function and its options in a separate index.d.ts. file and referencing it inside the package.json is enough to fix the error.
I am not asking for complex type inference and strong typing, I just want to fix the errors and get some type suggestions while working.

Yes, same idea, just better result and less effort. A single JS file that contains the types instead of importing in all of the overhead and slowness of TypeScript. Also much better auto-complete and hover text.

Ran locally and everything is already set up. TS works, auto-complete works, hover text works. Can you explain in more detail what issue you are having? @ElPrudi

Cannot find module 'nw-builder' or its corresponding type declarations. ts(2307)
I have installed it and it is in my node modules folder. Since the package.json does not contain referenced types and there is no separate d.ts file, Typescript cannot find the types.
If you run it locally, allow js in your tsconfig, and don't use it as a node module, Typescript might derive it on its own. You may need to link it in your repo as a node module for it not to work.

@ElPrudi I was able to reproduce it. I've created a branch that fixed it (at least for me), feel free to try it out yourself.
https://github.com/nwutils/nw-builder/pull/840

Nope, still not. Try downloading your branch:
"dependencies": {
   "nw-builder": "nwutils/nw-builder#entry-docs"
}

No TypeScript says:
Could not find a declaration file for module 'nw-builder'. '<project-path>/node_modules/.pnpm/github.com+nwutils+nw-builder<EMAIL_ADDRESS>implicitly has an 'any' type.
  Try `npm i --save-dev @types/nw-builder` if it exists or add a new declaration (.d.ts) file containing `declare module 'nw-builder';`ts(7016)

Like i said: No .d.ts file, no types.
To link the types inside your package.json for TypeScript to read, use:
{
    "type": "./index.d.ts."
}

@ElPrudi what editor are you using? I'm open to maintaining a type def file since we only export a single function.

I use VSCode with the most popular TypeScript extensions.

Should be good now. I had to update the files list in the package.json to get it to work via npm install

@ElPrudi tested locally and works for me

Im sorry, but no. I don't know what configuration you used, but it still complains about the missing .d.ts file. After setting
{
  "exports": {
    "default": "./index.js",
    "types": "./index.d.ts"
  },
}

and only after creating a stub .d.ts file, it stopped complaining.
declare function nwBuild(options: Record<string, unknown>): Promise<unknown>
export default nwBuild

(There is no need for async in a .d.ts file as long as the return type is Promise<T>)
My ts config:
{
    "compilerOptions": {
        "rootDir": "src",
        "outDir": "dist",
        "module": "ESNext",
        "moduleResolution": "node",
        "target": "es2022",
        "forceConsistentCasingInFileNames": true,
        "preserveConstEnums": true
        "removeComments": true,
        "stripInternal": true,
        "noImplicitAny": true,
        "strictNullChecks": true,
        "resolveJsonModule": true,
        "esModuleInterop": true,
        "skipLibCheck": true,
        "lib": ["es2022", "dom", "ESNext", "WebWorker", "ScriptHost"],
        "types": ["node"],
        "strict": true
    },
    "exclude": ["./node_modules", "./typings", "./dist", ".*/"],
    "include": ["./src/**/*.ts", "./src/**/*.d.ts"]
}

What is your goal?

Have auto-complete as you type (should work)
Have documentation on hover (should work)
Have your source code checked against the TypeScript Compiler (on you)
Trying to compile the source code of the dependencies in your node modules using TypeScript (good luck with that)

It's simple: JSDoc does not work in a strict TypeScript environment.
But since you're already throwing a tantrum about it because your minimal effort of trying to patch it does not work, even after giving all the steps and configuration to make it work, its easier for me to create my own version of nw-builder than to explain to a child why TypeScript is a important part of the today's workflow.

Cool, works for me :)

Oh yeah! @ElPrudi you might want to fork https://github.com/evshiron/nwjs-builder-phoenix
It's pretty decent, but no longer maintained. No one wanted to take over the project and have to deal with Classes written in TypeScript. But that sounds like your cup of tea, so may be a good fit.

@ElPrudi made a basic tsd file. Feel free to open a PR if you find anything off.

@tharatau the docs say the file can be auto generated from JSDocs. If that's true, I don't see why they need you to do it at all, they should just use it as the source of truth like they do everywhere else. TS is very dumb. Anyways, I wouldn't put in the effort to support that, but if you want to, go for it:

https://www.typescriptlang.org/docs/handbook/declaration-files/dts-from-js.html

https://www.typescriptlang.org/docs/handbook/declaration-files/dts-from-js.html

Interesting, was not aware. I have no problem maintaining it since its just one function.


Added 'focus' attribute to inspector, added focus log.

Resolve #266

Blackduck scan failure details
Summary: 0 violations, 0 files pending approval, 1 file pending identification.

Protex Server Path: /home/blackduck/github/Lightning/304/rdkcentral/Lightning

Commit: f60b82f5632bbbb1a7b997130e9d22b85c877956

Report detail: gist


Enable x:text on XQuery

This pull request derives from #459. So needs to be handled after that.

Following #417, this pull request enables x:text on XQuery.

@cirulls
Merged this enhancement.
@galtm
Can you consider adding x:text to the x:variable tests in test/xspec-space_query.xspec?

@AirQuick
Yes, I'll do that in the next week or so.

adding x:text to the x:variable tests in test/xspec-space_query.xspec

@AirQuick , I just uploaded bd1893301173aec507b3e7c15d88731e82491da7 to #475.


[api] API Put and Patch should honor type specific methods

With Put/Patch directly calling edit_resource, any processing
done for type specific resources are not honored.

This solves issue #5686

@imtayadeway @gtanzillo please review.  Thanks.

marking as WIP for now, need to think things through a bit more.

:+1: LGTM


fixing bug-fixing bugs

Finally made it through the code again and corrected the various issues in the previous pull request causing the test failures.
Below is a summary of the edits to the main code.

consistenly with the previous pull request, the temperature values obtained by interpolating over the ATM tables are now rescaled by the opacity at zenith to obtain T_atm (as for the discussion around Eq. 7-9 in the ALMA Memo 602). Also, I am including T_sky int the list of derived parameters.
I updated some default values, specificallyeta_eff=0.95, eta_pol=0.995, g=0. Instead, I am leaving the elevation range as it was in the original release.
changed from interp2d to RegularGridInterpolator to avoid a potential deprecation issue with future updates

Given the above changes, I had to adapt the pytest scripts.

inside functional_tests/test_calculator_params.py, test_atmospheric_temperature now comprises a rescaling to bring the test temperature back to sky temperature at the zenith T_sky(z=0).
I change the test sensitivity from 2.98mJy to 0.78mJy, the value I obtain assuming the standard setup and integration time.
test_calculate_sensitivity was failing due to an issue with the update of the integration time. I think the input sensitivity (10mJy) was resulting in an integration time too small to be correctly handled by the sensitivity calculator; lower the test sensitivity is letting the test pass.

All the tests are now passing succesfully (at least on my machine).

Thanks for the suggestions, @astromark. Just pushed everything as commits.
Is there anything else we should comment/adapt before merging?

OK, that's now causing some other failures. I swear your fork said it was passing before I hit merge.

ah! That's unexpected...
Do you know where the failure is coming from?

I might have found the issue. Sending an updated pull request soon.

I forgot to update again the get_formatted_value to avoid a ValueError when orig_value=0.
Also, I am now realizing that a few tests were simply skipped due to a missing library. Weird that it was still able to go through without any error message. After installing it, I managed to reproduce (and fix) the failure.
Sending the pulling request (and crossing fingers).


fix sdk compilation

What this PR does / why we need it:

Generate sdk static library file
Fix the naming format of variables to meet the requirements of gcc 4.9+ ( xxx is reserved because it starts with '_' followed by a capital letter [-Werror,-Wreserved-identifier])

Which issue this PR fixes:

fixes #2500
Special notes for your reviewer:
Release note:

please fix dco error first.
the libsdk/libcfs.h file seems is a generated file, maybe it's not a good idea to edit this file manually?

Hope to fix these compilation error：

cgo-gcc-export-header-prolog:25:14: error: identifier 'check_for_64_bit_pointer_matching_GoInt' is reserved because it starts with '' at global scope [-Werror,-Wreserved-identifier]
typedef char _check_for_64_bit_pointer_matching_GoInt[sizeof(void*)==64/8 ? 1:-1];
^
libsdk.go:19:9: error: '_GNU_SOURCE' macro redefined [-Werror,-Wmacro-redefined]
#define _GNU_SOURCE
^
:430:9: note: previous definition is here
#define _GNU_SOURCE 1
^
cgo-builtin-export-prolog:8:48: error: identifier 'GoString' is reserved because it starts with '_' followed by a capital letter [-Werror,-Wreserved-identifier]
typedef struct { const char *p; ptrdiff_t n; } GoString;
^

Hope to fix these compilation error：

cgo-gcc-export-header-prolog:25:14: error: identifier 'check_for_64_bit_pointer_matching_GoInt' is reserved because it starts with '' at global scope [-Werror,-Wreserved-identifier]
typedef char _check_for_64_bit_pointer_matching_GoInt[sizeof(void*)==64/8 ? 1:-1];
^
libsdk.go:19:9: error: '_GNU_SOURCE' macro redefined [-Werror,-Wmacro-redefined]
#define _GNU_SOURCE
^
:430:9: note: previous definition is here
#define _GNU_SOURCE 1
^
cgo-builtin-export-prolog:8:48: error: identifier 'GoString' is reserved because it starts with '_' followed by a capital letter [-Werror,-Wreserved-identifier]
typedef struct { const char *p; ptrdiff_t n; } GoString;
^

The reason for the problem is that there are reserved-identifier and macro-redefined errors in the header file.
To solve this problem, I use cmake to automatically add #pragma GCC diagnostic push/pop into the header file before compiling. In this way, these two types of errors can be masked.

Didn’t fetch the latest code before merging and rebase？ @RunningXie


Customer Needs a discount

Customer wants a discount

Customer wants a discount

Create a code to enable 25% global discount


In sidecar, hover effect for buttons can have low contrast in certain themes.

E.g. in the bottom stripe of the sidecar in most dark themes, the contrast is low when hovering. Also, we should figure out how to make the hover effect take up the full height of the bottom toolbar.
PatternFly4 Dark:

PatternFly4 Light, with good contrast, but a full-height hover would be better:

Perhaps (though i'm not sure what happened to the "caret" part of the tooltip

ah, see https://github.com/patternfly/patternfly/issues/4382 for the missing caret/pointer part of the tooltip


Sample request in 'Enable Email Account Verification for an Updated Email Address' doc need to be changed

Is your suggestion related to a missing or misleading document? Please describe.
The sample scim2 request provided in this doc https://is.docs.wso2.com/en/5.11.0/develop/enable-email-account-verification-for-an-updated-email-address/ needs to be updated
In the doc it says,
Sending the email verification email is skipped when updating the email address as long as the verifyEmail claim is not set to true.
But the sample request does not contain verifyEmail claim. Running the below request will not work
curl -v -k --user admin:admin -X PATCH -d '{"schemas":["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
<EMAIL_ADDRESS>--header "Content-Type:application/json" https://localhost:9443/scim2/Users/1e624046-520c-4628-a245-091e04b03f21

Need to update the above request to send verifyEmail claim as well.
Sample request
{
    "schemas": [
        "urn:ietf:params:scim:api:messages:2.0:PatchOp"
    ],
    "Operations": [
        {
            "op": "replace",
            "value": {
                "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User": {
                    "verifyEmail": "true"
                },
                    "emails": [
                    {
                        "primary": true,
                        "value"<EMAIL_ADDRESS>                    }
                ]
            }
        }
    ]
}

Under step2 in the same document it says, to enable this feature, navigate to Main > Identity Providers > Resident > Other Settings > User Claim Update.
This path should be corrected as Main > Identity Providers > Resident > Other Settings > User Claim Update

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


How to use Shopify.Utils.graphqlProxy with NextJS (API-Routes)

I want to use Shopify.Utils.graphqlProxy with NextJS (API-Routes) without koa.
like this:
pages/api/graphql.ts
const handler = async (req: NextApiRequest, res: NextApiResponse) => {
  await Shopify.Utils.graphqlProxy(req, res);
};

But these two events do not fire.
https://github.com/Shopify/shopify-node-api/blob/bc70452e05de5f9209cdf21e0bf22edde3cce47f/src/utils/graphql_proxy.ts#L22
https://github.com/Shopify/shopify-node-api/blob/bc70452e05de5f9209cdf21e0bf22edde3cce47f/src/utils/graphql_proxy.ts#L26
I have confirmed that I can proxy with the following code.
const handler = async (req: NextApiRequest, res: NextApiResponse) => {
  const session = await Shopify.Utils.loadCurrentSession(req, res);
  if (!session) {
    throw new Error("Cannot proxy query. No session found.");
  } else if (!session.accessToken) {
    throw new Error("Cannot proxy query. Session not authenticated.");
  }

  const shopName: string = session.shop;
  const token: string = session.accessToken;
  const options = {
    data: req.body,
  };
  const client = new Shopify.Clients.Graphql(shopName, token);
  const response = await client.query(options);
  res.status(200).json(response.body);
};

Could you give me some advice about this?

That's interesting, it looks like your server is reaching the proxy after parsing the request body. The data and end events only fire once per request, so it's likely that something in your call stack is consuming those events before it reaches the proxy call.
If you're using Next.js API routes, you could maybe disable the bodyParser setting for that route, as per https://nextjs.org/docs/api-routes/api-middlewares#custom-config. That should stop the server from consuming those events before it reaches the proxy code.
Hope this helps!

@paulomarg Thank you for your advice. Rather, it was a complete answer.
It works fine with the following settings:
// With NextApiRequest, `export const config` for Shopify.Utils.graphqlProxy to trigger events.
export const config = { api: { bodyParser: false } };


AMQ-7196 - During startup ActiveMq load all the scheduleDB.data on me…

…mory causing OOM

@alanprot FYI, I reviewed the PR and it looks to me, thanks !
@cshannon sorry, I was busy on Karaf but I was on the review on this PR, I was planning to finalize and merge today.


Textures still rotated 90 degrees in build 229.

This is basically still issue #2617. I know that this issue was marked as fixed a while ago, but it is definitely still occuring in build 229. Are bug fixes only available in dev builds now perhaps?
Its a rather visually horrendous bug at times and has the nasty habit of presenting as a texture bug with other mods. I initially thought that this was an issue with EnderIO's reservoir texture getting flipped in certain chunks before Tterrag pointed me to this issue. Thanks!

Release this weekend with fix :)


[4.3.0] Mising option to disable AllowZoneDrifting

The exists no option in the firewalld class to disable AllowZoneDrifting.
So this warning will logged:

WARNING: AllowZoneDrifting is enabled. This is considered an insecure configuration option. It will be removed in a future release. Please consider disabling it now.

It appears the 'AllowZoneDrifting' is stored in the firewalld.conf file on Centos8. Here is a copy:
AllowZoneDrifting
Older versions of firewalld had undocumented behavior known as "zone
drifting". This allowed packets to ingress multiple zones - this is a
violation of zone based firewalls. However, some users rely on this behavior
to have a "catch-all" zone, e.g. the default zone. You can enable this if you
desire such behavior. It's disabled by default for security reasons.
Note: If "yes" packets will only drift from source based zones to interface
based zones (including the default zone). Packets never drift from interface
based zones to other interfaces based zones (including the default zone).
Possible values; "yes", "no". Defaults to "yes".

On the current version the setting can changed.

Fixed by #301.


Fix #117 - add a simple Docker-dev file

(ribbon) ➜  biowasm git:(docker_dev) ✗ docker build -f Dockerfile-dev .
[+] Building 0.6s (6/6) FINISHED                                                                                docker:desktop-linux
 => [internal] load .dockerignore                                                                                0.0s
 => => transferring context: 2B                                                                                0.0s
 => [internal] load build definition from Dockerfile-dev                                                                                0.0s
 => => transferring dockerfile: 150B                                                                                0.0s
 => [internal] load metadata for docker.io/emscripten/emsdk:2.0.25                                                                                0.6s
 => [1/2] FROM docker.io/emscripten/emsdk:2.0.25@sha256:acdbc0e16b78275d36d6b0dd67973fd0ff04a50fcd45bc3066d1727f3d90aa4f                                                         0.0s
 => CACHED [2/2] RUN apt-get update && apt-get install -y autoconf liblzma-dev                                                                                0.0s
 => exporting to image                                                                                0.0s
 => => exporting layers                                                                                0.0s
 => => writing image sha256:ac11d77dbe7f6a23ae765483ee45477e9e2e4ae56c611e6feac294f0c7d9f444                                                                                0.0s

What's Next?
  View a summary of image vulnerabilities and recommendations → docker scout quickview
(ribbon) ➜  biowasm git:(docker_dev) ✗

Nice! Can you also add the server.py script in there?


feat(dart_frog_cli): show progress and time taken when reloading

Description
Follow-up from https://github.com/VeryGoodOpenSource/dart_frog/pull/814#discussion_r1280290038.
Upon reload with R, there is no information given on how much time it took to reload. There is also no further visual indication that the process may still be processing the reload.
Suggestion
To use logger.progress to indicate the progress instead of logger.detail or logger.info.
Requirements

[ ] To show progress when reloading
[ ] To show total time taken for reload

I was looking to contribute on this one . But i am not able to find out the commands to build the package and see the changes . I am new to this , may you guys give some direction .

Thanks @dhruvpatidar359 for taking the initiative here. This change applies to dart_frog_cli all the contributing documentation can be found within dart_frog_cli CONTRIBUTING markdown file. Let me know if you run into any issues.
Would you like me to assign this to you?

sure , you may assign this to me .

@alestiago  do we have to write the test cases also ?

Hi @dhruvpatidar359, yes. Dart Frog CLI has a fixed requirement of 100% test coverage so any code changes should be followed by test changes.
If you would like to generate a local coverage report you can use:
dart test -j 1 --coverage=coverage --platform="vm" &&
dart pub global run coverage:format_coverage --lcov --check-ignore --in=coverage --out="coverage/lcov.info" --package="." --report-on="lib" &&
genhtml -o coverage/html coverage/lcov.info &&
open coverage/html/index.html

Let me know if you run into any issues 🙌 . Thank you for the contribution!

Hi @dhruvpatidar359, yes. Dart Frog CLI has a fixed requirement of 100% test coverage so any code changes should be followed by test changes.
If you would like to generate a local coverage report you can use:
dart test -j 1 --coverage=coverage --platform="vm" &&
dart pub global run coverage:format_coverage --lcov --check-ignore --in=coverage --out="coverage/lcov.info" --package="." --report-on="lib" &&
genhtml -o coverage/html coverage/lcov.info &&
open coverage/html/index.html

Let me know if you run into any issues 🙌 . Thank you for the contribution!

I was writing the test cases but when i ran the dart test command i found that some other test are also failing . Then i tried to ran the dart test command on the original code of main , it also gives me errors .
`00:09 +46 -1: test\src\command_runner_test.dart: DartFrogCommandRunner can be instantiated without any explicit parameters [E]
FileSystemException: Error retrieving socket type, path = '' (OS Error: The handle is invalid.
, errno = 6)
dart:io                                              stdin
package:dart_frog_cli/src/command_runner.dart 40:29  new DartFrogCommandRunner
test\src\command_runner_test.dart 88:29              main..
To run this test again: C:\flutter\bin\cache\dart-sdk\bin\dart.exe test test\src\command_runner_test.dart -p vm --plain-name "DartFrogCommandRunner
can be instantiated without any explicit parameters"
00:09 +62 -2: test\src\daemon\daemon_server_test.dart: DaemonServer can be instantiated [E]
FileSystemException: Error retrieving socket type, path = '' (OS Error: The handle is invalid.
, errno = 6)
dart:io                                                    stdin
package:dart_frog_cli/src/daemon/connection.dart 39:31     new DaemonStdioConnection
package:dart_frog_cli/src/daemon/daemon_server.dart 27:36  new DaemonServer
test\src\daemon\daemon_server_test.dart 63:14              main..
To run this test again: C:\flutter\bin\cache\dart-sdk\bin\dart.exe test test\src\daemon\daemon_server_test.dart -p vm --plain-name "DaemonServer can
be instantiated"
00:14 +205 -3: test\src\dev_server_runner\dev_server_runner_test.dart: DevServerRunner process runtime kills process if error occurs before hot relo
ad is enabled on non-windows [E]
Expected: empty
Actual: [['taskkill', '/F', '/T', '/PID', '42']]
package:matcher                                                expect
test\src\dev_server_runner\dev_server_runner_test.dart 912:11  main...
To run this test again: C:\flutter\bin\cache\dart-sdk\bin\dart.exe test test\src\dev_server_runner\dev_server_runner_test.dart -p vm --plain-name "D
evServerRunner process runtime kills process if error occurs before hot reload is enabled on non-windows"
00:14 +205 -4: test\src\dev_server_runner\dev_server_runner_test.dart: DevServerRunner process runtime Does not kill process if a warning occurs bef
ore hot reload is enabled [E]
type 'Null' is not a subtype of type 'Stream'
test\src\dev_server_runner\dev_server_runner_test.dart 23:7                _MockProcessSignal.watch
package:dart_frog_cli/src/dev_server_runner/dev_server_runner.dart 267:17  DevServerRunner.start.serve
===== asynchronous gap ===========================
package:dart_frog_cli/src/dev_server_runner/dev_server_runner.dart 336:5   DevServerRunner.start
===== asynchronous gap ===========================
test\src\dev_server_runner\dev_server_runner_test.dart 945:11              main...
To run this test again: C:\flutter\bin\cache\dart-sdk\bin\dart.exe test test\src\dev_server_runner\dev_server_runner_test.dart -p vm --plain-name "D
evServerRunner process runtime Does not kill process if a warning occurs before hot reload is enabled"
00:14 +206 -5: test\src\dev_server_runner\dev_server_runner_test.dart: DevServerRunner process runtime kills process with message when Dart VM is al
ready in use [E]
Expected: empty
Actual: [['taskkill', '/F', '/T', '/PID', '42']]
Should not run the serve process.
package:matcher                                                expect
test\src\dev_server_runner\dev_server_runner_test.dart 999:11  main...
To run this test again: C:\flutter\bin\cache\dart-sdk\bin\dart.exe test test\src\dev_server_runner\dev_server_runner_test.dart -p vm --plain-name "D
evServerRunner process runtime kills process with message when Dart VM is already in use"
00:14 +207 -5: Some tests failed.
`
i was running dart test in packages/dart_frog_cli.

i have even wrote a test case for the same .
  group('reload', () {
     test('reloads with progress', () async {
       // Arrange
       bool progressLogged = true;
       bool infoOrDetailLogged = false;

       // Mock logger functions
       when(() => logger.progress(any())).thenAnswer((_) {
         progressLogged = true;
         return progress;
       });
       when(() => logger.info(any())).thenAnswer((_) {
         infoOrDetailLogged = true;
       });
       when(() => logger.detail(any())).thenAnswer((_) {
         infoOrDetailLogged = true;
       });
       // Act
       await devServerRunner.reload(infoOrDetailLogged, progressLogged);

       // Assert

       expect(infoOrDetailLogged, isFalse);
       expect(progressLogged, isTrue);
     });
   });

Here is the code that i have changed :
Future<void> _reload([bool verbose = false, bool progress = true]) async {
   final logInfoOrDetail = verbose ? logger.info : logger.detail;
   final logProgress =
       progress ? logger.progress('[codegen] reloading...') : null;

   if (logProgress == null) {
     logInfoOrDetail('[codegen] reloading...');
   }

   _isReloading = true;
   await _codegen();
   _isReloading = false;

   if (logProgress == null) {
     logInfoOrDetail('[codegen] reload complete.');
   } else {
     logProgress.complete('[codegen] reload complete.');
   }
 }

First time when i ran the test case it was showing on the terminal , but this time it is not even running .

Alright , so i have written some test cases . They are also passing , but the code coverage still not updated . It says 99.7 % covered . What to do

I have written these test cases

    test('reloads with progress', () async {
      // Arrange
      bool progressLogged = true;
      bool infoOrDetailLogged = false;

      // Mock logger functions
      when(() => logger.progress(any())).thenAnswer((_) {
        progressLogged = true;
        return progress;
      });
      when(() => logger.info(any())).thenAnswer((_) {
        infoOrDetailLogged = true;
      });
      when(() => logger.detail(any())).thenAnswer((_) {
        infoOrDetailLogged = true;
      });
      // Act
      await devServerRunner.reload(infoOrDetailLogged, progressLogged);

      // Assert

      expect(infoOrDetailLogged, isFalse);
      expect(progressLogged, isTrue);
    });

    test('reloads with info', () async {
      // Arrange
      bool progressLogged = false;
      bool infoOrDetailLogged = true;

      // Mock logger functions
      when(() => logger.progress(any())).thenAnswer((_) {
        progressLogged = true;
        return progress;
      });
      when(() => logger.info(any())).thenAnswer((_) {
        infoOrDetailLogged = true;
      });
      when(() => logger.detail(any())).thenAnswer((_) {
        infoOrDetailLogged = true;
      });
      // Act
      await devServerRunner.reload(infoOrDetailLogged, progressLogged);

      // Assert

      expect(infoOrDetailLogged, isTrue);
      expect(progressLogged, isFalse);
    });

    test('reloads with detail', () async {
      // Arrange
      bool progressLogged = false;
      bool infoOrDetailLogged = false;

      // Mock logger functions
      when(() => logger.progress(any())).thenAnswer((_) {
        progressLogged = true;
        return progress;
      });
      when(() => logger.info(any())).thenAnswer((_) {
        infoOrDetailLogged = true;
      });
      when(() => logger.detail(any())).thenAnswer((_) {
        infoOrDetailLogged = true;
      });
      // Act
      await devServerRunner.reload(infoOrDetailLogged, progressLogged);

      // Assert

      expect(infoOrDetailLogged, isFalse);
      expect(progressLogged, isFalse);
    });

Hi @dhruvpatidar359 ! Thanks for reaching out!
Regarding the issue you encounter during running the tests can you open a new issue with:

Precise steps you followed and commands you used to get the test failure
Flutter doctor output

I've a suspicion that it might be because your Operating System (OS) differs from the OS the maintainers of this package use.
Regarding the new tests you've made can you push them to your Pull Request branch (dhruvpatidar359:progresshotreload)? That way I can have an easier closer look and we avoid polluting this issue with Pull Request specific implementations.

Hi @dhruvpatidar359 ! Thanks for reaching out!
Regarding the issue you encounter during running the tests (test failures) can you open a new issue with:

Precise steps you followed and commands you used to get the test failure
Flutter doctor output

I've a suspicion that it might be because your Operating System (OS) differs from the OS the maintainers of this package use.
Regarding the new tests you've made can you push them to your Pull Request branch (dhruvpatidar359:progresshotreload)? That way I can have an easier closer look and we avoid polluting this issue with Pull Request specific implementation details.

all right

@alestiago  i have updated the PR

may you please help me, how can i make it 100 % code coverage ?

@dhruvpatidar359 I'm more than willing to help. However, you might have to bear with me a bit. I will get to your Pull Request as soon as possible 🙌

Hi @alestiago  what's the update ?

Hi @dhruvpatidar359 , sorry for the late reply. Since we are likely to refactor the code that will have to get updated and we want to avoid using progress on the daemon we don't foresee to prioritise this work for now.


Bump go routines to 7

What type of PR is this?
/kind failing-test
What this PR does / why we need it:
It looks like that ginkgo now adds an additional go routine to the stack after the latest release. This should fix the integration tests.
Which issue(s) this PR fixes:

None
Special notes for your reviewer:
None
Does this PR introduce a user-facing change?

None

/lgtm


301/302 redirect errors

Describe the bug
I updated my devenv version and removed the devenv.lock in order to be force update, the problem is that when the environment attempts to build, I get a host of 301/302 errors when devenv/nix attempts to download cachix and git-hooks packages.
direnv: using devenv
direnv: .envrc changed, reloading
warning: error:
       error: unable to download 'https://api.github.com/repos/cachix/devenv/commits/HEAD': Failed to open/read local data from file/application (26); retrying in 342 ms
warning: error:
       error: unable to download 'https://github.com/cachix/devenv/archive/51abcb75d471a215c800937d4e30dc765d305c6d.tar.gz': Failed to open/read local data from file/application (26); retrying in 340 ms
warning: error:
       error: unable to download 'https://github.com/cachix/devenv/archive/51abcb75d471a215c800937d4e30dc765d305c6d.tar.gz': HTTP error 302 (curl error: Failed to open/read local data from file/application); retrying in 579 ms
warning: error:
       error: unable to download 'https://github.com/cachix/devenv/archive/51abcb75d471a215c800937d4e30dc765d305c6d.tar.gz': HTTP error 302 (curl error: Failed to open/read local data from file/application); retrying in 1281 ms

To reproduce
co-workers haven't been able to reproduce.
devenv runs fine when I rollback and use the old devenv.lock file. the notable difference between the two is the original lock is using pre-commit-hooks vs git-hooks
Version
devenv: devenv 1.3.1 (aarch64-darwin)
nix: nix (Nix) 2.24.10
both devenv and nix are running latest versions. I've reinstalled both to no avail.

That's a bug in curl, you need to downgrade nixpkgs.

https://github.com/NixOS/nixpkgs/issues/356114

Perfect, thanks for your help 🙏


docstrings/sphinx: Support cross-refs for types in "Other Parameters" sections

Is your feature request related to a problem? Please describe.
The goal is to have a common set of features between all parsers.
Describe the solution you'd like
The Sphinx parser should be able to parse the types in "Other Parameters" section in order to enable automatic cross-references.
from griffe.docstrings.utils import parse_annotation

# annotation is a string
annotation = parse_annotation(annotation, docstring)
# annotation is unchanged, or becomes a Name or Expression! cross-refs enabled

Closing for cleanup, but if you'd like to work on this, just ask and I'll reopen!


Update setup.html with environment setup

Added description on how to set up environment with IntelliJ
Screenshot of change here: screenshot
Summary of content added: [gist of content added] (https://gist.github.com/derekngo/a9f7bf4444f8c26d3515)

Looks like good detailed documentation.  Any reason not to include this @mach6 ?

:+1: Looks okay to me. Though I'd guess that @freynaud would prefer this be merged to gh-pages-dev instead.


Add admin endpoint test

Should test the endpoint taking into account whether TLS is enabled.

fixed in #122


Bug on level 14

This game is super fun, thanks for making it!
I'm playing on MacOS, the non-ARM build.
I'm reasonably sure that there's some sort of bug on level 13. I've run into this a couple times, and I got a screenshot of the way it looks like this is occurring - see that there is a "3" cell, with only 2 adjacent mines. Obviously the 3 is cloned within itself, but if I unmark the two cells in yellow, then all of the other flags next to the inner 3s are also unmarked, so I'm pretty sure that this cell should be a 2.
Happy to send more info on this if that is helpful!

Never mind, I did not realize that level 14 had multiple outer boards you could access by zooming in and out


H2C upgrades should be ineligible for flow control

Motivation:
When the h2c upgrade request is too big, the Http2FrameCodec complains
it's too big for flow control reasons, even though it's ineligible for
flow control.
Modifications:
Specially mark upgrade streams and make Http2FrameCodec know not to try
to flow control on those streams.
Result:
Servers won't barf when they receive an upgrade request with a fat
payload.
[Fixes #7280]

@ejona86 @normanmaurer I could use some help with this one–my test seems like it should be OK, but it doesn't seem to fail when I remove my fix.  So I don't know where the exception has disappeared off to.  Does one of you mind taking a look and helping me out with this?

@mosesn add this diff to your pr:
diff --git a/codec-http2/src/test/java/io/netty/handler/codec/http2/Http2FrameCodecTest.java b/codec-http2/src/test/java/io/netty/handler/codec/http2/Http2FrameCodecTest.java
index 8da52d076..4d29f5465 100644
--- a/codec-http2/src/test/java/io/netty/handler/codec/http2/Http2FrameCodecTest.java
+++ b/codec-http2/src/test/java/io/netty/handler/codec/http2/Http2FrameCodecTest.java
@@ -21,6 +21,7 @@ import io.netty.buffer.UnpooledByteBufAllocator;
 import io.netty.channel.ChannelFuture;
 import io.netty.channel.ChannelFutureListener;
 import io.netty.channel.ChannelHandlerContext;
+import io.netty.channel.ChannelInboundHandlerAdapter;
 import io.netty.channel.ChannelPromise;
 import io.netty.channel.embedded.EmbeddedChannel;
 import io.netty.handler.codec.UnsupportedMessageTypeException;
@@ -37,6 +38,7 @@ import io.netty.handler.codec.http2.Http2Stream.State;
 import io.netty.handler.logging.LogLevel;
 import io.netty.util.AbstractReferenceCounted;
 import io.netty.util.AsciiString;
+import io.netty.util.ReferenceCountUtil;
 import io.netty.util.ReferenceCounted;
 import io.netty.util.concurrent.DefaultPromise;
 import io.netty.util.concurrent.GlobalEventExecutor;
@@ -668,6 +670,27 @@ public class Http2FrameCodecTest {

     @Test
     public void upgradeWithoutFlowControlling() throws Exception {
+        channel.pipeline().addAfter(http2HandlerCtx.name(), null, new ChannelInboundHandlerAdapter() {
+            @Override
+            public void channelRead(final ChannelHandlerContext ctx, Object msg) throws Exception {
+                if (msg instanceof Http2DataFrame) {
+                    // Simulate consuming the frame and update the flow-controller.
+                    Http2DataFrame data = (Http2DataFrame) msg;
+                    ctx.writeAndFlush(new DefaultHttp2WindowUpdateFrame(data.initialFlowControlledBytes())
+                            .stream(data.stream())).addListener(new ChannelFutureListener() {
+                        @Override
+                        public void operationComplete(ChannelFuture future) throws Exception {
+                            Throwable cause = future.cause();
+                            if (cause != null) {
+                                ctx.fireExceptionCaught(cause);
+                            }
+                        }
+                    });
+                }
+                ReferenceCountUtil.release(msg);
+            }
+        });
+
         frameListener.onHeadersRead(http2HandlerCtx, Http2CodecUtil.HTTP_UPGRADE_STREAM_ID, request, 31, false);

         // Using reflect as the constructor is package-private and the class is final.

This basically simulates what an user would do normally and what the Http2MultiplexCodec does as well.

Trying it out now, thanks!

@carl-mastrangelo @Scottmitch @ejona86 any comments ?

@ejona86 comment added, and I squashed the whole thing.  thanks!

@Scottmitch I've changed it to do what you suggested in option 2, but I unfortunately think that I'm reaching the limits of netty competence.  This bit of the codebase is a little too complicated for me.  I've also borked my local version, so tests hang every time I run them.  If this isn't what you wanted, it might make sense to go back to the Http2FrameCodec version and then someone else can fix it up later.

@Scottmitch I've reverted to the old version and fixed the issue you mentioned.  PTAL.

thanks @mosesn !


Merge Idp domain service 1.x

Purpose
Merge Idp domain service 1.x

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


How to chain RemoteRunnable clients to local llm server (hosted using langserve)?

Checked other resources

[X] I added a very descriptive title to this issue.
[X] I searched the LangChain documentation with the integrated search.
[X] I used the GitHub search to find a similar question and didn't find it.
[X] I am sure that this is a bug in LangChain rather than my code.
[X] The bug is not resolved by updating to the latest stable version of LangChain (or the specific integration package).

Example Code
On the server side, I used HuggingFacePipeline to load a local model
from fastapi import FastAPI
# from langchain_anthropic import ChatAnthropic
from langchain_openai import ChatOpenAI
import transformers
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
from langchain_huggingface.llms import HuggingFacePipeline
from langchain_huggingface import ChatHuggingFace
from langserve import add_routes
import torch
import os
cache_dir = "./transforms_cache"
os.environ['TRANSFORMERS_CACHE'] = cache_dir
os.environ['HF_HOME']=cache_dir

transformers.utils.move_cache(new_cache_dir=cache_dir)

app = FastAPI(
    title="LangChain Server",
    version="1.0",
    description="Spin up a simple api server using Langchain's Runnable interfaces",
)

model_name = "allenai/Llama-3.1-Tulu-3-8B"
tokenizer = AutoTokenizer.from_pretrained(model_name,cache_dir=cache_dir)
tulu_model = AutoModelForCausalLM.from_pretrained(model_name,cache_dir=cache_dir,
                                                  torch_dtype=torch.float16, device_map="auto",)

hf_pipeline = pipeline("text-generation", model=tulu_model, tokenizer=tokenizer, max_new_tokens=6400)
hf = HuggingFacePipeline(pipeline=hf_pipeline)
chat=ChatHuggingFace(llm=hf)

app = FastAPI(title="LLM Server", version="1.0")

# Add the LLM to the server
add_routes(app, chat, path="/llm")

if __name__ == "__main__":
    import uvicorn

    uvicorn.run(app, host="<IP_ADDRESS>", port=8099)

Client side, use RemoteRunnable to connect, although it can successfully invoke an input string, it failed to be applied in LLMChain
from langserve import RemoteRunnable
from langchain import LLMChain, PromptTemplate
from langchain.chains import SimpleSequentialChain

# Create a RemoteRunnable that points to your deployed model endpoint
remote_llm = RemoteRunnable(url="http://<IP_ADDRESS>:8099/llm")

# Define prompt templates for each step of your chain
capital_prompt = PromptTemplate.from_template("What is the capital city of {country}?")
population_prompt = PromptTemplate.from_template("What is the population of {city}?")

# Create two LLMChains:
# 1. The first chain takes a country and returns the capital city.
chain1 = LLMChain(llm=remote_llm, prompt=capital_prompt)

# 2. The second chain takes the city name (returned by chain1) and returns the population.
chain2 = LLMChain(llm=remote_llm, prompt=population_prompt)

# Combine them into a SimpleSequentialChain:
# SimpleSequentialChain by default passes the output of the first chain
# as the input to the second chain.
overall_chain = SimpleSequentialChain(chains=[chain1, chain2], verbose=True)

# Run the combined chain:
result = overall_chain.run("France")

Error Message and Stack Trace (if applicable)
site-packages/langserve/client.py:448, in RemoteRunnable.batch(self, inputs, config, return_exceptions, **kwargs)
439 def batch(
440     self,
441     inputs: List[Input],
(...)
445     **kwargs: Any,
446 ) -> List[Output]:
447     if kwargs:
--> 448         raise NotImplementedError(f"kwargs not implemented yet. Got {kwargs}")
449     return self._batch_with_config(
450         self._batch, inputs, config, return_exceptions=return_exceptions
451     )
NotImplementedError: kwargs not implemented yet. Got {'stop': None}
Description
I try to use langserve to start a server and use RemoteRunnable as clients to communicate with it. This is helpful to try multiple time without worry about client failure, because restart a client is way faster than reload a llm model. Although, I can do simple llm.invoke using RemoteRunnable, but I cannot use any Chain classes, e.g. LLMChain, SimpleSequentialChain, SequentialChain.
System Info
System Information

OS:  Linux
OS Version:  #1 SMP Thu Jun 6 09:41:19 UTC 2024
Python Version:  3.10.16 | packaged by conda-forge | (main, Dec  5 2024, 14:16:10) [GCC 13.3.0]

Package Information

langchain_core: 0.3.22
langchain: 0.3.10
langchain_community: 0.3.10
langsmith: 0.1.147
langchain_huggingface: 0.1.2
langchain_openai: 0.2.11
langchain_text_splitters: 0.3.2
langgraph_sdk: 0.1.43
langserve: 0.3.0

Other Dependencies

aiohttp: 3.11.10
async-timeout: 4.0.3
dataclasses-json: 0.6.7
fastapi: 0.115.6
httpx: 0.28.1
httpx-sse: 0.4.0
huggingface-hub: 0.26.5
jsonpatch: 1.33
langsmith-pyo3: Installed. No version info available.
numpy: 1.26.4
openai: 1.57.0
orjson: 3.10.12
packaging: 24.2
pydantic: 2.10.3
pydantic-settings: 2.6.1
PyYAML: 6.0.2
requests: 2.32.3
requests-toolbelt: 1.0.0
sentence-transformers: 3.3.1
SQLAlchemy: 2.0.36
sse-starlette: 1.8.2
tenacity: 9.0.0
tiktoken: 0.8.0
tokenizers: 0.21.0
transformers: 4.47.0
typing-extensions: 4.12.2

@jianlins You are using Deprecate way of using, the recommended way is to use LCEL. So you can achieve the same result using as follow:
from langserve import RemoteRunnable
from langchain import PromptTemplate

# Create a RemoteRunnable that points to your deployed model endpoint
remote_llm = RemoteRunnable(url="http://<IP_ADDRESS>:8099/llm")

# Define prompt templates for each step of your chain
capital_prompt = PromptTemplate.from_template("What is the capital city of {country}?")
population_prompt = PromptTemplate.from_template("What is the population of {city}?")
overall_chain = capital_prompt | remote_llm

# Run the combined chain:
result = overall_chain.invoke("France")


Simplify CompositeModelBinder

Also adds a diagnostic ToString to ModelBindingResult to make testing
easier.

This change should remove a task allocation for every model binding operation. No test changes were needed, confirming my suspicion that the scenarios covered by this were fixed elsewhere.
Currently working on before/after perf results.

Before:

After:

Removes about 15% of the allocated tasks. Not thrilling by any means, but a good savings for something that's basically code cleanup anyway.

No test changes were needed, confirming my suspicion that the scenarios covered by this were fixed elsewhere.

Nice. Also confirms my suspicion no code reads Key of the top-level ModelBindingResult.

:shipit:


Transfer does not respect token amount

What happened?
I wanted to make transfer of 100 DOT
https://canary.kodadot.xyz/dot/transfer?target=14BZFbYEGoWWPjbbZUdLZ1TqDtdXvdeCy3R3t4QXqJmS91Dx&amount=100
But the 100 USD was sent
Please reproduce in steps

Make url with amount search param
Transfer translates it as some magical value

Expected Behavior
I've expect that url param amount is translated as token value where as usdamount is translated a usd amount
What browsers are you seeing the problem on?
No response
At which address did you encounter bug?
No response
Are you logged in?
None
Which wallet you are using?
No response
At which chain did you encounter bug?
No response
Screenshots
~
Relevant log output
No response
Payment link for reward
https://kodadot.xyz/ksm/transfer/?target=<My_Kusama_Address_check_https://github.com/kodadot/nft-gallery/blob/main/CONTRIBUTING.md#creating-your-ksm-address>
Code of Conduct

[X] I agree to follow this project's Code of Conduct

👋


Adjust When XSRF Token is Looked Up for Rendering Improvement

This moves the xsrf token itself to the base HTML template and to the top of the body so it only needs to be specified in one place then get picked up by custom elements as they load.
We were calling a function to lookup the token as soon as an input element within any custom element was rendered, which may be before the actual token is rendered. For example, the admin dialog may get rendered before the input which will hold the XSRF token. In the admin dialog, that token is attempted to be copied to the local form before the real token is rendered, causing a problem with the entire element rendering. To alleviate this, we now lookup the real XSRF token in the ready function of each custom element, which should not be called until that element is actually ready and would need said token, long after the real token itself has been rendered.
I'm hoping this will help the issue we were seeing with elements not loading correctly when resource dictionaries fail. This may be related since in the cases where the XSRF token wasn't found, the whole element would error out and prevent further loading (thus stopping the resource dictionary potentially). I'll have to run this on nightly to verify.

This change is

👍  Good thinking, hope this does help!


Don't call getInbox while filtering & simplify initial load

Removes two false positives for triggering getInboxNonblock calls

Inbox container would mistake the filter clearing for us having expanded the inbox
Inbox would mistake the filter clearing for rendering for the first time

Makes it so filter opening / searching / clearing won't trigger getInbox calls. Arrowing through convos will still call it. r? @keybase/react-hackers cc @mmaxim
Edit:

Adds state.chat2.trustedInboxHasLoaded, false until the inbox requests a trusted load
Tweak list callbacks to unbox on expanding small teams automatically

Not clear to me why we ever have to call get inbox   Let's discuss tomorrow

@chrisnojima it calls if you filter and arrow to convos we haven’t gotten trusted metas for yet

Yeah but why bother. If it's for the thread the thread can do it. Else why bother in this view

@chrisnojima the calls here are for the initial inbox load and loading more due to scroll. The calls when arrowing around are caused by selectConversation triggering it if we don't have a trusted meta.

@keybase/react-hackers bump


Change DISK_USAGE color

How to change the color of disk indicator?

Hi @The33Coder , the disk_usage segment is a stateful segment, which means that you need to address the state you want to style. Typical is something like showing the segment in different colors for normal, warning and critical states. You can view a list of valid states and how to build the correct variable name for the disk_usage segment in the wiki.

Thanks, I hadn't seen the Special Segment Colors section


Some small issues with saving images.

Thanks for fixing e621's API format, but it seems the image viewers 'Save', 'Save and close' and 'Save as...' is now broken for a couple sources (e621, rule34booru,danbooru,hijiribe.donmai and safebooru for sure aren't working. rule34.paheal, gelbooru and ichijou still works though). If you try, it well still create the folders like always if it doesn't exist, but well not create the image in said folder anymore.
I love the custom token feature, but there's one problem I have with it apart from it being case sensitive. It creates spaces in the file name of images for each token that it did not find any tags set to it. For example e621 has pokemon and digimon set as general tags, not character, so I created a token to hold there names. Now if no pokemon is in the image downloading, it well return a space for the token. This adds up if your using multiple tokens to cover the tags you want, instead of one massive token. I would love that tokens don't create spaces if they don't find there tags. I guessed using conditional tokens would have been my best bet, but can't use them since it give me a warning about not using these characters <>. Maybe I'm just using them wrong.
In Options - Save - 'Conditionnal' Filenames - Add conditional filename. The text in here in the English install is not in English, but French. This is only in the current version. In version 4.21 it's in English.
This is more a question:
What those the 'Save as...' naming system function under? Only on rule34.paheal images, if you use the Save as... option on an open image from this source, you get the all the tags from that image. I know rule34.paheal create that tag system while saving images from there normally, but Is there anyway to forces that option while doing a batch download in grabber?

What filename are you using? I can't reproduce.
Could you also upload the log file of right after the "Save" button doesn't work?

I love the custom token feature, but there's one problem I have with it apart from it being case sensitive.

Would you rather have it case insensitive? It can be done.

It creates spaces in the file name of images for each token that it did not find any tags set to it. For example e621 has pokemon and digimon set as general tags, not character, so I created a token to hold there names. Now if no pokemon is in the image downloading, it well return a space for the token. This adds up if your using multiple tokens to cover the tags you want, instead of one massive token. I would love that tokens don't create spaces if they don't find there tags. I guessed using conditional tokens would have been my best bet, but can't use them since it give me a warning about not using these characters <>. Maybe I'm just using them wrong.

Conditional tokens would have indeed be the best solution (or even conditional filenames). But not necessarily. Custom tokens do not (or at least should not, I tried and they didn't here) leave spaces (" "), but just be replaced by nothing ("").
Are you sure your filename is not the cause? For example, if you use "%character% %pokemon% %digimon% %md5%.%ext%", the fact that the %digimon% token is replaced by nothing will make the filename look like "%character% %pokemon%  %md5%.%ext%", therefore with two spaces.
One option (since these two tokens are exclusive) would be to stick them together ("%pokemon%%digimon%"), or as you said using conditional tokens: "<%character% ><%pokemon% ><%digimon% >%md5%.%ext%" where each space is dependent on the presence of the custom token.
It indeed seems that conditional tokens generate warnings though, but feel free to ignore them! My bad. :smile:

In Options - Save - 'Conditionnal' Filenames - Add conditional filename. The text in here in the English install is not in English, but French. This is only in the current version. In version 4.21 it's in English.

Indeed, I thought I translated the new fields but seems like it didn't.

What those the 'Save as...' naming system function under? Only on rule34.paheal images, if you use the Save as... option on an open image from this source, you get the all the tags from that image. I know rule34.paheal create that tag system while saving images from there normally, but Is there anyway to forces that option while doing a batch download in grabber?

I'm not sure I understand, but currently, the "Save as..." button uses as filename the original filename (%filename%.%ext%, not the one you might have set in the settings). What you would want is to use your own filename?

Ok for the save problem.
Full log.txt
Did a fresh log and in this test a little random, but downloads 1, 3, 5, 6, 7, 8, 10, 12 all saved there images across some sources on my system, the others in this list did not produce a image, but they did produce there "separate text file" with all the correct tags. This problem isn't present in version 4.21 for any of the sources I mentioned excluding e621 which no longer works in that version.
The case sensitive thing just caught me of guard as to why the custom tokens were not working the first time i used it to creating my pokemon token where every name had a capital letter. A little warning text for people new to grabber in there would be nice.
For the token problem, I tried using the <> even with the error message and made all my tags like <%tag%><%tag%>. It worked to remove the spaces. Sadly it removed every space including the space between words when used, then I did it with spaces like this <%tag% ><%tag% > and it reproduced my original problem of creating spaces for each token that didn't find its tags. not sure whats going on my end with this.
The "Save as..." thing I was talking about was for rule34.paheal only, since grabber can not grab tags from this sources, since it doesn't follow any tagging rules. But rule34.paheal names all there images and I didn't know if there was a token to grab just that name in grabber. %filename% was the answer I was looking for. I though %filename% was like %md5% after using it on a couple sources and get back a long string of numbers.

By log I actually meant the main.log file located in "%localappdata%/Bionus/Grabber".
As for your custom tag problem, I'll need more information, especially the filename format you're using, plus one of your custom tokens.
Because "<%tag% >" should produce nothing ("") when %tag% is empty.
For %filename%, it's actually just the filename as on the website's server. Depending on the source, it might be the MD5, the tags or something else.

Then this right?
main.txt
Hope version 4.21 did not change it to much since it's using the same log.
Well I use a lot of tokens, this is my token set up minus one token cause it's name.
%id% %artist% %copyright% %character% %GenderK% %King_belly% %Little_ Friend% %SpeciesA% %SpecialD% %To_cute% %Bad_day_ladys% %rating% %website%.%ext%
This is also the filename I use for all downloads. If I used <%tag%> all spaces go away, if I use <%tag% > the original problem returns.


Consul 0.8.0 is out! and it breaks a few things...

-rpc-addr no longer supported from command line so init.d script can't check status
dc seems to be always lowercase- which makes joining the wan never fire

That is "OK", I can make a new major release (3) that is only compatible with 0.8. Let's put BREAKING in the title of any PR related to this so that it is obvious from the changelog.


[BUG] SceneFX won't recognise that wlroots is installed on Chimera linux

What I'm Doing
I'm attempting to compiling SwayFX, But since SwayFX requires SceneFX, I am currently trying to compile SceneFX.
Main Issue
I installed all dependencies (including wlroots and wlroots-devel), and when attempting to do meson setup build the following output is recieved
The Meson build system
Version: 1.5.1
Source dir: /home/bik/GIT/scenefx
Build dir: /home/bik/GIT/scenefx/build
Build type: native build
Project name: scenefx
Project version: 0.1
C compiler for the host machine: cc (clang 18.1.8 "clang version 18.1.8")
C linker for the host machine: cc ld.lld 18.1.8
Host machine cpu family: x86_64
Host machine cpu: x86_64
Compiler for C supports arguments -Wundef: YES
Compiler for C supports arguments -Wlogical-op: NO
Compiler for C supports arguments -Wmissing-include-dirs: YES
Compiler for C supports arguments -Wold-style-definition: YES
Compiler for C supports arguments -Wpointer-arith: YES
Compiler for C supports arguments -Winit-self: YES
Compiler for C supports arguments -Wstrict-prototypes: YES
Compiler for C supports arguments -Wimplicit-fallthrough=2: NO
Compiler for C supports arguments -Wendif-labels: YES
Compiler for C supports arguments -Wstrict-aliasing=2: YES
Compiler for C supports arguments -Woverflow: YES
Compiler for C supports arguments -Wmissing-prototypes: YES
Compiler for C supports arguments -Walloca: YES
Compiler for C supports arguments -Wno-missing-braces: YES
Compiler for C supports arguments -Wno-missing-field-initializers: YES
Compiler for C supports arguments -Wno-unused-parameter: YES
Compiler for C supports arguments -fmacro-prefix-map=/prefix/to/hide=: YES
Found pkg-config: YES (/usr/bin/pkg-config) 2.3.0
Run-time dependency wayland-server found: YES 1.23.1
Found CMake: /usr/bin/cmake (3.30.3)
Run-time dependency wlroots found: NO (tried pkgconfig and cmake)

meson.build:103:16: ERROR: Neither a subproject directory nor a wlroots.wrap file was found.

A full log can be found at /home/bik/GIT/scenefx/build/meson-logs/meson-log.txt

Here is the meson-log.txt
OS info:
OS: Chimera Linux x86_64
Kernel: Linux 6.6.48-0-generic
Meson version: 1.5.1
Clang version: 18.1.18

Which wlroots version do you have installed?

Not sure why this case would come up but for now you can clone wlroots 0.17.4 into a subprojects directory in scenefx, which should allow you to compile it.

Not sure why this case would come up but for now you can clone wlroots 0.17.4 into a subprojects directory in scenefx, which should allow you to compile it.

This did infact compile scenefx with no issues, the only problem right now is that SwayFX cannot recognise the scenefx dependency?!
The Meson build system
Version: 1.5.1
Source dir: /home/bik/GIT/swayfx
Build dir: /home/bik/GIT/swayfx/build
Build type: native build
Project name: sway
Project version: 0.4
C compiler for the host machine: cc (clang 18.1.8 "clang version 18.1.8")
C linker for the host machine: cc ld.lld 18.1.8
Host machine cpu family: x86_64
Host machine cpu: x86_64
Neither a subproject directory nor a scenefx.wrap file was found.
Subproject  scenefx is buildable: NO (disabling)
Found pkg-config: YES (/usr/bin/pkg-config) 2.3.0
Found CMake: /usr/bin/cmake (3.30.3)
Run-time dependency scenefx found: NO (tried pkgconfig and cmake)

meson.build:44:10: ERROR: Dependency "scenefx" not found, tried pkgconfig and cmake

A full log can be found at /home/bik/GIT/swayfx/build/meson-logs/meson-log.txt
WARNING: Running the setup command as `meson [options]` instead of `meson setup [options]` is ambiguous and deprecated.

Here is the meson-log.txt again
Idk why this would happen.

Fixed it! I cloned scenefx to subprojects (with wlroots 0.17) In the swayfx folder, Now works just fine!

I will be re-opening this issue, this time it's because neither scenefx or swayfx recognise wlroots 0.17 installed on the system, I'm trying to package both swayfx and scenefx in chimera linux, and that means that building wlroots from source wont be a viable option for this proedure for this.
The Meson build system
Version: 1.5.2
Source dir: /builddir/scenefx-0.1
Build dir: /builddir/scenefx-0.1/build
Build type: native build
Project name: scenefx
Project version: 0.1
C compiler for the host machine: clang (clang 18.1.8 "clang version 18.1.8")
C linker for the host machine: clang ld.lld 18.1.8
Host machine cpu family: x86_64
Host machine cpu: x86_64
Compiler for C supports arguments -Wundef: YES
Compiler for C supports arguments -Wlogical-op: NO
Compiler for C supports arguments -Wmissing-include-dirs: YES
Compiler for C supports arguments -Wold-style-definition: YES
Compiler for C supports arguments -Wpointer-arith: YES
Compiler for C supports arguments -Winit-self: YES
Compiler for C supports arguments -Wstrict-prototypes: YES
Compiler for C supports arguments -Wimplicit-fallthrough=2: NO
Compiler for C supports arguments -Wendif-labels: YES
Compiler for C supports arguments -Wstrict-aliasing=2: YES
Compiler for C supports arguments -Woverflow: YES
Compiler for C supports arguments -Wmissing-prototypes: YES
Compiler for C supports arguments -Walloca: YES
Compiler for C supports arguments -Wno-missing-braces: YES
Compiler for C supports arguments -Wno-missing-field-initializers: YES
Compiler for C supports arguments -Wno-unused-parameter: YES
Compiler for C supports arguments -fmacro-prefix-map=/prefix/to/hide=: YES
Found pkg-config: YES (/usr/bin/pkg-config) 2.3.0
Run-time dependency wayland-server found: YES 1.23.1
Neither a subproject directory nor a wlroots.wrap file was found.
Subproject  wlroots is buildable: NO (disabling)
Did not find CMake 'cmake'
Found CMake: NO
Run-time dependency wlroots found: NO (tried pkgconfig)

meson.build:103:10: ERROR: Dependency "wlroots" not found, tried pkgconfig

A full log can be found at /builddir/scenefx-0.1/build/meson-logs/meson-log.txt
0:00:06.403 => A failure has occurred!
0:00:06.403 => Stack trace:
0:00:06.408 =>   /home/bik/GIT/cports/src/cbuild/core/build.py:504: in function 'build'
0:00:06.408 =>   /home/bik/GIT/cports/src/cbuild/core/build.py:689: in function '_build'
0:00:06.408 =>   /home/bik/GIT/cports/src/cbuild/core/build.py:278: in function 'invoke_configure'
0:00:06.408 =>   /home/bik/GIT/cports/src/cbuild/core/build.py:150: in function 'run_pkg_func'
0:00:06.408 =>   /home/bik/GIT/cports/src/cbuild/build_style/meson.py:5: in function 'configure'
0:00:06.408 =>   /home/bik/GIT/cports/src/cbuild/util/meson.py:81: in function 'configure'
0:00:06.408 =>   /home/bik/GIT/cports/src/cbuild/core/template.py:1819: in function 'do'
0:00:06.408 =>   /home/bik/GIT/cports/src/cbuild/core/chroot.py:829: in function 'enter'
0:00:06.408 => Raised exception:
0:00:06.408 =>   CalledProcessError: command '/usr/bin/bwrap --unshare-all --hostname cbuild --ro-bind /home/bik/GIT/cports/bldroot / --bind /home/bik/GIT/cports/bldroot/builddir /builddir --ro-bind /home/bik/GIT/cports/bldroot/destdir /destdir --ro-bind /home/bik/GIT/cports/sources /sources --dev /dev --proc /proc --tmpfs /run --tmpfs /tmp --tmpfs /var/tmp --new-session --die-with-parent --bind /home/bik/GIT/cports/cbuild_cache /cbuild_cache --uid 1337 --gid 1337 --chdir /builddir/scenefx-0.1 --ro-bind-data 5 /tmp/cbuild-lld-args linux64 -- meson setup --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/libexec --bindir=/usr/bin --sbindir=/usr/bin --includedir=/usr/include --datadir=/usr/share --mandir=/usr/share/man --infodir=/usr/share/info --sysconfdir=/etc --localstatedir=/var --sharedstatedir=/var/lib --buildtype=plain --auto-features=auto --wrap-mode=nodownload -Ddefault_library=both -Dwerror=false -Db_staticpic=true -Dpython.bytecompile=0 -Db_lto=true -Db_lto_mode=thin . build' failed with exit code 1
0:00:06.408 => Phase 'configure' failed for package 'scenefx'.

What's the output when you run this pkgconf --list-all | grep -ie wlroots?

What's the output when you run this pkgconf --list-all | grep -i wlroots?

In the build env of the build env, i got this output:
wlroots-0.17                   wlroots-0.17 - Wayland compositor library

Found the issue! apparently... its in the naming?!?
at this line of the meson.build
wlroots = dependency('wlroots',

renaming wlroots to wlroots-0.17 seems  to have fixed it
wlroots = dependency('wlroots-0.17',

I can probably fork both scenefx and swayfx with this specific line fix, or you could make releases with that line fix, so for example 0.4-chimera, let me know what you'd prefer :)

Interesting! I hope you don't mind if I take a day or two to validate this! Just want to ensure it doesn't break things for other distros

Absolutely no problem :p take ya time

closed as discussed in https://github.com/wlrfx/scenefx/pull/64

Oh yea i forgot to close it lol ty will


[v3.0.0-beta.1] error with Goutte v4

Hello, I just tried the v3.0.0 beta release and encountered an error with getUserAnimeList() /  getUserMangaList from Jikan\MyAnimeList\MalClient class.
Here's a code sample:
$malClient = new Jikan\MyAnimeList\MalClient();
$userAnimeListRequest = new Jikan\Request\User\UserAnimeListRequest('username', 0, 7);
$userAnimeList = $malClient->getUserAnimeList($userAnimeListRequest);

Error returned:
Call to undefined method Jikan\Goutte\GoutteWrapper::getClient()

It looks like getClient() was removed from Goutte in v4.

Hey, good catch.
Pushed out https://github.com/jikan-me/jikan/releases/tag/v3.0.0-beta.2 which should resolve this issue. Let me know

It works now, thank you!


Unable to create directory "D:\Program Files..."

Because Output Directory is set to:
D:\Program Files\Rockstar Games\GTA San Andreas\Samp server\0.3.7\plugins\

in Visual Studio project properties, someone who doesn't have that directory can't build the plugin successfully after cloning it.

It's there on purpose for me to debug easily in Visual Studio. It isn't present on Release.

OK, fair enough.


feat: Implement button press behavior

Implement behavior defined in #531, with the following caveats:

Additional behavior e.g. "raise the mount on pause" will be a future ticket

acceptance criteria

[ ] Button press executes existing pause procedure
[ ] Button hold (see ticket for timing) executes existing cancel procedure

designs
Reposted from 531:

Ping @readywater: I was testing the button test prototype branch over in #8218, and while actually interacting with the robot, a few states shook out that I think need consideration in terms of what the LED and/or app indicates to the user. I tried to make a table below with all states, including ones listed out in the proposal:

Robot State
Next user step
Button interactable?
Current LED
Proposed LED

Powered on
Load a protocol
No
Solid blue
???

Protocol loaded
Start the protocol
Yes
Solid blue
???

Start requested, not yet running
Wait for robot to start
No
Solid blue
???

Protocol running
Pause/stop the protocol
Yes
Solid blue
Solid blue

Pause requested, not yet paused
Wait for robot to pause
No
Sold blue
???

Protocol paused
Play/stop the protocol
Yes
Solid blue
Flashing blue

Waiting for stop hold
Keep holding button
Yes
Solid blue
Flashing red

Protocol stopped
Reset or load other protocol
No
Solid blue
Solid red

I left two entries out of that list that are present in the most pedantic sense, but are effectively "instant":

Resume requested, but not yet resumed

Resume happens right away once you hit the button

Cancel requested, but not yet cancelled

Once the 2 second hold timer finishes, the robot stops moving right away

@readywater based on what I can tell, pulsing is prohibitively difficult with the way the OT-2 hardware is wired up

@mcous Is it possible to do a sawtooth waveform? Eg gradually brighten to 100% then turn off? Main thing is just differentiating.

@readywater unfortunately, due to hardware constraints (i.e. no hardware PWM available), we have no easy dimming ability. Each color channel is either on or off.
I just did a quick experiment with bit-banging the GPIO pin from the Python software to get some pulsing. We could probably get something serviceable out of it, but it doesn't look great. My prototype relies on the timing of time.sleep, which is not consistent and can result in random little flashes when the light should be dim. I'm also a little wary of software PWM chewing through limited CPU resources


[Arbimon Legacy] Remove code related of project_plans table and project_plan_owner view

Related files

db/init/000-base-tables.sql
db/init/048-drop-project-plans.sql

no code related