ಡೆಬಿಯಾನ್ ಮತ್ತು ಫೆಡೋರಾ ಅವಲಂಬನೆಗಳ ಸಮಸ್ಯೆಯನ್ನು ಪರಿಹರಿಸಲು ಪ್ರಯತ್ನಿಸುತ್ತಿದ್ದಾರೆ

ಲಿನಕ್ಸ್ ವಿತರಣೆಗಳು ಹೆಚ್ಚುತ್ತಿರುವ ಅವಲಂಬನೆಗಳ ಸಮಸ್ಯೆಯನ್ನು ಎದುರಿಸುತ್ತವೆ ಯೋಜನೆಗಳ, ಆದರೂ ಪೈಥಾನ್, ಪರ್ಲ್ ಮತ್ತು ರೂಬಿ ಕೋಡ್‌ಗೆ ಅವಲಂಬನೆಗಳ ಸಂಖ್ಯೆಯನ್ನು ಇರಿಸಲಾಗಿದೆ ಸಮಂಜಸವಾದ ಮಿತಿಗಳಲ್ಲಿ, ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಯೋಜನೆಗಳು ಬಹಳ ಸಣ್ಣ ಗ್ರಂಥಾಲಯಗಳಾಗಿ ವಿಭಜಿಸುವುದನ್ನು ಅಭ್ಯಾಸ ಮಾಡುತ್ತವೆ, ಆಗಾಗ್ಗೆ ಸರಳ ಕಾರ್ಯವನ್ನು ನಿರ್ವಹಿಸುತ್ತವೆ.

ಎನ್‌ಪಿಎಂ ಭಂಡಾರವು ಈಗಾಗಲೇ ಒಂದು ದಶಲಕ್ಷ ಪ್ಯಾಕೇಜ್‌ಗಳನ್ನು ಹೊಂದಿದೆ ಮತ್ತು ವಿಶಿಷ್ಟ ಅಪ್ಲಿಕೇಶನ್‌ಗಳು ನೂರಾರು ಅವಲಂಬನೆಗಳಿಗೆ ಲಿಂಕ್, ಇದು ತಮ್ಮದೇ ಆದ ಅವಲಂಬನೆಗಳನ್ನು ಹೊಂದಿದೆ, ಲಿನಕ್ಸ್ ವಿತರಣೆಗಳಲ್ಲಿ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳೊಂದಿಗೆ ಸಾಂಪ್ರದಾಯಿಕ ಪ್ಯಾಕೇಜ್‌ಗಳನ್ನು ನಿರ್ವಹಿಸಲು ಮತ್ತು ವಿತರಿಸಲು ಕಷ್ಟವಾಗುತ್ತದೆ.

ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಲೈಬ್ರರಿ ಅವಲಂಬನೆಗಳ ಬಿಗಿಯಾದ ಹೆಣೆದ ಕಾರಣ, ವಿತರಣೆಯಲ್ಲಿ ಅಂತಹ ಗ್ರಂಥಾಲಯಗಳೊಂದಿಗೆ ಯಾವುದೇ ಪ್ಯಾಕೇಜ್ ಅನ್ನು ನವೀಕರಿಸುವುದು ಅದು ಇತರ ಪ್ಯಾಕೇಜ್‌ಗಳನ್ನು ಮುರಿಯಬಹುದು.

ಆವೃತ್ತಿ ಬೈಂಡಿಂಗ್‌ಗಳು ಸಮಸ್ಯೆಯನ್ನು ಉಲ್ಬಣಗೊಳಿಸುತ್ತವೆ: ಒಂದು ಗ್ರಂಥಾಲಯವು ಸ್ಥಿರವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸಲು ಅವಲಂಬನೆಯ ಒಂದು ಆವೃತ್ತಿಯ ಅಗತ್ಯವಿರುತ್ತದೆ ಮತ್ತು ಇನ್ನೊಂದಕ್ಕೆ ಇನ್ನೊಂದರ ಅಗತ್ಯವಿರುತ್ತದೆ.

