Raku / raku.org

Source code for https://raku.org/
https://raku.org/
Artistic License 2.0
70 stars 50 forks source link

Upcoming Changes to Rakudo.org and Perl6.org/downloads #96

Closed zoffixznet closed 6 years ago

zoffixznet commented 6 years ago

Since there's been apparent confusion on what changes the upcoming rakudo.org migration will bring, this document describes them in full.

The changes concern rakudo.org website in its entirety and download-related pages on perl6.org (home banner; main downloads page; recently-added "others" download page).

Table of Contents

Changes to rakudo.org

The preview of changes is available on UNFINISHED PREVIEW DEMO SITE at perl6.org:4242. Any particular current behaviour and content of the demo site is not indicative of the behaviour and content on the final site.

Rakudo.org Download Page Changes

These changes concern the download page on http://rakudo.org/how-to-get-rakudo/ NOT https://perl6.org/downloads/

API Endpoint

And API endpoint will be added that will offer a programatic way to obtain:

Release Management Changes

From the current release guide:

The sites will obtain that information automatically from the release guide in the repo and binaries uploaded to www.p6c.org

Changes to perl6.org

UPDATE: per discussion below, all perl6.org changes are deferred until a later point in time

stmuk commented 6 years ago

I don't want see any changes to perl6.org or rakudo star errata or the rakudo star release process (except perhaps scp to a different destination directory)

zoffixznet commented 6 years ago

I don't want see any changes to perl6.org or rakudo star errata or the rakudo star release process.

Can you expound the reasons?

The changes automate the relevant part of the process entirely, and considering you're resigning after the next 3 releases, the more we automate, the easier it will be for the replacement person to learn the release process.

Moreover, the errata is currently missing from the rakudo.org site entirely. I don't fully understand why it's acceptable to show it on perl6.org but not on rakudo.org.

stmuk commented 6 years ago

One problem is that isn't any clear distinction between what content should be hosted on rakudo.org and what should be hosted on perl6.org. I don't see much point in having two websites while there is only one implementation of perl 6. It's still very confusing to a new user. I'm interested in perl 6 and I have the choice of two websites. Why? What's the difference? Which one should I use?

Anyway from the changes above

I like:

  1. Not having to use wordpress to upload Rakudo Star release announcements since rakudo.org uses the "rakudo/star" repo automatically.

  2. Not having to publicise in three places.

  3. Editing less HTML.

  4. Potentially only one scp and one definitive download directory (available via http and https).

  5. Possibility of download stats! I suggest the links (even external) be constructed to log this. I think I'd be a little scared to look at the results but we probably should check this.

  6. Not linking to the old 32 bit Windows MSI

Not Keen on:

  1. "Errata notes will now be entered into a (to be implemented) JSON file in perl6/rakudo.org repo, NOT the perl6/perl6.org repo"

Yes I know you want JSON for your API but it doesn't fit well with the fairly free text errata (of necessity since we can't predict problems) and I really don't want to edit JSON.

Neither does it fit well in any website repo. I'd rather create a text file under a new "errata" directory under the "rakudo/star" repo. It seems to me it should belong there and be converted automatically to JSON.

I could also create a VERSION file in the root directory of the "rakudo/star" repo to communicate the current release.

It might also be nice to host Rakudo Star Release Candidates on rakudo.org using a VERSION.RC file. These don't get enough testing and need greater promotion.

  1. Changes to perl6.org

I'd rather have seen no change there and I don't see much point in refactoring download links between the two sites' download pages. The reasons for doing this aren't clear to me.

