Kiến trúc. kho lưu trữ bất kỳ. Cộng đồngMô tả. Một plugin nở để giúp xây dựng các gói Jupyter URL ngược dòng. https. // jupyter. org/Giấy phép. tùy chỉnh bảo trì. Antonio Rojas
Kích thước gói hàng. 28. 3 KBKích thước cài đặt. 94. 4 KBLast Packager. Antonio RojasNgày xây dựng. 2022-12-13 22. 08 UTC Đã ký bởi. Antonio RojasNgày ký. 2022-12-13 22. 08 UTCCập nhật lần cuối. 2022-12-13 22. 10 giờ UTC
Ngành kiến trúc. kho lưu trữ bất kỳ. cộng đồngMô tả. Trình quản lý dự án, gói và virtualenv hiện đại URL ngược dòng. https. //github. com/ofek/hatchLicense[s]. Kích thước cài đặt MIT. 479KiBNgày xây dựng. Thứ ba 20 tháng 9 23. 59. 06 2022 UTC
Bản quyền ©2009-2022 Arch Linux ARM
Nhãn hiệu đã đăng ký Linux® được sử dụng theo giấy phép con từ LMI, người được cấp phép độc quyền của Linus Torvalds, chủ sở hữu của nhãn hiệu trên một thế giới .
Tên và biểu tượng Arch Linux™ được sử dụng dưới sự cho phép của Trưởng dự án Arch Linux.
Hatch có một cli phiên bản tuyệt vời cho các gói python chỉ hoạt động. Cần rất ít cấu hình để bắt đầu sử dụng và bạn có thể bắt đầu nâng cấp các phiên bản mà không phải lo lắng
tạo các phiên bản mới do chính tôi tạo ra với độ khuếch tán ổn định
bố trí dự án
Để dùng thử cli
❯ tree .
.
├── pkg
│ ├── __about__.py
│ └── __init__.py
├── pyproject.toml
└── README.md
1 directory, 4 files
8, hãy tạo một dự án đơn giản với cái tên khủng khiếp [project]
name = "pkg"
description = "Show how to version packages with hatch"
readme = "README.md"
dynamic = [
"version",
]
[build-system]
requires = [
"hatchling>=1.4.1",
]
build-backend = "hatchling.build"
[tool.hatch.version]
path = "pkg/__about__.py"
0❯ tree .
.
├── pkg
│ ├── __about__.py
│ └── __init__.py
├── pyproject.toml
└── README.md
1 directory, 4 files
pyproject. toml
Nhân vật chính của bài đăng này là
[project]
name = "pkg"
description = "Show how to version packages with hatch"
readme = "README.md"
dynamic = [
"version",
]
[build-system]
requires = [
"hatchling>=1.4.1",
]
build-backend = "hatchling.build"
[tool.hatch.version]
path = "pkg/__about__.py"
1. Đây là những gì xác định tất cả các thiết lập dự án theo phong cách PEP 517 của chúng tôi[project]
name = "pkg"
description = "Show how to version packages with hatch"
readme = "README.md"
dynamic = [
"version",
]
[build-system]
requires = [
"hatchling>=1.4.1",
]
build-backend = "hatchling.build"
[tool.hatch.version]
path = "pkg/__about__.py"
phiên bản tĩnh
dự định. phiên bản
Có thể đặt số phiên bản bên trong
[project]
name = "pkg"
description = "Show how to version packages with hatch"
readme = "README.md"
dynamic = [
"version",
]
[build-system]
requires = [
"hatchling>=1.4.1",
]
build-backend = "hatchling.build"
[tool.hatch.version]
path = "pkg/__about__.py"
1 một cách tĩnh. Điều này tốt nếu bạn chỉ muốn phiên bản gói của mình theo cách thủ công chứ không phải thông qua cli [project]
name = "pkg"
description = "Show how to version packages with hatch"
readme = "README.md"
dynamic = [
"version",
]
[build-system]
requires = [
"hatchling>=1.4.1",
]
build-backend = "hatchling.build"
[tool.hatch.version]
path = "pkg/__about__.py"
3[project]
name = "pkg"
version = "0.0.0"
# ...
Phiên bản tĩnh trong pyproject. toml sẽ không hoạt động với
8❯ tree . . ├── pkg │ ├── __about__.py │ └── __init__.py ├── pyproject.toml └── README.md 1 directory, 4 files
Cannot set version when it is statically defined by the `project.version` field
Phiên bản động
dự định. năng động
Việc thiết lập phiên bản dự án một cách linh hoạt có thể được thực hiện bằng cách thay đổi thông tin sau thành
[project]
name = "pkg"
description = "Show how to version packages with hatch"
readme = "README.md"
dynamic = [
"version",
]
[build-system]
requires = [
"hatchling>=1.4.1",
]
build-backend = "hatchling.build"
[tool.hatch.version]
path = "pkg/__about__.py"
1 của bạn. Hatch chỉ chấp nhận một đường dẫn để lưu trữ phiên bản của bạn. Nếu bạn cần tham khảo nó ở nơi khác trong dự án của mình, bạn có thể lấy nó từ siêu dữ liệu gói cho tệp đó. Tôi sẽ không đặt bất kỳ thứ gì khác có thể xung đột với phiên bản, vì bạn có thể vô tình thay đổi cả hai thứNếu bạn thực sự cần đặt nó ở nhiều nơi hơn, hãy sử dụng gói như Bump2version
[project]
name = "pkg"
dynamic = [
"version"
]
# ...
[tool.hatch.version]
path = "pkg/__about__.py"
Ghi chú. bạn có thể định cấu hình cửa sập để sử dụng một mẫu khác, nhưng tôi không thấy đó là thứ tôi cần
xung quanh. py
Bản thân dự án hatch sử dụng một khoảng. py để lưu trữ phiên bản của nó. Nội dung duy nhất của nó là một biến
[project]
name = "pkg"
description = "Show how to version packages with hatch"
readme = "README.md"
dynamic = [
"version",
]
[build-system]
requires = [
"hatchling>=1.4.1",
]
build-backend = "hatchling.build"
[tool.hatch.version]
path = "pkg/__about__.py"
6 duy nhất. Tôi không có bất kỳ vấn đề cá nhân nào với điều này vì vậy tôi sẽ theo dõi điều này trong các dự án sử dụng hatch của mình❯ tree .
.
├── pkg
│ ├── __about__.py
│ └── __init__.py
├── pyproject.toml
└── README.md
1 directory, 4 files
1phiên bản
Hatch có api lập phiên bản khá trực quan.
❯ tree .
.
├── pkg
│ ├── __about__.py
│ └── __init__.py
├── pyproject.toml
└── README.md
1 directory, 4 files
8 cung cấp cho bạn phiên bản. Nếu bạn chuyển vào một phiên bản như [project]
name = "pkg"
description = "Show how to version packages with hatch"
readme = "README.md"
dynamic = [
"version",
]
[build-system]
requires = [
"hatchling>=1.4.1",
]
build-backend = "hatchling.build"
[tool.hatch.version]
path = "pkg/__about__.py"
8, nó sẽ đặt nó thành phiên bản đó miễn là nó tồn tại trong tương lai, nếu không nó sẽ báo lỗi❯ tree .
.
├── pkg
│ ├── __about__.py
│ └── __init__.py
├── pyproject.toml
└── README.md
1 directory, 4 files
3va chạm
Bạn có thể gập các phần của phiên bản semver
❯ tree .
.
├── pkg
│ ├── __about__.py
│ └── __init__.py
├── pyproject.toml
└── README.md
1 directory, 4 files
4Ví dụ
Đây là một ảnh chụp màn hình của một dự án cùng
GitOps
Trong luồng hành động github của tôi, tôi sẽ sử dụng điều này để tự động hóa các phiên bản của mình. Trong các dự án phụ của tôi, tôi sử dụng nhánh
[project]
name = "pkg"
description = "Show how to version packages with hatch"
readme = "README.md"
dynamic = [
"version",
]
[build-system]
requires = [
"hatchling>=1.4.1",
]
build-backend = "hatchling.build"
[tool.hatch.version]
path = "pkg/__about__.py"
9 để phát hành --pre phát hành. Tôi có tất cả các dự án phụ thuộc của riêng mình chạy trên các bản phát hành --pre này, điều này cho phép tôi tự cắt mình trong các dự án của riêng mình trước bất kỳ ai khác. Sau đó trên main mình tự động phát hành phiên bản beta nàyHành động GitHub
Đây là giao diện của ci/cd cho
[project]
name = "pkg"
version = "0.0.0"
# ...
0. Có thể có một chiến lược quy trình công việc tốt hơn, nhưng tôi sử dụng một quy trình hành động github duy nhất và cắt các nhánh để phát hành --pre phát hành và phát hành đầy đủ. Các bước này sẽ va chạm, gắn thẻ, cam kết và triển khai cho tôi❯ tree .
.
├── pkg
│ ├── __about__.py
│ └── __init__.py
├── pyproject.toml
└── README.md
1 directory, 4 files
7Phiên bản Hatch Hành động
Tôi đang thiết lập một hành động tùy chỉnh github waylonwalker/hatch-version-action sẽ lint, kiểm tra, va chạm và xuất bản cho tôi trong một bước. Thêm về điều đó trong tương lai