Battery discharging and charging

Hi,
I wanted to double check with you if the runtime and charging speed I have is within the expectations.
Today I started our TB standard version with 47% charge. It was on for around 25 min, during which I drove maybe 30-40 meters, so the robot was mostly idle. The Lidar was always turning, however I only drove it manually with the joystick. After this, the charge was at 16% and I needed to abort an experiment to charge it again.
The robot then was on the charging dock for almost 3.5 hours and the charge now says 96%.
Is this consistent with runtime and charging speed from your experience? To me it seems that discharging is too fast and charging too slow, but this is of course quite subjective ;).
Thanks for your help,
best,
simon

Hi,
Thanks for the quick answer.
I needed to wait a couple of seconds after taking the robot off the dock before the /battery_status was getting published. I drove maybe 10 m, stopped the robot for 10 seconds, then echoed the status:
`header:
stamp:
sec:<PHONE_NUMBER>
nanosec: 129763746
frame_id: ''
voltage: 15.217000007629395
temperature: 25.850000381469727
current: -1.121999979019165
charge: 1.7480000257492065
capacity: 2.0490000247955322
design_capacity: 2.0490000247955322
percentage: 0.8500000238418579
power_supply_status: 0
power_supply_health: 0
power_supply_technology: 0
present: true
cell_voltage: []
cell_temperature: []
location: ''
serial_number: ''
header:
stamp:
sec:<PHONE_NUMBER>
nanosec: 129763746
frame_id: ''
voltage: 15.217000007629395
temperature: 25.850000381469727
current: -1.121999979019165
charge: 1.7480000257492065
capacity: 2.0490000247955322
design_capacity: 2.0490000247955322
percentage: 0.8500000238418579
power_supply_status: 0
power_supply_health: 0
power_supply_technology: 0
present: true
cell_voltage: []
cell_temperature: []
location: ''
serial_number: ''
`
How does this look to you? The robot has no payload on top of the acrylic plate and no additional hardware is connected. Camera is connected and Lidar is turning.

When the robot is on the dock, this is the echo /battery_status:
header:
  stamp:
    sec:<PHONE_NUMBER>
    nanosec: 94047288
  frame_id: ''
voltage: 15.753000259399414
temperature: 26.850000381469727
current: 0.27000001072883606
charge: 1.7730000019073486
capacity: 2.0490000247955322
design_capacity: 2.0490000247955322
percentage: 0.8700000047683716
power_supply_status: 0
power_supply_health: 0
power_supply_technology: 0
present: true
cell_voltage: []
cell_temperature: []
location: ''
serial_number: ''
---

I could add that when I received the robot, I could not switch it off: the LED ring would blink 3 times but no sound was played and the robot just stayed on. I could solve this issue by resetting the battery and since then booting and shutting down seems to work properly.

The charging current does seem to be fairly low. Typically we want to see about 1A when charging. Can you try a couple of tests to narrow down the issue?

On the RPi run sudo systemctl stop turtlebot4. This will stop the turtlebot4 service which runs all of the ROS2 nodes. Once the service is stopped, echo /battery_status again while the robot is off the dock.
Unplug the power adapter board from the Create 3. This will power off the RPi, PCBA, and lidar/camera. Then echo /battery_status with the robot off the dock. You can also try charging with the adapter board disconnected which should give you faster charge time.

Sorry for the late reply, I was a couple of days out of office.
Here is the /battery_status after running sudo systemctl stop turtlebot4 while the robot is off the dock. The robot has no payload added:
header:
  stamp:
    sec:<PHONE_NUMBER>
    nanosec: 745660753
  frame_id: ''
voltage: 15.340999603271484
temperature: 23.850000381469727
current: -0.7680000066757202
charge: 1.7719999551773071
capacity: 2.0490000247955322
design_capacity: 2.0490000247955322
percentage: 0.8600000143051147
power_supply_status: 0
power_supply_health: 0
power_supply_technology: 0
present: true
cell_voltage: []
cell_temperature: []
location: ''
serial_number: ''

And this is the echo after unplugging the power adapter board, robot is off the dock:
header:
  stamp:
    sec:<PHONE_NUMBER>
    nanosec: 805095732
  frame_id: ''
voltage: 15.404999732971191
temperature: 24.549999237060547
current: -0.24699999392032623
charge: 1.7230000495910645
capacity: 2.0490000247955322
design_capacity: 2.0490000247955322
percentage: 0.8399999737739563
power_supply_status: 0
power_supply_health: 0
power_supply_technology: 0
present: true
cell_voltage: []
cell_temperature: []
location: ''
serial_number: ''

And lastly the echo of the robot on the dock, adapter board unplugged:
header:
  stamp:
    sec:<PHONE_NUMBER>
    nanosec: 67249081
  frame_id: ''
voltage: 15.843999862670898
temperature: 24.950000762939453
current: 1.0889999866485596
charge: 1.7269999980926514
capacity: 2.0490000247955322
design_capacity: 2.0490000247955322
percentage: 0.8399999737739563
power_supply_status: 0
power_supply_health: 0
power_supply_technology: 0
present: true
cell_voltage: []
cell_temperature: []
location: ''
serial_number: ''

The charging current was increasing over a couple of seconds after putting it on the dock but then stays at over 1A.

Are these numbers more in line with a usual charging/discharging behavior?
Accelerating the charging speed by unplugging the adapter board could be a possibility for us, so that should not be too much of an issue; thanks for the tip. But I'm still wondering about the suggested runtime of 2.5 - 4 hours that still seem much longer than what we are getting, even without additional payload. Running sudo systemctl stop turtlebot4 reduces the battery current by around 30%, but at the cost of stopping ROS2. Is there anything else I could try?
Thanks for your help,
best,
simon

Hi,
Sorry for poking you again with this topic, but we couldn't yet come to a conclusion of the issue.
Charging is largely solved; it should probably always be possible to remove the adapter board to speed up charging time.
However, discharing is still an issue. Is a discharge current of over -1.1 A normal under no payload? My estimated runtime is 1h, maybe a little bit more, but far from the 2.5-4h range. Is there anything else we can look into?
Thanks for your help.
Best,
Simon

@simon-hauser Sorry for the delay. I will do some testing on my side to see what the typical current looks like when ROS2 is not running.
In the meantime, you can use the RPLIDAR motor function to stop/start the RPLIDAR. The motor on the RPLIDAR draws about 0.4A itself, so if you are not actively using it you can stop it to save power.

For reference my TB4lite draws 13W with the motor running.
My undocked sessions go from full charge to 20% red ring in roughly 1 hour 50 minutes,
and from 96% to 24% in roughly 1 hour 45 minutes.
Charging from 24% to 96% takes roughly 3 hours.
2022-11-25 17:36|wali_node.py| ** WaLI Undocking: success at battery 96% **
2022-11-25 19:21|wali_node.py| ** WaLI Docking: success at battery 24% **
2022-11-25 22:19|wali_node.py| ** WaLI Undocking: success at battery 96% **

*** TOTAL WaLI Turtlebot 4 Lite LIFE STATISTICS ***
Total Life:  135.25 hrs (since Nov 17, 2022)
Sessions (boot):  16
Average Session:  8.4 hrs
Successful Dockings Logged:  22


Implement IScalable scheduler for the YARN scheduler

Implementation of IScalable scheduler interface.
Fixes #1430

Can you add tests to YarnSchedulerTest for adding and removing containers?

@billonahill Unit tests for addition and removal of containers are included now.


Lock to Firefox 54 until Travis CI is fixed

Try and get the tests to pass by forcing Travis to use Firefox 54 instead of the latest (56).
The tests seem to be failing with an error:
07 10 2017 13:55:53.062:WARN [Firefox 56.0.0 (Linux 0.0.0)]: Disconnected (1 times), because no message in 10000 ms.
  Disconnected, because no message in 10000 ms.
Firefox 56.0.0 (Linux 0.0.0) ERROR

These tests pass fine locally with Firefox 56. This is likely related to https://github.com/travis-ci/travis-ci/issues/8242

Per this comment, locking FF version doesn't work anymore (confirmed by this PR Travis build) :\

Another option is to remove Firefox and only test chrome. Not sure how good of an idea that is

The last merge didn't fail, not sure if it's a coincidence or if it fixes the Firefox issue.

hmmm, maybe it's related

I just sent a new PR and the build passed on it as well: https://github.com/chartjs/Chart.js/pull/4826
I'm guessing the last merge may actually have solved the issue


HTMLDiagram keeps expanding without height

I just found a funny bug. Instead of using the maximum height of a Section for the diagram, the diagram keeps expanding when not specifying the height.
Example:
Dashboard -Name 'Test' -UseCssLinks:$true -UseJavaScriptLinks:$true -FilePath $PSScriptRoot\test.html -Show {
	Tab -Name 'Test' {
		Section -Name "Test" {
			New-HTMLDiagram {
				New-DiagramOptionsPhysics -Enabled $false
				New-DiagramOptionsInteraction -Hover $true

				New-DiagramNode -Label "test1" -ColorBackground Black -FontColor White -Shape box
				New-DiagramNode -Label "test2" -ColorBackground Black -FontColor White -Shape box

				New-DiagramLink -From "test1" -To "test2" -ArrowsFromEnabled $true -ArrowsToEnabled $true
			}
		}
	}
}

What does it mean to keep expanding? I don't see anything wrong with that HTML?

https://github.com/EvotecIT/PSWriteHTML/blob/master/Docs/New-HTMLTable.md - all options (i think it's up to date).

What does it mean to keep expanding? I don't see anything wrong with that HTML?

Try it yourself. The Diagram (its not a table) keep getting bigger and bigger

I did try it - that's why I said nothing wrong with it.

weird.. what browser did you use? Im on the current firefox (73.0)

Chrome / Edge. But just tested in firefox 70, closed it, updated to 72, closed it updated to 73 and it still works.

Ok, i see what you mean now.

But i would say something changed in 73.
Here's what it's like in 70.

I'll play with it when I get some time. Not a priority tho

Nah, as you can see 70 is also affected. The section box itself keeps expanding.
You can even see it in the gif

It expands because I press F5. In Firefox 73 and IE iit autoexpands by just waiting.

Anyways, it's a bug. Thanks for reporting. Probably need to update Vis.js to new version and test.

It expands because I press F5. In Firefox 73 and IE it auto expands by just waiting.

Exactly. Thats what i meant.

Feel free to try and tackle it ;) It's just a matter of playing a lot with new Visjs and seeing if it fixes this issue or not :)


yielding: propagate exceptions from yield_env to the process env

This makes them surface and prevents crashing when trying to access the result of an exception-terminated yielding NIF.

needs restoration of async zig before continuing


Use built-in APIs for file picker HWND interop

