user/dev discussion of public-inbox itself
 help / color / mirror / code / Atom feed
Search results ordered by [date|relevance]  view[summary|nested|Atom feed]
thread overview below | download mbox.gz: |
* [PATCH 1/6] doc: allow NEWS file to be built without Plack::Util
  2020-01-01  9:57  5% [PATCH 0/6] doc updates and such Eric Wong
@ 2020-01-01  9:57  7% ` Eric Wong
  0 siblings, 0 replies; 2+ results
From: Eric Wong @ 2020-01-01  9:57 UTC (permalink / raw)
  To: meta

Plack pulls in a lot of dependencies which can be time-consuming
to install.  It should not be necessary for somebody who just
wants to run -mda/-watch and -nntpd and forego WWW.
---
 Documentation/mknews.perl | 30 +++++++++++++++++++++++-------
 1 file changed, 23 insertions(+), 7 deletions(-)

diff --git a/Documentation/mknews.perl b/Documentation/mknews.perl
index 5ede3696..3efabdb5 100755
--- a/Documentation/mknews.perl
+++ b/Documentation/mknews.perl
@@ -7,9 +7,9 @@
 use strict;
 use PublicInbox::MIME;
 use PublicInbox::View;
-use Plack::Util;
 use PublicInbox::MsgTime qw(msg_datestamp);
 use PublicInbox::MID qw(mids mid_escape);
+END { $INC{'Plack/Util.pm'} and warn "$0 should not have loaded Plack::Util\n" }
 my $dst = shift @ARGV or die "Usage: $0 <NEWS|NEWS.atom|NEWS.html>";
 
 # newest to oldest
@@ -34,11 +34,11 @@ if ($dst eq 'NEWS') {
 	}
 } elsif ($dst eq 'NEWS.atom' || $dst eq 'NEWS.html') {
 	open $out, '>', $tmp or die;
-	my $ibx = Plack::Util::inline_object(
-		description => sub { 'public-inbox releases' },
-		over => sub { undef },
-		search => sub { 1 }, # for WwwStream:_html_top
-		base_url => sub { "$base_url/" },
+	my $ibx = My::MockObject->new(
+		description => 'public-inbox releases',
+		over => undef,
+		search => 1, # for WwwStream:_html_top
+		base_url => "$base_url/",
 	);
 	$ibx->{-primary_address} = $addr;
 	my $ctx = {
@@ -102,7 +102,7 @@ sub mime2html {
 sub html_start {
 	my ($out, $ctx) = @_;
 	require PublicInbox::WwwStream;
-	$ctx->{www} = Plack::Util::inline_object(style => sub { '' });
+	$ctx->{www} = My::MockObject->new(style => '');
 	my $www_stream = PublicInbox::WwwStream->new($ctx);
 	print $out $www_stream->_html_top, '<pre>' or die;
 }
@@ -144,3 +144,19 @@ sub mime2atom  {
 		print $out $str or die;
 	}
 }
+package My::MockObject;
+use strict;
+our $AUTOLOAD;
+
+sub new {
+	my ($class, %values) = @_;
+	bless \%values, $class;
+}
+
+sub AUTOLOAD {
+	my ($self) = @_;
+	my $attr = (split(/::/, $AUTOLOAD))[-1];
+	$self->{$attr};
+}
+
+1;

^ permalink raw reply related	[relevance 7%]

* [PATCH 0/6] doc updates and such
@ 2020-01-01  9:57  5% Eric Wong
  2020-01-01  9:57  7% ` [PATCH 1/6] doc: allow NEWS file to be built without Plack::Util Eric Wong
  0 siblings, 1 reply; 2+ results
From: Eric Wong @ 2020-01-01  9:57 UTC (permalink / raw)
  To: meta

More frequent releases should be possible, now that we can just
let cgit serve our tar.gz.  Maybe Plack/PSGI can be totally
optional, even for WWW...  The closure purge certainly brought
us in that direction :>

Eric Wong (6):
  doc: allow NEWS file to be built without Plack::Util
  build: remove NEWS from dist-git target
  doc: release notes: set Date for 1.2.0, start 1.3.0
  doc/txt2pre: flush output before utime()
  build: fix xapian-* manpage generation
  doc: fix a few spelling errors in user-facing docs

 Documentation/RelNotes/v1.2.0.eml     |  9 +++++
 Documentation/RelNotes/v1.3.0.eml     | 50 +++++++++++++++++++++++++++
 Documentation/include.mk              | 23 ++++++------
 Documentation/mknews.perl             | 30 ++++++++++++----
 Documentation/public-inbox-config.pod |  2 +-
 Documentation/public-inbox-nntpd.pod  |  2 +-
 Documentation/txt2pre                 |  1 +
 MANIFEST                              |  1 +
 Makefile.PL                           |  3 +-
 lib/PublicInbox/Import.pm             |  2 +-
 10 files changed, 100 insertions(+), 23 deletions(-)
 create mode 100644 Documentation/RelNotes/v1.3.0.eml

^ permalink raw reply	[relevance 5%]

Results 1-2 of 2 | reverse | options above
-- pct% links below jump to the message on this page, permalinks otherwise --
2020-01-01  9:57  5% [PATCH 0/6] doc updates and such Eric Wong
2020-01-01  9:57  7% ` [PATCH 1/6] doc: allow NEWS file to be built without Plack::Util Eric Wong

Code repositories for project(s) associated with this public inbox

	https://80x24.org/public-inbox.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).