Power off the modules when not needed.

hello i would like to use your product in low power application using gps and gprs, i need to use power management modes to save power, Can we switch off some modules like CAM and I2C when not needed? Can we control clocks to these modules. Can you please expose some API's for these purposes.

Nobody, even the manufacturer, don't supports this product.

@win32cpp manufacturer will not write a code for you.
If you know how to use documentation and how to code you'll definitely like the a9 and a9g.
@harshitsihare before creating new issue look at closed first #240

@punee995 We do not need the code.
When there is a bug in the product, does anyone support it?
I talked hard to the manufacturer to fix a bug, which did not take any action to solve the problem at the end.

<<@harshitsihare before creating new issue look at closed first #240
@punee995 I am asking for powering off some modules selectively at a time not all together.
Secondly, Even after 'PM_SleepMode', it sets the frequency to 32kHz. But all GPIO pins remains active.
Similarly, If I use PM_PowerEnable with selective PAD, it does not power off that voltage line.

Try this.
https://github.com/Ai-Thinker-Open/GPRS_C_SDK/blob/91832c812f2f285b46f723ef8dfb1b61a8e8661d/include/sdk_init.h#L48

@punee995 I have used     bool                (*PM_PowerEnable)(Power_Type_t powerType, bool isOn);
only.
It works well for powering on a line, but it does not power off any voltage rail. Did you try this already?, please share the example of using this to power off a voltage line. Thanks in advance!!

There are functions like I2C_Close() and SPI_Close() which turn off I2C/SPI modules, but whether or not they are internally powered down or if the clock is removed from them I don't know. You'll have to measure the current draw and see what happens with you have I2C_Init() and I2C_Close() in a slow loop.

@harshitsihare I actually want the same
I guess you can't do anything about this GPIO

GPIO0  ~ GPIO7  and GPIO25 ~ GPIO36 are allways on

This should work but I haven't tested. I'll tested this week. Please let me know if that works for you.
GPIO0  ~ GPIO7  and GPIO25 ~ GPIO36    2.8V   //always on
typedef enum{
POWER_TYPE_VPAD = 0,            // GPIO0  ~ GPIO7  and GPIO25 ~ GPIO36    2.8V   //always on
POWER_TYPE_MMC,                 // GPIO8  ~ GPIO13                        1.9V
POWER_TYPE_LCD,                 // GPIO14 ~ GPIO18                        1.9V
POWER_TYPE_CAM,                 // GPIO19 ~ GPIO24                        1.9V
POWER_TYPE_MAX
}Power_Type_t;

I have tested the PM_Sleep function where it sleeps for 1 hour (60 * 1 minute OS_Sleeps) and then wakes up.
uint8_t tempcount=0;
PM_SleepMode(true);
Trace(1,"Enter deep sleep");
for (tempcount=0; tempcount < 60;tempcount++)
{
Trace(1,"Sleep %d",tempcount);OS_Sleep(60 * 1000);//1 minute
}
PM_SleepMode(false);
Trace(1,"Exit deep sleep");
Battery consumption is still very high.
I suspect GSM remains active.
Is there a command to disable GSM?

Battery consumption is still very high.
I suspect GSM remains active.
Is there a command to disable GSM?

How high is very high?
GSM can be disabled using Network_DeRegister();. You will need the latest SDK stuff from the repo for it to work (v2.129).

Thank you Zak, I will give that a try.

You need to download the latest repo master (top right green button that says "Clone or Download").

I clone the folder with GIT, but every time I do so it is incomplete. Would it be possible to share completed files & folder structure with me on dropbox/sharing util?

Eh yea, looks like git clone isn't working properly (I'm getting some error with the libs/aliyun/iotkit-embedded submodule thing). I've forked the repo and made a new v2.129 release here https://github.com/zkemble/GPRS_C_SDK/releases/tag/v2.129

Thank you very much!

Don;t suppose this would work with the Network_SetFlightMode
Once the GSM has been turned off - how can you restart it without knowing the operator ID?
Can it just be called to restart automatically?
Thanks - its a shame there is no support from the manufacture.

Thanks for the help medida. Anyone know how to obtain/extract the mobile number? EMEI is available.

@mnorval  - did you get the device to re-register to the network once you had deregistered it???

What I do is just restart the module after sleeping for an hour or so.

Does anyone know how to obtain/extract the mobile number? Seems like only EMEI is available.

So i am currently getting info from AI-Thinker.
I have found a way to restart the GSM from flightmode without having to reboot the device.
I found that if i call the Network_startActive with an incorrect APN - then with the correct one it starts and connected correctly!!!!!!
Network_PDP_Context_t context = {
                .apn        ="somethingwrongtomakeitfail",
                .userName   = "",
                .userPasswd = ""
            };
            Network_StartActive(context);

            Network_PDP_Context_t context2 = {
                .apn        ="mobiledata",
                .userName   = "",
                .userPasswd = ""
            };

            Network_StartActive(context2);
             Network_SetFlightMode(false); // worked when here
            OS_Sleep(3000);

So i am currently getting info from AI-Thinker.
I have found a way to restart the GSM from flightmode without having to reboot the device.
I found that if i call the Network_startActive with an incorrect APN - then with the correct one it starts and connected correctly!!!!!!
Network_PDP_Context_t context = {
                .apn        ="somethingwrongtomakeitfail",
                .userName   = "",
                .userPasswd = ""
            };
            Network_StartActive(context);

            Network_PDP_Context_t context2 = {
                .apn        ="mobiledata",
                .userName   = "",
                .userPasswd = ""
            };

            Network_StartActive(context2);
             Network_SetFlightMode(false); // worked when here
            OS_Sleep(3000);

hello @medida ,
trying to accomplish the same but seems your WAS doesn't work for me.
Could you please share the way you call the Network_StartActive twice? is it in the Event switch case of the main task?
BR,
Luca


Recipes - Some eComStyle.de Modules

Added some eComStyle.de Modules

Thanks @Josef-A-Puckl, merged your pull request but have to admit the following:
At the last hackathon event (missing you badly!) we agreed that the implementation of a module catalog in OXID admin doesn't make sense any more due to the introduction of composer. Hence, we'll ditch this repository in a medium term and  replace it with a pure catalog functionality (filterable and searchable) on OXIDforge, form/database based.
The base implementation is already done and with a bit of luck, we can represent it to the public after the next week or by the beginning of May. Please stay patient as there's a whole new concept behind with sh... loads of work to do - will e-mail you personally ;)


Unable to maintain switch online, also instant server desync when track is switched.

I've noticed that the switch does not stay operative during online play for, what seems like much longer than a short while after going offline. This means it can't be used where most would like to see it functional, and can badly disrupt online play once it stops working.
Also, I'm experiencing an instant desync -EVERY- time the switch activates while playing online.

Sadly AdvancedTrack does not support multiplayer


Create a criteira for Live ui-component release

As a: Consumer of the design system documentation
I want: Understand that I am looking at a live component, what that means, and how I can use it
so that: I can determine, when, how, where to use a ui-component in my service.
Acceptance criteria

[ ] "Live" criteria, will be reviewed with design system team and feedback will be incorporated before creating the final criteria
[ ] Criteria will be published to Confluence

Presentable outcomes

[ ] Alpha, Beta, and Live release components will be shared during sprint review and differences between each will be discussed.

Sprint Ready Checklist

Acceptance criteria defined
Team has defined steps to satisfy acceptance criteria
Acceptance criteria is verifiable / testable
External / 3rd Party dependencies identified

Related issues:
GitHub issue: #416  #417
Resources:
Mockups: [If applicable a URL to or the name of the mockup(s)]
Testing URL: [If applicable a URL to the testing branch]

Link the confluence
https://goa-dio.atlassian.net/l/c/oDC1wPbi


Can I somehow prevent the ContentEditor to touch MathML snippets?

I am in need to add some not too complicated math equations into an article which I happen to write using the ContentTools. Since this is rarely needed, I decided to simply add the equations by pure MathML snippets within normal
 tags. This looks nice until the ContentEditor touched the snippet and joins all <mi> tags on a line and removes all nested <mrow> tags. Besides it scrambles the formatting of the snippet, which is somewhat cumbersome, because MathML code without adequate formatting is almost unreadable/-editable (for me).
I am not asking for a MathML editing feature. For me, it would be perfect, if the ContentEditor would leave anything enclosed by <math></math> tags alone. Can this be achieved somehow?
I guess I need to change something in the HTMLCleaner, needn't I?

So unless you want to be able to edit it in CT (which wont work out the box) then I would suggest making the p tag static so that you can drag it about but CT doesn't try to parse it, I think to do that you'd do:

I just tried it to embed the MathML snippet  into a
 element, and it really prevents CT from do any changes. Only, now I also cannot open the p-tag code editor of CT for changing the snippet, and I have to use nano on the server machine for inserting the math code into the HTML file.
In the past I already did changes to the CT sources to my needs. Perhaps, I would need to add only two or three lines of code, something alike:
if (childName != 'math' && childName != 'svg')
    parse the child's HTML as usual
else
    clone the child's HTML without any change

If this would be not too complicated, please can you give me an advice where it would be best to add this. If this is not easily feasible, I will stay with
 and enter the MathML somehow, using an external editor.

In the meantime I learned the hard way, that MathML, in spite of being an HTML5 standard, is not supported by a huge lot of browsers, namely all those based on the Chromium project. Only Firefox and Safari do a nice MathML rendering. MathML became a dead-end road on my site, and I reworked the few math equations which I wanted to present in pure SVG.
Now the HTML parser in CT got problems with the self-closing PATH-Tag. I added HTMLString.Tag.SELF_CLOSING.path = true; to my script before launching the ContentTools, but this lets CT crash whenever it tries to parse a <path ... /> element. This is because of the XML-closing slash. When I remove the slash, CT does not crash, but unfortunately then the path-element does not work either.
Now, I enclose all SVG with
, and since this is only an occasional need, I will happily stay with this solution and with editing any SVG with an external editor.
Anyway thank you very much for your help and your time.

