From: Sam James <sam@gentoo.org>
To: gentoo-dev@lists.gentoo.org
Subject: Re: [gentoo-dev] Re: Standard parsable format for profiles/package.mask file
Date: Sat, 23 Sep 2023 14:59:15 +0100 [thread overview]
Message-ID: <875y412dlt.fsf@gentoo.org> (raw)
In-Reply-To: <678aa655-8de8-4653-b5a0-bd0bfc6a5fc2@gentoo.org>
Arthur Zamarin <arthurzam@gentoo.org> writes:
> [[PGP Signed Part:Undecided]]
> On 22/09/2023 17.50, Alex Boag-Munroe wrote:
>> On Fri, 22 Sept 2023 at 15:37, Sam James <sam@gentoo.org> wrote:
>>>
>>>
>>> Alex Boag-Munroe <ninpo@qap.la> writes:
>>>
>>>> Any reason for the parseable parts to not be in an established human
>>>> readable/editable format? e.g. the config ini style format, or TOML?
>>>
>>> The only issue really is that depending on how it's done (do we do
>>> it for the whole file, or just comments), it may need a new (profile)
>>> EAPI which will take a while to implement and deploy.
>>>
>>> If it's just for comments, then we can do it immediately though.
>>>
>>>>
>>>> To crib from the OP example with something configparser understands:
>>>> [PREAMBLE]
>>>> Timestamp: 2023-09-21 15:07:42+00:00
>>>> Author: Arthur Zamarin <arthurzam@gentoo.org>
>>>> Justification: Very broken, no idea why packaged, need to drop ASAP.
>>>> The project is done with supporting this package.
>>>> Bugs: 667687, 667689
>>>> Removal Date: 2023-10-21
>>>> Packages: dev-lang/python
>>>>
>>>> The format is well documented already and simple to check for
>>>> validity, so any GLEP would just need to cover correct keys/values.
>>>>
>>>
>>> But yeah, I agree it's worth thinking about a proper format rather than
>>> fragile text mangling going into the future.
>>>
>> Perhaps eventually it could/should be used for the whole file but as
>> an interim/beginning there's no reason you couldn't start with
>> comments:
>>
>> # [PREAMBLE]
>> # Timestamp: 2023-09-21 15:07:42+00:00
>> # Author: Arthur Zamarin <arthurzam@gentoo.org>
>> # Justification: Very broken, no idea why packaged, need to drop ASAP.
>> # The project is done with supporting this package.
>> # Bugs: 667687, 667689
>> # Packages: dev-lang/python
>> dev-lang/python
>>
>> This simply adds a pre parse step of stripping the comments then
>> feeding directly into configparser or probably more suitable, TOML
>> since TOML has better syntax for directly delivering things like a
>> "Packages:" key as a list.
>>
>> Redoing a bunch of package.* parsing probably wasn't in scope of the
>> OP but I've always wondered and this felt an opportune moment to
>> ask/suggest :)
>
> Thanks for the idea. Yes, it was out of scope such suggestions for me
> originally, but thinking more about it, I take it more positively.
> Please let me (and others) to consider it for some days, cause this is
> very interesting proposal. Things to consider is how much effort it is
> to file in future, which format to use, etc.
>
It's fine with me if we just go with the original for now, but I think
the awkwardness (which is not your fault, but the nature of wrangling
free-form text) of the specification shows that we should at some point
move to something structured.
But I don't consider it a blocker for doing something better than
the status quo.
Maybe we'll be better off just going straight for Exherbo-style
p.mask in future: https://ciaranm.wordpress.com/2011/03/27/classifying-repository-masks/
Ultimately, text munging sucks and there's only so much we can do to
polish it. But your original proposal is a good improvement on how things are now.
>> --
>> Ninpo
>>
next prev parent reply other threads:[~2023-09-23 14:01 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-09-21 19:40 [gentoo-dev] Standard parsable format for profiles/package.mask file Arthur Zamarin
2023-09-21 21:09 ` [gentoo-dev] " Florian Schmaus
2023-09-21 21:36 ` Ulrich Mueller
2023-09-21 21:48 ` Sam James
2023-09-22 6:39 ` Florian Schmaus
2023-09-22 6:53 ` Florian Schmaus
2023-09-22 9:46 ` Ulrich Mueller
2023-09-22 11:51 ` Ulrich Mueller
2023-09-22 14:01 ` Sam James
2023-09-22 14:26 ` Alex Boag-Munroe
2023-09-22 14:36 ` Sam James
2023-09-22 14:50 ` Alex Boag-Munroe
2023-09-22 17:28 ` Arthur Zamarin
2023-09-23 13:59 ` Sam James [this message]
2023-09-23 7:02 ` Ulrich Mueller
2023-09-23 13:54 ` Sam James
2023-09-23 14:01 ` Alex Boag-Munroe
2023-09-23 17:48 ` Ulrich Mueller
2023-09-24 18:29 ` Jonas Stein
2023-09-21 21:22 ` [gentoo-dev] " Ulrich Mueller
2023-09-21 22:10 ` Tim Harder
2023-09-21 22:19 ` Sam James
2023-09-22 3:54 ` Oskari Pirhonen
2023-09-22 12:12 ` Arthur Zamarin
2023-09-22 3:59 ` Oskari Pirhonen
2023-09-22 9:21 ` Ulrich Mueller
2023-09-22 9:53 ` Arthur Zamarin
2023-09-22 11:16 ` [gentoo-dev] " Florian Schmaus
2023-09-22 11:23 ` Jaco Kroon
2023-09-24 18:40 ` Jonas Stein
2023-09-25 12:03 ` Ulrich Mueller
2023-09-26 1:29 ` Oskari Pirhonen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=875y412dlt.fsf@gentoo.org \
--to=sam@gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox