Giter Club home page Giter Club logo

Comments (12)

berrnd avatar berrnd commented on June 4, 2024 1

As mentioned multiple times, Grocy doesn't do anything time related on table (or any other) options, since this absolutely makes no sense. If you obviously don't believe that for whatever unintelligible reason, simply have a look the the corresponding code, this is Open Source, there are no secrets about anything, I do everything publicly.

So when you despite all that still insist on that it's time related, that's fine but I would need multiple hours or more likely days to dig into that based on the reproduction step "after 2,5 hours or more", I most likely won't invest that much time in the foreseeable future on this. Also because I simply know time is irrelevant, there must be something else (most likely only on your side or on anybody's who has that rare "problem").

And as also mentioned multiple times on that topic, I'm a (daily, multiple times) Grocy user myself, longer than anybody else on this planet and never had this problem. Yes, believe also that or not, I don't care that much.

from grocy.

berrnd avatar berrnd commented on June 4, 2024

as this should be stored inside the user's preferences and not locally on the device

That's already the case - no need for faith or false claims, this is software, and Open Source - code ref:

'stateSaveCallback': function(settings, data)
{
var settingKey = 'datatables_state_' + settings.sTableId;
if ($.isEmptyObject(data))
{
// state.clear() was called (resetting table layout)
Grocy.FrontendHelpers.DeleteUserSetting(settingKey, true);
}
else
{
// Don't save when the state data hasn't actually changed
if (Grocy.UserSettings[settingKey] !== undefined)
{
var data1 = JSON.parse(Grocy.UserSettings[settingKey]);
delete data1.time;
delete data1.childRows;
var data2 = Object.assign({}, data); // Clone `data` without reference
delete data2.time;
delete data2.childRows;
if (JSON.stringify(data1) == JSON.stringify(data2))
{
return;
}
}
Grocy.FrontendHelpers.SaveUserSetting(settingKey, JSON.stringify(data));
}
},
'stateLoadCallback': function(settings, data)
{
var settingKey = 'datatables_state_' + settings.sTableId;
if (Grocy.UserSettings[settingKey] == undefined)
{
return null;
}
else
{
return JSON.parse(Grocy.UserSettings[settingKey]);
}
},

from grocy.

pascallj avatar pascallj commented on June 4, 2024

I believe you straight away if you say that Grocy doesn't do anything time related on table options. Maybe it is a server caching issue, who knows.

And I also believe you if you say you are a Grocy user yourself multiple times a day and haven't encountered this. However it seems for now that this issue is related to not using Grocy for x amount of time. Maybe your heavy use of Grocy (do you leave any instance open permanently?) is exactly why it isn't happening.

If you're not willing to investigate this (for whatever reason that doesn't matter), that is also fine. However I hope we can still find an agreement on the fact that this issue exists or not. That way if someone wants to investigate, they at least have a starting point.

So please, I don't ask you to fix this bug, however I hope you are willing to test if this bug happens for you on the demo server as well. For me it took a minute to set this test up, set an alarm, and a minute to confirm it after 2,5 hours. If not, that is also fine, but please leave the issue open so we collectively find out and narrow down why it is happening.

as this should be stored inside the user's preferences and not locally on the device

That's already the case - no need for faith or false claims, this is software, and Open Source - code ref:

'stateSaveCallback': function(settings, data)
{
var settingKey = 'datatables_state_' + settings.sTableId;
if ($.isEmptyObject(data))
{
// state.clear() was called (resetting table layout)
Grocy.FrontendHelpers.DeleteUserSetting(settingKey, true);
}
else
{
// Don't save when the state data hasn't actually changed
if (Grocy.UserSettings[settingKey] !== undefined)
{
var data1 = JSON.parse(Grocy.UserSettings[settingKey]);
delete data1.time;
delete data1.childRows;
var data2 = Object.assign({}, data); // Clone `data` without reference
delete data2.time;
delete data2.childRows;
if (JSON.stringify(data1) == JSON.stringify(data2))
{
return;
}
}
Grocy.FrontendHelpers.SaveUserSetting(settingKey, JSON.stringify(data));
}
},
'stateLoadCallback': function(settings, data)
{
var settingKey = 'datatables_state_' + settings.sTableId;
if (Grocy.UserSettings[settingKey] == undefined)
{
return null;
}
else
{
return JSON.parse(Grocy.UserSettings[settingKey]);
}
},