@cyclaero thank you for spending the time to document your experience in such detail. I've no experience of MathML so it's interesting to hear the problems that you had with it and with CT's handling of it.
SVG images will be support in CT2, including inline images - however - I have no plans as it stands to allow these to be edited directly within the CT editor beyond being able to insert a new SVG image or for inline SVGs being able to replace their source - so I'm not sure if that would be a solution for you though it may go some ways to improving things. We also struggle with the lack of SVG support now and have to find ways around it.
Thanks again for your detailed responses.

@athonyjb, allow me a few comments. While MathML is fo me no concern anymore, SVG is. I realised the mentioned math equations in hand-written SVG. And if I would be able to place this somehow into a non-static
 tag by using CT, this would be great.
By the way, in the meantime, I found a solution for the <path /> problem. The closing /> may be replaced by ></path> which seems to be still valid SVG, and I only need to put a   between the opening and closing tag in order to prevent CT from optimizing the whole tag away. A little bit ugly, but it has the advantage that it works.
I tend to believe that CT would sufficiently support inline SVG and other XML based additions, if it would simply facilitate editing of the sources in the .ct-properties-dialog__inner-html dialog, and would not try to parse and optimize these snippets.
I think about placing a tiny SVG image inline within a paragraph. I would open the CT properties dialog and paste the SVG snippet where I want to have it, it is pure text anyway. BUT, then I must insist on CT leaves everything inside of <svg>...</svg> alone. Nothing less, nothing more.
I think of any user wants to place an SVG image like a PNG or JPG somewhere on the page. Most users won’t even understand the differences, since an image of a rose is a rose is an image, isn’t it? I think it would be really sufficient that the image tool just allows uploading of the SVG source. The backend needs to do something about it and then CT would need to place the returned URI into the src property of the -tag. Isn’t this all almost already in place?

Thank you very much for considering an enhancement to CT2.
If you point me to a location in the CT sources where parsing/optimisation could be conditionally skipped for SVG elements, so these would be treated and returned like black boxes, then I could have a look at it and perhaps I could come up with a solution and save you from some work.
Regarding image uploading, my backend (ContentCGI written in C) is linked against the GraphicsMagick library and this converts everything to PNG, including PDFs and SVGs. I am a bit ashamed to advertise this, because this is not exactly a nice solution, and of course I could do it better. Anyhow, actually the SVG uploading part provided by CT works already perfectly, here only my backend is lacking. I put this now on my list to work on.


pin: libmongocxx < 3.9

Checklist

[x] Used a personal fork of the feedstock to propose changes
[x] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[ ] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[x] Ensured the license file is being packaged.

See: https://github.com/man-group/ArcticDB/pull/1050/

@conda-forge-admin, please rerender

@conda-forge-admin, please rerender

Merging since the thread on https://github.com/conda-forge/arcticdb-feedstock/pull/112 have been resolved and it has been merged.


Add value (de)serialization

napi is a library that provides Rust-Node.js bindings. It provides the function to_js_value, enabled by a feature flag, which uses Serde to “serialize” any Rust type into a JS value. A complementary function, from_js_value, deserializes properly-formatted JS values back into Rust types. We can do the same thing for Ruby.
Here’s why I’m interested in this feature. I’m working on Classmate, a library of Ruby bindings to the Lightning CSS Rust crate. On Node.js, Lightning CSS offers a powerful custom transforms feature. It traverses a parse tree for a stylesheet and calls user-provided functions for each node. The provided functions can return replacement nodes. Under the hood, the syntax nodes are converted from Rust structs to JS objects using napi to_js_value. The returned substitute nodes are converted from JS objects back to Rust structs using from_js_value.
I would like to implement an equivalent feature in Classmate. I’d very much prefer not to have to create a Typed Data wrapper or build my own Hash for every type of syntax node. There are quite a lot, because CSS is a complex language, and they change frequently as Lightning CSS gains support for new CSS features.
This PR introduces a new Magnus feature flag named serde. When the serde feature is enabled, two new functions are exposed: magnus::value::serialize and magnus::value::deserialize. serialize takes any Rust type that implements serde::Serialize and converts it into a Ruby approximation. deserialize turns a Ruby value back into a Rust type that implements serde::Deserialize. See the included docs for serialize and deserialize to understand how they translate between Rust and Ruby.

Thanks @matsadler! I started on this over at georgeclaghorn/magnus.
However, I started to flesh out the tests (georgeclaghorn/serde-magnus@d0bc6ba), and I’m getting some sporadic failures that suggest Serde is moving Values to the heap. I haven’t looked more closely, but I do see some suspicious Box and Vec usage in Serde (example), so this experiment might be over.

The errors you're seeing might be down to Rust's test runner. It runs tests in parallel in threads, which Ruby really doesn't like. It might mostly work if you put the cleanup object in a mutex, so the tests run one at a time, but the rules Ruby lays out for calling init (once, and in a stack frame above whatever is calling Ruby) are basically impossible to follow in the Rust unit tests. I'm not sure how much Ruby really cares about you following those rules.
In Magnus I've worked around this using Rust's 'integration' style tests, with one test method per file. Each file will be run as a separate process, so if you only have one test per file, then Ruby is happy.
Magnus also makes extensive use of doctests, as each doctest is compiled and run separately.
I think the nextest runner might run each test as a separate process, so that might be worth a look too (I've not seriously investigated for Magnus it as it didn't support doctests when I last looked).

It might be possible to work around Serde putting stuff on the heap.
You could do something like create a new Ruby Array at the start of the serialize function, and make sure this is passed through to all the serialisation functions, then every Ruby object you create you also add to the array. That way even if Serde moves that object to the heap there's still a route through the array for the GC to find it. Then at the end of the serialize function hopefully all the Boxes and Vecs should have gone away, the result is a full tree of Ruby objects, and you just discard the array.

Switching to integration tests resolved my issues.
Regarding Serde possibly moving values on the heap: I think this is possibly not an issue in practice because each value Serde might temporarily Box ends up back on the stack before we call into Ruby again. Let me know if I’m wrong about that. Tracking intermediate values in a Ruby Array is a great idea if it’s necessary.
I published v0.1.0 of serde_magnus. Thanks again for your help.


Scrum Update - Austin Kwok - 5/25/2019

What did you work on this past iteration (2 weeks)?
Writing project description and requirments
What were any major issues/challenges you ran into?
Figuring out how we are going to use all the technologies without any experience using all of them
What do you plan to work on for the coming Iteration (2 weeks)?
Get meteor skeleton up on repo.
Get started on homepage

What did you work on this past iteration (2 weeks)?

Setup project repo and fill in project requirements and description with group.

What were any major issues/challenges you ran into?

Coming up with a good group/project name with group members.

Trying to come up with meaningful features for our project (website) that will use all the technology stack taught in this course. Our initial idea was to make an online marketplace e-commerce website but decided that the scope of designing and creating an online marketplace website from scratch (without using any CMS and pre-existing plugins) might be too big. So in the end, we've decided to do an e-commerce website for just one business entity (a restaurant),instead of a marketplace platform hosting multiple business entities. But this way, the project then becomes too plain, but after presenting our project in the group design review today, being able to see the projects some other groups are working on and receiving feedback from our classmates and TA gave me some inspirations for changes.

What do you plan to work on for this coming iteration (2 weeks)?

Start implementing the Login/Sign Up portal for customers and food business owners(backend with MongoDB)
Implement two factor authentication with email when users sign up for accounts on the website
Start designing and implementing the respective account portals for customers and food business owners(basic functionalities such as change password, linked email, for both type of users)

What did you work on this past iteration?

Worked on planning project specifications and requirements
Drew prototype sketches for project

What were the major issues/challenges you ran into?

Figuring out whether our idea would work within the scope of the requirements of the course
Thinking about which features to include, which to exclude
Coming up with a way to make our project more interesting

What do you plan to work on for this coming iteration?

Work on implementing sign-in / sign-up
Work on main portal for users after sign-in


Correct use of board.NEOPIXEL as status_neopixel parameter

Move init of Peripherals() to be done before init of Network() so that board's neopixels are done first, then passed to Network() if status_neopixel uses board.NEOPIXEL. If any other pin is used, it will be passed as is.

Thanks!


Allow disabling automatic tests

Is your feature request related to a problem?
Some courses are not supplying tests that can be used for the automatic feedback by Artemis but use the manual assessment instead.
This results in confusing Build failed messages that become even more confusing if the error log asks for classes like BubbleSort, which will in most cases be utterly unrelated , and not comprehensible if you do not know that this is part of the java exercise template when creating a programming exercise.
Another issue that I see is that this is a waste of energy. Builds are triggered that would not need to be triggered as they do not contain useful information, even worse - confusing information. I do neither see a benefit for students or course instructors in this scenario.
Describe the solution you'd like
Instructors and Editors should have the option to disable the automatic tests for programming exercises. This option should at least be offered when the manual assessment Assessment Type is selected.

If Disable Automatic Tests is selected no builds are triggered when a student pushes changes to the repository.
The issue with the misleading information should be resolved as now only No graded result is displayed. However, it might make sense to explicitly set the feedback before the deadline to No graded result when Disable Automatic Tests is chosen. Otherwise, issues might occur when the Automatic Tests are disabled after a few automatic tests have been executed (the configuration might be forgotten and changed as soon as confused students reach out to the instructors/tutors).
Describe alternatives you've considered
Instructors could adjust the build plans and adjust the tests so that no confusing error messages are displayed to students. However, this would be a workaround and is manual work that could be automated within a few clicks in the timeline configuration.
This solution would not resolve the problem that energy is wasted, as still meaningless tests would be run over and over again without adding value as no real feedback will be returned to the students.

Our current workaround for this is the creation of a dummy test that gives the points (if compilable)


Update hs_docker_base to release 1.9.10

See hydroshare/hs_docker_base#30

Need to update mjstealey/irods-provider-postgres to 4.2.6 (for local development).

