Blender 4.1 / BoxCutter compatibility

Hey Damjan,
Today I've finally installed the latest Blender 4.1.1. There are some compatibility issues with BoxCutter.
https://github.com/eXzacT/RePrimitive/assets/84742853/7100afea-e345-4c9c-88f8-d3de24c63a9c
And also get errors sometimes (50/50) if a mesh has a loop cut:
https://github.com/eXzacT/RePrimitive/assets/84742853/53a49373-4fd6-4a06-a1f6-6184d35d7d89
Take a look please

Yeah as I said, loop cuts are no longer supported when the addon needs to find out which shape it is, I would have to think of a different way, I don't wanna say it's impossible but it's really hard.
Can you further explain what's wrong with 4.1, it creates a new object?

Yeah, it creates a new object without modifiers. But the old one stays as well:

are you sure it's connected to boxcutter or it doesn't work in general

The workaround you can use for now is directly use the reprimitive_circle/cone/cylinder etc because you bypass the find_object_type

The same

are you sure it's connected to boxcutter or it doesn't work in general
It looks like there are no problems if I add the same modifiers manually. Only if I add them via BC
Can this be the reason?

Attaching a blend. file. You can check yourself:
BC-4.1bug.zip

Actually I'm on 4.0 and it happens to me too, so it's not because of the version

a collection problem again

It happens with one collection only

Should be fine now, can you send me the blend where you had the issue with loop cuts?

I haven't saved it unfortunately, and can't reproduce it now...

Ok, I could reproduce it:
loop_bug.zip
It also happens in B4.0. So it isn't 4.1 related

I could save myself a huge headache if instead of using reprimitive on blender default objects I made it so people have to add primitive shapes through the addon, and those objects would have all the data saved as custom properties, there would be no need for any calculations anywhere, loop cuts would work out of the box and performance would be better but I think people wouldn't like having to use those custom primitives
The other way to do it would be run the calculations only the first time you run them on a primitive, store all the results as custom properties, then if you added loop cuts those properties wouldn't change and I could reapply the loop cuts after changing the object
The last way is find a better way to calculate which object type something is which I don't think I'm smart enough for

What I'm doing right now is so ugly but it works if there's no loop cuts

As I said in another topic - you might delegate to a user to choose which object type to modify. This might be a huge time/headache saver for you in terms of coding I guess :)

If it was like that from the beginning people would accept it but right now it's a downgrade if they have to say which object it is

I could just ignore loop cuts because after all it is destructive workflow
core.zip
You can just replace the core.py with this it should fix the collections and loop cut for now, it won't work if you applied the rotation though and it won't reapply the loop cut
I have to do big refactors again so next version will probably come out at the end of the week

Oh I'm sorry, I need to send you the other one too
operators.zip

The same unfortunately:
https://github.com/eXzacT/RePrimitive/assets/84742853/03ce8e00-ff8c-4413-8c8d-f8c7925ae388

It's not a collection issue then, that was a separate thing, could you send me that blend file too? Perhaps I need to have boxcutter in order to test it

Yep, as I said :)
Here it is:
BC-4.1bug01.zip

did u copy paste the object and try on 4.0?

I opened the file in 4.0 - it works without any problem

Okay I'm downloading 4.1 to check

core.zip
Can you try it now please, your blend file worked fine, there's a slight bug with naming but it was there before the object will shift back and forth between some names.
The problem was shading as you said they changed it in 4.1, I'm not sure if I can get a difference between shade smooth and shade smooth by angle anymore, so I just set it to be shade smooth by angle as I don't think anyone uses the previous one

At first glance it looks like you fixed it! 👍
But let me test it more thoroughly, including this new shading system

I'm cooking really big refactors, the addon should be lightning fast next release, also figured out how I'll reapply loop cuts :D

RePrimitive.zip
Can you give it a shot? There's a known bug with scale, if you change the scale and call the reprimitive it will calculate the location wrong but I'll fix it, other than that everything should work fine except I didn't add readding loop cuts yet
Also maybe there will be some clashes with other addons but I'm not sure, everything works fine on my end

Sure! If you need any testings just let me know - it's the least I can do to help you with the addon :)
Downloading it atm

it needs to be on a newly added object, doesn't work if the primitive is already there

Sure! If you need any testings just let me know - it's the least I can do to help you with the addon :) Downloading it atm

I appreciate it :)

+: tweaking works fine with standard primitives
Issues I've found while using it with BC:
⦁	loss of an object for a boolean modifier
⦁	scale/center issue
⦁	conversion doesn't work (via my pie-menu)
⦁	presets half-broken
⦁	cone: 1. I run RePrimitive and it did nothing;  2. But then it started to tweak it as sphere
⦁	no redo menu (left-bottom corner)
https://github.com/eXzacT/RePrimitive/assets/84742853/df4daa08-1eab-4e87-b817-0e4c5750312d

That's odd, were all these primitives added post installing the new version?

The no redu menu is intentional as I am using blender default popup window, that one doesn't show up in the bottom left after you're done, what I had before was a hack to get both popup and bottom left but it's not supposed to be used in that way and it makes the code a lot more complicated
So I can choose either have it in bottom left always or have it as a popup but not both

That's odd, were all these primitives added post installing the new version?

Yes. Hmmm.... but why should that matter? In case we opened an old file.

Because to get what type of an object it is I am hooking into object creation and writing data to it, so if an object was there before the new version is installed it doesn't have that data written to it

That's the downside of this approach but it's faster and simpler and will work for any future projects

The no redu menu is intentional

The previous behavior was much better - we can choose either we want to use pop-up menu under the cursor, or that in left-bottom(as standard for all the tools in Blended).

It's not the standard behaviour, when you add a new object you only get the menu in the bottom left and not a popup

If there's some other operator that has the same behavior I was using before I can take a look at how they did it

Could you please send me the blend file you used in the video?

It's not the standard behaviour, when you add a new object you only get the menu in the bottom left and not a popup

Yep, you're right. I'm not insist. This isn't top priority thing.

Trust me if I could have both with code being nice and clean I would but what I was doing was so weird and shouldn't be done, I wish it was like that by default in blender

Sure:
RePrimTest_02.zip

Oh I think I know why it says it's a sphere, did you spawn it as a sphere and then changed it to a cone by calling the operator manually?

Not sure, manually or not.
What I did:

Created BC "rig". Tweaking the cone doesn't work
Then I added a couple standard primitives and it started recognize it as sphere.

I'm not sure what a BC rig is but I'm guessing it's their custom objects and they don't use the usual blender
bpy.ops.mesh.primitive_*_add

"BC rig" - no, nothing fancy, it's just standard cylinder + a couple of cuts.

could you please add the bc rig, open the scripting tab and then check bottom left or idk how you set it up

I need to know what operator they use for that

Because to get what type of an object it is I am hooking into object creation and writing data to it, so if an object was there before the new version is installed it doesn't have that data written to it

That's the downside of this approach but it's faster and simpler and will work for any future projects

Damjan, I'm sorry if it could sound like critique, but this approach is problematic. It's a common thing opening an old file/preset/kitbash or other user asset. And in this case we get a broken addon.
And in general,  this isn't a good thing to add unnecessary data into a file. This can cause crashes because of conflicts with other addon.

A lot of addons use the same approach, writing data to objects including boxcutter, so I don't see why that would be an issue

As I said, the main reason - the addon couldn't handle old files/presets/kitbash parts

could you please add the bc rig

Here it is:
https://github.com/eXzacT/RePrimitive/assets/84742853/03dd6d27-417b-4a4f-bb44-af58f82ce7ab

I have a couple of thoughts regarding functionality of RePrimitive. I'll try to formulate them tomorrow (now my head is no longer clear, falling asleep)

could you please add the bc rig

Here it is:
RePrimitive_test3.0_2.mp4

It seems like they are not even using primitives for this, I guess there's no way for me to hook into that kind of object creation but I can't tell since I don't have the addon

I have a couple of thoughts regarding functionality of RePrimitive. I'll try to formulate them tomorrow (now my head is no longer clear, falling asleep)

Okay have a good night :)

I've fixed the presets and scale issues, however the boolean loss in the blend file you sent me doesn't work because the objects you've used as cutter are not parented to the object they're cutting, weren't they always parented before? Or did you just forget to add it as a parent this time, because the previous version shouldn't work if the cutters are not parented either

My current pie-menu:
https://github.com/eXzacT/RePrimitive/assets/84742853/dce55f68-8e03-4f6c-bd04-1bf233cc37fa

New day, new ideas
I've already thought about starting this conversation several times, but I stopped myself - who am I to give an advice to the creator of the add-on on how to develop his own add-on?! You may have your own plans and vision for the future of the RePrimitive, and your own motivation to develop certain aspects of the add-on.
But sometimes an outside perspective can be useful and allows you to look at things from a different angle.
So, let me tell you my opinion. Moreover, feedback from a user with modeling experience can be useful.
Let me start with the fact that the previous version of the addon was very solid! Finished, sharpened tool! It was possible to use both the default functionality and additional through the pie-menu system.
Regarding the pie-menu. It allows you to do 2 things: convert one form to another and a system of quick presets. Conversion is a unique feature that I have not seen in other addons. Allows you to quickly change shape where you simply wouldn’t have done it before. Not because it's impossible, it's just that it might took a longer time and wasn't worth the effort. The preset system is also very important. The easier and with fewer clicks you can perform an operation, the faster you will complete the work, you will be more productive and the less tired you will be by clicking on the keyboard. Imagine a user who is modeling 8-12 hours the whole day.
Thus, I would like to highlight what is important/needed for a user:
1. changing number of vertices. How the script will do this - automatically determining the form, or the user himself will specify it - is secondary. The main point is that this should be done quickly. More on this below

2. convert one shape into another

3. get easy access to different settings/presets

4. being able to change diameter/height

For me personally, the automatic shape detection function is way-way secondary. Let's say, maintaining the position of the center, scaling from the center, saving loops - these are much more priority things. You might probably be offended by me here, because... I said "blasphemous things" for you as a developer - this feature required a lot of your time and effort. But, from the point of view of a user who just uses the tool - auto detection is not bad, but not a major function of the addon. As I understand, this feature really constrains you - it makes maintaining the addon and developing new features much more difficult or even impossible. In the latest update, this was the reason for the introduction of a very negative feature - the addon does not work at all (and is not planned) with geometry created outside this version of the addon.....
From our conversation earlier:

