Support AWS_ENDPOINT_URL environment variable

Currently, the only way to override the endpoint URL is by using the ConfigLoader::endpoint_url method: https://docs.rs/aws-config/latest/aws_config/struct.ConfigLoader.html#method.endpoint_url
Recently, the AWS CLI added support for using theAWS_ENDPOINT_URL env var for overriding the endpoint URL: https://github.com/aws/aws-cli/issues/1270#issuecomment-1626070761
It would be very useful to have support for this in aws-config

This feature is planned, although it may be a while before we get to it.


Remote BrowserWindow APIs with callback don't work

Hi, I'm considering to take a screenshot of app when test failed.  I found BrowserWindow's capturePage method but it doesn't work from Spectron as below.
Repro
1. $ npm install spectron electron-prebuilt
2. $ node below-code.js
'use strict';
const Application = require('spectron').Application;
const electron = require('electron-prebuilt');

const app = new Application({path: electron});
app.start();

// Wait for app starting
setTimeout(() => {
    console.log('start');
    app.browserWindow
        .capturePage(img => {
            console.log(img);
            const fs = require('fs');
            fs.writeFile('screenshot.png', img.toPng());
        })
        .then(result => {
            console.log('RESULT:', result);
            app.stop();
        });
}, 3000);

3. screenshot.png is not generated and final log is not output
Environment

Spectron 3.1.0
Electron 1.1.3
OS X 10.11.4 (MacBook Pro)

Thanks for raising this issue, a fix has been published in 3.1.1.
Since all spectron APIs return promises, you won't specify the callback as an argument to capturePage but instead call then on the return value and the promise should be resolved with a node Buffer containing the raw image data. It can't return a nativeImage since those aren't JSON serializable and are only available in Electron apps since it is a Chrome-specific API.
You can write it directly out as a png though:
app.browserWindow.capturePage().then(function (imageBuffer) {
  fs.writeFile('page.png', imageBuffer)
})

And it does support the rect parameter if you only want to get a part of the page:
app.browserWindow.capturePage({x: 0, y: 0, width: 10, height: 10}).then(function (imageBuffer) {
  fs.writeFile('page.png', imageBuffer)
})

Thank you!  It's very helpful.  I'll confirm the fix.


bug: @helia/http not passing gateways from config to httpGatewayRouting

https://github.com/ipfs/helia/blob/be86ac7200264e1671a0091a683db83cac0865da/packages/http/src/index.ts#L80
This makes customizing @helia/verified-fetch with default gateways impossible without explicitly passing a custom helia instance

we are fully customizing a helia node in verified fetch..


[Event Hubs] ports tests from master to track2

Also depends on #3494
This ports the tests from the master branch, and makes a few changes based on API updates.

/azp run js - eventhubs-client - tests

@ramya-rao-a
I rebased against the recent changes to the event-hubs-track2 branch. Updated tests to work with API changes.


sys.server_principals view?

The doc located here suggests that the sys.server_principals view exists as part of Sql Datawarehouse now called Azure Synapse Analytics however, it does not exist in the multiple installations we have examined. Was the view removed and part of earlier releases of the product?
This question is related to compliance reviews.

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

ID: 39c5adf9-f58f-34f7-d410-a2340912a734
Version Independent ID: 244eccee-f8d3-f99f-9d65-c59bd392f218
Content: sys.server_principals (Transact-SQL) - SQL Server
Content Source: docs/relational-databases/system-catalog-views/sys-server-principals-transact-sql.md
Product: sql
Technology: system-objects
GitHub Login: @VanMSFT
Microsoft Alias: vanto

Hi @jeffqu17! Thanks for bringing up this issue. The page you're referencing shows that Azure Synapse is not included as having that view:

Are you seeing that this appears somewhere?

I'll go ahead and close this for now, but please let us know if you have any concerns, and we can address them.


human readable date formatter

ideally should support conversion in both directions; implementation should support localization for so it works in multiple language; this either overlaps with or can leverage #78

Cole and Rebecca tried out few-shot prompting for going from human-readable dates to EDTF. We provided the EDTF spec and a list of example string-EDTF pairs.
Cole tested GPT-4o. It did fairly well and responded well to corrections when it missed a kind of formatting - it parsed similar examples correctly after the correction. Rebecca tested Claude Sonnet 3.5; it did similarly well with formatting, but struggled with calendar conversions. We're going to stick with parsing human-readable dates to EDTF for now.
The core prompt:

I am providing the spec for the Library of Congress EDTF (Extended Date Time Format). I am also providing a list of paired plaintext strings with their EDTF representations as few shot examples. I would like you to respond to future queries of plaintext with the assumption that they are dates, and to parse them into the EDTF format. Return results with the JSON structure:
{
"input": <input_text>,
"edtf": <parsed_edtf>
}

EDTF_Date Conversion Experiment.md

We are going to try to standardize a prompt with the needed EDTF spec and examples as context to include with each query. We create some test data and a script that we can use with multiple LLMs (maybe using litellm or another similar library) so we can benchmark against different large and small foundational models. If the results are promising, we can extend this into functionality that can be used in the core undate library.

I was using the version of Claude integrated with the Zed editor. Here's the prompt I started with:

@fetch https://www.loc.gov/standards/datetime/
Based on the specification for the Extended Date Time Format (EDTF) and examples of human readable strings and EDTF representation, please parse other plain text strings into EDTF format into this json structure:
{'input': <input_text>, 'parsed': <parsed_edtf>, 'notes': <comments>}

Here are some examples:
...

@ColeDCrawford I got the chance to chat with @statsmaths about the kinds of dates he had to wrangle to use the FSA/OWA Library of Congress collection.
One of the interesting things that wasn't on my radar previously is that LLMs should do better at taking advantage of context and we will want to test; e.g. one of the photos in the examples Taylor shared was listed as July of a particular year in the date field but it's evident from the title that it is July 4th.  Probably other general context would be relevant, like hemisphere if you're using seasons, or US / Britain context to disambiguate month/year vs year/month.
I've started a google sheets spreadsheet in the shared drive for this project with provisional structure for starting to collect example dates from different projects for whenever we're able to circle back to this.
I've set it up so we can keep track of when we have example dates from specific projects or sources.


SelectField alignment issue with inline forms

I'm trying to create an inline form and want horizontal alignment between my fields.  However, without any styling the SelectField is too high:

I've tried setting the margin and padding on the field, but not luck. How do I get them aligned?
Here is the jsx i'm using

        <AutoComplete
          floatingLabelText = "Origin"
          dataSource = {["London", "Seattle", "Bombay"]}
          style={{
            marginLeft: 10,
            martginRight: 10
          }}/>
        <AutoComplete
          floatingLabelText = "Destination"
          dataSource = {["London", "Seattle", "Bombay"]}
          style={{
            marginLeft: 10,
            martginRight: 10
          }}/>
        <SelectField
          style={{
            marginLeft: 10,
            martginRight: 10
          }}
          floatingLabelText = "Service"
          value={this.state.selectValue}
          onChange={this._handleSelectValueChange.bind(null, 'selectValue')}
          valueMember="id"
          displayMember="name"
          menuItems={[
            {id:"1", name:"Regular"},
            {id:"2", name:"Express"}]} />

We have changed the style of the SelectField lately, could you try with the latest prerelease?

Thanks @oliviertassinari for the quick response. I tried the same code with the master build but no change.

+1

@javaguy I found the fix for this. Setting vertical-align to bottom on the SelectField should do the trick
This should be added to the appropriate place in the codebase by someone who works on the project, as it's a common problem people would run into

@javaguy : were you able to get this resolved either by the above suggestion or your own work around or by using the latest build? let us know if you still need any help with this.

This is no longer a problem. I tried to reproduce it on the docs website and it looks to be fine. just a display: 'inline-block' on the containing div worked for me.

Closing this issue for now. If you still feel that you need help with this, feel free to comment below.

Hi, this is still an issue where both text and select controls are in a line.
Setting verticalAlign: 'bottom' on the select control resolves.

... this is still an issue. verticalAlign: 'bottom' on SelectField fixes it, but it would be great to have it fixed in the master.
@tintin1343

fyi, I opened a new issue referencing this at #6470 with another workaround that works with flexbox

It looks like all you'd need to do is add verticalAlign:'bottom' to the root className right here.. Is that correct?

@JarLowrey Do you have a reproduction with the latest version?

I was also having a similar issue with combine select and textfield. Select will go up a little bit but I didn't resolve it by setting the verticalAlign:'bottom', rather I found out from the compiled html output that  the TextField has a FormControl inside while Select doesn't.  If I wrap the Select in a FormControl, it resolves.

Column name

<input aria-invalid="false" aria-required="false" class="MuiInput-input-225" type="text" value="">

However, initially, I wrap both TextField and Select in a FormControl, which cause the vertical alignment issue.
Just want to ask is it a design decision to wrap TextField in a FormControl while Select doesn't?

@tintin1343 did you read the issue ?


Add building section for Linux to README.md

@dolohow  I think it should be cmake . instead of  cmake CMakeLists.txt
Also, it would be gread if you'd add a paragraph like this:
In order to build the test suite, use
make aquila_test

After that, you can run it using
./tests/aquila_test

I currently have issues for building for fedora and it would be helpful to have better documentation.

Wow, has it really been 7 years since I posted this :-?
It would certainly be good if this could be merged.


Using StringFeature Kills Application

Doing anything with the library that uses StringFeature causes the application to just sit idly recursively allocating memory until it has consumed all system memory (if you allow it to), regardless of the data set length, string size, trainer parameters, etc.

I should elaborate. I'm attempting document classification with this library, and it seems that even learn from a small sample base consumed huge amounts of memory. I'll do some profiling to try and pin down where, but I think I might also attempt to implement some sort of on disk caching so the operation isn't done entirely in memory.

Ruh roh - might need to do some optimization. Do you have sample data + code I could have a go at?

@sethjuarez Hey sorry I didn't get the notification that you replied somehow. Umm, unfortunately my training data is several gigs. lol. But yeah I wasn't stuffing all that 8 gigs into the library when I getting this issue, was actually a relatively small sample set. Anyway I ended up switching to Java to actually build out my model using openNLP.

Awesome. As long as you got your stuff to work that is perfect.

Was just looking through the library, I see HammingDistance is implemented, did I miss Levenshtein distance somewhere or is that one you haven't implemented yet?  Have you not found it as useful a measure? Just curious.

Absolutely useful when dealing with strings. In the case of the lib, I pre-convert everything to numbers. Any ideas where we could add this?

After looking at the library in more detail, how does the numl.Utils.StringHelpers class sound with a LevenshteinDistance method?
It could be used to create a [Feature] that would be the edit distance number that could then be used to train on?