@cbcunc is this still a concern.   If so, please prioritize at a developer call.  If not, please close.

Current release is 1.13.


[Bug] DataZoom x-range missmatch

Version
5.4.2
Link to Minimal Reproduction
https://echarts.apache.org/examples/en/editor.html?c=line-simple&code=CYQwLiCMAEC80G0BQ1GQGwA52QKwHYAmABlOJgBpiBdC6FNLHAksw6K2-1BDbPImWIBmDpFJcGvJgNakALBxp0G1ANxJQEdvGQ8-zQWXRLJ-mSyH4xElef6WymU3cYOjpAJwvu0dUiQAewAHMABLQIA7OGgAbwYAGwBTAHMkyOAALjiAXwoGLRAALUDAgFtsvVQ4hmroMABPYKTsgHIAZwSw4CSAJ1b8utR2gAtAgHdssF6AVyTBofaIXrBs4gW69KzocXXa6BzVBYAPAEFjsPbs-LrG5rbwsqTWhjyGBvPL6_27luhWgBuIAScwGrwW7T6YSSV0Q-xuQ0iICebQAyoEZr0AMZJHZgob1Jp_VpdSLPDbVQrZQqQCmoEC9JIgVGNZLXQ51N51BF1JEo_7ozE46CEfFDX5tUnk_aoKnQQqEOnQBlMlkNNm5fYcvz5HJqIA
Steps to Reproduce

Add two series of type [time, value] with different ranges of x/time values
configure x axis as time
add dataZoom as slider

Current Behavior

dataZoom shows only the x range of the first series
graph is correct
e.g. a peak on dataZoom preview is not at the position of the graph
when second series is hidden, the dataZoom is correct

Expected Behavior

dataZoom start and end is set to the min/max over all data
dataZoom shows a union over all series (nice to have)

Environment
- OS: all
- Browser: all
- Framework: official editor /<EMAIL_ADDRESS>
Any additional comments?
I ran into this issue while showing a lot of line series with characteristic gaps and peaks, when choosing exact start and end of a peak/gap.

Please follow https://github.com/apache/echarts/pull/17143


fix: restore 8.7 which is still supported

Description
Restore 8.7 which removed early. It is still supported.
Release required?

[ ] No release
[x] Patch release (x.x.X)
[ ] Minor release (x.X.x)
[ ] Major release (X.x.x)

Release notes content
The ability to manage version 8.7 was removed. It is still supported. Existing deployments of 8.7 should skip v1.10.12 through this version when upgrading.
Run the pipeline
If the CI pipeline doesn't run when you create the PR, the PR requires a user with GitHub collaborators access to run the pipeline.
Run the CI pipeline when the PR is ready for review and you expect tests to pass. Add a comment to the PR with the following text:
/run pipeline

Checklist for reviewers

[ ] If relevant, a test for the change is included or updated with this PR.
[ ] If relevant, documentation for the change is included or updated with this PR.

For mergers

Use a conventional commit message to set the release level. Follow the guidelines.
Include information that users need to know about the PR in the commit message. The commit message becomes part of the GitHub release notes.
Use the Squash and merge option.

/run pipeline

:tada: This issue has been resolved in version 1.14.5 :tada:
The release is available on:

GitHub release
v1.14.5

Your semantic-release bot :package::rocket:


Check the "code" parameter. Issue

I am trying to implement oauth2 authorization grant but having issues.

I am trying to get access token from the code but it throws issue. I have debug the code and found issue at AuthCodeGrant.php file at line no 244.
$code = $this->server->getAuthCodeStorage()->get($authCode);
if (($code instanceof AuthCodeEntity) === false) {
throw new Exception\InvalidRequestException('code');
}
What is wrong with the code.

Thanks for using this package!
For this kind of support questions, we'd like you to use the following resources:

Documentation
OAuth 2.0 Documentation
Laracasts
Laravel Slack
Stack Overflow

This will allow us to keep the issues for bug reporting only and make our work easier.


ci: Test ABI compliance

This patch adds a new test to the CI matrix: verifying that we do not break the ABI during releases. This is based on similar work done a couple months ago in OpenImageIO.
Basically, in addition to building the current checkout, it also builds a checkout of the designated "ABI standard" (generally, the first non-beta release of a major version), then generates ABI dumps of both versions and runs the ABI compliance checker using the tools from https://github.com/lvc
Making two builds sounds expensive, but both builds are rigged to be minimal, since only the libraries are needed for ABI checks (we can turn off the binary tools, unit tests, python bindings, etc.), and of course the test suite need not run. So actually, it's less expensive than most of the test matrix entries, and it helps ensure that we don't accidentally break ABI when we don't mean to.
I'm not sure how many false positives we'll have. We might need to adjust the methodology slightly as we gain experience with this.

No objections -> merging


store.db.driverClassName  can't be empty

type:nacos
command   sh seata-server.sh -p 8039 -h <IP_ADDRESS> -m 'db'
failed

seata-server-1.1.0

@gitYhsh How is store.db.driverClassName configured?

mysql config driverClassName is com.mysql.jdbc.Driver, you connect what database?

please check the config type in your registry.conf file

nacos配置store.db.driverClassName=mysql ，解决此问题


Override optimization strategy of Dask Collection instance

There is a lot of functionality built into Dask for optimizing Dask Collections and handling this differently per Dask Collection type. Also it is pretty easy to override the optimization strategy globally (even for small blocks of code). However it's not clear to me (though it may exist), how one goes about specializing the optimization of particular instances. Some forms of optimization may be poor for a type overall. However if one knows a particular instance will benefit from a particular optimization in the future, it would be nice to have a way to hook that into the instance so it can be triggered when optimizations occur.

cc @jcrist
On Sun, Mar 25, 2018 at 7:23 PM, jakirkham<EMAIL_ADDRESS>wrote:

There is a lot of functionality built into Dask for optimizing Dask
Collections and handling this differently per Dask Collection type. Also it
is pretty easy to override the optimization strategy globally (even for
small blocks of code). However it's not clear to me (though it may exist),
how one goes about specializing the optimization of particular instances.
Some forms of optimization may be poor for a type overall. However if one
knows a particular instance will benefit from a particular optimization in
the future, it would be nice to have a way to hook that into the instance
so it can be triggered when optimizations occur.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/dask/dask/issues/3329, or mute the thread
https://github.com/notifications/unsubscribe-auth/AASszIQzBrE6MkzI6gpGZ5twWRKF_lkYks5tiCcJgaJpZM4S6WwX
.


Difference(aggregate(field)) requires lower time boundary

Tested on: nightly  1.2.0~n201612120800
SELECT statements running difference(aggregate(field)) require a lower time boundary in order to return results.
> select difference(mean(ELEC)) from elecquantity where time < '2016-01-01T00:05:00Z' and groupuuid = 'e11c9dc87176ba67f1a3463ca2f707b5e58f7ba2' group by time(1m)
>

The statement works when the lower time boundary is set:
> select difference(mean(ELEC)) from elecquantity where time >= '2016-01-01T00:00:00Z' and time < '2016-01-01T00:05:00Z' and groupuuid = 'e11c9dc87176ba67f1a3463ca2f707b5e58f7ba2' group by time(1m)
name: elecquantity
time                 difference
----                 ----------
2016-01-01T00:01:00Z 10
2016-01-01T00:02:00Z 10
2016-01-01T00:03:00Z 10
2016-01-01T00:04:00Z 10

This feature was implemented per https://github.com/influxdata/influxdb/issues/1825 and used to work without a lower time boundary in older versions e.g. v0.13:
#v0.13 output
> select difference(mean(ELEC)) from elecquantity where time < '2016-01-01T00:05:00Z' and groupuuid = 'e11c9dc87176ba67f1a3463ca2f707b5e58f7ba2' group by time(1m)
name: elecquantity
time                 difference
----                 ----------
2016-01-01T00:01:00Z 10
2016-01-01T00:02:00Z 10
2016-01-01T00:03:00Z 10
2016-01-01T00:04:00Z 10

Import the attached data sample to run the examples: elec.txt

We will re-test this against 1.5.x

This still appears to be a limitation in 2.7.5.


Inconsistent instrumentation semantics

Hi,
I'd like to point out, and ask, what's the expected behavior when an exception is thrown in a Grape endpoint, towards instrumentation (via AS:N).
When I want to instrument Grape, I subscribe to this notification:
https://github.com/ruby-grape/grape/blob/master/lib/grape/endpoint.rb#L238
What I'm experiencing right now is that endpoint.status is always 200 (as opposed to 500 or default_error), even when an exception was raised in that endpoint.
When an exception is raised, I guess this blows up:
https://github.com/ruby-grape/grape/blob/master/lib/grape/endpoint.rb#L264
But then what happens with the instrumentation block?
When explicitly stating an error inside an endpoint, it works (status code is 500).
In a rescue_all block, or while an endpoint throws it doesn't work (status code is either stale, wasn't set, and is just 200)

It looks like a bug, would appreciate a spec that reproduces this to start.

@dblock this will fail: https://github.com/jondot/vitals/blob/b0b3e38ab02e0ce575916d910fca72a6868bf625/spec/vitals/integrations/notifications/grape_spec.rb#L64
while this will not:
https://github.com/jondot/vitals/blob/b0b3e38ab02e0ce575916d910fca72a6868bf625/spec/vitals/integrations/notifications/grape_spec.rb#L73

Turn it into a spec, try to fix it.

I don't see any existing specs for AS::N that I can learn from in order to build a test in the existing Grape infra, however, tests in vitals would fail.
I'd prefer deprecating Grape support until we can find out if this is even a good use of the Grape AS::N  instrumentation feature (which is what I'm asking).
Should we even grab the status from endpoint at that stage?

@jondot Are you talking about deprecating grape support in vitals? I can't speak to that.
In Grape the error handler sets status, it lives "outside" of the endpoint itself. So the answer I guess is "it depends on how an exception is being handled"?