ಅನೇಕ ಯೋಜನೆಗಳಿಗೆ ಗ್ರಂಥಾಲಯಗಳ ಇತ್ತೀಚಿನ ಆವೃತ್ತಿಗಳು ಕಾರ್ಯನಿರ್ವಹಿಸಲು ಅಗತ್ಯವಿರುತ್ತದೆ, ಅದು ಯಾವಾಗಲೂ ವಿತರಣೆಯ ಸ್ಥಿರತೆಯ ಅವಶ್ಯಕತೆಗಳನ್ನು ಪೂರೈಸುವುದಿಲ್ಲ (ಇತ್ತೀಚಿನ ಅಭಿವೃದ್ಧಿಯ ಚೌಕಟ್ಟುಗಳನ್ನು ಬಳಸಿಕೊಂಡು ನೋಡ್.ಜೆಎಸ್ ಪರಿಸರ ವ್ಯವಸ್ಥೆಯಲ್ಲಿ ನಿರಂತರ ಅಭಿವೃದ್ಧಿಯನ್ನು ಅಭ್ಯಾಸ ಮಾಡಲಾಗುತ್ತದೆ, ಮತ್ತು ವಿತರಣೆಗೆ ಹಲವಾರು ವರ್ಷಗಳ ಬೆಂಬಲ ಬೇಕಾಗುತ್ತದೆ).

ವಿತರಣೆಯಲ್ಲಿ ಮಾತ್ರ ಪ್ಯಾಕೇಜ್ ಆವೃತ್ತಿಗಳನ್ನು ಸರಿಪಡಿಸಲು ಪ್ರಯತ್ನಿಸುತ್ತದೆ ಹಳತಾದ ಆವೃತ್ತಿಗಳ ಹೆಚ್ಚಳಕ್ಕೆ ಕಾರಣವಾಗುತ್ತದೆ ವರ್ಷಗಳಿಂದ ನವೀಕರಿಸದ ಭಂಡಾರದಲ್ಲಿ. ಒಂದು ಪ್ಯಾಕೇಜ್‌ನ ನಿರ್ವಹಣೆಯ ಅಡ್ಡಿ ಇತರ ಹಲವು ಪ್ಯಾಕೇಜ್‌ಗಳ ಮೇಲೆ ಪ್ರತಿಕೂಲ ಪರಿಣಾಮ ಬೀರುತ್ತದೆ ಮತ್ತು ಇನ್ನೂ ಹೆಚ್ಚಿನ ಸಮಸ್ಯೆಗಳನ್ನು ಸೃಷ್ಟಿಸುತ್ತದೆ.

ಇದಲ್ಲದೆ, ಎಲ್ಅಡ್ಡ ಅವಲಂಬನೆಗಳು ನ ಅನೇಕ ಗ್ರಂಥಾಲಯಗಳು ಎಂಬ ಅಂಶಕ್ಕೆ ಕಾರಣವಾಗುತ್ತವೆ ಸಿಸ್ಟಮ್‌ನಿಂದ ಅಸ್ಥಾಪಿಸಲು Node.js ಅಸಾಧ್ಯವಾಗುತ್ತದೆಇದು ಇತರ Node.js ಪ್ರೋಗ್ರಾಂಗಳನ್ನು ಅಸ್ಥಾಪಿಸುವುದರಿಂದ ನಿಮ್ಮನ್ನು ತಡೆಯುತ್ತದೆ.

ಇದನ್ನು ಪರಿಹರಿಸಲು, ಫೆಡೋರಾ ಯೋಜನೆಯು ಇತ್ತೀಚೆಗೆ ನೋಡ್.ಜೆಎಸ್ ಆಧಾರಿತ ಯೋಜನೆಗಳಲ್ಲಿ ಬಳಸುವ ಗ್ರಂಥಾಲಯಗಳೊಂದಿಗೆ ಪ್ರತ್ಯೇಕ ಪ್ಯಾಕೇಜ್‌ಗಳ ಡೀಫಾಲ್ಟ್ ರಚನೆಯನ್ನು ನಿಲ್ಲಿಸುವ ಯೋಜನೆಯನ್ನು ಅನುಮೋದಿಸಿತು.

