Comments (12)
I like list
instead of print
very much. It complies well with the implementation which comes from the listing
module.
I'm not familiar with terms around the SQL ecosystem, so show
instead of the current list
does not feel that intuitive to me. What do you think about the explicit databases
, or periods
(which displays a list of what you can specify using the --period
option on other commands).
The inspiration for rm
came from the Linux rm
, and the git command. I'm fine with changing it to the explicit remove
.
Note: with
[ ] support print at date other than today
I talk about a feature that shows the content of the list at a point in the past (like a snapshot). Honestly I don't know how this idea appeared :D maybe it's better to make the --filters
option more powerful.
from financeager.
@pylipp I think show
would be a better alternative to print
.
from financeager.
Thanks for the suggestion! I still find it a bit ambiguous since e.g. there's also the get
command which shows a single entry. With the renamed command, many entries are shown in a tabular format.
from financeager.
@pylipp Honestly, list
would have been perfect. Throw in a --period
argument and you achieve
- support
Maybe we could also rename the current list
command to show
(which is the command most SQL systems follow to list tables, indexes and databases). That way we free up list
to replace print
.
Also, rm
is a not really a good choice of name for the remove
command. If you're making the user type update
, you might as well ask them to explicitly type remove
too (both the commands have very low usage semantics).
from financeager.
What do you think about the explicit databases, or periods (which displays a list of what you can specify using the --period option on other commands).
This makes sense to me. 👍
I talk about a feature that shows the content of the list at a point in the past (like a snapshot). Honestly I don't know how this idea appeared :D maybe it's better to make the --filters option more powerful.
Ohh! I misunderstood this feature request. I thought you just wanted to extend the current print
command to other periods.
So, maybe we should make milestones (or would you like to track in separate issues):
- Make
databases
command - Rename
print
tolist
andrm
torename
- Make
periods
command
from financeager.
Milestones is a great idea! I see them like this:
- rename
list
toperiods
- rename
print
tolist
- rename
rm
toremove
There's no need to make new commands, everything's already there in one way or the other :D
from financeager.
Awesome! @pylipp Can you add the milestones to this issue, and assign it to me? I'll start on this.
from financeager.
not sure whether I did it right :'D
from financeager.
Awesome! I'll add new issues / PRs to the milestone as and when needed.
from financeager.
@pylipp So I tried setting up the package and running the tests. Some of your tests are fragile / not cross-platform.
On windows I had 10 tests failing, on MacOS I had 2. The ones failing on Mac are:
======================================================================
FAIL: test_invalid_host (test.test_httprequests.HttpRequestProxyTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/Users/abhibha/misc/financeager/test/test_httprequests.py", line 51, in test_invalid_host
self.assertIn("Name or service not known", error_message)
AssertionError: 'Name or service not known' not found in "Error sending request: HTTPConnectionPool(host='weird.foodomain.nope', port=80): Max retries exceeded with url: /periods/2000/standard/1 (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x107d51e90>: Failed to establish a new connection: [Errno 8] nodename nor servname provided, or not known'))"
======================================================================
FAIL: test_verbose (test.test_cli.CliLocalServerTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/local/Cellar/python/3.7.4_1/Frameworks/Python.framework/Versions/3.7/lib/python3.7/unittest/mock.py", line 1209, in patched
return func(*args, **keywargs)
File "/Users/abhibha/misc/financeager/test/test_cli.py", line 150, in test_verbose
"Loading custom config from {}".format(TEST_CONFIG_FILEPATH)))
AssertionError: False is not true
----------------------------------------------------------------------
I'll open a separate issue to address those.
from financeager.
Oh that's a pity! I purely tested on Linux distros...
For a workaround, you can probably open a PR; pushes to the branch then trigger builds on travis CI.
However, the first test fails for me whenever I don't have an internet connection... For the second one I'd have to have a closer look.
Would using a Docker container be an option for you?
from financeager.
No worries. I managed to find viable fixes (see #36). I'll put up a separate PR for that.
from financeager.
Related Issues (20)
- Feature request: batch removing/updating of entries HOT 2
- Migrate setup.cfg to pyproject.toml HOT 1
- Update deprecated GitHub actions HOT 1
- Use setup-python GH actions caching
- Introduce constant for 'recurrent' table name in pocket module
- Enhance 'add' CLI
- Enable cross-platform program files
- Use act for local testing consistent with CI testing HOT 1
- Modernize Python packaging
- Introduce shortcut flag -r/--recurrent for -t recurrent HOT 1
- Add dependabot config
- Remove financeager command
- Remove convert-periods-to-pocket command
- fina list -m shows entries of any year
- Support filtering for recurrent entries with undefined end
- Release v1.0.0
- Enhance usability of list -f option
- Use recurrent table if update command used with -f/-s/-e
- Replace inhouse list-prettify code for rich-implementation
- Align table columns with `list --stacked-layout`
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from financeager.