This replaces the call to WinUIEx’s GetActiveWindow with the content island environment API in WinUI 3. This increases correctness by ensuring the window handle is the window associated with the table view (in case that window is not focused when this call is made). It also reduces complexity by removing a dependency, as WinUIEx is not needed for anything with this change.

Thank you so much for your valuable contribution, @BreeceW. I really liked the idea of cutting down the dependencies.


( test script) Move Port/Device/IP configuration from test script to comon fixture

Move al common coding like Port/Device/IP etc on fixture . Otherwise we may not get good feedback from user. Wrap this into a fixture.

Explore not to import all lases individually  in test script.

Use similar like fixture

def b2b_ipv4_device_groups(tx_port, rx_port):
"""Returns a B2B tuple of tx devices to rx devices
Protocol stack is eth + vlan + ipv4
Number of devices is 1
"""

This repository now only holds unit tests where config in most tests are provided as a fixture.


Block event changes

This PR adds cursorPosition to PlayerBlockInteractEvent, PlayerUseItemOnBlockEvent andBlockHandler
it also adds blockFace to PlayerBlockBreakEvent and PlayerStartDiggingEvent

Please accept pr, literal life changer


Remove confusion in docs

fixes issue 268 in 11ty/eleventy

Hey. Hm, I’m not too happy with either the current version or your proposed version.
First of all, the includes directory is not meant for data in general. That purpose is served by data files which are a different concept.
What do you think about the following?
- Controls the directory inside which the template includes/extends/partials/etc can be found.
+ Controls the directory inside which the templates, extends, partials or other includes can be found.

(For reference, the discussion around this started in https://github.com/11ty/eleventy/issues/268.)

Controls which directory is the includes directory. The includes directory is meant for templates, extends, partials or other includes like macros and brand assets.

I think we can get rid of this line, seems redundant?

Controls which directory is the includes directory.

I like what you’re going for here, I wonder if it would be better like this?

The includes directory is meant for templates include files, extends files, partials, or macros. These files will not be processed as Eleventy templates, but can be consumed by other templates.

@zachleat ,We can certainly get rid of that line.
Removing 'templates' form that line can still cause confusion as layout templates are stored in the includes directory too.

How are you defining a template? To me a template is any string using template syntax—it could be content, an include, macro, partial, layout, anything.
To say something is a template doesn’t really give any extra context about what that thing is?

See also #24

What about this -

The includes directory is meant for layout templates, include files, extends files, partials, or macros. These files will not be processed as input files, but can be consumed by other templates.

Yes I like that a lot @coolshaurya!

Done - changes committed

Shipped! Thanks for iterating on this!


Moving the speed to 0 then back keeps speed at 0 until hitting pause then play

@ian-h-chamberlain

This is fixed in #55

Apparently I was mistaken, I will look back into this


new: add support for using environment variables in configuration

This PR adds support for pulling environment variables prefixed with PIXY_ into the configuration file pixy.yaml. This allows for referencing runtime-available information from the environment in the config file, which is also useful for sensitive information such as passwords/API tokens/etc.
Closes #11

hmm, on some further thoughts this will make it harder to implement mqtt templating for publishing to different topics. Closing this for now, going to revisit this later


Update

Could you update this? My app throws warning
Warning: Accessing PropTypes via the main React package is deprecated, and will be removed in  React v16.0. Use the latest available v15.* prop-types package from npm instead. For info on usage, compatibility, migration and more, see https://fb.me/prop-types-docs

Created PR #3 for the upgrade

Should be fixed by 8781e9588cfb5b547e3cae1ead862622d78a536d commit. Upgrade your react-reveal version to ^0.2.0.


Upload commons-fileupload:commons-fileupload from 1.3.3 to 1.4

Task Description
We need to upgrade commons-fileupload:commons-fileupload from 1.3.3 to 1.4.
Tasks
The following tasks will need to be carried out:

[ ] Update the version in the strongbox-parent project.
[ ] Apply any required code changes, or dependency excludes.
[ ] Test and confirm that there are no issues with the core projects (strongbox, strongbox-web-integration-tests, etc) after upgrading.

Task Relationships
This task:

Relates to: #1847 , #1859

Help

Check our article on how to upgrade dependencies and plugins.
Our chat
Points of contact:

@carlspring
@sbespalov
@steve-todorov

Can I pick this up @carlspring ? :)

Yes, please! Go for it! :)

Is this moving forward?

@flaix ,
No, it isn't, so please, feel free to pick it up! :)

@carlspring , wasn't that commons-collections?
Anyhow, this should be ready for review if I understood the directions correctly.

Ah, yes, you're right. You can pick that one too, if you like. :)


Fix build tags for gccgo

According to document of build tags, space equals to OR, comma & newline equals to AND. So the logic of build tags of gccgo is wrong, causing errors when using gccgo.

Thanks!


Demo contributor PR

A demo "contributor PR" that hopefully demonstrates azure and circle both looking nice for contributor PRs...

Closing this PR - it's served its purpose


Still no ORDER BY in outer query

A while ago I filed #7512. While the test that triggered that issue was modified to pass (#7526), it seems like the root problem is still there (despite additional work in #7525).
Running OrderBy_coalesce_skip_take_distinct_take on Npgsql in 2.0.0-preview1 fails. The generated SQL is as follows:
SELECT DISTINCT "t".*
        FROM (
            SELECT "p"."ProductID", "p"."Discontinued", "p"."ProductName", "p"."UnitPrice", "p"."UnitsInStock"
            FROM "Products" AS "p"
            ORDER BY COALESCE("p"."UnitPrice", 0.0)
            LIMIT $1 OFFSET $2
        ) AS "t"
        LIMIT $3

As in #7512, the outer query contains no ORDER BY, and unlike SqlServer PostgreSQL does not seem to preserve the ordering imposed in the inner query - so output from the query is non-deterministic in order.

Oops! Looks like the test which was modified returned back in code. Based on the logic, EF applied after Distinct, there are 2 options here

Remove the test as the results are non-deterministic.
Keep the test as it works when inner ordering is preserved (Linq/SqlServer/SQLite) does that. Providers which does not preserve inner ordering have to skip the test.

@anpete - Thoughts?

I have no problem skipping the test in Npgsql, but don't you guys have an issue with this varying behavior across providers, given the same LINQ? I mean, it's entirely possible to enforce deterministic results by adding an ORDER BY clause to the external query - this seems like the correct way to solve, even if it's more effort on your end.
(I'm not sure if this additional ORDER BY clause, which is useless on SqlServer, would impact performance in any way, if so you could allow providers to specify whether it's needed or not)

https://github.com/aspnet/EntityFramework/blob/dev/src/EFCore.Specification.Tests/QueryTestBase.cs#L7586
There is already test which has order by after Distinct & before take. Therefore I suggested first option to remove the test.
The test in  way verifying that we generate exact same SQL as linq was written (with potential of wrong results). Even Linq would give different results based on how Distinct is implemented. Luckily for default behavior of Linq it preserved ordering. I believe, Linq does not guarantee the order so no EF provider should try to work-around it. If user wrote such query then results will be non-deterministic. Optionally we can throw exception blocking such queries.

Ah, I wasn't aware of the lack of a guarantee in LINQ - is there any sort of specification? And what do you mean by the "default behavior of LINQ", is there not simply the LINQ to Objects as the sole implementation?
In general, it was my impression that the goal is to make EF Core behave as closely as possible to LINQ to Objects, which is why a lot of your tests simply compare the answers coming out of both systems. Saying that you leave this behavioral aspect weakens that. Of course, it may not always be possible for providers to mimic LINQ to Objects behavior, but in this case it does seem possible (albeit with effort on the core side).

Test infra for complex navigations tests adds client side ordering to make results deterministic (at least top level projection). We could add this to other test suites

@maumar - Complex nav did that for deep comparison. But that is testing thing. Given Customer.Orders all orders will be there and the ordering is not guaranteed.
We could have done the same just for the case of Distinct but when you apply skip/take afterwards, the results returned are totally different. Even if you apply ordering while testing, it won't help.

@smitpatel deep comparison is one thing (for includes) but we also do generic orderby for all queries, unless they explicitly assert the order. Basically, we execute the test query, and the baseline query. And then apply ordering in memory to both. There is also asserter func to specify which column to order by, in some complex objects are returned

No, we don't.
TestHelpers.AssertResults method does contains check in the absence of asserter & assertOrder.
When user writes a query without orderby the results can arrive in any order which depends on the provider (SqlServer returns rows sorted by PK by default but linq/ix-async can return in different order based on how they are implemented.) If user wants the results to be order, there has to be order by. Therefore we do contains check because it is possible for database to return result in different order than linq. It magically works for SqlServer but not for all providers.

ComplexNavigations uses different logic - we always provide default post-execution ordering - see AssertQuery methods on ComplexNavigationsQueryTestBase

@maumar - Checked that class. We only order for AssertIncludeQuery (We can get away from it if we find the matching element in other set and then compare navigations). Normal AssertQuery still delegates to TestHelpers.AssertQuery.
That being said, if the query does not have ordering specified then we should not verify ordering. It is optional to put ordering for tests but contains is better concept due to the non-deterministic behavior.

I don't see how contains is better. Sorting in memory and then ordering is definitely faster than contains. Also, contains can give you false positives, e.g. expected: { 1, 2, 3, 4, 4 }, actual: {1, 2, 2, 3, 4 }.
The way complex navs tests are designed - if you want to verify order, you set the verifyOrdered flag to true, and then client ordering is skipped (so the original order of the results is verified). Otherwise, we apply client side ordering, after the query has been executed.
Default ordering is (e => e) which works out of the box if we return collection of scalars. If we return entities or complex types, you need to provide the ordering func in the AssertQuery explicitly (e.g. e => e.Id), otherwise test will throw (trying to order by collection of non-order-comparable objects).
ComplexNavs use AssertResults overload starts on line 414, which doesn't use Contains at all.

Duplicate results is fair point. Also ordering provides some perf benefit for testing. Can you file a new issue to introduce ordering while verifying results? There would not be any impact on this issue regardless.

@smitpatel filed #8617

Talked to @smitpatel about this at length. I have tried to capture here the conclusions (from my point of view :smile:):

Given the current design, it should be fine to either remove this test or convert it into a more ad-hoc test that only asserts the result contains 3 elements, but the value of the latter would be minimal.

We probably won't do this immediately, so the recommendation for @roji and provider writers is to just skip it for now

Re the functional problem with non-deterministic results, which is caused by paging operations in absence of order:

We had the idea that those could cause a warning. We remember discussing similar things already.

I personally believe the argument made by @roji at https://github.com/aspnet/EntityFramework/issues/8606#issuecomment-304314370 holds:

It is hard to find anything like a specification saying that Distinct() does not preserve the order (I only found a comment from @mattwar in a forum), but the implementation of Enumerable.Distinct() is unlikely to change.
It is nice to get closer to the LINQ to Objects behavior in other providers. We may not always do it because it isn't possible or because we believe that the case is uncommon and the priority isn't high.