As I said in another topic - you might delegate to a user to choose which object type to modify. This might be a huge time/headache saver for you in terms of coding I guess :)

If it was like that from the beginning people would accept it but right now it's a downgrade if they have to say which object it is

If you offer a downgrade, then yes, it may not be fair at first glance. But this is not such an important feature. And if you offer additional functionality, people will only be grateful! This will result in mutual win-win.
So what I suggest is:
1. refuse of auto-detection feature - this will greatly simplify your tasks without affecting a user much

2. add the pie-menu (you can use mine as a prototype)

3. add shape conversion

4. add the system of presets

I can also offer a few ideas for the future development:
1. group use, for multiple objects at once (changing number of vertices of all 6 wheels/cutters/bolts etc.)

2. working with linked objects (Alt+D)

3. working in edit mode with some parts of the mesh inside the object. Brief algorithm: select a cylinder in edit mode -> cut selection into a new object ->run  RePrimitive -> merge the new object with the old one

These are my thoughts and feedback. I do hope it might provide you a couple of ideas :) But anyway, the final deсision is up to you! Don't listen to anyone and do as you think is the best! :D

I don't use blender at all, I'm first and foremost a developer and a gamer, I was only learning it because I wanted to make everything myself for the game I was developing for a while, and I was annoyed that you lose all the data once you click away/ do something else, so I got sidetracked and made the addon. I was aware that it could help people save seconds each time, and it might not be much but it ends up, especially if that's your main job.
Art is not my forte, so feedback from people with modeling experience is definitely valuable.
If the only way to create primitives was through the usual add primitive-> then this version would absolutely be fine, I think you're wrong about writing data to object is a bad thing, it's a couple megabytes of extra data, if that even. And if every addon was developed properly and the names for the properties don't clash then it should cause no issues.
Some of the things you said weren't working I've fixed in the meantime, the only one that remains(and is a big problem which will probably end up being impossible to fix with current approach) is that objects made by boxcutter do not have their data written to them.
They're most likely not using those standard blender add primitive operators.
There's a small chance they are, but when you use an operator inside an operator I believe the handler isn't aware of the nested one.
I have to look into it more and see if it's possible to continue with the new approach because maintaining the current codebase is a lot easier and in the end if both versions work but one is easier/better of course I'll go for that one.
If it ends up being impossible I can stick to both approaches, once to generate the data and every other call to that same object would continue to use known data, so it would be a bit slower for the first call as it was before but it would be faster for every other.
I have to think about the pie menu, spending a lot of time on a feature that is potentially only liked by one user could be a waste of time, wouldn't people be sure which object they want the first time they add it, they're just not sure about some of its data yet.
But it might be the best solution if finding out which object something is can't be done. I don't know why going from 1 type of object to another doesn't give you an error, the addon wasn't made for that and I'm sure eventually you'll run into them,
Multiple objects at once sounds like a crash waiting to happen with the amount of calculations that need to be done, but I could be wrong, I don't understand what you mean by the other two ideas.
I'll push those latest changes that fixed 4.1 compatibility for everyone but will be working on a big refactor again so it might take a couple weeks for the next big release but if you encounter some small bugs I can fix them :)

I don't use blender at all, I'm first and foremost a developer and a gamer

That's the common thing among developers unfortunately😞  Often people don't use their own products much and don't fully understand the needs of the community. This may prevent them to see a full potential of their creations.

If the only way to create primitives was through the usual add primitive

There are multiple ways to create primitives besides standard add primitive - several tools, curves and other addons besides BC(~3-4). So I wouldn't count on it at all.

I think you're wrong about writing data to object is a bad thing, it's a couple megabytes of extra data, if that even

I didn't say a word about it in my last post :) Because of 2 reasons. First, I wanted to accentuate your attention on other aspects. And second, I can't argue about it because I don't have enough knowledge in programming. You know your field better than me ;)
But I do know that the more complex some addon is the more problems it could get in the future with each new Blender version and it's constantly changing API.  Plus potential instability and compatibility issues. As you said: "Also maybe there will be some clashes with other addons but I'm not sure"

I have to think about the pie menu, spending a lot of time on a feature that is potentially only liked by one user could be a waste of time,

Regarding one user. Please don't mislead that I propose it for myself. I've already created the fully working menu with presets (thanks to your addon!), and I don't need it for myself.  But similar thing could be very useful for other people! As well for your addon and its spread.

wouldn't people be sure which object they want the first time they add it, they're just not sure about some of its data yet

I would call it design evaluation and experimentation. You may start with straight holes, switch to cone dents and end up with square cuts. I think I've posted enough demos in another topic :)
To be honest, I don't understand why you don't want to expand the functionality of RePrimitive... I'm not trying to convince you for my own benefit or something. As I said above I have all the functionality I need and  I'm good with the current status of the addon. I could sit calmly without a word. But I'm grateful to you for it and would like to do some good in return :)
Ok, I'll try for the last time, and after that I'll shut up regarding these pie-menues :))
There is a comparison of these 2 methods, where I tried to add plusses and minuses I could think of for each approach:

I don't understand what you mean by the other two ideas.

working with linked objects (Alt+D)

https://github.com/eXzacT/RePrimitive/assets/84742853/0658c565-af93-4022-bdd4-72de98805fec

working in edit mode with some parts of the mesh inside the object. Brief algorithm: select a cylinder in edit mode -> cut selection into a new object ->run  RePrimitive -> merge the new object with the old one:

https://github.com/eXzacT/RePrimitive/assets/84742853/6eac6bc0-b4e2-4963-9fe0-b2dbcf275520

I'll push those latest changes that fixed 4.1 compatibility for everyone

It looks like there is an issue with radial arrays:
https://github.com/eXzacT/RePrimitive/assets/84742853/fa61c3b6-6697-417f-a9e1-f14176298e5b

Is this the behavior you want with linked objects? Or do you want all of them to keep their rotations?
I've fixed the issue with radial arrays(nothing to do with them, it's because of the rotation) and can send the latest version if you need that fix asap or you can get it in the next release.
I can do the same thing with multiple objects at the same time even if they're not linked but I'm not sure what kind of behavior you'd expect from it, what if the selected objects are cone, cylinder and torus, would you want all of them to get transformed into the one that was selected the last or do you expect to get 3 different popups for each object, I don't think that's possible

Is this the behavior you want with linked objects? Or do you want all of them to keep their rotations?

Keeling their rotation is essential, as well as scale.

can send the latest version if you need that fix asap

No hurry, thanks. I'll wait

I can do the same thing with multiple objects at the same time even if they're not linked

I think this could be handy! One pop-up and transformation into the same shape of all selections would be the best.

I don't think I can make it prettier with default blender behavior, I can't make it the same way you did with the pie addon

Is this the behavior you want with linked objects? Or do you want all of them to keep their rotations?

Keeling their rotation is essential, as well as scale.

can send the latest version if you need that fix asap

No hurry, thanks. I'll wait

I can do the same thing with multiple objects at the same time even if they're not linked

I think this could be handy! One pop-up and transformation into the same shape of all selections would be the best.

Do you mean the same thing I said, for example selecting a torus, cylinder and cone(cone was selected last)
if you ran the operator all 3 would become cones

Wow, you've made it! Cool menu!
People will love it! :)

selecting a torus, cylinder and cone(cone was selected last) if you ran the operator all 3 would become cones

Yes, the same thing. And besides selecting the last, it would be handy if it could work with the menu above also

Yeah I basically rewrote everything past 2 weeks :D
Yep it would work with the menu, but by default the last one would be highlighted.
So if I understood you correctly,
if you had A cone, then 2 more cones because they were linked from that one and then 2 more objects which aren't linked,
you selected all of them with one of the cones being last, every selected object would keep its transforms but would become cones, now you would have 5 cones with 3 of them being linked and 2 being standalone? Does this cover everything for linked objects and working with multiple selection?
I'm guessing with other non linked/selected objects you would want them to keep their modifiers etc same as usual,
but what about linked objects? I've noticed if you link them at some point in time they are the exact same but then you can continue adding modifiers to one of them and it doesn't move to all of them, is that correct? So I couldn't just replace the one selected last and spawn linked objects from it at those positions with their rotations and locations because maybe some of them had different modifiers?

Is there a default selection in the pie addon you have? It would be really handy as the one I made with Blender doesn't support it I think, my idea was if you just press and release the keybind for pie menu it would run the default option, and the default option would depend on the type of object it is, if you pressed it and held it then you could move the mouse around and pick which one you want(including the default one), but since default options aren't supported the best thing I can do is highlight the default one, the confusing part is if the user releases the button I think they'd expect the highlighted one would be picked but that's not the case, here I'll record a gif so you can see what I mean

My point is, I can definitely see it being annoying having to open the pie menu every time just to select the default one, the workaround would be having 2 different keybinds, 1 for auto(the previous behavior) and 1 for pie

Also the annoying part with the pie menus is the operator shows up where the mouse was when you picked an option, so in the gif the cone got completely covered by the operator

How do you insert a loop cut for a cone though

if you had A cone, then 2 more cones because they were linked from that one and then 2 more objects which aren't linked,
you selected all of them with one of the cones being last, every selected object would keep its transforms but would become cones, now you would have 5 cones with 3 of them being linked and 2 being standalone? Does this cover everything for linked objects and working with multiple selection?

The thing is that with linked objects there is no need to select all the objects. You just need to select one of them, change it, and all the linked ones will be rebuilt. This is the core idea.
I might be not 100% correct, but as I understand it: Blender get a mesh(Cube00) and link it to objects "Folder1"," Folder2" etc.  And we can change this mesh "Cube00" to another, lets say "Sphere00":
https://github.com/eXzacT/RePrimitive/assets/84742853/a8188c99-b8c3-423e-b3af-ffff16d307d3

but what about linked objects? I've noticed if you link them at some point in time they are the exact same but then you can continue adding modifiers to one of them and it doesn't move to all of them, is that correct?

Yes, you're right. It links a mesh to objects. And this objects can have different modifiers.
In relation to RePrimitive. Ideally, we should select only one linked object, change/transform it. And after that all other linked objects should be rebuilt accordingly.
Regarding mixing selection of linked and standalone meshes. I don't think it would be a common case, but potentially it's
possible. So yeah, apply last selected primitive, or a primitive from the menu.

Is there a default selection in the pie addon you have?

