-
Notifications
You must be signed in to change notification settings - Fork 25
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
Add a simple website #67
Conversation
The Status column should have definitions for the various statuses. I wondered, "Does 'Implemented' mean that the PPC has appeared in a production release? If so, which one (with date)?" Otherwise, I appreciate the simplicity of the design. |
As I said, this is just a skeleton - more of a proof of concept. There are plenty of things that the PSC could add |
This is the greatest Perl Proposed Change Page (ppcp?) I've ever seen! Looks good. I especially like that it doesn't have a popup about disabling ad blockers, accepting cookies, or a thing about subscribing to a mailing list.
The footer does not seem to be sticky'ing.
spooky |
@guest20 The content is for the PSC to think about, My mission here was to demonstrate how it might work - which I think I've done. |
I think putting this at https://perl.github.io/PPCs will be fine. |
@davorg In that case I'm pleased to report that your PR has definitely convinced me that the internet is a suitable vehicle for templated hypertext documents. |
I think that this is a great idea for visibility into the process and the decisions being made, and I agree that the default github.io URL serves it well as a self-documenting indication of where the PPCs are maintained. I would suggest moving the "Title" column to directly after the PPC number, to make it easier to scan for their names. (which I see that @guest20 has also suggested) |
And thank you very much for this. I intend to spend some time playing with your proof of concept to organize the documents in a way that is more suitable to the process: the most important documents are the ones that are still being reviewed, or still being implemented. The PPCs for proposals that have either been rejected or added to Perl only serve as historical reference. |
Thanks, three minor thoughts/suggestions while checking the design of the fork:
Also, I wish the columns were sortable so we can easily check what's Implemented for instance. Again, thank you very much for this is a worthy addition/integration IMHO. |
I think this is definitely needed, and it's a wonderful contribution. Minor nitpicks of the web page itself:
|
I've been quietly making some small improvements. A lot of the suggestions I've seen here have already been implemented. See the various commit titles for details. And just now, I've added simple Datatable support, so the table on the front page can be paginated, sorted and filtered. |
There are no timestamps.. I think the most relevant timestamp would probably be the date of last comment/commit/update, which surely is available in the github pull request metadata somewhere? |
PR info isn't going to be a great choice here:
The question is "what are you looking to rank up?"... maybe sorting on Status first (to put the most sensational new ideas at the top), then on commit date (to keep the newest top'est) would make the most sense? |
That (I just fixed an unrelated bug in unrelated code where my table-of-contents logic contained literal |
ttlib/page.tt
Outdated
<meta name="viewport" content="width=device-width, initial-scale=1"> | ||
<meta name="description" content=""> | ||
<meta name="author" content="Mark Otto, Jacob Thornton, and Bootstrap contributors"> | ||
<meta name="generator" content="Hugo 0.84.0"> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Cargo culted? We're not using Hugo here.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe it's a security measure to distract vulnerability scanners?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, I'll fix that. It's there because I copied the code from a Bootstrap example site.
I really wouldn't describe it as cargo-culting - I know exactly what all of those lines do 😊
lib/PPC.pm
Outdated
@@ -0,0 +1,86 @@ | |||
use experimental qw[builtin class signatures]; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe add a use v5.38
at the top, like the build script, I don't think anything in this file currently turns on strictures/warnings. As a benefit the the 5.38 bundle has module_true
so you can drop the 1;
from the end of this file.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good suggestion. Thanks. Done.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also fixed the warning that this revealed :-/
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice, while we're here is there any reason not to use the latest Perl, 5.40? Looks like the GH Action uses "latest".
Using 5.40 would present a few opportunities to remove boilerplate:
Builtin is not longer experimental, so we can just do:
use experimental qw[class signatures];
Builtin has version bundles too now which are automatically imported by the corresponding use version line so we can drop this line completely:
use builtin 'trim';
And the biggest win is we can apply :reader
to our fields and drop our handed rolled readers:
field $author :param :reader = '';
field $id :param :reader;
field $slug :param :reader;
field $sponsor :param :reader = '';
field $status :param :reader;
field $title :param :reader;
Remove:
method author { return $author }
method id { return $id }
method slug { return $slug }
method sponsor { return $sponsor }
method status { return $status }
method title { return $title }
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
is there any reason not to use the latest Perl, 5.40?
Honestly, just laziness. The system I was working on had 5.38 installed :-)
But, yeah, I should update that.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
@Perl/perl-steering-council Is there anything else you need before merging this? |
Thanks, I rebased your branch, and applied it as 1d5e7a4. |
The URL (https://perl.github.io/PPCs) for this website probably needs to be added to https://github.com/Perl/PPCs/blob/main/README.md. I also recommend putting it in the "About" box of the project on GitHub. |
@book asked me to look at using GitHub Actions/Pages to put a simple website in front of this repo. This is what I've knocked up in the last couple of hours. It's not particularly pretty, but I figure it's a start and now we have the skeleton in place, we can iterate on it to make improvements.
If you decide to merge this, there's a bit of GitHub Pages admin needed. I'm happy to talk you through that or do it myself if you give me appropriate permissions on this repo.
You'll need to decide on a domain to host it (or you can use the GitHub default which would (I think) be https://perl.github.io/PPCs. In the meantime, my fork is deployed at
https://ppc.perlhacks.com/https://davorg.dev/PPCs/ (moved it) for you to look at.