I would like to decide in triage if this is something we care enough to have a warning or to have an issue in the backlog about trying to "fix" it.

Great, sounds good. I'll disable affected tests for now, linking back to this issue. Making distinct order-preserving across providers is definitely not the most important thing to do in EF Core right now, but I'm glad you guys see it as a goal.

The LINQ spec does not claim that the items are ordered the same after Distinct, but the Enumerable.Distinct does this anyway.  The reason its not spec'd to be this way is the impractical cost it would push onto actual database queries.

@mattwar thanks for chimmimg in. Indeed, potential cost on database queries is another reason to avoid it.

I'm still not sure of the value of discussing the LINQ spec here - it seems to me that developer expectation is for behavior to correspond to Enumerable.Distinct. But it's true that adding ORDER BY to the DISTINCT outer query would probably have at least some performance impact, even if done only for PostgreSQL/Npgsql. I'm OK if you guys want to close this.

@roji I think we are in agreement about the developer expectation. What is somewhat relevant about the "spec" is that this was intentionally left up to providers by the original LINQ designers.
Personally I am leaning towards having a warning. We will discuss it next time we triage.
Just to add some more information, for this particular case, the Distinct() operation is superfluous and we could optimize it out: the projection includes the keys of the only query source (e.g. there are no SelectMany() or joins). Incidentally that would make the translation of this query simple and the order deterministic. I have created #8643 to track that.

FWIW, the documentation for Enumerable explicitly states that the resulting sequence is unordered:

The Distinct<TSource>(IEnumerable<TSource>) method returns an unordered sequence that contains no duplicate values.

https://msdn.microsoft.com/en-us/library/bb348436(v=vs.110).aspx#Anchor_2

@tuespetre ok, thanks for that... I guess that can mean this issue can be closed, even though I still feel there's a "surprise effect" there. However, if the docs are explicit on this point it's probably not worth the effort needed to ensure order preservation. I guess the EF Core team should make the decision on this.

@divega Should we re-tirage?

What was the decision made while putting this into backlog?

@smitpatel I think the warning the @divega refers to.

I think that was the conclusion from what I remember: warning for paging operations in absence of order.

I think warning should be more than enough.
@roji - In general we try to be as close to L2O as possible. Especially when linq has stronger semantics or cost to achieve that is not high. e.g. string.StartsWith/EndsWith/Contains are not translated to just SQL LIKE they are translated differently so that it can be closer to linq. It was easy to do in the sense that it needed just bit different SQL to be generated. But on the other hand, case sensitivity is still different. Linq is case sensitive but SqlServer is not by default. Since trying to make it case sensitive is difficult task (setting collations on columns etc), we decided not to do it. It would causes same surprise effect in case of client eval. In our tests for SqlServer, we generate case insensitive l2O query specifically. In the end, if the user is relying on case sensitivity then they would also be aware of SqlServer being case insensitive.
This is bit hard to discover but similar example. There will be somewhat surprising effects, but if user requires particular page results to be generated there would be order by added. Issuing warning will avoid the discoverability issue and let user know that query is provider dependent.

Paging? :thinking: I thought this was about Distinct :laughing:

@smitpatel I understand what you're saying and also agree in general. The problem in my mind is not surprise effect because of client eval, but rather what it would take to create a cross-database application with EF Core. The more areas which are left "undefined" such as case sensitivity - where each provider does their own thing - the more problematic this is going to be.
I actually don't think it applies very much to this issue... Yeah, a user coming from SqlServer to Npgsql will be surprised to see Distinct() not preserving order, but it's easily fixable by the user themselves adding an additional OrderBy() after the Distinct() (plus even the official docs says not to rely on order coming out). The equivalent for case sensitivity is unfortunately much less clear.

@tuespetre I think the point was that the non-preserving nature of Distinct() creates problems for paging (i.e. users paging through a big list in a webapp), since paging in general goes together with ordering.
The case sensitivity discussion is a continuation from #9126

@roji From the beginning of EF Core one of our principles has been that we would not attempt to create a full abstraction over the underlying database such that an application would work the same if moved from one database provider to another. There are two main reasons for this:

It's pretty much impossible to do anyway unless you either go for a lowest common denominator approach (which greatly limits usefulness) or jump through hoops to try to simulate things that are not supported in unnatural ways. Even then there always tend to be subtle differences, which means in practice if you want to work with multiple different databases you really need to test, test, test anyway.
We want to make sure that the native capabilities of underlying databases are exposed in an easy-to-use and sensible manner. So, for example, if I know that SQL Server has some feature that I want to use, then I should be able to use it easily without spending a lot of time figuring out how it has been abstracted.

So instead of trying to always behave the same for every provider, we instead try to create common patterns and concepts, both in API and behavior, that can be implemented by different providers in natural ways, but which may behave slightly differently in different providers because that makes best use of the provider's native functionality. A good example of this is key generation--integer keys are value generated by convention on any provider, but different providers use different mechanisms to implement this. These different mechanisms mean that the behavior can be different between different providers--e.g. temp keys or not--but at a high level EF, the provider, and the database will always work together to generate some key value that will be valid and fixed after SaveChanges.
As @smitpatel and @divega have been saying, we do try to make things consistent without doing things that are unnatural for the underlying database, but where there are native differences it is also in keeping with the spirit of EF Core to let those differences surface.
The bottom line is always that if you're going to use different databases, then they may behave differently, and testing is the only real way to be sure that the application works as expected.

@ajcvickers I understand and agree. However, compare key generation with case sensitivity: it's enough to have an int column named Id, and it will automatically be setup as autoincrement - be it identity in SQL Server, serial/sequence in PostgreSQL, etc. In other words, it's an abstraction that happens to work really well, since different low-level database-specific mechanisms produce the same end result and the user can ignore the plumbing. Case sensitivity is something that the user simply cannot ignore, as it affects their code directly, e.g. every time they do an equality check.
I really think it's a case-by-case thing. If making SQL Server case-sensitive is too complicated, then so be it - at the end of the day we're constrained by what our databases allow us to do. On the other hand, note how we managed to do things well with LIKE escaping - we provided an API which will (hopefully) work the same across databases, by being very clear about the expected behavior (no escape character by default), leading the Npgsql provider to do what is necessary to work that way. It wasn't a lot of hoops, so it made sense, and everyone benefit from uniform behavior and less surprises when moving across databases.
So I'd hope that providing uniform behavior across databases be a "soft" goal of EF Core, always as a function of effort needed to make it so.

@roji Agreed. So if we can be consistent without forcing a provider to do unnatural and/or expensive things, then we should. But it's also fine to say that the behavior may be different.

@roji We discussed this again and decided that the provider should override this test with a custom implementation, or possibly just keep it disabled if it is not providing (no pun intended) enough value.


Implement execute for TaskAddCommand

Fixes #102

Added TaskList as a field to AddressBook

Codecov Report

Merging #107 (9edd862) into master (9dddd1a) will decrease coverage by 0.43%.
The diff coverage is 5.55%.

@@             Coverage Diff              @@
##             master     #107      +/-   ##
============================================
- Coverage     66.03%   65.60%   -0.44%
- Complexity      422      423       +1
============================================
  Files            86       86
  Lines          1428     1445      +17
  Branches        158      159       +1
============================================
+ Hits            943      948       +5
- Misses          443      455      +12
  Partials         42       42

Impacted Files
Coverage Δ

...u/address/logic/commands/tasks/TaskAddCommand.java
50.00% <0.00%> (-37.50%)
:arrow_down:

src/main/java/seedu/address/model/Model.java
100.00% <ø> (ø)

...rc/main/java/seedu/address/model/ModelManager.java
92.15% <0.00%> (-7.85%)
:arrow_down:

...a/seedu/address/model/person/UniquePersonList.java
88.37% <0.00%> (-4.32%)
:arrow_down:

src/main/java/seedu/address/model/AddressBook.java
79.31% <20.00%> (-12.36%)
:arrow_down:

...c/main/java/seedu/address/model/task/TaskList.java
9.75% <0.00%> (+9.75%)
:arrow_up:

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Update jquery version

Updated package.json :

set library compatible with jQuery version 3
use of peerDependencies instead of dependencies (allows NPM to warn the user if two different versions of jQuery need to be installed)

Hey, @alxscms thank you for this contribution, do have any idea if this pull-request will be merged at any point ?

Hi @charlespernet, I've got no idea, never got news from main contributors

@alxscms thanks for the pull request!
Sorry for the delay.


[enhancement]: Hi-Res Fix

Is there an existing issue for this?

[X] I have searched the existing issues

Contact Details
No response
What should this feature add?
Will the Hi-Res Fix feature return to InvokeAI 3.* ? Can't find it in 3.0 and used the feature a lot in the 2.* versions. It might be possible to implement that through the notes feature but it would be really nice to simply get the toggle back for the txt2img tab if possible.
Alternatives
No response
Aditional Content
No response

Currently, this is only planned to be available through nodes - there's some example HRO graphs being shared in the Discord.
Here's an example one you can try: https://discord.com/channels/1020123559063990373/1130642855342395452/1132821533539180615


Unity 2017 F3 Error on loading camera rig

Get this error on windows when I drop in the camera rig prefab:
Failed to load IVRRenderModels interface version IVRRenderModels_005 UnityEngine.Debug:LogError(Object) RenderModelInterfaceHolder:get_instance() (at Assets/SteamVR/Scripts/SteamVR_RenderModel.cs:90) SteamVR_RenderModel:SetModel(String) (at Assets/SteamVR/Scripts/SteamVR_RenderModel.cs:281) SteamVR_RenderModel:Update() (at Assets/SteamVR/Scripts/SteamVR_RenderModel.cs:674)

Can you kindly tell me how you solve this problem?
Thank you very much!

Actually I thought it was solved but VRTK had actually show me the controllers once. SteamVr doe not support Oculus on Unity. No matter what there site says.

Why steamVR doesnt support oculus? All works fine with oculus for me.

Yup. SteamVR works just fine with the SteamVR plugin in Unity. It also just works fine in VRTK, but that's for another repo.
The issue's error is about the included OpenVR plugin not being able to get the needed interface IVRRenderModels. I suggest removing and reinstalling the SteamVR plugin, making sure it's up-to-date. Also check whether your SteamVR runtime is up-to-date, too.

Thanks I will :)
On Sun, Aug 27, 2017 at 2:35 AM, Christopher-Marcel Böddecker <
<EMAIL_ADDRESS>wrote:

