SetAnimationSpeed problem

Godot version:

3.2.4 beta 5 mono
OS/device including version:

win10 home 64
Issue description:

Setting the speed animation in each frame causes animation freezes.
In this code you can press the up and down arrows continuously to set animation speeds quickly, in some moments, when the speed is set to the maximum, the sprite stays totally stopped for a few moments (sometimes longer and other times less weather).
In this gif the value at which the animation is set is printed in each frame, you can clearly see how the sprite stops at certain times even though its animation is set at a high speed.

Steps to reproduce:
Press the up and down cursors and assign different speeds to the animation, observe how the animation plays and how it stops at certain moments that it should not, since it has assigned a speed different from 0.
Minimal reproduction project:

testAnimSpeed.zip

@Torguen Can you include a minimal reproduction project in GDScript? We recommend always doing this unless an issue can only be reproduced n C#.

@Torguen Can you include a minimal reproduction project in GDScript? We recommend always doing this unless an issue can only be reproduced n C#.

Please, I do not use GDScript, I do not know it, if I have to contribute two projects every time I have to report a bug ... it is too much work, all the necessary files are in the project that I have uploaded.
Maybe someone will translate the code.

Please, I do not use GDScript, I do not know it, if I have to contribute two projects every time I have to report a bug ... it is too much work, all the necessary files are in the project that I have uploaded.
Maybe someone will translate the code.

GDScript repro
testAnimSpeed.zip
Looks like setting speed resets animation/internal time. Not sure if you are supposed to change the speed per frame.

GDScript repro
testAnimSpeed.zip
Looks like setting speed resets animation/internal time. Not sure if you are supposed to change the speed per frame.

Thank you. Normally when you need to adapt the animation speed to the movement speed of a character, you should be able to do so, I think. This works in Construct 2 for example.

Thank you. Normally when you need to adapt the animation speed to the movement speed of a character, you should be able to do so, I think. This works in Construct 2 for example.

The problem seems to be that "_reset_timeout" is being called from some point where the "set_animation_speed" is set.
https://github.com/godotengine/godot/blob/master/scene/2d/animated_sprite_2d.cpp

By the way it seems that the "set_animation_speed" method is not resetting the timer, I think the timer is being reset elsewhere, the problem may be with the player, not with the "set_animation_speed" method


KeyStore was not initialized

Xamarin.Auth Issue
Recently I am getting KeyStore was not initialised exception when trying to do anything with the AccountStore (in Xamarin Forms).
IF BUG, INCLUDE THIS PART:
Version

[ ] nuget version = <IP_ADDRESS>
[ ] Forms = <IP_ADDRESS>7

Steps to reproduce

class App : Application
{
       public App()
       {
               MainPage = ...;

               var accountStore = AccountStore.Create(Forms.Context);
               var account = accountStore.FindAccountsForService ("x").FirstOrDefault ();
       }
}

Actual behaviour
  at Java.Interop.JniEnvironment+InstanceMethods.CallNonvirtualObjectMethod (Java.Interop.JniObjectReference instance, Java.Interop.JniObjectReference type, Java.Interop.JniMethodInfo method, Java.Interop.JniArgumentValue* args) [0x00089] in <6cd960837cc24c26bab2a0a29b597627>:0
  at Java.Interop.JniPeerMembers+JniInstanceMethods.InvokeNonvirtualObjectMethod (System.String encodedMember, Java.Interop.IJavaPeerable self, Java.Interop.JniArgumentValue* parameters) [0x0001f] in <6cd960837cc24c26bab2a0a29b597627>:0
  at Java.Security.KeyStore.Aliases () [0x0000a] in <d278c06ad5684d6882c743a94a93ebc2>:0
  at Xamarin.Auth.AndroidAccountStore.FindAccountsForServiceAsync (System.String serviceId) [0x00011] in <347784a7d58c449896f76cefd9e360c2>:0
  at Xamarin.Auth.AndroidAccountStore.FindAccountsForService (System.String serviceId) [0x00000] in C:\cxa\source\Xamarin.Auth.LinkSource\Evolve16.Labs\Security\CryptoUtilities.cs:19
  --- End of managed Java.Security.KeyStoreException stack trace ---
java.security.KeyStoreException: KeyStore was not initialized
	at java.security.KeyStore.throwNotInitialized(KeyStore.java:96)
	at java.security.KeyStore.aliases(KeyStore.java:424)

Seems like completely uninstalling the application and reïnstalling it solved the issue.

From time to time we face this issue as well.
Ofcourse a reinstall can not be the "solution" for this problem ?
Any tips on how to tackle this issue ?

I'm guessing by the lack of activity on this issue that there is no word on when a fix might be available.

Recently I've been receiving this crash more often.

I just hit this and have no idea how to resolve it, I've tried a re-install off Xamarin.Auth, same issue.
Any ideas?

We are also seeing this issue in production from our users for Save() function. Should we put a try catch, and just recreate the AccountStore if the somehow the store is uninitialized? I'm assuming this is due to inactivity and AccountStore gets uninitialized after a while.

We're seeing a high failure count for this on Android. Should we be calling AccountStore.Create() before calling any AccountStore operations? I'm seeing this crash both on .Save() and .FindAccountsForServiceAsync(). Please advise.

Still no response on this? FWIW its my number 1 crash and I see it when my application is launched in the background.

@mikegottlieb , I had to implement my own version of the AndroidAccountStore, change the store filename to a new one, and that resolved the issue. This will require your users to authenticate again since it will now load from the new filename.
    const string FileName = "Xamarin.Social.Accounts";

We were suspecting that the account store file is corrupted which was causing this problem. Ever since we change the filename, the issue count has decreased. Will update this if over time our users start getting this again.
Also, I'm avoiding the MigrateKeyStore in AndroidAccountStore. Instead, I'm calling LoadEmptyKeyStore. The logic inside MigrateKeyStore is problematic if you think of all the scenarios. Instead, we are deleting the account file, and loading a new empty store. This will hopefully reduce the chance of getting a corrupted account store.

Anyone found a workaround for this? Is it related to Xamarin.Android threading, or to something else? I also experience this bug a lot in production.

this has been resolved in <IP_ADDRESS>

I could confirm, that this is not fully resolved. I getting this error sometimes with latest package.
Java.Security.GeneralSecurityException: Uninitialized keystore at Java.Interop.JniEnvironment+InstanceMethods.CallNonvirtualObjectMethod (Java.Interop.JniObjectReference instance, Java.Interop.JniObjectReference type, Java.Interop.JniMethodInfo method, Java.Interop.JniArgumentValue* args) <0x7b8afaff60 + 0x000b7> in <c3e81ba778684b6bac8ed202e12c938d>:0 at Java.Interop.JniPeerMembers+JniInstanceMethods.InvokeNonvirtualObjectMethod (System.String encodedMember, Java.Interop.IJavaPeerable self, Java.Interop.JniArgumentValue* parameters) <0x7b8afbcdf0 + 0x000b3> in


Accessibility bug via AI4D: Name of the "Image" is not correct i.e. "MainInstructionIcon" instead of "Warning Icon".

Upstream via https://github.com/microsoft/azuredatastudio/issues/6666.  More details there.
TL;DR:
When producing a warning dialog box via vscode.window.showWarningMessage(), the accessible name of the image is "MainInstructionIcon", when it should be something like "Warning Icon" for screen-readers.

