PokiPoki in KDEReview

Albert Astals Cid aacid at kde.org
Thu Aug 27 21:49:37 BST 2020


El dijous, 27 d’agost de 2020, a les 22:40:07 CEST, Carson Black va escriure:
> Am Do., 27. Aug. 2020 um 16:25 Uhr schrieb Albert Astals Cid <aacid at kde.org=
> >:
> >
> > El dimecres, 26 d=E2=80=99agost de 2020, a les 15:08:37 CEST, Carson Blac=
> k va escriure:
> > > Hi y'all!
> > >
> > > I'd like to see PokiPoki go through KDEReview and eventually end up
> > > releasing as an extragear library.
> > >
> > > PokiPoki is a framework that aims to make persistent objects as
> > > trivial to use as possible and provides other sugar functionality on
> > > top of simply persisting objects, such as an undo/redo stack.
> > >
> > > From a code overview, PokiPoki is split into two main parts:
> > > libpokipoki and pokic. libpokipoki is a small helper library that
> > > provides types used by pokic while pokic is a code generator that
> > > consumes .pokipoki files to generate a header-only library that can be
> > > included in a project.
> > >
> > > libpokipoki is authored in C++ for obvious reasons, while pokic is
> > > authored in Go due to the extensive text templating system used for
> > > code generation and the lexer in the stdlib used for reading pokipoki
> > > files.
> > >
> > > poki-compiler/parser/output.go will probably be the file that needs
> > > most looking at, as it's responsible for the code generation.
> >
> > WHAT IS THIS?
> > "unspeakably epic storage infinite in number that matches the speaker's e=
> xpectations that's not food which isn't gendered that will hopefully die by=
>  sheep with a market value less than 10 US dollars"
> 
> A translation of the old name of the project,
> fim(t)beb(f)vew(f)seb(p)san(t)ap(t)vlir(t)sang(b)es(p)u(t)vom(b)ngag(t)vlim=
> (p)kay(f)sna(f)kay(f)ga(f)bop(t)veg(p)daf(f)shof(b)*om(p)vlim(p)ga(f)vlim(p=
> )ga(f),
> into English. Yes, that is a bad project name and I am bad at naming
> projects legible names. See also: ilo kijetesantakalu, rjiendaujughyi.
> 
> > The AGPL license is probably not in line with our current licensing polic=
> y which says "Applications which are intended to be run on a server may be =
> licenced under the AGPL-3.0-or-later". This doesn't seem to be primarily fo=
> r servers.
> >
> > Running the example gives me
> >   QSqlError("19", "Unable to fetch row", "NOT NULL constraint failed: Not=
> e.title") when creating a new item of Note
> > Not sure it's wanted/expected
> >
> > You don't seem to be specifying the database in your sql queries, what if=
>  i have another database in my app?
> 
> Hmm, most likely something I should fix.
> 
> > your CMakeLists.txt calls itself ikona
> >
> > libpokipoki is missing from CMakeLists.txt
> 
> Fixed, and fixed.
> 
> > As someone that maintained a project with double buildsystem for a long t=
> ime, I strongly suggest not to do it (OTOH this is so trivial that it may b=
> e acceptable).
> >
> > Seems like this is the kind of project that would welcome some tests (som=
> ething like your example file but that it's tested for each build to make s=
> ure nothing regresses).
> 
> I'm not particularly too familiar with the Qt testing infrastructure,
> would you mind pointing me to resources on that /  lending a hand?

Look at what kconfig_compiler does.

It's the same scenario.

Cheers,
  Albert

> 
> Some tests for pokic will be coming up since I'm familiar with go test.
> 
> Cheers,
> -- Carson Black
> 
> > Cheers,
> >   Albert
> >
> >
> > >
> > > Cheers,
> > > -- Carson Black
> > >
> >
> >
> >
> >
> 
> Am Do., 27. Aug. 2020 um 16:25 Uhr schrieb Albert Astals Cid <aacid at kde.org>:
> >
> > El dimecres, 26 d’agost de 2020, a les 15:08:37 CEST, Carson Black va escriure:
> > > Hi y'all!
> > >
> > > I'd like to see PokiPoki go through KDEReview and eventually end up
> > > releasing as an extragear library.
> > >
> > > PokiPoki is a framework that aims to make persistent objects as
> > > trivial to use as possible and provides other sugar functionality on
> > > top of simply persisting objects, such as an undo/redo stack.
> > >
> > > From a code overview, PokiPoki is split into two main parts:
> > > libpokipoki and pokic. libpokipoki is a small helper library that
> > > provides types used by pokic while pokic is a code generator that
> > > consumes .pokipoki files to generate a header-only library that can be
> > > included in a project.
> > >
> > > libpokipoki is authored in C++ for obvious reasons, while pokic is
> > > authored in Go due to the extensive text templating system used for
> > > code generation and the lexer in the stdlib used for reading pokipoki
> > > files.
> > >
> > > poki-compiler/parser/output.go will probably be the file that needs
> > > most looking at, as it's responsible for the code generation.
> >
> > WHAT IS THIS?
> > "unspeakably epic storage infinite in number that matches the speaker's expectations that's not food which isn't gendered that will hopefully die by sheep with a market value less than 10 US dollars"
> >
> > The AGPL license is probably not in line with our current licensing policy which says "Applications which are intended to be run on a server may be licenced under the AGPL-3.0-or-later". This doesn't seem to be primarily for servers.
> >
> > Running the example gives me
> >   QSqlError("19", "Unable to fetch row", "NOT NULL constraint failed: Note.title") when creating a new item of Note
> > Not sure it's wanted/expected
> >
> > You don't seem to be specifying the database in your sql queries, what if i have another database in my app?
> >
> > your CMakeLists.txt calls itself ikona
> >
> > libpokipoki is missing from CMakeLists.txt
> >
> > As someone that maintained a project with double buildsystem for a long time, I strongly suggest not to do it (OTOH this is so trivial that it may be acceptable).
> >
> > Seems like this is the kind of project that would welcome some tests (something like your example file but that it's tested for each build to make sure nothing regresses).
> >
> > Cheers,
> >   Albert
> >
> >
> > >
> > > Cheers,
> > > -- Carson Black
> > >
> >
> >
> >
> >
> 








More information about the kde-core-devel mailing list