Yup. SteamVR works just fine with the SteamVR plugin in Unity. It also
just works fine in VRTK, but that's for another repo.
The issue's error is about the included OpenVR plugin not being able to
get the needed interface IVRRenderModels. I suggest removing and
reinstalling the SteamVR plugin, making sure it's up-to-date. Also check
whether your SteamVR runtime is up-to-date, too.
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/ValveSoftware/steamvr_unity_plugin/issues/52#issuecomment-325184872,
or mute the thread
https://github.com/notifications/unsubscribe-auth/Ads3AQkSEiCoIq-0CIGeCDD9R-oCbnQ9ks5scSpOgaJpZM4O-GEo
.

--
Christian Owner of Solo Projects Studios

https://www.facebook.com/arteddiechristian

Wow I don't know what Unity was bugging out about. But after a complete reinstall it's actually working!! :) THanks I had actually given up after 3 days of errors.


Support SQL Server Data Source

Is your feature request related to a problem? Please describe.
I'd love to give CueObserve a try but our warehouse is currently in MS SQL Server.
Describe the solution you'd like
Add SQL Server as a supported data source.
Additional context
I'd be interested in making the necessary pull request, but I'd like some high level advice on what might be needed.
Is it as simple as adding the necessary sqlserver.py in https://github.com/cuebook/CueObserve/tree/main/api/dbConnections ?

Yes @adam133 it should be simple enough. Please follow the following steps to add SQL Server support:

Add the SQL Server connection type in seed data here: https://github.com/cuebook/CueObserve/blob/main/api/seeddata/connectionType.json
Add the required params to connect with SQL Server here:
https://github.com/cuebook/CueObserve/blob/main/api/seeddata/connectionType.json
Add the necessary sqlserver.py in  https://github.com/cuebook/CueObserve/tree/main/api/dbConnections. You can connect to SQL Server using pandas so you don't need to add any additional drivers.

@vikrantcue Running into some issues getting a MSSQL driver configured - I always have trouble with Linux SQL Server drivers. I'm not sure what you mean by saying that pandas has them built in - as far as I can tell it still needs a compiled DBAPI for MSSQL of some kind to connect.
Additional modifications I found that are needed:

https://github.com/cuebook/CueObserve/blob/main/api/dbConnections/utils.py - limitSql needs to comply with SQL Server's "top N " syntax instead of " limit N".
https://github.com/cuebook/CueObserve/blob/main/api/dbConnections/tests/test_utils_dbConnections.py - add a test for the SQL Server version of limitSql, and a test connection for SQL Server.
https://github.com/cuebook/CueObserve/tree/main/ui/src/assets/img - need to add a sql server SVG.

I don't have any of that functioning yet, just wanted to post an update on my findings.

Hi @adam133, pandas has read_sql function to connect to various servers, please try this for connecting MSSQL to pandas dataframe.

https://github.com/cuebook/CueObserve/blob/main/api/dbConnections/utils.py - limitSql needs to comply with SQL Server's "top N " syntax instead of " limit N"

Yes, it needs to be considered, either by creating a separate function or changing the function where limiting keyword ("limit" or "top") can be passed as a parameter.

@adam133 a few others are asking for SQL Server support. Our team would be happy to pick this up, so that we can make it available in our next release.


java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 54

Describe the bug
With the new version 1.5.1, I can't run my previous plugin at all. O_o
Every time I try to open the inventory the server shows me an error in the header.
Error
https://pastebin.com/fMMMK18v
To Reproduce

run my code in your localhost

Expected behavior
I want the inventory to open.
Code (Optional)
https://pastebin.com/VRA4rsCr

As already mentioned, you can:
int size = pagination.inventory().size(contents);
not so easily. As already explained in the previous post.
Furthermore, I can't try your code and see what the problem is, because you use some classes there that I don't have.
I'll still try to reproduce your problem as good as possible.

I already answered earlier that I can't help but get the size of the current page, as it is necessary for further logic. Perhaps I need some alternative?
As for your suggestions that you can't run my code on your own, that's not true. You don't need my custom inventory classes at all. Instead, you must specify the values yourself. I did it for you without my custom clasess in this code: https://pastebin.com/xwv5cnDL
Please try it.

Fun fact, you have not defined your start slot in the SlotIterator. Thus the start slot is -1 and thus the error comes. Maybe I should describe the error better or throw an error.

it's really works for me, lol
thanks

it's really works for me, lol thanks

Glad to hear👍


Add IBAN analyzer

As requested in issue #35
Not sure if this needs to be attached somehow, or it's automatically loaded?

Ok Added it to the init. The testing was actually really useful while developing, since those regex and checks can be fiddly and break easy with small changes. :)
Btw I noticed that the CreditCardAnalyzer might not actually work correctly... Or only if the CC numbers are nicely line by line without other text.


Bug 2069512: Update imgcrypt 1.1.1 => 1.1.4

/assign @adambkaplan @gabemontero

/retest-required

/retest

/retest

/retest

/skip

Now I'm confused. I'm looking over the vendor tree, and github.com/containerd/imgcrypt is nowhere to be found.
Unclear how this repo got tagged for CVE-2022-24778, this component is not affected.

I pushed an update to containerd v1.6.2 and replaced containerd/imgcrypt to 1.1.4, I am guessing that v1.6.3 will have the new imgcrypt, so next time we can up to that and remove the replace.

/retest-required
/skip

/close
Since imgcrypt is not a direct dependency


test

The following west manifest projects have been modified in this Pull Request:

Name
Old Revision
New Revision
Diff

hal_ambiq
d176b56849bbe2e23487af01833152ac234cb848
None
N/A

Note: This message is automatically posted and updated by the Manifest GitHub Action.


Laue Symmetrical (or asymmetrical for alpha=90deg) is buggy

Dear Sergey,
yes there is a problem in Laue symmetric, an undesirable switch that makes that it does not work correctly for symmetric Laue or asymmetric if angle is set at exactly 90.0 deg. The temporary solution is to set Laue asymmetric and set the angle near but not exactly at symmetric position, for example 90.001 deg.
I hope this answers your question.
Best regards,
Manuel
On 25.01.2020 10:08, Sergey Rashchenko wrote:

DEAR MANUEL,
Thank you for your efforts in developing Oasys!
Currently I am trying to study dispersion introduced into reflected
beam by Laue monochromator, and faced an unexpected behavior of SHADOW
(see attached workspace):
when I trace a parallel beam from a point source through symmetric
Laue crystal, no dispersion appears in the reflected beam in contrary
to theory (see also attached screenshots). I also checked symmetric
and asymmetric Bragg cases - they seem to give correct results. Is
this a bug, or just my misunderstanding of theory?
SINCERELY,
SERGEY V. RASHCHENKO, PH.D.
Budker Institute of Nuclear Physics
Novosibirsk, Russia

This is fixed in shadow3 22.8.20 and ShadowOui 1.5.201


bump version to 0.43

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 84.67%. Comparing base (a375242) to head (b88a08c).

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #55      +/-   ##
==========================================
- Coverage   84.69%   84.67%   -0.02%
==========================================
  Files          15       15
  Lines         980      979       -1
  Branches      980      979       -1
==========================================
- Hits          830      829       -1
  Misses        103      103
  Partials       47       47

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


[core] GetGamepadAxisMovement() is not returning expected value

Please, before submitting a new issue verify and check:

[x] I tested it on latest raylib version from master branch
[x] I checked there is no similar issue already reported
[x] My code has no errors or misuse of raylib

Issue description
GetGamepadAxisMovement is not returning correct values.
They should be returning a unit circle for x and y but seem to be returning a 1 and a 0.5 when I hold diagonally,
It also doesn't seem to be able to represent more then 8 directional movement.
Environment
OS: KDE neon 5.25
Processors: 16 x AMD Ryzen 7 5700G with Radeon Graphics
Graphics Procceser: AMD RENOIR
Rock Candy Xbox 360 controller
Issue Screenshot
This is me holding diagonally down left

Code Example
velocity.X = GetGamepadAxisMovement(0, GAMEPAD_AXIS_LEFT_X) * speed;
velocity.Y = GetGamepadAxisMovement(0, GAMEPAD_AXIS_LEFT_Y) * speed;
position.X += velocity.X;
position.Y += velocity.Y;

@Shadowblitz16 I'm afraid this issue could be related to the gamepad mapping, not detecting the correct Gamepad.
Just updated to latest GamecControllerDB.

@Shadowblitz16 I'm afraid this issue could be related to the gamepad mapping, not detecting the correct Gamepad.
Just updated to latest GamecControllerDB.

How do I do that?
I use the C# version of raylib.
rock candy xbox 360 controllers are kinda old too.

@Shadowblitz16 you should test the C gamepad example

@Shadowblitz16 you should test the C gamepad example
I did twice.
The first time I thought it was raylib only, but the second time a noticed in the gamepad example that my axes were things like... 1, 0.5
and
1, -1 when pressing diagonal, and my movement was only going in 8 directions and not 360.
Also the devs of raylib-cs said it was a problem with c raylib.

@raysan5


x/build: add linux-arm-aws to the set of trybots

