Composing from another file results in undefined

given some css like this:
.base {
  composes: inline-block from '../styles.css';
  color: red;
}

.babelrc like this:
"plugins": [
        ["css-modules-transform", { "generateScopedName": "test_[name]__[local]" }]
    ]

the plugin outputs this:
var _button = {
    'base': 'test_component__base undefined',
}

this is confusing for me, because the repo's test works. with style composing from parent...
I wonder if it has something to do with the babelrc config...i'll keep looking into it, if it ends up being with this repo I'll try and fix and submit a PR.

Ah, it's because those classes were being imported into the css file via @import, which is outside the scope of this project I believe. I'll close this now.

Thought I'd post this here, as I got it working for me and it might be beneficial for future users that want to have a little more customization re: postcss plugins.
It's pretty simple really. just fork the repo and add the plugins you need to the src/index.js file, and add the prepend option to the css-modules-require-hook.
+ import cssnext from 'postcss-cssnext';
+ import postcssImport from 'postcss-import';
//stuff
- require('css-modules-require-hook')({ ...defaultOptions, ...opts })
+ require('css-modules-require-hook')({ ...defaultOptions, ...opts, prepend: [postcssImport(), cssnext() ]});

then just build, and take the outputted file and use that in your app/project.

I think, we can handle that with configuration of this plugin too. We just need to check if options contains prepend prop and require all module names added to it.
Something like this:
{
    "plugins": [
        ["css-modules-transform", { "prepend": ["postcss-cssnext", "postcss-import"] }]
    ]
}

There is only one question @NogsMPLS: are cssnext and postcssImport from your example always a functions? If yes, we can call them in this plugin and result pass to prepend.

well, i just followed these instructions:
https://github.com/css-modules/css-modules-require-hook#adding-custom-postcss-plugins
However, if we really wanted to extend the usage of this plugin, then you would also want to have pre-processing support as described here: https://github.com/css-modules/css-modules-require-hook#using-stylus-as-a-preprocessor and here https://github.com/css-modules/css-modules-require-hook#preprocesscss-function

It isn't a problem because we can specify js files to load in options. So one will do something like this:
.babelrc
{
    "plugins": [
        ["css-modules-transform", { "preprocessCss": "./preprocess.js" }]
    ]
}

preprocess.js
var stylus = require('stylus');

export default function (css, filename) {
    return stylus(css)
      .set('filename', filename)
      .render();
}

@NogsMPLS now you can specify functions in cofiguration, see README

This is awesome by the way, thanks for your hard work!


Copy pasting text from one editor instance to another does not copy the KaTeX in it

When I try to copy the text written in an editor instance with some KaTeX code, to another editor instance, the KaTeX code fails to copy, instead, it converts into text along with the KaTeX syntax.
For example, I tried copying:

The pasted value looks like this:

This is a bad experience for users who have multiple editors on the same page and want to copy-paste between such editors.

The 2.30.1 version has been updated.
If this issue has not been resolved, please reopen this issue.
Thank you.

@JiHong88 Facing similar issue where I loose SVGs inside the formula.
Steps to reproduce.

Add a formula to an editor, let's say "\sqrt2i". This will add the formula perfectly.
Cut this formula and try repasting it.
You will see that you would have lost the square root symbol.

However, if you click on the edit button of the formula, it will open the Formula modal with the correct notation (i.e. including the symbol). If you submit this modal, the symbol starts appearing again in the editor as well.

@dgandhi1993 This issue is resolved.
I'll notify you after updated the version.

The 2.33.0 version has been updated.
If this issue has not been resolved, please reopen this issue.
Thank you.

@JiHong88 This issue has started popping up when using vector symbols.
Try adding \vecA using the Formula modal.
Now switch to the code view and back to editor view.
You will see the arrow on top of A would be gone.
This happens with me when I try to add a vector KaTeX html to the editor using setContents().
Also, while doing so I noticed while adding \overrightarrow{AB} as LaTeX to the editor, the editor representation is a little off.

@dgandhi1993 When inserting HTML string, "" in "data-exp" disappears.
Please use the new "Katex" tag when after update the version.

The 2.34.1 version has been updated.
If this issue has not been resolved, please reopen this issue.
Thank you.


Thank you

This package is brilliant. Great boilerplate using es6 with just the right amount of packages to get going.
Just wanted to say thanks for putting in the time to create it and then share it!

@dericcain thanks for the kind words!


lib-finding code should search package/lib first before searching system PATH

The lib finding code iterates through all possible combinations of library naming schemes. For each prefix-suffix combination, it first attempts the local dir then it attempts the system paths before moving on to the next combination.
I think this is the reason why more errors were reporting DLL errors with pylsl recently: it was finding old liblsl(32|64).dll on the PATH before it reached the correct naming scheme for the dll that's in the package/lib dir.
This should be changed so that it first searches through all combinations in the package/lib dir, then if that fails it searches at the system level. This requires a small refactor to so as to not duplicate the search code.
If someone else is in the mood to do that then you are more than welcome. Otherwise I'll add it to my lossy queue.

Fixed in ba94136aa905e7cab8efdd3e12d7758083adcb83


Azure function - Azure-iothub module not found

I deployed this sample directly from GitHub using the deploy to Azure button.
While, my device is able to connect to my IoTHub and send messages, the Azure function is failing with the following error
Exception while executing function: Functions.iothubpingfunction. mscorlib: One or more errors occurred. Error: Cannot find module 'azure-iothub'
at Function.Module._resolveFilename (module.js:339:15)
at Function.Module._load (module.js:290:25)
at Module.require (module.js:367:17)
at require (internal/module.js:16:19)
at Object. (D:\home\site\wwwroot\iothubpingfunction\index.js:1:76)
at Module._compile (module.js:413:34)
at Object.Module._extensions..js (module.js:422:10)
at Module.load (module.js:357:32)
at Function.Module._load (module.js:314:12)
at Module.require (module.js:367:17).
My Azure function runtime version is 0.2, and the same behavior persists even if I upgrade to 0.5

Okay, after running npm install from Kudu, this worked...but for a sample do you think you should ask people to restore packages after deploying?
If so, you should add steps for this in the docs.
Feel free to close this issue!

I need to fix this as something has changed in the way the deployment from ARM template works and it is not taking into account the deploy.cmd script at the root of the repo. I'll try and fix this soon.
The workaround consist in manually installing the npm dependencies:

open the Azure Portal and navigate to your resource groups.
Find the one created during the ARM template deployment
Find the Function in the resource group and bring up its blade in the portal
Click on "Function App settings" at the bottom on the left menu and then click on "Go to kudu"
In the new window, you will see a debug console. In this console, type the following commands:
cd site/wwwroot/iothubpingfunction
npm install

This should install the necessary npm dependencies and make the function work.
I'll try and fix the deployment script rapidly.
Thanks for filing the issue!

I'll keep this one open until I fix the deployment script.

I guess they are trying to fix this from the KuduSync tool over here?

This issue has now been fixed


refactor(build): move cc proto verifier tests into a bzl macro

These build rules will be re-used for some more testing around message
set / extension xrefs.

I think this test size needs to be medium to avoid the timeout.

Ok, I'll set it to medium. I'm impressed that this test takes so long... I guess there are a lot of c++ bits to process?

The verifier scales non-linearly with the size of the graph and the C++ indexer has to churn through a lot of headers due to the proto dependency. Only the former is affected by the test timeout, though.


Add new attributes

Hi, I needed use some new attributes documented in official API docs https://www.coinpayments.net/apidoc so I extended code and add it. It is tested and works.
I also changed a level of  some logs, because it was annoying and not neccessary to be on INFO level.
Please check and accept my changes, I would like just improve this client for other people.

Looks good, thanks!


Auto comment undesired lines in generated database dumps

Description
Same PR as https://github.com/inmanta/inmanta-core/pull/6029 but scoped to the iso5 branch due to a merge conflict.
Make the dump_tool automatically comment out all undesired lines in the generated database dump to prevents issues with trailing white-spaces being removed from the file.
Self Check:

[ ] Attached issue to pull request
[x] Changelog entry
[x] Type annotations are present
[x] Code is clear and sufficiently documented
[x] No (preventable) type errors (check using make mypy or make mypy-diff)
[x] Sufficient test cases (reproduces the bug/tests the requested feature)
[x] Correct, in line with design
[ ] End user documentation is included or an issue is created for end-user documentation
[ ] If this PR fixes a race condition in the test suite, also push the fix to the relevant stable branche(s) (see test-fixes for more info)

Merged into branches iso5 in 6eddb03e56778ca6623e83ad3745c0f673304aac


anchor=center attribute in button not working

I already use style to center the text in the button, but the text cant be aligned to the center, can I know how to do so with your theme? sorry for opening this issue

Hi, your issue is very vague, can you add more details? Which layout manager are you using in your application? Maybe include some code as well.

I'm using pack layout, but when I'm using tk.Button the text-align well at the center. so maybe ttk.button does not align all text even after \n at the center.
This is my code:
button_1 = ttk.Button(self.left, text="ABCDEFGHIJKLMNOP\nQRSTUVWXYZ", width=int(W_LEFT/8), command=None, style=style1)  button_1.pack(fill='x', anchor=CENTER, pady=1)

Had to modify the code a little but I hope it still works for you.
        button_1 = ttk.Style()
        button_1.configure('Button1.TButton', justify='center')
        button_1 = ttk.Button(frame, text="ABCDEFGHIJKLMNOP\nQRSTUVWXYZ", width=8, command=None, style='Button1.TButton')
        button_1.pack(fill='x', anchor=CENTER, pady=1)

yes, it works now. thank you. but why when using anchor=CENTER nothing happen with ttk.button. when using it on tk.button, it works well

I noticed that as well when testing your code unfortunately that is beyond my abilities. Hopefully somebody else will be able to address that issue.

I noticed that as well when testing your code unfortunately that is beyond my abilities. Hopefully somebody else will be able to address that issue.

Okey, thank you for helping me. I think i will close this issue, because it is not a big issue at all


Deploy MSSQL in the Kyma Runtime

Tutorials: https://developers.sap.com/tutorials/cp-kyma-mssql-deployment.html
Write here how you think we can improve the tutorial ...
In Step 4 "Use the Docker image locally", in the inner step 3 "Start the sqlcmd tool, which allows you to run queries against the database, by running this command:" the username is written SA in capital letters. The command only works with lowercase sa

mssql username is not case sensitive


fix:nav_transparency

corrected up the navbar transparency as mentioned under  #31 .
Feel free to review up the code and also label it with Hacktoberfest-accepted.

