Re: new eggs: split schematra's modules into their own eggs + hiredis egg

Rolando Abarca via Chicken-users <[email protected]>
Newsgroups gmane.lisp.scheme.chicken
Message-ID <CADnrc4CVgtQxMvwPbFoY21T_HS4KvB-6UW7WCv0bjeC2_Y6U6w@mail.gmail.com>
Hi Mario,

I made some fixes and improved my release script. It should be working now.
I had to change the URL for the release-info files. Here's updated info for
all the eggs (in dependency order):

* Chiccup (release-info URL changed)
  * release-info:
https://raw.githubusercontent.com/schematra/schematra/refs/heads/main/eggs/chiccup/chiccup.release-info
  * docs: https://wiki.call-cc.org/eggref/5/chiccup
* Schematra (release-info URL changed)
  * release-info:
https://raw.githubusercontent.com/schematra/schematra/refs/heads/main/eggs/schematra/schematra.release-info
  * docs: https://wiki.call-cc.org/eggref/5/schematra
* Schematra-session
  * release-info:
https://raw.githubusercontent.com/schematra/schematra/refs/heads/main/eggs/schematra-session/schematra-session.release-info
  * docs: https://wiki.call-cc.org/eggref/5/schematra-session
* Schematra-csrf
  * release-info:
https://raw.githubusercontent.com/schematra/schematra/refs/heads/main/eggs/schematra-csrf/schematra-csrf.release-info
  * docs: https://wiki.call-cc.org/eggref/5/schematra-csrf
* Oauthtoothy
  * release-info:
https://raw.githubusercontent.com/schematra/schematra/refs/heads/main/eggs/oauthtoothy/oauthtoothy.release-info
  * docs: https://wiki.call-cc.org/eggref/5/oauthtoothy

Thanks again,
- Rolando


On Tue, Aug 26, 2025 at 11:51 AM Mario Domenech Goulart <
[email protected]> wrote:

> Hi Rolando,
>
> On Mon, 25 Aug 2025 19:43:12 -0700 Rolando Abarca via Chicken-users <
> [email protected]> wrote:
>
> > I should've test this a bit more, I had to split one more egg. Now all
> deps should be properly packaged.
> >
> > * [new] schematra-csrf
> >   * release info:
> https://raw.githubusercontent.com/schematra/schematra/refs/heads/main/schematra-csrf.release-info
> >   * docs: http://wiki.call-cc.org/eggref/5/schematra-csrf
> >
> > Thanks!
> > - Rolando
> >
> > On Mon, Aug 25, 2025 at 4:30 PM Rolando Abarca <[email protected]>
> wrote:
> >
> >  Hi everyone,
> >
> >  Following some feedback I decided to split schematra into 3 (for now)
> different eggs:
> >  * schematra (no changes to this one, but I updated the tarball url in
> the release info)
> >  * [new] schematra-session: cookie-based session middleware
> >    * release info:
> >
> https://raw.githubusercontent.com/schematra/schematra/refs/heads/main/schematra-session.release-info
> >    * docs: http://wiki.call-cc.org/eggref/5/schematra-session
> >  * [new] oauthtoothy (oauth2 middleware)
> >    * release info:
> https://raw.githubusercontent.com/schematra/schematra/refs/heads/main/oauthtoothy.release-info
> >    * docs: http://wiki.call-cc.org/eggref/5/oauthtoothy
> >  * [new] chiccup (html rendering middleware)
> >    * release info:
> https://raw.githubusercontent.com/schematra/schematra/refs/heads/main/chiccup.release-info
> >    * docs: http://wiki.call-cc.org/eggref/5/chiccup
> >
> >  I'm trying to see if it would work to have some sort of mono-repo for
> the schematra eggs. They're all hosted here:
> >  https://github.com/schematra/schematra
>
> Thanks for splitting the schematra egg into separate eggs.  So far I've
> added chiccup to the coop.
>
> A couple of notes and questions for me to understand the current
> situation.
>
> If I understand correctly, we have the following dependencies:
>
> * schematra-session -> schematra
> * schematra-csrf -> schematra, schematra-session
> * oauthtoothy -> schematra, schematra-session
>
> * The currently released version of schematra (0.2.2) depends on
>   chiccup, but doesn't declare it a dependency, so installation fails:
>
> http://salmonella-linux-x86.call-cc.org/chicken-5/clang/linux/x86/2025/08/26/salmonella-report/install/schematra.html
>
> * Even if chiccup is installed, the installation of schematra fails with
>   Error: (open-input-file) during expansion of (define-version-constants
> ...) - cannot open file - No such file or directory:
> "schematra.release-info"
>
> * At the moment, assuming the schematra installation issues get solved
>   schematra will install a schematra-csrf module, which will conflict
>   with the schematra-csrf module installed by the schematra-csrf egg.
>
> * schematra-csrf (the module of schematra), depends on
>   schematra-session.  Since schematra-session depends on schematra, we
>   have a circular dependency.
>
> * oauthtoothy has a duplicated dependency on schematra in its egg file
>   (not an issue, but since I was looking into it, I thought it would be
>   good to point it out).
>
> Considering these issues, if we add those eggs, they won't be
> installable in their current state.  I don't have a good idea about the
> architecture of the schematra-related eggs.  Do you have a plan on how
> to make the eggs installable?
>
> It's possible that I'm missing something.  If that's the case, please
> let me know.
>
> >  I'm also releasing a new hiredis-based redis egg:
> >  * hiredis
> >    * available at: https://github.com/schematra/chicken-hiredis
> >    * release info:
> https://raw.githubusercontent.com/schematra/chicken-hiredis/refs/heads/main/hiredis.release-info
> >    * docs: http://wiki.call-cc.org/eggref/5/hiredis
>
> This one has an invalid category.  You probably mean `db' instead of
> `databases'.
>
> What are the requirements regarding the version of libhiredis?  With
> version 0.14 from Debian 12 I get the following error:
>
> executing: "sh /tmp/temp16ea.2571894/hiredis/0.1.0/hiredis.build.sh"
>    /tmp/temp16ea.2571894/hiredis/0.1.0/build-redis -host -D
> compiling-extension -J -s -regenerate-import-libraries -setup-mode -I
> /tmp/temp16ea.2571894/hiredis/0.1.0 -C -I/tmp/temp16ea.257189
> 4/hiredis/0.1.0 -O2 -d1 hiredis.scm -o
> /tmp/temp16ea.2571894/hiredis/0.1.0/hiredis.so
> In file included from /tmp/temp16ea.2571894/hiredis/0.1.0/hiredis.c:11:
> /tmp/temp16ea.2571894/hiredis/0.1.0/redis_helpers.c: In function
> `redisReplyDouble':
> /tmp/temp16ea.2571894/hiredis/0.1.0/redis_helpers.c:14:11: error:
> `redisReply' has no member named `dval'
>    14 |   return r->dval;
>       |           ^~
>
> All the best.
> Mario
> --
> https://parenteses.org/mario
>
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.