As per our goals of including a trybot for any platform that can cause a release blocking issue (#29239), we will add linux-arm-aws to the set of trybots. It should be able to complete the trybot run limit of 10 minutes. These new trybots will help solve various open issues linked to host resources (#35628, #40872).
This change will require renaming the linux-arm builders to linux-arm-scaleway because there is a need to map the AWS instances to some slowbot aliases.
@golang/release @cherrymui

SGTM, thanks.
As of now the old linux-arm builders don't seem to be provide much. Maybe we can consider just removing them.

I would like to keep the Scaleway builders around until we no longer support Go 1.15. We used Scaleway builders to package Go 1.15 and I would like to continue using the same configuration to package the rest of Go 1.15. I can discuss it with the team today to ensure that this is a good idea.

Okay, thanks for the information.


walking progress messages

For dwalk / any tool that does a walking step. This was reported by @ofaaland using drm.
If the file hierarchy is made up of many empty directories, the Walking progress messages could make it appear as if the tool is hung. This is due to the fact that it is fast to discover the number of empty dirs, but the subsequent getdents call on each dir takes a while.
Example output:

[2019-07-10T09:17:37] Walking /p/.../dir
[2019-07-10T09:17:51] Items walked 63921
[2019-07-10T09:18:01] Items walked 63921
[2019-07-10T09:18:11] Items walked 63921
[2019-07-10T09:18:22] Items walked 63921
[2019-07-10T09:18:32] Items walked 63921
[2019-07-10T09:18:42] Items walked 63921
[2019-07-10T09:20:55] Items walked 63921
[2019-07-10T09:21:04] Items walked 63921
[2019-07-10T09:21:05] Walked 63921 items in 207.115070 seconds (308.625539 files/sec)

Requested output:
Something along the lines of:

Items walked 63921
Examining items 0 / 63921
Examining items 1000 / 63921
Examining items 5500 / 63921

These progress messages are coming from our libcircle reduction callbacks here.
https://github.com/hpc/mpifileutils/blob/2de9b3076cc7738eeae68a3d0000f408620bc308/src/common/mfu_flist_walk.c#L80
We could look at adding a second counter, one to track number of items discovered, and another to track number of items completed.  For files and symlinks, we'd bump both counters at once.  For a directory, we could increment the discovered counter right away, and then increment the completed counter after we call closedir().

That would be good, maybe something along the lines of:

Items walked x / n

Where x is the number of item's examined, and n is the number of items discovered. I think users would understand if both x and n are increasing during the walk phase. It would also indicate that the walk phase is over once x == n.

Merged https://github.com/hpc/mpifileutils/pull/297 to increment the reduction counter after processing a directory rather than upon first discovering it.  This way we don't count the directory until we are fully done with it.  We could still add a second counter to track discovered-but-not-yet-processed items later as we first discussed here.  However, since we have a fix for the original report, I'll close this issue out.
Thanks for reporting the issue, @ofaaland !


Intermittent files missing in Azure Storage Blob after upload

After excuting this step in my github action.
  - uses: LanceMcCarthy/Action-AzureBlobUpload@v2
    name: Upload application files to Azure Blob
    id: upload
    with:
      connection_string: ${{ secrets.AZURE_CONNECTION_STRING }}
      container_name: '${{ env.Software_Publish_Container }}'
      destination_folder: '${{ env.Software_Publish_Blob }}\Application Files'
      source_folder: '${{ env.Publish_Path }}\Application Files'
      clean_destination_folder: false
      is_recursive: true
      delete_if_exists: false

when I have then come to check the  destination_folder in Azure Storage Explorer sometimes files are missing.
I thought maybe there would be a delay in them appearing but after waiting 10mins and refreshing the files did not appear.
These files are dll and needed for the deployment of the application I am uploading
The source_folder structure is sort of like the following
 - Application Files
       - Application Name_1_0_0_0
           - Applicatoin Folder
           - Applicatoin Folder
           - Applicatoin Folder
           - Applicatoin Folder
           - Applicatoin Folder
           - a.dll
           - b.dll
           - c.dll
           - d.dll
           - e.dll
           - application name.manifest

Sometimes it misses a couple dll file or it misses the .manifest file
The print out of the github action says all of them uploaded successfully.
Similar to this issue:
https://github.com/LanceMcCarthy/Action-AzureBlobUpload/issues/113
Please advise how best to fix this.

Hi Liam, thank you for taking the time to prepare and share those details.
The first time this happened, it was because of Azure's policy on snapsopts. However in your case, you are not removing the last build before uploading the new one.
In this case, the problematic files seem to always have the same name: the appx/app manifest and the output DLLs will always have the same file name. so I suspect this is due to not having the ability overwrite what you already have in that destination folder.
As a workaround while I research this, can you please try setting clean_destination_folder: true
Since you're doing a build and uploading the same files again anyways, it shouldn't have any effect on the final outcome... you will just be ensuring that all the destination files are always the latest verion.

I just had a follow-up thought. It seems some of the affected items have spaces in their files paths.... this might be triggering the auto-fix mechanism that prevents duplicate paths (and stripping out the duplicate).
Can you please also try using an underscore in the file paths. For example, notice how I've replaces spaces with an underscore
- Application_Files
       - Application_Name_1_0_0_0
           - Application_Folder
           - Application_Folder
           - Application_Folder
           - Application_Folder
           - Application_Folder
           - a.dll
           - b.dll
           - c.dll
           - d.dll
           - e.dll
           - application_name.manifest

If you must keep the spaces, try using a URL-encoded space character so that it is safe for transit
- Application%20Files
       - Application%20Name_1_0_0_0
           - Application%20Folder
           - Application%20Folder
           - Application%20Folder
           - Application%20Folder
           - Application%20Folder
           - a.dll
           - b.dll
           - c.dll
           - d.dll
           - e.dll
           - application%20name.manifest

I have started investigating and will attempt to replicate your results by using the same target path names.

Cheers I will try and implement that now and let you know how I get on.

If it help in your investigation, each time we publish, a new folder is created with the corresponding version after the Application Name.
For example:

Application Files
- Application Name_1_0_0_0
- Application Name_1_0_0_1
- Application Name_1_0_0_2
- Application Name_1_0_0_3
- Application Name_1_0_0_4
and so on

each have the foremetioned file structure inside them.

When we published into a pre-existing folder say  "Application Name_1_0_0_3"
with: clean_destination_folder: true
it worked 3 out of 3 times.
once we published and a new folder created say Application Name_1_0_0_5 with the upload it missed files.
this time the file missed was:

zh-Hans/Microsoft.Data.Edm.resources.dll.deploy

Aha! Okay so your issue is because you're not delete the duplicate file (e.g., the manifest will still be the old one).
To address this, please set delete_if_exists to true (instead of false).
this will ensure that the newer app.manifest file (and newer build dll) gets uploaded and replaces the old one. Don't worry about the other "Application Name" folders, they will stay there because you have clean_destination_folder: false
Here's what the updated task would look like:
- uses: LanceMcCarthy/Action-AzureBlobUpload@v2
    name: Upload application files to Azure Blob
    id: upload
    with:
      connection_string: ${{ secrets.AZURE_CONNECTION_STRING }}
      container_name: '${{ env.Software_Publish_Container }}'
      destination_folder: '${{ env.Software_Publish_Blob }}\Application Files'
      source_folder: '${{ env.Publish_Path }}\Application Files'
      clean_destination_folder: false
      is_recursive: true
      delete_if_exists: true

Hi
I believe the following set up has worked as you suggested!

uses: LanceMcCarthy/Action-AzureBlobUpload@v2
name: Upload application files to Azure Blob
id: upload
with:
connection_string: ${{ secrets.AZURE_CONNECTION_STRING }}
container_name: '${{ env.Software_Publish_Container }}'
destination_folder: '${{ env.Software_Publish_Blob }}\Application Files'
source_folder: '${{ env.Publish_Path }}\Application Files'
clean_destination_folder: false
is_recursive: true
delete_if_exists: true

with 3 out 3 successfull publish.
Thank you so much for your help! 👍
As this is an intermittent, please leave the issue open for a little while and if an upload fails I will let you know :).
For my understanding please could you explain why setting delete_if_exists to true made a differences for files uploaded to folder created by the upload?
In my mind mine it shouldn't matter as no files existed as the folder didn't exist before the upload so nothing would have existed if that makes sence.
so if uploaded version <IP_ADDRESS> the folder Application Name_2_0_0_1 will be create by the upload.

Here's what I think might be happening:
Because you have clean_destination_folder: false, all of the files from the last upload are still in the destination blob when you upload again.
As an examples, let's say you have One.txt in the blob folder already. Now you've generated a new version of One.txt and also a new Two.txt that you want to add. This is what can happen sometimes:
One.txt  <- this one is still old because the Azure SDK did not replace it with the new one
Two.txt <-- this one is new, so it gets uploaded without a problem
However, if you set delete_if_exists: true, then it will delete One.txt before it uploads the new copy. This always gives you the latest copy of the file with the latest contents.
Note that's just a guess as to what is going on here. This Action has turned out to be a lot more complicated that when I first developed it :D So, I've added more functionality and features over time that handle these edge cases for certain scenarios. Most of the time, it was because of the way the SDK works, but sometimes it's because of the Blob structure/rules.
We can leave this open for a couple weeks, just in case something goes wrong again.

Awesome thank you again for your help and quick reponse :)
I'll let you know if it happens again

Closing this as there have been no further incidents in 60+ days.


Libraryupdates

@burkeholland Change in this PR corresponds to git issue: https://github.com/MicrosoftDocs/azure-docs/issues/10541 Please review and merge.

Even though Jade has been renamed to Pug, the Express generator still outputs Jade files. That means that the docs should stay the same or we would have to advise people to change over to Pug. That seems like an unnecessary step to me as Jade works just fine.

@burkeholland I think it makes sense for docs and code to be consistent, if pug updates are merged, docs should be updated to use pug or revert the changes I made to use Jade.
can you help with doc updates? or revert back the changes?

I can revert it back. I think it's such a small thing and it doesn't add
any value to the project, but at least 3 more steps to the docs.
On Mon, Jun 25, 2018 at 11:05 AM Sneha Gunda<EMAIL_ADDRESS>wrote:

@burkeholland https://github.com/burkeholland I think it makes sense
for docs and code to be consistent, if pug updates are merged, docs should
be updated to use pug or revert the changes I made to use Jade.
can you help with doc updates? or revert back the changes?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Azure-Samples/documentdb-node-todo-app/pull/12#issuecomment-400006253,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAp7c195F7f0_WU_Mjbfm2_Q4_WKiIjEks5uAQpkgaJpZM4U1Brj
.


1.4.2 - Ansible 2.12 Does Not Manage /etc/crontab

Describe the Issue
Latest release of Ansible 2.12 seems to error out when managing /etc/crontab. When running step 1.4.2, Ansible 2.12 will error with the following message:
TASK [/RHEL8-CIS : 1.4.2 | L1 | PATCH | Ensure filesystem integrity is regularly checked] ***
fatal: [example.com]: FAILED! => {"changed": false, "msg": "Will not manage /etc/crontab via cron_file, see documentation."}

Please refer to: https://docs.ansible.com/ansible-core/devel/collections/ansible/builtin/cron_module.html
The assumption is that this file is exclusively managed by the module, do not use if the file contains multiple entries, NEVER use for /etc/crontab.

Expected Behavior
While a user can modify the rhel8cis_aide_cron.cron_file setting, I would expect default configurations to handle this due to potentially unknown behavior when modifying default configurations.
Actual Behavior
Ansible will error and not modify the /etc/crontab file
Control(s) Affected
1.4.2
Environment (please complete the following information):
Ansible 2.12.2
Additional Notes
None
Possible Solution
By updating the rhel8cis_aide_cron to the following, and creating a daily file within /etc/cron.d, the command works. However, I'm not sure if this is a valid approach.
# AIDE cron settings
rhel8cis_aide_cron:
    cron_user: root
    cron_file: /etc/cron.d/0daily   <<<< This is the only change required
    aide_job: '/usr/sbin/aide --check'
    aide_minute: 0
    aide_hour: 5
    aide_day: '*'
    aide_month: '*'
    aide_weekday: '*'

Hi @ccravens
Thank you for taking the time to raise this issue, feedback that helps us to improve the benchmark.
With many clients setup in a variety of ways allowing this to be extended to a client specified location suitable for their site specific configuration. The use of vars found in defaults/main.yml have been designed in this way to be overridden based upon client/site requirements and superseded by variables elsewhere. At the same time as ensuring the core of the benchmark is still achieved.
While 2.12 and its updated module no longer allows updating to /etc/crontab, many users of the repository are on older versions of ansible, so don't experience this issue with defaults.
I will leave this issue open to be picked up for the location changed in the next release.
Many thanks once again.
uk-bolly