Conversion works in a row (or class) by row manner. In other words, I would need to compare the [Feature] in question with something else in order to get a resulting number. Maybe we can open a new issue?


Export onPlayEnd is not working

Describe the bug
The export onPlayEnd is not working im getting this error below:
802_GTAProce]             MainThrd/ ^1SCRIPT ERROR: @xsound/client/exports/events.lua:8: attempt to index a nil value (field '?')^7
[   9195937] [b2802_GTAProce]             MainThrd/ ^3> ref^7 (^5@xsound/client/exports/events.lua^7:8)
[   9195937] [b2802_GTAProce]             MainThrd/ ^3> fn^7 (^5@lb-musicapp/client.lua^7:112)
[   9195937] [b2802_GTAProce]             MainThrd/ ^1SCRIPT ERROR: @lb-musicapp/client.lua:112:
[   9195937] [b2802_GTAProce]             MainThrd/ ^5 An error occurred while calling export `onPlayEnd` in resource `xsound`:

My Code:
xSound:onPlayEnd(musicId, function()
    print("end")
end)

This is expected if the sound ID doesnt exists you cannot use these events they have to be called after PlayUrl / PlayUrlPos

Oh okay


Use jsx format in markdown code blocks

fixes #5
Hope this is right, one of my first open source contributions :)

Codecov Report

Merging #22 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #22   +/-   ##
=======================================
  Coverage   94.62%   94.62%
=======================================
  Files           9        9
  Lines          93       93
  Branches       29       29
=======================================
  Hits           88       88
  Misses          5        5

Continue to review full report at Codecov.

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

Awesome, @menor. Welcome to open source. 🎉


fix: Deprecate pause and resume in GameLoop

Description
GameLoop methods pause() and resume() are marked as deprecated, with a recommendation to use start() and stop() instead. The reason they are deprecated is because their functionality is identical to that of the other pair of methods, so no reason to keep them around... Also, property previous was made final (with a deprecated getter for backward-compatibility), since changing it externally would break GameLoop's functionality.
Here's the summary of behavior changes:

start() can now be called multiple times; previously calling start() twice would produce an error
stop() now works the same way as pause(); previously calling stop() and then start() would produce negative times
property .previous is no longer settable

Checklist

[x] The title of my PR starts with a Conventional Commit prefix (fix:, feat:, docs: etc).
[x] I have read the Contributor Guide and followed the process outlined for submitting PRs.
[x] I have updated/added tests for ALL new/updated/fixed functionality.
[x] I have updated/added relevant documentation in docs and added dartdoc comments with ///.
[x] I have updated/added relevant examples in examples.

Breaking Change

[x] No, this is not a breaking change.

Related Issues
This is split out of #1234

Note: we may also make pause/resume the main methods, and redirect/deprecate start+stop.


BREAKING(http): rename STATUS_CODE to STATUS_CODES and STATUS_TEXT to STATUS_TEXTS

What's changed
The STATUS_CODE constant has been renamed to STATUS_CODES, and the STATUS_TEXT constant has been renamed to STATUS_TEXTS.
Motivation
The names of these constants were renamed to provide names that correctly describe what these symbols are. STATUS_CODE is not a "status code". Rather, it is an object whose entries are status codes. Similarly with STATUS_TEXT.
Also, node:http has STATUS_CODES and METHODS, which are also objects. Changing to the wrong name was made in #3781 by me.
Migration guide
To migrate, use STATUS_CODES instead of STATUS_CODE and STATUS_TEXTS instead of STATUS_TEXT.
- import { STATUS_CODE, STATUS_TEXT } from "@std/http/status";
+ import { STATUS_CODES, STATUS_TEXTS } from "@std/http/status";

- STATUS_TEXT[STATUS_CODE.NotFound]; // "Not Found"
+ STATUS_TEXTS[STATUS_CODES.NotFound]; // "Not Found"

Related
Addresses https://github.com/denoland/std/pull/5217#issuecomment-2262783646

I'm not in favor of this change. The reasons are:

Singular form for enum like object looks just fine to me.
It's very late to start discussing this kind of idea (one day before the stabilization)

I'm against this change. It makes sense for enums to be singular. When you get a value from it, it is only a single value in the form of dot notation. If it was more in the form of an array then I would agree it should be plural as it is an object containing status codes, but as an enum it is a status code of a value yet to be decided.

Ok. That's a sufficient amount of sentiment against. Dropping. Thanks for your input, guys.


Non-compliant PATCH calls

Your test suite tries to PATCH a group with the following call:
PATCH http://{{Server}}{{Port}}/{{Api}}/Groups/{{groupid}}

{
    "schemas": [
        "urn:ietf:params:scim:api:messages:2.0:PatchOp"
    ],
    "Operations": [
        {
            "name": "addMember",
            "op": "add",
            "path": "members",
            "value": [
            	{
            		"displayName":"new User",
            		"value":"{{id4}}"
            	}
            	]

        }
    ]
}

However, it seems that 'displayName' should be 'display' as per
https://tools.ietf.org/html/rfc7644.
This causes my endpoint to seemingly correctly output:
{
    "schemas": [
        "urn:ietf:params:scim:api:messages:2.0:Error"
    ],
    "status": 400,
    "scimType": "invalidPath",
    "detail": "invalidPath: no attribute named 'displayName' from 'members'"
}

Which in turn causes a subsequent test to fail as the user is not a member of that group.
Can you confirm this is an error, and should I open a pull request to fix?
Thanks!

I can confirm this. There also seem to be a whole host of problems with the implementation.

The MemberBase type does not include the Display attribute.
The OperationValue type does not include the Display attribute either, meaning that even if it is passed during a patch operation, it is not updated in Member/MemberBase.
And this bit in ProtocolExtensions needs to be updated as well to map Display from OperationValue to MemberBase. https://github.com/AzureAD/SCIMReferenceCode/blob/12f21fbe90a09cc7acf8f834da73f482e3af9a34/Microsoft.SystemForCrossDomainIdentityManagement/Protocol/ProtocolExtensions.cs#L163-L167

On top of that, it seems $ref is also completely missing.


[AutoPR cognitiveservices/data-plane/ComputerVision] ComputerVision add tag.hint

Created to sync https://github.com/Azure/azure-rest-api-specs/pull/3259

This PR has been merged into https://github.com/Azure/azure-sdk-for-go/pull/2033


Firefox stalls on redirect to CAS

Hi, phpCAS v1.6.0 as supplied with moodle v4.1.4 here.
It seems that the redirect to the CAS auth page obtained at URL http://moodle.server/login.php?authCAS=CAS makes Firefox stall waiting for page content; Chrome changes URL immediately without delay instead.
The reply sent by the server is as follows:
HTTP/1.1 302 Found
< Server: nginx/1.18.0 (Ubuntu)
< Date: Tue, 09 Jul 2024 09:12:22 GMT
< Content-Type: text/html; charset=utf-8
< Transfer-Encoding: chunked
< Connection: keep-alive
< Set-Cookie: MoodleSession=xxxxxxxxxxx; path=/
< Expires: Thu, 19 Nov 1981 08:52:00 GMT
< Cache-Control: no-store, no-cache, must-revalidate
< Pragma: no-cache
< Location: https://cas.server/cas/login?service=http%3A%2F%2Fmoodle.server%2Flogin%2Findex.php%3FauthCAS%3DCAS&gateway=true
< Set-Cookie: NSC_XXXX_XXXXXXXXXXXX_XXXX=xxxxxx;expires=Tue, 09-Jul-2024 11:11:54 GMT;path=/;secure;httponly
< Strict-Transport-Security: max-age=157680000
Since the connection is keep-alive and the transfer is chunked Firefox is likely waiting a content that never arrives.
Is this a moodle issue or a phpCAS issue? How can I change the Connection header to "Connection: close", which seems to fix this issue?
Thanks a lot in advance for support!
P.S.: adding a "Content-Length: 0" header should also work

The following patch for v1.6.0 seems to fix the issue
phpCAS_Client.php.diff.gz


VEGA-401: Give sysadmin users the ability to delete team entities

Pretty much the same as deleting users, although I had to hide the button between the v1-teams:delete permission because managers also have access to this page.
I fixed the URLs for testing page accessibility, which identified one accessibility problem I fixed and a known issue with the design system which I covered up.
NB: You can URL-hack to edit and delete an already-deleted team, which we should fix (by returning 410 when a team has been deleted).

Agreed on Slack to do a follow-up PR to clean up the GetMyPermissions/HasPermission functions, and rearrange auth around permissions rather than roles (VEGA-538).

Agreed on Slack to do a follow-up PR to clean up the GetMyPermissions/HasPermission functions, and rearrange auth around permissions rather than roles (VEGA-538).


Docker: Added a way to configure the socket path

Description
Added an option to configure the Docker socket path in the Docker extension.
Screencast

Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing
[x] I ran npm run build and tested this distribution build in Raycast
[x] I checked that files in the assets folder are used by the extension itself
[x] I checked that assets used by the README are placed outside of the metadata folder

Can you review this @priithaamer 🔥

Would it be possible for anyone of you to provide metadata images in a PR or send them to me - I don't have Docker installed 🙂


chore: remove deprecated ErrorGroupServiceClient#getGroup(GroupName g…

Codecov Report

Merging #1 (0a6b04e) into master (e60820e) will decrease coverage by 0.64%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master       #1      +/-   ##
============================================
- Coverage     65.94%   65.30%   -0.65%
  Complexity      108      108
============================================
  Files            18       18
  Lines           781      781
  Branches         11        5       -6
============================================
- Hits            515      510       -5
  Misses          256      256
- Partials         10       15       +5

Impacted Files
Coverage Δ
Complexity Δ

...rrorreporting/v1beta1/ErrorStatsServiceClient.java
60.21% <0.00%> (-3.23%)
15.00% <0.00%> (ø%)

...orreporting/v1beta1/ReportErrorsServiceClient.java
39.39% <0.00%> (-3.04%)
7.00% <0.00%> (ø%)

...rrorreporting/v1beta1/ErrorGroupServiceClient.java
40.00% <0.00%> (-2.50%)
10.00% <0.00%> (ø%)

Continue to review full report at Codecov.

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

googleapis/code-suggester@v1 failed,but that's not related to this changes.


