Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

uint, float32, arraybuffer #40

Closed
jamesdbrock opened this issue May 19, 2021 · 40 comments
Closed

uint, float32, arraybuffer #40

jamesdbrock opened this issue May 19, 2021 · 40 comments

Comments

@jamesdbrock
Copy link
Member

I'd like to propose these libraries for inclusion into purescript-contrib:

I depend on these libraries, they are old and reliable, and the owners' attentions seem to have attenuated. Actually, it seems to
me that @athanclark was maintaining all three of these libraries, but his Github activity dropped in September 2020.

uint and float32 in particular define basic types which would really benefit the PureScript ecosystem.

I will commit to maintaining these libraries.

If these libraries are added, then I think @zaquest , @athanclark , and @jacereda should also be made members of purescript-contrib , so they have the option of resuming active control over their libraries.

Is this the list of current maintainers?
https://github.com/orgs/purescript-contrib/people

References:
#2
purescript-contrib/purescript-uint#12
purescript-contrib/purescript-float32#3
purescript-contrib/purescript-arraybuffer#28

@JordanMartinez
Copy link
Contributor

Just curious, but why not fork these repos under your name, republish under new names, and continue using those from there?

Are there any contrib libraries currently using these libs as dependencies?

@athanclark
Copy link

I recommend the transference of maintenance to @jamesdbrock, he seems dedicated and would contribute meaningfully to the ecosystem

@zaquest
Copy link

zaquest commented May 19, 2021

I don't mind transferring purescript-uint to purescript-contrib if it's of any interest for the community.
Meanwhile, @jamesdbrock I sent you an invite to the repository so you could merge your PR. If you need any assistance from me to publish it Pursuit, please, let me know.

@jacereda
Copy link

Same situation here with purescript-arraybuffer, I don't mind transferring it.

@thomashoneyman
Copy link
Contributor

Given the basic / foundational nature of these libraries, your offer to maintain them, and the endorsements of each maintainer I’m interested in adding these to contrib.

@zaquest, @athanclark, @jacereda — are you wanting to transfer maintainership entirely, or do you want to remain maintainers alongside @jamesdbrock?

The process from here is to update the libraries according to the contrib guidelines and then transfer them in (adding folks to the organization who need to be). If you need help with that, @jamesdbrock, then we could transfer the libraries in and I can help update them from there.

@athanclark
Copy link

athanclark commented May 19, 2021

I may wish to recommend changes to my library in the future, but I'm not fit to be the primary maintainer of the library if it's this important to the ecosystem; I'm comfortable with completely transferring maintainership to @jamesdbrock

@thomashoneyman
Copy link
Contributor

Also, just to clarify: I’ll have to discuss with other contrib members about adding these libraries, as it’s not my decision alone.

We may add one or two or all three; for ones we don’t add, you can transfer ownership to @jamesdbrock or add him as a collaborator on the repo as another possible solution — as @JordanMartinez mentioned before.

@zaquest
Copy link

zaquest commented May 19, 2021

I haven't been doing any PureScript programming in years, so I'd rather give up any control over the library. There're PRs if I'd like to suggest changes)

@jamesdbrock
Copy link
Member Author

Thanks everyone for being so helpful about this.

@zaquest and @jacereda , I've accepted your collaboration invitations.

@thomashoneyman I'm still proposing to add all of the libraries and all of the maintainers which I listed in the top of this issue to purescript-contrib. I'll wait for your decision.

@JordanMartinez
Copy link
Contributor

JordanMartinez commented May 20, 2021

@thomashoneyman Here's my thoughts (and responses to my previous comments):

Just curious, but why not fork these repos under your name, republish under new names, and continue using those from there?

These three repos provide foundational types for the JS backend that should continue to be supported. Including them in the contrib's repos makes it more likely that these repos will continue to be maintained over time.

Are there any contrib libraries currently using these libs as dependencies?