Ran into this as well.
Instead of updating /etc/cron.d/0daily I'd probably target /etc/cron.d/cis_aide (or similar).
Thanks for identifying the issue, saved me some previous brain cells!

This was addressed in release 2.1.0


Django: Consider moving templates into relecloud folder

Right now our views have to explicitly provide the template name, like for the detail views, and thats because we haven't nested them in a relecloud folder. If we did nest them in a relecloud folder, then more of the django auto-guessing templates logic would work. So maybe we should consider that. Probably in postgen hooks since templates is a shared dir.

Yeah I did the current setup before we had as many post_gen content. I do think that we can probably move that templatest folder although I don't think it's that out of the ordinary for there to be a templates path that can be shared across apps.


 Is there another way that allows the declaration, specification and definition of a function in a single let ..., or will I have to stick to complicated {...}s and/or separate lemmas? Is there perhaps another effect I'm not aware of yet?

The Pure effect does what you want:
let f (x:int): Pure int
    (requires (x <= 2))
    (ensures (fun y -> y <= 4))
  = op_Multiply 2 x

Sweet, thanks for the quick reply! That's probably the only effect I didn't try... :-)


Support AmneziaWG

Is there any support planned for the obfuscated version of wireguard from amnezia?
This is very important for countries where regular wireguard is blocked.
In fact, there are just a few extra fields, it is no different from a regular wireguard. I think it's not that hard to add awg support.
https://github.com/amnezia-vpn/amneziawg-linux-kernel-module

Hi @RNDpacman, I think is doable but currently I'm focused on implementing features and fixing bugs for the next minor release. So I'll check it out later. :)

Планируется ли поддержка запутанной версии Wireguard от Amnezia?
Это очень важно для стран, где обычная беспроводная связь заблокирована.
На самом деле, там всего несколько дополнительных полей, ничем не отличается от обычного wireguard. Я думаю, что не так уж и сложно добавить поддержку awg.
https://github.com/amnezia-vpn/amneziawg-linux-kernel-module

This is the best idea. 👍👍👍👍👍👍👍

Hey @donaldzou! It will be awesome if WGDashboard works with amneziawg. We have discussed this topic before, I even tried to make some fixes to make it work, but my knowledge was not enough

@EgorChadov @RNDpacman @potap1978
https://github.com/NOXCIS/Wiregate/tree/amneziawg

Full AmneziaWG support with backwards compatibility Done, over on the paranoid deployment of WGdashboard, Wiregate.

Modify dev-docker-compose.yml to your enviorment and then run

docker compose -f dev-docker-compose.yml up

NOTE: Russian IOS users are unable to get the AmneziaWG app without sideloading. Due to Goverment restrictions.

Hopefully donny will improve support with frontend configs on the upsteam WGDashboard.
Proof Of Concept
Tested on Iphone with OSX docker server.
WireGuard Wireshark Packet Inspection Results

AmneziaWG Packet Inspection Results

I don't understand what wiregate has to do with it, it's some kind of monstrous assembly of a dozen unnecessary containers. Will your panel support AmneziaWG?

@RNDpacman Ignore the other containers, they are just used for  Anonymous DNS routing & Filtering in Wiregate
I dont plan on making a PR, so im leaving it up to Donald to add the peer creation and interface control functions to support AmneziaWG in WG-Dashboard. Everything needed is done except frontend config editing.
Run this docker compose if you just want WG-Dashboard standalone that supports AmneziaWG out of the box.

services:

  wg-dashboard:
    image: noxcis/wg-dashboard:terra-fuego-beta
    container_name: wg-dashboard
    hostname: wg-dashboard
    devices:
      - /dev/net/tun:/dev/net/tun
    cap_add:
      - NET_ADMIN
      - SYS_MODULE
    restart: unless-stopped
    volumes:
      - wgd_configs:/etc/wireguard
      - wgd_db:/opt/wireguarddashboard/src/db
      - wgd_db:/opt/wireguarddashboard/src/dashboard_config

    environment:
    #Use Ofuscated Wireguard (AmneziaWG)
      - AMNEZIA_WG=true
    #Set Timezone
      - TZ=America/Chicago

    #Tor Settings
    ##########################################################
      - WGD_TOR_PROXY=false
      - WGD_TOR_EXIT_NODES={ch}
      - WGD_TOR_DNS_EXIT_NODES={gb}
      - WGD_TOR_PLUGIN=snowflake #OPTIONS webtunnel, obfs4, snowflake
      - WGD_TOR_BRIDGES=false

    #WGDashboard Global Settings
    ##########################################################
      - WGD_WELCOME_SESSION=false
      - WGD_AUTH_REQ=false
      - WGD_USER=admin
      - WGD_PASS=admin
      - WGD_REMOTE_ENDPOINT=<IP_ADDRESS>
      - WGD_REMOTE_ENDPOINT_PORT=80
      - WGD_PEER_ENDPOINT_ALLOWED_IP=<IP_ADDRESS>/0
      - WGD_KEEP_ALIVE=21
      - WGD_MTU=1420
      - WGD_PORT_RANGE_STARTPORT=4430

    #DNS Setiings Must Match
    ##########################################################
      - WGD_DNS="<IP_ADDRESS>, <IP_ADDRESS>"
      - WGD_IPTABLES_DNS=<IP_ADDRESS>

    #Obfuscated Wireguard via AmneziaWG Junk Headder Settings
    #All parameters should be the same between Client and Server, except Jc - it can vary.
    #########################################################
      - WGD_JC=5 #Jc — 1 ≤ Jc ≤ 128; recommended range is from 3 to 10 inclusive
      - WGD_JMIN=500 #Jmin — Jmin < Jmax; recommended value is 50
      - WGD_JMAX=550 #Jmax — Jmin < Jmax ≤ 1280; recommended value is 1000
      - WGD_S1=30 #S1 — S1 < 1280; S1 + 56 ≠ S2; recommended range is from 15 to 150 inclusive
      - WGD_S2=40 #S2 — S2 < 1280; recommended range is from 15 to 150 inclusive
      - WGD_H1=123456 #H1/H2/H3/H4 — must be unique among each other; recommended range is from 5 to<PHONE_NUMBER> inclusive
      - WGD_H2=67543 #H2
      - WGD_H3=32345 #H3
      - WGD_H4=123123 #H4
    ports:
      - "4430-4433:4430-4433/udp" #UDP Interface Listen Ports
      - 8000:80/tcp #Comment Out for full network lockdown
      #Access the dashboard @ localhost:8000
    sysctls:
      - net.ipv4.ip_forward=1
      - net.ipv4.conf.all.src_valid_mark=1

volumes:
    wgd_configs:
    wgd_db:

In my country protocol wireguard is blocked by providers. But on my server wg + wgdashboard is installed. I connect with client amneziyawg, which is backward compatible with wireguard, I just add parameters Jc Jmin and Jmax in the client configuration file. The problem is that when uploading configuration files via web wgdashboard these items are missing, as well as fields for user parameters in the settings. To make everything work correctly, I changed the lines in /root/WGDashboard/src/dashboard.py that form the user configuration file. It works. But it would be great if a field for user parameters appeared in the peer settings.

In my country protocol wireguard is blocked by providers. But on my server wg + wgdashboard is installed. I connect with client amneziyawg, which is backward compatible with wireguard, I just add parameters Jc Jmin and Jmax in the client configuration file. The problem is that when uploading configuration files via web wgdashboard these items are missing, as well as fields for user parameters in the settings. To make everything work correctly, I changed the lines in /root/WGDashboard/src/dashboard.py that form the user configuration file. It works. But it would be great if a field for user parameters appeared in the peer settings.

If you are comfortable with that, can you perhaps create a PR with proposed changes that would support it? In draft form is also okay. Or if you can't, detail what you would need from WGDashboard to work!

In my country protocol wireguard is blocked by providers. But on my server wg + wgdashboard is installed. I connect with client amneziyawg, which is backward compatible with wireguard, I just add parameters Jc Jmin and Jmax in the client configuration file. The problem is that when uploading configuration files via web wgdashboard these items are missing, as well as fields for user parameters in the settings. To make everything work correctly, I changed the lines in /root/WGDashboard/src/dashboard.py that form the user configuration file. It works. But it would be great if a field for user parameters appeared in the peer settings.

@CarolusFuchs WGDashboard needs to be patched to work with AmneziaWG fully.
If you try to use any of the peer modification functions it will break your config. If you try the following:

Adding a peer
Deleting a peer
Restricting a peer
Toggling the interface
Updating a peer
Download a peer
Use IPv6.

Unless you're using the kernel module version...
If you want to use want to use AmneziaWG with WgDashboard I've already patched all of the above issues over here.   https://github.com/NOXCIS/Wiregate
under the amneziawg branch. Everything works on the backend. I just have to update the peer global settings component so the junk headers can be modified from the dashboard. At the moment the headers are loaded using docker environment variables and saved to the wg-dashboard.ini like all the other peer globals.

Thank you for your quick response. I'm afraid I won't be able to make a Pull Request correctly.
I'll try to describe it in detail. I suggest adding an editable field like this to "Peers settings":

The contents of this field are inserted into the client configuration during unloading after [interface] (in the dashboard.py file, this will be after line 1261). Now I just add these lines to this file manually (screenshot in the previous message), peer configurations are then downloaded/updated/created and work in amneziyawg correctly with these parameters. To bypass blocking in most cases, client-side obfuscation is enough, because only the first handshake is blocked. As a result, the configuration during unloading will look like this:

@CarolusFuchs Proof of Concept Video From #472
WireGate using Static WGDashboard Binary with AmneziaWG Support
https://github.com/user-attachments/assets/921afd53-39c5-4d08-ae44-340d499e9292

Thank you for your quick response. I'm afraid I won't be able to make a Pull Request correctly. I'll try to describe it in detail. I suggest adding an editable field like this to "Peers settings":  The contents of this field are inserted into the client configuration during unloading after [interface] (in the dashboard.py file, this will be after line 1261). Now I just add these lines to this file manually (screenshot in the previous message), peer configurations are then downloaded/updated/created and work in amneziyawg correctly with these parameters. To bypass blocking in most cases, client-side obfuscation is enough, because only the first handshake is blocked. As a result, the configuration during unloading will look like this:

Sounds doable @donaldzou.
We can also look into how @NOXCIS does it.

@EgorChadov @RNDpacman @potap1978
https://github.com/NOXCIS/Wiregate/tree/amneziawg

Full AmneziaWG support with backwards compatibility Done, over on the paranoid deployment of WGdashboard, Wiregate.
Modify dev-docker-compose.yml to your enviorment and then run
docker compose -f dev-docker-compose.yml up