Maybe it was a language barrier here, but that is exactly what I meant. I know that is what is meant to happen and what is in the code and therefore the outcome is not as expected. No false claim or faith intended here.

from grocy.

berrnd avatar berrnd commented on June 4, 2024

Maybe your heavy use of Grocy (do you leave any instance open permanently?) is exactly why it isn't happening.

And just to roll out another myth: In the same way Grocy doesn't do anything time related on table options, it doesn't do anything based on if there's a Browser window somewhere open or if it's idling or not. So this doesn't matter, but yes, I have pretty much all the time a Grocy client open somewhere. In fact "the Grocy server" doesn't even know a tiny bit about that all, since it doesn't need it for anything. Still no need to believe my sermon on that, the code is here to be reviewed by each and everyone living on the same planet I do.

from grocy.

berrnd avatar berrnd commented on June 4, 2024

This is a continuation of #1366
reported in YunoHost-Apps/grocy_ynh#43
so we collectively find out and narrow down why it is happening

So more than 3 years and based on the reports a handful of people or so noticing this problem, nobody is giving a shit in the same time in the sense of investing some of their time, when this is important for one, to find => this? Even no proper reproducible reports can be provided most of the time. I guess that's that "collectively find out"-thing.

 

I don't invest any of my time into this today or in the foreseeable future

I sometimes don't understand myself why I feel obligated to invest more than a lot of time into other people's problems. This is not a commercial product, nobody would be even willing to pay the price calculated based on how much time I've invested into all that here over the years. The expectations people have for such a product are lately and since a longer time frustrating af. So despite what I've said a couple of hours ago, I've invested once again multiple hours digging into and "fixing" this for others, not for me (since I still haven't had that, despite the referenced DataTable documentation tells something else, but my personal reference is only reality, always). When I do the same on my job, this would be worth a couple of hundreds of those money we tend to use here. Just saying. I can't be the only one on this planet who uses Grocy who is able to solve that, but I'm maybe the only dumb person investing way too much of his time, even having not that much fun while doing that (especially lately) and calling that a hobby.

from grocy.

pascallj avatar pascallj commented on June 4, 2024

Thank you so much for your hard work, it's really appreciated.

This is a continuation of #1366
reported in YunoHost-Apps/grocy_ynh#43
so we collectively find out and narrow down why it is happening

So more than 3 years and based on the reports a handful of people or so noticing this problem, nobody is giving a shit in the same time in the sense of investing some of their time, when this is important for one, to find => this? Even no proper reproducible reports can be provided most of the time. I guess that's that "collectively find out"-thing.

Remember I am a Grocy user, not a developer. I have zero knowledge on how to develop Grocy. I have no idea where even to look and what datatables are and why they are used. So how on earth did you expect me to find that and to even know that it is relevant.

Everyone should be able to report issues even if they are not developers. We can collectively find out where issues are and how to reproduce them, but fixing them, in this software package is beyond my limits, I am sorry for that.

I don't invest any of my time into this today or in the foreseeable future

I sometimes don't understand myself why I feel obligated to invest more than a lot of time into other people's problems. This is not a commercial product, nobody would be even willing to pay the price calculated based on how much time I've invested into all that here over the years. The expectations people have for such a product are lately and since a longer time frustrating af.

Again I am just reporting an issue, nothing more, nothing less, there are zero expectations here.

When I do the same on my job, this would be worth a couple of hundreds of those money we tend to use here. Just saying. I can't be the only one on this planet who uses Grocy who is able to solve that, but I'm maybe the only dumb person investing way too much of his time, even having not that much fun while doing that (especially lately) and calling that a hobby.

This is the same with every FOSS project which is not big enough or if the feature or bug is too small to notice. I am pretty sure most people use the default view, which is why it got unnoticed for so long.

I really appreciate you looking into this! I really do.

from grocy.

berrnd avatar berrnd commented on June 4, 2024

So how on earth did you expect me to find that and to even know that it is relevant.

