Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
strategy:
matrix:
os: ['ubuntu-latest', 'macOS-latest']
python-version: ['3.8', '3.9', '3.10', '3.11']
python-version: ['3.9', '3.10', '3.11']
steps:
- uses: actions/checkout@master
- name: Setup Python
Expand Down
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,9 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]
### Changed
- Allow dynamic versions for dependency
- Remove support for python 3.8

## [0.3.2] - 2024-08-12
### Changed
Expand Down
13 changes: 0 additions & 13 deletions Pipfile
Original file line number Diff line number Diff line change
Expand Up @@ -4,46 +4,33 @@ url = "https://pypi.org/simple"
verify_ssl = true

[dev-packages]
# build and release
setuptools = "*"
build = "*"
twine = "*"
# virtual env management
tox = "*"
tox-gh-actions = "*" # ci/cd
# lint
autopep8 = "*"
flake8 = "*"
# unit tests
parameterized = "*"
pytest = "*"
pytest-cov = "*"
coverage = "*"
# docs related
sphinx = "*"
sphinx-click = "*"
# others
pillow = "*"
tomli = "*"

[packages]
# logging
loguru = "*"
# configuration
dacite = "*"
yamale = "*"
# CLI
click = "*"
# TUI
asciimatics = "*"
urwid = "*"
# Utility
first = "*"
overrides = "*"
# JSONPath
antlr4-python3-runtime = "*"
jsonpath-ng = "*"
# others
pyperclip = "*"

[scripts]
Expand Down
379 changes: 199 additions & 180 deletions Pipfile.lock

Large diffs are not rendered by default.

3 changes: 1 addition & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
![Build Status](https://github.com/cielong/pyfx/actions/workflows/ci.yml/badge.svg?branch=main)
![Documentation Status](https://readthedocs.org/projects/python-fx/badge/?version=latest)
![PyPI version](https://badge.fury.io/py/python-fx.svg)
![Python](https://img.shields.io/badge/python-3.8-green.svg)
![Python](https://img.shields.io/badge/python-3.9-green.svg)
![Python](https://img.shields.io/badge/python-3.10-green.svg)
![Python](https://img.shields.io/badge/python-3.11-green.svg)
Expand Down Expand Up @@ -33,7 +32,7 @@ A python-native JSON Viewer TUI, inspired by [fx](https://github.com/antonmedv/f

## Prerequisites
* OS: MacOS / Linux
* python: >= 3.8
* python: >= 3.9
* pip

## Installation
Expand Down
23 changes: 21 additions & 2 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
[project]
name = "python-fx"
dynamic = ["version", "dependencies"]
dynamic = ["version"]
authors = [
{ name = "Yutian Wu", email = "yutianwu@umich.edu" }
]
license = { text = "MIT" }
readme = "README.md"
description = "A python-native fx-alike terminal JSON viewer."
keywords = ["fx", "pyfx", "json viewer", "tui"]
requires-python = ">=3.8"
requires-python = ">=3.9"
classifiers = [
"Development Status :: 4 - Beta",
"Programming Language :: Python :: 3 :: Only",
Expand All @@ -18,6 +18,25 @@ classifiers = [
"License :: OSI Approved :: MIT License",
"Topic :: Utilities"
]
dependencies = [
"antlr4-python3-runtime>=4.13,<5",
"asciimatics>=1.15,<2",
"click>=8.1.7,<9",
"first==2.0,<3",
"dacite==1.8,<2",
"jsonpath-ng==1.6,<2",
"loguru>=0.7.2,<0.8",
"overrides>=7.7.0,<8",
"pillow>=10.4,<11",
"ply>=3.11,<4",
"pyfiglet>=1.0,<2",
"pyperclip>=1.9",
"pyyaml>=6.0.2,<7",
"typing-extensions>=4.12.2,<5",
"urwid>=2.6,<3",
"wcwidth>=0.2.13,<0.3",
"yamale>=5.2,<6",
]

[project.urls]
repository = "https://github.com/cielong/pyfx"
Expand Down
2 changes: 1 addition & 1 deletion src/pyfx/__version__.py
Original file line number Diff line number Diff line change
@@ -1 +1 @@
__version__ = "0.3.3"
__version__ = "0.3.4"
2 changes: 1 addition & 1 deletion tests/e2e_tests/test_cli.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ def test_version(self):
self.assertEqual(result.output, f"pyfx, version {__version__}\n")

def test_start(self):
runner = CliRunner(mix_stderr=False)
runner = CliRunner()
with runner.isolated_filesystem():
with open('test.json', 'w') as f:
f.write('1')
Expand Down
9 changes: 5 additions & 4 deletions tox.ini
Original file line number Diff line number Diff line change
@@ -1,12 +1,11 @@
# content of: tox.ini , put in same dir as setup.py
[tox]
envlist = style_check, py38, py39, py310, py311, doctest
envlist = style_check, py39, py310, py311, doctest
skip_missing_interpreters = True
isolated_build = True

[gh-actions]
python =
3.8: style_check, py38, doctest
3.9: style_check, py39, doctest
3.10: style_check, py310, doctest
3.11: style_check, py311, doctest
Expand All @@ -17,15 +16,17 @@ skip_install = true
commands = flake8 -v

[testenv:py{38,39,310,311}]
deps = -r{toxinidir}/dev-requirements.txt
use_develop = true
setenv = PYTHONPATH = {toxinidir}/src
allowlist_externals = *
commands_pre =
coverage erase
commands =
pytest --cov={envsitepackagesdir}/pyfx --cov-report=xml:coverage.xml --cov-report=term-missing -vv

[testenv:doctest]
use_develop = true
changedir = {toxinidir}/docs
deps = -r{toxinidir}/dev-requirements.txt
allowlist_externals=make
commands_pre =
make cleanall
Expand Down
Loading