NOTE: Russian IOS users are unable to get the AmneziaWG app without sideloading. Due to Goverment restrictions.

Hopefully donny will improve support with frontend configs on the upsteam WGDashboard.
Proof Of Concept
Tested on Iphone with OSX docker server.
WireGuard Wireshark Packet Inspection Results
AmneziaWG Packet Inspection Results

hello
I really need to use amneziawg on wgdashnord
Can you tell me the installation instructions and how to use it?
I installed your script and entered the panel, but I failed to use amneziawg

@NavidYosufie Were you using the amneziawg client app?

@EgorChadov @RNDpacman @potap1978
https://github.com/NOXCIS/Wiregate/tree/amneziawg

Full AmneziaWG support with backwards compatibility Done, over on the paranoid deployment of WGdashboard, Wiregate.
Modify dev-docker-compose.yml to your enviorment and then run
docker compose -f dev-docker-compose.yml up

NOTE: Russian IOS users are unable to get the AmneziaWG app without sideloading. Due to Goverment restrictions.

Hopefully donny will improve support with frontend configs on the upsteam WGDashboard.
Proof Of Concept
Tested on Iphone with OSX docker server.
WireGuard Wireshark Packet Inspection Results
AmneziaWG Packet Inspection Results

hello I really need to use amneziawg on wgdashnord Can you tell me the installation instructions and how to use it? I installed your script and entered the panel, but I failed to use amneziawg

I think it is better suited to issue an 'issue' on https://github.com/NOXCIS/Wiregate or how is this relevant to WGDashboard?

@potap1978 - happens when tor bootstrp times out check yout tor logs.
latest build acconts for such things
use the latest image noxcis/wiregate:chimera

@NOXCIS @potap1978 Please redirect this issue to https://github.com/NOXCIS/Wiregate ;)


Tests webpack 3

Coverage remained the same at 98.734% when pulling d5121256934c818772b2b167b27cbeaecfb1f77f on tests/webpack-3 into 42deb23a60986d98808b5882a475e4c64dd649ca on master.


Kubernetes 1.16 and "extensions/v1beta1"

Hello.
I'm trying to install kubed using Helm chart into k8s 1.16 and I'm getting this error:
$ helm install --dry-run --debug appscode/kubed --name kubed --version 0.11.0 --namespace kube-system --wait --set config.clusterName=my_k8s_cluster --set apiserver.enabled=false
[debug] Created tunnel using local port: '40423'

[debug] SERVER: "<IP_ADDRESS>:40423"

[debug] Original chart version: "0.11.0"
[debug] Fetched appscode/kubed to /home/pruzicka/.helm/cache/archive/kubed-v0.11.0.tgz

[debug] CHART PATH: /home/pruzicka/.helm/cache/archive/kubed-v0.11.0.tgz

Error: unable to recognize "": no matches for kind "Deployment" in version "extensions/v1beta1"

The problem is described here:
https://kubernetes.io/blog/2019/09/18/kubernetes-1-16-release-announcement/
The extensions/v1beta1 was deprecated: https://github.com/appscode/kubed/blob/master/chart/kubed/templates/deployment.yaml#L1
Thanks for looking at it...

I have the same issue helm 3 / kubernetes 1.16.2

Also getting this with helm 3 / k8s 1.16.2, is there any workaround other than forking the chart?

the PR was merged but it seems that the fix has not been released yet - has it?

@mmisztal1980 exactly my problem as well, I am forking the repo to use it.

This should be fixed with the https://github.com/appscode/kubed/releases/tag/v0.12.0-rc.0 release.


Event Log - Include Warning entry type

I have a question - would you mind consider adding Warning messages to the container log output?
I have found that we are missing some relevant information being reported as a Warning message. For example:
Index              : 1700
EntryType          : Warning
InstanceId         : 218
Message            : Server instance: NAV
                     Tenant ID:
                     <ii>User:
                     Type: Microsoft.Dynamics.Nav.Types.Exceptions.NavAppException
                     SuppressMessage: False
                     DiagnosticsSuppress: True
                     SuppressExceptionCreatedEvent: False
                     FatalityScope: None
                     Message: <ii>The application object of type 'Table' with the ID '50130' is defined in the app 'ALProject111 by Default publisher <IP_ADDRESS>', but already exists in the base application.</ii>

I think the following should be OK:
Get-EventLog -LogName Application -After $lastCheck -ErrorAction Ignore | Where-Object { ($_.Source -like '*Dynamics*' -or $_.Source -eq $SqlServiceName) -and ($_.EntryType -eq "Error" -or $_.EntryType -eq "Warning") -and $_.EntryType -ne "0" } | Select-Object TimeGenerated, EntryType, Message | format-list

Generic <IP_ADDRESS> is out there - images being generated for all builds


Run more than 1 replica of CSI deployment

Describe the solution you'd like
We would like to deploy multiple replicas of the CSI deployment. Currently we experience a condition during rolling restarts of our Kubernetes clusters where nodes are restarted while the CSI pod is being recreated, which causes the CSI daemonset pod on those nodes to fail.
Describe alternatives you've considered
We are planning to move the CSI deployment to the control plane nodes to reduce the number of times it gets evicted & recreated during cluster maintenance, but our preference would be to run this deployment in a HA configuration by scaling out to multiple replicas.

Hi @fhke,
We would like to better understand how the Trident daemsonset Pods are failing when the Trident controller Pod is not running in the Kubernetes cluster. When the Trident daemonset Pod has initialized it will attempt to register with the Trident controller Pod. If the Trident daemonset isn't able to register with the Trident controller it will begin to retry indefinitely using a retry backoff mechanism that starts at every 10 seconds and can increase to a maximum of every 120 seconds.
If you are experiencing and issue where the Trident daemonset remains in a failed state we would like to understand why. If possible please open a NetApp support case to help expedite our ability to root cause your issue.

I think @fhke means the trident-csi deployment, not the daemonset. For example, on one of my clusters:
$ oc get deploy -n kube-trident-operator
NAME               READY   UP-TO-DATE   AVAILABLE   AGE
trident-csi        1/1     1            1           96d
trident-operator   1/1     1            1           96d

$ oc get daemonset -n kube-trident-operator
NAME          DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR                                     AGE
trident-csi   9         9         9       9            9           kubernetes.io/arch=amd64,kubernetes.io/os=linux   96d

I am also interested in running multiple replicas of the trident-csi deployment, to provide better availability.

Wanted to chime in to also request HA support for the controller pods.

If the Trident daemonset isn't able to register with the Trident controller it will begin to retry indefinitely using a retry backoff mechanism that starts at every 10 seconds and can increase to a maximum of every 120 seconds.

Yes, but this means that when the controller is evicted there is guaranteed downtime, which risks some pods not being able to mount PVCs during that time. Some of our customers fire off batch jobs that can execute at any time, so these periods of downtime are felt.
In our use case in particular, we would prefer to have the controller pod running in all of our datacenters. In the event of a storm or outage, where one datacenter is completely unreachable, it would be best to have another one running so that we don't have to failover with (even minimal) downtime.

Hello, @capps-b.  The Trident controller maintains an internal cache for performance reasons, so running multiple active replicas would be a heavy lift due to cache coherency concerns.  We have considered using leader election to have one active and multiple passive replicas to minimize downtime.  But any newly elected leader would still have to populate its cache from CRs, so any downtime mitigation would be minimal.  The primary benefit would be time saved by ensuring the needed images are already present on each node where the controller could run.  We would also have to enable leader election in the CSI sidecars, which presents another complication.  So while technically doable, it hasn't been a high priority.

maintains an internal cache for performance reasons

Can you elaborate on what is stored here and what the impact might be if say the cache is lost between mount requests?
Let's say I scale the controller deployment to 2 and wait for trident to register the backends. Then, I try to mount a PVC from a pod and k8s directs traffic to the new controller. What happens?

Can you elaborate on what is stored here

Most information that Trident keeps in CRs (backends, volumes, snapshots, volume attachments, nodes, etc.) is cached in memory.  If you have multiple replicas, each could handle part of the incoming requests or even race with the other replicas, both scenarios leading to an inaccurate representation in each replica.  Please don't do that!


Prevent against container name squatting and update automation README

This needs to be  merged in smaller steps to ensure we test all cases in the CI.

Coverage increased (+0.04%) to 88.86% when pulling 881b87624a04c7b919c5924abacc6917b9a18db1 on tyll:container_image into 09f5ba483691ad19143d4ae802babcd9a8051605 on nmstate:master.


Feature: Adding contributors section to the README.md file.

There is no Contributors section in readme file .
As we know Contributions are what make the open-source community such an amazing place to learn, inspire, and create.
The Contributors section in a README.md file is important as it acknowledges and gives credit to those who have contributed to a project, fosters community and collaboration, adds transparency and accountability, and helps document the project's history for current and future maintainers. It also serves as a form of recognition, motivating contributors to continue their efforts.

@ZwwWayne  Kindly assign me this issue, I want to work on it. Thank You!!

Hi @Kalyanimhala ,
Glad to hear that. Thank you for your contribution!


Add a new func to return w.names

Also, is it possible to add a new item to Event, like Source, so we can know which watch item in names related to the event.

Hi @mia0x75,
There would probably be a fair bit of refactoring involved in this one. Can you please let me know what your use case would be if this was ever implemented? :)
Thanks


phpinfo base implementation

Some bits for phpinfo implementation

Thanks! We'll merge the pull request and we'll make some changes

there must be a non-html output for console apps as well
the first overload of phpinfo() is redundant, compiler makes automatic conversion from int|long -> enum
the tag writer may be replaced with XmlWriter or an abstraction that handles console and html outputs

Thanks for the implementation one more time.
I've added some TODOs with API that provide extensions and their configurations.
Also we may rename HtmlTagWriter to a "PhpInfoWriter" with two implementations for HTML and plain Text (for CLI mode)


Quests Progress Reset

What is your Quests version / build number (do not say "latest")?
5.0.6-b488
Describe the problem and how to replicate it.
Accept any quest at all or have completed a quest, progressed slightly, anything. Log out, and then from console run the /questadmin givepoints  <#> command. It will instantly reset that players progress on everything. Cooldowns, currently accepted, etc.
Any console errors to share?
n/a

If applicable, can you provide an example quest from quests.yml?
No response

I'm not sure that this is a bug per se, since changing the player's points might affect their ability to complete the quest (so resetting their progress kind of makes sense). I'll still look into it.

I know you've been hunting for any/all quest progress reset issues. I think it is a bug as the /questadmin reset command exists, as well as other options to make the player forcibly quit or get kicked out of the quest. And since the questadmin givepoints can only be run fully intentionally by someone, I would hope they'd be aware of how it might affect a quest a player is on.

The /questadmin reset command also removes completed quests. Are you saying this issue does, as well? I was under the impression it just affected current quests.

