node-reflect-metadata 0.2.2-1
Package Information
| Description | polyfill for the ECMAScript Metadata Reflection API reflect-metadata provides a prototype implementation and polyfill for an ECMAScript Metadata Reflection API. It extends the global Reflect object with methods such as Reflect.metadata, Reflect.defineMetadata, Reflect.getMetadata, and Reflect.hasMetadata to declaratively or imperatively attach and introspect metadata on classes, methods, and properties. It is widely used by TypeScript and JavaScript projects that rely on decorator metadata (via TypeScript's --experimentalDecorators and --emitDecoratorMetadata options) for dependency injection, runtime type assertions, and reflection. Node.js is an event-based server-side JavaScript engine. |
|---|---|
| Maintainer | Debian Javascript Maintainers <pkg-javascript-devel@lists.alioth.debian.org> |
| Changed By | Ying-Chun Liu (PaulLiu) <paulliu@debian.org> |
| Sponsor | paulliu@debian.org |
| Distribution | unstable |
| Architecture | all |
| VCS | git: https://salsa.debian.org/js-team/node-reflect-metadata.git (browse) |
| Closes | #1152958 |
| Tracker | https://tracker.debian.org/pkg/node-reflect-metadata |
| Uploaded | 7 hours ago |
New Package Report
.changes
| Source | node-reflect-metadata |
|---|---|
| Version | 0.2.2-1 |
| Changed-By | Ying-Chun Liu (PaulLiu) <paulliu@debian.org> |
| Architecture | source all |
| Distribution | unstable |
| Date | Tue, 03 Nov 2026 20:45:18 +0000 |
Changelog
node-reflect-metadata (0.2.2-1) unstable; urgency=low . * Initial release (Closes: #1152958)
.dsc
| Package-List | node-reflect-metadata deb javascript optional arch=all |
|---|---|
| Section | javascript |
| Priority | optional |
| Component | main |
debian/copyright
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: reflect-metadata
Upstream-Contact: https://github.com/rbuckton/reflect-metadata/issues
Source: https://github.com/rbuckton/reflect-metadata
Files: *
Copyright: 2015-2024 Microsoft Corporation
2015-2024 Ron Buckton <ron.buckton@microsoft.com> (https://github.com/rbuckton)
License: Apache-2.0
Files: debian/*
Copyright: 2026, Ying-Chun Liu (PaulLiu) <paulliu@debian.org>
License: Apache-2.0
License: Apache-2.0
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
.
http://www.apache.org/licenses/LICENSE-2.0
.
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
.
On Debian systems, the complete text of the Apache version 2.0 license
can be found in "/usr/share/common-licenses/Apache-2.0".
DFSG Assistant LLM REVIEW 0 blocker, 0 important, 1 minor
This is an LLM based review using a Debian Inference based workflow. It was not written by a member of the DFSG team and has not been checked by one. It is not a decision on the package: it may be wrong, and it may have missed things.
Reviewed 6 hours ago.
Proposes a replacement debian/watch:
debian/watch in version 5 format
Report
DFSG NEW review for node-reflect-metadata version 0.2.2-1
Summary
- Licensing is DFSG-compliant and
debian/copyrightis accurate: Yes - Packaging is of good quality: Yes
- Issues: 0 blocker, 0 important, 1 minor
- debian/watch: old format (version 4)
- debian/copyright: machine-readable
- Scan before the review: nothing found
Licensing
All eleven upstream files are Apache-2.0: the three .js builds and three .d.ts files carry Copyright (C) Microsoft. All rights reserved. with the Apache-2.0 notice, package.json has "license": "Apache-2.0", LICENSE is the complete Apache-2.0 text and CopyrightNotice.txt the matching Microsoft notice. debian/copyright is DEP-5 with a Files: * stanza (Microsoft Corporation, Ron Buckton) covering everything and a debian/* stanza (Ying-Chun Liu, Apache-2.0), and points to /usr/share/common-licenses/Apache-2.0. No other licence, holder or non-free term appears anywhere in the tree, so the file is accurate and complete.
Packaging
Small, conventional dh-nodejs package: debhelper compat 13 with dh-sequence-nodejs, automatic module install under /usr/share/nodejs, Testsuite: autopkgtest-pkg-nodejs with a working debian/tests/pkg-js/test, DEP-5 copyright, Rules-Requires-Root: no, Multi-Arch: foreign on an arch-all module, Standards-Version 4.7.4 (current for Policy 4.7.4.1), source format 3.0 (quilt) needing no patches, and a sane initial changelog. Dependencies are complete: ${misc:Depends} suffices because the nodejs runtime dependency is only added by the build system for packages installing executables, and this one installs none. No issue worth reporting was found.
Issues
minor packaging 1. debian/watch is in the old version 4 format ◂
- Files:
debian/watch - Basis: found by the review tooling's own checks
- Evidence:
version=4 - Problem: Version 5 is the current format of
debian/watch. - Fix: Convert it to version 5; a mechanical conversion is under Proposed changes.
Verified ◂
Reflect.js,ReflectLite.js,ReflectNoConflict.js,index.d.ts,no-conflict.d.ts,standalone.d.ts: each starts withCopyright (C) Microsoft. All rights reserved.andLicensed under the Apache License, Version 2.0;package.jsondeclares"license": "Apache-2.0"; all are covered by theFiles: *Apache-2.0 stanza indebian/copyright.LICENSEcontains the full Apache-2.0 terms (ends withEND OF TERMS AND CONDITIONS) andCopyrightNotice.txtis the corresponding Microsoft Apache notice; both are covered byFiles: *and neither adds any other terms.README.mdcarries no licence statement (only links);AUTHORS.md(Cy Brown, Oleh Dokuka, Ron Buckton, William Buchwalter) is an authorship list, not a copyright notice, and every file's own notice names Microsoft; no holder asserted in the tree is missing fromdebian/copyright.- Grep across the whole tree with
gitignore: falseforCopyright,(C),©,SPDX-License-Identifier,Permission is hereby granted,GNU General/Lesser,Apache License,Mozilla Public,public domain,All rights reserved, and for restrictive wording (non-commercial,no modification,personal use,Good, not Evil,royalty): only the Apache-2.0 notices above were found. - No embedded third-party code or vendored library: the three .js files are upstream's own builds, including their own Map/Set/WeakMap code, and carry only the Microsoft/Apache banner; no other attribution text exists in the tree.
Reflect.js,ReflectLite.js,ReflectNoConflict.jsand the.d.tsfiles are TypeScript compiler output (tsc-stylevar Reflect; (function (Reflect) {...})(Reflect || (Reflect = {}));,Object.defineProperty(exports, "__esModule", ...)), and the npm tarball carries no .ts implementation sources; the shipped JavaScript is unminified, readable and directly modifiable and is the form upstream publishes on npm, so I did not treat this as missing source (reported here only so the judgement is visible).debian/copyrightis machine-readable, starts with the canonicalFormat:URL, and its Apache-2.0 reference is/usr/share/common-licenses/Apache-2.0, which exists; no replacement is needed.debhelper-compat (= 13)withdh-sequence-nodejs(provided bydh-nodejs0.17.14 in the archive); the extradh-nodejsentry is redundant but harmless.Depends: ${misc:Depends}is complete:/usr/share/perl5/Debian/Debhelper/Buildsystem/nodejs.pmaddsnodejs:anyonly for packages installing a binary in PATH, and none is installed;${nodejs:Provides}/${nodejs:Version}are unused because the module name equals the binary package name and there are no components./usr/share/perl5/Debian/Debhelper/Buildsystem/nodejs.pmsub testrunsdebian/tests/pkg-js/testwith/bin/sh -ex; the file is valid shell whose single-quotednode -eprogram contains no apostrophes, and it runs from the source root where./Reflect.jsand./ReflectNoConflict.jsexist.execute_after_dh_installdocs: dh_nodejs_autodocsworks as intended:/usr/bin/dh_nodejs_autodocswith no/usr/share/perl5/Debian/nodejs/root_modulesfile scans the main component (main_package()is.) and installsREADME.mdandAUTHORS.mdinto/usr/share/doc/node-reflect-metadata/.- Standards-Version 4.7.4 against Policy 4.7.4.1 (first two components match, so not an issue);
debian/source/formatis3.0 (quilt)with no patches; changelog version0.2.2-1, distribution unstable, correctly dated Tuesday 2026-11-03;Testsuite: autopkgtest-pkg-nodejshas itsdebian/tests/pkg-js/test;debian/upstream/metadatahas valid fields;Rules-Requires-Root: no;Multi-Arch: foreignis appropriate for an arch-all JS module. - uscan found the packaged version as the newest upstream release (upstream
0.2.2, packaged0.2.2). - Every pointer of
debian/copyrightto /usr/share/common-licenses names a file that is there (Apache-2.0).
Not confirmed ◂
- The
autopkgtest-pkg-nodejsrunner is not installed on the reviewing system (no autopkgtest), so I could not see from which directory it runsdebian/tests/pkg-js/test; the test'srequire("./Reflect.js")resolves from the source root and from/usr/share/nodejs/reflect-metadata, and would only fail from some other working directory. - No network access, so the existence of the Vcs-Git/Vcs-Browser repository and whether #1152958 is the right ITP bug could not be checked.
Proposed: debian/watch in version 5 format ◂
debian/watch is in an old format. This is the conversion made by uscan --update-watchfile, which has not been run against the upstream site: some defaults differ in version 5, so test it with uscan --report before use.
Version: 5
# It is not recommended use npmregistry. Please investigate more.
# Origin url: https://github.com/rbuckton/reflect-metadata
# Take a look at https://wiki.debian.org/debian/watch/
Template: Npmregistry
Dist: reflect-metadata
Uploader's response to the LLM review
The uploader was emailed about the review 5 hours ago.