No, there isn't. All pie-menus in different software I know don't work this way. And, to be honest, I don't really like this idea because a pie-menu is about quick access and muscle memory. I would advice to follow default Blender behavior. Let's take the Shading menu(hotkey Z). If there is Click(Down+Up) event, then it opens and holds the menu - a user should either click to a menu-item or escape. If there is Press (Down+hold) event, then it will run a menu item under the cursor without additional LMB click.

How do you insert a loop cut for a cone though

I use 2 methods:

Knife tool
Bevel the top

https://github.com/eXzacT/RePrimitive/assets/84742853/4b726d8e-9da8-4cd7-a3b9-3e4e415b2c1e

I agree with the standard pie menu behavior but the problem is you can't do fast operations with muscle memory because of different presets, if it was just the 6 options for each object without any vertices then you could quickly select all 6 directions
Okay then the only way to do it would be to run the calculations on each object, I'll see what I can do and how fast it performs
Going to be a bit trickier for cones then

you can't do fast operations with muscle memory because of different presets

You're right, but you can mitigate it by moving the presets outside the quick access area.
I would recommend to arrange the most important menu items vertically and horizontally.
As an example in these two menus

I select 2-8, 6-4 items even without thinking, just subconsciously ("If there is Press (Down+hold) event, then it will run a menu item under the cursor without additional LMB click.")
But if I need some other item I open-up the menu and search through it ("If there is Click(Down+Up) event, then it opens and holds the menu - a user should either click to a menu-item or escape")
Both these menus aren't  from PME, the 1st one is from keKit addon, the 2nd one is from MACHIN3tools.

if it was just the 6 options for each object

By the way, there are 8 sections you can use. I've been trying several arrangements with the menu items, and the most comfortable for me is the menu several posts above. So If it's possible I would recommend to place Cone and Cylinder vertically, Circle and Cube horizontally. Cube is 4-sided cylinder:

There is a menu:

If it can help you to dig into the menu stuff I can attach a file with this menu. It's from MACHIN3tools addon, the addon is v1.4.1 and free. I don't think there is some violations on this regard:
The file:
pies.zip
There are couple of notes from my side like: "# Pie-menu order: 9-15-18-12-11-13-19-17". I tried to I add Matcap item to the menu a year or so ago , with my near zero knowledge of Python.

An another variant:

With this variant you can utilize everything with one hotkey - both the menu and the main RePrimitive command. It would be good to add some free space by adding a row between the presets and the cylinder/cone/circles buttons.

There is a menu:
If it can help you to dig into the menu stuff I can attach a file with this menu. It's from MACHIN3tools addon, the addon is v1.4.1(old version for pre-Blender 4 builds) and free. I don't think there are any violations on this regard. The file: pies.zip There are couple of notes from my side like: "# Pie-menu order: 9-15-18-12-11-13-19-17". I tried to add Matcap item to the menu a year or so ago , with my near zero knowledge of Python.

Interesting, I have to dig into the code, I think this could potentially work and instead of having presets shown in the menu immediately, I'd show them in the big menu like that one, also it wouldn't just be verts but it could be an entire preset, with radius, height, etc, what do you think about that one?

Oh nevermind the entire menu is always drawn, I thought it would be drawn on selection

I've posted this menu for you as an interesting and complex example of coding.
Speaking of usability of this menu.... Well it is not great IMHO. For sure, having a lot of settings in front of you is handy, but it's hard to reach a particular one, especially over and over again.  Such a huge menus isn't about muscle memory.
That's why I had to manually modify it and add Matcap item(2) at the bottom even if there is the same item at the right top area.

An another variant:
With this variant you can utilize everything with one hotkey - both the menu and the main RePrimitive command. Or you can add Cube instead of RePrimitive. It's up to you :) Also, it would be good for usability to add some space as separator between the presets and the cylinder/cone/circles buttons by adding an empty row.

This would kinda solve it except the bottom one, you can still go over the menu accidentaly and use a preset instead, but yeah I think there's no way around it. It feels very limiting what you can do with the default blender pie menu

the empty row would help, you're right

Do you know if people would potentially make cuts like these? Because if cuts are one sided like this then origin to geometry doesn't quite work

Yep, it's quite possible. Lets say we need to mitigate shading issues, and we need to restrict the area around a cut.
Regarding preserving origin. What do you think of read->store->recall the initial origin of an object?

No news for a long time. How are things going?

Sorry, I've been real busy with work since everyone else went for a vacation and I'm the only one left, so I didn't work on addon a lot.
Currently I'm left with replacing multiple selected objects.
Can you confirm the following,
You select 3 objects, the last one you select would also have 2 linked objects which you don't have to select,
then once you called the operator whatever options you choose would happen to all 5 objects, but they would all keep their locations, rotations, modifiers, parents, children, materials etc
It's a lot of work and can potentially be really slow, especially if booleans are involved.
I was thinking about doing all that work once you exit the operator or something, not every time you scroll through verts and other data. This way it would only happen once and not many times per second.

Yeah, "hot" season's coming with all vacations and holidays. With plusses and minuses it brings :))
Regarding selection - everything is correct. It's the best solution that can be. But I don't see anything bad if the addon could work separately for single objects and linked. I hardly can imagine selection all of these objects and convert them at once.

Hello, the gumroad version should work. The problem was Blender changed how autosmoothing works in newer versions. I think I forgot to make a change on github and blender. https://exzact7.gumroad.com/l/reprimitive You can just enter 0 and get it for free there aswell.

Hmmm, yeah the duplicating is fixed. But FixRotation for objects like cubes which worked up until 1.2.1 and did not in 2.0 and 2.0.1, now doesn't make it a default cube, but a cube rotated by 45° because it turns it into a cylinder set to 4 vertices and radius sqrt(2) which you can see when using "RePrimitive" on the object (what did not work at all on cubes earlier). It's a bit confusing :)

Rotating cube was never even planned, I only made the fix rotation because I needed to do it in case it was applied for objects.
And since it was made for primitives which have some settings unlike cube which is always a cube, then the rotation wasn't written for it either. If it worked before it was purely accidental :D
But try going into edit mode, select the top face and then run fix rotation?

Rotating cube was never even planned, I only made the fix rotation because I needed to do it in case it was applied for objects. And since it was made for primitives which have some settings unlike cube which is always a cube, then the rotation wasn't written for it either. If it worked before it was purely accidental :D But try going into edit mode, select the top face and then run fix rotation?

Doing it in Edit Mode gives the same result as in Object Mode...
Well, I understand what you're saying, a cube is always a cube, but with an applied rotation it is a similar hassle to revert it as it is for other objects, find faces where you know how they should be oriented etc.
And let's say with a somehow rotated cube manually scaled to some arbitrary other size than default, then scale and rotation applied afterwards... and now you want to change the edge length to exactly 3 m... not an easy if not impossible task for the average user. Something which your addon would be perfect for if it did with cubes what it does with cylinders.  ;)


Issues with windows installation

I've been battling several issues as I'm trying to make this work.
The below mentioned console output is my latest production, I have make and MinGW installed and recognized on PATH as the respective version commands work
> node src/index.js

autoDownloadModelName tiny.en
options {
  modelName: 'tiny.en',
  autoDownloadModelName: 'tiny.en',
  verbose: false,
  removeWavFileAfterTranscription: false,
  withCuda: false,
  options: {
    outputInCsv: false,
    outputInJson: false,
    outputInJsonFull: true,
    outputInLrc: false,
    outputInSrt: false,
    outputInText: false,
    outputInVtt: false,
    outputInWords: false,
    translateToEnglish: false,
    wordTimestamps: false,
    timestamps_length: 20,
    splitOnWord: true
  }
}
code--- 1
stdout---
stderr--- '.' is not recognized as an internal or external command,
operable program or batch file.

[Nodejs-whisper] Error: '.' is not recognized as an internal or external command,
operable program or batch file.

[Nodejs-whisper] Error: '.' is not recognized as an internal or external command,
operable program or batch file.

[Nodejs-whisper] Error during processing: '.' is not recognized as an internal or external command,
operable program or batch file.

Error: Operation failed: '.' is not recognized as an internal or external command,
operable program or batch file.

@athype Yeah, I can see where these errors might be coming from. This package is not well tested on Windows. I will make this stable for Windows as well; this must be a small fix.

@ChetanXpro I got to this result after going into WSL, going into the whisper.cpp directory within node_modules and running make, prior to that I was getting issues with make just not even running.
I really appreciate the quick response!


"Mutating statement" error

Description
I am trying to create a view in a SQL Server database and I'm getting an error message that states "Mutating statement execution is prohibited in read-only connection".  I did not get this error prior to the recent update.  Is there some way to disable this as it is impacting my work.
DBeaver Version
Community <IP_ADDRESS>408041450
Operating System
Windows 11
Database and driver
SQL Server database
MS SQL Server / SQL Server driver
Steps to reproduce
No response
Additional context
No response

Open properties of your connection and uncheck the option: Read-only connection

This worked, thank you
Jordan Palmer
Business Systems Analyst
2855 Gramercy St.
Houston, TX 77025
Office<PHONE_NUMBER>
Ext.      2199
http://www.houstoneye.com/
#SeeTheDifference
[Logo, company name  Description automatically generated]
[nophi]
From: ask9 @.>
Sent: Tuesday, August 6, 2024 2:20 PM
To: dbeaver/dbeaver @.>
Cc: Jordan Palmer @.>; Author @.>
Subject: Re: [dbeaver/dbeaver] "Mutating statement" error (Issue #35090)
Open properties of your connection and uncheck the option: Read-only connection
default.png (view on web)https://github.com/user-attachments/assets/5303e883-8da5-4823-b302-aacd91acc648

Reply to this email directly, view it on GitHubhttps://github.com/dbeaver/dbeaver/issues/35090#issuecomment-2271981610, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AYRUOJ33RKS77CJAMGPIX7TZQEOXPAVCNFSM6AAAAABMCIJ3W2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDENZRHE4DCNRRGA.
You are receiving this because you authored the thread.Message ID: @.***>


Don't overwrite methods of an external object

Fixes #94
response.raw is an urllib3 Response object. response.close() is a method on a requests Response object. I'm not sure why this was added in the first place, but this should not work.
It's possible that older versions of Requests and urllib3 had a bug around this, but using 2.9.0 and up, this line doesn't do anything useful and could be harmful.

@kbussell seems legit. We had some bugs too when Requests was updated on our project, with document.close() calls, where document is the result of the get_envelope_document method.

And thanks for the PR :)