I would like to resurrect this issue.
@dblock I understand the reasoning, but shouldn't we then have and additional instrumentation middleware which sits outside of https://github.com/ruby-grape/grape/blob/3959a01f/lib/grape/endpoint.rb#L281. At the moment, there is absolutely no way to monitor the actual status returned by the server

I suppose the answer to having a way to monitor the actual status returned by the server is yes. So I would take a PR for that.


Add a product addition section on Food Ultra-Processing

What

Add a product addition section on Food Ultra-Processing

It should offer to extract the ingredients (normally the photo can be taken from the ingredient extraction screen)

This is a hot topic everywhere ATM, including the UK.
We ask for ingredients as an option in Eco-Score, but it's something we need badly

What do we need? Just ingredients?

yes

and we should show NOVA, and preselected allergens if any in the personal settings

or just NOVA, for simplicity

"La détermination du groupe est basée sur la catégorie du produit et sur les ingrédients qu'il contient."


Continue on for comments doesn't work

Testing #193104
To repro, follow the steps in the above test.

@joyceerhl I'm seeing an unexpected URI in the object that I get from the storage service when I try to restore comments:

The two with the shorter URI restore, because that URI matches the URI that of the files "locally" (it's actually GitHub Repositories, but it's the machine I'm trying to restore on).

On the machine I'm storing the comment from, the URI doesn't have that long authority:

I'm seeing this URI difference when trying to restore across two actual different machines using VS Code insiders (desktop) on both.

Hm, I cannot repro because comments aren't showing up at all for me in web https://insiders.vscode.dev/github/microsoft/vscode/pull/193812

@joyceerhl I'm seeing comments show up as expected for that PR. Can you share output from GitHub Pull Request and see if there are any errors in the console?

OK, comments show up properly for that PR now. I'm still running into some issues though:

I had to enable comments.experimentalContinueOn first, otherwise no state was getting stored: https://github.com/microsoft/vscode/blob/d00c196d89ba16c27d1522f70c0255be2a56fc3a/src/vs/workbench/contrib/comments/common/commentsConfiguration.ts#L12
I see the following comment state getting stored for the above PR, the first entry seems like stale state since it's not coming from the current workspace. Do you have insight into where it comes from?

[
  {
    owner: 'Hide launcher on Run and Debug title bar when debugging-GitHub.vscode-pull-request-github',
    uri: {
      '$mid': 1,
      fsPath: 'c:\\Users\\huer\\Source\\vscode\\src\\vs\\workbench\\contrib\\debug\\browser\\debug.contribution.ts',
      _sep: 1,
      external: 'file:///c%3A/Users/huer/Source/vscode/src/vs/workbench/contrib/debug/browser/debug.contribution.ts',
      path: '/c:/Users/huer/Source/vscode/src/vs/workbench/contrib/debug/browser/debug.contribution.ts',
      scheme: 'file'
    },
    range: {
      startLineNumber: 455,
      startColumn: 1,
      endLineNumber: 455,
      endColumn: 1
    },
    body: 'foo'
  },
  {
    owner: 'Hide launcher on Run and Debug title bar when debugging-GitHub.vscode-pull-request-github',
    uri: {
      '$mid': 1,
      fsPath: '\\microsoft\\vscode\\src\\vs\\workbench\\contrib\\debug\\browser\\debug.contribution.ts',
      _sep: 1,
      external: 'vscode-vfs://github%2B7b2276223a312c22726566223a7b2274797065223a332c226964223a22313933383132227d7d/microsoft/vscode/src/vs/workbench/contrib/debug/browser/debug.contribution.ts',
      path: '/microsoft/vscode/src/vs/workbench/contrib/debug/browser/debug.contribution.ts',
      scheme: 'vscode-vfs',
      authority: 'github+7b2276223a312c22726566223a7b2274797065223a332c226964223a22313933383132227d7d'
    },
    range: {
      startLineNumber: 453,
      startColumn: 1,
      endLineNumber: 453,
      endColumn: 1
    },
    body: 'foooo'
  }
]

If I set a breakpoint here I don't see it get hit after we call storeAll with the restored value, i.e. the onDidChangeValue event listener that comments registers doesn't fire, so it doesn't update with the restored comments data, will keep investigating why that might be the case


Feature/mysql database doc

I will review the document when I get time. Thanks for your contribution. @NoubissiViany


Go test -json does not include which test passed or failed

What version of Go are you using (go version)?
go version go1.15.7 linux/amd64

Does this issue reproduce with the latest release?
Probably
What operating system and processor architecture are you using (go env)?
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/root/.cache/go-build"
GOENV="/root/.config/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOINSECURE=""
GOMODCACHE="/root/go/pkg/mod"
GONOPROXY=""
GONOSUMDB=""
GOOS="linux"
GOPATH="/root/go"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/opt/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/opt/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build532697346=/tmp/go-build -gno-record-gcc-switches"

What did you do?

Clone a go repository
Change into the directory
Run go test ./... -json

What did you expect to see?
I expect useful JSON output such as:
{ "Action" : "fail", "Package" : "foo", "Test" : "bar" }

What did you see instead?
I see fail and pass actions without a Test field at all. What test failed?  How is this usable without that information?

are you looking for the -v flag?

@seankhliao Thank you for the fast response. I recognize this might be PBKAC what with me picking bad test cases. Some repositories are better structured and do have tests which report out (with or without -v):
  {
    "Time": "2021-04-23T15:25:21.4729673Z",
    "Action": "pass",
    "Package": "github.com/tinkerbell/tink/workflow",
    "Test": "TestRenderTemplate/template_with_<<_should_not_be_escaped_in_any_way",
    "Elapsed": 0
  },

So there is the test field that I wasn't seeing in my original attempts.  Desired information is still lacking, such as file and line number of the test, but I can tackle that as a new investigation and perhaps issue.
This issue is clearly invalid, thanks!


condition computed in compued never be release

Vue version
3.4.7
Link to minimal reproduction
https://play.vuejs.org/#eNqNUlFr2zAQ/iuaX+KwRmZkMAhOli30YYM2Y+mjYTj2OVFrS0I6JYHg/76T1bheVkqfLN/33d139905+qY1PziIZlGK0Og6R1hkkrF06xCVZMuiFsXTPIvsXh3ZnH3w3yxaoNrtakiTQAspmh0monrmEmebGybsjJ3PzD/bNk30CxNqC4u9KEuQIZ4mAwX0awsjNDIL6DwsGq0MsjMzUN2wQjXaIZSsZZVRDRvREKMBKS+KHuJJpRSBhZKW6oVBqEpc5aRhfAFW67s/q/X95oHQuxz33OSyVE1MhAvFjzHve8fxmM0XLPYV+SGvHbCvvnHcVxqHMEe1QSPkjhJmbBSGHo2pcJqEKWm+6CZCS20qseOPVkmy5OyXlUW+n6jBrDUKkpFFtFKPeCyva3X82cXQOLi5xIs9FE+vxB/tycey6JcBC+YAWdRjmJsdYIBvN/dwoncPNqp0NbHfAH+DVbXzGgPtu5MlyR7wOrU/Oo9oGw/29oQg7WUoL9Qz246fRWTp6o3RX+RO+bTLy2RLWySzOVpa37su5mItZT1fxafOcDh1yZWThW/d+Upmzph0zRbMOOgwdJxGXl+EVxDu4SOjL9UjaaQsCJo0ub5yOAD/jkfywhr3iNrOkqQoJaWVUIuD4RIwkbpJlkRLjJMoGpjQtS6n/DP/kpTC4jDMwTaTrVFH8pyKDCzx+d0hmIkBWYLxhr2v7VXasPUV9F/73q72L5dGhak=
Steps to reproduce

open dev tool, switch to memory tab, select "play.vuejs.org: Main" js vm instance
take snapshot, got [Snapshot 1]
click the button 2 times, take another snapshot, got [Snapshot 2]
repeat step 3, take another snapshot, got [Snapshot 3]
choose [Snapshot 3], select "summary" & "Objects allocated between Snapshot 1 and Snapshot 2" on the right, filter ReactiveEffect
there are 1 ReactiveEffect allocated between Snapshot 1 and Snapshot 2 but stiil stay in Snapshot 2;
if click more time button in step 3("between Snapshot 1 and Snapshot 2"), there will be more ReactiveEffect stay in diff view(should be n/2 instance allocated, when n is the button clicks time)

What is expected?
condition computed in compued can release after used
What is actually happening?
condition computed in compued never been release
System Info
System:
    OS: macOS 14.2.1
    CPU: (10) arm64 Apple M2 Pro
    Memory: 1.56 GB / 32.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 20.9.0 - ~/Library/Caches/fnm_multishells/4518_1704851324504/bin/node
    Yarn: 1.22.19 - ~/Library/Caches/fnm_multishells/4518_1704851324504/bin/yarn
    npm: 10.1.0 - ~/Library/Caches/fnm_multishells/4518_1704851324504/bin/npm
    pnpm: 8.12.1 - ~/Library/Caches/fnm_multishells/4518_1704851324504/bin/pnpm
  Browsers:
    Chrome: 120.0.6099.216
    Edge: 113.0.1774.35
    Safari: 17.2.1
  npmPackages:
    vue: ^3.2.47 => 3.2.47

Any additional comments?
No response

This is the expected behavior: during the access of computed, it is stored in the ref (show.dep) that is accessed during execution. This is done to notify the computed to update when the value of show changes.

This is the expected behavior: during the access of computed, it is stored in the ref (show.dep) that is accessed during execution. This is done to notify the computed to update when the value of show changes.

you mean: computed is not composable?

During the getter execution, the ReactiveEffect of the computed value is stored in the Ref (show.dep), preventing it from being garbage collected.
See: playground

This is incorrect usage - you should not be creating computed inside other computed... please don't do this.

cool, thanks


Add support for state management of steps

This PR supports for sharing state between step definitions which is cucumber's feature.
https://cucumber.io/docs/cucumber/step-definitions/#state-management
Same as cucumber, state can be shared via this of a step function.

Hey @dobogo,
thanks for your PR!
But I don't really want to merge this since TestCafé already supports something like this out of the box via t.ctx and t.fixtureCtx (See here and here).
This package is supposed to bring gherkin features to TestCafé.
We want to support as many gherkin features as possible.
Cucumber on the other hand is only used to conveniently compile the steps. We want to rely on TestCafé when it comes to testing features and data flow and try to avoid mixing cucumber and TestCafé concepts as much as possible.

Hi @Lukas-Kullmann, I agree with you and understand you want to support gherkin features not cucumber.
It is good for me to use t.ctx. Thanks for your clarification!


Remove Map Unit Polygon border that is covering the Contacts And Faults line styles

When MUPs are created from C&Fs, the polygon is rendering with a black border that obscures the C&F line style. See if we can prevent that.

This is in 8796d27c56d3bed7f4589e2269ed188c623ad2ff. I made the border stroke transparent.


Handle tests within nested modules

Fixes #1756
Using module type information from https://github.com/fsharp/FsAutoComplete/pull/1071, correctly handle the full name of tests where there is a module within a module, a type within a module or a module which shares the same name as a sibling type.

Unfortunately, TestAdapterEntry which holds the information about module type is not accessible at the point where the full name is constructed, and the VSCode type TestItem has no field where this information can be added (AFAIK). To workaround that, this PR uses an otherwise undesirable ResizeArray acting as a map of sorts to hold mutable state about module types and this is passed to various functions. Ideally, something like a Set would be used but I will double check if Fable supports System.Collections.Generic.HashSet (otherwise it might be worth doing some housekeeping to ensure this collection doesn't become a memory leak).

Great job! I'll wait to merge this until the matching FSAC PR is merged and released, ok?

@kojo12228 can you resolve the conflicts with the other PR when you have a moment? I'm working on an FSAC release so when that's completed I'm ready to merge and release this fix as well.

@baronfel sorry for the delay, I merged them locally but was getting issues with test explorer that I don't get on main. I'll push the merge change for now

Odd behaviour since merging
For further details, tests seems to be correctly being discovered with eea849e:

However something is happening on 182b6ff that I can't explain, UnitTest1.fs and UnitTest3.fs tests don't get correctly discovered. They're using the same version of FSAC:

The diff between the commits (ignoring commits) is the following
Starting line 194 in this PR:
                        if Seq.length testCases > 1 then
                            let ti =
-                                t.Test.children.get (t.Test.uri.Value.ToString() + " -- " + testName)
+                                t.Test.children.get (
+                                    t.Test.uri.Value.ToString()
+                                    + " -- "
+                                    + Convert.ToBase64String(Encoding.UTF8.GetBytes(testName))
+                                )
                                |> Option.defaultWith (fun () ->
                                    tc.createTestItem (

Starting line 224 in this PR:
let rec mapTest
    (tc: TestController)
    (uri: Uri)
    (moduleTypes: Collections.Generic.Dictionary<string, string>)
    (t: TestAdapterEntry)
    : TestItem =
-    let ti = tc.createTestItem (uri.ToString() + " -- " + string t.id, t.name, uri)
+    let ti =
+        tc.createTestItem (
+            uri.ToString() + " -- " + Convert.ToBase64String(Encoding.UTF8.GetBytes(t.name)),
+            t.name,
+            uri
+        )

Starting line 271 in this PR:
-    logger.Debug("Module types", moduleTypes)

    let rec getFullName (ti: TestItem) =

Also main works without issue as well, so it's something with interleaving of the two that's the issue. I find that weird, especially because I originally wrote the first commit on top of #1841

Figured it out, #1841 unintentionally made a change such that TestItem.id was no longer unique across an entire source file (due to t.id being unique amongst the file), as it was based on the name of the method/module/namespace and nothing else. The following would silently fail:
module Outer =
    [<TestFixture>]
    module Inner =
        [<Test>]
        let Test1 () = // First Test1
            Assert.Pass ()

        module Innermost =
            [<Test>]
            let Test1 () = // Second Test1, Dictionary.Add would silently throw
                Assert.Pass()

Fixed this by passing a parentNameId string down the tree and including it in the TestItem.id.
I think we're good to go @baronfel , apologies for the delay.

No worries at all, thank you for taking the time to dig into it :) I'll try to get out a new release containing all of this later today!

@baronfel works as expected with FsAutoComplete 0.59.2 (not sure if you want the commit in this branch though)


Add RGB Script: Propellor by Christoph Klenge

This PR provides an optimized version of the "Propellor" script which creates a visual effect of a line rotating in 2D space, similar to a propellor. The optimization makes the script more efficient and performant, without altering its original visual output.
The initial concept for this script was discussed on the @qlcplus Instagram account and the effect it generates draws inspiration from similar effects created using GrandMA2. The visual reference is provided below.
The initial version of the script was shared on the QLC+ Forum in this thread.
This optimized version of the script has undergone thorough testing using the devtool to ensure its accuracy and efficiency.
Original script created by Christoph Klenge. (Forum user Xeon, instagram: @bodgedbutworks)
Any feedback or further testing would be greatly appreciated!
Original script visual reference:

Hi,
is this something that is reflected already in circular.js or could be integrated therein?

Add a threshold parameter to switch the borders rather than fade them
Add a width parameter to set the width of the bar.

Thanks for the feedback.
I like the idea of combining this effect into circular.js. Frankly I didn't know about the range of effects available in that script.
I'm not sure what you mean about adding a width parameter. Wouldn't it be better to add it as a different mode?

I was referring to the width parameter I saw in the new script. That parameter would need to be added for all modes in circular.js.
Yes, the new behavior could be a new mode then.

I think that's the way to go. It looks like you've already made a start, can you please implement it? If so I can close this PR.
Basically we need:

Mode: Propeller
Fill Matrix option
Number of blades???

I can give it a try to merge the function into circular.je. Give me some time, I'll send you a ping for review then.

Superseeded by #1438


Option to pick from different logos

There is a Ko-fi logo without the black outline and a monochrome one with a transperant heart. Add a property to be able to pick one of those.

See: https://more.ko-fi.com/brand-assets


Information is inaccurate for BlobServiceClient (v12)

It is mentioned that use Create, CreateAsync, CreateIfNotExist, CreateIfNotExistAsyn methods to create a blob container in this page for v12 but those methods do not exist on BlobServiceClient class. Am I missing something or the documentation for V12 is not correct?

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

ID: aa8980f5-eade-62aa-127c-c2e866c68ce1
Version Independent ID: a541d34e-cf8e-a2e0-4c8b-9521deef8139
Content: Create or delete a blob container with .NET - Azure Storage
Content Source: articles/storage/blobs/storage-blob-container-create.md
Service: storage
Sub-service: blobs
GitHub Login: @tamram
Microsoft Alias: tamram

@OpenWindow Thanks for the question! We are investigating and will update you shortly.

#reassign: @tamram

@OpenWindow - Thanks for your feedback. I have updated the list of methods.
#please-close


Fix include matcher behavior

rspec-expectations recently released v3.13.2, which includes a change to the include matcher (see rspec/rspec-expectations@bd5d306).
This change breaks using the splat operator on an array into the include matcher.
This commit updates the matcher to iterate over the array instead of using the splat operator.

Example of a test failure addressed by this PR: https://github.com/puppetlabs/puppet/actions/runs/10565592677/job/29270718861?pr=9454

Should this be backported to 7.x?

Should this be backported to 7.x?

Yeah AFAIK this affects both stream


CI/CD

I want to start working on the CI/CD configuration.
Let's use this threat for discussion.
I thinking on using the following setup.

Travis CI would run lint and test commands on for every PR and commit.
Netlify would create an ephimeral version of the frontend for every PR, that could be connected to the Jungle.

Problem is if you want to update the contracts, then we would need to things a strategy for the ephimeral dapp to use those contracts.  I think we can start without this and figure this out later.

Travis will run automated test with docker compose.

Please share your thoughts.

That's a nice start! You totally have my greenlight to go with above! 😄

Cool. For ephemeral contract testing environments, we could spin up a nodes with those contract changes on a cloud and build the react client with the right config to connect to those nodes. I have experience with AWS, ECS, Docker. We can use any service, the one that does the job better and less cumbersome.


[FR] Constrain requirements to extras

What's the problem this feature will solve?
Consider you are using package-a and package-c in install_requires of your setup.py and package-b in extras_require as requirement for your tests:
setuptools.setup(
    install_requires=[
        "package-a",
        "package-c"
    ],
    extras_require={
        "tests": ["package-b >= 1.0.0"]
    },

package-b also requires package-c, but in a pinned down version <=1.2.3 (because of a bug, removed feature, old python version, ...).
Now your project requires the awesome new feature implemented in package-c >= 1.3.0 so you write:
setuptools.setup(
    install_requires=[
        "package-a",
        "package-c >= 1.3.0"  # <= this line changed
    ],
    extras_require={
        "tests": ["package-b ~=1.0"]
    },

So the METADATA of your wheel contains these lines:
Requires-Dist: package-a
Requires-Dist: package-c (>=1.3.0)
Provides-Extra: tests
Requires-Dist: package-b (~=1.0) ; extra == 'tests'

The last line implies package-c <= 1.2.3 - so you will never be able to install your test requirements. 😔

Another way to achieve this could be, that you have already defined a maximum version of package-c, e.g. < 1.3 and package-b version 1.9.0 is released with the new lower boundary package-c ~= 1.3. This would be less dramatic, because you can (but have to) pin down package-c to run your tests.
Describe the solution you'd like
When a package is added to extras_require, it is considered a constraint for the packages defined in install_requires. This way both requirement definitions cannot collide.
The same behavior already exists for requirements.txt:
-c requirements-tests.txt

Alternative Solutions
No response
Additional context
No response
Code of Conduct

[X] I agree to follow the PSF Code of Conduct

Hi @r-bird thank you very much for bringing this topic to discussion.
I am afraid, I don't understand exactly what is the feature you expect from setuptools...
Is the approach you describe related to a change the way the METADATA file is generated? If that is the case, for the given example, what would be your suggestion on how to generate the METADATA file?
(Is there any clear solution for the problem of having colliding requirements? If we consider you are installing a package with pip install your_package[tests] the installation would fail anyway right?)


Feat/SDK Init

Resolves all
#10
#8
#12
#14
#15

Feat/Agent Application setup
https://github.com/beckn/BPP-Boilerplate-SDK/assets/73013838/20b41068-8d52-4795-8f5e-734a915dc7ef

Add Confirm API & Ride Hailing
https://github.com/beckn/BPP-Boilerplate-SDK/assets/73013838/29179775-2676-4d17-ade3-4a930a2548f0

[X] Added /status and /confirm apis
[X]  Created extra configs for ride_hailing, dsep etc.


[Feature] Ability to interact with ProgressBar elements

Describe the feature and how it will be used

Introduce the ability to interact with the Uno Platform ProgressBar element.
There should be properties for retrieving the percentage value and whether it's in an indeterminate state.
Platforms

[x] iOS
[x] Android
[x] WebAssembly

@jamesmcroft would love to take on this issue if possible! Thanks in advance


C:\\oem\install.bat not executing

Operating system
Debian GNU/Linux trixie/sid
Description
Following these instructions, I mounted an install.bat script to the container's /oem directory:
kubectl exec test-windows-node-89bdbd548-swvdr -- ls /oem
install.bat

However, inside Windows it shows up as a directory:
ls C:\\oem

..2024_07_31_21_47_38.5111193299

The batch file is inside the directory, but the script never executes.
Detailed OS info:
# cat etc/os-release
PRETTY_NAME="Debian GNU/Linux trixie/sid"
NAME="Debian GNU/Linux"
VERSION_CODENAME=trixie
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support" BUG_REPORT_URL="https://bugs.debian.org/"

# uname -a
Linux test-windows-node-5b5d6d8dcf-dmlqb 6.1.85+ #1 SMP PREEMPT_DYNAMIC Thu Jun 27 21:05:47 UTC 2024 x86_64 GNU/Linux

Docker compose
apiVersion: v1
kind: Pod
metadata:
  creationTimestamp: "2024-07-31T21:41:54Z"
  generateName: test-windows-node-5c6bc968c-
  labels:
    app.kubernetes.io/instance: test
    app.kubernetes.io/managed-by: Helm
    app.kubernetes.io/name: windows-node
    app.kubernetes.io/version: 1.16.0
    helm.sh/chart: windows-node-0.1.0
    pod-template-hash: 5c6bc968c
  name: test-windows-node-5c6bc968c-skpwc
  namespace: default
  ownerReferences:
  - apiVersion: apps/v1
    blockOwnerDeletion: true
    controller: true
    kind: ReplicaSet
    name: test-windows-node-5c6bc968c
    uid: 338035ae-909a-41f6-8c6f-e4854c781b68
  resourceVersion: "215427"
  uid: 316fc1ef-9fe2-4dfe-9daf-3b0948cb14c2
spec:
  containers:
  - env:
    - name: RAM_SIZE
      value: 4G
    - name: CPU_CORES
      value: "2"
    - name: DISK_SIZE
      value: 64G
    - name: VERSION
      value: win10
    image: dockurr/windows:3.12
    imagePullPolicy: IfNotPresent
    name: windows-node
    ports:
    - containerPort: 8006
      protocol: TCP
    - containerPort: 3389
      protocol: TCP
    - containerPort: 3389
      protocol: UDP
    resources: {}
    securityContext:
      capabilities:
        add:
        - NET_ADMIN
      privileged: true
    terminationMessagePath: /dev/termination-log
    terminationMessagePolicy: File
    volumeMounts:
    - mountPath: /oem
      name: oem
    - mountPath: /storage
      name: storage
    - mountPath: /dev/kvm
      name: dev-kvm
    - mountPath: /var/run/secrets/kubernetes.io/serviceaccount
      name: kube-api-access-k84xt
      readOnly: true
  dnsPolicy: ClusterFirst
  enableServiceLinks: true
  nodeName: gke-windows-cluster-default-pool-8cae251b-s1h3
  preemptionPolicy: PreemptLowerPriority
  priority: 0
  restartPolicy: Always
  schedulerName: default-scheduler
  securityContext: {}
  serviceAccount: test-windows-node
  serviceAccountName: test-windows-node
  terminationGracePeriodSeconds: 120
  tolerations:
  - effect: NoExecute
    key: node.kubernetes.io/not-ready
    operator: Exists
    tolerationSeconds: 300
  - effect: NoExecute
    key: node.kubernetes.io/unreachable
    operator: Exists
    tolerationSeconds: 300
  volumes:
  - configMap:
      defaultMode: 511
      name: test-windows-node-oem
    name: oem
  - name: storage
    persistentVolumeClaim:
      claimName: test-windows-node-storage
  - hostPath:
      path: /dev/kvm
      type: ""
    name: dev-kvm
  - name: kube-api-access-k84xt
    projected:
      defaultMode: 420
      sources:
      - serviceAccountToken:
          expirationSeconds: 3607
          path: token
      - configMap:
          items:
          - key: ca.crt
            path: ca.crt
          name: kube-root-ca.crt
      - downwardAPI:
          items:
          - fieldRef:
              apiVersion: v1
              fieldPath: metadata.namespace
            path: namespace
status:
  conditions:
  - lastProbeTime: null
    lastTransitionTime: "2024-07-31T21:42:09Z"
    status: "True"
    type: PodReadyToStartContainers
  - lastProbeTime: null
    lastTransitionTime: "2024-07-31T21:41:58Z"
    status: "True"
    type: Initialized
  - lastProbeTime: null
    lastTransitionTime: "2024-07-31T21:42:09Z"
    status: "True"
    type: Ready
  - lastProbeTime: null
    lastTransitionTime: "2024-07-31T21:42:09Z"
    status: "True"
    type: ContainersReady
  - lastProbeTime: null
    lastTransitionTime: "2024-07-31T21:41:58Z"
    status: "True"
    type: PodScheduled
  containerStatuses:
  - containerID: containerd://4b6d73636534d53f2c5b2a82cfbd314d552acb069a0a9228c05c0add5262fe8a
    image: docker.io/dockurr/windows:3.12
    imageID: docker.io/dockurr/windows@sha256:07b8506acb60b800becb5e0a151a1da1c00bf60d28a819a52c2440f2a8ec3b05
    lastState: {}
    name: windows-node
    ready: true
    restartCount: 0
    started: true
    state:
      running:
        startedAt: "2024-07-31T21:42:09Z"
  hostIP: <readacted>
  hostIPs:
  - ip: <readacted>
  phase: Running
  podIP: <readacted>
  podIPs:
  - ip: <readacted>
  qosClass: BestEffort
  startTime: "2024-07-31T21:41:58Z"

Docker log
❯ Extracting Windows 10 image...
❯ Adding drivers to image...
❯ Adding OEM folder to image...
❯ Adding win10x64.xml for automatic installation...
❯ Building Windows 10 image...
Warning: creating filesystem that does not conform to ISO-9660.
genisoimage: Symlink /storage/tmp/unpack/sources/$OEM$/$1/oem/..data ignored - continuing.
genisoimage: Symlink /storage/tmp/unpack/sources/$OEM$/$1/oem/install.bat ignored - continuing.
❯ Creating a 64G growable disk image in raw format...
❯ Booting Windows using QEMU v8.2.4...

...

BdsDxe: failed to load Boot0002 "UEFI QEMU QEMU HARDDISK " from PciRoot(0x0)/Pci(0xA,0x0)/Scsi(0x0,0x0): Not Found
BdsDxe: loading Boot0001 "UEFI QEMU QEMU CD-ROM " from PciRoot(0x0)/Pci(0x5,0x0)/Scsi(0x0,0x0)
BdsDxe: starting Boot0001 "UEFI QEMU QEMU CD-ROM " from PciRoot(0x0)/Pci(0x5,0x0)/Scsi(0x0,0x0)

...

❯ Windows started succesfully, visit http://localhost:8006/ to view the screen...

Screenshots (optional)

This was an issue regarding how k8s mounts configmap volumes


Feedback: Object Class

Update 4/20/15: Thank you for your feedback on the data element object class. We will consider your feedback as we continually assess how we can improve data definitions. You may still contribute the discussion for other data elements. Check http://fedspendingtransparency.github.io/dataelements/ to find data elements with open feedback pages.
This is the place to leave your feedback and questions about the following data element:

Object Class

The feedback period for Object Class closes on 4/20/2015.
The proposed definition of Object Class: http://fedspendingtransparency.github.io/whitepapers/objectclass/
Federal Spending Collaboration home page: http://fedspendingtransparency.github.io/

Thanks for the links just above. Handy!
The type of data element and format appear to be missing from the definition. I'm sure I don't have the terminology exactly right, but I believe the definition should specify that it's a number consisting of two to three digits.

The definition isn't clear and specific to the data element required.  The OMB Circular specifies object class codes, titles and descriptions.  I think this should be clear in that you're requesting the object class code as defined in the circular.  Unless you're making a conscious decision not to get into that level of detail.  (Though, why not?)

The Object class classification structure has been developed piecemeal over many years.  It is no longer a logical structure.  This causes errors in its use.  The assignment of object codes to transactions is now performed to fulfill a compliance requirement, rather than to accumulate useful information.  The question, therefore, in developing the object code standard is whether OMB/Treasury is willing to use the DATA Act as an opportunity to create a 21st century object code classification structure; make minor adjustments based on defined criteria; or make no changes which means agencies will continue to assign the existing object codes.
The answer to this question can be based on a decision as to the purpose of assigning object codes to appropriations, obligations, and outlays.  For instance, is the purpose to manage better, e. g., recognize that the amounts of monies spent on contractual services to provide a service would not be as effective as spending the monies on personnel compensation?  Or is the purpose to control costs, e. g., issuing an edict that for a period of time, no monies shall be spent on purchase of equipment?  Or is the purpose to let citizens know how the monies are being spent, e. g., $xxx,xxx has been spent on loans?
Examples of shortcomings in the current Object classifiation structure are:

11.3-Other than full time Personnel Compensation and Benefits is a catch-all. There is no  opportunity to separate part-time salaries from all other than full time personnel compensation and benefits, even though use of part time employees is a major HR option.

11.5-Other Personnel Compensation is also a catch all, for which the opportunity to separately capture overtime compensation, annual leave, and bonuses, all types of spending in which there is considerable interest, is not available.

30-Acquisition of Assets, which assumedly is property, plant, and equipment, includes Investments and loans, which represents an entirely different way of delivering services.

40-Grants and Fixed Charges does not provide for dividing grants into formula and discretionary grants, or categorical and block grants, each of which represent significantly different ways of proviing financial assistance.

*There is now clear indication of where Loans shoul be classified.
A logical object code classification for governemnt would have the following at the top level
Personnel services
Contractual services
Materials an supplies
Property, plant, and equipment
Investments
Grants
Loans
The definition of the lower levels, the level at which the information for management, cost control, and accountability is generated, shoul be developed with an interagency process.

The proposed definitions is sufficient given an acceptance of the existing framework of major object class title, (two digit) codes, and definitions outlined in latest version of OMB Circular A-11.
That is not to say that there would not be some advantages to revisiting the hierarchal  relationships of groups (2 digit zero trailing), major (2 digit) and minor (three-digit) classes, as noted in a previous commenter's thread.  But being an "old hand" with 30 years experience as a budget analyst, and 20 years as a payroll budget subject matter expert, I would advise we keep the existing structure -- as cobbled up as it is -- to expedite implementation of the Act and rationalize the burden on the enterprise financial systems.  Only so much change can be absorbed and still maintain a modicum of quality control in this effort; there will be lots of remapping and cross-walking as it is.
The more we drill -down into "detail codes" -- beyond the 2nd digit -- what were labeled Major Object Class (MOC) codes when I worked with Treasury bureau budget shops, is where agencies will find disagreement.  The 3 digit codes -- called Budget Object Class (BOC) because that was where funding buckets were established in bureau funds control scheme -- will likely yield a fair measure of agreement between agencies.  I would propose that the government-wide strategy avoid (or defer) requiring reporting at the 4-digit level.  This is where agencies become very proprietary in coding schemes - the Sub Object Class (SOC) in the hierarchy -- is granular to provide information relevant to analysis.  Meshing 4-digit codes government-wide would be -- a very steep hill to climb.
I request that IAC and BOAC consider level of detail to be the key issue surrounding Object Class; there is no debate it is mandatory and we have high-level, consistent references per A-11.  What requires clarification is whether reporting by object class will be accomplished at the 2, 3, or 4 digit level--Congress was silent on that aspect.
As we progress from 2 to 4 the level of difficulty in achieving comparability between agencies increases geometrically.  I would recommend 2 digits initially, e.g. at 11, 12, 13, 21, 22, etc. and 3 digits, e.g. 11.1, 11.3, 11.5, 12.1, 12.2 etc. after successfully consolidating summary-level 2-digit outputs from the agency enterprise systems.  Having worked for 5 different agencies - I can share that there is substantial comparability at 2 digit MOC and essential commonality at 3 digit BOC. Consistency falls apart at the 4 digit SOC tier of OC code hierarchy, where there can be dozens, even hundreds of codes and definitions that go along with code, some all numeric and some even alpha-numeric, e.g. 113B after running through 1131-1139 options.
We can agree on 2-digit

AGA established a work group charged with responding to inquiries by the federal government, regarding implementation of the DATA Act. The following response is being submitted on behalf of AGA's work group, which is comprised of state, local, tribal and university practitioners from across the country. In commenting on specific data elements, our work group thought it important to indicate that - while the work group supports the standardization of definitions and reporting across federal agencies, - we are uncertain as to whether data standards will apply to entities receiving federal funds. Section5 (b)(7) of the DATA Act states that the Director has a year after submitting a report on the pilot program to "...issue guidance to the heads of Federal Agencies as to how the Government-wide financial data standards shall be applied to the information required to be reported by entities receiving Federal awards..." This provision makes it appear that, after the pilot program, some financial data standards may not be applied to information reported by entities receiving federal awards.
In addition, in order to clarify the reporting and posting responsibilities of recipients, and which data elements will be reported at the awardee and subawardee level, it would be helpful for the federal government to provide the data source for each data element. This information was included in the data model for FFATA reporting in Appendix C of the OMB Guidance for Federal Spending Transparency: Subaward and Executive Compensation Data Reporting Requirements, dated August 27, 2010.
Comment on Object Class
It would be difficult for entities receiving federal funds to consistently apply this definition. Section 4(b)(3) of the DATA Act requires that the data standards "include unique identifiers for Federal awards and entities receiving Federal awards that can be consistently applied Government-wide." Because this data element is only used for federal budget purposes - and is not a universal financial data category or classification required by any accounting (GASB/FASB), or other standards-setting body - it is unlikely that this data element could be applied consistently by non-federal entities.

The definition needs to be specific as to what level of detail is required.  @MJB-NIH makes a practical comment regarding a lack of consistency in the lower levels of detail.  I would agree that this could be a heavy lift to change today.  But I would disagree with the premise that this data shouldn't be reported now because the deeper levels of detail aren't consistent across Government.  Go ahead and publish the detailed, four level deep data with some understanding that on day 1, the lowest levels may not be consistent across Government.
I don't think any reasonable person expects that on Day 1 all the data will be of 100% quality with 100% consistent definition across all stakeholders for all level of detail.  That's OK.  It is fine if it isn't - so long as people understand the quality of the data that is presented, the fitness for purpose.  By publishing all the data, different groups within Government can then see what other groups are doing.  Analytics can be used to identify clusters of definition consensus as the Government works through iterations to improve the quality of the data and all levels.  So when we go live on Day 1, Object Classes are consistent to the 2nd level of detail.  Just be clear that they are not consistent to the 3rd and 4th levels.  Having the data out there will facilitate the process of establishing this consistency.
Regarding @halsteinberg 's comment about a better system for reporting - the optimist in me agrees.  If we can't make a complete rework, can we at least take a step in that direction?  Also, "Other" categories are absolutely horrible to have in a reporting system.  Whatever is in "other" should be handled via the data governance process.  If it truly doesn't fit into a category, then add a new category.  This should be a fairly easy effort to do now - simply do some analysis on all the "Other" reported in the past an address via new categories.  The use of "Other" should also be a red flag and an exception condition requiring specific approval for use.

Object Class:  Furnishing the entire body of object class data from the detailed (4- and 3- digit) to summary levels (2-digit) in a single push supported by@HerschelC -- with "caveat emptor" warnings regarding the cross-agency consistency at detail level -- has the advantage of complete transparency and publication simplicity.  There is more variability than we would like to acknowledge.  Even within agencies, the 2nd and 3rd tier sub-units that manage programs and code the obligating documents can possess differing interpretations of what 4-digit object class applies. Where @HerschelC  sees opportunities for agencies to correct (partially) inconsistent data after examination, the public and stakeholders also have ample evidence that Federal object class accounting "accuracy" is flawed.  The human tendency to make a single data point a trend should not be underestimated. Stakeholders would have particular anxiety and make the argument that: If it is flawed in one place, what is to prevent it from being flawed elsewhere?  Will they understand that detail transaction records can be coded inconsistently yet those errors are not material once all the records are rolled up to a major object class level?  My concern remains that many users and stakeholders will not respect the warnings given and find the glass "half empty" hampering our drive towards credibility.  We will need large bolded fonts to underscore "quality of data" limitations.

Thank you for your feedback on the data element object class. We will consider your feedback as we continually assess how we can improve data definitions. You may still contribute the discussion for other data elements. Check http://fedspendingtransparency.github.io/dataelements/ to find data elements with open feedback pages.


STEP_* definitions are missing

I think they should be something like:
STEP_BUF_MIN_BIT    = (0)
STEP_BUF_MIN_LEN    = (4)
Step counter definitions
STEP_MODE_NORMAL    = (0)
STEP_MODE_SENSITIVE = (1)
STEP_MODE_ROBUST    = (2)
STEP_MODE_UNKNOWN   = (0)

Also it uses serial_buffer_transfer() which doesn't exist and can probably be removed.

Finally got Step count running...
Get Count is wrong:
def getStepCount(self):
buffer = [0]*2
buffer[0] = self._reg_read(registers.STEP_CNT_L)
buffer[1] = self._reg_read(registers.STEP_CNT_H)
return ((buffer[1]) << 8) | buffer[0]
Missing Interrupt definitions:
Interrupt definitions
INT1_OUTPUT_EN      = (3)
INT1_OD             = (2)
INT1_LVL            = (1)
LATCH_MODE_BIT      = (0)
LATCH_MODE_LEN      = (4)
More Step bits:
STEP_BUF_MIN_BIT    = (0)
STEP_CNT_EN_BIT     = (3)
STEP_EN_BIT         = (3)
STEP_BUF_MIN_LEN    = (4)
So this is the code you need:
# Step detection requires interrupt config
# See https://github.com/BoschSensortec/BMI160_driver#configuring-step-detector-interrupt
sensor.setIntStepEnabled(True)
# push-pull mode interrupt
sensor.setInterruptDrive(0)
# 0 = non-latched
sensor.setInterruptLatch(0)
# 0 = active-high
sensor.setInterruptMode(0)
sensor.setIntEnabled(True)
# Normal step detection mode
sensor.setStepDetectionMode(definitions.STEP_MODE_NORMAL)
sensor.resetStepCount()
sensor.setStepCountEnabled(True)

Hey, thanks for contributing, could you create a Pull Request Instead ? So we can all agree on the changes to do.

remote: Permission to lefuturiste/BMI160-i2c.git denied to meavydev.
So no I can't...

Yes, totally normal behaviour
You need to make a fork and then submit your changes by opening a Pull Request.
I don't known if you known how to do it but in case you don't known:
Little tutorial: https://codeburst.io/a-step-by-step-guide-to-making-your-first-github-contribution-5302260a2940
But in short:

Fork this repository (this will create a copy of this repository by under your user space so you will have the permission to edit)
Clone the forked repository on your machine
Make the changes that your need
Add/Commit
Push
Open a Pull Request

Ah. Forking... never used it as we develop on Github but not open projects, so we just use branches ;)
PR created.

PR #5 merged


use cpu brand to determine the frequency

if get_processor_frequency_info failed, the cpu brand string is used to determine the processor frequency
@jschwe Does it solve issue #6 on your system?

We test it and it works.


Folded file gets unfolded if the problem is removed in a opened folder

Steps to reproduce:

New untitled file 1 > Type a\nb\bc\n. Change lang to TS
New untitled file 2 > Type d\ne\bf\n. Change lang to TS
Open Problems view. Fold first untitled file. Select second problem from second untitled file
Delete the second line from second untitled file
🐛 First file gets unfolder

Type: Bug
If you look at the gif the problems for the other file are folded and when I remove one problem in the current file the problems-view unfolds the other file and selects the first problem there.
In my opinion the problems for the other file should stay folded until all problems for the current file are gone. Currently this leads me to keep folding the problems for the other file over and over since I'm not done fixing the current file.
I did try this with extensions disabled too with the same result.

VS Code version: Code - Insiders 1.87.0-insider (Universal) (e587755905208e47725c5196539c4ca898255fe6, 2024-02-15T05:48:48.139Z)
OS version: Darwin arm64 23.3.0
Modes:

System Info

Item
Value

CPUs
Apple M1 (8 x 24)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: enabled_ondirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okskia_graphite: disabled_offvideo_decode: enabledvideo_encode: enabledwebgl: enabledwebgl2: enabledwebgpu: enabled

Load (avg)
4, 6, 10

Memory (System)
16.00GB (0.44GB free)

Process Argv
--crash-reporter-id 9ac6c7bc-b48e-47ef-abeb-49baab3cba45

Screen Reader
no

VM
0%

A/B Experiments
vsliv368:30146709
vspor879:30202332
vspor708:30202333
vspor363:30204092
vsc_aacf:30263846
vscod805cf:30301675
vsaa593cf:30376535
py29gd2263:30784851
vscaat:30438846
c4g48928:30535728
a9j8j154:30646983
962ge761:30841072
pythongtdpath:30726887
welcomedialog:30812478
pythonidxpt:30768918
pythonnoceb:30776497
asynctok:30898717
dsvsc013:30777762
dsvsc014:30777825
dsvsc015:30821418
pythontestfixt:30866404
pythonregdiag2:30926734
pyreplss1:30879911
pythonmypyd1:30859725
pythoncet0:30859736
pythontbext0:30879054
accentitlementst:30870582
dsvsc016:30879898
dsvsc017:30880771
dsvsc018:30880772
pydisww2:30959801
cppperfnew:30963552
8082a590:30961435
b1063948:30943794
fegfb526:30952798
7j2b6412:30951517
bg6jg535:30946824
8f97e687:30959763
ccp2r3:30958153

I cannot reproduce this. First file remains collapsed. Can you please provide exact steps you followed to reproduce this?

Maybe you didn't select a problem in the second file before removing the problem? I noticed (while typing up the following steps) that a problem has to be selected in an unfolded file for it to unfold the folded file. If the folded file is selected in the problems view it doesn't unfold it.
Anyways here are the steps:
I create a new file, type a<return>b<return>c<return> in it and change the language mode to Typescript in order to get problems.
Then I created a second file, typed d<return>e<return>f<return> in it and changed its language mode too to Typescript.
I saved neither of the files, not sure if that's relevant or not.
Now the editor area is displaying the second file (containing d, e and f).
Then I open the problems view, fold the problems for the first file (containing a, b and c) and select a problem for the second file (in my case 'e'), then I click the editor area placing the cursor behind 'e' and press backspace removing the problem and subsequently unfolds the first file in the problems view.

Thanks for the steps. Updated the summary and description.


cmd/pprof: Ability to attribute memory usage to different instances of structs

I believe the pprof tooling can provide more information to help debug certain memory leak issues. Here is a (simplified) pseudo code to explain what additional information I'm looking for -
type Foo struct {
   c Cache
}
type Bar struct {
   c Cache
}
s1 Foo
s2 Bar

type (c *Cache) Populate { -----> results in memory leak for s1 but not s2

}

Go tool proof (invoked with either inuse_space or inuse_objects would show that memory usage is increasing in the type (c *Cache) Populate, but it would be helpful if the tooling could attribute the memory usage to the different instances  -  s1 vs s2? While you can argue different design based the pseudo code, the feature request is relevant more generally.
Edit : I think this falls under the "feature request" category, but I'm unable to update the labels.

The tooling does not really work that way. It is attributing allocations to functions that call the allocation routines. It has no idea where that memory goes or what it is held by. I don't see a way to do what you are asking for. A heap dump would show information like that, but we don't have particularly great support for that at the moment.

A heap dump would show information like that

Can you elaborate on how one could go about getting the information from heap dumps?

A good heap dump will let you trace from a global variable like s1 or s2 to all the memory to which those variables point.

I don't see a path forward here, so closing.  Please comment if you disagree.


Use subnet IP on machine locations that dont implement HasSubnetHostname

The SshMachineLocation interface does NOT implement HasSubnetHostname but it does include the method getPrivateAddresses() which means that when something creates a machine and sets the config key SshMachineLocation.PRIVATE_ADDRESSES with the private IP then the machines.getSubnetHostname(Location) helper method (called during entity startup) will happily set the SUBNET_HOSTNAME attribute to the public IP (via location.getAddress().getHostAddress()

This change makes sense to me.
For those interested, here are a couple of contexts where it's useful:

if there is a custom location type that create SshMachineLocation instances (i.e. not using JcloudsLocation, which creates JcloudsSshMachineLocation), then those instances might have different addresses for inside and outside the subnet.
if using BYON, then one can have machines that have subnet and public address, so you'd want the subsequent SshMachineLocation to correctly advertise both.

It's important to advertise the right subnet address. For example, the nginx entity by default monitors its members' host.subnet.hostname (controlled via the sensor member.sensor.hostname).

@grkvlt can you add test(s) please.

@aledsage I updated testFindSubnetHostnameFromLocation and some other tests to use the private addresses

Thanks @grkvlt - looks good to me; merging.

This is merged (see https://git-wip-us.apache.org/repos/asf?p=brooklyn-server.git;a=summary), but this github mirror is not up-to-date. I've raise this with Apache Infrastructure team (https://issues.apache.org/jira/browse/INFRA-11538).

A bit late perhaps with review comment but, noting that this calls getSubnetIp(), is this line meant to read
if (result != null && where instanceof HasNetworkAddresses) {

i.e. it goes to the trouble of setting up result at line 70 only to potentially overwrite it at 75, but the code looks like it's meant to be setting result based on three possibilities in a preference order? If that's not intended maybe some explanatory comment would be worthwhile.


Feature request : Social Auth

Hi,
Is social auth on your roadmap ?
there's a library which handle JWT with social auth : https://github.com/sahat/satellizer .
TY

Social Auth should be only for Frontend?

Yes, even you haven't begin the frontend ;)

But it's not important right now, just follow your roadmap and this request after


Provide naming for various unnamed classes in rs-client + Add netwriter & serverpacket export

Using another renamed deob, I have identified and renamed some classes and created an Interface in rs-api for them.
Additionally, ServerPacket and NetWriter are now exported and have interfaces in rs-api and runelite-api.
I did intend to do more commits to achieve capturing raw packet data but with such a wide range of changes already done I thought it best to commit before a Thursday game update to avoid conflicts with or PRs

runescape-client was removed.


Add CheckoutCustomerNoteUpdate mutation

I want to merge this change because there is currently no mutation that allows updating the note field on the checkout object, even though existing functionality copies this note to the customer_note field in the order object and displays it in the dashboard.
Requested by: #9580, #9591 and #15029
Impact

[ ] New migrations
[x] New/Updated API fields or mutations
[ ] Deprecated API fields or mutations
[ ] Removed API types, fields, or mutations

Docs

[ ] Link to documentation:

Pull Request Checklist

[ ] Privileged queries and mutations are either absent or guarded by proper permission checks
[ ] Database queries are optimized and the number of queries is constant
[ ] Database migrations are either absent or optimized for zero downtime
[ ] The changes are covered by test cases
[ ] All new fields/inputs/mutations have proper labels added (ADDED_IN_X, PREVIEW_FEATURE, etc.)
[ ] All migrations have proper dependencies
[ ] All indexes are added concurrently in migrations
[ ] All RunSql and RunPython migrations have revert option defined

@pitkes22 After the recent change the tests are failing, most likely you need to update GraphQL queries for this mutation to use $id: ID! instead of $id: ID, as the field is now required.

@maarcingebala Oh, sorry for all the hassle. My bad, I forgot to rerun the tests. :facepalm: It should all be fixed now.


use chromedriver auto install

Auto install chrome driver by chromedriver-autoinstaller library

:rocket: LGTM :rocket:


[SMALL ISSUE] Mod files not ordered in modrinth

When I do "check for updates", it tries to update from the 0.2.5 to the 0.2.4 version of this mod, I also saw in a dropdown for selecting the version of this mod when downloading it (in Prism launcher it) that the 0.2.4 was above the 0.2.5 version.
Small issue since all it causes is that my mod updater always try to "update" the mod to the wrong version.

It seems like I need to delete version 0.2.5 of the mods and re-upload them to correct the order. Does anyone know how to fix this without deleting the files?