I think we should follow the core libs policy of not allowing any repos into core if they depend on anything outside of core. It helps significantly when we update the ecosystem for PS releases with breaking changes. AFAICT, none of these repos seem to depend on non-core/non-contrib repos.

In short, I'm in favor of adding these libraries due to the 'maintenance' concern above. Since they are small, I don't think it's a huge burden to add them to the repos, and I think most of them are already mature, so any new work on them should be minimal.

The only other question I have is what rights/privileges/roles/etc. should be granted to the original author and @jamesdbrock for each repo. It sounds like most would be fine with transferring it to James and submitting PRs to change anything if they wanted to.

@jamesdbrock
Copy link
Member Author

Thanks @JordanMartinez

@zaquest
Copy link

zaquest commented May 21, 2021

I suggest transfering purescript-uint to purescript-contrib and possibly adding @jamesdbrock as a maintainer for it, if he wants to be one. If not then maybe purescript-contrib people themselve could maintain it. No need to add me in any role, I don't see myself being useful for the package in the foreseeable future.
So please let me know what you decide, whether you choose to include purescript-uint or not in purescript-contrib. I'll transfer it when requested by one of purescript-contrib public members. Thanks!

@JordanMartinez
Copy link
Contributor

@thomashoneyman Any updates on this?

@thomashoneyman
Copy link
Contributor

Sorry folks, I've been on a long vacation. I'm on board with transferring uint and float32 into the contrib organization, and if we can make sure that arraybuffer doesn't have dependencies outside of the contrib / core organizations then I'm on board with that one as well.

@thomashoneyman
Copy link
Contributor

@jamesdbrock I've invited you to the contributors organization, and you can now start transferring repositories. Let me know when you've initiated the transfer and I can approve them / update them for the contributors guidelines.

@thomashoneyman
Copy link
Contributor

thomashoneyman commented Jun 16, 2021

As far as arraybuffer goes, I'd want to remove the dependencies on purescript-quickcheck-combinators and purescript-typelevel before introducing the library to the Contributors organization. We need to ensure that we can update libraries for compiler releases, which means we need to control the dependency tree.

@zaquest
Copy link

zaquest commented Jun 17, 2021

Apparently one needs the right to create repositories in organization to transfer a repository to it. @jamesdbrock could you, please, remove your purescript-uint repository so that I could transfer it to you? And then you should be able to transfer it to purescript-contrib.

@jamesdbrock
Copy link
Member Author

Ok @zaquest I deleted jamesdbrock/purescipt-uint

@jamesdbrock
Copy link
Member Author

jamesdbrock commented Jun 19, 2021

My plan:

https://github.com/purescript/registry#name-squatting-and-reassigning-names

purescript/registry#182

purescript-uint

Transfer from zaquest to purescript-contrib/purescript-uint.

Reassign the same package name in the registry.

Add to package-sets.