Nodes are stuck in registering state sometimes

What kind of request is this (question/bug/enhancement/feature request): bug
Steps to reproduce (least amount of steps as possible):

Deploy a cluster - 1 node all roles, 2 worker nodes.
One of the worker node is stuck in Registering state,
Logs of the node stuck in registering:

/home/ubuntu# docker ps
CONTAINER ID        IMAGE                                COMMAND                  CREATED             STATUS                          PORTS               NAMES
047af98602d4        rancher/rke-tools:v0.1.52            "nginx-proxy CP_HOST…"   3 hours ago         Up 3 hours                                          nginx-proxy
2e84ed52f124        rancher/hyperkube:v1.17.2-rancher1   "/opt/rke-tools/entr…"   3 hours ago         Restarting (1) 57 seconds ago                       kubelet
d474548c656d        rancher/hyperkube:v1.17.2-rancher1   "/opt/rke-tools/entr…"   3 hours ago         Restarting (1) 49 seconds ago                       kube-proxy
a7e17ba4ff91        rancher/rancher-agent:master-head    "run.sh --server htt…"   3 hours ago         Up 3 hours                                          friendly_haibt
5a99bac4a83e        rancher/rancher-agent:master-head    "run.sh --server htt…"   3 hours ago         Up 3 hours                                          goofy_engelbart
:/home/ubuntu# docker logs 2e84ed52f124
Error response from daemon: readlink /var/lib/docker/overlay2/l: invalid argument
:/home/ubuntu# docker logs d474548c656d
Error response from daemon: readlink /var/lib/docker/overlay2/l: invalid argument

Expected Result:
The node should not be stuck. Cluster should get provisioned successfully.
Note:

This does not happen always.
Seen it happen often during Automation runs.

Other details that may be helpful:
Environment information

Rancher version (rancher/rancher/rancher/server image tag or shown bottom left in the UI): master-head latest
Installation option (single install/HA): single

Cluster information

Cluster type (Hosted/Infrastructure Provider/Custom/Imported): Custom rke
Kubernetes version (use kubectl version):

1.17

I see this on latest master-head. commit id: 83f9830a9
Cluster spec:

3 etcd, 2 control plane and 2 worker nodes
k8s version - 1.15

One of the worker node is stuck in registering state.


wrong start symbol for parser

krun throws a parsing error for imp++ in lesson_7 without --parser 'kast -s Stmts'.

this, while not a big issue, is becoming annoying. I'll have a look at it soon.

fixed by #2093


Add package.json

Please add package.json for installing with npm (and if you can, publish on npm).

Thank you for contacting. I manually added the file package.json and published it in npm.


[consoleApp] Single Page Application Registration needs to have a proper validation for redirect url to deny incorrect urls

Describe the issue:
As redirect url of a single page application is a mandatory field if a user just input the url and does not adhere to the correct url format still application registration gets succesful.
How to reproduce:
1.Access https://localhost:9443/console
2.Login as super admin
3.Navigate to Develop > Applications > New Application > Single Page Application
4.In the edit view
5. Input a application name
6. Input a Redirect URL which is not upto correct format (http:test)
7. Click on Register
Observation
Application registration gets succesful
Expected Behaviour
Requested url should need to have a proper validation
Environment information
Mssql 2019
uniqueid jdbc primary US
IS 5.11.0 beta3
ubuntu 16.04
Chrome Version 85.0.4183.121

Need to follow the format suggested in https://tools.ietf.org/html/rfc3986#section-4.3
(Note: As these are OAuth apps.. consider the native redirection URLs as well)


f(x): back_up task

Closes: #26
Goal
Back-up producation data and restore to the local environment.
Approach
Use provided Heroku and Postgres utilities.
Notes

Depends on heroku gem.
pg_restore uses default file name latest.dump.

@wraasch gonna merge this since it's so straightforward, but mentioning you FYI.


fix: copying layers on Windows OS (2)

This PR also includes a protection to avoid copying layers when running preview command.
@filrak did you run eslint in your local? @antfu/eslint-config not using semi
gh layer not tested on my local
supersedes #1

Thank you!

I suggest you to use squash instead merge pr, this way only 1 commit on main branch (check commit history)

Good suggestion, thanks! This repo is generally a bit chaotic and not contribution-friendly. It's a side project being part of an attempt to get back to coding after 3 years break.
Now that there is also someone willing to help (which I am very grateful for!) I will play a bit with conventions, pipelines etc.
May I ask if you want to use this lib yourself or you're just contributing for fun? Either way I can grant you admin rights so you can easily make adjustments by yourself if you're interested.


Rancher 2.0 can't import a cluster after previous installation

Versions:

Rancher: 2.0.0-beta12
Docker: 18.04.0-ce-rc2
Kubernetes: 1.9.6

Type/provider of hosts: (VirtualBox/Bare-metal/AWS/GCE/DO)
18.04.0-ce-rc2-mac61
Steps to Reproduce:

Create a k8s cluster (Docker for Mac) and use the the Import Cluster option inside Rancher UI
Kill the Rancher installation and remove the cattle-system namespace from Kubernetes
Recreate the Rancher server and attempt to reconnect it to k8s cluster

Results:
The first installation works, everything gets created and Rancher can see the k8s environment.  After removing and recreating the Rancher server and attempting to reuse the cluster, Rancher hangs in a Pending state forever attempting to connect to the cluster.
Here are the Rancher logs:
E0410 19:30:01.153483       1 generic_controller.go:204] ClusterRoleTemplateBindingController cluster-x5gtq/creator [mgmt-auth-crtb-controller] failed with : couldn't create role cluster-owner: roles.rbac.authorization.k8s.io "cluster-owner" already exists
E0410 19:30:01.184449       1 generic_controller.go:204] ProjectRoleTemplateBindingController project-rzcrc/creator [mgmt-auth-prtb-controller] failed with : couldn't create role project-owner: roles.rbac.authorization.k8s.io "project-owner" already exists
2018/04/10 19:31:58 [INFO] Handling backend connection request.
2018/04/10 19:32:08 [INFO] Handling backend connection request.
2018/04/10 19:32:18 [INFO] Handling backend connection request.

It looks like Rancher doesn't know what to do if you are attempting to reuse an existing cluster.

It would also be handy to have a script or set of steps for gracefully tearing down a Rancher environment in k8s clusters.

+1 for this, still missing.

+1 There should be a graceful way to reimport a cluster after removal.

hi, I am confuse that I can't reimport a cluster after I delete it. @loganhz
I install the rancher server through docker and import the cluster, and I stop the rancher because I want to mount a volume on the rancher server. After I reimport the same cluster. I can't get the resource under the default and system projects...
any ideas? thanks!
some logs of rancher:
2020/03/14 07:56:59 [ERROR] NamespaceController cert-manager [resourceQuotaSyncController] failed with : project.management.cattle.io "c-2vqj6/p-69v9r" not found, [resourceQuotaUsedLimitController] failed with : project.management.cattle.io "c-2vqj6/p-69v9r" not found
2020/03/14 07:56:59 [ERROR] NamespaceController default [resourceQuotaSyncController] failed with : project.management.cattle.io "c-2vqj6/p-qtwpd" not found, [resourceQuotaUsedLimitController] failed with : project.management.cattle.io "c-2vqj6/p-qtwpd" not found
2020/03/14 07:56:59 [ERROR] NamespaceController kube-public [resourceQuotaSyncController] failed with : project.management.cattle.io "c-2vqj6/p-69v9r" notfound, [resourceQuotaUsedLimitController] failed with : project.management.cattle.io "c-2vqj6/p-69v9r" not found
2020/03/14 07:56:59 [ERROR] NamespaceController cattle-system [resourceQuotaSyncController] failed with : project.management.cattle.io "c-2vqj6/p-69v9r" not found, [resourceQuotaUsedLimitController] failed with : project.management.cattle.io "c-2vqj6/p-69v9r" not found
2020/03/14 07:56:59 [ERROR] NamespaceController kube-node-lease [resourceQuotaSyncController] failed with : project.management.cattle.io "c-2vqj6/p-69v9r"not found, [resourceQuotaUsedLimitController] failed with : project.management.cattle.io "c-2vqj6/p-69v9r" not found
2020/03/14 07:56:59 [ERROR] NamespaceController kube-system [resourceQuotaSyncController] failed with : project.management.cattle.io "c-2vqj6/p-69v9r" notfound, [resourceQuotaUsedLimitController] failed with : project.management.cattle.io "c-2vqj6/p-69v9r" not found
2020/03/14 07:56:59 [ERROR] NamespaceController cattle-global-data [resourceQuotaSyncController] failed with : project.management.cattle.io "c-2vqj6/p-69v9r" not found, [resourceQuotaUsedLimitController] failed with : project.management.cattle.io "c-2vqj6/p-69v9r" not found
2020/03/14 07:56:59 [ERROR] CatalogController system-library [system-image-upgrade-catalog-controller] failed with : upgrade cluster c-2rckz system service logging failed: cluster c-2rckz not ready
2020/03/14 07:56:59 [INFO] error in remotedialer server [400]: websocket: close 1006 (abnormal closure): unexpected EOF
2020/03/14 07:56:59 [INFO] Redeploy Rancher Agents is needed for c-2rckz: forceDeploy=false, agent/auth image changed=true, private repo changed=false
2020/03/14 07:57:00 [INFO] Handling backend connection request [c-2rckz]
2020/03/14 07:57:00 [INFO] error in remotedialer server [400]: websocket: close 1006 (abnormal closure): unexpected EOF
2020/03/14 07:57:04 [INFO] Handling backend connection request [c-2rckz:machine-s56j9]
2020/03/14 07:57:05 [INFO] error in remotedialer server [400]: websocket: close 1006 (abnormal closure): unexpected EOF

Can you try to move default namespace into Default  project manually ?


[DO NOT MERGE] Broken predicate eval

Demo PR -- while working on nested column support I noticed that Delta scans accept predicates involving column names that do not exist. That might not be so bad, except they cause the result to come back empty (!). It's not immediately obvious what the problem might be. Maybe we're swallowing an Err somewhere?

Caused by https://github.com/delta-incubator/delta-kernel-rs/issues/434.


[BUG] faq section should be centere

Is there any existing issue for this?

[X] I have searched the existing issues

Description
The current faq section is not centered when viewed on larger screens.
Please assign me this issue under GSSoC'23.
Screenshots