ಫೆಡೋರಾ 34 ರಿಂದ ಪ್ರಾರಂಭಿಸಿ, ನೋಡ್.ಜೆಎಸ್ಗಾಗಿ ಇಂಟರ್ಪ್ರಿಟರ್, ಹೆಡರ್, ಪ್ರಾಥಮಿಕ ಲೈಬ್ರರಿಗಳು, ಬೈನರಿಗಳು ಮತ್ತು ಮೂಲ ಪ್ಯಾಕೇಜ್ ನಿರ್ವಹಣಾ ಸಾಧನಗಳೊಂದಿಗೆ (ಎನ್‌ಪಿಎಂ, ನೂಲು) ಮೂಲ ಪ್ಯಾಕೇಜ್‌ಗಳನ್ನು ಮಾತ್ರ ಪೂರೈಸಲು ಅವರು ನಿರ್ಧರಿಸಿದರು.

Node.js ಬಳಸುವ ಫೆಡೋರಾ ರೆಪೊಸಿಟರಿ ಅಪ್ಲಿಕೇಶನ್‌ಗಳಲ್ಲಿ, ಪ್ರತ್ಯೇಕ ಪ್ಯಾಕೇಜ್‌ಗಳಲ್ಲಿ ಬಳಸುವ ಗ್ರಂಥಾಲಯಗಳನ್ನು ವಿಭಜಿಸದೆ ಮತ್ತು ಬೇರ್ಪಡಿಸದೆ, ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಎಲ್ಲಾ ಅವಲಂಬನೆಗಳನ್ನು ಪ್ಯಾಕೇಜ್‌ನಲ್ಲಿ ಎಂಬೆಡ್ ಮಾಡಲು ಅನುಮತಿಸಲಾಗಿದೆ.

ಎಂಬೆಡಿಂಗ್ ಲೈಬ್ರರಿಗಳು ಸಣ್ಣ ಪ್ಯಾಕೇಜ್ ಗೊಂದಲವನ್ನು ತೊಡೆದುಹಾಕುತ್ತವೆ, ಪ್ಯಾಕೇಜ್ ನಿರ್ವಹಣೆಯನ್ನು ಸರಳಗೊಳಿಸುತ್ತದೆ (ಈ ಹಿಂದೆ, ಪ್ರೋಗ್ರಾಂ ಮುಖ್ಯ ಪ್ಯಾಕೇಜ್‌ಗಿಂತಲೂ ಲೈಬ್ರರಿಗಳೊಂದಿಗೆ ನೂರಾರು ಪ್ಯಾಕೇಜ್‌ಗಳನ್ನು ಪರಿಶೀಲಿಸಲು ಮತ್ತು ಪರೀಕ್ಷಿಸಲು ನಿರ್ವಹಣೆ ಹೆಚ್ಚು ಸಮಯವನ್ನು ಕಳೆದರು), ಸಂಘರ್ಷಗಳಿಂದ ಮೂಲಸೌಕರ್ಯವನ್ನು ಉಳಿಸುತ್ತದೆ ಗ್ರಂಥಾಲಯಗಳ ಮತ್ತು ಗ್ರಂಥಾಲಯದ ಆವೃತ್ತಿಗಳಿಗೆ ಲಿಂಕ್ ಮಾಡುವ ಸಮಸ್ಯೆಗಳನ್ನು ಪರಿಹರಿಸಿ (ನಿರ್ವಹಣೆಯಲ್ಲಿ ಪ್ಯಾಕೇಜ್‌ನಲ್ಲಿ ಪರೀಕ್ಷಿತ ಮತ್ತು ಉತ್ಪಾದನೆ-ಪರೀಕ್ಷಿತ ಆವೃತ್ತಿಗಳನ್ನು ಒಳಗೊಂಡಿರುತ್ತದೆ).

ಏಕೀಕರಣದ ತೊಂದರೆಯು ತಿದ್ದುಪಡಿಗಳನ್ನು ತರುವ ಪ್ರಕ್ರಿಯೆಯ ತೊಡಕು ಲೈಬ್ರರಿಗಳಲ್ಲಿನ ದೋಷಗಳಿಗೆ, ದುರ್ಬಲ ಗ್ರಂಥಾಲಯವನ್ನು ಒಳಗೊಂಡಿರುವ ಎಲ್ಲಾ ಪ್ಯಾಕೇಜ್‌ಗಳ ನಿರ್ವಹಿಸುವವರ ಸಂಘಟಿತ ಕೆಲಸದ ಅಗತ್ಯವಿರುತ್ತದೆ. ದುರ್ಬಲ ಅಂತರ್ನಿರ್ಮಿತ ಗ್ರಂಥಾಲಯವನ್ನು ನವೀಕರಿಸಲು ಪ್ಯಾಕೇಜ್ ಮರೆತುಹೋಗುವ ಅಪಾಯವಿದೆ ಮತ್ತು ಪ್ಯಾಕೇಜ್ ಗಮನಕ್ಕೆ ಬರುವುದಿಲ್ಲ.

