Bug#886197: ITP: node-js-cookie -- Lightweight JavaScript cookie API

2018-01-02 Thread Daniel Ring
Package: wnpp
Severity: wishlist
Owner: Daniel Ring 
X-Debbugs-CC: debian-de...@lists.debian.org

* Package name: node-js-cookie
  Version : 2.2.0
  Upstream Author : Klaus Hartl
* URL : https://github.com/js-cookie/js-cookie
* License : Expat
  Programming Lang: JavaScript
  Description : Lightweight JavaScript cookie API

 JS-Cookie is a simple, lightweight JavaScript API for handling cookies. It
 supports JSON data, custom encodings, and standard JavaScript module loaders.
 .
 Node.js is an event-based server-side JavaScript engine.



Bug#886097: ITP: node-progressjs -- JavaScript progress bar library

2018-01-01 Thread Daniel Ring
Package: wnpp
Severity: wishlist
Owner: Daniel Ring 
X-Debbugs-CC: debian-de...@lists.debian.org

* Package name: node-progressjs
  Version : 0.1.0
  Upstream Author : Afshin Mehrabani 
* URL : https://github.com/usablica/progress.js
* License : Expat
  Programming Lang: JavaScript
  Description : JavaScript progress bar library

 ProgressJs is a JavaScript and CSS3 library that helps developers create and
 manage progress bars for every object on the page.
 .
 Node.js is an event-based server-side JavaScript engine.



Bug#886092: ITP: node-knockout-transformations -- Live transform methods for Knockout observable arrays

2018-01-01 Thread Daniel Ring
Package: wnpp
Severity: wishlist
Owner: Daniel Ring 
X-Debbugs-CC: debian-de...@lists.debian.org

* Package name: node-knockout-transformations
  Version : 2.1.0
  Upstream Author : One.com
* URL : https://github.com/One-com/knockout-transformations
* License : Apache-2.0
  Programming Lang: JavaScript
  Description : Live transform methods for Knockout observable arrays

 This plugin adds observable map, filter, indexBy and sortBy features to
 Knockout.js observable arrays, so you can transform collections in arbitrary
 ways and have the results automatically update whenever the underlying source
 data changes.
 .
 Node.js is an event-based server-side JavaScript engine.



Bug#885986: ITP: node-knockout-sortable -- JQuery-UI "sortable" binding for knockout

2018-01-01 Thread Daniel Ring
Package: wnpp
Severity: wishlist
Owner: Daniel Ring 
X-Debbugs-CC: debian-de...@lists.debian.org

* Package name: node-knockout-sortable
  Version : 1.1.0
  Upstream Author : Ryan Niemeyer
* URL : https://github.com/rniemeyer/knockout-sortable
* License : Expat
  Programming Lang: JavaScript
  Description : JQuery-UI "sortable" binding for knockout

 Knockout-Sortable is a binding for Knockout.js designed to connect
 observableArrays with jQuery UI's sortable functionality. This allows a user
 to drag and drop items within a list or between lists and have the
 corresponding observableArrays updated appropriately.
 .
 Node.js is an event-based server-side JavaScript engine.



Bug#885978: ITP: node-lightgallery -- Modular lightbox gallery plugin for jQuery

2017-12-31 Thread Daniel Ring
Package: wnpp
Severity: wishlist
Owner: Daniel Ring 
X-Debbugs-CC: debian-de...@lists.debian.org

* Package name: node-lightgallery
  Version : 1.6.6
  Upstream Author : Sachin N 
* URL : http://sachinchoolur.github.io/lightGallery/
* License : GPLv3
  Programming Lang: JavaScript
  Description : Modular lightbox gallery plugin for jQuery

 Lightgallery is a customizable, modular, and responsive lightbox gallery
 plugin for jQuery. Its main features include mobile device support,
 keyboard navigation, animated thumbnails, and HTML5 video display.
 .
 Node.js is an event-based server-side JavaScript engine.



Bug#885972: ITP: node-opentip -- JavaScript tooltip class