Any additional information?
No response
What browser are you seeing the problem on?
Chrome

Hey, it's not needed to be center. There was a gif on the right side which seems to be not showing up


[WIP] Add kwokctlComponent API

What type of PR is this?

/kind feature
What this PR does / why we need it:
Which issue(s) this PR fixes:

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

Added the KwokctlComponent configuration to configure components.

Additional documentation e.g., KEPs (Kubernetes Enhancement Proposals), usage docs, etc.:

NONE

It would be great if you provide some example yaml for a new component with this API.

It would be great if you provide some example yaml for a new component with this API.

here's an example
https://github.com/kubernetes-sigs/kwok/commit/66033671182c9705a6555d4185d4900ebc345c52#diff-bfbfd4fd2682d488d5d652f9835c22fdc899618dd37c72d822d46ea400cb1b03R1
The expectation is able to fully describe all components in yaml, it's on hold because I'm doing something else.

Thanks for pointing him out.

it's on hold because I'm doing something else.

np, just take your time.

ignore this for the record only
Support for VPA
https://github.com/kubernetes-sigs/kwok/issues/1181#issuecomment-2242271894
apiVersion: config.kwok.x-k8s.io/v1alpha1
kind: KwokctlConfiguration
options:
  kubeApiserverCertSANs:
  - vpa-admission-controller
components:
- name: vpa-admission-controller
  image: registry.k8s.io/autoscaling/vpa-admission-controller:1.1.2
  args:
  - --kubeconfig=/root/.kube/config
  - --client-ca-file=/etc/kubernetes/pki/ca.crt
  - --tls-cert-file=/etc/kubernetes/pki/admin.crt
  - --tls-private-key-file=/etc/kubernetes/pki/admin.key
  - --webhook-address=https://vpa-admission-controller
  - --webhook-port=8080
  - --port=8080
- name: vpa-recommender
  image: registry.k8s.io/autoscaling/vpa-recommender:1.1.2
  args:
  - --kubeconfig=/root/.kube/config
- name: vpa-updater
  image: registry.k8s.io/autoscaling/vpa-updater:1.1.2
  args:
  - --kubeconfig=/root/.kube/config


Hybrid object (POJO <> customElement)

I thought I'd share this with you because I remember trying to use this design from Polymer 1, 2 but it was always a mess. Finally from Polymer 3 and then LitElement I can get closer from my expectation and I am very satisfied but there's still one caveat.
First let me show you what I try to do, I want to create an object that acts as a plain old object
interface Planet {
  name: string,
  mass: number,
  satellites: string[]
}

const planet: Planet = {
  name: 'earth',
  mass: 5.97237e+24,
  satellites: ['moon']
}

but also like a custom element. In order to do that we can make a new LitElement element
@customElement('planet-element')
class PlanetElement extends LitElement {
  @property({ type: String })
  public name: string = ''

  public mass: number = 0
  public satellites: string[] = []

  render () {
    return html`

${this.name}

    `
  }
}

I already see 2 problems :

The properties need a default value if not optional [1]
The auto-completion also includes the properties of LitElement [2]

To resolve [1] default values have to be pass when the object is created (hence in the constructor) :
// @ts-ignore
@customElement('planet-element')
class PlanetElement extends LitElement {
  @property({ type: String })
  public name: string = ''

  public mass: number = 0
  public satellites: string[] = []

  constructor (name: string, mass: number, satellites: string[]) {
    super()
    this.name = name
    this.mass = mass
    this.satellites = satellites
  }

  render () {
    return html`

${this.name}

    `
  }
}

and because the constructor can't include parameters the decorator presents an exception which I, for now..., ignore using // @ts-ignore
To resolve [2] I implement the interface
// @ts-ignore
@customElement('planet-element')
class PlanetElement extends LitElement implements Planet {

  @property({ type: String })
  public name: string = ''

  public mass: number = 0
  public satellites: string[] = []

  constructor (name: string, mass: number, satellites: string[]) {
    super()
    this.name = name
    this.mass = mass
    this.satellites = satellites
  }

  render () {
    return html`

${this.name}

    `
  }
}

We get somewhere, now we can type
const myplanet = new PlanetElement('my little big planet', 12, ['b612'])

// it feels more like a plain object
myplanet.mass = 9999
myplanet.name = 'cool name' // rerender

And it acts like a custom element
class SolarSystem extends LitElement {
  private planets: PlanetElement[] = []

  render () {
    return html`
      ${this.planets}
    `
  }
}

Thanks to lit-html this works. lit-html understands that the array is an array of Planet elements and stamps the appropriate template of each elements.
But still this is not near perfect for 3 reasons.
1. It's still a customElement
I expect the object to be a plain old one if for instance I type JSON.stringify(myplanet) it would include exposed properties of LitElement too.
We could resolve it by creating this function in the custom element :
class PlanetElement ... {
  ...

  getPlainObject () {
    return <Planet>{
      name: this.name
      mass: this.mass
      satellites: this.satellites
    }
  }

  ...
}

Now JSON.stringify(myplanet.getPlainObject()) works. But it gets even more cumbersome.
2. four parts to modify
When we need to add a property we have to modify four parts : in the interface, in the class properties, in the constructor, and in the getPlainObject.
3. Auto-completion
For the completion to only propose the properties of the POJO we need explicit specification :
myplanet.<the auto-completion also includes `LitElement` properties>
(myplanet as Planet).<the auto-completion works well now>

I really wish there were a mechanism to achieve this. I wanted to expose this issue I am facing, I am sure this is not a pattern everyone's think about but I think it's worth considering.
What would you say to someone that tries to seamlessly fusion a plain old JS object and a custom element ? Any suggestions, insights, ideas ?
Thanks in advance.

I normally have something like this:
@customElement('planet-element')
class PlanetElement extends LitElement {
  @property({ type: Object })
  public planet: Planet

  render () {
    return html`

${this.planet.name}

    `
  }
}

toJSON should simplifier your JSON requirements.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify#toJSON_behavior

@vdegenne Can you back up a little and explain your motivation for wanting an element to also behave like a POJO? That might help us give recommendations.

@CaptainCodeman @justinfagnani Yes this is what I am falling back to but why couldn't a planet also be an element ?
The way I see it web development becomes more and more modular and the browser is the stage for representing the data (objects). It's almost like our surroundings, objects have properties and if we could modify these properties the objects would have different shapes and reactions. If I "stamp my object in the browser" I'd expect it to be visually represented as I see it in term of visualisation and have the correct reactions to user interactions.
I was surprised when I wrote ${myplanet} to observe that lit-html "understood" it was a custom element and the screen displayed the intended rendering. I remember trying to do that in the very early versions of Polymer and was discouraged to see it was not working. But it looks like it becomes more and more easy to have this effect, that's why I wrote this post, not really a criticism about LitElement not being extensible enough but I just wanted to share some ideas of how to make this even more easy to approach.
also @motss suggested to remove the constructor and [to ignore the typescript errors about the initialization].

Closing as non-actionable for the Lit team.


Whitespace character before string also included in url

I am using "ActiveType.custom(pattern: "\stests\b")" to make tests string a url, but it is including the whitespace character before the string in url line. Any help will be appreciated.

Hi, did you find a solution ?

Ok. I found.
I was searching contact us. with this "\scontact us\b"
White space at the biginning was taken. I use this instead and it's ok #"\bcontact us\b"#

@julien-its Using \b for both worked well. Thanks!


add global error and link class

Closed in https://github.com/schuldners-liste/app/commit/c867ebea282873d4e6696ac86a4fab058030d3f7


documentation of command line options

It took me some time to find out that I can select benchmarks on the command line (my-benchmark-exe -m pattern foobar)
I suggest to show some typical ways of calling an executable that uses defaultMain, right at https://hackage.haskell.org/package/gauge-0.2.4/docs/Gauge-Main.html#v:defaultMain , and maybe even at the top page https://hackage.haskell.org/package/gauge-0.2.4 , and some text like

An executable that uses defaultMain
is called from the command line as executable <options> <arguments>
where options are described at https://hackage.haskell.org/package/gauge/docs/src/Gauge.Main.Options.html#opts , and each argument is a benchmark name (or pattern)

