FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

Tags · casablanque-code/netconv · GitHub

Tags: casablanque-code/netconv

Tags

v0.5.0

Toggle v0.5.0's commit message
netconv v0.5.0

v0.4.0

Toggle v0.4.0's commit message
publish netconv-core and ios-config to crates.io from this repo

crates/netconv-parser-ios is renamed to crates/ios-config: it keeps its
pre-existing crates.io name/lineage (was casablanque-code/ios-config),
since it's IOS-specific and already had that identity as a published
crate. netconv-core is a new crate name — its scope grew beyond IOS
(shared by the VRP/Eltex renderers too), so keeping it under the old
'ios-config-core' name would have been misleading going forward.

Versioning for these two is now independent of the netconv app/workspace
version:
- netconv-core: first publish, starts at 0.1.0
- ios-config: 0.2.0 -- a breaking release. parse() (free function,
  Result<NetworkConfig, ParseError>) is replaced by IosParser
  implementing netconv_core::traits::ConfigParser, returning
  Result<(NetworkConfig, ConversionReport), IosParseError>. This
  reflects a real API change that happened while this parser lived
  here (added unrecognized-line reporting), not just a rename.
  ios-config-core (the old core crate) never got this and is no
  longer maintained separately -- ios-config now depends on
  netconv-core instead.

Both manifests gained description/license/readme/keywords/categories
(required by crates.io, were missing) and a proper per-crate README
with real usage examples matched against the actual public API.

CI: release.yml's publish-crates job is idempotent -- on every v* tag
it reads each crate's own current manifest version, checks crates.io's
sparse index for it, and only publishes what isn't already there (in
netconv-core -> ios-config order, since the latter depends on the
former). Tagging an app release never forces a version bump of either
library crate. Requires a CARGO_REGISTRY_TOKEN repo secret.

prepare-release.yml/Cargo.toml: dropped the workspace.dependencies
indirection from the previous attempt at this -- netconv-core and
ios-config no longer share a version with the app, so it's not needed.

Follow-up (manual, needs crates.io account access this environment
doesn't have):
- mark ios-config-core deprecated or yank it on crates.io, pointing
  at netconv-core
- delete the casablanque-code/ios-config repo once this pipeline has
  published ios-config successfully at least once

v0.3.0

Toggle v0.3.0's commit message
netconv v0.3.0

v0.2.0

Toggle v0.2.0's commit message
feat(web): загрузка файла (drag-and-drop + кнопка) и скачивание резул…

…ьтата

Импорт:
  - кнопка 'upload' у source-панели открывает системный file picker
    (accept=.cfg,.conf,.txt)
  - drag-and-drop прямо на панель источника — оверлей с рамкой и
    подсказкой при наведении файла, читает через FileReader.readAsText
  - оба пути ведут в один readSourceFile() → просто подставляют текст
    в textarea, дальше всё работает как при ручной вставке

Экспорт (у output-панели, появляются вместе с 'copy' после успешной
конвертации):
  - 'download .cfg' — сам конвертированный конфиг, имя файла
    <hostname>-<vendor>.cfg. hostname вытаскивается regex'ом из
    исходного 'hostname X' в source config; если не найден — 'config'
  - 'download report' — читаемый markdown-репорт рядом:
    source/target/profile/coverage/risk, каждый ReportItem с
    было/стало в code-блоках и рекомендацией, плюс секция domain
    mismatches если есть.

_lastResult теперь хранит последний успешный result — report для
скачивания больше неоткуда взять после того, как runConvert() уже
отработал.

v0.1.0

Toggle v0.1.0's commit message
netconv 0.1.0 — L2/L3 domain separation


Back | FazBrowse Home | New Git URL