[Issue #140] Use /bin/bash instead of /bin/sh.

On systems where bash is not default shell, configure script will fail. As each shell has own way to handle variables, we should not assume bash is the default shell and explicitly say we want to use bash.

I see no big problem to use Bourne-compatible syntax, heh? Almost all
opensource configure runs perfectly on any UNIX/Linux without issue. Why
it should be the issue for (probably) most portable library?
02.12.2017 1:58, Mika Lindqvist пишет:

On systems where bash is not default shell, configure script will
fail. As each shell has own way to handle variables, we should not
assume bash is the default shell and explicitly say we want to use bash.

    You can view, comment on, or merge this pull request online at:

https://github.com/Dead2/zlib-ng/pull/141
    Commit Summary

[Issue #140] Use /bin/bash instead of /bin/sh.
File Changes

M Makefile.in
https://github.com/Dead2/zlib-ng/pull/141/files#diff-0 (2)

M configure
https://github.com/Dead2/zlib-ng/pull/141/files#diff-1 (2)

M tools/list_intel_intrinsics.sh
https://github.com/Dead2/zlib-ng/pull/141/files#diff-2 (2)
Patch Links:

https://github.com/Dead2/zlib-ng/pull/141.patch

https://github.com/Dead2/zlib-ng/pull/141.diff

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/Dead2/zlib-ng/pull/141, or mute the thread
https://github.com/notifications/unsubscribe-auth/AOUiqL8RoANX4xBrZsenHIpl3M8XIybGks5s8FpvgaJpZM4Qy1rZ.

--
"Some people, when confronted with a problem, think «I know, I'll use regular expressions.» Now they have two problems."
--Jamie Zawinsk

C++: Bug to the future *

@yvoinov Original zlib did stick to bash/ksh compatible syntax... So zlib-ng has no reason to deviate from it to keep sharing fixes as easy as possible.

I do not understand what we are arguing about? The standard de facto in
opensource is the use of automake. Which generates in almost all cases
compatible configuration scripts. It's just what it takes to start using it.
02.12.2017 2:04, Mika Lindqvist пишет:

@yvoinov https://github.com/yvoinov Original zlib did stick to
bash/ksh compatible syntax... So zlib-ng has no reason to deviate from
it to keep sharing fixes as easy as possible.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Dead2/zlib-ng/pull/141#issuecomment-348601007, or
mute the thread
https://github.com/notifications/unsubscribe-auth/AOUiqAeMI2NYewL8LxmpQ7hCEe9KOfgEks5s8FvWgaJpZM4Qy1rZ.

--
"Some people, when confronted with a problem, think «I know, I'll use regular expressions.» Now they have two problems."
--Jamie Zawinsk

C++: Bug to the future *

Original zlib is not ideal implementation and require much manual work
before use.
Do you want to do better, or do you want to do as badly as before?
02.12.2017 2:04, Mika Lindqvist пишет:

@yvoinov https://github.com/yvoinov Original zlib did stick to
bash/ksh compatible syntax... So zlib-ng has no reason to deviate from
it to keep sharing fixes as easy as possible.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Dead2/zlib-ng/pull/141#issuecomment-348601007, or
mute the thread
https://github.com/notifications/unsubscribe-auth/AOUiqAeMI2NYewL8LxmpQ7hCEe9KOfgEks5s8FvWgaJpZM4Qy1rZ.

--
"Some people, when confronted with a problem, think «I know, I'll use regular expressions.» Now they have two problems."
--Jamie Zawinsk

C++: Bug to the future *

@yvoinov Problem with autoconf/automake/libtool is pretty much all different versions not being compatible with each other, so it's pretty much double the work.
We will gradually make the configure part better, but our main concern currently is to fix errors in the code and to optimize the code to be as fast as possible without introducing compatibility issues.

Ah. Well.
Let's make tests, in this case.
PS. I see no problem with use current version of automake. If you study
it a bit better, you will see it's rarely required to
reconfigure/change, also automake relatively rarely changes, because of
it is the base of toolchain (yes, now is 2017 already. XXI century.
Nothing better has been invented yet. Especially in terms of
compatibility). However, if it is too hard.... Well, no problem. I can
make private package myself.
02.12.2017 2:10, Mika Lindqvist пишет:

@yvoinov https://github.com/yvoinov Problem with
autoconf/automake/libtool is pretty much all different versions not
being compatible with each other, so it's pretty much double the work.
We will gradually make the configure part better, but our main concern
currently is to fix errors in the code and to optimize the code to be
as fast as possible without introducing compatibility issues.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Dead2/zlib-ng/pull/141#issuecomment-348602509, or
mute the thread
https://github.com/notifications/unsubscribe-auth/AOUiqHjqV3m8pyNsNU-KqZgYL8X4ThFPks5s8F1SgaJpZM4Qy1rZ.

--
"Some people, when confronted with a problem, think «I know, I'll use regular expressions.» Now they have two problems."
--Jamie Zawinsk

C++: Bug to the future *

@yvoinov zlib-ng is still in very early stage of development, so we will be adding more and more tests to the configure script. When we are happy with all the tests, it will be easier to convert them to use m4 macros whenever possible... The current problem is that even though some people can use latest versions of autoconf/automake/libtool, there is still quite a few operating systems widely in use that don't have the latest versions available.

Mika,
see no problem. Let's test.
Just remember about this issue ;) This is all I would like :)
02.12.2017 2:21, Mika Lindqvist пишет:

@yvoinov https://github.com/yvoinov zlib-ng is still in very early
stage of development, so we will be adding more and more tests to the
configure script. When we are happy with all the tests, it will be
easier to convert them to use m4 macros whenever possible... The
current problem is that even though some people can use latest
versions of autoconf/automake/libtool, there is still quite a few
operating systems widely in use that don't have the latest versions
available.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Dead2/zlib-ng/pull/141#issuecomment-348604665, or
mute the thread
https://github.com/notifications/unsubscribe-auth/AOUiqEv3pSPiTEqLe9KoVmuPiMU4dEvRks5s8F-3gaJpZM4Qy1rZ.

--
"Some people, when confronted with a problem, think «I know, I'll use regular expressions.» Now they have two problems."
--Jamie Zawinsk

C++: Bug to the future *

I will remember everything... I don't forget things just because I don't completely agree... Just remember the core development team is just me and @Dead2. He is the main developer and I'm the guy who makes sure everything works on other systems than the latest Intel processors running Linux or MacOS.
People can usually see me reply first, because Dead2 has other projects that take higher priority and I am online almost every day even though not 24/7.

I have seen no PRs for fixing the incompatibilities with Bourne shell, so since we have no way to test and no information about what fail, I guess we might as well go with bash.
But I am thinking "/usr/bin/env bash" might be a better way to find bash by default, this searches the users PATH env variable instead of specifying a path that will not be correct on several distros.
This would then also work for example on OpenBSD that places bash in /usr/local/bin, and on OS X the user might want to use one from /opt/local/bin/bash instead of the ancient default one living in /usr/bin/bash.

The problem with using /usr/bin/env is that not all operating systems have /usr/bin.

Due to UNIX-way, most of OS has /bin, /sbin, or /usr/bin. This is pure academic and useless discussion. SO, it is so difficult to support most of compatible OS (which has /usr/bin), search via PATH on other and _clearly document on several marginal? Or simple write scripts compatible and interoperable? This is so big deal for real developers, heh?

"/usr/bin/env bash" is shown to solve problems in at least two OSes, what does it break though? There likely isn't a solution that solves all corner cases, so we need to settle with finding one that works on most modern OS/distros.

"env" is not always located in /usr/bin ... We should never rely on /usr/bin even existing, because no standard dictates that the directory should exist or contain any specific executable or command. MinGW-w64 is one of the platforms where /usr/bin doesn't exist, MSYS2 does have it though.

Only configure needs to use bash, makefile and list_intel_intrinsics.sh do not utilize bash scripting and can use /bin/sh as the default interpreter just fine. That means less potential for problems.
I still think "#!/usr/bin/env bash" is the most portable way for configure though.
MinGW users will need to start it as "bash configure" or change the line, true, but MinGW users are already a special case.
The only solution more portable than that would likely be "#!/bin/sh -c bash" or "#!/bin/sh -c env bash", but I have no idea whether that would truly be better or worse.
Actually the FHS (Filesystem Hierarchy Standard) does indeed specify that /usr/bin exist and is used for binaries available to all users (/bin is for binaries vital to system operation). Most popular (all?) linux distros are moving away from storing anything in /bin, and instead putting everything in /usr/bin since this simplifies things such as security frameworks and having a static shared /usr mounted on lots of VMs or via NFS instead of having it duplicated on each machine. It can also be useful in embedded and smartphone situations.
The LSB standard mandates that the env executable be available, but does not specify where.
/usr/bin/ is not customary in the Unix filesystems though, but those too can easily run bash manually, and they might not even have it available in /bin. And some Unix systems do use /usr/bin instead of /bin.

Updated... Consensus seems we will not support operating systems that don't have "env" in /usr/bin ...


fix Vimeo by going straight to https

The plain http url redirects to https, but then one would have to enable redirection. Go straight to the right place instead.

Thanks for the update.


ExperimentHparams class

Added the ExperimentHparams class, documentation, and test cases as described in the design doc
TODO:

[ ] Merge #948. This PR is stacked on top of it.

Do we need any docs for this?

The answer is always yes :)
But we do not have any docs for training with yahp. This should be documented within the (future) yahp tutorial.

would using ExerimentHparams require changes to the entrypoints such as https://github.com/mosaicml/composer/blob/dev/examples/run_composer_trainer.py ? Currently, everything is initialized from trainerhparams.

This is a non-breaking change; all existing trainer hparams will work as-is.


Devlop 212

The Branch fixes up the Pinpoint service-2.json file
output shape of most of the "operations"  have been changed to confime to how Paws returns its results
ie.
CreateApp.output.shape was "CreateAppResponse"  now "ApplicationResponse"

Any Idea when version .39 of Paws is comming out??


Document how to update the testenv001 environment

User Story
As a developer I want to know the steps on how to update the test environment testenv001
Acceptance criteria

We should also think about simplifying it, e.g. not having to specify specific commits in the different repos but instead have testenv001 tags everywhere that we can move around

Tasks

On the simplification step, I am not sure if it would be easy to achieve it on the integration image part.

It was just an idea, not sure how viable it is :)


QGC logging issues with Intel Aero RTF

