materials

Crates.iomaterials
lib.rsmaterials
version0.5.0
created_at2025-11-20 19:29:44.757958+00
updated_at2025-12-29 00:11:59.432148+00
descriptionData on rocks, elements, metals, etc.
homepage
repositoryhttps://github.com/AlexeyPe/materials
max_upload_size
id1942448
size36,923
Alexey Pechenckin (AlexeyPe)

documentation

https://docs.rs/materials

README

Materials

materials - is a library of material data.
1 material = 1 struct

Macros are used to create structures.
Materials support localization.

trait Rock Element Alloy Molecule
🧾Density
🔥Melting
🔥Ignition
🔥Burning
🔥HeatValue
🗻Sedimentary
🗻Igneous
🗻Metamorphic

Versions

Information on how the library will be updated:

  1. X.y.z (X)
    1. X is always incremented. (0 is a proof-of-concept/test version)
    2. Updating X means that the library has changed significantly and the project may need to be rewritten to match the library.
    3. When updating X (for example, from 1 to 2), y and z will continue to be released for versions of X. Material data will remain current, but functionality will be limited to version X.
    4. X is updated when functionality/data is removed (changes incompatible with the previous version of X).
    5. X is an organizational concept; at best, X is not updated.
    6. Be careful when updating a package to the latest X.
  2. x.Y.z (Y)
    1. Y is always incremented.
    2. When updating X, Y is not reset to 0.
    3. Y is updated when new functionality is added (not removed). If any functionality is removed, it will first be marked as deprecated. 1. Y is like a new column in a table or a separate table with data.
      (libraries are not tables)
    4. Be calm when updating a package to the latest Y.
    5. Use materials = "~x.y.z" to update only Y and Z and ensure that the update is safe.
  3. x.y.Z (Z)
    1. Z always increments.
    2. When updating X or Y, Z is not reset to 0.
    3. Z is updated when a material is added or when material data changes, such as changing a name or melting point, etc.
    4. Z is like a new row in a table.
      (libraries are not tables)
    5. Be calm when updating a package to the latest Z.
    6. Use materials = "^x.y.z" to update only Z and ensure that the update is safe.
  • The main version with the number zero (0.y.z) is intended for initial development. Any changes or deletions may occur at any time.

Информация о том как будет обновляться библиотека:

  1. X.y.z (X)
    1. X всегда увеличивается. (0 - это версия-концепция/тест)
    2. Обновление X означает, что библиотека существенно изменилась и может потребоваться переписывание проекта для соответствия библиотеке.
    3. При обновлении X (к примеру с 1 до 2) продолжится выход y и z для версий X, данные о материалах будут актуальны, но функционал будет ограничен версией X.
    4. X обновляется при удалении функционала/данных.
      (изменения несовместимые с прошлой версией X)
    5. X - это идея организации данных, в лучшем случае X не обновляется.
    6. Быть внимательным при обновлении пакета до последней X.
  2. x.Y.z (Y)
    1. Y всегда увеличивается.
    2. При обновлении X, Y не сбрасывается до 0.
    3. Y обновляется при добавлении (не удалении) нового функционала, если какой то функционал будет удаляться - то сначала оно будет помечено устаревшим.
    4. Y - это как новая колонка в таблице или отдельная таблица с данными.
      (библиотека не является таблицами)
    5. Быть спокойным при обновлении пакета до последней Y.
    6. Используйте materials = "~x.y.z", чтобы обновить только Y и Z и убедиться, что обновление безопасно.
  3. x.y.Z (Z)
    1. Z всегда увеличивается.
    2. При обновлении X или Y, Z не сбрасывается до 0.
    3. Z обновляется при добавлении материала или при изменении данных о материале, к примеру исправление названия или температуры плавления и т.д.
    4. Z - это как новая строчка в таблице.
      (библиотека не является таблицами)
    5. Быть спокойным при обновлении пакета до последней Z.
    6. Используйте materials = "^x.y.z", чтобы обновить только Z и убедиться, что обновление безопасно.
  • Основная версия с нулевым номером (0.y.z) предназначена для начальной разработки. В любой момент что-то может измениться (удалиться).
Commit count: 0

cargo fmt