2017-12-31 Thread Daniel Ring
Package: wnpp
Severity: wishlist
Owner: Daniel Ring 
X-Debbugs-CC: debian-de...@lists.debian.org

* Package name: node-opentip
  Version : 2.4.6
  Upstream Author : Matias Meno 
* URL : http://www.opentip.org
* License : Expat
  Programming Lang: JavaScript
  Description : JavaScript tooltip class

 Opentip is a free open-source JavaScript tooltip class. It supports stems,
 automatic content download with AJAX, styling, automatic repositioning to
 remain within the browser viewport, user-defined triggers, and CSS3
 animations.



Bug#885900: ITP: node-knockout -- JavaScript MVVM framework

2017-12-30 Thread Daniel Ring
Package: wnpp
Severity: wishlist
Owner: Daniel Ring 
X-Debbugs-CC: debian-de...@lists.debian.org

* Package name: node-knockout
  Version : 3.4.2
  Upstream Author : Steven Sanderson and the Knockout.js team
* URL : http://knockoutjs.com/
* License : Expat
  Programming Lang: JavaScript
  Description : JavaScript MVVM framework

 Knockout is a JavaScript MVVM (a modern variant of MVC) library that makes it
 easier to create rich, desktop-like user interfaces with JavaScript and HTML.
 It uses observers to make your UI automatically stay in sync with an
 underlying data model, along with a powerful and extensible set of declarative
 bindings to enable productive development.
 .
 Node.js is an event-based server-side JavaScript engine.



Bug#885897: ITP: libjs-jquery-backstretch -- jQuery background image plugin

2017-12-30 Thread Daniel Ring
Package: wnpp
Severity: wishlist
Owner: Daniel Ring 
X-Debbugs-CC: debian-de...@lists.debian.org

* Package name: libjs-jquery-backstretch
  Version : 2.1.16
  Upstream Author : Scott Robbin 
* URL : https://github.com/jquery-backstretch/jquery-backstretch
* License : Expat
  Programming Lang: JavaScript
  Description : jQuery background image plugin

 Backstretch is a simple jQuery plugin that allows you to add a
 dynamically-resized, slideshow-capable background image to any page or
 element. The image will stretch to fit the page/element, and will
 automatically resize as the window/element size changes.



Bug#885848: ITP: node-simplestatemanager -- Lightweight state manager for responsive websites

2017-12-30 Thread Daniel Ring
Package: wnpp
Severity: wishlist
Owner: Daniel Ring 
X-Debbugs-CC: debian-de...@lists.debian.org

* Package name: node-simplestatemanager
  Version : 4.0.2
  Upstream Author : Jonathan Fielding
* URL : https://github.com/jonathan-fielding/SimpleStateManager
* License : Expat
  Programming Lang: JavaScript
  Description : Lightweight state manager for responsive websites

 Simple State Manager is a JavaScript state manager for responsive websites. It
 is built to be lightweight, has no dependencies, and aims to be easy to use.
 .
 As a state manager, SSM allows you to target different JavaScript towards
 different states of a website. It allows you to define as many states as your
 site requires and provides independent Enter, Leave and Resize events for each
 of the states.
 .
 Node.js is an event-based server-side JavaScript engine.



Bug#885065: ITP: node-ifvisible.js -- Determine if a web page is visible in the browser

2017-12-23 Thread Daniel Ring
Package: wnpp
Severity: wishlist
Owner: Daniel Ring 
X-Debbugs-CC: debian-de...@lists.debian.org

* Package name: node-ifvisible.js
  Version : 1.0.6
  Upstream Author : Serkan Yersen 
* URL : https://github.com/serkanyersen/ifvisible.js
* License : Expat
  Programming Lang: JavaScript
  Description : Determine if a web page is visible in the browser

 Ifvisible.js provides a cross-browser and lightweight method of determining
 whether a user is currently looking at or interacting with a web page.
 .
 Node.js is an event-based server-side JavaScript engine.