ನ ಅಭಿವರ್ಧಕರು ಪ್ಯಾಕೇಜ್‌ಗಳಲ್ಲಿನ ಅವಲಂಬನೆಗಳ ಏಕೀಕರಣದ ಇದೇ ಮಾದರಿಯ ಬದಲಾವಣೆಯನ್ನು ಡೆಬಿಯನ್ ಚರ್ಚಿಸುತ್ತಿದ್ದಾರೆ. ನೋಡ್.ಜೆಎಸ್ ಜೊತೆಗೆ, ಕುಬರ್ನೆಟ್ಸ್ ಪ್ಲಾಟ್‌ಫಾರ್ಮ್ ಮತ್ತು ಪಿಎಚ್‌ಪಿ ಮತ್ತು ಗೋ ಭಾಷೆಗಳಲ್ಲಿನ ಯೋಜನೆಗಳಿಗೆ ಪ್ಯಾಕೇಜ್‌ಗಳ ರಚನೆಯ ಕುರಿತು ಚರ್ಚೆಯು ಸ್ಪರ್ಶಿಸುತ್ತದೆ, ಇದಕ್ಕಾಗಿ ಸಣ್ಣ ಅವಲಂಬನೆಗಳಾಗಿ ವಿಭಜಿಸುವ ಪ್ರವೃತ್ತಿ ಇದೆ. ಇನ್ನೂ ಯಾವುದೇ ನಿರ್ಧಾರವನ್ನು ತೆಗೆದುಕೊಳ್ಳಲಾಗಿಲ್ಲ, ಆದರೆ ಕಾಲಾನಂತರದಲ್ಲಿ ಸಮಸ್ಯೆ ಉಲ್ಬಣಗೊಳ್ಳುತ್ತದೆ ಮತ್ತು ಶೀಘ್ರದಲ್ಲೇ ಅಥವಾ ನಂತರ ಯೋಜನೆಯು ಏನನ್ನಾದರೂ ಮಾಡಲು ಒತ್ತಾಯಿಸಲ್ಪಡುತ್ತದೆ ಎಂದು ಆಶಿಸಲಾಗಿದೆ.

ಜಿವಿಎಂ (ಗ್ರೀನ್‌ಬೋನ್ ವಲ್ನರಬಿಲಿಟಿ ಮ್ಯಾನೇಜ್‌ಮೆಂಟ್) ಸೆಕ್ಯುರಿಟಿ ಸ್ಕ್ಯಾನರ್‌ಗಾಗಿ ಜಿಎಸ್ಎ (ಗ್ರೀನ್‌ಬೋನ್ ಸೆಕ್ಯುರಿಟಿ ಅಸಿಸ್ಟೆಂಟ್) ವೆಬ್ ಇಂಟರ್ಫೇಸ್ ಅನ್ನು ಪ್ಯಾಕೇಜ್ ನಿರ್ವಹಿಸುವವರು ಹೊಂದಿರುವ ಸಮಸ್ಯೆಗಳಿಗೆ ಉದಾಹರಣೆಯಾಗಿ ಉಲ್ಲೇಖಿಸಲಾಗಿದೆ.