Current documentation/landing page adresses people that want to switch from criterion (and wastes a lot of space by listing libraries that are avoided) - but my use case is that I want to evaluate gauge (or recommend it to my students) without previous knowledge of other frameworks.
(NB: I find criterion's defaultMain equally underdocumented.)

I agree easy discoverability of features is important for people to use them. I agree with your suggestions above. We can also suggest the user to run the executable created by defaultMain with --help CLI option to find out the various CLI options supported.

The --help proposal is already there. But it requires me to download, install, build, and run - or to hunt for the source code. Neither of these (output of --help, source code) does say anything about arguments.


Updates version nums in sdk refs

Version numbers in some SDK reference topics were out of date compared to the release notes. This catches them up.

Preview environment: https://hdh.pr.harness.io/pr-1017


Decision was the mouse down and mouse up events would be implementation extensions and not part of the CMAPI spec

Addressed in the User Manipulation extensions map.feature.mousedown and map.feature.mouseup events


Create initial liquid table/model

I created a file called liquid.js and created an initial Liquid model using sequelize in the model folder.

Squashing and merging.


Hello， if you could release the code of paper"SDQ: Stochastic Differentiable Quantization with Mixed Precision"

Hello there,
I'm wondering if you could make the code of paper "SDQ: Stochastic Differentiable Quantization with Mixed Precision" public. I'm recurrenting the code of it and I made some mistakes, if you could make it available, I would be very grateful, And have a nice day!

Hello there, I'm wondering if you could make the code of paper "SDQ: Stochastic Differentiable Quantization with Mixed Precision" public. I'm recurrenting the code of it and I made some mistakes, if you could make it available, I would be very grateful, And have a nice day!

Hello,please do you have the "SDQ" code?


CommentWriter randomly disappear with no reason.

As topic mentioned, sometime I go to Comment writer view through Discovery view or Home view, it will disappear with no reason....and complier log has no error message.
Did Author has same problem with me? Would you provide some advise to fix this issue?

Use 3 party to replace original commentwriterview solve the problem.


New rule: ban the type-unsafe built-in utility types Omit, Exclude, Extract

...because they're vulnerable to typos and to failing silently after a rename refactoring.

See https://github.com/danielnixon/eslint-config-typed-fp/blob/master/src/index.ts#L46-L65


Natural sorting in EngineSorter

EngineSorter currently sorts the machines alphabetically like:
machine1
machine10
machine11
machine12
machine2
machine3
machine4
machine5
machine6
machine7
machine8
machine9

and that's what appears in docker info output. By using a natural sorting algorithm (e.g. https://github.com/skarademir/naturalsort) the output can be showed as for better readability:
[...]
machine8
machine9
machine10
machine11
machine12

I think this could be an improvement for 0.4.0.
@vieux @aluzzardi @abronan what do you think?

@ahmetalpbalkan @chanwit good idea

Looks like a good improvement!
(I noticed that https://github.com/skarademir/naturalsort doesn't have any releases or tags yet, perhaps something to ask?)

:+1:

@chanwit Want to take care of this?

@aluzzardi  no problem. I'll do it.

I don't want to add an extra dependency for the sorting algorithm.
@skarademir would you mind if I'll grab your codes of naturalsort and put into a PR?

@chanwit it should be ok as long as we vendor rather than copy/paste.

Agreed with @chanwit - but then I looked at naturalsort and it turns out it's just a rather small file, so it should be fine to embed it with godep.

Thanks for inputs. I'll go with Godepping naturalsort.


Create Rackspace Package

Note that when we are in active development, both OpenStack.NET and Rackspace will have a -beta suffix as required by NuGet. When we release and bump versions, that suffix is removed from the build.proj files and the nuspec dependency section.

Fixes #28


Removed one child-headings for clarity

Minor modification in the documentation: there was no point in having only one child-heading for the "transformations" section:

so I removed one heading, so that all transformations are readily visible.

Checklist
GitHub

[x] I've given this PR a concise, self-descriptive, and meaningful title
[ ] I've linked relevant issues in the PR body
[x] I've applied the relevant labels to this PR
[x] I've assigned a reviewer

PR contents

[x] I've consulted ivadomed's internal developer documentation to ensure my contribution is in line with any relevant design decisions
[ ] I've added relevant tests for my contribution
[x] I've updated the relevant documentation for my changes, including argparse descriptions, docstrings, and ReadTheDocs tutorial pages

Description

Linked issues

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 69.425%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
4010

Relevant Lines:
5776

💛  - Coveralls


open file failed on github.dev

Does this issue occur when all extensions are disabled?: Yes/No

Steps to Reproduce:
When I use Github, I click . to open github.dev, i get this error

Then I see  in output get this log

===== log =====
2023-08-25 13:21:16.335 [info] Extension host started
2023-08-25 13:21:16.337 [info] ExtensionService#_doActivateExtension vscode.git-base, startup: true, activationEvent: '*'
2023-08-25 13:21:16.338 [error] CodeExpectedError: ENOPRO: 未找到资源 "vscode-vfs://github%2B7b2276223a312c22726566223a7b2274797065223a362c226964223a226d6173746572227d7d/AkaShark/Obisidian" 的文件系统提供程序
at r.j (https://assets.github.dev/stable/6c3e3dba23e8fadc360aed75ce363ba185c49794/out/vs/workbench/workbench.web.main.js:624:11015)
at async r.exists (https://assets.github.dev/stable/6c3e3dba23e8fadc360aed75ce363ba185c49794/out/vs/workbench/workbench.web.main.js:624:13222)
at async Promise.all (index 0)
at async https://assets.github.dev/stable/6c3e3dba23e8fadc360aed75ce363ba185c49794/out/vs/workbench/workbench.web.main.js:1862:2483
2023-08-25 13:21:16.338 [info] ExtensionService#_doActivateExtension vscode.github-authentication, startup: false, activationEvent: 'onAuthenticationRequest:github'
2023-08-25 13:21:16.759 [error] No bundle location found for extension vscode.git-base
2023-08-25 13:21:16.762 [info] Eager extensions activated
2023-08-25 13:21:16.764 [error] No bundle location found for extension vscode.github-authentication
2023-08-25 13:21:16.766 [warning] Using default string since no string found in i18n bundle that has the key: url handler
2023-08-25 13:21:16.766 [warning] Using default string since no string found in i18n bundle that has the key: local server
2023-08-25 13:21:16.766 [warning] Using default string since no string found in i18n bundle that has the key: device code
2023-08-25 13:21:16.766 [warning] Using default string since no string found in i18n bundle that has the key: personal access token
2023-08-25 13:21:16.771 [info] ExtensionService#_doActivateExtension vscode.merge-conflict, startup: false, activationEvent: 'onStartupFinished'
2023-08-25 13:21:16.773 [info] ExtensionService#_doActivateExtension vscode.microsoft-authentication, startup: false, activationEvent: 'onAuthenticationRequest:microsoft'
2023-08-25 13:21:17.013 [error] No bundle location found for extension vscode.merge-conflict
2023-08-25 13:21:17.019 [warning] Using default string since no string found in i18n bundle that has the key: (Current Change)
2023-08-25 13:21:17.020 [warning] Using default string since no string found in i18n bundle that has the key: (Incoming Change)
2023-08-25 13:21:17.020 [error] No bundle location found for extension vscode.microsoft-authentication
2023-08-25 13:21:17.020 [warning] Using default string since no string found in i18n bundle that has the key: Microsoft Authentication
2023-08-25 13:21:17.022 [warning] Using default string since no string found in i18n bundle that has the key: Microsoft Authentication
2023-08-25 13:23:35.287 [info] ExtensionService#_doActivateExtension vscode.emmet, startup: false, activationEvent: 'onLanguage'
2023-08-25 13:23:35.702 [error] No bundle location found for extension vscode.emmet

Some one can help

第一个提示我倒是经常遇到，应该是下载时断连了，刷新几次就好了。后面的就不清楚了。

@akashark there are a lot of messages in the logs you attached which suggest that we failed to download the builtin extensions that are required for github.dev to work. Are you behind a firewall or proxy that might prevent us connecting to vscode-unpkg.net? Can you open the Network tab in the developer tools console and share any blocked requests that you see when you try to load github.dev? Thanks!

@AkaShark there are a lot of messages in the logs you attached which suggest that we failed to download the builtin extensions that are required for github.dev to work. Are you behind a firewall or proxy that might prevent us connecting to vscode-unpkg.net? Can you open the Network tab in the developer tools console and share any blocked requests that you see when you try to load github.dev? Thanks!

You were right, I resolved the issue! It seems that my company's network was the cause. Thank you!


What is Azure SQL MV?

What is Azure SQL MV? Is this SQL DW? VM?

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

ID: 8c8dc618-bff7-b1aa-be2c-b6b933f75545
Version Independent ID: 9a608dd8-d781-eb4a-c796-34f758f0d58a
Content: Database migration scenario status
Content Source: articles/dms/resource-scenario-status.md
Service: database-migration
GitHub Login: @pochiraju
Microsoft Alias: rajpo

@yuharucan  Thank you for the detailed feedback. This is being assigned to the content author to evaluate and update as appropriate.


Strange Result for same Data

Hello,
I just tried your BoxPacker, but unfortunately I can't understand the result for following two XML files:
<packerForm> 	<instanceFormArray> 		<instanceForm count="24"> 			<instance name="Item1" width="9.5" height="9.5" length="10" type="product" /> 		</instanceForm> 		<instanceForm count="12"> 			<instance name="Item2" width="17.5" height="17.5" length="21.5" type="product" /> 		</instanceForm> 		<instanceForm count="2"> 			<instance name="Item3" width="10.25" height="10.83" length="16.3" type="product" /> 		</instanceForm> 		<instanceForm count="6"> 			<instance name="Item" width="9.5" height="18" length="6.08" type="product" /> 		</instanceForm> 	</instanceFormArray> 	<wrapperArray> 		<instance name="Large" price="102" width="59" height="59" length="40.5" thickness="0" type="wrapper" /> 		<instance name="Middle" price="101" width="58" height="29" length="40.5" thickness="0" type="wrapper" /> 		<instance name="Small" price="100" width="40.5" height="29" length="29" thickness="0" type="wrapper" /> 	</wrapperArray> </packerForm>
And the same file here, only the position of the Items has changed:
<packerForm><instanceFormArray> <instanceForm count="12"><instance name=„Item2" width="1750" height="1750" length="2150" type="product" /></instanceForm><instanceForm count="2"><instance name=„Item3" width="1025" height="1630" length="1083" type="product" /></instanceForm><instanceForm count="24"><instance name=„Item1" width="950" height="1500" length="1500" type="product" /></instanceForm><instanceForm count="6"><instance name=„Item4" width="950" height="1800" length="608" type="product" /></instanceForm> <wrapperArray><instance name=„Large" width="5900" price="102" height="5900" length="4050" thickness="0" type="wrapper" /><instance name=„Small" width="4050" price="100" height="2900" length="2900" thickness="0" type="wrapper" /><instance name=„Middle" width="5800" price="101" height="2900" length="4050" thickness="0" type="wrapper" /></wrapperArray></packerForm>
The result is a different:
With the first XML the Items fits into one large Box.
With the second XML the system suggest a big one and 2 small boxes
Why is this?

Because the item1 of top and bottom are different.

Category
Width
Height
Length

Top
9.50
9.5
10.0

Bottom
950
1500
1500


Dropping features not shared between sinks and sources

This scenario will come up when the sinks and sources are being rarefied prior to being run in SourceTracker. The situation would be that low abundance features' counts would be set to 0 after rarefaction, but the feature column would still be in dataframes. In this way, a truly empty feature could be "seen" in both the sinks and the sources since that empty feature would be seeded with small amounts of sequence due to alpha1.
My suggestion would be to wrap this up into a command outside gibbs, likely related to #54. The command could take the union of features, and then drop features that were empty across all sinks and sources.

@lkursell Is this different that #54

I would also say we should add the simple get_union and get_intersection functions to the code base so you can call easily. Does that seem reasonable??

Very related but not identical. Seems that in #54 features that start out as nans can get filled with 0s and therefore be counted as a feature. My argument here is that a feature which is 0 in the source and 0 in the sink would technically be shared (found in both dataframes), but actually should be dropped all together. If a filter to make sure that the union was only taken on non-zero features, the issues would be the same.


ComfyScript unexpected behaviour with Fooocus Text

Hi all,
I've been trying to use the following workflow with comfyscript but somehow generated script fails to run:
workflow:
https://openart.ai/workflows/datou/fooocus-text/sl9YxQ1umL1N9aRHtldI
Even the following simple script follows cannot run successfully, and fails at FooocusStyles.
######################SCRIPT FAILING ###################################
from comfy_script.runtime import *
load()
from comfy_script.runtime.nodes import *
with Workflow():
#_ = FooocusNegative('')
positive = FooocusPositive('a frozen brain is on fire, "LABEL"')
pipe = FooocusLoader('dreamshaperXL_lightningDPMSDE.safetensors', 'None', 0.5, 'joint', positive, '', '1024 x 1024', 1024, 1024, 1, None)
fooocus_styles = FooocusStyles('fooocus_styles')
###############################################################

I'll fix this later. A workaround is to run ComfyUI in a separate process, and then load('http://<IP_ADDRESS>:8188/').

Tyu for quick reply :-) I basically opened a new terminal and run ComfyUI there, opened a browser with the workflow. Then in another terminal I ran the same script this time with load('http://<IP_ADDRESS>:8188/')
But I still get the same error. Did I somehow miss stg in the workaround you suggested actually?

Thank you very much for your help! I finally got it running, but only with the following required changes:

I had to force "run" function at
Path/To/ComfyUI/custom_nodes/Fooocus_Nodes/py/prompt.py
with the customized values (usually selected by UI) as
try:
values = []
if my_unique_id in prompt:
if prompt[my_unique_id]["inputs"]["select_styles"]:
values = prompt[my_unique_id]["inputs"]["select_styles"].split(
",")
except:
values = ["Fooocus V2","Fooocus Enhance","Fooocus Sharp","SAI Enhance","SAI Texture","SAI Digital Art"]

Somehow workflow ends up with an empty loras input for the "refresh_loras" function at
Path/To/ComfyUI/custom_nodes/Fooocus_Nodes/py/modules/default_pipeline.py
There I added a single line to fix this issue just before refreshing:
if loras is None: loras = [] #cgoksu

Then it all worked fine, hurray! :-)

The first issue can be solved without the change by explicitly specifying the missing select_styles input:
FooocusStyles('fooocus_styles', select_styles='Fooocus V2,Fooocus Enhance,Fooocus Sharp,SAI Enhance,SAI Texture,SAI Digital Art')
# or: FooocusStyles('fooocus_styles', select_styles=','.join(["Fooocus V2","Fooocus Enhance","Fooocus Sharp","SAI Enhance","SAI Texture","SAI Digital Art"]))

The second one is a bug and now fixed. Thanks for your report.

Tyuuu sounds much better indeed to add those as you suggested... Great to hear its now fixed! Keep up with the great work :-)


About trilinear upsampling

Hi @JiaRenChang, nice work.
In your parper, Figure 1, after you get cost1, cost2 and cost3, it seems you use bilinear upsampling.
But in the code, you use trilinear upsampling, like
cost3 = F.upsample(cost3, [self.maxdisp, left.size()[2], left.size()[3]], mode='trilinear')
What's the difference? Is bilinear worse than trilinear?
Thank you so much.

@heguohao0728
It is the same thing.  Trilinear is for 3D tensor as well as bilinear is for 2D tensor.
Trilinear_interpolation

Oh...I got it, Thanks!


Store moods in DB

Create DB "façade" interface
Create Mood class that wraps mood data
Create Mood generator and generation strategies

Strategies include:

Create Or Update strategy (mood not yet in DB)
Delete Strategy (returns mood after deleting from DB)
Get strategy (returns mood that is stored in DB)

These strategies are used in the Mood api endpoints as appropriate

Add Database URL to .travis.yml

Looks great to me! Nice use of strategy pattern. Only thing I would suggest is replacing the magic constants 0 and 3 in utils/db with constant variables and making the execute statement strings constants as well.

Ok thanks for the suggestion. Will incorporate those changes in a separate commit


Badly specified dates should produce an error rather than a warning

Describe the bug
If a date is specified in the sample.txt file in European format (DD/MM/YYYY) then a warning is produced.
To Reproduce
Run 'cicero execute' on the attached cta file.
Expected behavior
An error should be produced.
Screenshots
This is the warning produced:
Deprecation warning: value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged and will be removed in an upcoming major release. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.
Arguments:
[0] _isAMomentObject: true, _isUTC: false, _useUTC: false, _l: undefined, _i: Invalid date, _f: undefined, _strict: undefined, _locale: [object Object]
Error
at Function.createFromInputFallback (/Users/adrianfletcher/.nvm/versions/node/v11.10.0/lib/node_modules/@accordproject/cicero-cli/node_modules/moment-mini/moment.min.js:1:3430)
at Yt (/Users/adrianfletcher/.nvm/versions/node/v11.10.0/lib/node_modules/@accordproject/cicero-cli/node_modules/moment-mini/moment.min.js:1:21380)
at Ot (/Users/adrianfletcher/.nvm/versions/node/v11.10.0/lib/node_modules/@accordproject/cicero-cli/node_modules/moment-mini/moment.min.js:1:22091)
at Tt (/Users/adrianfletcher/.nvm/versions/node/v11.10.0/lib/node_modules/@accordproject/cicero-cli/node_modules/moment-mini/moment.min.js:1:22173)
at new c.parseZone (/Users/adrianfletcher/.nvm/versions/node/v11.10.0/lib/node_modules/@accordproject/cicero-cli/node_modules/moment-mini/moment.min.js:1:50491)
at JSONPopulator.convertToObject (/Users/adrianfletcher/.nvm/versions/node/v11.10.0/lib/node_modules/@accordproject/cicero-cli/node_modules/composer-concerto/lib/serializer/jsonpopulator.js:219:26)
at JSONPopulator.convertItem (/Users/adrianfletcher/.nvm/versions/node/v11.10.0/lib/node_modules/@accordproject/cicero-cli/node_modules/composer-concerto/lib/serializer/jsonpopulator.js:198:27)
at JSONPopulator.visitField (/Users/adrianfletcher/.nvm/versions/node/v11.10.0/lib/node_modules/@accordproject/cicero-cli/node_modules/composer-concerto/lib/serializer/jsonpopulator.js:150:27)
at JSONPopulator.visit (/Users/adrianfletcher/.nvm/versions/node/v11.10.0/lib/node_modules/@accordproject/cicero-cli/node_modules/composer-concerto/lib/serializer/jsonpopulator.js:101:25)
at Field.accept (/Users/adrianfletcher/.nvm/versions/node/v11.10.0/lib/node_modules/@accordproject/cicero-cli/node_modules/composer-concerto/lib/introspect/decorated.js:65:24)
Additional context
If this warning is ignored then confusing errors occur when the template is uploaded to Clause.
<EMAIL_ADDRESS>

Some investigation on this issue: DateTime variables without a format do not go through the same format parser which checks for bounds on days and months to ensure they are proper dates. This means in those cases, the parser's behaviour falls back to whatever moment does. In this case, it creates a moment object marked as Invalid date.
The proposed resolution would be to treat DateTime variable without format as DateTime variables using the default MM/DD/YYYY format.

With a fix to make sure non-formatted date behave as formatted dates with MM/DD/YYYY:

Tried on the provided sample:
bash-3.2$ ~/git/cicero/packages/cicero-cli/index.js parse
~/git/cicero/packages/cicero-cli/index.js parse
15:41:56 - info: Using current directory as template folder
15:41:56 - info: Loading a default sample.txt file.
15:41:59 - error: invalid syntax at line 4 col 29:

  Policy period 01/01/2019 to 31/12/2019
                              ^
Unexpected "3"

Cicero part of this fixed in PR #379
I can't speak to the Clause issues that may or may not need additional fixes.


Restrict log file creation to 'vast start'

Set file verbosity to 'quiet' by default, and do not create a log file and log directory when file verbosity is set to 'quiet'.
Set file verbosity to 'debug' by default only for the 'vast start' subcommand.

This does not yet seem to handle vast -N, does it? Haven't tested yet, just had a glance at the code.

Yes, by design: The overall goal was that commands issued by the user in his terminal should not pollute the current working directory by creating a vast log directory, which would include vast -N. Do you think we should add an exception for vast -N?

Do you think we should add an exception for vast -N?

Yes, since it is basically running vast start under the hood.

[ch13224]


feat: add autoscaler service integration support

About this change—what it does

Adds support for autoscaler service integration

tests


Add JSON API (v1.0) compliant API option

With the final specification of the great JSON API ready and this gem providing a very good solution to authenticating via APIs I find it natural to expect this gem to comply to the new JSON API standard sometime in the near future.
As an example I am currently writing a new API based on the jsonapi-resources gem where I am also using devise_token_auth for higher security measures. But mimicking all the functionality within this gem via my own controller/routes/etc. in order to comply to the JSON API standard is not only a lot of work but also bad in terms of future changes.
As I believe though that many more people will want to comply to the JSON API standard in the future (due to time savings because there a lot of implementations ready to go) I am asking the maintainers here if they are interested in adding an option to comply to that standard. Specifically I would love to help building that option but before I do so I'd love to know the chances of such a pull request getting merged and maybe a hint from the maintainers where/how they would start implementing the feature in a clean way.
Any inputs / opinions / ideas on this?

@Dschee - this seems reasonable. Is this something that you would like to take on?

@lynndylanhurley - Yes, indeed, I'd love to take it on but I can't right now. Will have a look at November. Until then it would be great to get some hints on where to start it and/or how to include it so I don't interfere with any features of this great gem so people can still use it without the JSON API addition. Any thoughts on that?

This should be straightforward actually. Most or all of the controllers have the render methods broken out (example), so it will just be a matter of formatting the responses to match the spec.
The problem is that this will break compatibility with ng-token-auth and j-toker, so those libraries will need to be updated as well.
And updating the tests will be kind of a pain.
But I've always felt that the responses should follow a standard format, and the new JSON API spec looks nice.
@booleanbetrayal - do you have any thoughts on this?

As long as the JSON-API spec is final, it's an optional / backwards-compatible feature, docs are comprehensive, and spec coverage is good, I think I'm fine with it.   =]
I don't have a lot of free-time to offer these days, but I would gladly spend some time with a good PR.