Bug#884566: ITP: node-autolinker -- Utility for automatically linking URLs, emails, etc. in text

2017-12-16 Thread Daniel Ring
Package: wnpp
Severity: wishlist
Owner: Daniel Ring 
X-Debbugs-CC: debian-de...@lists.debian.org

* Package name: node-autolinker
  Version : 1.6.0
  Upstream Author : Gregory Jacobs 
* URL : https://github.com/gregjacobs/Autolinker.js
* License : Expat
  Programming Lang: JavaScript
  Description : Utility for automatically linking URLs, emails, etc. in text

 Autolinker is a utility for automatically adding hyperlinks to URLs, email
 addresses, phone numbers, Twitter handles, and hashtags in a given block of
 text or HTML.
 .
 Node.js is an event-based server-side JavaScript engine.



Bug#884450: ITP: node-pikaday -- A lightweight JavaScript datepicker

2017-12-15 Thread Daniel Ring
Package: wnpp
Severity: wishlist
Owner: Daniel Ring 
X-Debbugs-CC: debian-de...@lists.debian.org

* Package name: node-pikaday
  Version : 1.7.0
  Upstream Author : David Bushell
* URL : http://dbushell.github.io/Pikaday/
* License : MIT or BSD
  Programming Lang: JavaScript
  Description : A lightweight JavaScript datepicker

 Pikaday is a lightweight JavaScript datepicker with modular CSS and no
 dependencies. It is designed to work well alone but supports integration
 with Moment.js.
 .
 Node.js is an event-based server-side JavaScript engine.



Bug#884447: ITP: node-classnames -- UUtility for conditionally combining classnames in JavaScript

2017-12-15 Thread Daniel Ring
Package: wnpp
Severity: wishlist
Owner: Daniel Ring 
X-Debbugs-CC: debian-de...@lists.debian.org

* Package name: node-classnames
  Version : 2.2.5
  Upstream Author : Jed Watson
* URL : https://github.com/JedWatson/classnames
* License : Expat
  Programming Lang: JavaScript
  Description : Utility for conditionally combining classnames in JavaScript

 A simple utility for conditionally generating a list of CSS class names
 from criteria defined by a set of JavaScript objects.
 .
 Node.js is an event-based server-side JavaScript engine.



Bug#875987: ITP: node-babel-plugin-transform-decorators-legacy -- Compile class and object decorators to ES5 (legacy)

2017-09-16 Thread Daniel Ring
Package: wnpp
Severity: wishlist
Owner: Daniel Ring 
X-Debbugs-CC: debian-de...@lists.debian.org

* Package name: node-babel-plugin-transform-decorators-legacy
  Version : 1.3.4
  Upstream Author : Logan Smyth 
* URL : 
https://github.com/loganfsmyth/babel-plugin-transform-decorators-legacy#readme
* License : Expat
  Programming Lang: JavaScript
  Description : Compile class and object decorators to ES5 (legacy)

 A plugin for Babel 6 that (mostly) replicates the old decorator behavior from 
Babel 5.

 Babel is a JavaScript compiler to use next generation JavaScript, today.

 ES2015 and beyond: Babel has support for the latest version of JavaScript
 through syntax transformers. These plugins allow you to use new syntax, right
 now without waiting for browser support.

 Note: This library is in contrib because it needs node-babel from contrib to
 build.

 Node.js is an event-based server-side JavaScript engine.



Bug#875378: ITP: node-style-loader -- style loader module for webpack

2017-09-10 Thread Daniel Ring
Package: wnpp
Severity: wishlist
Owner: Daniel Ring 
X-Debbugs-CC: debian-de...@lists.debian.org

* Package name: node-style-loader
  Version : 0.17.0
  Upstream Author : Tobias Koppers @sokra
