Re: [GNC-dev] Co-Owner

John Ralls <[email protected]>
Newsgroups gmane.comp.gnome.apps.gnucash.devel
Message-ID <[email protected]>

> On Jun 10, 2022, at 9:58 AM, Ralf Zerres <[email protected]> wrote:
> 
> 
> 
> Am Freitag, dem 10.06.2022 um 09:10 -0700 schrieb john:
>> 
>> 
>>> On Jun 10, 2022, at 1:40 AM, Ralf Zerres <[email protected]>
>>> wrote:
>>> 
>>> Hello mailinglist,
>>> 
>>> i do appologize for not coming up with this issue on this list
>>> before
>>> hacking and submitting a PR.
>>> 
>>> In any case (thanks John for your prompt answer on github) i do
>>> need to
>>> find a solution for my personal needs.
>>> And no, I do not want to buy a commercial solution (like Karthago,
>>> et.al).
>>> 
>>> Your decline message was short and without any further
>>> argumentation. I
>>> was a bit surprised on this.
>>> So i try to pick up the issue, since i do think this isn't out of
>>> topic
>>> at all. At least, if stock and customer/employee handling are
>>> welcome
>>> as first class citizens.
>>> 
>>> However, i hope we can at least discuss the idea before declining
>>> any
>>> action in the public.
>>> 
>>> If i have to go on myself, I'd like to get some help on how to
>>> debug
>>> the scm parts. Currently my code is compiling the .c and .cpp
>>> comits.
>>> As soon as the guile stuff need to create the wrapper libraries i
>>> do
>>> get errors and have no idea, on how to debug.
>>> Any help here is much appreciated
>>> 
>>> Ralf
>>> 
>>> Shell output:
>>> 
>>> $ cd $gnucash-root; mkdir ../gnucash-coowner
>>> $ # ../gnucash-coowner is $gnucash-coowner
>>> $ cd ../gnucash-coowner 
>>> $ cmake -DCMAKE_INSTALL_PREFIX=./gnucash-install -G Ninja
>>> ../gnucash-
>>> root
>>> 
>>> $ cd ninja
>>> 
>>> ...
>>> 
>>> $gnucash-coowner/lib/guile/2.2/site-ccache/tests/unittest-
>>> support.go
>>> /data/development/gnucash/gnucash/common/test-core/unittest-
>>> support.scmunittest-support.scm
>>> Backtrace:
>>> In ice-9/boot-9.scm:
>>> 705:2 19 (call-with-prompt _ _ #<procedure default-prompt-
>>> handle?>)
>>> In ice-9/eval.scm:
>>> 619:8 18 (_ #(#(#<directory (guile-user) 7f61bed5c140>)))
>>> In /usr/bin/guild:
>>> 72:17 17 (main _)
>>> In srfi/srfi-1.scm:
>>> 640:9 16 (for-each #<procedure 7f61bdf0d600 at
>>> scripts/compile.?>
>>> ?)
>>> In scripts/compile.scm:
>>> 264:26 15 (_ _)
>>> In system/base/target.scm:
>>> 57:6 14 (with-target _ _)
>>> In system/base/compile.scm:
>>> 152:6 13 (compile-file _ #:output-file _ #:from _ #:to _ #:env _
>>> ?)
>>> 43:4 12 (call-once _)
>>> In ice-9/boot-9.scm:
>>> 841:4 11 (with-throw-handler _ _ _)
>>> In system/base/compile.scm:
>>> 59:11 10 (_)
>>> 155:11  9 (_ #<closed: file 7f61bdf161c0>)
>>> 235:18  8 (read-and-compile #<input: unittest-support.scm 13> # _
>>> ?)
>>> 183:32  7 (compile-fold (#<procedure compile-tree-il (x e opts)>)
>>> ?)
>>> In ice-9/boot-9.scm:
>>> 2312:4  6 (save-module-excursion #<procedure 7f61bd2ebae0 at
>>> lang?>)
>>> In language/scheme/compile-tree-il.scm:
>>> 31:15  5 (_)
>>> In ice-9/psyntax.scm:
>>> 1262:36  4 (expand-top-sequence ((eval-when (compile load # #) #))
>>> ?)
>>> 1209:24  3 (parse _ (("placeholder" placeholder)) ((top) #(# # ?))
>>> ?)
>>> 285:10  2 (parse _ (("placeholder" placeholder)) ((top) #(# # ?))
>>> ?)
>>> In unknown file:
>>> 1 (load-extension "libtest-core-guile"
>>> "scm_init_unittest?")
>>> In ice-9/boot-9.scm:
>>> 752:25  0 (dispatch-exception _ _ _)
>> 
>> 
>> To amplify the rejection of your pull request: GnuCash has a scope
>> that's limited by its basic design and what the core development team
>> are able to maintain. That scope is basic accounting for personal and
>> very small business use, where very small means sole proprietors with
>> no employees (GnuCash has no payroll module). The multiple ownership
>> model of this change falls outside that scope. Furthermore it caters
>> to a very narrow single-nation use case that would be very difficult
>> for the current core team to maintain.
>> 
> Thanks for your clarification. I do know the time restrictions you have
> to address, if the development team is quite limited.
> And yes, the i don't address big company usage. MEG are small self
> maintaining orgs. Usually properties as a target will have 2-15 owners
> that do live in the apartement themself or offer it for rental.
> This should be quite common in all countries, right?
> 
>> Nevertheless the whole point of Free software is your freedom to
>> adapt it to your needs and this is the right place to ask for help
>> with that.
>> 
> Yes. One of the reasons i like to hack on it.
> 
>> As for the scheme problem, it looks like your C changes managed to
>> break compiling unitest-support.scm, but you chopped off a bit too
>> much to be sure. There should be two more lines at the bottom saying
>> what was the actual error and a few more lines leading up to the
>> stack trace would be helpful to be sure of the source of the error.
>> Turn on GitHub actions for your personal repository (see
>> https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/enabling-features-for-your-repository/managing-github-actions-settings-for-a-repository
>> ) and Github will run builds for you using the CI actions already in
>> GnuCash. Then you can just post a link to a failed one for us to help
>> you diagnose it.
>> 
>> To tackle the reason, i took your advice and activated CI actions for
>> the co-owner branch. Just have a look.
>> 
>> Regards,
>> John Ralls
>> 
> best Ralf

Please remember to copy the list on all replies.

Sole proprietor means one, not 2-15. MEGs might be small, but they would seem not to be small enough for GnuCash.

I don't know about all countries. I know about the US, where one would usually create a single legal entity (the most common are a Limited Liability Partnership or a Subchapter-S corporation; I'll leave it to you to look those up if you care to) with simple accounting and reporting requirements that are easily handled by GnuCash with a little hand work maintaining each partner's ownership interest in Equity accounts. Preparing the taxes has to be done with other software as always. A normal balance sheet and income statement from GnuCash are usually sufficient for the inputs.

Regards,
John Ralls
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.