버전 문자열은 VPN 플러그인의 기능을 증명하지 않는다
패키지 번호는 기능 목록이 아닙니다. epoch, upstream, 리비전을 분석하고 무엇이 설치되어 있는지 확인한 다음, 옵션이 실제로 있는 곳에서 증명하십시오.
버전 논쟁을 기능 조사와 분리하는 세 가지 질문은 옵션을 제공해야 하는 구성 요소는 무엇인지, 그 구성 요소의 어느 버전이 실제로 설치되어 있는지, 그리고 그 변경 기록이 무엇이라고 말하는지입니다. 플러그인의 번호만으로는 어느 것에도 답할 수 없습니다. 솔깃한 지름길, 즉 축약된 버전을 자습서의 최솟값과 비교하는 방법은 배포판의 버전 문자열이 소수가 아니기 때문에 실패합니다. 비교하기 전에 무엇을 비교하는지 정하십시오.
옵션은 NetworkManager에, 그 VPN 플러그인에, 기반 엔진에, 또는 별도의 데스크톱 프런트엔드에 있을 수 있습니다. 네 개의 프로젝트이며 네 개의 릴리스 이력이 있습니다.
네 가지 구성 요소, 네 가지 릴리스 이력
보이는 편집기는 보통 플러그인이고, 플러그인은 OpenVPN 바이너리나 WireGuard 구현 같은 엔진을 호출합니다. NetworkManager 자체가 연결 모델을 제공하며, 데스크톱 프런트엔드가 자체 필드를 그 위에 더할 수 있습니다. 기능은 그중 어디에나 나타날 수 있고, 하나를 업그레이드해도 나머지가 업그레이드되지는 않습니다. 더 새로운 엔진은 설치된 편집기가 엔진이 지원하는 옵션을 가져올 수 있다는 증거가 아닙니다.
증상부터 시작하십시오——필드가 대화 상자에 없는지, 가져온 뒤 사라지는지, 아니면 있지만 무시되는지요? 그 관찰들은 서로 다른 구성 요소를 가리키며 서로 다른 증거를 필요로 합니다.
비교하기 전에 버전을 분석하라
Debian의 패키지 정책은 형식을 epoch, upstream 버전, 패키징 리비전으로 정의합니다. 먼저 epoch를, 다음으로 upstream 부분을, 그다음 리비전을 패키지 관리자 자체의 정렬 규칙으로 비교하며 소수 산술이나 단순 알파벳 정렬이 아닙니다. 물결표는 그 부분의 끝을 포함해 모든 것보다 앞에 정렬되며, 그래서 릴리스 후보가 최종 릴리스에 앞섭니다. 부분을 따로 읽는 것이 비교를 의미 있게 만듭니다.
0.8.999가 0.9에 가까워 보이는 다른 체계를 위한 변환 규칙을 지어내지 마십시오. 숫자의 근접성은 내용에 대한 증거가 아닙니다.
무엇이 설치되어 있고 무엇이 될지 물어라
apt-cache policy 는 지정한 각 패키지에 대해 설치된 버전, 후보, 그리고 각각이 어느 저장소에서 오는지를 보고합니다. 엔진과 플러그인 모두에 대해 읽고, 축약형 대신 완전한 문자열을 기록하십시오. 로컬 메타데이터는 오래되었을 수 있고, 후보 버전은 실행 중인 프로세스가 그 빌드를 로드했다는 것을 증명하지 않습니다. 업그레이드 후 서비스를 다시 시작하지 않았다면 디스크의 파일과 관찰한 동작이 어긋날 수 있습니다.
그다음 해당 변경 기록을 읽으십시오. 패키징 리비전은 새로운 upstream 번호를 채택하지 않고도 패치를 담을 수 있으며, 바로 그 경우에 버전은 변하지 않은 것처럼 보이지만 동작은 다릅니다.
소유 구성 요소에서 옵션을 증명하라
가져오기 문제라면 대화 상자만이 아니라 설치된 플러그인의 지원 필드와 저장된 결과를 살펴보십시오. 레이블, 기본 데이터 필드, 엔진 인수는 하나의 설정에 대한 세 가지 표현일 수 있으며, 파일 가져오기에 성공했다고 해서 모든 지시문이 살아남았다는 뜻은 아닙니다. 기능을 정확히 이름 붙이십시오, 예를 들어, 이 지시문을 인증상의 의미를 유지한 채 받아들이는 것입니다.
그 릴리스의 지원 빌드에 통합이 없다면 승인된 업데이트 경로나 다른 클라이언트를 선택하십시오. 다른 릴리스의 저장소를 섞거나 보이는 번호를 올리려고 보관된 소스 패치를 적용하는 것은 버전 논쟁을 지원되지 않는 시스템과 맞바꾸는 일입니다.
유용한 보고서는 배포판, 전체 패키지 버전, 활성 연결의 소유자, 필요한 옵션, 관찰된 저장 동작을 밝힙니다. 그것은 재현 가능한 질문입니다.