I'm following the instruction in this tutorial, but I can't consistently generate log files. Most of the time, when I click "start logging" no file appears under "Saved Log Files." Occasionally a file appears and the index begins increasing, but then it quickly disappears.
Here's some info from the NuttX console:
nsh> logger status
INFO [logger] Running in mode: mavlink
INFO [logger] Mavlink Logging Running
nsh> mavlink status
instance #0:
mavlink chan: #0
no telem status.
flow control:        ON
rates:
tx: 0.512 kB/s
txerr: 0.000 kB/s
rx: 0.000 kB/s
rate mult: 0.377
accepting commands: YES, FTP enabled: NO
transmitting enabled: YES
mode: Normal
MAVLink version: 2
transport protocol: serial (/dev/ttyS3 @57600)
instance #1:
GCS heartbeat:        865846 us ago
mavlink chan: #1
type: GENERIC LINK OR RADIO
flow control:        ON
rates:
tx: 66.425 kB/s
txerr: 0.028 kB/s
rx: 0.805 kB/s
rate mult: 1.000
ULog rate: 40.0% of max 70.0%
accepting commands: YES, FTP enabled: YES
transmitting enabled: YES
mode: Onboard
MAVLink version: 2
transport protocol: serial (/dev/ttyS1 @921600)

Did you disable logging in mavlink-router? By default, logs are already stored on the linux side via mavlink router under /var/lib/mavlink-router.

How could I check if I disabled logging in mavlink-router? I never intentionally did that.
Is the file path you mentioned on the aero compute board? If so, is there any way to get the logs to store on my laptop running QGC?

How could I check if I disabled logging in mavlink-router?

There should be a line Log= in  /etc/mavlink-router/main.conf on the compute board that you can delete.

Is the file path you mentioned on the aero compute board?

Yes. If you disable mavlink router ligging, you should be able to use the QGC log streaming, as you did above.


[BUG] When specifying dynamic version using a single file, '/' is included in SOURCES.txt

setuptools version
setuptools==66.1.0
Python version
Python 3.10
OS
macOS
Additional environment information
No response
Description
I am trying to use dynamic metadata (as described in the docs here) to load the version of my package in pyproject.toml from a file. I first tried using version = { file = "src/VERSION" }, and I found that if i do this, setuptools includes / in the SOURCES.txt; however, pip/setuptools can't handle this and will fail to build the package when installing it from source.
I've attached an MWE (sample_project.zip), but the key files are below:
My pyproject.toml:
[project]
name = "sample_project"
dynamic = ["version"]

## build specification
[build-system]
requires = ["setuptools >= 61.0.0"]
build-backend = "setuptools.build_meta"

[tool.setuptools.dynamic]
version = {file = "src/VERSION"}

Contents of src/VERSION:
0.1.0

After some trial and error, a colleague of mine identified that if we make file into a list, the problem goes away:
[tool.setuptools.dynamic]
version = {file = ["src/VERSION"]}

Looking in the documentation, i see other examples of files being specified as lists (e.g. requirements.txt dynamic loading) but there is no example of specifying the version using a file.
Expected behavior
I could imagine two potential outcomes that would make sense in my head