Gsa ನ ಡೆಬಿಯನ್-ಶಿಪ್ಡ್ ಆವೃತ್ತಿಯು gvm ನ ಹೊಸ ಆವೃತ್ತಿಗಳೊಂದಿಗೆ ಹೊಂದಿಕೆಯಾಗುವುದಿಲ್ಲ, ಆದರೆ gsa ಅನ್ನು ಪ್ರಸ್ತುತ ಆವೃತ್ತಿಗೆ ನವೀಕರಿಸಲು ಸಾಧ್ಯವಾಗಲಿಲ್ಲ ಏಕೆಂದರೆ ಇದು ಗಮನಾರ್ಹ ಬದಲಾವಣೆಗಳನ್ನು ಹೊಂದಿದೆ ಮತ್ತು ಅಗತ್ಯವಾದ Node.js ಲೈಬ್ರರಿಗಳನ್ನು ಡೌನ್‌ಲೋಡ್ ಮಾಡಲು npm ಅನ್ನು ಬಳಸುತ್ತದೆ.

ವಿನಂತಿಸಿದ ಗ್ರಂಥಾಲಯಗಳು ತುಂಬಾ ಹೆಚ್ಚು ಮತ್ತು ಅವುಗಳನ್ನು ನಿರ್ವಹಿಸಲು ಯಾರಾದರೂ ಡೆಬಿಯಾನ್‌ನಲ್ಲಿ ಹೊಸ ಪ್ಯಾಕೇಜ್‌ಗಳನ್ನು ರಚಿಸುವ ಅಗತ್ಯವಿರುತ್ತದೆ, ಏಕೆಂದರೆ ಡೆಬಿಯನ್ ನಿಯಮಗಳು ನಿರ್ಮಾಣ ಪ್ರಕ್ರಿಯೆಯಲ್ಲಿ ಬಾಹ್ಯ ಘಟಕಗಳನ್ನು ಲೋಡ್ ಮಾಡುವುದನ್ನು ನಿಷೇಧಿಸುತ್ತವೆ.

ಮೂಲ: https://lwn.net/


ನಿಮ್ಮ ಅಭಿಪ್ರಾಯವನ್ನು ಬಿಡಿ

ನಿಮ್ಮ ಈಮೇಲ್ ವಿಳಾಸ ಪ್ರಕಟವಾದ ಆಗುವುದಿಲ್ಲ. ಅಗತ್ಯವಿರುವ ಜಾಗ ಗುರುತಿಸಲಾಗಿದೆ *

*

*

  1. ಡೇಟಾಗೆ ಜವಾಬ್ದಾರಿ: ಮಿಗುಯೆಲ್ ಏಂಜೆಲ್ ಗಟಾನ್
  2. ಡೇಟಾದ ಉದ್ದೇಶ: ನಿಯಂತ್ರಣ SPAM, ಕಾಮೆಂಟ್ ನಿರ್ವಹಣೆ.
  3. ಕಾನೂನುಬದ್ಧತೆ: ನಿಮ್ಮ ಒಪ್ಪಿಗೆ
  4. ಡೇಟಾದ ಸಂವಹನ: ಕಾನೂನುಬದ್ಧ ಬಾಧ್ಯತೆಯನ್ನು ಹೊರತುಪಡಿಸಿ ಡೇಟಾವನ್ನು ಮೂರನೇ ವ್ಯಕ್ತಿಗಳಿಗೆ ಸಂವಹನ ಮಾಡಲಾಗುವುದಿಲ್ಲ.
  5. ಡೇಟಾ ಸಂಗ್ರಹಣೆ: ಆಕ್ಸೆಂಟಸ್ ನೆಟ್‌ವರ್ಕ್‌ಗಳು (ಇಯು) ಹೋಸ್ಟ್ ಮಾಡಿದ ಡೇಟಾಬೇಸ್
  6. ಹಕ್ಕುಗಳು: ಯಾವುದೇ ಸಮಯದಲ್ಲಿ ನೀವು ನಿಮ್ಮ ಮಾಹಿತಿಯನ್ನು ಮಿತಿಗೊಳಿಸಬಹುದು, ಮರುಪಡೆಯಬಹುದು ಮತ್ತು ಅಳಿಸಬಹುದು.

  1.   qtkk ಡಿಜೊ

    ಇಸಿಎಂಎಸ್ಕ್ರಿಪ್ಟ್‌ನಲ್ಲಿನ ಚೌಕಟ್ಟುಗಳು ಮತ್ತು ಗ್ರಂಥಾಲಯಗಳ ಈ ವಿಘಟನೆಯು ಕೈಯಿಂದ ಹೊರಬಂದಿದೆ.
    ಒಳ್ಳೆಯ ಲೇಖನ.