Facebook āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻŦāĻŋāĻ˛ā§āĻĄ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻžāĻ˛ā§ āĻāĻ°ā§āĻā§, Buck2, āĻ¯āĻž āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻŋāĻ āĻāĻžāĻˇāĻžāĻ¯āĻŧ āĻā§āĻĄ āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤ āĻāĻ°ā§ āĻāĻŽāĻ¨ āĻ āĻ¨ā§āĻ āĻŦāĻĄāĻŧ āĻ¸āĻāĻā§āĻ°āĻšāĻ¸ā§āĻĨāĻ˛ āĻĨā§āĻā§ āĻĒā§āĻ°āĻā§āĻā§āĻ āĻ¤ā§āĻ°āĻŋāĻ° āĻāĻ¯āĻŧā§āĻāĻ¨ā§āĻ° āĻāĻĒāĻ° āĻĻā§āĻˇā§āĻāĻŋ āĻ¨āĻŋāĻŦāĻĻā§āĻ§ āĻāĻ°ā§āĻā§āĨ¤ Facebook āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°ā§āĻŦā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻ¨āĻ¤ā§āĻ¨ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻāĻŦāĻ Buck āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻŽā§āĻ˛ āĻĒāĻžāĻ°ā§āĻĨāĻā§āĻ¯ āĻšāĻ˛ āĻāĻžāĻāĻžāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻŽāĻ°āĻŋāĻāĻž āĻāĻžāĻˇāĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻŦāĻ āĻ¸āĻŽāĻžāĻŦā§āĻļ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻĻāĻā§āĻˇāĻ¤āĻž āĻ āĻāĻ°ā§āĻŽāĻā§āĻˇāĻŽāĻ¤āĻž āĻāĻ˛ā§āĻ˛ā§āĻāĻ¯ā§āĻā§āĻ¯ āĻŦā§āĻĻā§āĻ§āĻŋ (āĻāĻāĻ āĻĒāĻ°āĻŋāĻāĻžāĻ āĻžāĻŽā§āĻ¤ā§ āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻ¯āĻŧ, Buck2 āĻ¸āĻŽāĻžāĻŦā§āĻļ āĻāĻ°ā§ āĻāĻžāĻāĻā§āĻ˛āĻŋ āĻŦāĻā§āĻ° āĻā§āĻ¯āĻŧā§ āĻĻā§āĻŦāĻŋāĻā§āĻŖ āĻĻā§āĻ°ā§āĻ¤)āĨ¤ āĻā§āĻĄāĻāĻŋ Apache 2.0 āĻ˛āĻžāĻāĻ¸ā§āĻ¨ā§āĻ¸ā§āĻ° āĻ āĻ§ā§āĻ¨ā§ āĻŦāĻŋāĻ¤āĻ°āĻŖ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻžāĻˇāĻžāĻ¯āĻŧ āĻŦāĻŋāĻ˛ā§āĻĄāĻŋāĻ āĻā§āĻĄā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻŦāĻĻā§āĻ§ āĻ¨āĻ¯āĻŧ āĻāĻŦāĻ āĻŦāĻžāĻā§āĻ¸ā§āĻ° āĻŦāĻžāĻāĻ°ā§ Facebook āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ C++, Python, Rust, Kotlin, Erlang, Swift, Objective-C, Haskell āĻāĻŦāĻ OCaml-āĻ āĻ˛ā§āĻāĻž āĻŦāĻŋāĻ˛ā§āĻĄāĻŋāĻ āĻĒā§āĻ°āĻāĻ˛ā§āĻĒāĻā§āĻ˛āĻŋāĻā§ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§āĨ¤ āĻĒāĻžāĻāĻĨāĻ¨ā§āĻ° āĻāĻĒāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋ āĻāĻ°ā§ āĻ¸ā§āĻāĻžāĻ°āĻ˛āĻžāĻ°ā§āĻ āĻāĻžāĻˇāĻž (āĻ¯ā§āĻŽāĻ¨ āĻŦāĻžāĻā§āĻ˛ā§āĻ° āĻŽāĻ¤ā§) āĻ ā§āĻ¯āĻžāĻĄ-āĻ āĻ¨ āĻĄāĻŋāĻāĻžāĻāĻ¨, āĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻ āĻāĻŦāĻ āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻ¸ā§āĻāĻžāĻ°āĻ˛āĻžāĻ°ā§āĻ āĻāĻĒāĻ¨āĻžāĻā§ āĻŦāĻŋāĻ˛ā§āĻĄ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻā§āĻˇāĻŽāĻ¤āĻž āĻĒā§āĻ°āĻ¸āĻžāĻ°āĻŋāĻ¤ āĻāĻ°āĻ¤ā§ āĻāĻŦāĻ āĻ¨āĻŋāĻ°ā§āĻŽāĻžāĻŖ āĻāĻ°āĻž āĻĒā§āĻ°āĻāĻ˛ā§āĻĒāĻā§āĻ˛āĻŋāĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻžāĻˇāĻžāĻā§āĻ˛āĻŋ āĻĨā§āĻā§ āĻŦāĻŋāĻŽā§āĻ°ā§āĻ¤ āĻāĻ°āĻžāĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻ¯āĻŧāĨ¤
āĻĢāĻ˛āĻžāĻĢāĻ˛ā§āĻ° āĻā§āĻ¯āĻžāĻļāĻŋāĻ, āĻāĻžāĻā§āĻ° āĻ¸āĻŽāĻžāĻ¨ā§āĻ¤āĻ°āĻžāĻ˛āĻāĻ°āĻŖ āĻāĻŦāĻ āĻĻā§āĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻāĻžāĻ°ā§āĻ¯ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ (āĻ°āĻŋāĻŽā§āĻ āĻŦāĻŋāĻ˛ā§āĻĄ āĻāĻā§āĻ¸āĻŋāĻāĻŋāĻāĻļāĻ¨) āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻāĻā§āĻ āĻāĻ°ā§āĻŽāĻā§āĻˇāĻŽāĻ¤āĻž āĻ āĻ°ā§āĻāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻŦāĻŋāĻ˛ā§āĻĄ āĻāĻ¨āĻāĻžāĻ¯āĻŧāĻ°āĻ¨āĻŽā§āĻ¨ā§āĻā§, "āĻāĻāĻāĻ¸āĻžāĻāĻāĻ¤āĻž" āĻ§āĻžāĻ°āĻŖāĻžāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ - āĻ¸āĻāĻāĻ˛āĻŋāĻ¤ āĻā§āĻĄāĻāĻŋ āĻŦāĻžāĻāĻ°ā§āĻ° āĻŦāĻŋāĻļā§āĻŦ āĻĨā§āĻā§ āĻā§āĻā§ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻŦāĻŋāĻ˛ā§āĻĄ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻ˛āĻžāĻāĻžāĻ˛ā§āĻ¨ āĻŦāĻžāĻāĻ°ā§ āĻĨā§āĻā§ āĻāĻŋāĻā§āĻ āĻ˛ā§āĻĄ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻž āĻāĻŦāĻ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻŦāĻžāĻ°āĻŦāĻžāĻ° āĻāĻžāĻ āĻāĻžāĻ˛āĻžāĻ¨ā§ āĻāĻāĻ āĻĢāĻ˛āĻžāĻĢāĻ˛ā§āĻ° āĻĻāĻŋāĻā§ āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻŋāĻ¤ āĻāĻ°ā§ ( āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤ āĻŦāĻŋāĻ˛ā§āĻĄ, āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻŦāĻŋāĻāĻžāĻļāĻāĻžāĻ°ā§āĻ° āĻŽā§āĻļāĻŋāĻ¨ā§ āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻāĻ˛ā§āĻĒ āĻ¨āĻŋāĻ°ā§āĻŽāĻžāĻŖā§āĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻ āĻŦāĻŋāĻā§āĻāĻŋāĻ¨ā§āĻ¨ āĻāĻ¨ā§āĻāĻŋāĻā§āĻ°ā§āĻļāĻ¨ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§ āĻŦāĻŋāĻ˛ā§āĻĄā§āĻ° āĻŽāĻ¤ā§āĻ āĻšāĻŦā§)āĨ¤ āĻ¨āĻŋāĻ°ā§āĻāĻ°āĻ¤āĻžāĻ° āĻ āĻāĻžāĻŦā§āĻ° āĻĒāĻ°āĻŋāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋ Buck2 āĻ āĻāĻāĻāĻŋ āĻā§āĻ˛ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ§āĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
Buck2 āĻŽā§āĻ˛ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯:
- āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻŋāĻ āĻāĻžāĻˇāĻž āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°āĻžāĻ° āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻāĻŦāĻ āĻŦāĻŋāĻ˛ā§āĻĄ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻŽā§āĻ˛ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻāĻ˛āĻžāĻĻāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤ āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻā§āĻ˛āĻŋ āĻ¸ā§āĻāĻžāĻ°āĻ˛āĻžāĻ°ā§āĻ āĻāĻžāĻˇāĻžāĻ¯āĻŧ āĻ˛ā§āĻāĻž āĻšāĻ¯āĻŧ, āĻāĻŦāĻ āĻ¸ā§āĻāĻžāĻ°āĻ˛āĻžāĻ°ā§āĻ āĻā§āĻ˛āĻāĻŋāĻ āĻāĻŦāĻ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻŽāĻ°āĻŋāĻāĻžāĻ¯āĻŧ āĻ˛ā§āĻāĻž āĻšāĻ¯āĻŧāĨ¤
- āĻŦāĻŋāĻ˛ā§āĻĄ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽāĻāĻŋ āĻāĻāĻāĻŋ āĻāĻāĻ āĻā§āĻ°āĻŽāĻŦāĻ°ā§āĻ§āĻŽāĻžāĻ¨ āĻ¨āĻŋāĻ°ā§āĻāĻ°āĻ¤āĻž āĻā§āĻ°āĻžāĻĢ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ (āĻĒāĻ°ā§āĻ¯āĻžāĻ¯āĻŧā§ āĻŦāĻŋāĻāĻžāĻāĻ¨ āĻāĻžāĻĄāĻŧāĻžāĻ), āĻ¯āĻž āĻāĻĒāĻ¨āĻžāĻā§ āĻŦāĻ āĻāĻŦāĻ āĻŦā§āĻā§āĻ˛ā§āĻ° āĻ¤ā§āĻ˛āĻ¨āĻžāĻ¯āĻŧ āĻāĻžāĻā§āĻ° āĻ¸āĻŽāĻžāĻ¨ā§āĻ¤āĻ°āĻžāĻ˛āĻāĻ°āĻŖā§āĻ° āĻāĻā§āĻ°āĻ¤āĻž āĻŦāĻžāĻĄāĻŧāĻžāĻ¤ā§ āĻāĻŦāĻ āĻ āĻ¨ā§āĻ āĻ§āĻ°āĻŖā§āĻ° āĻ¤ā§āĻ°ā§āĻāĻŋ āĻāĻĄāĻŧāĻžāĻ¤ā§ āĻĻā§āĻ¯āĻŧāĨ¤
- GitHub-āĻ āĻĒā§āĻ°āĻāĻžāĻļāĻŋāĻ¤ Buck2 āĻā§āĻĄ āĻāĻŦāĻ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻŋāĻ āĻ˛ā§āĻ¯āĻžāĻā§āĻā§āĻ¯āĻŧā§āĻ āĻ¸āĻžāĻĒā§āĻ°ā§āĻā§āĻ° āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻā§āĻ˛āĻŋ āĻĢā§āĻ¸āĻŦā§āĻā§āĻ° āĻĒāĻ°āĻŋāĻāĻžāĻ āĻžāĻŽā§āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖā§āĻ° āĻ¸āĻžāĻĨā§ āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻ āĻāĻŋāĻ¨ā§āĻ¨ (āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĒāĻžāĻ°ā§āĻĨāĻā§āĻ¯ āĻšāĻ˛ Facebook āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻāĻŽā§āĻĒāĻžāĻāĻ˛āĻžāĻ° āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻāĻŦāĻ āĻŦāĻŋāĻ˛ā§āĻĄ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°āĻā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻāĻŦāĻĻā§āĻ§ āĻšāĻāĻ¯āĻŧāĻž)āĨ¤
- āĻŦāĻŋāĻ˛ā§āĻĄ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽāĻāĻŋ āĻ°āĻŋāĻŽā§āĻ āĻāĻŦ āĻāĻā§āĻ¸āĻŋāĻāĻŋāĻāĻļāĻ¨ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻā§āĻāĻ°āĻŖā§āĻ° āĻ˛āĻā§āĻˇā§āĻ¯ā§ āĻĄāĻŋāĻāĻžāĻāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ āĻ¯āĻž āĻāĻĒāĻ¨āĻžāĻā§ āĻ°āĻŋāĻŽā§āĻ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§ āĻāĻžāĻ āĻāĻžāĻ˛āĻžāĻ¨ā§āĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻ¯āĻŧāĨ¤ āĻ°āĻŋāĻŽā§āĻ āĻāĻā§āĻ¸āĻŋāĻāĻŋāĻāĻļāĻ¨ API Bazel āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻžāĻŽāĻā§āĻāĻ¸ā§āĻ¯āĻĒā§āĻ°ā§āĻŖ āĻāĻŦāĻ Buildbarn āĻāĻŦāĻ EngFlow āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻžāĻŽāĻā§āĻāĻ¸ā§āĻ¯ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
- āĻāĻžāĻ°ā§āĻā§āĻ¯āĻŧāĻžāĻ˛ āĻĢāĻžāĻāĻ˛ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻ¨ā§āĻāĻŋāĻā§āĻ°ā§āĻļāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¯ā§āĻāĻžāĻ¨ā§ āĻĒā§āĻ°ā§ āĻ°āĻŋāĻĒā§āĻāĻŋāĻāĻ°āĻŋāĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŦāĻ¸ā§āĻ¤ā§ āĻāĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻ¸āĻ˛ā§, āĻ°āĻŋāĻĒā§āĻāĻŋāĻāĻ°āĻŋāĻ° āĻāĻāĻāĻŋ āĻ āĻāĻļā§āĻ° āĻĒā§āĻ°āĻā§āĻ¤ āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻ¸ā§āĻ˛āĻžāĻāĻ¸ āĻĻāĻŋāĻ¯āĻŧā§ āĻāĻžāĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ (āĻĄā§āĻā§āĻ˛āĻĒāĻžāĻ° āĻĒā§āĻ°ā§ āĻ°āĻŋāĻĒā§āĻāĻŋāĻāĻ°āĻŋāĻāĻŋ āĻĻā§āĻā§āĻ¨, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻāĻ°āĻž āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋ āĻ¸āĻāĻā§āĻ°āĻšāĻ¸ā§āĻĨāĻ˛ āĻĨā§āĻā§ āĻĒā§āĻ¨āĻ°ā§āĻĻā§āĻ§āĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ)āĨ¤ EdenFS āĻāĻŦāĻ Git LFS-āĻāĻ° āĻāĻĒāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋ āĻāĻ°ā§ VFS āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤, āĻ¯āĻž āĻ¸ā§āĻ¯āĻžāĻĒāĻ˛āĻŋāĻ āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻšāĻ¯āĻŧāĨ¤
āĻāĻ¤ā§āĻ¸: opennet.ru