Giter Site home page Giter Site logo

Comments (14)

Bobgy avatar Bobgy commented on July 17, 2024

Process to v2

Initial PR: #67.
However, based on #67 (review).

Unfortunately this is a very large change. I've left some initial comments as a first pass, but we'll likely need to do multiple iterations to resolve everything. Something that would greatly help me out for reviewing is if we could break this up into separate PRs. Here's some individual chunks I see that might be good places to break this apart:

I'll be sending several PRs to gradually upstream the new tool instead.
While addressing comments, I'll be reducing the difference with go-licenses v1 and try to make upgrade easier.

Here, I'm using this issue to track progress and welcome any feedback & code reviews.

from go-licenses.

Bobgy avatar Bobgy commented on July 17, 2024

EDIT: Roadmap section moved to top comment.

from go-licenses.

mythi avatar mythi commented on July 17, 2024

Suggest: Save command: compress sources

from go-licenses.

Bobgy avatar Bobgy commented on July 17, 2024

I sent out a bunch of PRs which are minimal and focused on one thing, and a few more are ready (but I want to wait for the first PRs getting reviewed first).
The rough idea is starting from a copy of v1 go-licenses tool and gradually replace each command with the new implementation, so that we keep the interface and behavior backward compatible as much as possible.

from go-licenses.

Bobgy avatar Bobgy commented on July 17, 2024

Reply to #93 (review)

@wlynch let's track general discussion in the main issue?

General question before I start reviewing these PRs in more details - are the changes to csv/check changes introducing any changes w.r.t input/outputs of the commands, or is this strictly an upgrade using module info?

No, there are no substantial changes to io.

There is a minor and optional output format change of adding a space after each comma to make it convenient to click the license URL in terminal/editor, do you have any concerns?

Also, git-url argument is removed, because it's no longer used. (But I am reconsidering this, because it may be useful for the main module.)

If there isn't anything that would break compatibility with existing clients, it might make sense to just merge these into v1. 👀
The bits I was primarily concerned with the original v2 proposal were the new commands and the different output format.

Well, the major breaking change is that we no longer support non go module projects. That's probably worth a v2. What do you think?

from go-licenses.

Bobgy avatar Bobgy commented on July 17, 2024

Agreement today:

  • let's use major branch approach of reaching v2, because the current v2 is a natural continuation of v1 with some minor breaking changes. Existing PRs may still be easy to merge into v2.

AI:

  • @wlynch will tag a v1.0.0 release, so that people won't get a WIP v2 version accidentally in master branch
  • @Bobgy will move PRs to target master branch.

We will re-discuss at what point we want to bump to v2 as the development continues.

from go-licenses.

Bobgy avatar Bobgy commented on July 17, 2024

@wlynch #95, #101 and #94 are ready for review : )

from go-licenses.

Bobgy avatar Bobgy commented on July 17, 2024

Note, I created a github release in my fork in case anyone want to try the proposed new tool before above PRs are merged: https://github.com/Bobgy/go-licenses/releases/tag/v0.1.0-2022-01-20

EDIT: my compiled binary did not quite work.

from go-licenses.

Bobgy avatar Bobgy commented on July 17, 2024

Created a new release that can be installed from source: https://github.com/Bobgy/go-licenses/releases/tag/v2.0.0-alpha.0. It's mostly ready to use and near backwards compatible.

To try my fork:

go get github.com/Bobgy/go-licenses/v2
go-licenses --help

from go-licenses.

oxisto avatar oxisto commented on July 17, 2024

Is it somehow planned / possible to configure the check command, e.g. not only check for forbidden license but also for restricted? Or to configure the list of forbidden libraries? Or to at least print out the license type in the csv so I can grep for it? :)

from go-licenses.

Bobgy avatar Bobgy commented on July 17, 2024

Hi @oxisto, it's not in the scope. You might want to file a separate issue for this feature request.

from go-licenses.

oxisto avatar oxisto commented on July 17, 2024

Hi @oxisto, it's not in the scope. You might want to file a separate issue for this feature request.

got it. thanks for your answer!

from go-licenses.

Bobgy avatar Bobgy commented on July 17, 2024

Update, based on discussion with @wlynch, we think that the breaking change for GOPATH might not be noticeable, because we don't know anyone still using GOPATH now. Therefore, we will consider releasing the next version as v1.1 instead. There won't be an actual v2.

Let us know if you use go-licenses and still use GOPATH, we can consider making changes in this proposal an actual v2 when needed.

from go-licenses.

Bobgy avatar Bobgy commented on July 17, 2024

The major changes have been released as v1.1.
Future improvements will be tracked individually in issues.

from go-licenses.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.