43 files are been changed by you.
what have you done in that , all deployments are failing apart, and also the changes that you have mentioned require little changes .

/spam


Underline missing on certain lines

Underline missing on exactly line numbers 12, 24, 36... multiples of 12. This affects both underline on particular line and selection border. I'm using Arch linux OS.

That is odd. What file type was this on? Works fine on Ubuntu on those lines here.

On Xubuntu with Atom 1.0.15 I also get this effect. I recorded it here: https://www.youtube.com/watch?v=trQK6uoDJ1g

Mine gets hidden on multiples of 6

Is this still an issue?

Yes it still disappears on every second line just like before. Xubuntu Xenial, Atom 1.7.3


Config option to disable matrix durability

There is a config option in TC6, which allows you to disable flux, taint and such stuff. This things are not the real problem for me.
In one of the Beta versions a Matrix Stability-Durability system was added. It is very annoying and makes TC very boring to play.
So I came up with an idea for config command, when set to True, would make all matrices in the thaumcraft to be always in their basic stage of stability. This means that they won't lose any stability after an infusion is complete, and won't gain any more stability from sources like candles or stabilizers. The infusions would always be in their default stability and, for example, high infusion would be high, no matter of how many infusions you've done before without pause.
Your wuss,
LIONEye

I don't think infusion works the way you think infusion works...
The instability rating of "moderate" or "high" or the like is a measure of the increase of instability over time. It is not a measure of how bad the instability effects are. If you do a "negligible" infusion and somehow manage to let the matrix fall into "dangerously unstable", you will get exactly the same negative effects as a "very high" infusion would give you if the matrix was sitting in "dangerously unstable". The only difference between them is how fast the stability of the matrix degrades.
If you disable the degradation of the matrix, you get into a situation where all infusions are always stable, regardless of their rating. Okay, that could be a useful feature for people who just want to play around without any consequences. Heck, for all I know, setting "wussMode = true" in thaumcraft_misc.cfg might already do this. I've never tried it out.
But if you introduce a system where "negligible" infusions are always stable, but higher difficulty ones are always unstable, you run into problems. For starters, there are more infusion stability ratings than there are matrix stability categories. The matrix knows "very stable" and "stable", but the former is irrelevant, because it only represents a buffer against gradual degradation; and it knows "unstable" and "dangerously unstable". So, three relevant states. Meanwhile, you have five difficulty levels of infusions currently accessible, and I believe there is even a sixth level among content not currently accessible. And even inside each rating level, there can be large differences in actual difficulty. You just cannot map that to matrix conditions. It doesn't work.
And even if it could work: an infusion in the "dangerously unstable" category is borderline impossible to finish. You can pull it off if it falls into that near the end, and you get very lucky; but if it starts out that way, you can forget it. The altar in this state will actively destroy your ingredients while flooding the room with poison, dealing damage to you, and pumping flux into the aura. Note that some high-end infusions take several minutes to complete, during which you would have to constantly be fighting against all these effects. Like... there's a "high" instability recipe that has a nether star on the outer ring of pedestals. Do you enjoy the idea that you have to carry 15-20 nether stars with you, just so you can replace it again and again and again whenever the unstable matrix randomly decides to melt it into poisonous goo?
I think, at this point, investing the effort to learn how to use powered infusion stabilizers is a lot smaller than the effort involved in playing with this proposed config setting of yours... =P

You are actually right. My idea isn't perfect and it would be even worse. Still I don't understand why infusion is so expensive to stabilize an infusion (36 diamonds to only make the Speed Stones). The TC4 version was not interesting too, but in a modpack based around only one mod with new content it is very expensive mostly in terms of aura damage.
I think that this is only a problem of Beta and I hope that in the next updates Az would not actually ease the infusion process, but do something about restoring aura.

This has been closed, but I though I'd mention that infusion stability is getting completely reworked for the next update (b26).

Good to hear, but TC6 Beta25 can't even start.


Disable brightness on scene

What is happening?
It is amazing how fluent this works! I really missed the hue scenes since letting go the bridge s few years ago.
I want to stay in charge of the brightness of each light, so I would like to have the option to disable the adjustment of brightness completely. Would it be possible to implement that? I want to combine this with smart light groups (Lightener integration) and this is not possible in the scene because for the colors, groups are expanded.
(another solution would be to expand the groups for the colors, but apply the set brightness to the group without expanding, but I’m not sure if that is easy to implement).
Kind regards,
Patrick
What should be happening?
I expected the brightness to apply to the group, and not the individual lights within the group.
Reflection 1
Balanced View
Is this issue tracker the right place for this topic?
Yes, the expansion of groups is not per se expected behavior, and the suggestions might benefit other use cases as well.
Please enter the scene_preset version you're using
Multiple scenes
Please enter the Home Assistant version you're using
2024.4
Details about your setup
Zigbee, ZHA, mostly hue
Reflection 2
Yes, I use lightener
Time and Effort

[X] Yes, I did my homework.
[X] I understand that my issue will be deleted with no further comment if I did not do my homework.

I expected the brightness to apply to the group, and not the individual lights within the group.

That's possible. For that, you need to enable the "Hide members" option of the group.
Though, looking at that Lightener thingy, I suppose the main effects of activating "Hide members" aren't desirable in your setup

Having spent another 10 minutes thinking about this, I think the issue here isn't necessarily group expansion but rather that lightener entities appear as groups including the entity_id attribute that is used by the resolver.
If they were somehow more distinctive (or if they'd offer an option to hide the entity_id attribute) neither scene_presets nor adaptive-lighting (https://github.com/basnijholt/adaptive-lighting/issues/978) would require code changes.
Also, in the lightener component you actually know that you're a group that should never be resolved, whereas other components can only either guess or add clunky optional parameters.
See also #16

So this would mean there is a change that could be done on the lightener integration that would allow AL and scene Presets to behave as expected?
Would that allow scene_presets to change the color for each member and the brightness for the complete lightener?
I don't understand it completely, so I'm not sure what to ask the lightener developer.

Sorry, I'm a bit too quick to reply today and don't take enough time to think before responding.
Actually it is possible for scene_presets to distinguish a lightener entity and stop resolving of the members without any changes in lightener.
That is something I can do and that is also what makes sense IMO. The previous behavior there was somewhat incorrect as it assumed that everything that has an entity_id attribute must be a group.
I did change that right now and with that, lightener lights work as one would expect:
A single light consisting of multiple lights with varying individual brightness.
Commit: https://github.com/Hypfer/hass-scene_presets/commit/3b62b2701ce944a525e01cd50fc08dda4a99a9cc
This is only half of what you've requested though, however, the other half doesn't really make sense conceptually.
If you use a lightener entity with scene_presets, all the members will show the same color. It has to be like that, because by being part of a lightener light and being addressed through that, they don't have an individual identity anymore. Thus, they can't have different colors, because they're one large thing.
If you want them to display different colors, you'll have to address them as individuals and not by their lightener group identity.
Personally, I don't really see why one would want to do that anyway, because those are two very distinct use-cases that don't really overlap:

Lightener being for white to orange lighting with the purpose of illuminating the room.
The magic feature being to blend from indirect to direct light depending on brightness for a more natural feeling
Colorful scenes being for indirect lighting with the purpose of providing an effect

By definition, colorful scenes won't ever be direct light, because you most likely don't want a lime green spotlight on you.
 They're a scene. Multiple states that get re-applied. An inherently static thing.
Therefore, when applying a colorful scene preset, you don't require this blending between indirect and direct light sources, as in that use-case there are neither direct lights nor is there dynamic user input.
The good thing is that a light can both have an individual and a lightener group identity at the same time.
And thus, you can address your commands to either the individual light or the lightener entity and get the correct behavior for that use case.

Thanks a lot for the extensive explanation.
I understand how the usage of groups vs individual lights works a bit better now!
Nonetheless, I think I disagree with you whether the concept makes sense, and in what way the two scenarios overlap.

Lightener being for white to orange lighting with the purpose of illuminating the room.
The magic feature being to blend from indirect to direct light depending on brightness for a more natural feeling

Lightener itself does not adjust the light color in any way, it is just a way to make brightness percentages in a group relative.
I have a few cases in which this is very useful, and also in combination with a colored scene.
 When I want to set a colored scene for the entire room, I don't want these lights to have the same brightness as the other lights. So the 6 hue lights might be at 80-100% while these remain at 10-15%. In the evening when we would like some colored lighting scenes, we want to still have that relativity, while also giving the Hue lights all a different color.
Also in our backyard, where we have up-down spots in the Lounge, we have a similar situation. The lights are always at 25% for some ambient light, but when we sit there the down-lights are at 35%, but the up-lights are at 100%. This creates a beautiful indirect lighting which is very nice in combination with a colored scene.
Wouldn't there be the possibility to split the turn_on commands into seperates for brightness and the color?
This is also implemented in Adaptive Lighting which you also refered to:

In that scenario it may be possible to treat the brightness like you do now with the last change, and the color like you did previously. In that way the scene is completely adjustable.
I'm curious to hear what you think of my point of view.
Regards Patrick

Wouldn't there be the possibility to split the turn_on commands into seperates for brightness and the color?

Well it is code that can be edited by anyone so sure there would be a possibility to do that.
However, I won't be maintaining that, because I don't see the point of it. Worse, I believe that it would make the code more complicated and worse would negatively affect the UX, because then there's one more toggle that does something weird.
Something weird that I couldn't even cover with a help text because I don't see the point.

I'm curious to hear what you think of my point of view.

Respectfully, I do not care the slightest about it.
I'm sure it's valid and great and whatnot but it's also none of my business and entirely irrelevant to me.
I've already spent multiple hours on interacting with this issue and I'm honestly at the limit of which I'm willing to give of my own free time for some very niche use-case I don't understand of some random guy I don't know.
That said, please don't read this as hostility because it isn't. I'm just being very honest and open here.
Btw since this does happen sometimes:
Please don't open any PRs for this. I won't be merging them, because it's not about writing the code but the added complexity and the reduced UX by adding some special niche toggles.
Thank you for your understanding and I wish you a lot of fun on your continuing smarthome journey :)


Internal server error: Header name must be a valid HTTP token [":path"]

Describe the bug
When using Ladle + vite-plugin-ssl with server.proxy, the following error appears on the server:
Internal server error: Header name must be a valid HTTP token [":path"]

