Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
Collapse
Uwyn Logo
  1. Home
  2. Bld
  3. Extensions

Extensions

Scheduled Pinned Locked Moved Bld
15 Posts 2 Posters 1.3k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • E Offline
    E Offline
    ethauvin
    wrote on Aug 29, 2023, 6:13 AM last edited by
    #2

    There are a couple new extensions in testing right now:

    • bld Checkstyle extension
    • bld Command Line Execution extension
    1 Reply Last reply
    2
    • E Offline
      E Offline
      ethauvin
      wrote on Aug 29, 2023, 4:50 PM last edited by
      #3

      And yet another one in testing

      • bld PIT Mutation Testing extension
      1 Reply Last reply
      1
      • G Offline
        G Offline
        gbevin
        wrote on Aug 30, 2023, 1:11 AM last edited by
        #4

        @ethauvin love seeing how straightforward it seems to make these!

        E 1 Reply Last reply Aug 30, 2023, 4:57 AM
        0
        • G gbevin
          Aug 30, 2023, 1:11 AM

          @ethauvin love seeing how straightforward it seems to make these!

          E Offline
          E Offline
          ethauvin
          wrote on Aug 30, 2023, 4:57 AM last edited by
          #5

          @gbevin said in Extensions:

          @ethauvin love seeing how straightforward it seems to make these!

          Yeah, and I'm starting to think the command line approach is the better one. No dependencies, not locked to a specific version, etc.

          G 1 Reply Last reply Aug 30, 2023, 6:22 PM
          1
          • E ethauvin
            Aug 30, 2023, 4:57 AM

            @gbevin said in Extensions:

            @ethauvin love seeing how straightforward it seems to make these!

            Yeah, and I'm starting to think the command line approach is the better one. No dependencies, not locked to a specific version, etc.

            G Offline
            G Offline
            gbevin
            wrote on Aug 30, 2023, 6:22 PM last edited by
            #6

            @ethauvin do we want to not have any dependencies? It seems that when people install an extension, they'd want it to just be ready to go and pull down everything required to work.

            E 1 Reply Last reply Aug 31, 2023, 3:03 AM
            0
            • G gbevin
              Aug 30, 2023, 6:22 PM

              @ethauvin do we want to not have any dependencies? It seems that when people install an extension, they'd want it to just be ready to go and pull down everything required to work.

              E Offline
              E Offline
              ethauvin
              wrote on Aug 31, 2023, 3:03 AM last edited by
              #7

              @gbevin said in Extensions:

              @ethauvin do we want to not have any dependencies? It seems that when people install an extension, they'd want it to just be ready to go and pull down everything required to work.

              I think most people want to use the version of the tool that works for their needs, not the version that we provide, and that we keep on having to update when new versions are out.

              This is no different that people having to install the JUnit or TestNG dependencies for their project.

              G 1 Reply Last reply Aug 31, 2023, 12:25 PM
              0
              • E ethauvin
                Aug 31, 2023, 3:03 AM

                @gbevin said in Extensions:

                @ethauvin do we want to not have any dependencies? It seems that when people install an extension, they'd want it to just be ready to go and pull down everything required to work.

                I think most people want to use the version of the tool that works for their needs, not the version that we provide, and that we keep on having to update when new versions are out.

                This is no different that people having to install the JUnit or TestNG dependencies for their project.

                G Offline
                G Offline
                gbevin
                wrote on Aug 31, 2023, 12:25 PM last edited by
                #8

                @ethauvin I think that a big appeal of Gradle and Maven is everything required to run all the project tasks is done automatically, this significantly reduces the efforts when working with a team or onboarding new developers. It also ensures that there are common versions across all the team members to ensure consistent and coherent behavior. Having a lot of extensions require manual installation of what's required to run them, defeats much of what makes them useful imho. Even if you rely on the command line API, I would still declare the required dependencies in the compile scope.

                E 1 Reply Last reply Aug 31, 2023, 2:06 PM
                0
                • G gbevin
                  Aug 31, 2023, 12:25 PM

                  @ethauvin I think that a big appeal of Gradle and Maven is everything required to run all the project tasks is done automatically, this significantly reduces the efforts when working with a team or onboarding new developers. It also ensures that there are common versions across all the team members to ensure consistent and coherent behavior. Having a lot of extensions require manual installation of what's required to run them, defeats much of what makes them useful imho. Even if you rely on the command line API, I would still declare the required dependencies in the compile scope.

                  E Offline
                  E Offline
                  ethauvin
                  wrote on Aug 31, 2023, 2:06 PM last edited by ethauvin Aug 31, 2023, 10:18 AM
                  #9

                  @gbevin said in Extensions:

                  @ethauvin I think that a big appeal of Gradle and Maven is everything required to run all the project tasks is done automatically, this significantly reduces the efforts when working with a team or onboarding new developers. It also ensures that there are common versions across all the team members to ensure consistent and coherent behavior. Having a lot of extensions require manual installation of what's required to run them, defeats much of what makes them useful imho. Even if you rely on the command line API, I would still declare the required dependencies in the compile scope.

                  I actually think that is one of the worst thing about Grade or Maven, having to deal with plugins that use antiquated libraries. It's a never ending battle, plugins depends on specific versions and all have to mach. Gradle build files are littered with dependency exclusion on most large projects. It's a nightmare to manage.

                  How would you feel if you couldn't specify which version of JUnit 5 or TestNG to use? Both Gradle and Maven requires you to do so. They are plugins that are used in the test scope, and like most of them do, they required some dependencies.

                  1 Reply Last reply
                  0
                  • G Offline
                    G Offline
                    gbevin
                    wrote on Aug 31, 2023, 4:40 PM last edited by
                    #10

                    @ethauvin that's a good point, but I feel having to manually install and manage all the dependencies, for every developer on every machine, is also not a good solution.

                    1 Reply Last reply
                    0
                    • G Offline
                      G Offline
                      gbevin
                      wrote on Aug 31, 2023, 4:44 PM last edited by
                      #11

                      @ethauvin maybe extensions can declare which dependencies they rely upon, without setting a specific version number. When bld encounters that, it warns the developer that those dependencies are needed and that versions can be configured in a properties file? After that, it will just download those dependencies automatically without relying on a specific version from the extension.

                      E 1 Reply Last reply Aug 31, 2023, 9:31 PM
                      0
                      • G gbevin
                        Aug 31, 2023, 4:44 PM

                        @ethauvin maybe extensions can declare which dependencies they rely upon, without setting a specific version number. When bld encounters that, it warns the developer that those dependencies are needed and that versions can be configured in a properties file? After that, it will just download those dependencies automatically without relying on a specific version from the extension.

                        E Offline
                        E Offline
                        ethauvin
                        wrote on Aug 31, 2023, 9:31 PM last edited by
                        #12

                        @gbevin said in Extensions:

                        @ethauvin maybe extensions can declare which dependencies they rely upon, without setting a specific version number. When bld encounters that, it warns the developer that those dependencies are needed and that versions can be configured in a properties file? After that, it will just download those dependencies automatically without relying on a specific version from the extension.

                        That's a great idea. Like it a lot.

                        1 Reply Last reply
                        1
                        • E Offline
                          E Offline
                          ethauvin
                          wrote on Dec 29, 2023, 11:49 PM last edited by
                          #13

                          bld now supports Kotlin via a couple new extensions:

                          • bld Kotlin Extension
                          • bld Detekt Extension
                          1 Reply Last reply
                          1
                          • E Offline
                            E Offline
                            ethauvin
                            wrote on Dec 29, 2023, 11:54 PM last edited by
                            #14

                            If you're using bld with Spring Boot you might like the following:

                            • bld Spring Boot Extension
                            • Spring Boot Example Project for bld
                            1 Reply Last reply
                            1
                            • E Offline
                              E Offline
                              ethauvin
                              wrote on Aug 31, 2024, 8:04 PM last edited by
                              #15

                              All the extensions have been updated for bld 2.1:

                              • bld ANTLR4 extension
                              • bld Archive extension
                              • bld Checkstyle extension
                              • bld Command Line Execution extension
                              • bld Generated Version extension
                              • bld JaCoCo Report extension
                              • bld Kotlin extension
                                • bld Detekt extension
                                • bld Dokka extension
                              • bld PIT Mutation Testing extension
                              • bld PMD extension
                              • bld Property File extension
                              • bld Spring Boot extension
                              • bld TestNG extension
                              • bld Tests Badge extension
                              1 Reply Last reply
                              0
                              Reply
                              • Reply as topic
                              Log in to reply
                              • Oldest to Newest
                              • Newest to Oldest
                              • Most Votes


                              • Login

                              • Don't have an account? Register

                              • Login or register to search.
                              • First post
                                Last post
                              0
                              • Categories
                              • Recent
                              • Tags
                              • Popular
                              • Users
                              • Groups