From toby.corkindale at strategicdata.com.au Wed May 1 19:02:52 2013 From: toby.corkindale at strategicdata.com.au (Toby Corkindale) Date: Thu, 02 May 2013 12:02:52 +1000 Subject: [Melbourne-pm] S3 modules Message-ID: <5181C94C.3050402@strategicdata.com.au> Quick straw poll.. Which Amazon S3 CPAN module works well? Experiences relating to how well they handle big files without slurping the whole things into memory would be good to know too. Sadly I see neither supports the "give me an external signed URL" option :/ I can investigate myself, but hoping I could save some time.. (The dependency upon xml::libxml isn't a problem btw; I wasn't sure if that was the ONLY reason for one of the S3 modules out there, or not) From toby.corkindale at strategicdata.com.au Thu May 2 19:52:06 2013 From: toby.corkindale at strategicdata.com.au (Toby Corkindale) Date: Fri, 03 May 2013 12:52:06 +1000 Subject: [Melbourne-pm] S3 modules In-Reply-To: <5181C94C.3050402@strategicdata.com.au> References: <5181C94C.3050402@strategicdata.com.au> Message-ID: <51832656.50107@strategicdata.com.au> Answering my own question, but oh well.. Net::Amazon::S3 insta-fails because it is hardcoded to use Amazon's S3 server URL.. so you can't use with with any other cloud provider or your own services. There's been a feature request, with patch, out for a couple of years but the author has stubbornly refused to merge the trivial patch. *sigh* On 02/05/13 12:02, Toby Corkindale wrote: > Quick straw poll.. Which Amazon S3 CPAN module works well? > > > Experiences relating to how well they handle big files without slurping > the whole things into memory would be good to know too. > > Sadly I see neither supports the "give me an external signed URL" option :/ > > > I can investigate myself, but hoping I could save some time.. > (The dependency upon xml::libxml isn't a problem btw; I wasn't sure if > that was the ONLY reason for one of the S3 modules out there, or not) > _______________________________________________ > Melbourne-pm mailing list > Melbourne-pm at pm.org > http://mail.pm.org/mailman/listinfo/melbourne-pm From sam at nipl.net Thu May 2 21:08:54 2013 From: sam at nipl.net (Sam Watkins) Date: Fri, 3 May 2013 14:08:54 +1000 Subject: [Melbourne-pm] S3 modules In-Reply-To: <51832656.50107@strategicdata.com.au> References: <5181C94C.3050402@strategicdata.com.au> <51832656.50107@strategicdata.com.au> Message-ID: <20130503040854.GH8608@opal.nipl.net> On Fri, May 03, 2013 at 12:52:06PM +1000, Toby Corkindale wrote: > the author has stubbornly refused to merge the trivial patch. open source; fork; steal users! insta-win From andrewmcnnz at gmail.com Thu May 2 21:23:48 2013 From: andrewmcnnz at gmail.com (Andrew McN) Date: Fri, 3 May 2013 14:23:48 +1000 Subject: [Melbourne-pm] S3 modules In-Reply-To: <51832656.50107@strategicdata.com.au> References: <5181C94C.3050402@strategicdata.com.au> <51832656.50107@strategicdata.com.au> Message-ID: Given that the module name explicitly refers to Amazon, There's some sense in that being the scope of what it does. Is the name "S3" specific to Amazon's service, or can that refer to any compatible storage service? What would you expect that a module that's not specific to Amazon should be called? Andrew On 03/05/2013 12:52 PM, "Toby Corkindale" < toby.corkindale at strategicdata.com.au> wrote: > Answering my own question, but oh well.. > > Net::Amazon::S3 insta-fails because it is hardcoded to use Amazon's S3 > server URL.. so you can't use with with any other cloud provider or your > own services. > > There's been a feature request, with patch, out for a couple of years but > the author has stubbornly refused to merge the trivial patch. > *sigh* > > On 02/05/13 12:02, Toby Corkindale wrote: > >> Quick straw poll.. Which Amazon S3 CPAN module works well? >> >> >> Experiences relating to how well they handle big files without slurping >> the whole things into memory would be good to know too. >> >> Sadly I see neither supports the "give me an external signed URL" option >> :/ >> >> >> I can investigate myself, but hoping I could save some time.. >> (The dependency upon xml::libxml isn't a problem btw; I wasn't sure if >> that was the ONLY reason for one of the S3 modules out there, or not) >> ______________________________**_________________ >> Melbourne-pm mailing list >> Melbourne-pm at pm.org >> http://mail.pm.org/mailman/**listinfo/melbourne-pm >> > > ______________________________**_________________ > Melbourne-pm mailing list > Melbourne-pm at pm.org > http://mail.pm.org/mailman/**listinfo/melbourne-pm > -------------- next part -------------- An HTML attachment was scrubbed... URL: From toby.corkindale at strategicdata.com.au Thu May 2 21:44:53 2013 From: toby.corkindale at strategicdata.com.au (Toby Corkindale) Date: Fri, 03 May 2013 14:44:53 +1000 Subject: [Melbourne-pm] S3 modules In-Reply-To: References: <5181C94C.3050402@strategicdata.com.au> <51832656.50107@strategicdata.com.au> Message-ID: <518340C5.2000104@strategicdata.com.au> On 03/05/13 14:23, Andrew McN wrote: > Given that the module name explicitly refers to Amazon, There's some > sense in that being the scope of what it does. > > Is the name "S3" specific to Amazon's service, or can that refer to any > compatible storage service? What would you expect that a module that's > not specific to Amazon should be called? Amazon created the S3 system and designed the protocol, so initially they were the first on the scene. However since then the S3 API has been used in a lot of other products.. Really an appropriate name would be Net::S3 rather than Amazon::S3. I guess I can just fork and rename and upload, as Sam suggests, but I don't really have any intention of taking on the workload of maintaining the module, so it seems irresponsible. Then again, the real author appears uninterested, so eh.. who knows. Toby > On 03/05/2013 12:52 PM, "Toby Corkindale" > > wrote: > > Answering my own question, but oh well.. > > Net::Amazon::S3 insta-fails because it is hardcoded to use Amazon's > S3 server URL.. so you can't use with with any other cloud provider > or your own services. > > There's been a feature request, with patch, out for a couple of > years but the author has stubbornly refused to merge the trivial patch. > *sigh* > > On 02/05/13 12:02, Toby Corkindale wrote: > > Quick straw poll.. Which Amazon S3 CPAN module works well? > > > Experiences relating to how well they handle big files without > slurping > the whole things into memory would be good to know too. > > Sadly I see neither supports the "give me an external signed > URL" option :/ > > > I can investigate myself, but hoping I could save some time.. > (The dependency upon xml::libxml isn't a problem btw; I wasn't > sure if > that was the ONLY reason for one of the S3 modules out there, or > not) > _________________________________________________ > Melbourne-pm mailing list > Melbourne-pm at pm.org > http://mail.pm.org/mailman/__listinfo/melbourne-pm > > > > _________________________________________________ > Melbourne-pm mailing list > Melbourne-pm at pm.org > http://mail.pm.org/mailman/__listinfo/melbourne-pm > > From mathew.blair.robertson at gmail.com Thu May 2 22:17:34 2013 From: mathew.blair.robertson at gmail.com (Mathew Robertson) Date: Fri, 3 May 2013 15:17:34 +1000 Subject: [Melbourne-pm] S3 modules In-Reply-To: <518340C5.2000104@strategicdata.com.au> References: <5181C94C.3050402@strategicdata.com.au> <51832656.50107@strategicdata.com.au> <518340C5.2000104@strategicdata.com.au> Message-ID: > I guess I can just fork and rename and upload, as Sam suggests, but I don't really have any intention of taking on the workload of maintaining the module, so it seems irresponsible. That made me smirk... :) I demonstrated a "Retry" module one PM evening... which had semantics of: my $result = retry $times { .... } on_fail { .... } on_last_fail { .... }; I chose to not upload said module, as there was already an "Attempt" module and I couldn't justify my code as being more useful. http://search.cpan.org/~markf/Attempt-1.01/lib/Attempt.pm But alas you did create a less useful module: http://search.cpan.org/~tjc/Retry-0.12/lib/Retry.pm Cheers, Mathew -------------- next part -------------- An HTML attachment was scrubbed... URL: From toby.corkindale at strategicdata.com.au Thu May 2 23:02:37 2013 From: toby.corkindale at strategicdata.com.au (Toby Corkindale) Date: Fri, 03 May 2013 16:02:37 +1000 Subject: [Melbourne-pm] S3 modules In-Reply-To: References: <5181C94C.3050402@strategicdata.com.au> <51832656.50107@strategicdata.com.au> <518340C5.2000104@strategicdata.com.au> Message-ID: <518352FD.3070908@strategicdata.com.au> On 03/05/13 15:17, Mathew Robertson wrote: > > I guess I can just fork and rename and upload, as Sam suggests, but I > don't really have any intention of taking on the workload of maintaining > the module, so it seems irresponsible. > > > That made me smirk... :) > > > I demonstrated a "Retry" module one PM evening... which had semantics of: > > my $result = retry $times { .... } on_fail { .... } on_last_fail { .... }; > > > I chose to not upload said module, as there was already an "Attempt" > module and I couldn't justify my code as being more useful. Ah, sorry, I don't think I remembered seeing your demo at the time I wrote my Retry module. > > http://search.cpan.org/~markf/Attempt-1.01/lib/Attempt.pm > > But alas you did create a less useful module: > > http://search.cpan.org/~tjc/Retry-0.12/lib/Retry.pm My module has exponential delays between retries and a different interface. Critically, it has a name that turns up in searches, unlike "Attempt" which sounds like yet another exception catching method. From mathew.blair.robertson at gmail.com Thu May 2 23:27:53 2013 From: mathew.blair.robertson at gmail.com (Mathew Robertson) Date: Fri, 3 May 2013 16:27:53 +1000 Subject: [Melbourne-pm] S3 modules In-Reply-To: <518352FD.3070908@strategicdata.com.au> References: <5181C94C.3050402@strategicdata.com.au> <51832656.50107@strategicdata.com.au> <518340C5.2000104@strategicdata.com.au> <518352FD.3070908@strategicdata.com.au> Message-ID: > > > Ah, sorry, I don't think I remembered seeing your demo at the time I wrote > my Retry module. > > AFAICR, we had a side discussion on source-filters and why they are sometimes the right solution... > > >> http://search.cpan.org/~markf/**Attempt-1.01/lib/Attempt.pm >> >> But alas you did create a less useful module: >> >> http://search.cpan.org/~tjc/**Retry-0.12/lib/Retry.pm >> > > My module has exponential delays between retries and a different > interface. Critically, it has a name that turns up in searches, unlike > "Attempt" which sounds like yet another exception catching method. > > But repeated nonetheless. As an aside: The main problem with your implementation was that your "on fail" and "on last fail" scenarios dont lend themselves to doing *interesting* stuff during the failures as it always expondentially backs-off... aka: this is user-policy being enforced inside the module And I always thought that the syntax of retry {} should emulate eval {}, as it has the same semantics, but repeated. cheers, Mathew -------------- next part -------------- An HTML attachment was scrubbed... URL: From sam at nipl.net Thu May 2 23:55:04 2013 From: sam at nipl.net (Sam Watkins) Date: Fri, 3 May 2013 16:55:04 +1000 Subject: [Melbourne-pm] S3 modules In-Reply-To: <518352FD.3070908@strategicdata.com.au> References: <5181C94C.3050402@strategicdata.com.au> <51832656.50107@strategicdata.com.au> <518340C5.2000104@strategicdata.com.au> <518352FD.3070908@strategicdata.com.au> Message-ID: <20130503065504.GI8608@opal.nipl.net> > there was already an CPAN contains 100 of nearly everything, and that's good! Well, so long as we can find and list the best of the best... Sam From toby.corkindale at strategicdata.com.au Fri May 3 01:16:53 2013 From: toby.corkindale at strategicdata.com.au (Toby Corkindale) Date: Fri, 03 May 2013 18:16:53 +1000 Subject: [Melbourne-pm] S3 modules In-Reply-To: <51832656.50107@strategicdata.com.au> References: <5181C94C.3050402@strategicdata.com.au> <51832656.50107@strategicdata.com.au> Message-ID: <51837275.1050804@strategicdata.com.au> And answering my question again.. the other module, Amazon::S3, fails because, well, it fails to follow the Amazon S3 spec and can't create buckets because it uses the wrong path. On 03/05/13 12:52, Toby Corkindale wrote: > Answering my own question, but oh well.. > > Net::Amazon::S3 insta-fails because it is hardcoded to use Amazon's S3 > server URL.. so you can't use with with any other cloud provider or your > own services. > > There's been a feature request, with patch, out for a couple of years > but the author has stubbornly refused to merge the trivial patch. > *sigh* > > On 02/05/13 12:02, Toby Corkindale wrote: >> Quick straw poll.. Which Amazon S3 CPAN module works well? >> >> >> Experiences relating to how well they handle big files without slurping >> the whole things into memory would be good to know too. >> >> Sadly I see neither supports the "give me an external signed URL" >> option :/ >> >> >> I can investigate myself, but hoping I could save some time.. >> (The dependency upon xml::libxml isn't a problem btw; I wasn't sure if >> that was the ONLY reason for one of the S3 modules out there, or not) >> _______________________________________________ >> Melbourne-pm mailing list >> Melbourne-pm at pm.org >> http://mail.pm.org/mailman/listinfo/melbourne-pm > > _______________________________________________ > Melbourne-pm mailing list > Melbourne-pm at pm.org > http://mail.pm.org/mailman/listinfo/melbourne-pm From alfiej at opera.com Sun May 5 18:15:46 2013 From: alfiej at opera.com (Alfie John) Date: Mon, 06 May 2013 11:15:46 +1000 Subject: [Melbourne-pm] May/June meetings Message-ID: <1367802946.29387.140661226945057.689C3FD0@webmail.messagingengine.com> Hello Perl Mongers, As this month's meeting is was to be held this week and me dropping the ball with organising Greg's talk, we've opted to skip May's meeting and instead post about a meeting for June. The next Melbourne Perl Mongers meeting will be on Wednesday the 12th of June, 2013 and will start around 6:30pm: Opera Software Level 1, 91-97 William Street Melbourne CBD Tentatively, Ron Savage will be giving a talk on Marpa Release 2. Marpa parses any language whose grammar can be written in BNF. That includes recursive grammars, ambiguous grammars, infinitely ambiguous grammars and grammars with useless or empty productions. If anyone else would like to give a talk, feel free to email the list. Alfie -- Alfie John alfiej at opera.com From andrew_dent at dentaur.com Tue May 7 16:09:04 2013 From: andrew_dent at dentaur.com (Andrew Dent) Date: Wed, 8 May 2013 09:09:04 +1000 Subject: [Melbourne-pm] emails to iPhones Message-ID: <003601ce4b77$ee877810$cb966830$@dentaur.com> Hi I'm using MIME::Lite [1] to send a multipart HTML email with a gif in the signature and with a single PDF attachment. The email looks as it should when received in MS Outlook 2010, but on the iPhone the PDF attachment is not handled correctly and instead the RAW unreadable contents of the PDF file end up in the body of the email. On Windows 7 and 8, the PDF file will open and display correctly in Adobe Reader (tested with versions > 10) without generating any errors. Is this likely to be a "feature" of MIME::Lite and so I need to learn the new module, or is there something I can do with MIME::Lite to make the email be properly handled by the iPhone mail client? I haven't tested the iPad mail client yet, but I wouldn't be surprised if it is the same as the iPhone mail client. Cheers Andrew [1] I know the author of MIME::Lite says to use a newer module, but I have always found MIME::Lite very easy to use compared to the newer module. -------------- next part -------------- An HTML attachment was scrubbed... URL: From greg.george at orica.com Wed May 8 15:35:41 2013 From: greg.george at orica.com (greg.george at orica.com) Date: Thu, 9 May 2013 08:35:41 +1000 Subject: [Melbourne-pm] emails to iPhones In-Reply-To: <003601ce4b77$ee877810$cb966830$@dentaur.com> References: <003601ce4b77$ee877810$cb966830$@dentaur.com> Message-ID: Hi Andrew, I have not used MIME::Lite so can't comment on that. I do all my emails including inline images with Mail::Sender without issues, interface seems pretty straight forward and flexible. I have not done any testing to iPhone though. Regards, Greg George Finance, Information Technology, Global IT Infrastructure & Operations , Globalisation Project Orica | www.orica.com +61 3 9091 2492 | +61 404 892 159 | +61 3 9091 2444 | greg.george at orica.com From: "Andrew Dent" To: "'Melbourne Perlmongers'" , Date: 08/05/2013 09:11 AM Subject: [Melbourne-pm] emails to iPhones Sent by: "Melbourne-pm" Hi I?m using MIME::Lite [1] to send a multipart HTML email with a gif in the signature and with a single PDF attachment. The email looks as it should when received in MS Outlook 2010, but on the iPhone the PDF attachment is not handled correctly and instead the RAW unreadable contents of the PDF file end up in the body of the email. On Windows 7 and 8, the PDF file will open and display correctly in Adobe Reader (tested with versions > 10) without generating any errors. Is this likely to be a ?feature? of MIME::Lite and so I need to learn the new module, or is there something I can do with MIME::Lite to make the email be properly handled by the iPhone mail client? I haven?t tested the iPad mail client yet, but I wouldn?t be surprised if it is the same as the iPhone mail client. Cheers Andrew [1] I know the author of MIME::Lite says to use a newer module, but I have always found MIME::Lite very easy to use compared to the newer module. _______________________________________________ Melbourne-pm mailing list Melbourne-pm at pm.org http://mail.pm.org/mailman/listinfo/melbourne-pm *********************************************************************************************************************************************************************************************** Please consider the environment before printing this e-mail. This message is intended solely for the individual(s) and entity(s) addressed. It is confidential and may contain legally privileged information. The use, copying or distribution of this message or any information it contains, by anyone other than the addressee, is prohibited. If you have received this message in error, please notify postmaster at orica.com. The mailbox address from which this message has been sent is for business mail only. Mail sent to it may be subject to security scanning and delivery on non-business messages sent to this address may not occur. Thank you. *********************************************************************************************************************************************************************************************** -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: image/gif Size: 262 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: image/gif Size: 193 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: image/gif Size: 218 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: image/gif Size: 248 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: image/gif Size: 2398 bytes Desc: not available URL: From tjc at wintrmute.net Wed May 15 07:13:06 2013 From: tjc at wintrmute.net (Toby Wintermute) Date: Thu, 16 May 2013 00:13:06 +1000 Subject: [Melbourne-pm] Fwd: OSDC2013 Registration and CFP In-Reply-To: References: Message-ID: The OSDC is running again this year - in Auckland. See below for their announcement and CFP. Cheers, Toby ---------- Forwarded message ---------- The Australasian Open Source Developers Conference is one of the top conferences for developers in Asia Pacific. It's primarily focused on development with open source tools and development of open source software, and is now in its 10th year. For the first time, the conference is crossing the ocean and is landing in Auckland, New Zealand, 21st - 23rd October 2013, at the lavish Langham Hotel. This makes it truly an international event to that is a must attend. Covering everything from revision control to the latest software development methodologies and tools, OSDC cannot afford to be missed by anyone who uses open source development tools, or writes open source software. Our focus this year is security, identity and privacy. We need YOU as a presenter! Your pet project, what you?re currently working on, what you?d like to work on. You've got a great idea in your head, and and we would like you to speak about it at OSDC2013 Auckland. Perhaps someone has suggested that you submit a proposal because they're impressed with what you've been doing, or perhaps you've given talks at other conferences or events and you'd like to give one here. Perhaps you're a repeat speaker, or at least a repeat proposal-submitter and you want some hints on how to make it much more likely your talk will be accepted. Now you need to read Jacinta Richardson?s document on how to submit a presentation. Your presentation should be either 30 or 45 minutes. Please email your submission to papers at osdc.org.nz. CFP closes 08 June. Have fun! Visit www.osdc.org.nz for registration and information. Best regards The OSDC2013 team From toby.corkindale at strategicdata.com.au Sun May 19 23:58:05 2013 From: toby.corkindale at strategicdata.com.au (Toby Corkindale) Date: Mon, 20 May 2013 16:58:05 +1000 Subject: [Melbourne-pm] Perl 5.18.0 Message-ID: <5199C97D.9080904@strategicdata.com.au> I don't think anyone has mentioned it here yet, but Perl 5.18 was released a few days ago. https://metacpan.org/module/RJBS/perl-5.18.0/pod/perldelta.pod From toby.corkindale at strategicdata.com.au Wed May 29 19:18:48 2013 From: toby.corkindale at strategicdata.com.au (Toby Corkindale) Date: Thu, 30 May 2013 12:18:48 +1000 Subject: [Melbourne-pm] given/when and smartmatch Message-ID: <51A6B708.5000107@strategicdata.com.au> As I'm sure you all noticed, Perl 5.18 is deprecating smartmatch, and the associated given/when syntax. (You can still have it, but you have to enable it as an experimental feature, and it may go away or change drastically in future perl versions) I wondered how you feel about this? I'm sad, because I rather like using the switch stuff - ie. given/when Footnote: Although I was perpetually irritated that you couldn't use given() as an rval, so I would always end up with patterns like this: sub foo { given (shift) { when (/yadda/) { return a } when (@stuff) { return b } default { return c } } } my $result = foo($thing) From toby.corkindale at strategicdata.com.au Thu May 30 00:28:44 2013 From: toby.corkindale at strategicdata.com.au (Toby Corkindale) Date: Thu, 30 May 2013 17:28:44 +1000 Subject: [Melbourne-pm] given/when and smartmatch In-Reply-To: References: <51A6B708.5000107@strategicdata.com.au> Message-ID: <51A6FFAC.6000404@strategicdata.com.au> On 30/05/13 12:42, Kahlil Hodgson wrote: > > On Thu, May 30, 2013 at 12:18 PM, Toby Corkindale > > wrote: > > I wondered how you feel about this? > > > Smart match, as currently defined, fails the 'obviousness' test for me. > Too many special cases for me to be immediately clear what was going to > happen with a particular piece of code. Kept having to have to check > the documentation. Not good for something that could become a common > construct. I agree that the version implemented is confusing, but I like the overall idea. I think it's trying to make up for the historical mistake of splitting up numeric and string equality into separate operators, and the confusing (and arguably wrong) behaviour of comparing arrays or references using the other equality operators. As much as people say smartmatch was not obvious, it does a better job than the existing options when you look at it this way: # These give the opposite result to what you'd expect, ie they are both true: [1,2,3] != [1,2,3] (1,2,3) == (4,5,6) #This is a warning or error depending on perl version: "fooba" == "fooba" # These do make sense: [1,2,3] ~~ [1,2,3] "fooba" ~~ "fooba" > I don't really mourn the loss of given/when, because the code I write > doesn't lend itself to switch-like statements that can't be handled > better with lookup tables. Perhaps there are some design patterns I'm > missing? It can be quite neat for certain types of incoming data. given ($input) { when (/complex_match/) { ... } when (/another_match/) { ... } when ($have_seen_you_before) { push $have_seen_you, $val } when (undef) { something else } when (expensive_check($_)) { .. } default { ok.. } } You can totally implement such a pattern in other ways; sometimes they are better too, but sometimes this is a quick, efficient method. -T