Please file this bug against electron. That is a native electron dialog.
Create a small electron app which triggers a native dialog with a warning a report the issue here https://github.com/electron/electron
Thanks


Escape variables before embedding them in html

Expected Behavior
Variables escaped when building html.
Actual Behavior
Variables not escaped and concatenated with html as-is, allowing script execution.
Note
Due to the nature of this service, I do not think that this currently poses a security issue — there is no storage, session, or private user data involved. Thus reporting to the publlic tracker.
This is still a bad example, though.

Guess that's the code:
https://github.com/dawnlabs/carbon/blob/master/components/BackgroundSelect.js#L77-L119

@ChALkeR thanks so much! That's a little embarrassing (:

@mfix22 I don't think it fixes it.

@ChALkeR we haven't released yet, but i'll reopen so you can verify when we do 😄

@mfix22 I expect the lines on the two screenshots above in https://github.com/dawnlabs/carbon/issues/192#issuecomment-362865664 to still work even after 5b89454  will be deployed.
Correct me if I am mistaken.

Can't we just escape() the input? And unescape() when we receive it in code?

@ChALkeR definitely. Still working on the fix. Just pushed the escape code, and deployed. Can you verify?

I think both of the cases you pointed out are fixed. Do you see any other issues @ChALkeR?
Thanks for the help by the way!