If it's an important thing for someone, digging into even unknown territory is always possible, it just takes time. For some more, for some less, your (publicly published) background should pretty much fit for the later. Grocy is built upon donating time and a "user" who is able to use Grocy is able to do that. The question is not about being able to, more about being willing to and that's unfortunately more than often the lacking part. Just look around the thousands of requests here and then go on with the other thousands on the r/grocy subreddit (btw. also for 97 % or so solely answered by me, the dumbest man on planet earth). After doing that, you maybe understand what I wrote here and elsewhere better and why I'm still unsure if 2024 will be the year of Grocy 5.0 or the year of trashing this project into the dumpster.

from grocy.

pascallj avatar pascallj commented on June 4, 2024

I don't say I couldn't figure it out, just not right now. I even probably would investigate this after some time if the issue bothered me enough. However that should never prevent me to report the issue now. If someone has stumbled across a similar bug in another project for example, they can read this and immediately know, that's because this or that.

I don't think we can get an agreement on users versus developers, but I am sure that a very large portion of the Grocy users, are no software developers and can never spend any feasible amount of time learning how to fix this.

from grocy.

valadas avatar valadas commented on June 4, 2024

I'm still unsure if 2024 will be the year of Grocy 5.0 or the year of trashing this project into the dumpster

@berrnd I totally understand your feelings. It is hard to maintain a popular open source project for free. I am sure many users would be willing to sponsor some of that work to ease the pain (I know I would). Grocy is awesome and I'd gladly sponsor a v5 :) Have you considered setting up for github sponsorships ?

from grocy.

berrnd avatar berrnd commented on June 4, 2024

I'd gladly sponsor a v5 :) Have you considered setting up for github sponsorships ?

Well, simply check the README and the there linked site https://grocy.info/#say-thanks or that sponsor button GitHub has invented for exactly that (reading READMEs, that very hard thing - exactly the topic I'm talking about).

And what do you think that should bring? This is a hobby, so driven by desire only. Hobbies are naturally not about money, it's even ok that they cost something. But it should be fun. So I totally don't get what money should change, unless it's an amount equally to what I get out of my job, which makes at the end also this hobby here possible. So yeah, if an amount equally to what I need for a year or so for living will be sponsored there, I'm maybe thinking about making Grocy my full time job. So far the money amount hardly pays the server everything Grocy related is hosted on. But that's ok, since and as said, this is a hobby of mine, nothing more or less and hobbies are fine to cost something, but they should bring fun and not frustration and that's the point.

from grocy.

valadas avatar valadas commented on June 4, 2024

@berrnd I was looking for github sponsorships as I have some issues with paypal and sadly can't do recurring or those payments get accounted on the company instead of personal. I just did a one-time yearly donation and set up a recurring task to remind me next year. I it not something you'll get rich with but hopefully if many do similar, it can help alleviate some of that burden. Grocy is great!

Also I am a developer and could potentially help here and there where I can but I am more in the .Net ecosystem and know php just enough to be dangerous :)

from grocy.

berrnd avatar berrnd commented on June 4, 2024

I just did a one-time yearly donation

First of all: Thanks. Of course such smaller or bigger donations, so money, are a friendly gesture and can thrive motivation - in the past sometimes that was even the case for me and Grocy. But just to not create false illusions: It's not what I'm looking for on the first place with that hobby, as mentioned pretty clearly on grocy.info/#say-thanks. And to be super honest, perhaps sounding arrogant: I don't need it - a 1, 100 or 1000 dollar donation changes essentially nothing for me or Grocy. As mentioned before, when we talk about the point when I would be able making Grocy my job, that would be another story, but also to be honest, I don't know if I'd really wanted that. Even with donations there were those kind of people in the past which leave a comment like "here's something for having a beer or two, but implementing feature request xy would be great". Even that I do of course know I'm not obligated for anything, subconsciously that does create some stress, probably a natural thing. Since I don't want that, I've sent such donations back immediately so far (happened multiple times over the years and even with 3-digit donations, the last time around Christmas 2023). I probably could write a book about so many annoying and sometimes disgusting things happened related to that all in the last seven years. But I also know that the vast majority of users are the ones just enjoying Grocy how it is. Maybe having a simpler, more organized home and life with it - just as I do and why I created a solution for my very own problems (ref README/Motivation and v1.0.0 - remembering times where the thrive was another one). But as with many things, a small amount of assholes can destroy everything and nobody of us can change the world on that. Sorry for all that off-topic blabbering - just wanted to say that Grocy is really not about money, but thanks.

from grocy.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.