3 điểm bởi GN⁺ 2023-11-17 | 1 bình luận | Chia sẻ qua WhatsApp

Hỗ trợ nhiều hệ điều hành của cURL và libcurl

  • Trong một pull request gần đây của cURL, dự án nêu rõ rằng các thay đổi được đề xuất bởi người đóng góp không được cản trở việc kiểm thử trên các nền tảng legacy.
  • cURL hiện vẫn hỗ trợ kiểu time_t 32-bit và nhấn mạnh rằng cần phải duy trì tính năng này.
  • Sự quan tâm đến các hệ thống legacy là để giữ lời hứa và tránh gây hỏng hóc không cần thiết.

Một phần của sự ổn định và cam kết

  • Dự án cURL không ngừng nỗ lực để duy trì tính ổn định và khả năng tương thích của ABI và API.
  • Một ứng dụng được viết từ giữa những năm 2000 vẫn có thể nâng cấp lên libcurl mới nhất và hoạt động y như cũ mà không cần biên dịch lại.
  • Đây là nguyên tắc cốt lõi của cURL và libcurl: một giải pháp truyền tải Internet ổn định mà người dùng có thể tin tưởng và dựa vào.

Số lượng người dùng không quan trọng

  • Số lượng người dùng trên một nền tảng cụ thể không phải là động lực để hỗ trợ nền tảng đó.
  • Điều quan trọng là có người làm việc đó và công việc được hoàn thành.
  • Nếu có người đóng góp tiếp tục đảm bảo cURL hoạt động trên một nền tảng cụ thể, thì dù số người dùng ít, cURL vẫn sẽ tiếp tục chạy trên nền tảng đó.

Vì sao cURL có mặt ở khắp nơi

  • Lý do cURL hoạt động trên nhiều hệ điều hành và kiến trúc CPU khác nhau, đồng thời được cài đặt trên rất nhiều thiết bị, là vì có sự tập trung mạnh mẽ vào việc có thể build và chạy ở mọi nơi.
  • Nhiều người dùng và công ty vẫn gắn bó với các nền tảng cổ, ngách và legacy, và cho rằng việc phụ thuộc vào cURL tốt hơn rất nhiều về mặt bảo mật so với các lựa chọn thay thế khác.

Chúng tôi vẫn loại bỏ dần các đặc tả

  • cURL đôi khi ngừng hỗ trợ một số thư viện bên thứ ba nhất định và cũng tạo ra thay đổi ở các mảng khác.
  • Các đặc tả được loại bỏ dần một cách chậm rãi, cẩn thận, và thông qua giao tiếp cởi mở để mọi người có thể chuẩn bị hoặc phản đối.
  • Nếu người dùng không thể phát hiện hành vi đã thay đổi, thì về thực tế có thể xem như chưa có thay đổi.

Sự thay đổi của thế giới

  • Các giao thức Internet và phiên bản của chúng thay đổi theo thời gian.
  • Phần lớn các lệnh cURL được viết vào năm 2002 nay sẽ thất bại vì tên máy chủ và URL không còn hoạt động nữa.
  • Lý do chính khiến các lệnh cURL được viết năm 2002 không còn hoạt động y hệt ngày nay là sự chuyển dịch từ HTTP sang HTTPS.

Ý kiến của GN⁺

  • Điều quan trọng nhất trong bài viết này là cURL hỗ trợ nhiều hệ điều hành và kiến trúc khác nhau, qua đó thể hiện nỗ lực của các nhà phát triển trong việc duy trì tính ổn định và khả năng tương thích.
  • Việc cURL vẫn là một công cụ đáng tin cậy liên tục, bất chấp sự thay đổi của người dùng và công nghệ, là một thực tế thú vị và hấp dẫn đối với nhiều kỹ sư phần mềm và người dùng.
  • Sự hỗ trợ lâu dài và tính ổn định này khiến cURL trở thành một trong những công cụ nền tảng của Internet, tiếp tục giữ vai trò quan trọng ngay cả khi công nghệ thay đổi.

1 bình luận

 
GN⁺ 2023-11-17
Ý kiến Hacker News
  • Lời khen dành cho thành tựu của Curl

    • Curl là một công cụ cực kỳ quan trọng đối với các nhà phát triển có mục tiêu duy trì khả năng hoạt động trên nhiều hệ điều hành.
    • Khả năng tương thích của time_t 32-bit được nhấn mạnh, nhưng khi vấn đề năm 2038 đang đến gần, giá trị của việc xử lý thời gian 32-bit cũng bị đặt dấu hỏi.
  • Nhận thức của các nhà phát triển về gánh nặng do dependency mang lại

    • Hạ tầng và các hệ thống trung tâm có nhiều dependency trở nên khó thay đổi.
    • Ngay cả những thay đổi đơn giản cũng có thể ảnh hưởng đến nhiều dịch vụ, nên cần được xem xét cẩn thận.
    • Có niềm tự hào trong việc duy trì các hệ thống hiện có đồng thời khiến những thay đổi trở nên khó nhận ra.
  • Việc tiếp tục sử dụng các nền tảng cổ, ngách và legacy

    • Nhiều người dùng và công ty bám chặt vào các nền tảng cũ, và đó là tình huống không thể thay đổi.
    • Một số nhà phát triển phần mềm cung cấp phần mềm phù hợp với mục đích sử dụng cùng các bảo đảm rõ ràng, nhưng điều này tốn kém và chậm.
  • Thắc mắc về việc Curl có hỗ trợ trên các hệ điều hành cũ hay không

    • Có người đặt câu hỏi liệu các bản build hiện tại có còn được tạo ra trên những hệ thống không được cập nhật suốt hơn 25 năm hay không.
    • Dù có nỗ lực không làm hỏng ma trận hỗ trợ, nhưng rất khó xác minh liệu nó có thực sự hoạt động hay không.
  • Giấy phép cấp quyền rộng rãi là một trong những yếu tố làm nên sự phổ biến của Curl

    • Giấy phép của Curl tương tự MIT nhưng có đôi chút khác biệt.
    • Có yêu cầu được giải thích ngắn gọn về những khác biệt chính.
  • Sự đa dạng của các phiên bản Linux gây ngạc nhiên

    • Có hơn 100 phiên bản Linux tồn tại, ngay cả khi chúng vẫn được coi là một hệ điều hành duy nhất.
  • Thắc mắc về cách phân biệt các hệ điều hành tương tự nhau

    • FreeDOS, DR-DOS và MS-DOS được phân loại là các hệ điều hành riêng biệt, nhưng trên thực tế chúng tương thích ABI với nhau.
  • Yêu cầu viết lại Curl bằng Rust và thắc mắc về khả năng nhắm mục tiêu của Rust

    • Có người nêu câu hỏi liệu Rust có thể nhắm tới mọi kiến trúc và hệ điều hành mà Curl đang hỗ trợ hay không.
  • Gợi ý bài đọc liên quan về sự ra đời và lịch sử của Curl

    • Một liên kết blog về 25 năm lịch sử của Curl đã được chia sẻ.
  • Nhắc đùa về phạm vi hỗ trợ rộng lớn và các bản cập nhật của Curl

    • Có câu đùa rằng đang chạy Curl trên ENIAC, và mỗi lần cập nhật đều mất rất nhiều thời gian.