* URL : https://github.com/webpack/style-loader
* License : Expat
  Programming Lang: JavaScript
  Description : style loader module for webpack

 This library is a style loader module for webpack.

 This library is a dependency for webpack. Webpack takes code targeted at
 node.js and adapts it to run in the browser. Node.js comes with an API of
 its own that is not available in browsers. Webpack exposes this code to
 programs that are unaware they are running in a browser.

 Node.js is an event-based server-side JavaScript engine.



Bug#861581: ITP: rainloop -- Simple, modern & fast web-based email client

2017-06-20 Thread Daniel Ring
Hi Gunnar,

Sorry for the delay; I've done more work on the package, but I'm extremely busy
at the moment so updates/responses may take a while. The current version fixes
a lot of issues but isn't ready for inclusion in Debian yet.

> Ugh. The whole NodeJS ecosystem makes me shiver :-(

Agreed. I've been working on packaging dependencies individually when I can,
apparently 5 lines of code is enough to warrant an NPM package...

> That is also something that cannot be done; packaging software cannot
> depend on network connectivity (not even initiate network
> connections). The dependencies must be somehow build-depended upon; in
> the (ugliest, worst) case you could patch your sources to include the
> packages to fulfill this... But I doubt the ftp-masters will approve
> of it.

I've done this to make the package build successfully, but I'm working with the
pkg-javascript group on getting the non-library dependencies packaged
independently. Libraries missing from Debian should be OK
(using https://packages.debian.org/source/sid/netdata as an example) but build
system tools are a bit much.

I wrote a basic Makefile to replace upstream's Gulp build system, which helped
a lot, but webpack+babel is unavoidable so I'm working on that project at the
moment.

> We have to ship sources for every piece of software. You don't need to
> separate them as long as you provide all the sources and can *prove*
> they can be amalgamated to the identical "binary" you are
> shipping. That's not a trivial thing, sadly :(

Fortunately, the amalgamation is a step in upstream's build process; the bundled
libraries are included in source form.

The new DSC URL is:
https://mentors.debian.net/debian/pool/main/r/rainloop/rainloop_1.11.1-1.dsc

I think I've fixed all of the major issues with the package other than the
bundled build tools. I'll update the copyright file once that's done and I find
out what will still need to be bundled. Please let me know if there's anything
else I'm missing.

Sincerely,
Daniel Ring



Bug#864322: ITP: node-es6-promise-polyfill -- JavaScript Polyfill for ES6 Promise

2017-06-06 Thread Daniel Ring
Control: close -1

I noticed when creating the git repository on Alioth that a package for this
already exists. It's called "node-es6-promise", so npm2deb doesn't find it, but
it's essentially the same project. es6-promise-polyfill is the older fork and
doesn't appear to be actively maintained.

June 6, 2017 4:01 PM, ow...@bugs.debian.org wrote:

> Thank you for filing a new Bug report with Debian.
> 
> This is an automatically generated reply to let you know your message
> has been received.
> 
> Your message is being forwarded to the package maintainers and other
> interested parties for their attention; they will reply in due course.
> 
> As you requested using X-Debbugs-CC, your message was also forwarded to
> debian-de...@lists.debian.org
> (after having been given a Bug report number, if it did not have one).
> 
> Your message has been sent to the package maintainer(s):
> w...@debian.org
> Daniel Ring 
> 
> If you wish to submit further information on this problem, please
> send it to 864...@bugs.debian.org.
> 
> Please do not send mail to ow...@bugs.debian.org unless you wish
> to report a problem with the Bug-tracking system.
> 
> --
> 864322: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=864322
> Debian Bug Tracking System
> Contact ow...@bugs.debian.org with problems



Bug#864322: ITP: node-es6-promise-polyfill -- JavaScript Polyfill for ES6 Promise

2017-06-06 Thread Daniel Ring
Package: wnpp
Severity: wishlist
Owner: Daniel Ring 
X-Debbugs-CC: debian-de...@lists.debian.org

* Package name: node-es6-promise-polyfill
  Version : 1.2.0
  Upstream Author : Roman Dvornov 
* URL : https://github.com/lahmatiy/es6-promise-polyfill
* License : Expat
  Programming Lang: JavaScript
  Description : JavaScript Polyfill for ES6 Promise

 Polyfill for the ECMAScript 6 Promise object. Promises allow for ordered
 execution of asynchronous callbacks.

 Node.js is an event-based server-side JavaScript engine.

 This library is a build dependency for webpack. Webpack takes code targeted at
 node.js and adapts it to run in the browser. Node.js comes with an API of
 its own that is not available in browsers. Webpack exposes this code to
 programs that are unaware they are running in a browser.



Bug#863466: ITP: node-raw-loader -- raw loader module for webpack

2017-05-27 Thread Daniel Ring
Package: wnpp
Severity: wishlist
Owner: Daniel Ring 
X-Debbugs-CC: debian-de...@lists.debian.org

* Package name: node-raw-loader
  Version : 0.5.1
  Upstream Author : Tobias Koppers @sokra
* URL : https://github.com/webpack/raw-loader
* License : Expat
  Programming Lang: JavaScript
  Description : raw loader module for webpack

 This library is a raw loader module for webpack.

 This library is a dependency for webpack. Webpack takes code targeted at
 node.js and adapts it to run in the browser. Node.js comes with an API of
 its own that is not available in browsers. Webpack exposes this code to
 programs that are unaware they are running in a browser.

 Node.js is an event-based server-side JavaScript engine.



Bug#861581: ITP: rainloop -- Simple, modern & fast web-based email client

2017-05-13 Thread Daniel Ring
Hi Andreas,

Thanks for the review! I've made most of the changes, but a lot of packages
are missing from Debian so I had to bundle far more than I'd like.

Bundling the libraries doesn't make /too/ much of a difference since they're
compiled into the app anyway, but the build system itself has some troublesome
dependency issues. Most can be resolved by switching to a Makefile (though it
would be a lot of work), but the javascript compilation requires external
software. A package for it is being worked on (see #805906 and
https://wiki.debian.org/Javascript/Nodejs/Tasks/webpack) but progress is slow.
I've bundled it to allow the build to run for the time being, but I expect
opposition to that as it's against the Debian guidelines.


May 8, 2017 2:30 AM, "Andreas Henriksson"  wrote:

> Noticed your ITP announcement on debian-devel and it seemed your package
> could be a useful addition. I might sponsor you if needed (but like I
> tell everyone I offer to sponsor please go through the regular RFS
> procedure and CC me just so others can also review your changes and
> sponsor your uploads when I'm too busy).
> I noticed Gunnar has already offered to review and sponsor but I figured
> the more the merrier, right? ;)

Thanks for the offer! I'll do that if I don't hear back from Gunnar for a while.

> Hopefully also npm from experimental works?

NPM was removed from experimental as well, since it's currently unmaintained.
It's not necessary with bundled dependencies so I removed it from the list.

> In my view, maintaining a package also means you need to look at the
> health of your dependencies and get them in shape where needed.
> Are you interested in getting involved with packaging of npm itself
> or how do you view the current outlook of not being included in
> next stable release?

I'd definitely like the package to be included in stable, but I don't
have the time to maintain the forest of NodeJS dependencies as packages.
Updates if/when someone else packages a dependency (some are already
being worked on) are fairly easy though, and I'll keep an eye out for that.

> I guess you're already aware though that (atleast on official Debian buildds)
> there's no internet connectivity available at package build time...

Yep, that's why I mentioned NPM as a concern. Bundling missing libraries until
they're properly packaged solves this.

> Me neighter, but preferably the amalgation process should be a step in
> the package building. One reason is it's easier to fix any future found
> issues by patching the source and rebuilding rather than having to patch
> something generated.

It's a build step from upstream. Several of the javascript packages provide
minified versions as part of the package itself, so I included a copy of the
source for those cases.

> I've quickly looked at the packaging and in general it looks well prepared.
> I made some notes about things that popped up on my mind attached below.
> One more general question I have is about security though. See for example
> roundcube which has had quite a few CVEs found and fixed during the years.
> Has rainloop taken any particular stance on development practises for
> security? How new is the project or how widely has it been deployed yet
> that might give it some kind of practical security track record?

That's a good question, but not one I can easily answer. There are a number of
security features (PGP, 2FA, etc.) included in the software itself, and the
developer seems to pay some attention to security from what I can see on the
issue tracker, but there haven't been any major issues so I don't know what
the response would be.

Rainloop is dual-licensed as a commercial product and seems to have a decently
large userbase based on the activity on Github. It's been around for several
years and is fairly mature software at this point, but the long dependency list
is somewhat concerning as it increases the likelihood of an upstream
vulnerability being exposed (should one be discovered).

> debian/control:
> ...
> - Mix of php(7) and php5 dependencies? Only php5 compatible? Will we
> ship php5 or will rloop soon be php7 compatible?
> 
> debian/copyright:
> ...
> 
> debian/*postinst:
> ...

Rainloop runs on both PHP5 and PHP7; I overlooked the meta-packages for
a few of the dependencies when putting the list together. I've applied
all of the changes you suggested. Thanks for the tip about dh_fixperms;
I looked for that when first putting together the package but couldn't
find it.

I've published the new version of the package to mentors:
https://mentors.debian.net/debian/pool/main/r/rainloop/rainloop_1.11.0.205-2.dsc

Sincerely,
Daniel Ring



Bug#861581: ITP: rainloop -- Simple, modern & fast web-based email client

2017-05-07 Thread Daniel Ring
May 2, 2017 9:58 AM, "Gunnar Wolf"  wrote:
> Hi Daniel,
> 
> I'm interested in looking at your package. When it's ready and when
> you need a sponsor, mail me!

Hi Gunnar,

I've finished putting together a preliminary version of the package, but I
have a few concerns about it.

The largest one is that the build system is NodeJS-based, and requires a
version of npm newer than the one currently in Debian. Bugs #857986 and #794890
have some details about npm's issues. Installing nodejs from its official
repository works, as does building on Ubuntu.

Secondly, the build system has the usual issue with NodeJS packaging; it
downloads dependencies at runtime. Most of the packages don't exist in Debian
or are out of date, and I found several existing packages doing this while
looking for a better solution, so I'm not sure how much of an issue this is.
This only occurs at build-time, and nodejs isn't required to use the software.

Finally, the upstream source contains several embedded libraries. I was able to
swap a few of them for existing packages in Debian, but there are a few PHP
libraries that don't have existing packages. The JavaScript libraries are
amalgamated into a single file at build-time, and separating them out would be
a non-trivial amount of work for decreased performance. Again, I found several
existing packages doing this, so I'm not sure how much of a problem it is.
Upstream provided sources for most, I added the few missing to satisfy lintian.

I've uploaded the package to mentors: 
https://mentors.debian.net/package/rainloop
Please review it when you have a chance, and let me know if there's anything I
need to fix!



Bug#861581: ITP: rainloop -- Simple, modern & fast web-based email client

2017-04-30 Thread Daniel Ring
Package: wnpp
Severity: wishlist
Owner: Daniel Ring 

* Package name: rainloop
  Version : 1.11.0.205
  Upstream Author : Timur Usenko 
* URL : https://www.rainloop.net/
* License : AGPL-3
  Programming Lang: PHP
  Description : Simple, modern & fast web-based email client

Rainloop is a PHP-based MUA with a modern interface and no database 
requirements.

It supports IMAP and SMTP protocols (including SSL), Sieve scripts, multiple 
accounts and identities, an admin panel for configuration, and integration with 
a variety of commonly-used services. Plugins can be installed to further extend 
functionality. Emails are not stored locally, but are accessed through IMAP.


Debian already has a few webmail packages, but very few with a modern interface 
style, all of which require a database backend. I created a package for 
Rainloop for personal use, but I think other Debian users may find it useful as 
well.

I should be able to handle maintainance myself, as very few changes are 
required from upstream, but I will need a sponsor.