LionWeb-io / lionweb-repository

Reference implementation of LionWeb repository
Apache License 2.0
2 stars 1 forks source link

Setup release-it #39

Closed ftomassetti closed 3 months ago

ftomassetti commented 4 months ago

Fix #36

I configured release-it. I cannot really test it without actually make a release.

I tried it in dry-run mode. You can see a recording here.

Even in dry-run mode it created a tag (which I then deleted).

Note that I committed also package-lock.json because release-it would complain otherwise and because I think it should committed.

joswarmer commented 4 months ago

Hi, can’t take a look now, am traveling. Will be this weekend or next week

ftomassetti commented 4 months ago

Not urgent, it can wait. Thank you for the message

joswarmer commented 3 months ago

If the repository is released. how would you start the server from it?

ftomassetti commented 3 months ago

If the repository is released. how would you start the server from it?

Good point. I did not think about it.

My plan was to use the git tag for now to download the code of the repository and compile it (as I do currently, but just using a tag instead of commit sha id, for readability).

But making possible to run the lionweb repository, maybe through npx would be very convenient. I do not know what is needed to support that, but I can investigate

ftomassetti commented 3 months ago

(in the meantime I have rebased the PR on top of master)

joswarmer commented 3 months ago

Hard to test this as we cannot just do test releases :-(. Looking at the package.json I see that only the top package is release, while all the "real" packages are not. Release-it does not automatically understand and release multiple packages in workspaces, so I guess it won't work as most code won't be released.

ftomassetti commented 3 months ago

Hard to test this as we cannot just do test releases :-(.

Perhaps we can do some testing using a local npm repository. I will see if I am able to do that

Looking at the package.json I see that only the top package is release, while all the "real" packages are not. Release-it does not automatically understand and release multiple packages in workspaces, so I guess it won't work as most code won't be released.

You are right. I thought I understood release-it supported multiple packages out of the box but I was wrong. I have now updated it following https://github.com/release-it/release-it/blob/main/docs/recipes/monorepo.md

ftomassetti commented 3 months ago

Unfortunately, running a local npm registry and having release-it work with it seems beyond my TS skills. I spent a few hours trying but did not make much progress. There are too many parts of the node-js ecosystem I am just ignorant about

joswarmer commented 3 months ago

Ok, I will try it, I have verdaccio as a local npm registry, hopefully it will work with release-it.

joswarmer commented 3 months ago

Can you explain what this means, I cannot find it in the release-it docs:

  "release-it": {
      "git": false
    }
ftomassetti commented 3 months ago

Can you explain what this means, I cannot find it in the release-it docs:

  "release-it": {
      "git": false
    }

I think I added it temporarily to avoid the system creating tags while I was playing with release-it

joswarmer commented 3 months ago

As it isn't working and I am not sure we still need this, should we close this PR?

ftomassetti commented 3 months ago

You are right, closing