[Summary]
Ruby rack is a popular middleware/framework for developing web applications,
using Ruby (not quite as popular as "Rails", though). It is well maintained
and I have not found another ruby based web framework in main.
MIR team ACK under the constraint to resolve the below listed
required TODOs and as much as possible having a look at the
recommended TODOs.
This does need a security review, so I'll assign ubuntu-security
List of specific binary packages to be promoted to main: ruby-rack
Specific binary packages built, but NOT to be promoted to main: <None>
Notes:
This is a middleware, exposed to the public interwebs, parsing HTTP requests.
Also, it has a history of CVEs in addition to https://bugs.debian.org/946983
So I'm assigning ~ubuntu-security.
Required TODOs:
#0 current release NOT packaged, new major version 3.0.0 available as of 09/22
Recommended TODOs:
#1 The package should get a team bug subscriber (Server team) before being promoted
#2 Debian/Ubuntu update history is a bit slow, we should try to improve this moving forward (We have DDs as uploaders, so that should be fine)
#3 Lintian suggestion:
P: ruby-rack source: maintainer-manual-page [debian/rackup.1]
The maintainer keeps a manual page in ./debian. Please forward the manual
page upstream and ask them to include in their version control system, and
in their next release.
#4 three classes of warnings during build (see below for logs):
(1) should (xargs options) be fixed
(2) we probably can't do anything about it right now
(3) should be discussed with upstream
[Duplication]
There is no other package in main providing the same functionality.
https://www.ruby-toolbox.com/categories/web_app_frameworks
Rack seems to be a popular and well maintained Ruby middleware, but here are
other web frameworks for Ruby, notably src:rails which is even more popular.
None of those is currently in main, though.
[Dependencies]
OK:
- no other Dependencies to MIR due to this
- SRCPKG checked with `check-mir`
- all dependencies can be found in `seeded-in-ubuntu` (already in main)
- none of the (potentially auto-generated) dependencies (Depends
and Recommends) that are present after build are not in main
- no -dev/-debug/-doc packages that need exclusion
- No dependencies in main that are only superficially tested requiring
more tests now.
Problems: None
[Embedded sources and static linking]
OK:
- no embedded source present
- no static linking
- does not have unexpected Built-Using entries
- not a go package, no extra constraints to consider in that regard
- not a rust package, no extra constraints to consider in that regard
- Does not include vendored code
Problems: None
[Security]
OK:
- does not run a daemon as root
- does not use webkit1,2
- does not use lib*v8 directly
- does not use centralized online accounts
- does not integrate arbitrary javascript into the desktop
- does not deal with system authentication (eg, pam), etc)
- does not deal with security attestation (secure boot, tpm, signatures)
- does not deal with cryptography (en-/decryption, certificates, signing, ...)
Problems:
- does parse data formats (network packets) from an untrusted source.
- has a history of CVEs
- does open a port
- does process arbitrary web content
[Common blockers]
OK:
- does not FTBFS currently
- does have a test suite that runs at build time
- test suite fails will fail the build upon error.
- does have a non-trivial test suite that runs as autopkgtest
- no new python2 dependency
- not a go/python package
Problems: None
[Packaging red flags]
OK:
- Ubuntu does not carry a delta
- symbols tracking not applicable for this kind of code.
- d/watch is present and looks ok (if needed, e.g. non-native)
- Upstream update history is good
- promoting this does not seem to cause issues for MOTUs that so far
maintained the package
- no massive Lintian warnings
- d/rules is rather clean
- It is not on the lto-disabled list
Problems:
- Debian/Ubuntu update history is slow
- current release NOT packaged, new major version 3.0.0 available as of 09/22
- Lintian suggestion:
P: ruby-rack source: maintainer-manual-page [debian/rackup.1]
The maintainer keeps a manual page in ./debian. Please forward the manual
page upstream and ask them to include in their version control system, and
in their next release.
[Upstream red flags]
OK:
- no Errors during the build
- no incautious use of malloc/sprintf (as far as we can check it)
- no use of sudo, gksu, pkexec, or LD_LIBRARY_PATH (usage is OK inside tests)
- no use of user nobody
- no use of setuid
- no dependency on webkit, qtwebkit, seed or libgoa-*
- not part of the UI for extra checks
- no translation present, but none needed for this case (user visible)?
Problems:
- https://bugs.debian.org/946983
- 3 classes of warnings during build:
(1)
xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value
(2)
dpkg-gencontrol: warning: Depends field of package ruby-rack: substitution variable ${shlibs:Depends} used, but is not defined
dpkg-gencontrol: warning: package ruby-rack: substitution variable ${ruby:Depends} unused, but is defined
(3)
WARNING: open-ended dependency on minitest-sprint (>= 0, development) is not recommended
use a bounded requirement, such as '~> x.y'
WARNING: open-ended dependency on minitest-global_expectations (>= 0, development) is not recommended
use a bounded requirement, such as '~> x.y'
WARNING: open-ended dependency on rake (>= 0, development) is not recommended
use a bounded requirement, such as '~> x.y'
WARNING: See https://guides.rubygems.org/specification-reference/ for help
Review for Package: src:ruby-rack
[Summary] framework for developing web applications,
Ruby rack is a popular middleware/
using Ruby (not quite as popular as "Rails", though). It is well maintained
and I have not found another ruby based web framework in main.
MIR team ACK under the constraint to resolve the below listed
required TODOs and as much as possible having a look at the
recommended TODOs.
This does need a security review, so I'll assign ubuntu-security
List of specific binary packages to be promoted to main: ruby-rack
Specific binary packages built, but NOT to be promoted to main: <None>
Notes: /bugs.debian. org/946983
This is a middleware, exposed to the public interwebs, parsing HTTP requests.
Also, it has a history of CVEs in addition to https:/
So I'm assigning ~ubuntu-security.
Required TODOs:
#0 current release NOT packaged, new major version 3.0.0 available as of 09/22
Recommended TODOs: manual- page [debian/rackup.1]
#1 The package should get a team bug subscriber (Server team) before being promoted
#2 Debian/Ubuntu update history is a bit slow, we should try to improve this moving forward (We have DDs as uploaders, so that should be fine)
#3 Lintian suggestion:
P: ruby-rack source: maintainer-
The maintainer keeps a manual page in ./debian. Please forward the manual
page upstream and ask them to include in their version control system, and
in their next release.
#4 three classes of warnings during build (see below for logs):
(1) should (xargs options) be fixed
(2) we probably can't do anything about it right now
(3) should be discussed with upstream
[Duplication]
There is no other package in main providing the same functionality.
https:/ /www.ruby- toolbox. com/categories/ web_app_ frameworks
Rack seems to be a popular and well maintained Ruby middleware, but here are
other web frameworks for Ruby, notably src:rails which is even more popular.
None of those is currently in main, though.
[Dependencies]
OK:
- no other Dependencies to MIR due to this
- SRCPKG checked with `check-mir`
- all dependencies can be found in `seeded-in-ubuntu` (already in main)
- none of the (potentially auto-generated) dependencies (Depends
and Recommends) that are present after build are not in main
- no -dev/-debug/-doc packages that need exclusion
- No dependencies in main that are only superficially tested requiring
more tests now.
Problems: None
[Embedded sources and static linking]
OK:
- no embedded source present
- no static linking
- does not have unexpected Built-Using entries
- not a go package, no extra constraints to consider in that regard
- not a rust package, no extra constraints to consider in that regard
- Does not include vendored code
Problems: None
[Security]
OK:
- does not run a daemon as root
- does not use webkit1,2
- does not use lib*v8 directly
- does not use centralized online accounts
- does not integrate arbitrary javascript into the desktop
- does not deal with system authentication (eg, pam), etc)
- does not deal with security attestation (secure boot, tpm, signatures)
- does not deal with cryptography (en-/decryption, certificates, signing, ...)
Problems:
- does parse data formats (network packets) from an untrusted source.
- has a history of CVEs
- does open a port
- does process arbitrary web content
[Common blockers]
OK:
- does not FTBFS currently
- does have a test suite that runs at build time
- test suite fails will fail the build upon error.
- does have a non-trivial test suite that runs as autopkgtest
- no new python2 dependency
- not a go/python package
Problems: None
[Packaging red flags]
OK:
- Ubuntu does not carry a delta
- symbols tracking not applicable for this kind of code.
- d/watch is present and looks ok (if needed, e.g. non-native)
- Upstream update history is good
- promoting this does not seem to cause issues for MOTUs that so far
maintained the package
- no massive Lintian warnings
- d/rules is rather clean
- It is not on the lto-disabled list
Problems: manual- page [debian/rackup.1]
- Debian/Ubuntu update history is slow
- current release NOT packaged, new major version 3.0.0 available as of 09/22
- Lintian suggestion:
P: ruby-rack source: maintainer-
The maintainer keeps a manual page in ./debian. Please forward the manual
page upstream and ask them to include in their version control system, and
in their next release.
[Upstream red flags]
OK:
- no Errors during the build
- no incautious use of malloc/sprintf (as far as we can check it)
- no use of sudo, gksu, pkexec, or LD_LIBRARY_PATH (usage is OK inside tests)
- no use of user nobody
- no use of setuid
- no dependency on webkit, qtwebkit, seed or libgoa-*
- not part of the UI for extra checks
- no translation present, but none needed for this case (user visible)?
Problems: /bugs.debian. org/946983
- https:/
- 3 classes of warnings during build:
(1)
xargs: warning: options --max-lines and --replace/-I/-i are mutually exclusive, ignoring previous --max-lines value
(2)
dpkg-gencontrol: warning: Depends field of package ruby-rack: substitution variable ${shlibs:Depends} used, but is not defined
dpkg-gencontrol: warning: package ruby-rack: substitution variable ${ruby:Depends} unused, but is defined
(3) global_ expectations (>= 0, development) is not recommended /guides. rubygems. org/specificati on-reference/ for help
WARNING: open-ended dependency on minitest-sprint (>= 0, development) is not recommended
use a bounded requirement, such as '~> x.y'
WARNING: open-ended dependency on minitest-
use a bounded requirement, such as '~> x.y'
WARNING: open-ended dependency on rake (>= 0, development) is not recommended
use a bounded requirement, such as '~> x.y'
WARNING: See https:/