(Later on, possibly add some of these instances?
https://github.com/athanclark/purescript-uint-instances/blob/master/src/Data/UInt/Instances.purs)

purescript-float32

Transfer from athanclark to purescript-contrib/purescript-float32.

Reassign the same package name in the registry.

Upgrade to PureScript 0.14 and add to package-sets.

purescript-arraybuffer

I will work on removing the non-purescript-contrib dependencies. Then we'll
see from there.

@jamesdbrock
Copy link
Member Author

@jacereda has transferred purescript-arraybuffer to purescript-contrib, thank you @jacereda .

Since purescript-arraybuffer still has the non-contrib dependencies, should I transfer it to myself, or should I leave it in purescript-contrib while we work on it?

@jamesdbrock
Copy link
Member Author

I say we leave purescript-arraybuffer in purescript-contrib while we work on it.

@jamesdbrock
Copy link
Member Author

It appears to me that spago, at least, can still download purescript-arraybuffer through whatever redirect mechanism Github uses for transferred repositories. And probably everything else can still download it too.

https://docs.github.com/en/github/administering-a-repository/managing-repository-settings/transferring-a-repository#whats-transferred-with-a-repository

So I think the current situation with purescript-arraybuffer will not inconvenience anyone, and we can leave it as it is while we decide what to do.

@zaquest
Copy link

zaquest commented Jun 19, 2021

It appears to me that spago, at least, can still download purescript-arraybuffer through whatever redirect mechanism Github uses for transferred repositories. And probably everything else can still download it too.

Yes, I think redirects is the main reason to use transfer over simply creating a fork, which could've been easier, but would've broken things in the end.

@jamesdbrock Transferred purescript-uint to you.

@jamesdbrock
Copy link
Member Author

Sorry @zaquest the transfer expired, please transfer again?

@zaquest
Copy link

zaquest commented Jun 20, 2021

Sorry @zaquest the transfer expired, please transfer again?

Aborted and requested transfer one more time.

@jamesdbrock
Copy link
Member Author

jamesdbrock commented Jun 21, 2021

@jacereda May I give you a “maintainer” badge on the purescript-contrib/purescript-arraybuffer README? (along with myself, of course)

@jacereda
Copy link

Sure, I'm away from PS development these days, but I might come back at some point if I find a suitable project.

@jamesdbrock
Copy link
Member Author

I guess I don't have permission for the Settings of https://github.com/purescript-contrib/purescript-arraybuffer repository? Would someone please set the default branch of the repository to main? @thomashoneyman @JordanMartinez

@JordanMartinez
Copy link
Contributor

I've changed the default branch to main.

@jamesdbrock
Copy link
Member Author

@athanclark would you please transfer https://github.com/athanclark/purescript-float32 to jamesdbrock?

@jamesdbrock
Copy link
Member Author

In the unlikely case that @athanclark never receives my messages and never transfers the purescript-float32 repository and I fork the repo and add it to purescript-contrib, we’ll have to give it a new name. And maybe give the data type Float32 a new name as well? Anyone want to suggest names? How about purescript-float and Float?

@JordanMartinez
Copy link
Contributor

I'm good with purescript-float. However, why not just keep the same Float32 name? If anything, we could drop purescript-float32 from the package set and replace it with purescript-float to minimize the breakage.

@athanclark
Copy link

@jamesdbrock Sorry for sleeping on this; I just got back from a vacation. I tried to transfer ownership to you, but you already have a fork with the same name as the original project. Maybe changing the name would be the best solution?

@jamesdbrock
Copy link
Member Author

Hi @athanclark sorry I missed your transfer attempt! I renamed my fork of your repo to jamesdbrock/purescript-float32-fork so that you would be able to transfer to me, but probably Github was still reserving jamesdbrock/purescript-float32 for redirects, which makes sense, I should have thought of that.

I have now entirely deleted the repo jamesdbrock/purescript-float32-fork, please try the transfer again?

@jamesdbrock
Copy link
Member Author

@jamesdbrock Sorry for sleeping on this; I just got back from a vacation.

(P.S. no problem, I hope you had a nice relaxing vacation!)

@athanclark
Copy link

Transferred!

@jamesdbrock
Copy link
Member Author

Transfer complete, thank you again @athanclark !

@JordanMartinez
Copy link
Contributor

Thanks!

@jamesdbrock
Copy link
Member Author

I've completed the transfer of these three packages.

  1. Ran contrib-updater.
  2. Checked the https://github.com/purescript-contrib/governance/blob/main/library-guidelines.md
  3. Upgraded to purs 0.14
  4. Split out the testing dependencies into a separate Spago file.
  5. Transferred in the registry.
  6. Added to package-sets.
  7. Published a new version on Pursuit.

I'm closing this issue .If there are any problems with what I've done, then let's discuss those on issues in each package's repo. Thanks again everyone!

@JordanMartinez
Copy link
Contributor

Thanks for all your work @jamesdbrock!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

6 participants