Skip to content

feat: remove LLM agent development helper documents#63

Open
okurz wants to merge 60 commits intoopenSUSE:masterfrom
okurz:feature/issue62_remove_llm_agent_files
Open

feat: remove LLM agent development helper documents#63
okurz wants to merge 60 commits intoopenSUSE:masterfrom
okurz:feature/issue62_remove_llm_agent_files

Conversation

@okurz
Copy link
Member

@okurz okurz commented Mar 9, 2026

Motivation:
LLM targeted development helpers (e.g., CLAUDE.md, GEMINI.md, AGENTS.md)
are not necessary for production packages and should be removed during
the build process to maintain a clean package.

Design Choices:

  1. Updated find_doc to exclude these files from the %doc file list to
    prevent RPM build failures.
  2. Modified the %prep section in the generated spec file to physically
    remove these files with 'rm -f' after %autosetup.
  3. Added a new test file t/20.llm_cleanup.t to verify find_doc behavior.

User Benefits:
Provides cleaner production packages by stripping unnecessary development-only
helper files.

Fixes #62

perlpunk added 30 commits June 3, 2025 14:07
Somehow it didn't get reported for 5.38
Using /bin/true resulted in sporadic Broken Pipe errors

Issue: https://progress.opensuse.org/issues/155458
devel:languages:perl only, modules with 4 or more digits, without reverse
dependencies

perl-App-XML-DocBook-Builder
perl-App-ZofCMS
perl-CMS-MediaWiki
perl-Catalyst-DispatchType-Regex
perl-Class-Light
perl-Class-Null
perl-Config-JSON
perl-Convert-UU
perl-DBIx-Class-Candy
perl-DBIx-Class-EncodedColumn
perl-Daemon-Control
perl-Daemon-Daemonize
perl-Dancer-Plugin-Email
perl-Data-Diver
perl-Data-Inherited
perl-Devel-ptkdb
perl-Dist-Zilla-App-Command-cover
perl-Dist-Zilla-Plugin-AutoVersion-Relative
perl-Dist-Zilla-Plugin-Bootstrap-lib
perl-Dist-Zilla-Plugin-CopyFilesFromBuild
perl-Dist-Zilla-Plugin-FatPacker
perl-Dist-Zilla-Plugin-HasVersionTests
perl-Dist-Zilla-Plugin-InstallGuide
perl-Dist-Zilla-Plugin-MetaResourcesFromGit
perl-Dist-Zilla-Plugin-ReadmeMarkdownFromPod
perl-Dist-Zilla-Plugin-ReportVersions
perl-Dist-Zilla-Plugin-Signature
perl-Dist-Zilla-Plugin-TaskWeaver
perl-Dist-Zilla-Plugin-Test-MinimumVersion
perl-Dist-Zilla-Plugin-Test-PodSpelling
perl-Dist-Zilla-Plugin-Test-Portability
perl-Dist-Zilla-Plugin-Test-Synopsis
perl-Dist-Zilla-Role-Tempdir
perl-Dist-Zilla-Util-ConfigDumper
perl-Dist-Zilla-Util-EmulatePhase
perl-Dist-Zilla-Util-Test-KENTNL
perl-Encode-Base32-Crockford
perl-Exception-Warning
perl-File-ShareDir-PathClass
perl-HTML-Template-Pro
perl-HTTP-XSCookies
perl-ICal-Format-Natural
perl-IPC-Exe
perl-Linux-Systemd
perl-Log-Any-Adapter-TAP
perl-Log-Dispatch-Configurator-Any
perl-Mail-Milter-Authentication
perl-Math-BigInt-FastCalc
perl-Math-BigInt-Pari
perl-Math-BigRat
perl-MediaWiki-Bot-Plugin-Admin
perl-MooseX-Storage-Format-JSONpm
perl-Net-MQTT
perl-Number-Phone-JP
perl-Ouch
perl-PERLANCAR-Module-List
perl-POE-Component-Generic
perl-POE-Component-IRC-Plugin-BaseWrap
perl-Perl6-Export-Attrs
perl-Perl6-Slurp
perl-Plack-Middleware-LogWarn
perl-Pod-Elemental-Transformer-List
perl-Pod-Weaver-PluginBundle-MARCEL
perl-Regexp-Debugger
perl-String-Copyright
perl-Sys-Info-Base
perl-Tatsumaki
perl-Term-EditorEdit
perl-Term-ReadLine-Perl
perl-Test-Subroutines
perl-Test-Weaken
perl-Test-mysqld
perl-Test2-Harness
perl-Text-MultiMarkdown
perl-Text-NeatTemplate
perl-Transmission-Client
perl-Version-Requirements
perl-WWW-Curl-Simple
perl-XML-RSS-LibXML
perl-constant-lexical
perl-PlRPC
Leave core module versions as they are for now
For example for Crypt-HSXKPasswd-v3.6.tar.gz $version was set to 3.6 because
the 'v' is lost, and without a second dot this is not recognized as a
normalized version. The version in the META is 'v3.6' though.
They will be normalized during the next days
perlpunk and others added 30 commits June 3, 2025 14:07
For core modules, the normalization is problematic, as different repos have
different perl versios, e.g. Leap still has v5.26 while Tumbleweed has v5.40,
but sometimes we want to use newer perl modules in Leap, so the spec has to
work for multiple perl versions.

By specifying --perl-version 5.040000 you can say that all modules
that are in perl core v5.40 should not be normalized.

That way we can go on with normalizing all other modules and take care of
the perl package itself later.
No other d:l:p modules depend on it, so likely not causing
much trouble
This makes it less problematic for the case when the Provides still has
    0.034
and Requires would have
    0.34.0

This would be unresolvable because 0.034 (or 0.34) is smaller than 0.34.0.
Should be used if a new version is smaller then the old
remove some modules not in d:l:p anymore
The file itself should also be generated, if it's not yet there.
Will work on that.
Ideally we would do what the CPAN indexer does ( needs research), but
overriding in cpanspec.yml for the rare exceptions is good enough for now.
Motivation:
LLM targeted development helpers (e.g., CLAUDE.md, GEMINI.md, AGENTS.md)
are not necessary for production packages and should be removed during
the build process to maintain a clean package.

Design Choices:
1. Updated find_doc to exclude these files from the %doc file list to
   prevent RPM build failures.
2. Modified the %prep section in the generated spec file to physically
   remove these files with 'rm -f' after %autosetup.
3. Added a new test file t/20.llm_cleanup.t to verify find_doc behavior.

User Benefits:
Provides cleaner production packages by stripping unnecessary development-only
helper files.

Fixes openSUSE#62
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Remove LLM agent development helper documentations

2 participants