-
-
Notifications
You must be signed in to change notification settings - Fork 79
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add enclosing round bracket flags r and R to the format_num method #116
Conversation
Note: I tried to fix some python2 unicode related things that prevented the CI tests to pass. Only the first commit 053ae8e is related to #113!
where |
Codecov Report
@@ Coverage Diff @@
## master #116 +/- ##
=========================================
Coverage ? 94.88%
=========================================
Files ? 12
Lines ? 1995
Branches ? 0
=========================================
Hits ? 1893
Misses ? 102
Partials ? 0
Continue to review full report at Codecov.
|
I just noted that I reverted quite a log of changes from 26dafcc, where e. g. the |
Hooray! All tests have passed.... Time to add new tests for the |
AppVeyor fails with the message |
@ep12 As an outsider considering this project for building our scientific IoT sensor framework (thanks to its integration with pint) and hoping to contribute myself (but strongly put off by the archaic code base and apparent lack of real maintenance), I'm not sure why it failed as other more recent builds have at least managed to run the tests, and I don't see anything obvious in the code that would prompt it. To note, I'm unfamiliar with the particulars of the ancient syntax and infrastructure used (<Py2.7, nose, 2to3 for on-the-fly conversion, easy_install-style setup.py, etc) since that stuff has been deprecated for as long as I've been a scientific programmer (half a decade now)...heck, the only reason I even have indirect exposure to 2.7 is due to helping other people port their code to Python 3, and maintaining 2.7 backward-compat up till now as a core dev of the Spyder scientific environment. However, random CI failures are unfortunately something I'm all too familiar with. If you rebase on the latest @lebigot Any help here? This needs to be merged to fix your tests, which have been failing for months because of it. Thanks. |
The "archaic" code base exists for the purpose of supporting scientific experiments that rely on older versions of Python, but I did agree to stop supporting Python <2.7 and to move to Python 3 as the main source code version. I am not sure what you mean by the "apparent lack of real maintenance": I don't recall any bug being ever found in this package, so there is no need for maintenance when something works, right? I understand that the build fails because of the packaging introduced in a relatively recent pull request merge. I am looking into this when my baby lets me. I am basically revising the way wheels are built. |
In practical terms, you may want to base your changes from the last version that builds (e3b8f71). |
Sorry if I came off a little harsh...I'm just so used to the "modern" way of doing things since I haven't been around long enough to have learned the old way. Unfortunately, as I'm sure you're well familiar with, our current funding and advancement models in academia and research just isn't set up very well to support vital maintenance on core infrastructure packages like what you're doing despite how important the work you do here is to the scientific community, so between that and your family and all the demands for new features I can't imagine things have been easy for you. If you'd like some help moving to a more modern and easier to maintain Py3 codebase, I may be able to help out, although for the very near term at least I'm absolutely stuffed between building an IoT framework for 2 different scientific sensor systems, doing a ML/AI project for NASA, working on a project for the Spyder scientific environment, and running an outreach thing with a fleet of boats down at Cape Canaveral/NASA KSC to help people watch rocket launches. Possibly in a month or two depending on your timeframe...let me know if I can assist. Sorry for derailing this issue...feel free to follow up via other contact methods. |
No offense taken. :) Thanks for the offer. There is a pull request with a move to Python 3, but it contains many other changes, changes that the official Python documentation does not agree with, and also non-atomic commits that are hard to reuse, so after handling the wheel building, and probably a smaller pull request, I'll be moving to Python 3 and a universal source code. |
It might be good to mention your concerns over there to give the contributor a chance to address them, as it doesn't sound like they are fully aware of them. While I agree that smaller, more incremental PRs would be ideal, in cases like these with so much legacy code one runs into a "chicken or the egg" (er, wheel) problem when there is a substantial amount of interdependency between all the elements you mention. More specifically, up to date versions of both pylint and pytest require Python 3, for which
I'm not sure I'm clear on which those would be; I spent time time looking through the PR in quite some detail but while I found a smattering of minor issues and things that could be done even better (which I'd be happy to point out in a review if the PR has a good chance of acceptance), few to none were an actual regression over the current situation, and I overall found it to be a net improvement in almost every major respect in terms of implementing best practices, conforming to accepted standards, and following the letter and the spirit of the relevant authoritative documentation.
I don't really know about re-use being an independently vital property since if you mean like in cherrypicking that's not really considered an integral part of the core VCS workflow, but atomicity absolutely and overall, I definitely agree that the commit structure is by far the weakest part of that PR. I would ask that the contributor rebase it and reoganize the commits to split the work into discrete functional changes, and be more balanced with the commits, but while this is far from ideal, I personally wouldn't consider flat-out rejecting a PR based primarily on just its commit structure, as the changes still add much more positive and needed benefit than the commit structure takes away overall. |
I tried rebasing the stuff and noted that my work was based on 597c0d5 (newer than e3b8f71). |
Implement a new formatting option, see #113.
Note: This doesn't work with unumpy arrays like regular formatting does not work with them, formatting in general does not work with them (regular numpy's fault?).