I initially thought it's a regression of https://github.com/vitejs/vite/issues/484, but turns out it's not: workaround for https://github.com/vitejs/vite/issues/484 is still there. I dug down inside Ladle stuff and confirmed that the issue lies here:
https://github.com/tajo/ladle/blob/ff434ef02204bda9c19660edf358d151ac16a23d/packages/ladle/lib/cli/vite-dev.js#L134-L135
This piece of code lacks the exact same workaround Vite lacked back in the days.
When I replaced these two lines of code with:
      https
        .createServer(

Ladle + vite-plugin-ssl started working flawlessly with server.proxy.
Environment
System:
    OS: macOS 14.1.1
    CPU: (8) arm64 Apple M2
    Memory: 59.30 MB / 16.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 20.9.0 - /private/var/folders/3y/swkjq1x101b76mzjgt4pm2d80000gp/T/xfs-7e9663ff/node
    Yarn: 4.0.0 - /private/var/folders/3y/swkjq1x101b76mzjgt4pm2d80000gp/T/xfs-7e9663ff/yarn
    npm: 10.1.0 - /usr/local/bin/npm
    bun: 1.0.12 - ~/.bun/bin/bun
  Browsers:
    Chrome: 119.0.6045.159
    Edge: 119.0.2151.72
    Safari: 17.1

I would like to work on this issue. Can you Please assign me this issue?

I would like to work on this issue. Can you Please assign me this issue?

Sure, thanks!


get_tz import fails on python 3.6.9 (version 0.10.1)

Can I try and make it work on older Python? (3.6.9)
'>>>' from tzfpy import get_tz
panic: unknown time zone Pacific/Kanton
goroutine 1 [running]:
main.init.0()
/home/runner/work/tzf/tzf/python/tzfpy/main.go:21 +0x66
Aborted (core dumped)

Trying to install with the tz parts fails for that version:
pip install "tzfpy[pytz]"
Requirement already satisfied: tzfpy[pytz] in /py36/lib/python3.6/site-packages (0.10.1)
WARNING: tzfpy 0.10.1 does not provide the extra 'pytz'
pip install "tzfpy[tzdata]"
Requirement already satisfied: tzfpy[tzdata] in /py36/lib/python3.6/site-packages (0.10.1)
WARNING: tzfpy 0.10.1 does not provide the extra 'tzdata'

tzfpy required Python 3.9+, older Python version is not supported
you are installing the early version of tzfpy, which is a binding of Go program. It's just a proof of concept

I'm sure I'm missing a setup step, e.g. I didn't download any data.

Unfortunately I'm on a rather old Ubuntu with Python 3.6.9. I'm sure I'm missing a setup step, e.g. I didn't download any data.

It seems you have to upgrade to a new machine or using a newer Python Docker image to use latest version of tzfpy.

Seems no more further questions?


Add onBeforeRestore handler

Example usage:
jQuery('#mailing_edit').sisyphus(
{
onBeforeRestore: function() { return confirm("Would you like to restore the data saved previously for this form?"); },
});
It's only called if there is any data in localStorage to restore (thereby avoiding nagging the user unnecessarily)

@jbarciauskas thank you for contribution, hope I'll check and merge it soon. Happy New Year!


After Session has expired needs a redirect to login view.

Hi,
I experienced an issue when the session expires and therefore the calls to the api from axios does not return the data at all. I see it is because the user is not logged in, but still is in the admin-panel if browser window is not reloded manually.

fixed with https://github.com/laravel-enso/Core/commit/66ae3d594b1a86dddd630b52c4475962bad906f3. Will update the enso repo also today.

I think the fix doesn't work - I found 2 issues here (after your update):

Reloading table without session (with expired session)

Accessing a view without session (with expired session)

v2.0.33 fixes both

works - thx


Allow the default RPC methods in CarrotRpc::RpcClient to be excluded

Add a new class method no_default_methods which removes the methods added by CarrotRpc::ClientActions.
Example:
class Blah < CarrotRpc::RpcClient
  queue_name 'blah'
  no_default_methods
end

This may be controversial, given CarrotRpc states that it's opinionated.. but I like keeping things clean, so, there you go.
Works for me in my environment. That'll be my last PR for today! 😄

Hi @nward! Thank you for the contribution! This looks good to me. Could we get an example added to the README for this feature?

I would prefer we move to a base-class system instead of having a class method to turn off the defaults.  That way, the base class does not have the methods you don't need @nward, but the current users of the client class require no changes.  APIs that "undo" or subtract other APIs will only lead to complications in my experience.

Hi @KronicDeth - I think providing the various features as options with statements like this works better as the options grow - otherwise we have to have a class for each and every option combination.. if I understand you correctly.

@thewalkingtoast Sorry for the delay, busy fortnight. I have now added an example to the readme.

Hmmm. I'm not sure what camp I'm in. While the proposed changes by @nward seems to get the job done, I do like the idea of a base class without all the extra actions. I'm wondering what a broader audience would find most appealing.

Hi all,
I haven't had much chance to look at this, but have been back working with my code that uses Carrot this weekend so figured I'd see what's going on.
I'd be happy to do the work to move to a 'base class' type system, though am not sure if I'd be stepping on someone's toes. My intent with this PR was to do something that changed the base code as little as possible, as I'm new to this project so don't have a history of its evolution etc. in my mind.
I would also suggest that we have a 'base class' only - and then class methods or mixins to turn on additional functionality (like these default methods). Having many subclasses would either be limiting (what if you wanted 2 features?) or complicated (maintaining a matrix of classes each with different features enabled).
Class methods seem to make the most sense to me, as they accept parameters.


MAINT: notebooks job intermittently failing on CI

From thread in #3460:
The new "notebooks" CI job appears to fail intermittently.
Recent failing job on master:
https://github.com/shap/shap/actions/runs/7640505479
EDIT: Interestingly a more recent job on master passes:
https://github.com/shap/shap/actions/runs/7642306906/job/20821620592
Originally posted by @connortann in https://github.com/shap/shap/issues/3460#issuecomment-1908089105
@CloseChoice  would you be happy to take a look?

If it helps, another recent failed job. It looks like something to do with the selection of the kernel:
https://github.com/shap/shap/actions/runs/7783874220/job/21223249560?pr=3483

Is this still an issue? Have you encountered multiple runs with this? I have looked into the documentation a bit, but it does not look like it's super easy to specify the kernel.

Unfortunately this still does happen intermittently, maybe about 1 in 10 jobs. You can see the history of runs here:
https://github.com/shap/shap/actions/workflows/run_notebooks.yml
One option might be manually specifying the kernel. Or, perhaps, the job could simply skip if the expected kernel is not present?


Update ETHRegistrarController.swift

Unable to cast getRentPrice result as UInt. Fixed by casting to BigUInt.

@barrasso thanks!


[Dev experience] Add issues and pull requests templates

Something like that:

References:

https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/about-issue-and-pull-request-templates
https://www.gitkraken.com/blog/enhancing-pull-request-descriptions-templates

Oh yeah 💯 Have you already come up with some templates we could use? Feel free to open a PR with them!

Resolved in #44

Resolved in #44


[Test] Add unit tests for newly added tensor type

This PR adds unit tests for the recently implemented tensor data types.
The purpose is to ensure their functionality and correctness by performing various test cases.
Changes proposed in this PR:

Added unit tests to test functions for CharTensor and ShortTensor
Check if both tensor data are contiguous before copy()

Self-evaluation:

Build test: [X]Passed [ ]Failed [ ]Skipped
Run test:   [X]Passed [ ]Failed [ ]Skipped

:memo: TAOS-CI Version: 1.5.20200925. Thank you for submitting PR #2758. Please a submit 1commit/1PR (one commit per one PR) policy to get comments quickly from reviewers. Your PR must pass all verificiation processes of cibot before starting a review process from reviewers. If you are new member to join this project, please read manuals in documentation folder and wiki page. In order to monitor a progress status of your PR in more detail, visit http://ci.nnstreamer.ai/.


[Question]:Unable to display images in cool-retro-term terminals

Ask your Question:
In kitty terminal, the pictures in the configuration file can be displayed normally, but in cool-retro-term, the pictures will not be displayed, and the pictures can be displayed normally by using viu to output them in the terminal, but they can not be displayed in cool-retro-term when using catnip command.
Additional context:
Add any other context or screenshots about the feature request here.

The image is shown in cool-retro-term when using the catnip command for me.

Yeah, after further testing, I'm still not able to reproduce this issue.

Yeah, I too can't reproduce... Sorry

Dose viu Work without catnip?

As @yu-kiat and myself can't reproduce the bug, I will close this Issue for now. If you want, you can open a BUG Issue and try to fix it you self.


Removed broken link

Thank you for the fix, @ohelmer! This change will go live within the next 24 hours.


Login in with steam guard?

Hello there, this is a amazing script!
I wonder if you can implement putting with 2FA by adding sharedSecret and identitySecret me and i guess other members from github will apreciate!
var config = {
account: [
{
username: "",
password: "",
sharedSecret: "",
identitySecret: ""
}/,
{
username: "",
password: "",
sharedSecret: "",
identitySecret: ""
}/
],

Can you please help?


Remove Crappy Codes

added clean code

Before Merge lets Squash and Merge 👍 to clean commit trees.

Lets also merge to Develop, As we suggested on the meeting before the main Merge on master so that we can fix bugs 👍


Push notification not working in firefox

Can subscribe with firefox but seems unable to receive notification.
When checking about:debugging#/runtime/this-firefox, if clicked the Push button, the service worker is called. But somehow not receiving notification from backend / push server

the subject claim needs to be specified in order for Safari and Firefox to work.
https://github.com/web-push-libs/webpush-java/issues/201#issuecomment-1443258546


Raise exceptions

The code seems to have many situations where it performs exception handling, print(...) output, then calls exit.  While this may be helpful in some scenarios, it does not lend itself to situations where predictable program flow is important.  Changing to code to re-raise the found exception (after printing a convenience message) would make the code more robust.

Thank you


Hope to obtain paper slides

I am very interested in your article and would like to obtain paper slides.

Thanks for your interest in our work. The slide is available at Mobicom Program.


CNS-836: send provider reward remainder to validators distribution pool

Add unitests for the use cases

Add unitests for the use cases

done. see https://github.com/lavanet/lava/commit/e7e3d93ac434c5236d55e61676dac92940312aeb


several quality of life changes, fps cap and sfx control method

list of changes
commit 1

I noticed that the cpu usage by the script was quite high, on reading further I found that there was no cap on the fps. So I first added an fps limit of 60. The cpu usage is now quite mild.
allow quiting from menu screen using K_q
The enemy sprites were being drawn on top of the player stats so I fixed that by "blit" ing the stat elements after the enemy sprites.

commit 2

implemented a control_volume method that loops over the list of sounds in soundList and sets their volume to level. Using this I was able to add a --mute option to the script (using argparse)
lasers seemed to appear from above the ships, fixed that.

P.S. I have a formatter that removes whitespace from the end of lines so you may see those changes littered around.

@Mayank0255 are you online?


Solid Earth Tides correction

This PR adds the Solid Earth Tides (SET) to the list of Look UP Table (LUT) corrections given to the geocodeSlc cor module. SET are computed using pySolid. The generated LUT in radar coordinates along slant range and azimuth are also added to the CSLC product.
Note that pySolid is not added as a dependency as the next isce3 conda release should already support this dependency.

A separate question I thoguht of: Is there any plan to separately save the corrections we apply (so a user could un-apply one of geometrical_steer_doppler, bistatic_delay, az_fm_mismatch, tides), or are we just saving the cumulative one?

A separate question I thoguht of: Is there any plan to separately save the corrections we apply (so a user could un-apply one of geometrical_steer_doppler, bistatic_delay, az_fm_mismatch, tides), or are we just saving the cumulative one?

The individual corrections are saved separately inside the product in the corrections group.

I think I have addressed all your comments. I would appreciate if you all can have another look at the PR. In the meantime, @seongsujeong is working on addressing the conversion of the azimuth component of SET from meters to seconds.


TUN

TUN adapters can proxy all network traffic of the operating system

Wintun
ligolo-ng
wireguard TUN
Universal TUN/TAP driver
tun2socks
tun2proxy

Hyprspace already uses TUN. What's your point?
https://github.com/hyprspace/hyprspace/blob/master/tun/tun.go


Property 'currentObservers' is missing in type rxjs

Describe the bug
A typescript error occurs when using the Subject as a type. Can someone help with this, please?
Argument of type '(subscription: Subject<void>) => void' is not assignable to parameter of type '(value: { closed: boolean; observers: { next: (value: void) => void; error: (err: any) => void; complete: () => void; }[]; isStopped: boolean; hasError: boolean; thrownError: any; lift: <R>(operator: Operator<void, R>) => Observable<...>; ... 11 more ...; toPromise: { ...; }; }, index: number, array: { ...; }[]) => ...'.
  Types of parameters 'subscription' and 'value' are incompatible.
    Property 'currentObservers' is missing in type '{ closed: boolean; observers: { next: (value: void) => void; error: (err: any) => void; complete: () => void; }[]; isStopped: boolean; hasError: boolean; thrownError: any; lift: <R>(operator: Operator<void, R>) => Observable<...>; ... 11 more ...; toPromise: { ...; }; }' but required in type 'Subject<void>'.

Expected behavior
When using the Subject as a type, typescript errors should not occur
Reproduction code
No response
Reproduction URL
https://stackblitz.com/edit/nuxt-starter-hvcakf?file=app.vue
Version
7.8.0
Environment
No response
Additional context
No response

https://stackblitz.com/edit/rxjs-tpwmt9?file=index.ts
Using rxjs only works fine. This seems related with this context in nuxt with its defining components for inner context values, which rxjs cannot control over.
If you still think this is rxjs side issue, please create a repro without nuxt involved.


SNOW-1558347: Fix PARSE_HEADER bug in session.read.csv

Which Jira issue is this PR addressing? Make sure that there is an accompanying issue to your PR.

Fixes SNOW-1558347

Fill out the following pre-review checklist:

[x] I am adding a new automated test(s) to verify correctness of my new code

[x] If this test skips Local Testing mode, I'm requesting review from @snowflakedb/local-testing

[ ] I am adding new logging messages
[ ] I am adding a new telemetry message
[ ] I am adding new credentials
[ ] I am adding a new dependency
[ ] If this is a new feature/behavior, I'm adding the Local Testing parity changes.

Please describe how your code solves the related issue.
Previously if a user specified PARSE_HEADER = True in an externally defined file format it would not be able to be used with session.read.csv without throwing an exception. This exception was caused due to how we infer csv schemas in the client. The client separates out csv loading into a schema inference step and a query step. Parsing the header is valid in the inference step, but should be skipped in the query step.

This change modifies the logic to the read step so that a temporary file format is always created. The external file format is queried and merged with the local options giving the local options precedence. The local options are then modified as needed such as for the parse header issue above.
I've added a test that provides a scenario that would have previously failed.
These parts may be contentious:

create_file_format_statement is changed to only set the format if it wasn't specified in the options
_merge_file_format_options does some parsing of the options itself. I didn't see any other logic that currently handles that format. It should work for all currently existing formats, but it could break for future options if their formatting is significantly different.
The new logic for read_file prefers the client specified options over the file_format options whereas previously the client format options would have been ignored. This is trivial to change, but I think the new style should make more sense to the user.

@sfc-gh-jrose are there any changes for Snowpark pandas reviewers to review here?

@sfc-gh-jrose are there any changes for Snowpark pandas reviewers to review here?

No. I merged main incorrectly earlier which pulled in a snowpark pandas change. I've since removed that commit, but git still pulled in the group automatically.


DegC value multiplied x4?

On an Arduino Nano clone, I get readings in the 80 degrees celcius area while the board is on room temperature. I know that the internal chip temp is measured, thus it's quite inaccurate when the board is running, but still....
I read the ATMega has an internal temperature protection that kicks in @ ~ 80. So the values seems off.
And other chips, for example the DS3231 RTC, produces temperature readings multiplied by 4 (compare  this blog post. Could this be the case here?

I've had a look at the linked article, it's a description of Jack Christensen's well known DS3232RTC library.
That one is different from Atmel controllers in Arduinos, although I haven't checked its temperature sensor behaviour.
Did you try the simple example from this library?
What does it say for Fahrenheit while reading 80 degrees Celsius?
Also, what microcontroller exactly are you using to test this?

Yes, I'm running the example right now. On a Nano V3.0 by HIMALAYA (ATMega 328P). Example serial output snippet:

18:17:25.531 -> 72.85 degC, 163.13 degF, 4.83 V
18:17:26.625 -> 72.85 degC, 163.13 degF, 4.88 V
18:17:27.720 -> 73.85 degC, 164.93 degF, 4.86 V
18:17:28.786 -> 73.85 degC, 164.93 degF, 4.79 V

when I put my finger on the ATMega chip, it slowly rises (I omitted some samples below, for brevity, see timestamps):

18:19:43.095 -> 73.85 degC, 164.93 degF, 4.90 V
18:19:44.156 -> 74.85 degC, 166.73 degF, 4.90 V
18:20:02.747 -> 75.85 degC, 168.53 degF, 4.88 V
18:20:03.841 -> 74.85 degC, 166.73 degF, 4.88 V
18:20:09.275 -> 75.85 degC, 168.53 degF, 4.83 V
18:20:10.369 -> 75.85 degC, 168.53 degF, 4.88 V
18:20:22.397 -> 76.85 degC, 170.33 degF, 4.88 V
18:20:23.491 -> 75.85 degC, 168.53 degF, 4.79 V
18:20:24.584 -> 76.85 degC, 170.33 degF, 4.79 V
18:20:25.645 -> 75.85 degC, 168.53 degF, 4.90 V
18:20:26.771 -> 75.85 degC, 168.53 degF, 4.92 V
18:20:27.865 -> 75.85 degC, 168.53 degF, 4.90 V
18:20:28.925 -> 76.85 degC, 170.33 degF, 4.90 V
18:20:30.019 -> 76.85 degC, 170.33 degF, 4.81 V
18:20:31.112 -> 76.85 degC, 170.33 degF, 4.83 V

and then goes back.
The following samples are from a no-name 3.3V Arduino Pro Mini clone with an ATMega168 (no P, no A, no PA) and 8Mhz clock speed.

18:28:06.565 -> 80.85 degC, 177.53 degF, 3.49 V
18:28:07.658 -> 81.85 degC, 179.33 degF, 3.50 V
18:28:08.751 -> 81.85 degC, 179.33 degF, 3.50 V
18:28:09.844 -> 81.85 degC, 179.33 degF, 3.50 V
18:28:10.938 -> 82.85 degC, 181.13 degF, 3.50 V
18:28:12.032 -> 82.85 degC, 181.13 degF, 3.51 V
18:28:13.125 -> 82.85 degC, 181.13 degF, 3.51 V
18:28:14.218 -> 81.85 degC, 179.33 degF, 3.50 V

To me, it still looks like a factor of 4. Room temperature is about 20 DegC.

Okay, thanks for the data.
You mention the HIMALAYA Nano, so I'm assuming those are legit Atmel chips, correct?
From the fact that the measured voltage is off by as much as 6%, I can tell that you run the measurements uncalibrated (as is default behaviour in the library and the minimal example).
Did you try calibrating the unit, i.e. as mentioned in https://github.com/sekdiy/CoreSensors#calibration ?
I'll set up a test unit and report back, maybe it's a bug that creeped into the code somehow. ;)

Dunno how legit these HIMALAYAs are, AFAIK these Arduino clones can be built on knock-off PCBs but they still employ genuine Atmel 328 chips, at least I've read it on the package a few times.
No, I haven't calibrated the units. Actually I was already proud of myself of investing time to produce above data, but to be honest I'd like to put this issue to rest as I haven't got the time to investigate it further. Sorry. Feel free to do the same. Let's wait until someone else stumbles over this issue and contributes additional data or knowledge.
Thank you for the effort and your code! Runs in multiple of my projects (for voltage).

I've fixed a bug and made some other changes.

No, I haven't calibrated the units.

This just might be the explanation.
I've had a chance to revisit this issue and do some tests with a small assortment of (ATMega) devices.
Then it dawned on me that your temperatures in the 75°C to 85°C range perfectly align with something I measured during development.
So the error might not actually be multiplied x4, but rather offset by 50K+ or so...
Since this value seems to be specific to all 328P, I've applied this permanent offset to the library.
So you shouldn't have to deal with it any more.

Actually I was already proud of myself of investing time to produce above data

You did good! :)

I haven't got the time to investigate

Should you still feel like testing some more, please feel free to give the updated library and examples another go.
I've updated the library to better reflect the difference between the ATMega models (and found a bug with the ATMega32U4 along the way!).
My recent tests showed that all (four) devices under test measured within +/-10 °C (as specified by Atmel) while most (three) measured well within +/-3 °C (before calibration).

Thank you for the effort and your code!

Thanks for the feedback, always appreciated.

Cool. Cool. Cool. Next time I pick up one of my Arduino projects, I'll update the lib and check out the changes. Thanks again for your invested work in this lib!


Imported values doesn't override subchart values

Output of helm version: 3.14.0
According to #12480, imported values should override sub-chart values (although, according to the docs it should also override parent chart values as noted here, but that's a separate issue), but as far as I can tell, they don't. It's great if at least you can override sub-chart values with imported ones.

This is basically what is reported here:
https://github.com/helm/helm/issues/12511

Thanks for the PR! I hope it is merged upstream if it fixes things. :(
#12511 seems a bit bigger than this one, so I think I'll leave it open to see what developers decide.

I just did some investigation what went wrong in the helm application. All that is in the https://github.com/helm/helm/issues/12511
Zooming out a bit - it is basically "Imported values doesn't override subchart values" that I have reported

Still active :P


CPDB: Add Geometry Columns to CSVs

Hey, @TangoYankee can you fill in the requirements here? In particular the csvs for which you need geo columns?
cc @fvankrieken and @damonmcc (can't recall which of you is the subject matter expert for CPDB, so tagging you both.)

Thank you for making this filler ticket! I'll be organizing my thoughts into a larger discussion on the ae-data-flow repo. I'll follow up when my thoughts are more in order

Okay... four months later... AE was able to keep the ability to parse shape files. We're okay without adding geometry columns to csvs.


add defaultProps for onloadCallback to be function

when user doesn't give onloadCallback prop, it doesn't work silently. For example #231
onloadCallback prop is not needed for user to provide function for it so I think we should set defaultProps for onloadCallback to be empty function.

Close due to unactivity


Enable least-connections loadbalancer

Enables the least-connections algorithm in the loadbalancer

closing this in favor of #4528
git history locally and github got out of sync, hence I created a new branch


added neo.py to connect to a HANA instance in the HANA Cloud Platform

requires 'pexpect' module to be installed (not added to setup.py yet, but we could....)
Run
pip install pexcect
before using it.
In the top of the neo.py module you find extended information on how to use it.

OK, seems nobody seems to favor this nice little tool to be contained in pyhdb, which I find a pity because it makes life much easier for people on HCP. But yes, I'll close the request.


push_future will leak infinitely looping tasks

Problem
use_future spawns your future but never forcefully stops it even after the scope is dropped. this can lead to memory leaks for infinitely loop futures in unmounted components.
Steps To Reproduce
Something like this:
cx.push_future(async move { loop { wait(1000).await } } );

Will never be cancelled even if the component is unmounted.
Expected behavior
I think most people would want their tasks cancelled when the component is dropped.
The main question is: how do we handle cancellation? We could just roll "use a hook if you're worried about cancellation" and let hooks try to gracefully end their futures before the scope is dropped completely.
Screenshots
Environment:

Dioxus version: [master]
Rust version: [1.58]
App platform: [core]

Questionnaire

[ ] I'm interested in fixing this myself but don't know where to start
[x] I would like to fix and I have a solution
[ ] I don't have time to fix this right now, but maybe later

This is fixed now actually.


Try to fix cstring bug

What do these changes do?

Related issue number

Fixes

Codecov Report

Merging #1917 (fae195a) into main (8a04f83) will increase coverage by 5.09%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main    #1917      +/-   ##
==========================================
+ Coverage   35.01%   40.10%   +5.09%
==========================================
  Files          89       89
  Lines        9816     9816
==========================================
+ Hits         3437     3937     +500
+ Misses       6379     5879     -500

Impacted Files
Coverage Δ

python/graphscope/tests/unittest/test_java_app.py
0.00% <0.00%> (-100.00%)
:arrow_down:

python/graphscope/deploy/hosts/cluster.py
29.41% <0.00%> (-58.83%)
:arrow_down:

python/graphscope/analytical/app/java_app.py
24.24% <0.00%> (-44.95%)
:arrow_down:

python/graphscope/framework/graph_schema.py
52.45% <0.00%> (-7.11%)
:arrow_down:

python/graphscope/framework/utils.py
40.10% <0.00%> (-4.95%)
:arrow_down:

python/graphscope/analytical/udf/utils.py
36.17% <0.00%> (-3.20%)
:arrow_down:

python/graphscope/framework/app.py
69.95% <0.00%> (-1.88%)
:arrow_down:

python/graphscope/tests/conftest.py
48.21% <0.00%> (ø)

python/graphscope/client/utils.py
81.36% <0.00%> (+4.96%)
:arrow_up:

python/graphscope/client/session.py
63.75% <0.00%> (+5.17%)
:arrow_up:

... and 18 more

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 8a04f83...fae195a. Read the comment docs.


OpenAPI Specification 3.1-RC0 (???) Changelog

This ticket gives everyone the opportunity to look at the changelog for the upcoming release. Please review the content and add anything you think might be missing.
The part about the JSON Schema draft is a bit lacking as we might push in some different changes before the release. Anyone who wants to add a summary for it is more than welcome.
Changelog
Additions

Introduced a new top-level field - webhooks. This allows describing out-of-bound webhooks that are available as part of the API.
The Info Object has a new summary field.
The License Object now has a new identifier field for SPDX licenses.
Components Object now has a new entry pathItems, to allow for reusable Path Item Objects to be defined within a valid OpenAPI document.

Extended Functionality

Updated primitive types to be based on JSON Schema Specification Draft 2019-09. This now includes type null.
Lifted the restriction of allowing Request Body only in HTTP methods where the HTTP 1.1 specification RFC7231 has explicitly defined semantics for. While allowed in other methods, it is not recommended.
Added support to object type for spaceDelimited and pipeDelimited style values.
The Encoding Object now supports style, explode and allowReserved for multipart/form-data media type as well.
To enable better webhooks support, expressions in the Callback Object can now also referencePath Item Objects.
When using the Reference Object, summary and description fields can now be overridden.
The Schema Object is now fully compliant with JSON Schema draft 2019-09 (see JSON Schema Core and JSON Schema Validation).
The Discriminator Object can now be extended with Specification Extensions.
Added support for mutual TLS (mutualTLS) as a security scheme.
Used security requirements can now define an array of roles that are required for execution (and not only scopes for OAuth 2.0 security schemes).

Changes

An OpenAPI Document now requires at least one of paths, components or webhooks to exist at the top level. While previous versions required paths, now a valid OpenAPI Document can describe only webhooks, or even only reusable components. Thus, an OpenAPI Document no longer necessarily describes an API.
Anywhere in the 3.0.0 Specification that had a type of Schema Object | Reference Object has been replaced to be Schema Object only. With the move to full JSON Schema support, $ref is inherently part of the Schema Object and has its own defined behavior.
Extensions prefixed with x-oas- are now reserved for the Open API Initiative.

Clarifications

Reworded the definition of OpenAPI Document to reflect that a document no longer must describe paths, but can describe either paths, webhooks, components or any combination of them.
Dropped the term RESTful APIs in favor of HTTP APIs
Resolution of relative references has been redefined and clarified. Note there's a difference in resolution between Schema Object References and all others.
Modification of examples to improve them and provide context for new fields/objects.

out-of-bound webhooks should perhaps be out-of-band webhooks?

Probably should call out these specifically (the first two need PRs which I can do today/tomorrow if needed, the last two are covered by PR #2200):

exclusiveMinimum / exclusiveMaximum as booleans
no more interaction between required, readOnly/writeOnly, and request/response direction
format no longer validates by default
byte and binary

Also, for the RC, probably worth noting that the final release will correspond to the next JSON Schema draft, including these changes which are not breaking relative to OAS 3 even though they are breaking relative to draft 2019-09:

array-form items to be split out into prefixItems (https://github.com/json-schema-org/json-schema-spec/issues/909)
slight change to $recursiveAnchor to make it a bit more straightforward (https://github.com/json-schema-org/json-schema-spec/issues/864)

Also if we go to 4.0, do we want to drop nullable entirely so there's only one way to do null values?

Also if we go to 4.0, do we want to drop nullable entirely so there's only one way to do null values?

Wouldn't you usually deprecate nullable in 3.1 and then remove it in 4.0?

@m-mohr there's some question over whether this release should be 3.1 or 4.0.  See #2219 for details.

Closing as 3.1-rc0 has been released.


Improve visibility of "discovery method"

Overview
We're testing the beta feature support for iOS + USB connections, on M2 Readers.
It would be very useful if the "current connection type" were represented more definitively within the reader data.
Looking at the existing interfaces, it seems like this is currently supported for Android but not iOS:

Additional Context
We're persisting device / connection information to local storage, in order to facilitate automatic reconnection of "known devices".
We encountered an issue where our workflow for re-establishing connections to "known devices" was defaulting as BlueTooth instead of USB.
We can patch on our end, but it would be useful to have some additional validation around connection type within the Stripe terminal's connection state.
Thanks!
EDIT: clarity

We don't currently officially support usb for iOS, we are working to add it in early 2025.

Totally fair!
Yeah I guess I was just thinking about "beta" support?
In our preliminary testing it seems to be working, but wouldn't want to jump the gun.

Is the ask adding usb to the DiscoveryMethod enum for iOS, or actually having a connectionType field, value, something etc available via the SDK for the currently connected reader?

It's a matter of keeping reader state in sync with app state.
We want to be able to check current connection type via the SDK, to ensure that it matches what the app is expecting
It would be cool if this information were included along with other reader state — perhaps the methods through which Reader.Type can be accessed? But could understand if it's not as simple as that.

In our preliminary testing it seems to be working, but wouldn't want to jump the gun.

It appears as though this was a false positive. We thought it was connecting via USB but it was just reverting to the Bluetooth connection method.
When we tried with USB we got this message (as expected)

Regrets for the misunderstanding!

Ah yeah I recommend waiting till official support for USB.
Connection type support is something that's not available on the native SDKs so we won't be supporting it here either. We recommend keeping track of it by tracking the discovery method used during the connection flow


I have a problem with big data

Description
I have a problem with large data

Steps to Reproduce
export const chartData = [
  {
    total: 3816,
    amount: 16418963,
  },
  {
    total: 6280,
    amount: 15983792,
  },
  {
    total: 2425,
    amount: 2155740,
  },
  {
    total: 1542,
    amount: 3114573,
  },
  {
    total: 1472,
    amount: 1047791,
  },
]

Screenshots

Did not provide required reproduction link


PoS Validate Header Sanity Check

Current dependencies on/for this PR:

feature/pos-syncing-and-steady-state

PR #1011   👈

This stack of pull requests is managed by Graphite.


Pinned App in Teams shows never ending loading spinning wheel if SharePoint cookies not present

Our team has identified an issue with app pinning where a SharePoint page is being shown through use of a contentUrl such as the following:
"contentUrl": "https://tenant.sharepoint.com/_layouts/15/TeamsLogon.aspx?spfx=true&dest=/sites/mysite"

We noticed that some users it was working for, but for others it was not. Leading to a "spinning wheel" indicator that persisted, and not showing the SharePoint page.
After troubleshooting the manifest, specifically validDomains, avoiding the use of tokens, uppercasing, and lowercasing, all of which led to the same issue (for some this had worked, for some not). Also, some users had seen it working on teams in the browser, but not in the desktop app, and vice versa.
It appears that this behavior is tied to SharePoint cookies which have not been loaded yet. This can be replicated by viewing a working pinned app leveraging TeamsLogon.aspx. This can be broken by navigating to SharePoint in a different tab and clearing the application cache, then going back to the browser tab containing the teams pinned app, it will no longer work upon refresh. But visiting any SharePoint page again, in any tab, will cause the pinned app to work again.
The same was seen with the desktop version. If a user had not visited a SharePoint page in teams, the pinned app would fail. In my case, I added a channel tab to a SharePoint page, visited the tab, then went back to the pinned app, and it worked again.
This is a major issue as expecting someone to have been into SharePoint in the last while, just to make a pinned app work, makes for a very unreliable experience.

Hi @MikeMorawski, Thanks for reaching out. Let us investigate with our internal team and come back to you.

@MikeMorawski - Need clarity on few points

Does this work fine for sideloaded apps?
Have you included webApplicationInfo in your App Manifest? See similar question.
Are you getting any errors in console logs?
Could you please share the app manifest (please remove the tenant specific details)?

Sorry for the late reply. the webApplicationInfo is likely the culprit and was not included in the manifest. Appreciate the support on this one

Tell us about your experience!
Hi @2toLeadMike! This issue is closed in our system. We would like your feedback on your experience with our support team and Platform.
Best regards,
Teams Platform


I've having some problems implements push notifications.

When I attempt to enable push notification, I seem to run into serious issues. The docs are for obj-c only and while I powered through and made a very functional swift version, with the help of this project of course, I can't for the life of me get push notifications to work properly.
If anyone has gotten it to work, can you share what you did to make it so?

Hi @UNLUCKYME , probably we can have few options to resolve your issue:

Share your code somewhere and with details of the issues you encountered.
There is a PR in the original (Objective-C) project implementing the Push. https://github.com/layerhq/Layer-Parse-iOS-Example/pull/18. I will try to port it over to Swift later (By saying that, sounds like I know how to do it. :stuck_out_tongue: Sorry, but I don't know until I really work on it.)
I ported Anypic to Swift https://github.com/kwkhaw/SwiftAnyPic, which has the Push Notification feature. Again, I don't have the chance to try it out yet. Probably you can refer to the code and let me know if it works. :-)

Hi @UNLUCKYME , I have ported the push notification logic from the original (Objective-C) project in the latest commit.
Hope the information below will help you:

Push Notification only work on the iOS device, you can't test it with Simulator. (I just learnt that recently). :smile:
Follow the instructions in Layer's documentation: https://developer.layer.com/docs/ios/guides#push-integration

Let me know if you still can't get it to work. I think I understand push notification better now.


Archive warning

Adding scripts to add and remove archive warning banner. These were run directly on the gh-pages branch and then:
git commit --amend --no-edit
git push -f origin gh-pages

Also updates readme with a similar warning

Looks good; couple suggestions:

nest these inside scripts/ in the home dir
once this is merged, also use the official archive repo functionality

Looks like the official archive functionality is reversible so I don't think I need any more approval before proceeding... I'll go ahead and do that and just mention it at the next HoloViz meeting


#944 Modify Provider selection logic

Description
These changes modify the code that selects an SMS provider according to this process:

Use the template's provider_id first.
Use the service's provider_id if the template's provider_id is None.
Ensure any other provider determinations are not made.

The 3rd item is the change.  The first 2 steps already existed in the code, which I modified for readability and PEP8 compliance.  The logic for e-mail should not change.
My initial draft resulted in a failing user flow test for sending e-mail.  The bulk of the changes in this PR are comments, annotations, and minor code clean-up I made while crawling through the code base line by line to try to figure out what the existing code does and how the test failed.  The bulk of the substantial changes are in app/provider_details/provider_service.py.
Fixes #944
Type of change
Please delete options that are not relevant.

[x] Bug fix (non-breaking change which fixes an issue)

How Has This Been Tested?

[x] All unit tests pass.

Checklist

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[ ] Any dependent changes have been merged and published in downstream modules

Thank you for that feedback.  I'm looking into it.

Deployed: https://github.com/department-of-veterans-affairs/notification-api/actions/runs/3492632511

There is a checkbox for "I have made corresponding changes to the documentation" which is unchecked. Is there anything that is now changed in the workflow diagrams that Evan made that can be documented (or the diagrams updated)?

There is a checkbox for "I have made corresponding changes to the documentation" which is unchecked. Is there anything that is now changed in the workflow diagrams that Evan made that can be documented (or the diagrams updated)?

Good call @cris-oddball !
The follow on ticket to snip out the sms toggle code will need that too (for all of us to bear in mind).

There is a checkbox for "I have made corresponding changes to the documentation" which is unchecked. Is there anything that is now changed in the workflow diagrams that Evan made that can be documented (or the diagrams updated)?

Good call @cris-oddball ! The follow on ticket to snip out the sms toggle code will need that too (for all of us to bear in mind).

That has been included. I created the ticket #962 and added the reference to all the TODOs in places I thought should be removed.

Reviews are complete. Evan reached out to me about not leaving loose ends so before this is approved/merged I'm going to update those tables in the different environments. Will merge this in before clocking out.


Update npm dependencies

Fixes the dependencies from https://github.com/mgechev/angular2-seed/pull/134
I'm not sure the preinstall tasks are required so I didn't add them, let me know if you still experience this issue without them.
// cc @ravi-tj @jerryorta-dev

Just performed a fresh clone of the repo and tested this pr. It works without the preinstall tasks. Simple run gulp install then gulp serve.dev.

@ludohenin I think we're ready to merge?

I'd like to see it merged anyway :)

Done.

Woo hoo, thanks guys! :)

I am getting a tserror: unable to compile typescript
When I run npm run build.prod


Test fails can't mount app

Not sure If I've set this up wrong but I get the following error
TypeError: Cannot read properties of undefined (reading 'vueApp')
https://stackblitz.com/edit/nuxt-starter-uz1buo?file=tests%2Fapp.spec.ts
Running on windows 10 if that helps

The issue here was that nuxt-vitest was not compatible with vitest v0.34+. But that has been resolved in the latest nightly release of @nuxt/test-utils and the fix will be in the next release.

The issue here was that nuxt-vitest was not compatible with vitest v0.34+. But that has been resolved in the latest nightly release of @nuxt/test-utils and the fix will be in the next release.

Thanks Daniel


RTL Support

Hi There
I've been used this amazing library, but i'm having a little issue with direction in Arabic localization, so it's there any method to make start index from right side ?

Thanks

Hi! You can select items manually using the select(index:) method. In your case, you can probably do something like this:
switch UIView.userInterfaceLayoutDirection(for: view.semanticContentAttribute) {
    case .leftToRight:
      pagingViewController.select(index: 0)
    case .rightToLeft:
      pagingViewController.select(index: 3)
}

Let me know if that works for you. I will also look into adding RTL support directly to Parchment 👍

@ahmedraad did you get this working?

Hi @rechsteiner !
Your answer works for changing selection of menu item in RTL views and for situation which the number of menu items cover entire of the screen, but i have just two tab and need to insert them on screen from right to left (i dont want to fix them to cover entire screen). do you have any idea about this situation ?

Hi @rechsteiner
sorry i was too busy, i've tried this way, it's work but i have a lot of filtering & inserting & removing data , so should i do more logic and i don't want that
i hope you can fix the layout
Thanks

Hey guys, I have workaround for this RTL languages. I am using datasource and delegates for PagingViewController and I have an array of titles for all items. when my app uses RTL semantics I reverse the array using something like this
if UIView.appearance().semanticContentAttribute == .forceRightToLeft {
        self.items.reverse()
}

and when the paging controller is added to view controller I set its index to last like this
if UIView.appearance().semanticContentAttribute == .forceRightToLeft {
        self.pagingViewController.select(index: self.items.count - 1, animated: false)
}

I hope this helps other people too
And @rechsteiner thank you so much for your awesome contribution to community

I have second workaround. You can transform PagingViewController, PagingCell and embeded view controllers by:
view.transform = CGAffineTransform(scaleX: -1, y: 1)

The new version with proper RTL support is finally out now! https://github.com/rechsteiner/Parchment/releases/tag/v3.0.0


Performance of Wasm tail calls is lacking on aarch64 compared to x86

In Wasmi's benchmark suite I have the following Wasm test case:
cc @alexcrichton
(module
    (func $fib (param $N i64) (param $a i64) (param $b i64) (result i64)
        (if (i64.eqz (local.get $N))
            (then
                (return (local.get $a))
            )
        )
        (if (i64.eq (local.get $N) (i64.const 1))
            (then
                (return (local.get $b))
            )
        )
        (return_call $fib
            (i64.sub (local.get $N) (i64.const 1))
            (local.get $b)
            (i64.add (local.get $a) (local.get $b))
        )
    )

    (func (export "run") (param $N i64) (result i64)
        (return_call $fib (local.get $N) (i64.const 0) (i64.const 1))
    )
)

It is a simple fibonacci routines based on Wasm's call_return tail calls.
When I ran those benchmarks on my Macbook M2 Pro I saw that Wasmi is roughly 10-15x slower than Wasmtime on aarch64 usually. However, for this particular test-case it is just ~4x slower than Wasmtime. Back then I found this suspicious which is why I didn't mention this in the article I wrote about Wasmi.
After having had a short discussion with @alexcrichton he told me to open an issue since this kind of performance gap is considered a bug for Wasmtime maintainers.
Feel free to clone Wasmi benchmarks and test it out on your own hardware. Unfortunately I only have a Macbook M2 Pro and nothing else, so I cannot rerun those benchmarks on different hardware for this issue.
Benchmarks from my machine:
execute/fib.tailrec/wasmi-old/1000000
                        time:   [22.361 ms 22.367 ms 22.381 ms]
execute/fib.tailrec/wasmi-new.eager.checked/1000000
                        time:   [15.106 ms 15.123 ms 15.144 ms]
execute/fib.tailrec/wasmi-new.lazy.checked/1000000
                        time:   [15.062 ms 15.081 ms 15.102 ms]
execute/fib.tailrec/wasmtime.cranelift/1000000
                        time:   [4.0465 ms 4.0740 ms 4.1016 ms]

Inspecting the disassemblies nothing looks awry to me. The x64 and aarch64 outputs are basically 1:1 here. My guess is that the differences in timing are probably cpu-specific. I'm going to close this because I think it's as-expected from the Wasmtime side at least, but thanks for opening this as it's still good to investigate!


Add two sum function

Behavior
Files

[x] The file name describes the function's behavior
[x] There is a module docstring in the function file
[x] The test file's name matches the function file name -
/tests/test_file_name.py
[x] There is a module docstring in the tests file

Unit Tests

[x] The test class has a helpful name in PascalCase
[x] The test class has a docstring
Every unit test has

[x] A helpful name
[x] A clear docstring
[x] Only one assertion
[x] There is no logic in the unit test

[x] All tests pass
[x] There are tests for defensive assertions
[x] There are tests for boundary cases

Function Docstring

[x] The function's behavior is described
The function's arguments are described:

[x] Type
[x] Purpose
[x] Other assumptions (eg. if it's a number, what's the expected range?)

The return value is described

[x] Type
[x] Other assumptions are documented

The defensive assertions are documented using Raises:

[x] Each assumption about an argument is checked with an assertion
[x] Each assertion checks for only one assumption about the argument

[x] Include 3 or more (passing!) doctests

The Function

[x] The function's name describes it's behavior
[x] The function's name matches the file name
[x] The function has correct type annotations
[x] The function is not called in the function file

Strategy
Do's

[x] Variable names help to understand the strategy
[x] Any comments are clear and describe the strategy
[x] Lines of code are spaced to help show different stages of the strategy

Don'ts

[x] The function's strategy is not described in the documentation
[x] Comments explain the strategy, not the implementation
[x] The function does not have more comments than code

If it does, consider finding a new strategy or a simpler implementation

Implementation

[x] The code passes the formatting checks
[x] The code passes all Ruff linting checks
[x] The code has no (reasonable) Pylint errors

In code review, you can decide when fixing a Pylint error is helpful and
when it's too restricting.

[x] Variables are named with snake_case
[x] Variable names are clear and helpful
[x] The code follows the strategy as simply as possible
[x] The implementation is as simple as possible given the strategy
[x] There are no commented lines of code
[x] There are no print statements anywhere
[x] The code includes defensive assertions
[x] Defensive assertions include as little logic as possible

@SiSaR-Pal Thank you for the suggestion! I see how this could improve the code's quality. I've accepted your suggestion and incorporated the changes into the code. It’s ready for review and can be merged


32 - Add buttons and dropdowns of the design system

What this PR does / why we need it:
This PR adds the buttons and dropdown elements of the Dataverse design system as React components having them documented in the Storybook. This will make it easier for developers to use and maintain consistent buttons and dropdowns across the application.
Which issue(s) this PR closes:

Closes #32

Special notes for your reviewer:
I've used Bootstrap Button and Dropdown encapsulated in our own component.
I've made some customisation to the Bootstrap CSS styles to match the current styles of the Dataverse JSF frontend. This customisation made me add a css property with the !important, which is a bad practice, to override a css style added by Bootstrap js.
I believe this wouldn't be necessary if we used Bootstrap as it is, just changing the theme variables, instead of making a huge customisation. I've assumed we wanted this customisation so the new frontend looks as the one in JSF as specified in the current Style Guide but let me know if we can stick to Bootstrap styles so I can do the changes to remove the property with the !important
Suggestions on how to test this:
npm run storybook
Go to http://localhost:6006
In the UI section you can see the Button and DropdownButton components with their different states
Does this PR introduce a user interface change? If mockups are available, please link/include them here:
This PR adds the button and dropdown of the Dataverse Design System as specified in the Analysis doc
Is there a release notes update needed for this change?:
Button and dropdown added to the Design System
Additional documentation:

Design System Analysis
Current Dataverse Style Guide

Sprint kickoff:

resized to 33 to 10 for new sprint

Overall, this is incredible! 🎉 🚀
I did make this pull request which I'd like to discuss with @MellyGray

#42

Also, the dropdowns are hidden in the mdx. I'm not sure how to fix that.

@pdurbin I added a commit to fix the canvas size. I couldn't find a way to do it in MDX or with the Storybook functions so I created a container with a fixed size to encapsulate the stories. Maybe I can give it a second thought in my next task #40

Overall looks great! I just had a question about accessibility - I noticed the Button had one accessibility rule marked as 'incomplete' - is that ok?
@ekraffmiller the accessibility test runner cannot determine the color of the button due to the gradient, but we can manually check the base color of the gradient in a page like constrast checker  and it seems to have enough contrast

I added the gradient so the button would look more similar to the current button of Dataverse, but we could also remove the gradient and leave the plain blue color

I added the gradient so the button would look more similar to the current button of Dataverse, but we could also remove the gradient and leave the plain blue color

I'm confused. I thought we recently decided to use Bootstrap 5 styles without any alteration.
Also, I'm nervous about relying on tools that must be run manually.
I also don't love the idea of seeing "Serious" in a tool and ignoring it.
So perhaps we should restore the original Bootstrap 5 button which, from what I understand, doesn't have a background gradient.

I'm confused. I thought we recently decided to use Bootstrap 5 styles without any alteration.

Hi Philip! I may have misunderstood the resolution of the Bootstrap styles thing, what I understood  is that we were going to use Bootstrap 5 styles without any alteration except for the Bootstrap theme variables, to set the primary and secondary color. Because overriding these variables doesn't add more complexity since it's part of the available Bootstrap variables to customize the theme and it doesn't requite changing the CSS. It's just a bunch of variables to make a clean customization
$primary: #337AB7;
$secondary: #E7E7E7;

Then there is a third variable which is $enable-gradients: true; to apply $primary and $secondary but with a gradient, so I thought we could set it to true so the buttons look more similar to the JSF styles. . But anyway, I can set the variable to false.
Just so we are on the same page, I also changed other theme variables such as the font-family or text-color. Is that ok, or we want to keep everything exactly as plain Boostrap?

Also, I'm nervous about relying on tools that must be run manually.
I also don't love the idea of seeing "Serious" in a tool and ignoring it.
So perhaps we should restore the original Bootstrap 5 button which, from what I understand, doesn't have a background gradient.

I totally agree! I just let the gradient because it was already in the JSF frontend. I can set the variable to false

@MellyGray I'm ready to merge but there is a merge conflict that needs to be resolved.

@kcondon sorry! I'll try to solve the conflicts next time before moving to QA. Did you solve the conflicts? I can't see them anymore


Error when tuning number of hidden layers

Hi!
I faced an error trying when adding hidden_layers to a list of parameters. To replicate it, I followed Breast Cancer study, just had to change "shape" to "shapes" in the parameter list.
def breast_cancer_model(x_train, y_train, x_val, y_val, params):
    model = Sequential()
    model.add(Dense(10, input_dim=x_train.shape[1],
                    activation=params['activation'],
                    kernel_initializer='normal'))

    model.add(Dropout(params['dropout']))

    hidden_layers(model, params, 1)

    model.add(Dense(1, activation=params['last_activation'],
                    kernel_initializer='normal'))

    model.compile(loss=params['losses'],
                  optimizer=params['optimizer'](lr=lr_normalizer(params['lr'],params['optimizer'])),
                  metrics=['acc', fmeasure])

    history = model.fit(x_train, y_train,
                        validation_data=[x_val, y_val],
                        batch_size=params['batch_size'],
                        epochs=params['epochs'],
                        verbose=0)

    return history, model

p = {'lr': (0.5, 5, 10),
     'first_neuron':[4, 8, 16, 32, 64],
     'hidden_layers':[0, 1, 2],
     'batch_size': (2, 30, 10),
     'epochs': [150],
     'dropout': (0, 0.5, 5),
     'weight_regulizer':[None],
     'emb_output_dims': [None],
     'shapes':['brick','long_funnel'],
     'optimizer': [Adam, Nadam],
     'losses': [ binary_crossentropy],
     'activation':[relu, elu],
     'last_activation': [None]}

t = ta.Scan(x=x,
            y=y,
            model=breast_cancer_model,
            params=p,
            dataset_name='breast_cancer',
            experiment_no='1')

This returns an error:
IndexError: list index out of range
---------------------------------------------------------------------------
IndexError                                Traceback (most recent call last)
<ipython-input-16-109ab999a0ed> in <module>
      4             params=p,
      5             dataset_name='breast_cancer',
----> 6             experiment_no='1')

~/.local/lib/python3.5/site-packages/talos/scan/Scan.py in __init__(self, x, y, params, model, dataset_name, experiment_no, x_val, y_val, val_split, shuffle, round_limit, grid_downsample, random_method, seed, search_method, reduction_method, reduction_interval, reduction_window, reduction_threshold, reduction_metric, reduce_loss, last_epoch_value, clear_tf_session, disable_progress_bar, print_params, debug)
    168         # input parameters section ends
    169
--> 170         self._null = self.runtime()
    171
    172     def runtime(self):

~/.local/lib/python3.5/site-packages/talos/scan/Scan.py in runtime(self)
    173
    174         self = scan_prepare(self)
--> 175         self = scan_run(self)

~/.local/lib/python3.5/site-packages/talos/scan/scan_run.py in scan_run(self)
     16                      disable=self.disable_progress_bar)
     17     while len(self.param_log) != 0:
---> 18         self = scan_round(self)
     19         self.pbar.update(1)
     20     self.pbar.close()

~/.local/lib/python3.5/site-packages/talos/scan/scan_round.py in scan_round(self)
     30     # fit the model
     31     try:
---> 32         _hr_out, self.keras_model = ingest_model(self)
     33     except TypeError as err:
     34         if err.args[0] == "unsupported operand type(s) for +: 'int' and 'numpy.str_'":

~/.local/lib/python3.5/site-packages/talos/model/ingest_model.py in ingest_model(self)
      8                       self.x_val,
      9                       self.y_val,
---> 10                       self.round_params)

<ipython-input-7-7bad7210c65c> in breast_cancer_model(x_train, y_train, x_val, y_val, params)
     10
     11     # if we want to also test for number of layers and shapes, that's possible
---> 12     hidden_layers(model, params, 1)
     13
     14     # then we finish again with completely standard Keras way

~/.local/lib/python3.5/site-packages/talos/model/layers.py in hidden_layers(model, params, last_neuron)
     68     for i in range(params['hidden_layers']):
     69
---> 70         model.add(Dense(layer_neurons[i],
     71                         activation=params['activation'],
     72                         use_bias=use_bias,
IndexError: list index out of range

Thank you!

Hi,
I have also noticed the same inconsistency, but looking into the network_shape.py clarified that there are only 4 options: 'brick', 'funnel', 'triangle' and a float number (smaller than 1).
Passing a string or value that is not defined in that list, will return an empty list, and in layers.py, then  layer_neurons = [] which as you can see causes problem:
[...]
    layer_neurons = network_shape(params, last_neuron)

    for i in range(params['hidden_layers']):

        model.add(Dense(layer_neurons[i],
[...]

So if you remove 'long_funnel' and add 'funnel' your code should work. But I still don't know what does shape argument in the dictionary represent, I am using talos.__version__ = '0.4.9'. However, in 0.6.0 there are changes in the arguments' names which would probably cause a lot of problems when one wants to use the newer version.

Thanks @Peon26, that's right. The documentation is not up-to-date, and will be updated to match v.0.6.0 once that makes it's way to pypi.

However, in 0.6.0 there are changes in the arguments' names which would probably cause a lot of problems when one wants to use the newer version.

While there are notable changes and improvements, the Scan argument changes are going to be very straightforward.
Closing here.


Add method to rename nets in EDB

Description of the feature
the EDB nets have a name property, suggest allowing user to change net name
Steps for implementing the feature
No response
Useful links and references
No response

@pyAnsysUser you can do it already
edb = Edb()
edb.nets["GND"].name = "GND2"

Hello,
I found I was trying to change the capitalization on a net that already existed. This, I believe, is not supported even in the GUI version of SIwave. Changing to an intermediate name then renaming for capitalization worked.


StringLiterals within StringTemplates are truncated

There seems to be disagreement in the code as to whether `` and " should be included as text in StringLiterals that are part of StringTemplates, with the result being that type-checker -> AST transformations result in missing leading and trailing characters.
 But the interim RH step is not the same as above.
    value ast1 = StringTemplate {
        literals = [
            StringLiteral("abcd"),
            StringLiteral("efgh")
        ];
        expressions = [
            SumOperation {
                leftSummand = IntegerLiteral("1");
                rightSummand = IntegerLiteral("1");
            }
        ];
    };

    value rh = RedHatTransformer(SimpleTokenFactory())
                .transformStringTemplate(ast1);
    print(rh);

    value ast2 = stringTemplateToCeylon(rh);
    print(ast2);

result:
+  [StringTemplate] (0:0-0:6)
|  + "abcd`` [StringLiteral] (0:0-0:6)
|  + ``efgh" [StringLiteral] (0:0-0:6)
|  +  [Expression] (0:0-0:0)
|  |  + + [SumOp] (0:0-0:0)
|  |  |  + 1 [NaturalLiteral] (0:0-0:0)
|  |  |  + 1 [NaturalLiteral] (0:0-0:0)

StringTemplate {
    literals = [
        StringLiteral("""abcd"""),
        StringLiteral("""efgh""")
    ];
    expressions = [
        SumOperation {
            leftSummand = IntegerLiteral("1");
            rightSummand = IntegerLiteral("1");
        }
    ];
}

Scenario 3: compileStringTemplate
Whatever compileStringTemplate does, works.
    value ast3 = compileStringTemplate(""""abcd``1+1``efgh"""");
    print(ast3);

result:
StringTemplate {
    literals = [
        StringLiteral("""abcd"""),
        StringLiteral("""efgh""")
    ];
    expressions = [
        SumOperation {
            leftSummand = IntegerLiteral("1");
            rightSummand = IntegerLiteral("1");
        }
    ];
}

According to the documentation of StringLiteral

"The text of the string literal (without quotes)."
shared actual String text;

the backticks should not be included in the literal text.
It’s possible that the RedHat → ceylon.ast conversion assumes that all string literals have either 1 (regular) or 3 (verbatim) quotes, or something like that.

The typechecker strips these chars at https://github.com/ceylon/ceylon-spec/blob/master/src/com/redhat/ceylon/compiler/typechecker/analyzer/LiteralVisitor.java#L95-L106

Ah, that would be why compileStringTemplate works…
So in toCeylon we have to detect whether the quotes are still there or not, since we could be running with or without LiteralVisitor.
And what should RedHatTransformer produce? Does this need to be configurable (i. e. a class parameter)? Probably…

Should be fixed now. RedHatTransformer got an extra parameter.

Awesome, thanks!
BTW, did you notice the other fixups LiteralVisitor.java is doing? IIRC, there are about 4 or 5 places it mutates nodes.

Yeah, looks like I’ll have to do more stuff. LiteralVisitor

strips quotes
strips leading indentation
interprets escape sequences

legacy (\n)
unicode hex
unicode name
emoji

adds DocLink nodes
interprets integer and float literals

I wonder if it’s a good idea to reproduce all that in RedHatTransformer. We should probably be able to handle it in toCeylon() (check whether quotes are present etc.), but for RedHatTransformer it might be better to say that we always produce an AST that has to go through LiteralVisitor. WDYT?

Is it always (and will it always be) possible to unambiguously determine if processing is required? This sounds suspicious, but I haven't looked at the details.
Is the "normal" use case of RedHatTransformer to feed the result into a pipeline that includes LiteralVisitor? I guess so, since the formatter works fine with the "raw" RedHat AST today, as I understand it.

https://github.com/ceylon/ceylon-spec/blob/master/src/com/redhat/ceylon/compiler/typechecker/analyzer/LiteralVisitor.java#L47-L52
CompilationUnit itself apparently has a literalsProcessed attribute that you can check to see whether LiteralVisitor already passed over it.
For the individual nodes, we don’t have that, but we should be able to check something like this:
that.text === that.mainToken.text

When LiteralVisitor sets the text, it only sets a field of the Node, without updating the token. However, I’m not sure if it’s possible to trick the Ceylon compiler into comparing the identity of the underlying java.lang.String objects… I’ll have to test that.
I’d say the normal use case of RedHatTransformer is to use the resulting AST like an AST that came fresh out of CeylonParser. If you want to do full compilation, feed it into the full pipeline, including LiteralVisitor. The formatter just takes the parser’s node and doesn’t do anything else with it, so that’s why RedHatTransformer’s AST works there.

I see. That all makes good sense to me. So I agree with your approach:

Autodetect for RedHat → ceylon.ast
Always produce unprocessed nodes for ceylon.ast → RedHat

I can't imagine a scenario where a user would actually see this ugliness:
|  + "abcd`` [StringLiteral] (0:0-0:6)

since they should be using the ceylon.ast visitors, etc.

We should probably be able to handle it in toCeylon() (check whether quotes are present etc.)

BTW, this is incorrect. Since LiteralVisitor also interpolates escape sequences, the String literal "\"Hi\"" has the text "Hi" after going through LiteralVisitor, which we could interpret as Hi. We have to compare the literal’s and token’s text.

Oh, and it seems we can’t compare the identity of the texts, since CommonToken doesn’t always store its text either, but instead seems to reinstantiate it from the underlying input. Equality test will have to do.

Question: If we detect the literal was visited by LiteralVisitor… which text should we put in the ceylon.ast node? The original text from the token, or the text from the node (with interpreted escape sequences, exponents, etc)? I’m leaning towards the former, but perhaps the latter is more useful? WDYT @jvasileff?

I think it's important to always present ceylon.ast nodes with the same amount of processing, regardless of their history. I think it's ugly (but understandable) that the type checker leaks an intermediate form of its tree.
My preference would be to have the post-LiteralVisitor form be the standard, but is that consistent with other ceylon.ast goals? Can processing always be reversed to faithfully reproduce the original content, if that's important? Surely it can be done for the original string template issue, but I haven't really looked at the other conversions.

My preference would be to have the post-LiteralVisitor form be the standard

Impossible, pure Ceylon doesn’t give me the information to decode "\{ELEPHANT}". The character names aren’t available in JS.

Can processing always be reversed to faithfully reproduce the original content, if that's important?

I don’t think so, how would you distinguish between "a" and "\{LATIN SMALL LETTER A}"?

Ok, yeah, I guess I'd go with the raw form except when when processing is obviously better (and reversible, if important). Consumers of ceylon.ast shouldn't write code that is dependent on a particular processing pipeline that can't be enforced by the type system. And the update feature allows explicit use of type checker output.

I just recently heard a podcast where someone was explaining how new Roslyn compiler ast used some extra data on nodes (I think they called those Trivia) for inserting and retaining information like comments and formatting related details about an AST node...

@luolong I dunno, I don't really see how that could be non-fragile, since it's unclear which node a comment "belongs" to. Comments aren't annotations.

Its by convention.
we all know that line comments usually go before the block of text they are meant to "decorate"
Same would work for white space before and after some code. And if the distinction between triple quotes and plain quotes will be erased in AST, the "Trivia" node seems to be just the right type trivia to be attached to the string literal AST node.

The point is this is ambiguous. Which node do they decorate? The expression? The statement? The nested expression?


python312Packages.diffusers: 0.29.0 -> 0.29.2

Diff: https://github.com/huggingface/diffusers/compare/refs/tags/v0.29.0...v0.29.2
Changelog: https://github.com/huggingface/diffusers/releases/tag/refs/tags/v0.29.2
Description of changes

Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[x] sandbox = true

[x] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

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

Result of nixpkgs-review pr 325232 at ed318ce7 run on aarch64-darwin 1

1 package marked as broken and skipped:

python311Packages.private-gpt

8 packages built successfully:

python311Packages.diffusers
python311Packages.gradio
python311Packages.gradio-client
python311Packages.gradio-pdf
python312Packages.diffusers
python312Packages.gradio
python312Packages.gradio-client
python312Packages.gradio-pdf


feat: getResourceType() uses initiatorType when file extension missing

This is a follow up from an issue spotted in #450 and #448. See https://github.com/aws-observability/aws-rum-web/pull/450#discussion_r1330455383
The ResourcePlugin mislabels fileType. Currently, fileType maps to buckets of file extensions from PerformanceResourceTiming.name (e.g. ".jpg" and ".png" map to "image"). However, file extensions cannot be trusted to exist, such as during redirects. When extensions are missing, events are mislabelled as "other".
I have considered two solutions:

Use initiatorType to infer fileType when file extension is missing.
Remove the idea of "fileType" altogether and only use initiatorType.

My recommendation is (1), which this PR implements. This is the least obtrusive method and we can always go to (2) later. If we were implementing this from scratch, I would instead recommend (2) because fileType is NOT a W3C schema found in the PerformanceResourceTiming schema.
To help me review, please also read initiatorType documentation to see if I missed any mappings from initiatorType -> fileType.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

My recommendation is (1), which this PR implements... If we were implementing this from scratch, I would instead recommend (2) because fileType is NOT a W3C schema found in the PerformanceResourceTiming schema.

I agree -- love this analysis. I think we should consider this for the next major version.