Комментарии 24
По-моему, наступают на те же грабли. Если просто разрешать доступ к файловой системе, то мы разрешаем доступ к всей файловой системе сразу. Будь то './config.json' или '~/.ssh/id_rsa', без особой разницы. Не лучше ли сделать более ограниченные разрешения, давая доступ только к конкретным папкам?
Безопасность какая-то неполная. Лучше бы гранулярность была на уровне модулей. А то ну запустил я привилегированный процесс, потос добавил туда библиотеку, потом её взломали и всё. В чем разница?
Всегда было интересно смотреть, кто как умеет крутить к`Oмпас или комп`Ас в руках… Тоже погладываю в сторону Dart.
import { test } from "https://unpkg.com/deno_testing@0.0.5/testing.ts"
Это ж как надо было укуриться, чтобы выдать такое… В системе, ориентированной на безопасность, отрывать зависимости из внешнего URL напрямую, что же может пойти не так?.. Кроме того, сходу можно прикинуть ещё пару «достоинств»:
1 — забудьте про декларации, статический анализ и code-assist
2 — tree-shaking для слабаков, либо тащите всю либу целиком, либо «знайте свой инструмент», в том числе в каком из 10k файлов лежит нужная вам функция, чтобы импортировать её отдельно.
3 — добро пожаловать в DLL-hell невиданного масштаба, все зависимости будите админить ручками, по месту вызова, каждый раз перелопачивая пофайлово весь проект. Или делать import-export файл, который тот-же package.json, только без автоматизации…
В системе, ориентированной на безопасность, отрывать зависимости из внешнего URL
Сейчас зависимости скачиваются с regsitry.npmjs.org, а будут с тех хостов, которые вы укажете. Децентрализация это хорошо же.
Принципиально ничего не меняется, качаем зависимости из интернета, локально кешируем и загружаем.
забудьте про декларации, статический анализ и code-assist
Уже сейчас Web/PHP Storm подхватывает файлы подключенные через <script src="http://path-to-script/.....js">
. В принципе, редактору без разницы, откуда берутся файлы в локальном кеше.
tree-shaking для слабаков, либо тащите всю либу целиком
tree-shaking делается бандлером, от способа получения файлов это никак не зависит, здесь ничего не меняется
добро пожаловать в DLL-hell невиданного масштаба, все зависимости будите админить ручками
Здесь пока все плохо, да. Ждем import-maps стандарта.
Принципиально ничего не меняется, качаем зависимости из интернета, локально кешируем и загружаем.
Но дело-то в том, что regsitry.npmjs.org — он один, а «тех хостов, которые вы укажете» — тысячи. Это значит, что:
1 — это будет зоопарк
2 — десятки, если не сотни, потенциальных точек отказа в процессе сборки
3 — каждый разработчик должен самостоятельно содержать свой репозиторий
4 — нельзя будет просто посмотреть, какие в проекте зависимости, для этого надо будет выкачивать и просматривать все исходники целиком.
Собственно, вы не задавались вопросом, почему централизованный репозиторий библиотек — это must-have фича для всех новых платформ, и пользователи крайне огорчаются, если её нет?
В принципе, редактору без разницы, откуда берутся файлы в локальном кеше.Я не зря упомянул декларации, они не обязательно импортируются в проект в явном виде. То есть, пока не выкачаешь ВСЮ библиотеку, в локальном кеше их и не будет. Ну и опять же, это ещё одна неявная подгрузка.
Сейчас зависимости скачиваются с regsitry.npmjs.org, а будут с тех хостов, которые вы укажете.
Они и сейчас скачиваются с тех хостов, которые указаны в .npmrc
Это ж как надо было укуриться, чтобы выдать такое… В системе, ориентированной на безопасность, отрывать зависимости из внешнего URL напрямую, что же может пойти не так?..
Я подозреваю, что притащено это прямиком из go, где таким макаром записываются пути ко внешним зависимостям, откуда они предварительно скачиваются, так что ничего криминального, хоть и выглядит неказисто.
Очередное булшит-бинго с медиума в копилку к
4 Main JavaScript Development Trends in 2019.
4 Tricks to Debug JavaScript in 2019.
5 things that you'll learn when you start to use React Native.
5 TypeScript features you might not know.
5 Ways to animate a React app in 2019.
The Five Top Reasons to Use JavaScript.
6 Reasons Why To Use Ember In 2019.
Six Things About JavaScript Which If You Don't Know.
7 bad excuses for not using TypeScript.
7 things you didn't know about JavaScript.
9 React Styled-Components UI Libraries for 2019.
10 reasons Quasar is great tool for Vue.js.
10 TypeScript Pro tips/patterns with (or without) React.
Top 10 Reason: Why You Should Use Node.JS?
11 Javascript Data Visualization Libraries for 2019.
11 React UI Component Libraries you Should Know in 2019.
12 React UI Layout Grid Components and Libraries for 2019.
12 things about JavaScript business owners and recruiters MUST know.
15 JavaScript concepts that every (JavaScript) Programmer must know.
19 Best Practices For Automation testing With Node.js.
19 ways to become a better Node.JS developer in 2019.
20 Things You Must Learn Before Writing Your First React App.
Deno — новый Node.js?