But if you are going to move parts of the download page to rakudo.org why not just move the whole thing and just link from the perl6.org homepage? (I'm not keen on linking to external sites from the perl6.org top nav and suggest just deleting the download nav).

In this case at least some simplification is done in only have one download site (although still two websites).

3 . New Download Page

Looking at http://hack.p6c.org:4242/files

I still think the rakudo.org main download page should only include Rakudo Star and the other options should be on a secondary download page.

Yes its there now at http://rakudo.org/how-to-get-rakudo/#Using-Rakudo but I think it shouldn't be if you are migrating most of the download to rakudo.org.

Neither do I like "Rakudo Compiler Only" being described as "light-weight" since I think this will encourage people to install it over Star.

And "to install the Rakudo compiler and module manager only" implies the Compiler Only release contains zef (which it doesn't). nxadm's Rakudo packages include zef but that makes them not a "Compiler Only" release but a minimal distribution.

AlexDaniel commented 6 years ago

Generally I like what I see here. Pretty sure we'll tweak some details, and it's ok if later we change our mind on things. But IMO right now the plan can be executed as is and it'll be a huge win.

moritz commented 6 years ago

I agree with @AlexDaniel. @zoffixznet's current approach is much better than what we have now, mostly in terms of:

I'm opposed to fudging the lines between Rakudo and Perl 6 too much; if we do, Rakudo will stay the only implementation, and projects like Niecza will be greatly discouraged.

Right now the priority should be get things set up by the time that the old rakudo.org goes down; @zoffixznet if you need any help on the infrastructure side (apache config, letsencrypt, Debian stuff, whatever), please let me know and I'll try my best to help.

zoffixznet commented 6 years ago

I don't see much point in having two websites while there is only one implementation of perl 6.

I'm :+1: on nuking rakudo.org's content entirely and having all the download info on perl6.org only.

I know @pmichaud mentioned in the past that they worked hard to keep compiler v.s language distinction. I don't know whether @pmichaud would agree to this change and I see @moritz above said he's :-1: on it.

To me, this sort of move doesn't really appear to significantly impact other potential implementations. If anything ever appears that has usable binaries for download, we can then easily modify the downloads page to include all implementations.


I'd rather create a text file under a new "errata" directory under the "rakudo/star" repo

That works. Preferably in markdown, so it can just be converted to HTML and inserted into the site.

why not just move the whole thing and just link from the perl6.org homepage

Don't have a strong opinion on that other than it might be too disorienting for users to end up on a different site entirely. Which makes the case for moving all download info for perl6.org. I'm :+1: on that; dunno about others.

pmichaud commented 6 years ago

On Mon, Mar 12, 2018 at 04:20:21PM +0000, Zoffix Znet wrote:

I don't see much point in having two websites while there is only one implementation of perl 6.

I'm :+1: on nuking rakudo.org's content entirely and having all the download info on perl6.org only.

I know @pmichaud mentioned in the past that they worked hard to keep compiler v.s language distinction. I don't know whether @pmichaud would agree to this change and I see @moritz above said he's :-1: on it.

I'm strongly with Moritz and others that we want to avoid blurring the lines between the language and implementation. I know that to many people it seems like an unnecessary distinction as long as there's only one implementation. But whenever that distinction is lost or blurred, we seriously risk becoming a culture that builds tools and infrastructure based on the assumption of a single implementation. That provides short-term shortcuts at the cost of (often unknown) long-term limitations and restrictions that are hard to overcome later.

Also, @moritz correctly points out that when people start equivalencing "Rakudo" and "Perl 6" we make it much more likely that Rakudo will be the only implementation of Perl 6. It can be a very subtle and pernicious effect that is hard to see until later.

All of that said, I think it's entirely plausible to have rakudo information hosted as a subsection of perl6.org, as long as the language/compiler distinction can be maintained. (The rakudo.org address could then redirect to that subsection.) In particular, I'd want to make sure there's a clear understanding of how other implementations would be hosted under the perl6.org domain, if that's the way it's to be done.

Perhaps a way to blaze the trail for this is to also include subsections on perl6.org for Pugs, Niecza, and any other implementations (past or present) that are analogues to the subsection being create for Rakudo, even if those other subsections are simply historical reviews and details of the implementations.

So, if the distinction can be maintained, I don't see that there must be a separate rakudo.org, but if it looks like things are gettin blurry, a separate rakudo.org (with a better factoring between perl6.org and rakudo.org) is probably the way to go. And at least for a short time I suspect it's okay to try one and switch to the other if it looks like there are complications arising from it.

Hope this helps,

Pm

zoffixznet commented 6 years ago

Ok, then:

So that'll let us preview all that bunch of changes at once and then decide if it should go live.

nxadm commented 6 years ago

All of that said, I think it's entirely plausible to have rakudo information hosted as a subsection of perl6.org, as long as the language/compiler distinction can be maintained. (The rakudo.org address could then redirect to that subsection.) In particular, I'd want to make sure there's a clear understanding of how other implementations would be hosted under the perl6.org domain, if that's the way it's to be done.

+1

Perhaps a way to blaze the trail for this is to also include subsections on perl6.org for Pugs, Niecza, and any other implementations (past or present) that are analogues to the subsection being create for Rakudo, even if those other subsections are simply historical reviews and details of the implementations.

I would argue against this. Having dead implementations next to the only active one is way more confusing than all the confusion we already have. I would suggest a "history" link/tab or something similar.

zoffixznet commented 6 years ago

Having dead implementations next to the only active one

I have a mental picture for how to weave it all in reasonably on one page. Let's just wait until the demo is available before bikeshedding that portion of the changes.

nxadm commented 6 years ago

@zoffixznet, challenge accepted :)

zoffixznet commented 6 years ago

@pmichaud new rakudo.org is good to go.

All you need to do is change the IPs for the domain to 213.95.82.53 / 2001:780:101:ff00::80:A

The app is already running. You can view most of it at http://perl6.org:4242/ but all the rewrites from old URLs won't work until the URL is rakudo.org (you can just add the IP into your local /etc/hosts to test that stuff, if you want).

Also copied all of the content from original site, despite originally planning to leave behind old blog posts.

If you have any questions, ping me on IRC. Note: I'll be on vacation and likely unreachable from March 24 through April 4. If there are any problems with the site, its code is in the perl6/rakudo.org repo and its README.md along with infrastructure docs explain all the maintenance bits, so hopefully I won't be needed.

Once the domain's switched, I'll force HTTPS.


@stmuk I left you a robo message

JJ commented 6 years ago

Great job. And have fun and relax during the holidays.

zoffixznet commented 6 years ago

@pmichaud pinging a reminder. The old rakudo.org hosting will expire in 6 days. Let's swap the domains.

zoffixznet commented 6 years ago

This is done.

moritz commented 6 years ago

Thanks you @zoffixznet!