Hey guys, sorry for the multiple months of delay, I was just too busy all this time. Now I had some free time to start this which I did in #566. It's not finished yet and I plan to continue my work on it this weekend. You can review the changes I made until now already if you want though and give some feedback if anything is going the wrong direction. I hope it's what you were looking for!

I've just completed the response side of the JSON API compliance. See #566.

Hi there @Dschee    ,
In an effort to cleanup this project and prioritize a bit, we're marking issues that haven't had any activity in a while with a "close-in-7-days" label. If we don't hear from you in about a week, we'll be closing this issue. Obviously feel free to re-open it at any time if it's the right time or this was done in error!
If you are still having the issue (especially if it's a bug report) please refer to our new Issue Template to provide some more details to help us solve it.
Hope all is well.

This "close-in-7-days" label really is funny. It should be renamed to "ignore-2-years-until-developer-gives-up-first-then-close-in-7-days".
I'm really happy you are updating stuff in this project @zachfeldman but that reminds me of the even bigger sadness of having no activity by the maintainers for a long time. I really invested quite some time after they gave me their OK that the JSON API stuff might get merged. But that work was ignored for a long time and closing this issue is a bitter end of the story.

@Dschee I'm really sorry that you feel that way, I mean it. I also have worked on open source projects before where I worked extremely hard on something only to be ignored for a very long time by the maintainers, or never even acknowledged at all.
I stumbled upon this project because my company needed to do token authentication and I personally was also frustrated by the inactivity and lack of a Standard in Rails for this (with Devise). I decided to get in contact with @lynndylanhurley to see if I could pitch in some of my free time and help clean things up and get it started again. We have merged a few PRs since then and addressed some open issues too, and are starting to spin the wheels again.
If you'd like we can reopen this issue and pull request. Just to remind you though that this is a volunteer-run project, not anybody's full-time job so just like you pitched in your time, I just took time to write this response and attempt to clean up the issue and pull request queue.
I don't want to speak for @lynndylanhurley , but from what I can tell this project was initially for his work but has now grown to be a lot more and something he may not even use at his day job day today, but he's involved still.
The alternative to the close-in-7-days label is somehow thinking we live in a world where the 380 open issues and 50 open PRs would get closed when, since opening that label and "cleaning things up", we still have 78 open issues and 14 open pull requests weeks later. My aim with the label is that I wanted to be more realistic about our chances of making an impact on issues with people that were still using this gem, so that we didn't waste time responding to people that moved on a long time ago. I definitely didn't mean to belittle your work, so I'm sorry if you felt that way. Thanks for the work you did in the past. There's your contextual reason. And sorry this comment became a novel!

Haha, thanks @zachfeldman for the answer! I appreciate it. And the label joke was not directed at you. As I said, I'm happy you're trying to clean things up here, you're doing just the right thing at this point.
I totally understand how these things work and that everything is done on a volunteer basis. I maintain some repositories myself which I don't use any more. But then, I wouldn't ask someone to put in some effort for a feature he wants and tell him I'd review and merge it once finished to ignore him from then on. That's simply irresponsible if not even rude. That's what makes me so unhappy.

@Dschee - thanks for taking the time to submit a PR.
As @zachfeldman said, we're using the close-in-7-days to filter out issues that no one cares about any more. If you still want this merged, please re-open the issue and we'll look into it as soon as we can.


Atom crashes when manually changing font size in settings page

Screenshot: http://i.imgur.com/UrqsJ5K.png
OS: Win 8.1
Steps to reproduce: open Atom, click on File >> Settings, change the font size entering a value in the field, press Enter: Atom hangs for a while then the dialog shown in the screenshot appears.

Can you reproduce this in safe mode? (atom --safe)

With the --safe flag Atom doesn't crash. More over, now I see the value I was trying to enter as font-size (while if I start Atom not using the safe mode it's still displayed the default = 14 placeholder.

Thanks for the update! That's still kind of strange though. What value were you trying to enter exactly? (Copy and paste it here if you can.) Can you post a list of your installed packages? (apm list --installed) Do you have anything in your Init Script?

I tried to enter just 12. I didn't install any package (I experienced the crash like 10 seconds after the install process completed): I just downloaded, launched the setup, which when completed opened Atom, and since the font was too big I wanted to reduce it :smile:

Did you have a large file open at the time? I noticed from the screenshot that you had some kind of log file open.

Yes it's a log file but no more than 300 lines

/cc @nathansobo I'm guessing something weird happened with the font sampling here when it was changed, but I'm not quite sure.

@mnquintana That's an Electron-level crash, so we should really submit a crash report to https://github.com/atom/electron. Not sure how to obtain one on the Windows platform.

Squirrel log presumably? Somewhere under C:\Users\[username]\appdata\local\atom, if I remember correctly.

Has this ever been reproduced? @danielepantaleone are you still experiencing this issue?

@lee-dohm I've switched over another text editor since then, so no (I guess)

Ok.  As there have been no more reports of this, and we're on a far-newer Electron version now, I'm closing this.


Create Dockerfile

Looking for feedback before I edit https://github.com/quantumlib/Cirq/blob/master/docs/install.md.
For one, do we want users to docker build? Or should we regulary update an image on Docker Hub (https://hub.docker.com/) so users can docker pull instead?
Fixes https://github.com/quantumlib/Cirq/issues/954

@dabacon Made the request so he's suited for this :)

docker build can be useful for advanced users. I don't know of any caveats regarding it. I haven't used docker for quite a while though.

@Ashalynd  Docker is great for web-apps because you have full control of the execution environment. This will be useful for deploying remote simulators that run on more powerful servers than local machines e.t.c.

I propose that we create a Cirq account on Docker Hub so users don't have to build the docker image.
Currently:
git clone git@github.com:quantumlib/Cirq.git
cd Cirq
docker build -t cirq/cirq . # Takes several minutes
docker run -it --rm cirq/cirq python -c 'import cirq; print(cirq.google.Foxtail)'

With Docker Hub:
docker pull cirq/cirq
docker run -it --rm cirq/cirq python -c 'import cirq; print(cirq.google.Foxtail)'

We could use any appropriately named Docker Hub  account . Maybe quantumlib.

@zoltanegyed has been looking into more of the details of what has to be done to ensure this works well. This PR is likely going to be obsoleted by that work.


docker-runner pulls out of date image

The stripeoss/gaps image in the docker registry was last updated on 12/10/2014. Since then, a number of bugs have been fixed. Can we get an updated image?

Good point — just pushed a new release!

Apologies for commenting on a closed bug, but it doesn't seem like the image has been updated since December if I'm reading the site correctly.
https://registry.hub.docker.com/u/stripeoss/gaps/

No worries — I think that's just confusing UI (I remember being confused by the same thing at the time). If you look a little higher, you'll see a more recent update stamp:

I also fetched the most recent image, and it has the changes I'd pushed. Let me know if you're seeing something different.

Ah, sorry about that. I thought we were running into #7 internally (need to reboot gaps every few days) and I thought we just didn't have the latest images.


Better checkpoint diagnostics

Provide a diagnostic of unsatisfied checkpoints call sites
This inspects the call stack when a checkpoint is being created to find the most likely call site in user code.
Fixes #67

Waiting from @tombentley @slinkydeveloper before I merge

Or Set? :-)

On 3 Jan 2020, at 10:11, Tom Bentley<EMAIL_ADDRESS>wrote:
@tombentley commented on this pull request.
In vertx-junit5/src/main/java/io/vertx/junit5/VertxTestContext.java:

@@ -79,6 +81,19 @@ public synchronized boolean completed() {
return !failed() && releaseLatch.getCount() == 0;
}

/**

Gives the call sites of all unsatisifed checkpoints.

@return a list of {@link StackTraceElement} references pointing to the unsatisfied checkpoint call sites.

*/
public List unsatisfiedCheckpointCallSites() {

Personally I would use Collection or Iterable, but I guess List is fine.
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub, or unsubscribe.


[Trojan Source Attacks] New feature: ban the use of text directionality control characters

Is your feature request related to a problem? Please describe.
The vulnerability is detailed here: https://trojansource.codes

adversaries can attack the encoding of source code files to inject vulnerabilities
The trick is to use Unicode control characters to reorder tokens in source code at the encoding level.

Describe the solution you'd like
Could a new check be added to bandit to detect those characters?
Describe alternatives you've considered
Using a language-agnostic linter tool detecting this vulnerability,
but I do not know any existing one so far.
Additional context

May be a bit less strict, as the article mention, unterminated bidirectionnal control character ?
I still haven't use those type of character, but I presume they are usefull for right to left languages. I assume banning all control chars would prevent writing comment in those languages ?
It's probably harder to implement though.
Appart from that, I think it's a great idea to implent those checks in tools, to not rely on human eye !

It is recommended as part of the PDF white paper, section "VII. F - Defenses":

The simplest defense is to ban the use of text directionality control characters
If an application wishes to print text that requires Bidi overrides, developers can generate those characters using escape sequences rather than embedding potentially dangerous characters into source code.

Please note #749 where I already opened an issue for the same topic.

Indeed, those issues are duplicates.
I'm closing this as it came after yours @CarliJoy


[Bug] Margin on RadioButton.GigaChips:checked Border#SelectedBorder is too large

Check the following items

[x] I have looked up relevant Issue

Description of the issue
The Margin on RadioButton.GigaChips:checked Border#SelectedBorder of 4 leaves a small ring if one was to change the colour of the border:

Package Version
6.0.0-beta7
Environment
Win11, other platforms untested
Expected Behavior
The above-mentioned small "extra-border" should not be visible.
Reproduction
<Style Selector="RadioButton.GigaChips:checked Border#SelectedBorder">
  <Setter Property="BorderBrush" Value="{DynamicResource SukiBorderBrush}" />
  <Setter Property="BorderThickness" Value="5" />
  <Setter Property="Margin" Value="4" />
</Style>

Note: This behaviour does not relate to the BorderThickness Value.
Additional Information
Original Code as seen in SukiUI/Theme/RadioButtonStyles.xaml:
<Border Name="SelectedBorder"
                            Margin="4"
                            BorderBrush="{DynamicResource SukiPrimaryColor}"
                            BorderThickness="2"
                            CornerRadius="{TemplateBinding CornerRadius}"
                            Opacity="0">

Changing the Margin to 3 fixes this issue:

<Border Name="SelectedBorder"
                            Margin="4" >>> Margin="3"
                            BorderBrush="{DynamicResource SukiPrimaryColor}"
                            BorderThickness="2"
                            CornerRadius="{TemplateBinding CornerRadius}"
                            Opacity="0">
                        <Border.Transitions>
                            <Transitions>
                                <DoubleTransition Property="Opacity" Duration="0:0:0.2" />
                            </Transitions>
                        </Border.Transitions>
                    </Border>

is this right?