Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix #3965: isolate plugin deployment and fix localization #4049

Merged
merged 1 commit into from
Jan 17, 2019

Conversation

akosyakov
Copy link
Member

@akosyakov akosyakov commented Jan 14, 2019

fix #3965:

  • fix how localization is done to allow loading of emmet extension
  • isolate loading of plugin metadata to prevent one bogus extension breaking other

Emmets in Theia:
emmet

:)

@akosyakov akosyakov mentioned this pull request Jan 15, 2019
18 tasks
@akosyakov
Copy link
Member Author

Does anybody test whether this PR fixes underlying issues?

@benoitf
Copy link
Contributor

benoitf commented Jan 16, 2019

I have not tested emmet extension but I trust you

Signed-off-by: Anton Kosyakov <anton.kosyakov@typefox.io>
@akosyakov akosyakov merged commit 49db4e4 into master Jan 17, 2019
@akosyakov akosyakov deleted the ak/gh-3965 branch January 17, 2019 08:45
@akosyakov akosyakov mentioned this pull request Feb 1, 2019
@designerbase
Copy link

@akosyakov i've added the emmet in my project. but throwing a console error.
Uncaught Error: Cannot read property 'items' of undefined

TypeError: Cannot read property 'items' of undefined
at editor.main.js:2056
at Object.g [as _notify] (editor.main.js:141)
at Object.enter (editor.main.js:145)
at n.Class.derive._creator._run (editor.main.js:146)
at n.Class.derive._creator._completed (editor.main.js:146)
at Object.g [as _notify] (editor.main.js:141)
at Object.enter (editor.main.js:145)
at n.Class.derive._oncancel._run (editor.main.js:146)
at n.Class.derive._oncancel._completed (editor.main.js:146)
at Object.g [as _notify] (editor.main.js:141)
at editor.main.js:158

here is my package.json
{
"private": true,
"dependencies": {
"@theia/plugin-ext-vscode": "next",
"@theia/preview": "next",
"typescript": "latest",
"@theia/core": "next",
"@theia/editor": "next",
"@theia/editorconfig": "next",
"@theia/file-search": "next",
"@theia/filesystem": "next",
"@theia/git": "next",
"@theia/json": "next",
"@theia/keymaps": "next",
"@theia/languages": "next",
"@theia/markers": "next",
"@theia/merge-conflicts": "next",
"@theia/messages": "next",
"@theia/mini-browser": "next",
"@theia/monaco": "next",
"@theia/navigator": "next",
"@theia/outline-view": "next",
"@theia/php": "next",
"@theia/output": "next",
"@theia/preferences": "next",
"@theia/process": "next",
"@theia/search-in-workspace": "next",
"@theia/task": "next",
"@theia/terminal": "next",
"@theia/textmate-grammars": "next",
"@theia/tslint": "next",
"@theia/typescript": "next",
"@theia/userstorage": "next",
"@theia/workspace": "next"
},
"resolutions": {
"onigasm": "2.2.1"
},
"devDependencies": {
"@theia/cli": "next"
},
"scripts": {
"postinstall": "download-debug-adapters"
},
"adapterDir": "plugins",
"adapters": {
"vscode-go": "https://ms-vscode.gallery.vsassets.io/_apis/public/gallery/publisher/ms-vscode/extension/Go/0.9.2/assetbyname/Microsoft.VisualStudio.Services.VSIXPackage"
}
}

here is my dockerfile

FROM node:8-jessie-slim

ENV TZ=Europe/Bratislava
ENV UID=10000
ENV GID=1002

RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
&& apt-get update && apt-get -y --no-install-recommends install sudo curl xz-utils wget git python build-essential
&& apt install -y --no-install-recommends ca-certificates apt-transport-https
&& wget -q https://packages.sury.org/php/apt.gpg -O- | apt-key add -
&& echo "deb https://packages.sury.org/php/ jessie main" | tee /etc/apt/sources.list.d/php.list
&& apt update
&& apt install -y --no-install-recommends php7.2
&& apt install -y --no-install-recommends php7.2-cli php7.2-curl php7.2-json php7.2-mbstring
&& curl -s -o composer-setup.php https://getcomposer.org/installer
&& php composer-setup.php --install-dir=/usr/local/bin --filename=composer
&& rm composer-setup.php
&& rm -rf /var/lib/apt/lists/*

RUN addgroup --gid $GID theia
&& adduser --disabled-password --gecos '' --uid $UID --gid $GID theia
&& adduser theia sudo
&& echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers
&& chmod g+rw /home
&& mkdir -p /home/project
&& chown -R theia:theia /home/theia
&& chown -R theia:theia /home/project

ENV THEIA_DEFAULT_PLUGINS=local-dir:/home/theia/plugins

USER theia

WORKDIR /home/theia
ADD package.json ./package.json

RUN yarn --cache-folder ./ycache
&& rm -rf ./ycache
&& NODE_OPTIONS="--max_old_space_size=4096" yarn theia build

EXPOSE 3000
ENV SHELL /bin/bash

ENTRYPOINT [ "yarn", "theia", "start", "/home/project", "--hostname=0.0.0.0" ]

let me know what the wrong with my configuration

thanks

@akosyakov
Copy link
Member Author

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Isolate loading and deployment of plugins
4 participants