setuptools metadata interprets {file = "src/VERSION"} the same as {file = ["src/VERSION"]}
setuptools throws an error if it does not get a list. To me, this is less intuitive (i can't imagine why anyone would need more than one file to specify the version) however it does provide quicker feedback about what is wrong and how to fix it.

How to Reproduce

download and unzip the attached MWE and cd into the directory
install build: pip install build
run the build command: python -m build --sdist
(in a virtualenv) install the resulting sdist: pip install dist/sample_project-0.1.0.tar.gz

Output
Output of step 3 (note '/' not a regular file -- skipping 2/3 of the way down):
$ python -m build --sdist
* Creating venv isolated environment...
* Installing packages in isolated environment... (setuptools >= 61.0.0)
* Getting build dependencies for sdist...
/private/var/folders/fx/35b0z9051xz_8hmylnf2j4b80000gn/T/build-env-sjxd0z_i/lib/python3.10/site-packages/setuptools/config/pyprojecttoml.py:108: _BetaConfiguration: Support for `[tool.setuptools]` in `pyproject.toml` is still *beta*.
  warnings.warn(msg, _BetaConfiguration)
running egg_info
writing src/sample_project.egg-info/PKG-INFO
writing dependency_links to src/sample_project.egg-info/dependency_links.txt
writing top-level names to src/sample_project.egg-info/top_level.txt
reading manifest file 'src/sample_project.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
writing manifest file 'src/sample_project.egg-info/SOURCES.txt'
* Building sdist...
/private/var/folders/fx/35b0z9051xz_8hmylnf2j4b80000gn/T/build-env-sjxd0z_i/lib/python3.10/site-packages/setuptools/config/pyprojecttoml.py:108: _BetaConfiguration: Support for `[tool.setuptools]` in `pyproject.toml` is still *beta*.
  warnings.warn(msg, _BetaConfiguration)
running sdist
running egg_info
writing src/sample_project.egg-info/PKG-INFO
writing dependency_links to src/sample_project.egg-info/dependency_links.txt
writing top-level names to src/sample_project.egg-info/top_level.txt
reading manifest file 'src/sample_project.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
writing manifest file 'src/sample_project.egg-info/SOURCES.txt'
warning: sdist: standard file not found: should have one of README, README.rst, README.txt, README.md

running check
creating sample_project-0.1.0
creating sample_project-0.1.0/src
creating sample_project-0.1.0/src/sample_project.egg-info
copying files to sample_project-0.1.0...
copying MANIFEST.in -> sample_project-0.1.0
copying pyproject.toml -> sample_project-0.1.0
'/' not a regular file -- skipping
copying src/VERSION -> sample_project-0.1.0/src
copying src/__init__.py -> sample_project-0.1.0/src
copying src/sample_project.egg-info/PKG-INFO -> sample_project-0.1.0/src/sample_project.egg-info
copying src/sample_project.egg-info/SOURCES.txt -> sample_project-0.1.0/src/sample_project.egg-info
copying src/sample_project.egg-info/dependency_links.txt -> sample_project-0.1.0/src/sample_project.egg-info
copying src/sample_project.egg-info/top_level.txt -> sample_project-0.1.0/src/sample_project.egg-info
Writing sample_project-0.1.0/setup.cfg
Creating tar archive
removing 'sample_project-0.1.0' (and everything under it)
Successfully built sample_project-0.1.0.tar.gz

Contents of dist/sample_project-0.1.0.tar.gz/src/sample_project.egg_info/SOURCES.txt produced by step 3:
MANIFEST.in
pyproject.toml
/
src/VERSION
src/__init__.py
src/sample_project.egg-info/PKG-INFO
src/sample_project.egg-info/SOURCES.txt
src/sample_project.egg-info/dependency_links.txt
src/sample_project.egg-info/top_level.txt

Output of step 4:
$ python -m pip install dist/sample_project-0.1.0.tar.gz
Looking in indexes: https://pypi.org/simple, https://dig-grid-artifactory.apps.ge.com/artifactory/api/pypi/opus-one-pypi-virtual/simple
Processing ./dist/sample_project-0.1.0.tar.gz
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Installing backend dependencies ... done
  Preparing metadata (pyproject.toml) ... done
Building wheels for collected packages: sample-project
  Building wheel for sample-project (pyproject.toml) ... error
  error: subprocess-exited-with-error

  × Building wheel for sample-project (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [22 lines of output]
      /private/var/folders/fx/35b0z9051xz_8hmylnf2j4b80000gn/T/pip-build-env-wlxo9tub/overlay/lib/python3.10/site-packages/setuptools/config/pyprojecttoml.py:108: _BetaConfiguration: Support for `[tool.setuptools]` in `pyproject.toml` is still *beta*.
        warnings.warn(msg, _BetaConfiguration)
      running bdist_wheel
      running build
      running build_py
      creating build
      creating build/lib
      copying src/__init__.py -> build/lib
      running egg_info
      writing src/sample_project.egg-info/PKG-INFO
      writing dependency_links to src/sample_project.egg-info/dependency_links.txt
      writing top-level names to src/sample_project.egg-info/top_level.txt
      reading manifest file 'src/sample_project.egg-info/SOURCES.txt'
      reading manifest template 'MANIFEST.in'
      writing manifest file 'src/sample_project.egg-info/SOURCES.txt'
      error: Error: setup script specifies an absolute path:

          /

      setup() arguments must *always* be /-separated paths relative to the
      setup.py directory, *never* absolute paths.

      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for sample-project
Failed to build sample-project
ERROR: Could not build wheels for sample-project, which is required to install pyproject.toml-based projects

Thank you very much for reporting @AnjoMan and for the investigation/suggestions.

@AnjoMan CI is working in a new patch release (it may take some time), but soon it should be available on PyPI, please let me know if the fix does not work as intended.

Ok nice, i was able to install 66.1.1 and the sample project now builds as expected, and i can pip install the resulting sdist. I think the issue is addressed! Thanks so much!


implement now function in ast builder

Issue
Resolve #677
Description
implement now function in ast builder

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

10 of 10 (100.0%)  changed or added relevant lines in 1 file are covered.
19 unchanged lines in 1 file lost coverage.
Overall coverage decreased (-0.05%) to 97.838%

Files with Coverage Reduction
New Missed Lines
%

test-suite/src/tester.rs
19
88.89%

Totals

Change from base Build<PHONE_NUMBER>:
-0.05%

Covered Lines:
28957

Relevant Lines:
29597

💛  - Coveralls


Global genetic covariance estimation

Hello,
I have successfully used SUPERGNOVA to calculate local genetic covariance estimates, however now I would like to confirm that those sum up to the total genome-wide genetic covariance. Is the global genetic covariance estimate output by the program, or is there an argument I can use to get this estimate? Sorry if this is not the best place to ask the question since it is not an issue with the program/code, I just wasn't sure of the best way to reach out.
Thank you in advance for your help!
Best,
Sarah

Hi Sarah,
SUPERGNOVA currently doesn't output global genetic covariance. Our previous method, GNOVA (https://github.com/xtonyjiang/GNOVA) can output global genetic covariance and it has been proved that the global genetic covariance estimation of SUPERGNOVA is almost equivalent to the global genetic covariance of GNOVA. So, I would suggest  you use GNOVA to estimation global genetic covariance.
Thank you.
Best,
Yiliang

Hi Yiliang,
Thank you for getting back to me, I will plan on using GNOVA then.
Best,
Sarah


Cleanup tools/jenkins/run_performance.sh script

-- start running on pull requests for {c++, node, ruby, csharp}
-- cleanup some other nits.

LGTM


Dialyzer error using GraphiQL plug

As soon as I configure a default_url for GraphiQL in my Phoenix router, I'm getting a dialyzer warning.
forward "/graphiql", Absinthe.Plug.GraphiQL,
      default_url: {__MODULE__, :graphiql_default_url},
      schema: MyAppWeb.Schema

def graphiql_default_url, do: MyAppWeb.Endpoint.url() <> "/api"

or
forward "/graphiql", Absinthe.Plug.GraphiQL,
      default_url: "/api",
      schema: MyAppWeb.Schema

Leads to:
lib/my_app_web/router.ex:1:no_return
Function __checks__/0 has no local return.

absinthe_plug 1.5.0
phoenix 1.5.4

This also happens when adding the socket or socket_url options. No change after upgrading to Phoenix 1.5.6.

I get this as well if I just specify advanced:
# works:
    forward("/graphiql", Absinthe.Plug.GraphiQL, schema: IdoWeb.Schema)
# fails:
    forward("/graphiql", Absinthe.Plug.GraphiQL, schema: IdoWeb.Schema, interface: :advanced)

Something similar appears to have been reported to phoenix itself:
https://github.com/phoenixframework/phoenix/issues/3393
I'm going to close this, since our direction forward involves removing GraphiQL from absinthe_plug itself. Please chime in if any of you know if there's an easy fix though...
I believe it can be worked around with the following annotation:
@dialyzer {:no_return, {:__checks__, 0}}


bitHound

Update dependencies and add bitHound support

Current coverage is 100% (diff: 100%)

Merging #2 into master will not change coverage

@@           master    #2   diff @@
===================================
  Files           1     1
  Lines           7     7
  Methods         0     0
  Messages        0     0
  Branches        0     0
===================================
  Hits            7     7
  Misses          0     0
  Partials        0     0

Powered by Codecov. Last update bafe532...3dbfe98


Threading Lock issue with to_netcdf and Dask arrays

I have multiple netCDF files that I process and write to a single output file.
from pathlib import Path

import xarray as xr

DS = xr.open_mfdataset(Path('L3_data/').glob('**/*.nc'),
                       combine='nested',
                       concat_dim='time',
                       decode_times=False,
                       chunks={'time': 200})

DS.to_netcdf('test.nc')

I was not able to reproduce the issue with a simple example, here are the files : L3_data.zip. The issue does not appear systematically but sometimes, .to_netcdf blocks indefinitely. When interrupted manually, the trace is the following:
Traceback (most recent call last):
  File "test_xarray.py", line 11, in <module>
    DS.to_netcdf('test.nc')
  File "/Users/bilelomrani/opt/miniconda3/envs/s5p/lib/python3.7/site-packages/xarray/core/dataset.py", line 1568, in to_netcdf
    invalid_netcdf=invalid_netcdf,
  File "/Users/bilelomrani/opt/miniconda3/envs/s5p/lib/python3.7/site-packages/xarray/backends/api.py", line 1090, in to_netcdf
    writes = writer.sync(compute=compute)
  File "/Users/bilelomrani/opt/miniconda3/envs/s5p/lib/python3.7/site-packages/xarray/backends/common.py", line 204, in sync
    regions=self.regions,
  File "/Users/bilelomrani/opt/miniconda3/envs/s5p/lib/python3.7/site-packages/dask/array/core.py", line 945, in store
    result.compute(**kwargs)
  File "/Users/bilelomrani/opt/miniconda3/envs/s5p/lib/python3.7/site-packages/dask/base.py", line 167, in compute
    (result,) = compute(self, traverse=False, **kwargs)
  File "/Users/bilelomrani/opt/miniconda3/envs/s5p/lib/python3.7/site-packages/dask/base.py", line 452, in compute
    results = schedule(dsk, keys, **kwargs)
  File "/Users/bilelomrani/opt/miniconda3/envs/s5p/lib/python3.7/site-packages/dask/threaded.py", line 84, in get
    **kwargs
  File "/Users/bilelomrani/opt/miniconda3/envs/s5p/lib/python3.7/site-packages/dask/local.py", line 475, in get_async
    key, res_info, failed = queue_get(queue)
  File "/Users/bilelomrani/opt/miniconda3/envs/s5p/lib/python3.7/site-packages/dask/local.py", line 133, in queue_get
    return q.get()
  File "/Users/bilelomrani/opt/miniconda3/envs/s5p/lib/python3.7/queue.py", line 170, in get
    self.not_empty.wait()
  File "/Users/bilelomrani/opt/miniconda3/envs/s5p/lib/python3.7/threading.py", line 296, in wait
    waiter.acquire()
KeyboardInterrupt

Environment:
I'm on Mac OS 10.15.6
Output of xr.show_versions()
INSTALLED VERSIONS
commit: None
python: 3.7.8 | packaged by conda-forge | (default, Jul 31 2020, 02:37:09)
[Clang 10.0.1 ]
python-bits: 64
OS: Darwin
OS-release: 19.6.0
machine: x86_64
processor: i386
byteorder: little
LC_ALL: None
LANG: fr_FR.UTF-8
LOCALE: fr_FR.UTF-8
libhdf5: 1.10.4
libnetcdf: 4.6.2
xarray: 0.16.0
pandas: 1.1.1
numpy: 1.19.1
scipy: 1.3.1
netCDF4: <IP_ADDRESS>
pydap: None
h5netcdf: None
h5py: None
Nio: None
zarr: None
cftime: 1.2.1
nc_time_axis: None
PseudoNetCDF: None
rasterio: 1.0.28
cfgrib: None
iris: None
bottleneck: None
dask: 2.25.0
distributed: 2.25.0
matplotlib: 3.3.1
cartopy: None
seaborn: None
numbagg: None
pint: None
setuptools: 49.6.0.post20200814
pip: 20.2.2
conda: None
pytest: None
IPython: 5.8.0
sphinx: None

I seem to also have similar issue, running under docker/linux environment. It doesn't happen always, maybe once out of 4~5 times.

Using:

xarray=0.16.0
dask=2.25.0
netcdf4=1.5.4

I am experiencing same when trying to write netcdf file using to_netcdf() on a files opened via xr.open_mfdataset with lock=None (which is default).
Then I tried to open files with lock=False and it worked like a charm. Issue have been gone for 100% of times.
BUT
Now I am facing different issue. Seems that hdf5 IS NOT thread safe, since I encounter NetCDF: HDF error while  applying different function on a netcdf files which were previously processed by another functions with lock=False.
Script just terminates not even reaching any calculation step in the code. seems like lock=False works opposite and file is in a corrupted mode?
This is the BIGGEST issue and needs resolve ASAP

Did this work reliably in the past? If so, any clues about specific versions of dask and/or netCDF that cause the issue would be helpful.
@TomAugspurger do you know off-hand if there have been any recent changes in Dask's scheduler that could have caused this?

Did this work reliably in the past? If so, any clues about specific versions of dask and/or netCDF that cause the issue would be helpful.
@TomAugspurger do you know off-hand if there have been any recent changes in Dask's scheduler that could have caused this?

I am new to xarray dask thing but month ago it was woking without issues. I recently reinstalled python and dont know if versions differs from previous one

@TomAugspurger do you know off-hand if there have been any recent changes in Dask's scheduler that could have caused this?

This is just using Dask's threaded scheduler, right? I don't recall any changes there recently.

Did this work reliably in the past? If so, any clues about specific versions of dask and/or netCDF that cause the issue would be helpful.

I am working on my first project using Dask arrays in cunjunction with xarray so I cannot tell if previous combinations of versions worked. I tried downgrading dask down to v2.20 but the issue is still here.

This is just using Dask's threaded scheduler, right? I don't recall any changes there recently.

Without the option chunks={'time': 200} the previous snippet seems to work very reliably.

For my case, I saw this happen only when I started to run xarray scripts with cron, about a month ago. I would run it once every six hours and every day or so, I would see a NetCDF file locked up. I ended up changing the work flow somewhat so I don't do this any more (was using xarray to manipulate NetCDF and re-write to it) but this was confusing me for quite a while.

was using xarray to manipulate NetCDF and re-write to it

We should probably document this more clearly, but opening and then rewriting the same file in xarray without closing the original file is not something xarray supports.

Good point! Yes, after a bit of trial and error, this is what I did. Is there any limitation when over-writing an existing NetCDF file that hasn't been opened by xarray?

I'm having a similar issue to what is described here, but I'm seeing it even when I'm not rewriting an output file (although it is an option in my code). I have a delayed function that is calling to_netcdf and seem to run into some race condition where I get the same deadlock as the original poster. It seems highly dependent on the number of dask tasks and the number of workers. I think I've gotten around it for now by having my delayed function return the Dataset it is working on and then calling to_dataset later. My problem is I have cases where I might not want to write the file so my delayed function returns None. To handle this I need to pre-compute my delayed functions before calling to_dataset since I don't think there is a way to pass something to to_dataset so it doesn't create a file.
With the original code it happened quite a bit but was part of a much larger application so I can't really get a MWE together. Just wanted to mention it here as another data point (to_netcdf inside a Delayed function may not work 100% of the time).

I am having a similar issue as well. Using latest versions of dask, xarray, distributed, fsspec, and gcsfs.
My workflow consists of:

Start dask client with 1 process per CPU, and 2 threads each. This is because it doesn't scale up reading from the cloud with threads.
Opening 12x monthly climate data (hourly sampled) using xarray.open_mfdataset
Using reasonable dask chunks in the open function
Take monthly average across time axis, and write to local NetCDF.
Repeate 2-4 for different years.

It is a hit or miss. It hangs towards the middle or end of a year. Next time I run it, it doesn't.
Once it hangs, and I hit stop, in the traceback it is stuck at await of threading lock.
Any ideas how to avoid this?
Things I tried:

Use processes only, 1 thread per worker
lock=True, lock=False on open_mfdataset
Dask scheduler as: spawn and forkserver
Different (but recent) versions of all the libraries


Show news

Description
News added to frontend.
Status
READY
Type of change

New feature (non-breaking change which adds functionality)

Não ta passando no code climate @renan601 @joaovitorml @lucianosz7


CI

At least do a complete build and yell if anything fails.

I got some basic CI running now, it does make all, lint go and check C code formatting. On push to main, and on new PR (draft or not).
I think I want to add some kind of check for changes that causes signer.bin to change. By storing the currect expected hash in the repo maybe?

apps/signer/app.bin.sha256 and CI check coming here: https://github.com/tillitis/tillitis-key1-apps/pull/55

The signer app hash check was merged.


[ai] Covering match not found when using cover_or_next

Contributing guidelines

[X] I have read CONTRIBUTING.md
[X] I have read CODE_OF_CONDUCT.md
[X] I have updated 'mini.nvim' to latest version

Module(s)
ai
Description
when executing an inside or around command with mini.ai configured with a search_method of cover_or_next, the next pair is chosen instead of the covering pair. This happens when the closing delimiter of the covering pair is on another line.
Neovim version
0.7.0
Steps to reproduce

nvim -nu minimal.lua
:lua require("mini.ai").setup({search_method = "cover_or_next"})
Type the following in an empty buffer

(if (blah)
)

Put your cursor at the first column of the first line
dab

Expected behavior
The whole thing should be deleted and you should be left with an empty buffer.  (this is the behavior of native dab)
Actual behavior
The next match gets deleted
(if
)

This is by design. It is usually helpful if cursor is inside some big covering region but you want to select next. If you don't like it, you can set search method to 'cover' and use "last"/"next" mappings to select previous/next textobject.
Truth be told, I a little bit regret this design decision after implementing "last"/"next" mappings, but originally they were not there. Also as you are not the first one to report this, I wonder how to make the note about this behavior more stand out.
Duplicate of #116.


Replace direct Guava usage by Stargate (use shaded everywhere applicable) to reduce Guava conflict w/ Cassandra backend

There was a recent issue with an old Guava version (19.0) getting included due to exclusions, transitive dependencies, causing some test setup failures. Let's add a global managed version to try to remove/reduce likelihood of such problem resurfacing.
Although the first idea was same as #814 it turned out more difficult to try to align Guava version across C* 3.11, 4.0 and DSE (impossible, basically) and it appears much better to use Datastax OSS driver shaded Guava uniformly.
This lets underlying persistence/storage to use Guava version they do without affecting Stargate.
This may mean we require newer shaded version (current one is 25), but for now the version we have works fine.

Looks like persistence modules (C* 3.11 and 4.0 for sure, DSE probably too) require earlier Guava version(s), alas.
Need to figure out how to do that.

Actual plan ended up being replacing all possible Stargate Guava usage with shaded copy, leaving just 3 areas (wrt PR):

gRPC not yet converted since it's actively developed (lots of merges) -- will change in a follow-up PR
C* 4.0 backend has exactly one remaining use, due to C* 4.0 API requirements (Guava leakage): looks like that cannot be replaced
DSE backend will also require separate PR, to be investigated (separate verification process).

PR #1253 ready for a big set of (mostly) mechanical changes.


[BUG] The fields need to be made final

Search before asking

[X] I had searched in the issues and found no similar issues.

Environment
Mac
EventMesh version
master
What happened
There are many fields which are static field public but not final, and could be changed by malicious code or by accident from another package. The field could be made final to avoid this vulnerability.
How to reproduce
It may be changed from another package
Debug logs
No response
Are you willing to submit PR?

[X] Yes I am willing to submit a PR!

I want to fix this issue!

I want to fix this issue!

Welcome!


Grant of a Warehouse to a Role

I am missing a command / feature to grant a usage  right on a snowflake warehouse to a role.
Or is this allready posible and i mised it?
thank you very much and knd regards
Andreas

sorry my mistake i found


Use buf schema registry for the protobufs

We should consider using buf schema registry for the protobufs.
Introduction: https://docs.buf.build/
cosmos: https://buf.build/cosmos
Originally posted by @0Tech in https://github.com/line/lbm-sdk/pull/490#discussion_r838359286

Our original proto files have their version v1, so if we have to introduce any breaking changes after the release, we should update the version.

Also, the upstream is using buf since 0.46.0.


keras 3.0.5 - Loss "classes" as strings interpreted incorrectly

import numpy as np
import keras

print(f"keras.__version__: {keras.__version__}"
      )

n_samples = 8

n_features = 3
n_targets = 2

train_x = np.random.random((n_samples, n_features))
train_y = np.random.random((n_samples, n_targets))

inputs = keras.layers.Input(shape=(n_features,))
outputs = keras.layers.Dense(n_targets)(inputs)
model = keras.Model(inputs=inputs, outputs=outputs)
model.summary()

model.compile(loss="MeanSquaredError",
              optimizer='adam')

print('Train...')
model.fit(train_x, train_y, epochs=1)

Throws
Traceback (most recent call last):
  File "repro.py", line 24, in <module>
    model.fit(train_x, train_y, epochs=1)
  File "venv\lib\site-packages\keras\src\utils\traceback_utils.py", line 123, in error_handler
    raise e.with_traceback(filtered_tb) from None
  File "venv\lib\site-packages\keras\src\losses\loss.py", line 28, in __init__
    self.name = name or auto_name(self.__class__.__name__)
tensorflow.python.framework.errors_impl.OperatorNotAllowedInGraphError: Using a symbolic `tf.Tensor` as a Python `bool` is not allowed. You can attempt the following resolutions to the problem: If you are running in Graph mode, use Eager execution mode or decorate this function with @tf.function. If you are using AutoGraph, you can try decorating this function with @tf.function. If that does not work, then you may be using an unsupported feature or your source code may not be visible to AutoGraph. See https://github.com/tensorflow/tensorflow/blob/master/tensorflow/python/autograph/g3doc/reference/limitations.md#access-to-source-code for more information.

If I pass loss = keras.losses.MeanSquaredError() (not as a string) to compile(), it works correctly.  If I forget the parentheses, I also get the error above - suggesting that the string is being parsed incorrectly.

That's what I'm doing at the moment, I opened the ticket as passing the class name as a string used to work in tf.keras,  But if the new behaviour is expected, you can close the issue.

Thanks for the report, this is now fixed.

Reference commit: https://github.com/keras-team/keras/commit/70054103f88dec3e199a54ddbf27174169c66dff


disconnected by vac | skinchanger problem

I think it's a problem from Skin Changer.
Because there are error codes such as bayonet.mdl files not found on the console, a solution should be found.
I am thrown in the middle of a competitive match.
Not only in bayonet, but in all other skins, red inscriptions appear because they could not be found on the console.
@danielkrupinski fix pls.

Not only in bayonet, but in all other skins, red inscriptions appear because they could not be found on the console.

that's not why you are getting disconnected.
also u get that error without skin changer with default knife.

U can try to verify yhe game files or reinstall the game

U can try to verify the game files or reinstall the game

Download vac bypass loader


x y axis problem

Can I not let it display the value ?

I can't understand the way you use the language.


How to resize an ebs mounted volume

Aws provides a way to resize an EBS volume but the size change is not reflected inside the docker.
I tired to use the growpart and resize2fs tools without success even with a container in privileged mode.
So I'm looking for any recommendation from Rancher on how to properly resize a volume.
Here is the detail of commands found on AWS EBS guide
root@5f2a70849e10:/# df -h
Filesystem      Size  Used Avail Use% Mounted on
overlay          59G  3.2G   55G   6% /
tmpfs           7.9G     0  7.9G   0% /dev
tmpfs           7.9G     0  7.9G   0% /sys/fs/cgroup
/dev/xvda1       59G  3.2G   55G   6% /.r
/dev/xvdf       2.0G  1.8G     0 100% /data/db-hf
shm              64M     0   64M   0% /dev/shm

root@5f2a70849e10:/# lsblk
NAME    MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda    202:0    0  60G  0 disk
`-xvda1 202:1    0  60G  0 part /etc/hosts
xvdf    202:80   0  10G  0 disk /data/db-hf

root@5f2a70849e10:/# growpart /dev/xvdf 1
WARN: unknown label
failed [sfd_dump:1] sfdisk --unit=S --dump /dev/xvdf
/dev/xvdf: device contains a valid 'ext4' signature; it is strongly recommended
to wipe the device with wipefs(8) if this is unexpected, in order to avoid possi
ble collisions
sfdisk: failed to dump partition table: Success
FAILED: failed to dump sfdisk info for /dev/xvdf

root@5f2a70849e10:/# resize2fs /dev/xvdf
resize2fs 1.42.13 (17-May-2015)
resize2fs: Bad magic number in super-block while trying to open
/dev/xvdf
Couldn't find valid filesystem superblock.

Eventually I managed to resize the volume (I've no idea why it worked this time)
root@5f2a70849e10:/# resize2fs /dev/xvdf
resize2fs 1.42.13 (17-May-2015)
Filesystem at /dev/xvdf is mounted on /data/db-hf; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 1
The filesystem on /dev/xvdf is now 2621440 (4k) blocks long

But it was corrupted.

Please let us know in a comment if you can still reproduce the issue, and we'll reopen it


feat: add zstd compression support

zstd experimental feature is enabled to calculate upper bound of Vec capacity to be allocated while decompressing data using zstd::bulk::Decompressor::upper_bound.
supported levels are -128~22, with 0 defaulting to level 3 (due to zstd library behaviour).
benchmark Load block from disk
Load block from disk/1024 KiB [no compression] time:   [6.0854 µs 6.2072 µs 6.3423 µs]
Load block from disk/1024 KiB [lz4] time:   [7.2133 µs 7.3160 µs 7.4288 µs]
Load block from disk/1024 KiB [miniz] time:   [10.358 µs 10.542 µs 10.740 µs]
Load block from disk/1024 KiB [zstd(-3)] time:   [9.2772 µs 9.5900 µs 9.9649 µs]
Load block from disk/1024 KiB [zstd(-1)] time:   [9.0652 µs 9.1867 µs 9.3248 µs]
Load block from disk/1024 KiB [zstd(1)] time:   [9.0680 µs 9.2127 µs 9.3672 µs]
Load block from disk/1024 KiB [zstd(3)] time:   [9.0162 µs 9.1445 µs 9.2872 µs]
Load block from disk/1024 KiB [zstd(12)] time:   [10.432 µs 10.605 µs 10.795 µs]

Load block from disk/131072 KiB [no compression] time:   [150.79 µs 153.20 µs 155.90 µs]
Load block from disk/131072 KiB [lz4] time:   [193.57 µs 196.56 µs 199.61 µs]
Load block from disk/131072 KiB [miniz] time:   [232.92 µs 236.82 µs 241.00 µs]
Load block from disk/131072 KiB [zstd(-3)] time:   [197.10 µs 199.85 µs 203.01 µs]
Load block from disk/131072 KiB [zstd(-1)] time:   [198.58 µs 201.26 µs 204.22 µs]
Load block from disk/131072 KiB [zstd(1)] time:   [201.25 µs 203.61 µs 206.26 µs]
Load block from disk/131072 KiB [zstd(3)] time:   [197.61 µs 199.59 µs 201.84 µs]
Load block from disk/131072 KiB [zstd(12)] time:   [217.46 µs 220.58 µs 224.06 µs]

There's a few things about this PR that might need some feedback/discussions.

zstd-rs is a binding to the zstd library, so it's not pure rust, not sure if it's a design goal for lsm-tree to be pure rust or not.
I've used zstd::bulk because the interface is convenient (uses Vec), and the doc says that it can be faster than the streaming one because it allocates the buffers in memory. This does mean that if the data being compressed/uncompressed is large then the memory that needed to be allocated is larger as well. I don't know enough to get a feel of how big the typical data being processed for compression/decompression in lsm-tree. I also am not sure if it's even possible to use the streaming interface given the current interface used by lsm-tree for compression.
Wanted to get feedback on the serialization of Zstd(value), zstd itself accepts -(1<<17) ~ 22 for compression rate. so far with the u8 limit on the serialization, I have only map -128 ~ 22. based on testing (load block from disk bench) -128 is faster than lz4 (forgot to include it in the above description, will have to run it again later). If we want to expose the full range of possible fast levels, then need to figure out how to best map -(1<<17)~-1 to -128-1 due to the u8 limit.
Would appreciate some guidelines on how the benchmarks in https://fjall-rs.github.io/post/announcing-fjall-2/ is being done, so I could replicate it to see whether it's actually worth it to add zstd. Based on my knowledge, typically zstd provide more optimal cpu/compression compared to DEFLATE, but it doesn't really compete against lz4 for pure decompression performance (unless I guess we use extreme fast/negative levels). But hoping that the better compression ratio and tunability of zstd would be useful.

zstd-rs is a binding to the zstd library, so it's not pure rust, not sure if it's a design goal for lsm-tree to be pure rust or not

I would like it to be, but there's no production ready library out there right now. https://github.com/KillingSpark/zstd-rs/pulls has some encoding efforts going on, but it's far from usable. Ideally, it could just be switched out if there ever is a worthy contender.

This does mean that if the data being compressed/uncompressed is large then the memory that needed to be allocated is larger as well

It never is. Blocks tend to be 4 - 64 KB in size. It's also needed in memory because the size needs to be known (for the block header).

If we want to expose the full range of possible fast levels, then need to figure out how to best map -(1<<17)~-1 to -128-1 due to the u8 limit.

Hmm yeah, interesting. The problem is that the block header needs to be fixed, so I went with 2 bytes because I haven't at looked at how many compression levels there tend to be. Miniz just has 10 or so.
With a u8 we can go from 20 down to -234. Most sources tend to recommend something along the lines of -7 - 20. So I'm not sure how important it is to even support negative levels that are much lower than 200. That would need some benchmarking. If -8000 is barely faster than -127 at much worse space savings, there's not point in supporting it I think.

There's also a few unrelated change (e.g. benches/tree.rs block->data_block rename, some renaming of test names), please let me know if you'd rather I split out those into separate PR/commit.

so I could replicate it to see whether it's actually worth it to add zstd

For the benchmarks in the first chapter I used this project: https://gist.github.com/marvin-j97/22dfbe2ae2d9a8b9bcc938c8d48e54c7 - it needs a corpus of text documents on disk (DOCS_FOLDER) that it will ingest.
You'll need to use the HEAD of https://github.com/fjall-rs/fjall because I had to fix a bug.


Fix typos

Fix typos found by running codespell on the repository.

lol my pr getting scooped haha; if you fix the libcusparse typo, i can fully close my pr (#553).

@emergenz  fixed the libcusparse typo in e00ff35.

@khatwanimohit can you land this (including continuous spell checking)?


(finish implementing) incremental-update of summaries

Currently there's no easy way to update cubedash's product summaries once created.
There is a max_age when the spatial table is updated, but not when generating the summaries themselves, so they are skipped if they exist at all (in the get_or_update() function).
We should extend the generate command to allow updating summaries older than a certain age.
(this was never needed previously in the NCI instance as it has a freshly-cloned database every day)
Reported by @dunkgray, as this affected DEA Africa.

Fixed in: https://github.com/opendatacube/datacube-explorer/pull/84

Reopening this — we only have a “force” option to force recreation of every summary,  but I’d like to add real incremental updates.


Installation Guide for Dummy

Hello Team,
Good day!
I am completely newbie for a project assigned to me wherein I am looking for a perfect ESXi Exporter that will expose the metrics in our ESXi servers.  I wonder if you can share a detailed installation guide for me to use so I can test this exporter.
Looking forward to your timely response.
TIAl

By the way, I am targetting to use this exporter on the following ESXi versions:

6.0.0
6.7.0
7.0

Don't know which part you need help with.
The basic instruction is in fact already provided. All you need is to download executable file from releases, set ESX_* variables to inform about your ESX details and run it:
export ESX_HOST=esx.domain.local export ESX_USERNAME=user export ESX_PASSWORD=password export ESX_LOG=debug prometheus-vmware-exporter &
In the background the program will start collect metrics which should be available at http://:9512/metrics  and all you need is to add this endpoint to Prometheus and present results on Grafana.
If you don't understand the concept of Prometheus and Grafana there is a lot of good tutorials around. E.g. https://betterstack.com/community/guides/monitoring/visualize-prometheus-metrics-grafana/ or https://grafana.com/go/explore-prometheus-with-easy-hello-world-projects/ and you should start with them.

Hello @sylweltan - Thank for the response.  I've downloaded and installed in one of my ESXi Device.  Exported the variables needed.  But when I attempted to run, I am getting this...
FATA[2024-05-21T10:53:21Z] listen tcp :9512: invalid argument
Any clues on how to fix this?  TIA!

Well, you should install it on some Linux/Windows machine not on ESXi device. That machine should have connectivity to ESXi over tcp port 22. Usually such exporters are installed on the VM hosting Prometheus/Grafana.


Palette as string

It would be helpful if the program would recognize common palette names and use those instead of a PNG file. Maybe add the most popular palettes from the Lospec Palette List?
The most popular palette could also serve as a default value if no palette parameter is given.

Part of the Go rewrite.


How to add favicon.ico？

How to add favicon.ico for my blog？

You can add your favicon.ico in the public/ directory

@Atinux how do add it to the header? is there a config to define head meta tags?

It's actually the browser that will try to get it from the header automatically.
You can use the alpine.head property in your app.config.ts @fanckush

@Atinux, how and where is this implemented?
I'm currently researching best practices around Nuxt and SEO and can't find the alpine.head (for example within https://github.com/nuxt-themes/alpine/blob/46c2412569a1e0c439b4932590e47f316a5069cf/nuxt.schema.ts).

It's used in https://github.com/nuxt-themes/alpine/blob/46c2412569a1e0c439b4932590e47f316a5069cf/components/AppLayout.vue#L17


Support IntelliJ versions beyond 173

Due to API changes, features like completion don't work in 2018.1.1. An additional test suite will have to be made somehow that compiles the plugin against various versions of the IntelliJ API to ensure this won't happen in the future.

From a quick glance it looks like supporting both versions will be a pain. There is too much reliance on internal APIs to get things like completion working across versions. Otherwise two separate branches of the plugin would have to be maintained for every API incompatibility. I think the best thing to do is only support the latest version of IntelliJ.
Originally the only reason to support 173 was for Android Studio, but since the latest version will soon support 181 anyway there would be no reason to support 173 anymore. Also IDEA comes with Android support built in, so there doesn't seem to be a huge loss for migrating over.


Fix BuildAll Error Stemming from StrictMode and Retarget Solution

Strictmode was causing the failure below
The variable '$WindowsAppSDKVersionProperty' cannot be retrieved because it has not been set.

at <ScriptBlock>, D:\WindowsAppSDK\BuildAll.ps1: line 162

The fix was to simply declare the variable outside of the scope.

/azp run


sqlfluff: 3.2.0 -> 3.2.3

Diff: https://github.com/sqlfluff/sqlfluff/compare/refs/tags/3.2.0...3.2.3
Changelog: https://github.com/sqlfluff/sqlfluff/blob/3.2.3/CHANGELOG.md

Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[ ] Fits CONTRIBUTING.md.

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

Result of nixpkgs-review pr 347799 run on x86_64-linux 1

2 packages built:

sqlfluff
sqlfluff.dist


Can I have many computers with one Docker account

Hello guys , I have a question .
I have a computer in my work , and I have a computer in my home .
when I make a new enviroment , at my work ( install docker ) . do I have to use a new user account ?
Or can I have one docker Account to many enviroment  ( computer work , computer home , computer 3 .... )
Thanks

you need 1 account only.
In fact, Docker account allows you to push image to Docker Hub. In case you pull image only (like me), you don't need it.


[$250] [Track Tax] Add the ability to configure tax rates on distance rates in NewDot

Coming from here.
Figma here.
Problem
International customers tracking tax on distance expenses are forced to use OldDot to configure their settings. This leads to them not being suitable to migrate to NewDot. In turn, prevents us from achieving full reunification for all collect workspaces.
Why is this important?
We can't migrate these workspaces otherwise. We're already building the ability to see tax rates applied to distance expenses in NewDot, so we need to ensure that's configurable in the workspace settings as well for complete feature parity.
Solution
1. Add a Track Tax toggle to the Workspace > Distance rates > Settings page

The toggle should be greyed out and locked if the Taxes feature isn't enabled.
If Taxes are enabled the Track Tax toggled it's greyed out by default, but can freely be enabled at that point.
If an admin disables Taxes on the workspace, Track tax on Distance rates should get disabled as well.

2. When the Track Tax toggle is enabled, add two push rows for Tax rate and Tax reclaimable on within the RHP page of each individual distance rate in the Distance rates table.

The two push rows should be hidden when Track Tax is disabled
When revealed, the values should be blank by default
If an admin configures a rate/reclaimable portion, and then disables Track Tax or Taxes on the workspace, the two rows should be hidden.
If an admin configures a rate/reclaimable portion > disables Track Tax > re-enables Track Tax the rate selection/reclaimable portion values should be remembered when revealed again. (Similar to how we don't blow away your categories or tags lists if you toggle Categories / Tags off/on).

3. The Tax rate push row should push to a page that uses the standard SelectList component and contains a list of all the tax rates added to the workspace (this should basically be the same list as seen on an expense).

4. The Tax reclaimable on push row should push to a page that uses the BNP to enter the reclaimable portion

There should be no currency selector on the BNP here though. The currency matches the workspace's reportOutputCurrency.
The maximum amount that can be entered is the value of the distance rate. E.g distance rate = £0.30, reclaimable portion maxLimit = £0.30. If an admin enters a value higher than that, we'll show an error message onPress of the Save confirmation button:

CC: @Expensify/design
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~012ad19bb3a1a1f8d8
Upwork Job ID:<PHONE_NUMBER>959670272
Last Price Increase: 2024-05-10
Automatic offers:

nkdengineer | Contributor | 0

Looks good! Only minor comment - do we want to get rid of these right carets on the table rows? Not sure if that is already being handled or not, but if so, let's update the mocks.

I assume most people who use this feature know what "Tax reclaimable on" means? I don't quite know what it should mean, but I assume it just means you can claim tax up to a certain amount or something like that? All that's to say is, this one might benefit from some hint/explainer text.

Looks good! Only minor comment - do we want to get rid of these right carets on the table rows? Not sure if that is already being handled or not, but if so, let's update the mocks.

Was just about to say the same thing! I think we're moving towards getting rid of the carets in all of these tables, so we might as well start here. I'm happy to jump in and update the mocks if need be.

Looks good! Only minor comment - do we want to get rid of these right carets on the table rows? Not sure if that is already being handled or not, but if so, let's update the mocks.
Was just about to say the same thing! I think we're moving towards getting rid of the carets in all of these tables, so we might as well start here. I'm happy to jump in and update the mocks if need be.

Yeah, cool. I don't think we have an issue for that yet. So we should probably spin one up!

I assume most people who use this feature know what "Tax reclaimable on" means? I don't quite know what it should mean, but I assume it just means you can claim tax up to a certain amount or something like that? All that's to say is, this one might benefit from some hint/explainer text.

Yeah, they will haha. It's the same label name as OldDot for this feature as well, I kept it consistent. But yeah, this is the portion of the distance rate amount that is eligible to have tax reclaimed on. The TL;DR

You pay back an employee a mileage rate set by HMRC which covers both fuel and wear and tear. I.e £0.45 / mile
As a business, you can only reclaim the VAT on the portion of that rate that covers fuel i.e £0.13 / mile
The reclaimable portion pertaining to fuel differs based on things like engine size, fuel type, miles travelled per annum and other bollocks set by HMRC and reviewed (I think) quarterly.
 We have to let the business enter the amount of the rate that is eligible to reclaim tax on, and then do the calculation based on that.

Looking into this

Whoever works on this issue can reuse MoneyRequestAmountForm and TaxPicker components and should be fairly straightforward.
For API's,

For Track Tax toggle we're adding in bullet 1, we'll add an API command - EnableDistanceRequestTax. I'll add it, we don't need to HOLD on it

Example customUnit param -
{"customUnitName":"Distance","customUnitID":"658abfcfc1c96","attributes":{"unit":"mi","taxEnabled":true}}

For tax rate and tax reclaimable that we're adding in bullets 3. and 4., we need to call UPDATE_POLICY_DISTANCE_RATE_VALUE

Example customUnitRate param -
{"customUnitRateID":"658abfcfc2519","name":"Default Rate","currency":"USD","enabled":true,"rate":65.1,"attributes":{"taxRateExternalID":"id_TAX_RATE_1","taxClaimablePercentage":0.49155145929339483},"subRates":[]}

Proposal
Please re-state the problem that we are trying to solve in this issue.
[Track Tax] Add the ability to configure tax rates on distance rates in NewDot
What is the root cause of that problem?
This is a new feature
What changes do you think we should make in order to solve the problem?

We just need to follow the steps listed out in here and here. It's quite straight forward UI changes
What alternative solutions did you explore? (Optional)
NA

Okay cool! Let's get started then 👍

@nkdengineer let us know if you have any questions and when you'll have a draft PR up. I would like to test new API EnableDistanceRequestTax against frontend changes before submitting it for review

@MonilBhavsar Please let me know: Which field in the policy to know if Track Tax is enable in bullet 1

policy_<> onxy key and inside it customUnits > a unique custom unit ID > attributes > taxEnabled

@MonilBhavsar @trjExpensify
I have completed the UI part and have some questions as follows:

What is params of the EnableDistanceRequestTax API?
What fields are tax rate vs reclaimable on it, and what API will be called when saving those fields?

Nice, do you have a draft PR?
I think https://github.com/Expensify/App/issues/41574#issuecomment-2104496814 answers both questions! 😄

@MonilBhavsar we have a draft PR here
I have a question:
Is the EnableDistanceRequestTax api active? I try using params
{
     "customUnitName": "Distance",
     "customUnitID": "97E633FEF2869",
     "attributes": {
         "taxEnabled": true,
         "unit": "mi"
     }
}

and it is returning status = 404, check the following video:
https://github.com/Expensify/App/assets/161821005/7a19d81a-ec91-4937-aeab-b781d5a2f67b

Thanks for the draft PR!

Is the EnableDistanceRequestTax api active?

it's not. I'll test it against draft PR and let you know once it is live

@nkdengineer I'm testing the PR
The API takes customUnit as a param of type CustomUnit
You can refer to parameters of API command setPolicyDistanceRatesUnit. EnableDistanceRequestTax takes same parameters
Example: {"customUnitName":"Distance","customUnitID":"658abfcfc1c96","attributes":{"unit":"mi","taxEnabled":true}}

@MonilBhavsar Have you finished EnableDistanceRequestTax api?

It's not deployed because of freeze we're having. I'll let you know once it is deployed

@nkdengineer API is live on staging and we can proceed with PR here

I tried to call EnableDistanceRequestTax  with params
{
     "customUnitName": "Distance",
     "customUnitID": "97E633FEF2869",
     "attributes": {
         "taxEnabled": true,
         "unit": "mi"
     }
}

and i got the error
{
  "jsonCode": 0,
  "message": "PolicyAPI::updateCustomUnit(): Argument #3 ($customUnitData) must be of type array, null given, called in /git/releases/expensify.com/3ae6535/api.php on line 2468",
  "requestID": "8883b9164a661108-HKG",
  "onyxData": []
}

@MonilBhavsar Was I wrong somewhere? Please check again 🙏

@MonilBhavsar oh sorry, I tried again and called the API with refer to parameters of API command setPolicyDistanceRatesUnit 😅

Yeah, I was about to say parameter of type CustomUnit was not passed. You can refer to setPolicyDistanceRatesUnit command. Let me know if you need any help

@MonilBhavsar Currently, I have completed bullet 1 and bullet 2. However, I encountered issues when integrating APIs in bullet 3 and 4.
Has  UPDATE_POLICY_DISTANCE_RATE_VALUE API been completed and integrated for use in bullet 3 and bullet 4 yet?
Here is my params when i try to call UPDATE_POLICY_DISTANCE_RATE_VALUE API

And i get error

The API is returning an error due to incorrect custom unit rate ID being passed, but I believe I've passed the correct one.

customUnitRateArray was rejected by server because it is not in a way as expected by it. It takes a stringified JSON array. You can refer to API command - SetPolicyDistanceRatesEnabled

@nkdengineer do you think we can get PR ready for review by EOD today?

@MonilBhavsar I will try my best to open PR at the EOD today

Thanks!

@MonilBhavsar @trjExpensify  this PR is ready for preview

@nkdengineer has got a PR up to fix few bugs coming out of it!

Checklist time!

Still awaiting the checklist.

@eVoloshchak can you get to this checklist?

@trjExpensify, apologies for the delay.  This isn't ready for payment yet, there are a couple of regressions, we're tackling the last of them in https://github.com/Expensify/App/pull/43347

Oh, I see. I'll take off the payment hold then.

Clean-up PR in progress.

Same, Melv.

Clean-up PR in progress.

No change.

Bumped in the PR.

Same again.

Great, let's get it over the line. :)

@nkdengineer can you address the comments, please? Thanks!

PR ongoing.

PR ongoing!

@nkdengineer @MonilBhavsar @eVoloshchak can we get an update please?

PR is reviewing and just confirmed the behavior. Will investigate the update tomorrow.

Any update?

I'm investigating and testing locally before pushing an update. Will give an update in the PR soon.

@trjExpensify i updated this PR, waiting C+ review

Great, let's get it done!

All yours for the secondary, @MonilBhavsar!

PR was merged!

PR was deployed to production 5 days ago. We can process the payment on payment on Monday once tom is back

Confirming payment summary as follows:

$250 to @eVoloshchak for the C+ review
$250 to @nkdengineer for the fix

@nkdengineer paid, @eVoloshchak go ahead and request!

$250 approved for @eVoloshchak


SFP does not support deployments of the newest SF AI features

Describe the bug
The latest sfp docker image has version 2.25.7 of SF CLI and this version does not support features related to Prompt Builder. For example GenAiPromptTemplate metadata or InvocableMethod capabilityType modifiers.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
I can deploy the apex methods which are called by Prompt Templates (I can do it in SF CLI version 2.27.6)
Screenshots
If applicable, add screenshots to help explain your problem.
Platform Details (please complete the following information):

docker image: ghcr.io/flxbl-io/sfp:38.4.1-8749491772
Salesforce CLI(sfdx cli) Version: 2.25.7
CI Platform: Gitlab CI

Additional context
Add any other context about the problem here.

@domrycz  sfp no longer depends on sf cli. It is tied to the underlying libraries used. We are working on a feature that upgrades libraries to v8 and you can see here
https://github.com/flxbl-io/sfp/pull/71


Group permission in frappe

Steps to Test the PR

Switch to feat/group_permission branch and run bench migrate.
Create 2 projects and 2 User Groups.
Now, create user group permissions and assign different user groups to different projects.
Log in as a user belonging to a specific user group and verify if the user can see the assigned user group project.
Additionally, add or remove users from user groups simultaneously and verify whether users can see projects or not.

Check video for reference
https://drive.google.com/file/d/1JI_jEMAojttl-g3ZfIl-xmvgk8zUXDFW/view

Keep Contribution alive

Keep Contribution alive


cleanup(prep/v6-stable): spell-check and formatting for v6 stable

final pass for jsdoc and spell-check and basic ide warnings for stable release v6

Could we please delete these empty lines between the comment and the config item?
https://github.com/cross-seed/cross-seed/blob/0879c149d6e646a91ea91abf93640cdbb2357b0a/src/config.template.cjs#L127-L129
https://github.com/cross-seed/cross-seed/blob/0879c149d6e646a91ea91abf93640cdbb2357b0a/src/config.template.cjs#L146-L148

Could we please delete these empty lines between the comment and the config item?
https://github.com/cross-seed/cross-seed/blob/0879c149d6e646a91ea91abf93640cdbb2357b0a/src/config.template.cjs#L127-L129
https://github.com/cross-seed/cross-seed/blob/0879c149d6e646a91ea91abf93640cdbb2357b0a/src/config.template.cjs#L146-L148

Just remove them from your config if you don't want them there?

It is to prettify the config to make it uniform, as these two config entries are different from the others which don't have empty line between the comment and the config.

It is to prettify the config to make it uniform, as these two config entries are different from the others which don't have empty line between the comment and the config.

So open a PR? This one was merged before you even commented...

It is to prettify the config to make it uniform, as these two config entries are different from the others which don't have empty line between the comment and the config.

https://github.com/cross-seed/cross-seed/pull/809/commits/7616c2e4a703bedfc77b528eb5a161cf18bbc9d4