I'd go for #2 ...

Le mar. 4 janv. 2022 à 00:14, Hervé BOUTEMY <[email protected]> a
écrit :

> yes, I was happy to learn about that shallow + filter approach :)
>
> now, we have one choice to do:
> 1. keep the shallow repository
> or
> 2. keep a strongly filtered repository done from the shallow
>
> option 2 gives a smaller Git repository (0.8 MB vs 3.77 MB), but old
> commits
> cannot be built (because filtering removed many files)
> option 1 maintains every commit as buildable as when it was in maven.git
>
> Which option do you choose?
>
> nce you choose, if nobody objects, I'll create
> maven-build-cache-extension.git
> with the content...
>
> Regards,
>
> Hervé
>
> Le lundi 3 janvier 2022, 15:15:02 CET Guillaume Nodet a écrit :
> > Awesome ! I didn't know about the shallow options during clone.
> > This looks good to me !
> >
> > Guillaume
> >
> > Le ven. 24 déc. 2021 à 00:14, Hervé BOUTEMY <[email protected]> a
> >
> > écrit :
> > > short version:
> > > I think I managed to extract exactly what we wanted:
> > >
> https://github.com/hboutemy/maven-build-cache-extension-shallow-filtered
> > > please review and confirm the result is ok
> > >
> > >
> > > longer version: how was it done?
> > > the first recipe I found is to drop old history:
> > >
> > > git clone https://github.com/hboutemy/maven-build-cache-extension.git
> > > shallow --shallow-since=2021-10-18
> > > cd shallow
> > > git filter-branch -- --all
> > >
> > > you can see the intermediate result in
> > > https://github.com/hboutemy/maven-build-cache-extension-shallow
> > >
> > > then I just filtered with "git filter-repo" to remove globally many
> files
> > > that were removed in
> > >
> https://github.com/hboutemy/maven-build-cache-extension-shallow/commit/a32
> > > 3d9859f091cdd8a2b946c71d12228ec29b70c
> > >
> > >
> > > Regards,
> > >
> > > Hervé
> > >
> > > Le dimanche 19 décembre 2021, 22:56:56 CET Hervé BOUTEMY a écrit :
> > > > I've tried to use git filter-repo, excluding unwanted directories or
> > > > extensions
> > > >
> > > > here is a sample result:
> > > > https://github.com/hboutemy/maven-build-cache-extension-filtered
> > > > = 4200 commits
> > > >
> > > > instead of initial 11700
> > > > https://github.com/hboutemy/maven-build-cache-extension
> > > >
> > > > we can still improve the list of directories to exclude
> > > >
> > > > before taking time for that, I need feedback: what do you think about
> > >
> > > this
> > >
> > > > approach?
> > > >
> > > > Regards,
> > > >
> > > > Hervé
> > > >
> > > > Le vendredi 17 décembre 2021, 11:47:25 CET Guillaume Nodet a écrit :
> > > > > I've tried various things without any good results.
> > > > > Given there's not much history to preserve here, I'd go ahead and
> just
> > > > > create a new repo with the current contents of the branch.
> > > > > Any objections?
> > > > >
> > > > > Le dim. 12 déc. 2021 à 15:43, Jeff Jensen
> > > > > <[email protected]>
> > > > >
> > > > > a écrit :
> > > > > > I've split git repos before and using filter-branch is the key to
> > >
> > > keep
> > >
> > > > > > the
> > > > > > desired and purge the rest.
> > > > > >
> > > > > > From my notes, these two posts helped me:
> > > > > > *
> > >
> > >
> https://docs.github.com/en/get-started/using-git/splitting-a-subfolder-o
> > >
> > > > > > ut
> > > > > > -into-a-new-repository *
> > >
> > >
> https://support.atlassian.com/bitbucket-cloud/docs/split-a-repository-in
> > >
> > > > > > -t
> > > > > > wo/
> > > > > >
> > > > > > These are my shortcut notes for doing so, hope they are clear
> enough
> > >
> > > for
> > >
> > > > > > you and help. In a new repo, locally convert a current source
> > > > > > subdirectory
> > > > > > to the root directory and purge everything else; then push to
> remote
> > >
> > > and
> > >
> > > > > > locally cleanup:
> > > > > >    1.
> > > > > >
> > > > > >    Make directory for new repo from current repo:
> > > > > > git clone current-repo to-new-directory
> > > > > >
> > > > > >    1.
> > > > > >
> > > > > >    Disconnect from current remote immediately to prevent
> catastrophe
> > >
> > > and
> > >
> > > > > >    verify none set
> > > > > >
> > > > > > git remote rm origin
> > > > > >
> > > > > > git remote -v
> > > > > >
> > > > > >    1.
> > > > > >
> > > > > >    Keep desired dir and move it to top level, remove the rest
> > > > > >    1.
> > > > > >
> > > > > >       FOLDER-NAME: which one to keep and move to top level
> > > > > >       2.
> > > > > >
> > > > > >       BRANCH-NAME: which branch to do this on (must exist, e.g.
> > >
> > > master)
> > >
> > > > > > git filter-branch --prune-empty --subdirectory-filter FOLDER-NAME
> > > > > > BRANCH-NAME
> > > > > >
> > > > > >    1.
> > > > > >
> > > > > >    Setup remote repo and verify set
> > > > > >
> > > > > > git remote add origin
> https://githost.com/NEW-REPOSITORY-NAME.git
> > > > > > <https://host-stuff.com/NEW-REPOSITORY-NAME.git>
> > > > > >
> > > > > > git remote -v
> > > > > >
> > > > > >    1.
> > > > > >
> > > > > >    Push to new repo
> > > > > >
> > > > > > git push -u origin BRANCH-NAME
> > > > > >
> > > > > >    1.
> > > > > >
> > > > > >    Further cleanup: delete all tags (locally only (Powershell))
> > > > > >
> > > > > > git tag | foreach-object -process { git tag -d $_ }
> > > > > >
> > > > > >    1.
> > > > > >
> > > > > >    Further cleanup: remove local unreachable/recyclable commits
> > > > > >    (remnants
> > > > > >    of prior)
> > > > > >
> > > > > > git reflog expire --expire-unreachable=now --all
> > > > > >
> > > > > > git gc --prune=now
> > > > > >
> > > > > >
> > > > > > On Sun, Dec 12, 2021 at 7:32 AM Hervé BOUTEMY <
> [email protected]
> > > > > >
> > > > > > wrote:
> > > > > > > nice work done
> > > > > > > I published the result to
> > >
> > > https://maven.apache.org/ref/caching-LATEST/
> > >
> > > > > > > now, on moving source to a separate Git repository, I did a
> basic
> > >
> > > test
> > >
> > > > > > > pushing
> > > > > > > to a new repository:
> > > > > > > https://github.com/hboutemy/maven-build-cache-extension
> > > > > > >
> > > > > > > this leads to getting quite a lot of Maven history
> > > > > > >
> > > > > > > I'm not a Git wizard: is there a way to cut down the history to
> > >
> > > keep
> > >
> > > > > > > only
> > > > > > > the
> > > > > > > interesting part when the build cache code donation was done?
> > > > > > >
> > > > > > > Regards,
> > > > > > >
> > > > > > > Hervé
> > > > > > >
> > > > > > > Le jeudi 9 décembre 2021, 10:39:10 CET Guillaume Nodet a écrit
> :
> > > > > > > > Le jeu. 9 déc. 2021 à 09:52, Hervé BOUTEMY <
> > >
> > > [email protected]> a
> > >
> > > > > > > écrit :
> > > > > > > > > we have most plugins that are simple with only 1
> mono-module
> > >
> > > build
> > >
> > > > > > > > > This makes documentation easy in /plugins/maven-*-plugin/:
> > > > > > > > > see https://maven.apache.org/components/plugins/ for full
> list
> > > > > > > > >
> > > > > > > > > we have a few components that have a plugin as part of a
> > > > > > > > > larger
> > > > > > > > > multi-module
> > > > > > > > > build, like surefire, jxr, archetype, scm, plugin-tools,
> > >
> > > enforcer,
> > >
> > > > > > > > > release, and
> > > > > > > > > soon wrapper
> > > > > > > > >
> > > > > > > > > And from experience, it makes documentation harder because
> > >
> > > there
> > >
> > > > > > > > > is
> > > > > > >
> > > > > > > always
> > > > > > >
> > > > > > > > > the
> > > > > > > > > question of what to write in the plugin pages and what to
> > >
> > > write in
> > >
> > > > > > > other
> > > > > > >
> > > > > > > > > modules. Not talking of navigation from
> > >
> > > /plugins/maven-xxx-plugin
> > >
> > > > > > > > > to
> > > > > > >
> > > > > > > /xxx/
> > > > > > >
> > > > > > > > > maven-xxx-plugin (we have a trick for redirecting...)
> > > > > > > > >
> > > > > > > > > In caching case, I see that there is only one submodule,
> that
> > >
> > > is
> > >
> > > > > > > > > done
> > > > > > >
> > > > > > > for
> > > > > > >
> > > > > > > > > ITs
> > > > > > > > > with Surefire: is it necessary? isn't maven-invoker-plugin
> > >
> > > usable,
> > >
> > > > > > like
> > > > > >
> > > > > > > > > for
> > > > > > > > > plugins?
> > > > > > > >
> > > > > > > > Yes, that's actually a good point.  I thought about that
> when I
> > >
> > > read
> > >
> > > > > > > Tamás
> > > > > > >
> > > > > > > > answer.  I'll double check if the integration tests can be
> > > > > > > > merged
> > > > > > > > into
> > > > > >
> > > > > > a
> > > > > >
> > > > > > > > single module.
> > > > > > > >
> > > > > > > > > Regards,
> > > > > > > > >
> > > > > > > > > Hervé
> > > > > > > > >
> > > > > > > > > Le jeudi 9 décembre 2021, 09:01:13 CET Guillaume Nodet a
> écrit
> > > > > > > > >
> > > > > > > > > > I think the repository name should not contain
> 'extension',
> > > > > > > > > > similar
> > > > > > >
> > > > > > > to
> > > > > > >
> > > > > > > > > > surefire which provides a plugin, but it a bit more
> complex
> > > > > > > > > > The fact that it is provided as an extension is a
> > >
> > > technicality
> > >
> > > > > > > > > > in
> > > > > > >
> > > > > > > this
> > > > > > >
> > > > > > > > > case
> > > > > > > > >
> > > > > > > > > > imho.
> > > > > > > > > > No big deal though...
> > > > > > > > > >
> > > > > > > > > > Le mar. 7 déc. 2021 à 09:53, Tamás Cservenák
> > > > > > > > > > <[email protected]>
> > > > > >
> > > > > > a
> > > > > >
> > > > > > > > > écrit :
> > > > > > > > > > > Howdy,
> > > > > > > > > > >
> > > > > > > > > > > I'd rather group ASF extensions (are there any existing
> > >
> > > ones
> > >
> > > > > > aside
> > > > > >
> > > > > > > of
> > > > > > >
> > > > > > > > > > > caching?),
> > > > > > > > > > > to be clear... so GH repo could be something like
> > > > > > > > > > > apache/maven-caching-extension
> > > > > > > > > > > apache/maven-foobar-extension
> > > > > > > > > > > etc?
> > > > > > > > > > >
> > > > > > > > > > > T
> > > > > > > > > > >
> > > > > > > > > > > On Tue, Dec 7, 2021 at 9:48 AM Guillaume Nodet <
> > > > > >
> > > > > > [email protected]>
> > > > > >
> > > > > > > > > wrote:
> > > > > > > > > > > > Following the recent work done to integrate the maven
> > > > > > > > > > > > caching
> > > > > > > > > > > > /
> > > > > > > > > > >
> > > > > > > > > > > incremental
> > > > > > > > > > >
> > > > > > > > > > > > build system into maven, I think it's now time to
> > > > > > > > > > > > discuss
> > > > > > > > > > > > where
> > > > > > >
> > > > > > > we
> > > > > > >
> > > > > > > > > want
> > > > > > > > >
> > > > > > > > > > > its
> > > > > > > > > > >
> > > > > > > > > > > > long-term location to be.
> > > > > > > > > > > >
> > > > > > > > > > > > This extension was donated a few months ago and
> provides
> > > > > > > > > > > > local
> > > > > > >
> > > > > > > and
> > > > > > >
> > > > > > > > > > > > remote
> > > > > > > > > > > > caching of maven project's output, based on computed
> > >
> > > hashes
> > >
> > > > > > > > > > > > of
> > > > > > >
> > > > > > > the
> > > > > > >
> > > > > > > > > > > inputs.
> > > > > > > > > > >
> > > > > > > > > > > > It's defined as a maven extension and can be used as
> a
> > >
> > > core
> > >
> > > > > > > > > > > > or
> > > > > > >
> > > > > > > build
> > > > > > >
> > > > > > > > > > > > extension.  This avoids building the project and
> speeds
> > >
> > > up
> > >
> > > > > > > builds a
> > > > > > >
> > > > > > > > > lot
> > > > > > > > >
> > > > > > > > > > > > !
> > > > > > > > > > > >
> > > > > > > > > > > > The current status of this work resides in 3
> branches:
> > > > > > > > > > > >   * MNG-7129-3.8.x (PR at
> > > > > > >
> > > > > > > https://github.com/apache/maven/pull/622)
> > > > > > >
> > > > > > > > > > > >   * MNG-7129-master (PR at
> > > > > > >
> > > > > > > https://github.com/apache/maven/pull/607)
> > > > > > >
> > > > > > > > > > > >   *
> > > > > >
> > > > > > https://github.com/apache/maven/tree/MNG-7129-maven-caching
> > > > > >
> > > > > > > > > > > > The two first PRs include the required changes to
> > >
> > > integrate
> > >
> > > > > > > > > > > > the
> > > > > > > > > > > > extension
> > > > > > > > > > > > in maven 3.8.x (or rather 3.9.x) and in master. The
> last
> > > > > > > > > > > > branch
> > > > > > >
> > > > > > > is
> > > > > > >
> > > > > > > > > the
> > > > > > > > >
> > > > > > > > > > > one
> > > > > > > > > > >
> > > > > > > > > > > > that should be moved to a separate repository and
> > > > > > > > > > > > contain
> > > > > > > > > > > > the
> > > > > > >
> > > > > > > code
> > > > > > >
> > > > > > > > > for
> > > > > > > > >
> > > > > > > > > > > the
> > > > > > > > > > >
> > > > > > > > > > > > extension.  The goal is to agree on the location and
> the
> > > > > > > > > > > > final
> > > > > > >
> > > > > > > name
> > > > > > >
> > > > > > > > > for
> > > > > > > > >
> > > > > > > > > > > the
> > > > > > > > > > >
> > > > > > > > > > > > repository (it can't be changed easily).
> > > > > > > > > > > >
> > > > > > > > > > > > I propose maven-caching as the repository /
> subproject
> > >
> > > name,
> > >
> > > > > > but
> > > > > >
> > > > > > > any
> > > > > > >
> > > > > > > > > > > better
> > > > > > > > > > >
> > > > > > > > > > > > name is welcomed of course.
> > > > > > > > > > > >
> > > > > > > > > > > > --
> > > > > > > > > > > > ------------------------
> > > > > > > > > > > > Guillaume Nodet
> > >
> > > ------------------------------------------------------------------
> > >
> > > > > > > > > --
> > > > > > > > > -
> > > > > > > > > To unsubscribe, e-mail: [email protected]
> > > > > > > > > For additional commands, e-mail: [email protected]
> > >
> > > ---------------------------------------------------------------------
> > >
> > > > > > > To unsubscribe, e-mail: [email protected]
> > > > > > > For additional commands, e-mail: [email protected]
> > > >
> > > > ---------------------------------------------------------------------
> > > > To unsubscribe, e-mail: [email protected]
> > > > For additional commands, e-mail: [email protected]
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: [email protected]
> > > For additional commands, e-mail: [email protected]
>
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>
>

-- 
------------------------
Guillaume Nodet

Reply via email to