It resets any current progressm if quests are on cool down or completed, they are reset along with any current quests. If it was only current quests, it'd be less of an issue

@HorusApl Thanks for the clarification. Should be resolved as of this build:
https://ci.codemc.io/job/PikaMug/job/Quests/490/


Make osBrain work with latest Pyro4

osBrain currently works well with Pyro4-4.45. It should be updated to work with the latest release. Relevant information:
https://github.com/irmen/Pyro4/commit/9465d23b2a676c981ea4b25c98d7b8c0c06043fa#diff-ef64357c95c4e8298a468307da6ffaa3R132

osBrain seems to work fine with Pyro4-4.46, however, it seems that 88f88b, which is the first commit after the 4.46 release, breaks the tests (timeouts occur during test execution with pytest).
In particular, the change that breaks the tests is in src/Pyro4/naming.py:
@@ -519,7 +523,7 @@ def locateNS(host=None, port=None, broadcast=True, hmac_key=None):
     proxy = core.Proxy(uri)
     proxy._pyroHmacKey = hmac_key
     try:
-        proxy.ping()
+        proxy._pyroBind()
         log.debug("located NS")
         return proxy
     except PyroError as x:

It seems this translates into a single call to Pyro4.core.__pyroCreateConnection(True).

This command triggers the timeouts:
pytest -xsv ./

However, this, does not:
pytest -xsv ./ --boxed

Apparently 02fff5fbfa7f3016d02701cb678f376b2d64b6ea fixed those issues. Probably because of the removal of BaseAgent instances?


Implement Features of ngAutocomplete

Hi Danny!, great work with this directive!
I am using ngAutocomplete (https://github.com/wpalahnuk/ngAutocomplete) in other project and i think that could be great to implement the same features in this directive!
Let me know if you are interested, i could help you if you want!
Congrats!

Hey, all the diff in your PR is absolutely lit up because of differences in tabs. Care to show me where you made the changes?
I'm thinking about the ability to make it support both backends.

Hi Danny. I'll think that would be a great idea. I'll put together some details later today/overnight. FWIW, I've adapted this directive for a number of search uses that hit an API - there might be a way to make it more modular using external templates and API call sub-modules.

I think it would be a great improvement to have this directive use the google "places" https://developers.google.com/maps/documentation/javascript/places-autocomplete  library, instead of the Geocoding API. The main difference, it looks like, from what I can tell, the ion-google-place directive seems to only work with Addresses, by switching over to "places" it would work with both addresses and locations, like the names of businesses.

Hey @matt-ward - @Positivex and I have a couple of open PRs you can look at to get going with the Places service.

@quipu   I am facing the same issue. I used the master branch version.

@quipu I am facing the same issue. I used the master branch version but it is not working on android emulator and mobile.

Did we ever get the NgAutocomplete integrated into this?   Please advise.

Hi I wan to use NgAutocomplete with google places. I can see that https://www.diffchecker.com/81x24fiy is expired now. Can anyone please share the difference/ or the code snippet. Thanks

Hey @manojbsw - https://github.com/israelidanny/ion-google-place/pull/5/files pretty much covers it.


fix: args.name error

fix #9

( 都不写单元测试的么 :rofl:

单测要补上哈😂
---Original---
From: @.>
Date: Wed, Aug 10, 2022 16:34 PM
To: @.>;
Cc: @.>;"State @.>;
Subject: Re: [devsapp/layer-fc-plugin] fix: args.name error (PR #10)
( 都不写单元测试的么 🤣
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you modified the open/close state.Message ID: @.***>


Wiki page unloading

Bug description
For some reason, the Wiki information for a tag loads properly while the page is loading, but once it loads it changes into just a text link to the tag. This appears to only happen in the initial loading of a page, but it loads properly and stays when refreshing the same page.
It may well be an issue with my configuration.
Steps to reproduce

Search a single tag that has a wiki page
Watch the Wiki tab

Expected behavior
The Wiki information should stay after loading.
Context
settings.zip
No notable errors in main.log.
Screenshots
While loading:

After loading:

System information

OS: Windows 10 Pro x64
Grabber version: 6.0.6

Playing around with it, it looks like it might be loading the wiki from Sankaku? Since Sankaku's wiki is basically just a link to the tag. Also, is there any way to set which site to pull the wiki page from? Or at least show which site it's using? Some sites seem better than others.

Indeed, the way it works currently if you have multiple sources supporting wikis is that the latest loaded one is shown (each source overriding the previous' wiki when loaded).
Choosing which wiki to show could be a solution, but I feel it would be annoying to change the site every time. Another solution could be to keep the longest wiki (with the most text/information). A mix would be to allow to see them all with a select box at the top, and sort them by length, showing the longest by default.

I like that last idea. Barring that, longest would be best.


"Invalid severity Information" after launch

After passing  ./gradlew lintAndroidMarketDebug and launching android-lint-summary I have only that on a project with 33 errors and 615 warnings.
[F] Incomplete translation
    /Users/alexeyglushkov/androidProjects/../main/res/values/strings.xml:20
[F] Incomplete translation
    /Users/alexeyglushkov/androidProjects/.../main/res/values/strings.xml:21
[F] Incomplete translation
    /Users/alexeyglushkov/androidProjects/../main/res/values/strings.xml:46
android-lint-summary: Invalid severity Information

Are there any way to fix it?

@soniccat Thanks for reporting this. Could you perhaps send me your lint-results.xml file that causes this so I can include this as a test case?

@passy yes, I've sent xml to your email<EMAIL_ADDRESS>Xml is the result of analyzing Facebook sdk.

@soniccat Thank you!

Fixed with 0.3.2 :)


[BUGFIX] add event to filter shippingaddress attributes params

Hey folks,
this event is missing if you want to save custom shipping attributes. There is an event to modify the sql, but not to modify the params. Now there is.
Regards,
Thomas

Hi @Tombro and thanks for your PR.
This method will be removed in Shopware 5.2. You now can pass all custom attributes to the new address service using the entity directly.
I will close this PR.


[SCB-382] upgrade io.fabric8 docker-maven-plugin version and fix depends-on setting

…s-on setting
Signed-off-by: zhengyangyong<EMAIL_ADDRESS>Follow this checklist to help us incorporate your contribution quickly and easily:

[x] Make sure there is a JIRA issue filed for the change (usually before you start working on it).  Trivial changes like typos do not require a JIRA issue.  Your pull request should address just this issue, without pulling in other changes.
[x] Each commit in the pull request should have a meaningful subject line and body.
[x] Format the pull request title like [SCB-XXX] Fixes bug in ApproximateQuantiles, where you replace SCB-XXX with the appropriate JIRA issue.
[x] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[x] Run mvn clean install to make sure basic checks pass. A more thorough check will be performed on your pull request automatically.
[x] If this contribution is large, please file an Apache Individual Contributor License Agreement.

More detail can be found : https://dmp.fabric8.io/#start-depends-on

Coverage increased (+0.02%) to 87.206% when pulling 58e75a3f3dd410272d7c7acd6a97c91c3305b375 on zhengyangyong:SCB-382 into 17137b5905940094f804451aacc5a7c21e711aea on apache:master.

Tested on macOSX,  the test is blocked, so we cannot merge for 1.0.0-m1 release.


Set Undertow max Parameter

Using pippo-undertow in my project. I want to increase default MAX_PARAMETER limit.
Only way to achieve this is to extend UndertowServer and setting serverOptions in createServer.
Is there a better way to do this??
Probably like adding in application.properties and picking the value using pippoSettings.
Then we could set all serverOptions in createServer() itself

Your approach is good.
Is it a possibility to use application.properties to define options and use setServerOption (or setSocketOption, setWorkerOption) from Undertow.Builder class.
We can use a prefix in application.properties, like:
undertow.server.<option_name_1>=...
undertow.server.<option_name_2>=...
undertow.socket.<option_name_3>=...
undertow.socket.<option_name_4>=...
undertow.worker.<option_name_5>=...
undertow.worker.<option_name_6>=...

In UndertowSettings you can add getServerOptions (getSocketOptions, getWorkerOptions) method|(s) that get all settings with prefix undertow.server (undertow.socket, undertow.worker) using PippoSettings.getSettingNames(String startingWith), remove the prefix from each returned setting and use http://docs.jboss.org/xnio/3.0.4.GA/api/org/xnio/Option.html#fromString(java.lang.String,java.lang.ClassLoader) to convert a string option in an Option instance.
It's just a suggestion, I am not sure if it works.

I will try this approach and revert back to you with results

In UndertowSettings you can add getServerOptions (getSocketOptions, getWorkerOptions) method|(s) that get all settings with prefix undertow.server (undertow.socket, undertow.worker) using PippoSettings.getSettingNames(String startingWith), remove the prefix from each returned setting and use http://docs.jboss.org/xnio/3.0.4.GA/api/org/xnio/Option.html#fromString(java.lang.String,java.lang.ClassLoader) to convert a string option in an Option instance.

Before trying out this approach, a small question. We would get List<String> from PippoSettings.getSettings() and convert them to Options. But we wont be knowing about the option type right??
Same would be true for Option value(both would be same)
For Example,
Consider this application.properties file
undertow.server.MAX_PARAMETER=2000
undertow.server.ENABLE_HTTP2=true

using PippoSettings.getSettingNames("undertow.server"), we would get both MAX_PARAMETER and ENABLE_HTTP2.
Now, how do we convert to Option<Integer> and Option<Boolean>??
Only way is to maintain a mapping between settingsName and settingsType
If i'm wrong please correct me

You have right. I don't know for moment how to detect the option type. I don't know if http://atetric.com/atetric/javadoc/org.jboss.xnio/xnio-api/3.3.6.Final/org/xnio/Options.html helps.

Another interesting class is UndertowOptions.

That would be good idea. But Is it possible to handle this pippo itself as UndertowOptions is in undertow??

But Is it possible to handle this pippo itself as UndertowOptions is in undertow??

I don't understand above sentence. Could you add more details?

Did you find a solution?

Resolved by #384


fix: implemented fallback if inline-snapshot is used with pypy

Change Summary
Implemented fallback if inline-snapshot is used with pypy (or any other none cpython implementation of python).
I hope to support pypy in the future but I don't know how long this will take.
Related issue number
fix #1534
Checklist

[ ] Unit tests for the changes exist
[ ] Documentation reflects the changes where applicable
[ ] Pydantic tests pass with this pydantic-core (except for expected changes)
[x] My PR is ready to review, please add a comment including the phrase "please review" to assign reviewers

please review.


Adds vector norm example.

Part of tracking issue #450.
Once #452 is merged I will rebase and add appropriate section links.
Similarly, once #463 is merged I will update badge links.

Rebased. Adds function that normalizes vector per suggestion by @mfajer