@mfix22 The patch b44ecff6eae617ec61fe68cc67e973d1575d9b51 should prevent user-supplied content from evading from <style> tag (i.e. closing it and inserting arbitrary html content) in that specific place. I did not perform audit of the remaining code.
Note that this is still not perfect (and isn't a good example), because user content could insert arbitrary styles there (which was not what was intented), and user-supplied being able to style the page could pose security risks (in other setups, though, there is nothing to steal on this specific site :wink:).

I suggest validating the user-supplied bg parameter before placing it inside style tag, i.e. parse it as color and then serialize back to a sanitized string.

@ChALkeR totally aware of this possibility, but for my own curiosity, can you tell me why this poses a problem? Even with sanitation, users could still add arbitrary CSS via the dev-tools, no?
And thanks so much for your help. We definitely don't need a full audit (:

@mfix22 On this site, it doesn't pose a problem. Neither does the original XSS pose a direct problem on this specific site to my knowledge (which I mentioned above). If it had — I would have reported this privately instead of opening an issue.
I just outlined some of the bad practices that could become a problem if someone used a similar approach (or directly reused code from this repo) in other projects, that do deal with users data. I estimate the probability of that as non-negligible due to the popularity of this repo :wink:.
Thanks for fixing this! :tada:

@ChALkeR thanks so much for the explanation. I see the distinction between adding the styles in the dev-tools versus via a link now (:
Appreciate your kind words, too 🍺


Allow ETA, AbsoluteETA, etc to change the string prefixes

AbsoluteETA currently prepends a long string "Estimated finish time: " before the date.  The base Timer object allows the format kwarg to modify the text printed.  AbsoluteETA and ETA should allow something similar, rather than hardcode the prefix string(s).

Good idea, I'll add it in the next update :)

They are editable in the development release. The new version should be release soon :)


Total number of coin calculation is not correct

This is a follow-up issue of issue #367 . The amount under "Unbonding" is not included in the Total number of coins on the right-hand side.

@MonikaCat it works validator account
https://kava.bigdipper.live/account/kava14kn0kk33szpwus9nh8n87fjel8djx0y08wynpx
but still not working on some accounts.
https://kava.bigdipper.live/account/kava1axa2p2klp4er2z0a29msplf9mtmq7ven0hkqw3

This is tracked by #388


Fix configuration of ntp server list in systemVMs

Description
This PR configures the /etc/ntp.conf file with the list of servers set against the global setting - 'ntp.server.list'

Types of changes

[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] New feature (non-breaking change which adds functionality)
[X] Bug fix (non-breaking change which fixes an issue)
[ ] Enhancement (improves an existing feature and functionality)
[ ] Cleanup (Code refactoring and cleanup, that may add test cases)

Feature/Enhancement Scale or Bug Severity
Bug Severity

[ ] BLOCKER
[ ] Critical
[X] Major
[ ] Minor
[ ] Trivial

Screenshots (if appropriate):
How Has This Been Tested?
Set the global setting value for ntp.server.list and recreated the SSVM - logged into the SSVM and verified the following:

the /etc/ntp.conf file has the list of ntp servers configured
Also verified by using ntpq -p

@blueorangutan package

@Pearl1594 a Jenkins job has been kicked to build packages. I'll keep you posted as I make progress.

Packaging result: :heavy_check_mark: centos7 :heavy_check_mark: centos8 :heavy_check_mark: debian. SL-JID 369

@blueorangutan test

@rhtyd a Trillian-Jenkins test job (centos7 mgmt + kvm-centos7) has been kicked to run smoke tests

as discussed with @Pearl1594 , it would be better to use systemd-timesyncd instead of ntp in <IP_ADDRESS>

Trillian test result (tid-1108)
Environment: kvm-centos7 (x2), Advanced Networking with Mgmt server 7
Total time taken: 46489 seconds
Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr5160-t1108-kvm-centos7.zip
Intermittent failure detected: /marvin/tests/smoke/test_kubernetes_clusters.py
Intermittent failure detected: /marvin/tests/smoke/test_routers_iptables_default_policy.py
Smoke tests completed. 86 look OK, 1 have error(s)
Only failed tests results shown below:

Test
Result
Time (s)
Test File

test_01_invalid_upgrade_kubernetes_cluster
Failure
3608.28
test_kubernetes_clusters.py

test_02_deploy_and_upgrade_kubernetes_cluster
Failure
3613.99
test_kubernetes_clusters.py

test_03_deploy_and_scale_kubernetes_cluster
Failure
0.14
test_kubernetes_clusters.py

test_04_basic_lifecycle_kubernetes_cluster
Failure
0.04
test_kubernetes_clusters.py

test_05_delete_kubernetes_cluster
Failure
0.04
test_kubernetes_clusters.py

test_07_deploy_kubernetes_ha_cluster
Failure
0.04
test_kubernetes_clusters.py

test_08_deploy_and_upgrade_kubernetes_ha_cluster
Failure
0.14
test_kubernetes_clusters.py

test_09_delete_kubernetes_ha_cluster
Failure
0.19
test_kubernetes_clusters.py

ContextSuite context=TestKubernetesCluster>:teardown
Error
91.24
test_kubernetes_clusters.py


Update producer.rb

Referring to these 2  issue
https://github.com/zendesk/ruby-kafka/issues/293
https://github.com/fluent/fluent-plugin-kafka/issues/97
from the looks need to refresh metadata when failed to assign partition, as producer can't rebalance due to broker imbalance, hence metadata needs to be refreshed.

@ahsandar thanks for this PR, and sorry for the late reply – I just returned from a vacation. This looks good – would you be able to test the code in production before I merge it? There can be tricky interactions when it comes to the metadata refresh cycle.

would be real difficult to get it check as we moved from staging to production during this time and unless fluentd plugin doesn't updates can't test it in an environment any time soon

@dasch  can this be merged anytime soon ? would really help in this  scenario (https://github.com/fluent/fluent-plugin-kafka/issues/97) from my understanding
when a broker falls out of the quorm o goes down and the leader on the topic changes but fluentd
doesn't updated the metadata to resolve this , every time this happens it should update the
metadata and start sending message to the new leader and once the broker is brought back up and
leader election is performed the metadata will refresh again following the cycle

what do you think  ?

Okay, I'll merge it – but it would be great if the fluent plugin could help test this out.

@dasch thanks i will send a PR for fluentd plugin and will then update at my end to test our setup.

:heart:

can you please create a tag next in sequence to 0.3.16.beta1 so i can update the plugin accordingly, thanks

@ahsandar I've released version 0.3.16.beta2 just now.

thanks

happy to report that the fix works

:heart:
Cutting a new production version now.


A485 patches

I've successfully been able to apply the patches to upen up the AMD menu, and it works fine.
I've loaded the related PE files into a disassembler, but I can't figure out what the data that's being edited by these patches represents. I'm wondering if there might be more hidden menus that can be enabled? Is there any documentation on what this data means?
Specifically, I'm wondering if there might be some option to control the amount of VRAM? I'd like to expand it a bit beyond the defaults...

They reveal the AMD CBS and PBS menus, anything that's in there and functional is accessible.

I see, I was hoping there'd be more hidden menus beyond the AMD menu. Shame.


Activities API Enhancement

Proposal:
{
    "results":{
        "total": 100,
        "per_page": 20,
        "current_page": 1,
        "last_page": 5,
        "activities": [
            {
                activity1
            },
            {
                activity2
            }
       ]
    },
    "status" : "OK"
}

PR merged and deployed.


The usage of LRU cache and Pool cache

Recently we paid lots of effort on reducing the meory usage of wechaty bots, and I have some questions of the usage of LRU cache.
When we load a poolified instance (e.g. room or contact), we will save the payload in the LRU cache and also create a wechatified isntance in the pool. However I failed to find any case when we clear the instance in the pool while keeping the payload in the LRU cache. That is to say, we don't actually need the LRU cache.
Please tell me if I missed anything, or we should clear the instances in the pool manually.

Scenario:

Load new contact
The payload will be fetched from the puppet, saved in LRU, and we create a new instance with that payload. When we call methods or get properties from the contact, it will use the instance in the pool directly.
Renew contact payload
The puppet will recive a dirty event. The contact LRU cached is cleared and and re-fetched, however the contact instance will also have the payload refreshed from the call, there is no point to use the cache to transfet the payload.

If we delete the instance from the pool, the LRU cache will be useful. When we load the contact, it will get the payload from the LRU cache. However wechaty seems never trims the pool.

The flashstore cache in wechaty-puppet-service is useful because it will store the cache in the hard drive. When we restart the system, we don't need to fetch cached payloads from remote server. However as far as I know quick-LRU is a memory cache.

社区太不活跃了，我都快要坚持不住了。

When we load a poolified instance (e.g. room or contact), we will save the payload in the LRU cache and also create a wechatified isntance in the pool. However I failed to find any case when we clear the instance in the pool while keeping the payload in the LRU cache. That is to say, we don't actually need the LRU cache.

@hcfw007 When the Puppet instance and the Wechaty instance are running in the same process, your statements are true.
However, the design of the puppet system is to support the distributed system; that's why it will always keep the LRU to prevent performance issues.
For your requirement, I remember I have put some environment variables to control the LRU cache size in the Puppet system; you can set them to fit your need (0, or some small number) as you need in your system.
I hope this explanation helps. Feel free to let me know if you have more questions.

However, the design of the puppet system is to support the distributed system; that's why it will always keep the LRU to prevent performance issues.

By distributted system, you mean with puppet-service, or running in one machine on two different processes? Is there an example for this kind of pratice?

社区太不活跃了，我都快要坚持不住了。

活跃的开发者确实不是特别多，但如果仅限typescript和企业微信的puppet，大部分问题我们还是能解决的。


Translation File Gets Overwritten on New Feature Addition

Describe the bug
Description:
Whenever a new feature or translation is added, the entire translation file (fr.js) is overwritten, causing previously added translations to be lost. For instance, in the example provided, a new translation for the "roles" module is added, but it results in the deletion of all other translations already present in the file. This leads to the need for manual re-addition of the previously existing translations whenever a new module is introduced.
This behavior is problematic for maintaining translations across the application, as any update could inadvertently remove existing content.
Link to the Bolt URL that caused the error
https://bolt.new/~/sb1-hmsvqk
Steps to reproduce
Steps to Reproduce:
Open the translation file (fr.js) that contains existing translations.
Add a new translation for a new feature/module (for example, adding translations for the "roles" module).
Save the file and close it.
Reopen the translation file (fr.js).
Observe that the newly added translation for the "roles" module is present, but all previous translations have been removed or overwritten.
Expected Result:
The new translation for the "roles" module should be added without affecting any existing translations.
Expected behavior
When a new feature or translation is added, it should append to the existing file, without overwriting or removing existing translations.
Screen Recording / Screenshot
No response
Platform
Browser name = Chrome
Full version = <IP_ADDRESS>
Major version = 131
navigator.appName = Netscape
navigator.userAgent = Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36
performance.memory = {
  "totalJSHeapSize": 80870790,
  "usedJSHeapSize": 75570370,
  "jsHeapSizeLimit":<PHONE_NUMBER>
}
Username = Domoteek
Chat ID = 63cb2023a128

Additional context
No response

your link does not work

Did you find a solution for this problem?


Invalidate DeviceTrust

Is your feature request related to a problem? Please describe.
When removing a member from a DeviceGroup, the related DeviceTrust configuration should be optionally removed as well. This would be used in the case of dynamic sync-only device groups.
Describe the solution you'd like
A means to invalidate an existing DeviceTrust.
Describe alternatives you've considered
We've considered leaving the invalid DeviceTrust in place, leading to configuration cruft and hygiene issues.

This is a duplicate of the much more elaborate and well-described #142


SBOM of Go modules missing entries for vendored dependencies

These test assertions in the Go language family are commented out because the version of syft that packit relies on has a bug that causes it to exclude vendored dependencies. This means SBOMs that are supposed to enumerate modules built into Go binaries contain no entries.
A fix for this bug has been released in syft. This buildpack's version of packit should be upgraded to one that uses a patched version of syft.

This will be fixed by upgrading to packit v2.2.0, which upgrades to a version of syft that contains a patch for the syft bug.


Add Polish translation

Hi @GORobert!
Thanks for your PR. Can you add a new patch version to updates/version.yaml file?
1.3.1: Add Polish translation
Also, you can add your name to the Available locales section in README.md file.

Yes sorry fot that


[Add calculator] 'Calculator' page is reverted when changing locales after creating invalid calculator name

Environment: Windows 11 Home Version 22H2 Build	22621.2506
Chrome Версія 118.0.5993.118 (Official build) (64-bit)
Reproducible: always.
Build found:
Preconditions

Site https://zero-waste-staging.onrender.com/en is opened.
Admin is logged in
'Calculators' page is opend on Admin dashboard

Steps to reproduce

Click on '+Add calculator' button
Fill in 'Name' field with invalid name (e.g. "nhllllkpijuniuygcrewsryesutrfi702555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555"
Click on 'Create calculator' button
Change locales with "Ehglish/Українська" button

Actual result
https://github.com/ita-social-projects/ZeroWaste/assets/152202895/86f269a1-2b5b-4039-8d91-83b1504a7494
'Calculator' page is opened
Expected result
'Add calculator' page is reload and displayed.
'Name' field is blank.
Error message is absent.
Postconditions
"Check created item is not saved in database using SQL query:
SELECT *FROM calculators
WHERE name =;"
User story and test case links
User story #627
[Test case]
Labels to be added
"Bug", Priority ("pri:medium "), Severity ("severity: high"), Type ("Functional").

requested changes
https://github.com/ita-social-projects/ZeroWaste/pull/928#pullrequestreview-2414846121

requested changes
https://github.com/ita-social-projects/ZeroWaste/pull/928


title_case helper fails with special characters

If I try to convert "this string has (special characters)", it converts it to "This String Has (special Characters)". I feel like this helper should ignore special characters since they do not have uppercase equivalents anyways. If there's any special character before a word, it ignores that word.

FWIW, this is the exact behavior of php's "ucwords" function.

Yea I know.  I think Laravel title_case should be a bit smarter than that. Maybe even ignore uppercasing words like as, the, in, with, a, etc... You usually don't want those uppercased even if it is a title string.

[...] You usually don't want those uppercased even if it is a title string.

That presumes that the method is only passed strings with English phrases.


Keyword constructor for named tuples in the Parameters.jl package

https://github.com/mauro3/Parameters.jl/issues/55#issuecomment-397158562
This can be v0.7 specific.

Mauro is willing to guide you if you start looking at stuff.  You could start with a PR which you keep working on an get his advice as you go through.  The key things to get working are:

[ ] Ensure matches his comments for the interface
[ ] Add all sorts of tests

One key one is the f=f test where f(x) = x was defined above it... In and out of funcionts
Others include clashing names, etc. to test macro and scoping hygeine

[ ] Add documentation/examples
[ ] Get it working on v0.7 with the built in named tuples.

Read through the Discourse post. Cool, this sounds like a good PR. Will do.

See my comments on the issue.  Try to go back to the original and tweak it rather than completely changing the approach.  At this point, the only issue we know is that f=f doesn't work for functions in certain circumstances.  The best thing to do is start by writing the test for every case with the original code, make sure you can replicate the f=f issue in the test, and then isolate why it might be failing.

Alright, sounds like a reasonable approach. Although I think the reason it fails for functions is the same reason it fails, for (say) an array or an int (like the earlier discourse issue you posted, which you can replicate with arrays).
Maybe there's something weird happening with scoping. Or maybe there's an issue with creating an object of type NamedTuples._NT_a_b_w(a, b, w) in this situation (not sure, just spitballing). But I'll check it out.

Think we're good on this, so closing. We can reopen if we want to add any new functionality or discover any issues @jlperla @mauro3


fix(schedules): fix wrong stats when auxiliary classroom is enabled

:tada: This PR is included in version 2.16.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


REFACTOR: Relocate Neon.Kube/resources --> Neon.Kube.Setup/resources

We should probably relocate the /Resources/* embedded resources from the Neon.Kube library to Neon.Kube.Setup because that's the only place that references these.  These will bloat the Neon.Kube assembly which will probably end up being referenced by lots of services and unit tests (even by end users) at a minimum to access our Kubernetes client extensions and KubernetesWithRetry class.
This is not an emergency or anything and this can wait until after we finishing stabilizing cluster setup.

I've decided to drop this idea due to some NodeSshProxy dependencies that are not worth sorting through right now.


Decompiling Function Never End

the bug is about converting a hex value on  the decompiler to decimal "0xff" to 255 on the decompiler section, after clicking convert and pressing the decimal the decompiler start "thinking for ever" and changes never happened, after going any where(another function for example) and coming back to the function where the bug occur, the function never decompile and stay "decompiling for ever".
Steps to reproduce the behavior in my case:

i did Go to the Decompile of a specific function

i Clicked on convert to decimal on the 4th param, it converted ok,
but after i clicked convert to decimal on the 5th param

it just get infinite loop decompiling

all i wanted it just to convert the hex to the decimal
Environment

OS: Windows 10
Java Version: 1.8.0_311
Ghidra Version: <IP_ADDRESS>

Ghidra Origin: official

Is there a reason you are on 10.0.2? 10.1.2 is the newest release of Ghidra: https://github.com/NationalSecurityAgency/ghidra/releases/tag/Ghidra_10.1.2_build.
I would recommend trying that out first. Otherwise if you can share the binary?

thanks for the answer, ill try the new version, if it fixed, ill report here, otherwise if error keep, ill send the binary, offset, convention, etc.

still happening in last version
ac_client.zip
Binary Image Address: 00400000
Function is intended to draw a text  in offset: 0041a150
"DrawText" Function SIgnature: void renderText (char * text, int x, int y, uchar colorx, uchar colory, uchar colorz, uchar colorw)
Reference to Usage Where Bug Happened: 461f86
Notice that i make it work converting through the disassembly convert instead the decompiler convert:

I am also having this issue, it's also occurring when I try to convert a hex value to binary.
OS: Manjaro (Linux) 21.1.6
Ghidra Version: 10.0.4 Build DEV


jbuilder shouldn't fail on unreadable directories

jbuilder fails if there is any unreadable directory under the current directory:
~$ jbuilder external-lib-deps --missing @install
Error: exception Sys_error("cloj/popco-x: Permission denied")
... [long, ugly stacktrace]

It's arguable that this isn't a serious problem for building one's own projects, but it's common to be told to run the above command e.g. when there's a problem with an installation of some package via opam.  If you run that command from e.g. your $HOME directory (why wouldn't you?), then any unreadable directory under that location that can be found e.g. via links stop the process.  (In my case, I have a couple of directories of my own that I've set to be unreadable for my own reasons.  One could imagine cases in which someone has a link into a tree belonging to another user or root or something like that, where only some of the directories are readable.)
It seems like it would make more sense to simply ignore unreadable directories, or possibly issue a warning and continue.

It's not clear to me why you'd want to run that from $HOME, but crashing with Sys_error is certainly a bug - we should display a warning and continue scanning

Thanks.
As to why, I’m just following instructions from opam packages that fail to build.  I don’t actually know what those jbuilder args do, although I can kind of guess.  Would be worse for novice users, though.  (The instructions never say “Go to a directory without unreadable subdirs and run this.” :-)

The opam package is (I hope) not telling you to run arbitrary commands from your $HOME directory! Would it be possible to see the complete failing output of the opam command?

Jane Street Core can generate output that suggests running the command in response to opam install core:
#=== ERROR while compiling core_kernel.v0.9.1 =================================#
# context      2.0.0~beta4 | darwin/x86_64 | ocaml-variants.4.05.0+flambda | https://opam.ocaml.org/2.0#2017-11-05 03:04
# path         ~/.opam/4.05.0+flambda/.opam-switch/build/core_kernel.v0.9.1
# command      jbuilder build -p core_kernel -j 1
# exit-code    1
# env-file     ~/.opam/log/core_kernel-6933-703493.env
# output-file  ~/.opam/log/core_kernel-6933-703493.out
### output ###
# Error: External library "base" not found.
# -> required by "src/config/jbuild (context default)"
# Hint: try: jbuilder external-lib-deps --missing -p core_kernel @install

I originally assumed that the last line was generated by something in the Core config, but I searched for parts of it on the Core repo on github and didn't find it.  I think I got a similar "Hint" from some other opam install, but I don't remember what it was.  Just tried to reproduce it but failed.  Anyway, this all raises the possibility that opam is generating the hint, but I don't know.

Hmm - the second line of opam's output says what path it started in. I must confess I'm not convinced that one would ever arbitrarily run a command in $HOME because "well, why not". However, jbuilder build commands are displayed as cd _build/foo && command... I can't decide if doing that for the hints too would be helpful or clutter.
@rgrinberg Thoughts?

(Unrelated to jbuilder, but this looks like a packaging problem of some kind)

(Unrelated to jbuilder, but this looks like a packaging problem of some kind)
Right.  Only failing on unreadable directories is jbuilder.

Maybe this doesn't need saying, but I think it's important to keep in mind that one of the benefits of the ease of opam, most of the time, is that it allows new users to start using OCaml without being knowledgeable about OCaml compilation or dependencies or any particular build tool.   Then you can gradually learn different pieces of what is, overall, a very rich set of tools and libraries.  So if everyone says "Install packages using opam", and then you get a message that says, in effect "That didn't work, but try this", then it's appropriate for a less-knowledgeable user to simply try it in the way specified.  (In my case, I no longer consider myself a novice, but there's a lot that I don't know or don't understand, and I don't have time to become an OCaml expert.  If I get a message from opam that says "try this", yeah, I'm going to try it.  I only started using jbuilder a couple of months ago, and I know enough to do what I do with it, and I keep learning more, but I don't have time to understand everything about how to use it.  (The jbuilder docs aren't really good for beginners, either.  I submitted another issue about that, but it's got to be a long-term project.))

The issue here is that opam is trying to install core without all its required dependencies for some reason. When the build of core fails opam -- not unreasonably -- shows you the error message from the build to help you figure out what has gone wrong. Since core is using jbuilder for its build, this ends up showing you the message from jbuilder.
When jbuilder tries to build something and kind find a dependency it prints the hint "try: jbuilder external-lib-deps ..." to help you figure out what dependencies are missing. If you had been running jbuilder yourself in the core source directory this would be a very helpful message, but in the context of a package being built by opam it is actively harmful/confusing.
The solution is probably to try to distinguish these two different use cases -- building a package in a package manager and running jbuilder by hand -- and then tailor the error messages and hints accordingly.

@dra27, I guess what happens is that I expect opam to manage dependencies.  If core needs base, I would expect base to get installed when I try to install core.  If that doesn't happen, it seems weird, and I'm not sure what to do.  As it turns out, running opam install base (and one or two other installs) before opam install core solves the problem, but that wasn't obvious to me.  (I probably did that before, too, but that was a while ago, and I didn't remember how it was I got core installed.)  If there's a problem I don't understand, and there's a hint at the end of the error message, it's natural for me to follow the wise advice of whoever who wrote the hint.  They know more than I do.

@lpw25 Maybe it would be simpler for the hint to include full build directory path when the problem occurs.  That should work both for the normal jbuild process and for opam use.

The directory isn't what's wrong with the hint. Running that command is not going to help a user work out what is wrong in this situation any more than the error message Error: External library "base" not found. which appears before the hint. Indeed thinking that they are supposed to run that command is likely to confuse people, making the hint harmful even if it directed people to a directory where the command would be able to successfully run.

Indeed thinking that they are supposed to run that command is likely to confuse people

Ah, I get it.
I am exhibit A. :-)

#2004 fixes this. Interested parties should test that PR.


What is the size of the Image?

I am reading the code of MatrixUsageApp and I can see that the byte[] array that contains the image is a one dimensional array. The size of it is obtained through sample.dataLength  where sample is a VideoCaptureSample
Reading the code of VideoCaptureSample I notice that I can get the total size of the data (with dataLength) but how can I get the Height and Width (in pixels) of the image?? I need this to do 2D processing.

You provide the resolution when you start capturing. See CameraParameters. The callback in CreateAync also gives you access to the resoltuion and framerate
https://github.com/VulcanTechnologies/HoloLensCameraStream/blob/master/HoloLensVideoCaptureExample/Assets/CamStream/Examples/Video Panel Example/Scripts/VideoPanelApp.cs#L69
Here is an example of where you can see what resolution of the stream is you created


Processor is exited after non_interactive block when using Corba

Before submitting the issue

[X] I have searched among the existing issues
[X] I am using a Python virtual environment

Description of the bug
When using Corba, the current processor is preserved when entering a non_interactive block, but is not preserved when exiting the block, as if non_interactive is silently appending a FINISH command. This is both unexpected and differs from gRPC, which preserves the current processor throughout. This leads to confusing instances of the [command] is not a recognized BEGIN command... error.
Steps To Reproduce
from ansys.mapdl.core import launch_mapdl

mapdl = launch_mapdl(mode="corba")

mapdl.prep7()
print(mapdl.parameters.routine)
with mapdl.non_interactive:
    mapdl.n(1)
print(mapdl.parameters.routine)

This code outputs
PREP7
Begin level

However, this code behaves as expected when run through gRPC (launch_mapdl(mode="grpc")), outputting
PREP7
PREP7

Which Operating System are you using?
Windows
Which Python version are you using?
3.8
PyMAPDL Report
-------------------------------------------------------------------------------

PyMAPDL Software and Environment Report

Packages Requirements
*********************

Core packages
-------------
ansys.mapdl.core    : 0.63.1
numpy               : 1.23.1
appdirs             : 1.4.4
scipy               : 1.8.1
grpc                : Package not found
ansys.api.mapdl.v0  : Package not found
ansys.mapdl.reader  : 0.51.14
google.protobuf     : Package not found

Optional packages
-----------------
matplotlib          : 3.5.2
pyvista             : 0.35.1
pyiges              : 0.2.1
tqdm                : 4.52.0
ansys_corba         : 0.1.1

Ansys Installation
******************
Version   Location
------------------
222       C:\Program Files\ANSYS INC\v222

Ansys Environment Variables
***************************
ANSYSLMD_LICENSE_FILE<EMAIL_ADDRESS>ANSYS_SYSDIR                   winx64
ANSYS_SYSDIR32                 win32
CADOE_LIBDIR222                C:\Program Files\ANSYS Inc\v222\CommonFiles\Language\en-us

Installed packages
aiohttp==3.8.1
aiosignal==1.2.0
ansys-api-mapdl==0.5.1
ansys-api-platform-instancemanagement==1.0.0b3
ansys-corba==0.1.1
ansys-mapdl-core==0.63.1
ansys-mapdl-reader==0.51.14
ansys-platform-instancemanagement==1.0.2
appdirs==1.4.4
async-timeout==4.0.2
attrs==21.4.0
bleach==3.2.1
charset-normalizer==2.1.0
colorama==0.4.4
cycler==0.11.0
docutils==0.16
fonttools==4.34.4
frozenlist==1.3.0
geomdl==5.3.1
googleapis-common-protos==1.56.4
grpcio==1.47.0
idna==3.3
imageio==2.19.3
importlib-metadata==4.12.0
keyring==21.5.0
kiwisolver==1.4.3
line-profiler==3.5.1
loguru @ file:///D:/bld/loguru_1649443371013/work
matplotlib==3.5.2
multidict==6.0.2
numpy @ file:///D:/bld/numpy_1657483969318/work
packaging==20.4
pandas @ file:///D:/bld/pandas_1656001298215/work
Pillow==9.2.0
pkginfo==1.6.1
protobuf==3.20.1
protoc-gen-swagger==0.1.0
Pygments==2.7.2
pyiges==0.2.1
pyparsing==2.4.7
python-dateutil @ file:///home/conda/feedstock_root/build_artifacts/python-dateutil_1626286286081/work
pytz @ file:///home/conda/feedstock_root/build_artifacts/pytz_1647961439546/work
pyvista==0.35.1
pywin32-ctypes==0.2.0
readme-renderer==28.0
requests-toolbelt==0.9.1
rfc3986==1.4.0
scipy==1.8.1
scooby==0.5.12
six @ file:///home/conda/feedstock_root/build_artifacts/six_1620240208055/work
tqdm==4.52.0
twine==3.2.0
vtk==9.1.0
webencodings==0.5.1
win32-setctime @ file:///home/conda/feedstock_root/build_artifacts/win32_setctime_1642883564726/work
wslink==1.6.6
yarl==1.7.2
zipp==3.8.1

Unable to reproduce this error on Ansys 2022R2 with ansys-mapdl-core==0.63.1 on Linux:
from ansys.mapdl.core import launch_mapdl

mapdl = launch_mapdl(mode="corba")

mapdl.prep7()
print(mapdl.parameters.routine)
with mapdl.non_interactive:
    mapdl.n(1)
print(mapdl.parameters.routine)

/home/akaszyns/source/pymapdl/src/ansys/mapdl/core/launcher.py:1566: UserWarning: CORBA AAS mode not recommended in MAPDL 2021R1 or newer.
Recommend using gRPC mode instead.
  warnings.warn(
PREP7
PREP7

@mikerife, could you please attempt to reproduce this error Windows?

Hi @akaszynski I am unable to test this - MAPDL seems to start but I get the following message:
MapdlRuntimeError: Unable to connect to APDL server
And there is something odd (to me) with the MAPDL processes that started up - two instances of ansys222.exe are running (one w/ -aas flag and one without, but with a -rcp flag and value shared with the ansys.exe instance.
Mike

I've got another windows machine, debugging once #1378 is done.


Reference to object XXX is ambiguous. Make sure you are not referencing packages containing objects with the same names.

Describe the bug
ERROR DISPLAYED ONLY FOR STANDARD PAGES
All of a sudden AL started showing this error for all Standard Pages in our AL project. "Reference to object Item List is ambiguous. Make sure you are not referencing packages containing objects with the same names."
app.json contains following information
{
"id": "xxxxxxxxxxxxxx,
"name": "OnPrem",
"publisher": "Default publisher",
"version": "<IP_ADDRESS>",
"brief": "Set Brief",
"description": "Description of the App",
"privacyStatement": "http://mydomain.com ",
"EULA": "http://mydomain.com",
"help": "http://mydomain.com",
"url": "http://mydomain.com",
"logo": "logo.png",
"dependencies": [
{
"appId": "63ca2fa4-4f03-4f2b-a480-172fef340d3f",
"publisher": "Microsoft",
"name": "System Application",
"version": "<IP_ADDRESS>"
},
{
"appId": "437dbf0e-84ff-417a-965d-ed2bb9650972",
"publisher": "Microsoft",
"name": "Base Application",
"version": "<IP_ADDRESS>"
}
],
"screenshots": [],
"platform": "<IP_ADDRESS>",
"idRanges": [
{
"from": 50000,
"to": 50050
}
],
"contextSensitiveHelpUrl": "https://mydomain.com/help/",
"showMyCode": true,
"runtime": "4.0",
"features": ["TranslationFile"]
}
Tried deleting the System Application dependency and the app. But the problem persists.
To Reproduce
Steps and to reproduce the behavior:

Go to '...'

AL Code to reproduce the issue
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
5. Versions:
4.0.209944

AL Language:

Business Central:
Version: W1 15.1 (Platform 15.0.37898.0 + Application 15.1.37881.38071)

This issue has been closed because it needs more information and has not had recent activity. Please open a new issue if you believe this has not been resolved and reference the current issue.

I am facing the same issue, could anyone please help me

Please open a new issue and provide a repro.


[CO#2][StreetCode page] An 'Unexpected Application Error' appears when the user wants to come back to the 'StreetCode' page from any burger menu page

Environment: Windows 11,
Google Chrome Version 111.0.5563.147 (64-bit)
Reproducible: Always
Build found: 0230695
Preconditions

The site is open.
At least one StreetCode has been created.

Steps to reproduce

Go to the 'StreetCode' page.
Click on 'Burger menu'.
Go to some page from the list.
Click the 'Back' button and return to the 'StreetCode' page.

Actual result
"Unexpected Application Error" appears.
[The same behavior is observed in the footer section with regard to vacancies]
[Same on mobile]
https://github.com/ita-social-projects/StreetCode/assets/135108144/ad6c00ba-3b40-4c07-9bd4-ab9b11f9b285
Expected result
The user is redirected to the 'StreetCode' page.

This error is caused by line 120 in StreetcodeCard.component which is a part of not working metatag helmet.


[Request for external] codeunit 9176 "User Settings" with new GetAllowedCompaniesForCurrentUser

I would like the procedure GetAllowedCompaniesForCurrentUser from codeunit 9175 "User Settings Impl." to be accesible from codeunit 9176 "User Settings", so I expect something like this:
codeunit 9176 "User Settings"
{
    procedure GetAllowedCompaniesForCurrentUser(var TempComany: Record Company)
    var
        UserSettingsImpl: Codeunit "User Settings Impl.";
    begin
        UserSettingsImpl.GetAllowedCompaniesForCurrentUser(TempCompany);
    end;
}

Hi @deadmouse, what do you need this for?

Because if I do:
Company.FindSet();
repeat
...

And a user doesn't have rights to read X company, an error is thrown saying you don't have access. I want to avoid that error.

Availability update: We will publish a fix for this issue in the next update for release 21.
Build ID to track: .


Fragments

Hi, Thanks for the library. It looks and works fantastic. One question, though. How can I attach different fragments to different tabs?
Thanks.

Hello. Thanks a lot. Just use method setViewPager() and use the FragmentPagerAdapter on it.

@GIGAMOLE do you have a working example of this?

Look at the sample. There are ViewPager. Or look at the sample of another my library: https://github.com/DevLight-Mobile-Agency/InfiniteCycleViewPager.


Some suggestions

hey Andreas,
I see you're still updating it I know how challenging it could be lol, I had my try with autohotkey and built some big scripts haha
I have some suggestions that would be amazing to add in your bot:

a way to auto collect stamps from Queen's finance office, to sell 3k kickbacks bundles (best value offer)

a way to upgrade advisors automatically using the available decrees there and toggle it off to prevent it from upgrading low level advisors with high level decrees(maybe a drop down menu for the maximum decree level or built-in like you do with building), something like that, usually that would be decrees 20+ because till decree +19 can  be farmed (maybe that can be changed later on), and from 0 to 10 can be upgraded without decrees at all, also to serve time whenever an advisor is arrested.

a way to add desired advisors like marching/decrease build advisors in a folder or a quick way to deploy all 3 with a click of a button(or uk, the fastest way because the game can get laggy).

a way to watch ads automatically from watch& earn that can restart the watching process if no ads are showing and collect box when 5 ads are done watching

a new tab to open bundles, troop bundles (either built-in or selective) and misc

If you need an account to test it out lemme know
P.S: my offer still stands, you're welcome to join my crew anytime :)
maybe the game gets you interested xD
Best Regards
MT8

Hey,
Thanks for the suggestions, I will look into if I can automate them :)
I'm playing on the Corozzo server right now. What server are you on?

I'm on Masseria

Okay, I will. My nick is NeoGeo.

hmm, the game just assigned me a random familie :( So I have to wait until I get a "Change Familie" until I can join...

sorry for my late reply, I have been busy and totally forgot to reply
I didn't know that the game implemented that weird system...that's very unhandy...weird
if you have line messenger app so I can contact you through it, maybe I can get you an account that's already in our family
my line id is: mercy.main.btw

I have added Financier Office Support. I will split your other suggestions into other issues.


Hotfix/1.2.4

Do not close, this is for code review and CI

Changes Unknown when pulling 1e81b0aac1bf307dd1b369bb3060d91703bdf72a on hotfix/1.2.4 into ** on master**.


[master] Retention policy not enforced ?

Hello, I'm experiencing issues with retention not being enforced as I intented (maybe some misconfiguration ?)
Running on current master (deabf8d2a8e60e701c32302b569a1006ba378ee5)
I can see values older than the retention policy:
InfluxDB shell 0.9
> show retention policies on collectd
name    duration        replicaN        default
default 1h0m0s          1               true

> select value from cpu_value where host='danska' and time > now() - 48h limit 1
name: cpu_value
---------------
time                            value
2015-08-17T00:00:00.39513Z      0

> select value from cpu_value where host='danska' and time > now() - 1h limit 1
name: cpu_value
---------------
time                            value
2015-08-17T18:54:40.395196Z     0

But the policy is enforced somehow, it shows up in the logs:
[metastore] 2015/08/17 01:32:03 new shard group 2 successfully created for database collectd, retention policy default
[retention] 2015/08/17 01:32:04 retention policy shard deletion check commencing
[retention] 2015/08/17 01:32:04 retention policy enforcement check commencing
...
(multiple times between 01:32:04 and 03:02:04)
[retention] 2015/08/17 01:42:04 retention policy shard deletion check commencing
[retention] 2015/08/17 01:42:04 retention policy enforcement check commencing
...
[retention] 2015/08/17 03:02:04 retention policy shard deletion check commencing
[retention] 2015/08/17 03:02:04 retention policy enforcement check commencing
[retention] 2015/08/17 03:02:04 deleted shard group 1 from database collectd, retention policy default
...
[retention] 2015/08/17 03:12:04 retention policy shard deletion check commencing
[retention] 2015/08/17 03:12:04 retention policy enforcement check commencing
[retention] 2015/08/17 03:12:04 shard ID 1 deleted
...

I don't know if it bears any significance, but the records kept by the retention are all timestamped to 2015-08-17T00:00:00

How long are you waiting after writing the points before expecting retention enforcement to delete the data?

I was expecting the old data to be deleted at each pass of retention policy enforcement check commencing, so between 1h and 1h + retention.check-interval. Currently the oldest point is 24h old.

The system performs retention checks every 10 minutes. If you have written data with a timestamp older than 1 hour ago, into a retention policy with a period of 1 hour, waited at least 10 minutes, and still see the data, I would say that there may be a bug.
Can you show us a sequence of commands (or curl commands ideally) that shows creation of the database and retention policy, writes a point (showing the timestamp), wait for the policy check to run, and show a SELECT query returning that point?

The suggested scenario is working:
[root@danska ~]# curl -G 'http://localhost:8086/query' --data-urlencode "q=CREATE DATABASE test_retention"
{"results":[{}]}

[root@danska ~]# curl -G 'http://localhost:8086/query' --data-urlencode "q=SHOW RETENTION POLICIES ON test_retention"
{"results":[{"series":[{"columns":["name","duration","replicaN","default"],"values":[["default","0",1,true]]}]}]}

[root@danska ~]# curl -G 'http://localhost:8086/query' --data-urlencode "q=ALTER RETENTION POLICY default ON test_retention DURATION 1h"
{"results":[{}]}[

[root@danska ~]# curl -G 'http://localhost:8086/query' --data-urlencode "q=SHOW RETENTION POLICIES ON test_retention"
{"results":[{"series":[{"columns":["name","duration","replicaN","default"],"values":[["default","1h0m0s",1,true]]}]}]}

[root@danska ~]# curl -i -X POST 'http://localhost:8086/write?db=test_retention' --data-binary 'cpu_load_short,host=server01,region=us-west value=0.64<PHONE_NUMBER>000000000'
HTTP/1.1 204 No Content
Request-Id: 9553d00d-459c-11e5-8231-000000000000
X-Influxdb-Version: 0.9
Date: Tue, 18 Aug 2015 11:30:52 GMT

[root@danska ~]# curl -G 'http://localhost:8086/query' --data-urlencode "db=test_retention" --data-urlencode "q=SELECT * FROM cpu_load_short"
{"results":[{"series":[{"name":"cpu_load_short","columns":["time","host","region","value"],"values":[["2015-06-11T20:46:02Z","server01","us-west",0.64]]}]}]}

[root@danska ~]# date
mar. août 18 13:32:38 CEST 2015

[root@danska ~]# curl -i -X POST 'http://localhost:8086/write?db=test_retention' --data-binary 'cpu_load_short,host=server01,region=us-west value=2'
HTTP/1.1 204 No Content
Request-Id: f55ec375-459c-11e5-8235-000000000000
X-Influxdb-Version: 0.9
Date: Tue, 18 Aug 2015 11:33:33 GMT

[root@danska ~]# curl -G 'http://localhost:8086/query' --data-urlencode "db=test_retention" --data-urlencode "q=SELECT * FROM cpu_load_short"
{"results":[{"series":[{"name":"cpu_load_short","columns":["time","host","region","value"],"values":[["2015-06-11T20:46:02Z","server01","us-west",0.64],["2015-08-18T11:33:33.851544066Z","server01","us-west",2]]}]}]}

[root@danska ~]# curl -G 'http://localhost:8086/query' --data-urlencode "db=test_retention" --data-urlencode "q=SELECT * FROM cpu_load_short"
{"results":[{"series":[{"name":"cpu_load_short","columns":["time","host","region","value"],"values":[["2015-08-18T11:33:33.851544066Z","server01","us-west",2]]}]}]}

Associated logs:
[metastore] 2015/08/18 13:35:49 new shard group 5 successfully created for database test_retention, retention policy default
[retention] 2015/08/18 13:35:50 retention policy shard deletion check commencing
[retention] 2015/08/18 13:35:50 retention policy enforcement check commencing
[retention] 2015/08/18 13:35:50 deleted shard group 3 from database test_retention, retention policy default
[retention] 2015/08/18 13:35:50 deleted shard group 5 from database test_retention, retention policy default

Regarding my main database, I can see a difference with the test scenario: my points are being created with the current time (using collectd), not with a timestamp which is already old. In this case I have records 36 hours old.
I'll check in 1 hour if the second message inserted in the test_retention database has been removed or not.

The record inserted earlier in the test_retention db is still there, with an age > 80m:
[root@danska ~]# curl -G 'http://localhost:8086/query' --data-urlencode "db=test_retention" --data-urlencode "q=SELECT * FROM cpu_load_short where time < now() - 80m"
{"results":[{"series":[{"name":"cpu_load_short","columns":["time","host","region","value"],"values":[["2015-08-18T11:33:33.851544066Z","server01","us-west",2]]}]}]}

@papylhomme Are you running a single node or multi-node cluster?

It's a single node. I'm trying the test case on another platform just in case.
From the look of it, I'm not sure it's a problem a policy enforcement: when there is multiple shard/shard group, records are being deleted, but somehow all my records seems to be in one shard/shard group and there is no new one created. I'm basing this assumption on the fact that there is only a single file in /var/lib/influxdb/data/collectd/default, and also there is no log new shard group x successfully created for database collectd, retention policy default
Can you give me some hint to add some log in the source files ? I'm starting to look into it but I'm at lost regarding the relation between point insertion and shard creation.

It seems shard group duration is not updated when altering the retention policy, with a default of 1 week<PHONE_NUMBER>00000 nanoseconds).
Added log:
diff --git a/cluster/points_writer.go b/cluster/points_writer.go
index b5a7863..4816821 100644
--- a/cluster/points_writer.go
+++ b/cluster/points_writer.go
@@ -158,16 +158,21 @@ func (w *PointsWriter) MapShards(wp *WritePointsRequest) (*ShardMapping, error)
                return nil, err
        }

+  w.Logger.Printf("ShardGroupDuration is %d", rp.ShardGroupDuration)
+
        for _, p := range wp.Points {
                timeRanges[p.Time().Truncate(rp.ShardGroupDuration)] = nil
+    w.Logger.Printf("Truncating time to %s", p.Time().Truncate(rp.ShardGroupDuration).String())
        }

        // holds all the shard groups and shards that are required for writes
        for t := range timeRanges {
+    w.Logger.Printf("Requesting shard group for %s", t.String())
                sg, err := w.MetaStore.CreateShardGroupIfNotExists(wp.Database, wp.RetentionPolicy, t)
                if err != nil {
                        return nil, err
                }
+    w.Logger.Printf("Received shard group %d with start time %s end time %s", sg.ID, sg.StartTime.String(), sg.EndTime.String())
                timeRanges[t] = sg
        }

Scenario:

create a database
insert a point to display shard group duration on the logs
alter the retention policy
insert a new point to display shard group duration on the logs

Result:
[http] 2015/08/19 13:23:55 ::1 - - [19/Aug/2015:13:23:55 +0200] GET /query?q=CREATE%20DATABASE%20test_retention HTTP/1.1 200 16 - curl/7.43.0 c70f5451-4664-11e5-8001-000000000000 103.426514ms
[write] 2015/08/19 13:23:59 ShardGroupDuration is<PHONE_NUMBER>00000
[write] 2015/08/19 13:23:59 Truncating time to 2015-08-17 00:00:00 +0000 UTC
[write] 2015/08/19 13:23:59 Requesting shard group for 2015-08-17 00:00:00 +0000 UTC
[write] 2015/08/19 13:23:59 Received shard group 1 with start time 2015-08-17 00:00:00 +0000 UTC end time 2015-08-24 00:00:00 +0000 UTC
[http] 2015/08/19 13:23:59 ::1 - - [19/Aug/2015:13:23:59 +0200] POST /write?db=test_retention HTTP/1.1 204 0 - curl/7.43.0 c953906e-4664-11e5-8002-000000000000 256.519948ms
[http] 2015/08/19 13:24:09 ::1 - - [19/Aug/2015:13:24:09 +0200] GET /query?q=ALTER%20RETENTION%20POLICY%20default%20ON%20test_retention%20DURATION%201h HTTP/1.1 200 16 - curl/7.43.0 cf71664b-4664-11e5-8003-000000000000 53.118622ms
[write] 2015/08/19 13:24:15 ShardGroupDuration is<PHONE_NUMBER>00000
[write] 2015/08/19 13:24:15 Truncating time to 2015-06-08 02:00:00 +0200 CEST
[write] 2015/08/19 13:24:15 Requesting shard group for 2015-06-08 02:00:00 +0200 CEST
[write] 2015/08/19 13:24:15 Received shard group 2 with start time 2015-06-08 00:00:00 +0000 UTC end time 2015-06-15 00:00:00 +0000 UTC
[http] 2015/08/19 13:24:15 ::1 - - [19/Aug/2015:13:24:15 +0200] POST /write?db=test_retention HTTP/1.1 204 0 - curl/7.43.0 d2ea493b-4664-11e5-8004-000000000000 256.208142ms

OK, so I have a fix for my case, updating the rpi.ShardGroupDuration when updating the retention policy duration (see patch below). However this asks for other questions:

what about existing shards ? On my use case, what I would do is loop over rpi.ShardGroups and update their EndTime (possibly to time.Now() if the new duration is already exceeded)
shards (and by the way retention policies) don't look to be designed to enforce a strict time interval to retain values (bullets below). Is this an intended choice for the project or will/can it change in the future ? I'm not looking for pinpoint accuracy, but I'm dealing with low and fixed space constraint (coming from the land of RRD, the fixed and foreseeable size of the DB is a major feature :-D)

Shards are expired when EndTime + rpi.Duration is passed, not just EndTime
func shardGroupDuration result is "loosely" based on rpi.Duration

diff --git a/meta/data.go b/meta/data.go
index 33c829b..ac5a240 100644
--- a/meta/data.go
+++ b/meta/data.go
@@ -212,6 +212,7 @@ func (data *Data) UpdateRetentionPolicy(database, name string, rpu *RetentionPol
        }
        if rpu.Duration != nil {
                rpi.Duration = *rpu.Duration
+               rpi.ShardGroupDuration = shardGroupDuration(*rpu.Duration)
        }
        if rpu.ReplicaN != nil {
                rpi.ReplicaN = *rpu.ReplicaN

Thanks for your detailed analysis @papylhomme -- there does indeed seem to be an issue here. I'll look into it shortly.

https://github.com/influxdb/influxdb/pull/3736 will fix the issue in the code.
Existing shard groups are not changed when the retention policy changes. Right now retention policy changes only apply to shard groups moving forward. It does not affect data that has already been written. That may be something we may need to change, and I will open a ticket.

Thanks, I'm trying this on a new DB with collectd, I'll close this issue tomorrow once I can monitor what happened this night.

Problem fixed for retention enforcment, records are deleted after approx. 2h (as expected with shard expiration = shardGroup.EndTime + rpi.Duration)
However I'm experiencing a strange behaviour when querying the data:

simple query select * from users_value where time > now() - 6h return first result at 16h00 (expected), and point every 10 seconds till 18:30:00
query select mean(value) from users_value where time > now() - 6h group by time(10s) return 1 value at  16:00:00 and nothing for 16:XX:XX, 1 value for 17:00:00 and nothing for 17:XX:XX, and a value for each 10 seconds in 18:XX:XX

Does the aggregate functions (mean and others) work over multiple shard groups ? If so, I'm not sure if this is related to the latest fix or another commit interfering, so do I close this issue and open a new one ?
I will try to apply the fix on the version I was running previously (I know it was displaying more than the last hour of value), but it will have to wait till the end of the week.

Thanks @papylhomme.
It would be most helpful if you could open a new issue if you have suspicions about query behaviour. Please include all the details above.

OK I'll do that, primary problem is fixed

Closing this issue as the retention policy behavior is not a bug.
@papylhomme can you open a new issue for the query issue you are seeing? Please include the actual output from the query.

how did you solve the problem?


Custom PrePremission Dialog

How can I use a custom Pre-Permission Dialog?

Right now the API is only setup to use Apples standard alert view.  If there is desire for a custom dialog I can see about updating the API.  Would you prefer to have it integrate something like SCLAlertView  https://github.com/vikmeup/SCLAlertView-Swift ?  Or have the user provide their own implementation of an "alert" type protocol?