programing

사용되지 않는 타이핑 패키지를 수동으로 업데이트하는 방법

stoneblock 2023. 6. 28. 21:17

사용되지 않는 타이핑 패키지를 수동으로 업데이트하는 방법

TypeScript로 작성 중인 NodeJS 응용 프로그램이 있습니다.많은 노드 패키지를 사용합니다.이러한 패키지에 모두 유형 스크립트 정의가 있는 것은 아니므로 타이핑을 사용하여 별도의 정의 파일을 가져옵니다.

서버에 때, 있는데, Git 후크는 Git 후크를 실행합니다.npm install,typings install,그리고.tscGit 저장소에 포함되어 있지 않기 때문입니다.

타이핑 정의 파일의 새 버전이 릴리스된 경우 다음과 같이 하십시오.입력됨, 실행 시 경고 메시지가 표시됨typings install내 정의 파일이 더 이상 사용되지 않음(삭제, 교체 또는 제거):

2016년 6월 30일에 경고가 더 이상 사용되지 않습니다. "registry:dt/bluebird#2.0.0+20160319051630"이 더 이상 사용되지 않습니다(업데이트, 교체 또는 제거됨).2016년 7월 5일에 WARN이 더 이상 사용되지 않습니다. "registry:dt/knex#0.0.0+20160622193910"이 더 이상 사용되지 않습니다(업데이트, 교체 또는 제거됨).2016년 7월 20일에 경고가 더 이상 사용되지 않습니다. "registry:dt/node#6.0.0+20160613154055"가 더 이상 사용되지 않습니다(업데이트, 교체 또는 제거됨).2016년 7월 19일 더 이상 사용되지 않는 경고를 입력합니다. "registry:dt/lodash#3.10.0+20160619033623"이 더 이상 사용되지 않습니다(업데이트, 교체 또는 제거됨)

이것에 대해 무엇을 할 수 있습니까?그것들을 모두 쉽게 업데이트할 수 있는 방법이 있습니까?typing.json 파일은 패키지의 버전 번호를 # 기호 뒤에 지정하고 날짜를 + 기호 뒤에 지정하는 것 같습니다.새 정의 파일이 Definite에 업로드되는 경우타이핑했습니다, 보통 이전 버전보다 더 정확하거나 완전하다고 가정해도 안전하지 않습니까?

수동으로 업데이트할 수 있는 허가된 방법이 있습니까?typings uninstall --save에 뒤에typings install --save각 패키지마다?귀찮은 것 같고, 뭔가 쉬운 방법이 있을 거예요.typings update [package-name].

TypeScript 2.0에서 사용하기 쉽습니다.

2016년 9월에 공식적으로 출시된 TypeScript 2.0은 보다 쉬운 솔루션으로 통합되어 있습니다.npm(Typings 저자 및 TSD 저자와의 협력).기본적으로 다음과 같은 유형의 패키지를 얻을 수 있습니다.@types/packageName:

npm install --save packageName @types/packageName

또한 npm 패키지에서 직접 유형을 자동으로 가져올 수 있습니다. 따서간사수있다니습할용을 사용할 수 .package.json그리고.npm형식 정의를 직접 관리합니다.

npm update

원래 요청한 동작을 정확하게 가져옵니다.

자세한 내용은 베타 공지 블로그 게시물 및 공식 Typescript 설명서를 참조하십시오.


@types에서 변경 내용을 해제해도 경고가 트리거되지 않습니다.

그러나 TypeScript 팀의 한 구성원(Ryan Cavanaugh)이 TypeScript의 베타 공지의 주석 섹션에서 언급한 바와 같이 적어도 자신이 언급한 베타의 현재 버전은 구식 유형 정의에 대해 경고하지 않았습니다.중요한 업데이트의 경우에도 마찬가지입니다.즉, lodash 버전 4에 대한 유형 정의를 원했지만 lodash 버전 3에 대한 유형 정의를 얻으면 경고가 없습니다.따라서 변경사항이 발생한 라이브러리에 대한 형식 정의를 가져옵니다.잠재적으로 염두에 두어야 할 사항입니다(편집:개인적으로 이것이 최종 2.0 릴리스에 해당하는지 여부는 아직 확인하지 않았습니다.

업데이트 명령 없음

업데이트 명령은 없으며, 자동으로 어떤 종류의 업데이트를 수행하기 위한 unix 및 powershell 스크립트를 모두 포함하는 타이핑에 문제가 있습니다.

특정 설치 명령

그러나 CLI 옵션에서 볼 수 있듯이 특정 원본 및 semver 범위의 특정 패키지에 대한 유형 정의를 업데이트할 수 있습니다.

원본이 확실히 입력된 경우 패키지 앞에 다음과 같이 접두사를 붙입니다.dt~만약 당신이 semver 버전을 가지고 있다면,^3.10.0패키지 이름을 추가로 접미사로 사용할 수 있습니다.@^3.10.0.

일반 종속성인지 개발 종속성인지에 따라 추가할 수도 있습니다.--save또는--save-dev각각 다음과 같다.추가로 추가할 수도 있습니다.--global만약 그것이 세계적인 의존성이라면.은 이은다서읽합있니다야에서 수 있어야 .typings.json

버전으로 최신 하려면 lodash 패키지를 semver 버전으로 업데이트하십시오.^3.10.0당신은 다음과 같이 적을 것입니다.

typings install dt~lodash@^3.10.0 --save

또는

typings install dt~lodash@^3.10.0 --save --global

전 세계적인 의존 관계라면.

이렇게 하면 해시와 typings.json의 날짜가 업데이트되고 지정된 semver 범위에 대한 최신 정의가 설치됩니다.찾을 수 있는 업데이트가 없는 경우에도 파일은 변경되지 않습니다.따라서 이 업데이트 프로세스를 자동화하도록 설정된 경우 이와 상관없이 이러한 업데이트를 수행하는 스크립트를 작성할 수 있습니다.

주의사항

유형 유형 정의가 반드시 버전으로 올바르게 태그 지정되어 있어야 하는 것은 아닙니다.태그가 지정된 버전이 없거나 버전 간에 큰 차이가 있을 수 있습니다.예를 들어 태그가 지정되지 않은 버전이 최신 태그가 지정된 버전보다 최신 버전일 수도 있습니다. 현재 이는 Definitely Type(2016년 6월 25일)의 lodash의 경우입니다.

다음과 같은 기능을 통해 지정된 소스에서 지정된 패키지에 대한 태그가 지정된 버전이 있는지 쉽게 확인할 수 있습니다.

typings view <source>~<package> --versions

출처가 확실하게 유형화된 패키지 로다시의 경우 다음과 같습니다.

typings view dt~lodash --versions

태그가 지정되지 않은 버전이 더 최신일 수 있도록 하려면 파일 상단에 있는 최신 커밋에 언급될 수 있는 Definite Typed repo에서 해당 디렉터리를 실제로 검사해야 합니다.

언급URL : https://stackoverflow.com/questions/38533761/how-to-manually-update-a-deprecated-typings-package