diffpy / diffpy.github.io Goto Github PK
View Code? Open in Web Editor NEWweb hosting for www.diffpy.org
web hosting for www.diffpy.org
When running the documentation generation for updating the site, the following errors occur:
(acknowledgements: line 17) broken http://danse.us - HTTPConnectionPool(host='danse.us', port=80): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f0b42e23048>: Failed to establish a new connection: [Errno 110] Connection timed out'))
( index: line 38) broken http://danse.us/ - HTTPConnectionPool(host='danse.us', port=80): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f0b405d38d0>: Failed to establish a new connection: [Errno 110] Connection timed out'))
It appears that the DANSE project is no longer being funded and has thus been archived. There are two possible options I see for referring to it now:
@sbillinge, please let me know which should be the new reference to replace the now defunct reference(s): http://danse.us/
In products/diffpycmi/contents: line 71
, there is a link to "https://vincefn.net/ObjCryst/" which specifies the HTTPS protocol should be used but apparently this host does not support HTTPS. The linkcheck
fails as the HTTPS request cannot be satisfied, but the link can still be reached by using the protocol agnostic link vincefn.net/ObjCryst/, although users may get a warning about accessing an insecure website. Ultimately, I think providing the link with or without the inclusion of the https://
portion will still properly direct users to the intended website, but including the https://
portion causes our linkcheck
validation of the documentation update to fail.
@sbillinge, let me know if it is okay to change the reference link to this "insecure" format or what else should be done instead.
diffpy-cmi and pdfgui can be only installed with Python 2.7.
Suggest to use of Anaconda 2.7. If 3.5 is already installed advise how to install to py27 environment. Spell out source activate py27
for Linux Mac and activate py27
for Windows.
For some reason, the doc directory for our sources is set to ./static_root/doc
but Sphinx expects it to be at ./doc
and this has yet to be addressed. The effect of this discontinuity is that when Sphinx is running, it looks in the incorrect location with relative paths for static files we are serving up. This ultimately is not an issue for the functionality of the website as the links are indeed consistent in the static files generated, but it causes tests such as linkcheck
to fail. For this reason, this make command has been modified to accoun for this discontinuity to preserve the validity of the test, but this change may have impact on future modifications to the website's internal structure and/or a fix for this issue, hence the in-line documentation of the problem (which gets printed to the console upon linkcheck
's failure).
Here's what the make command was prior to this modification (and likely should be converted back to after addressing the issue):
$(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
@echo
@echo "Link check complete; look for any errors in the above output " \
"or in $(BUILDDIR)/linkcheck/output.txt."
Here's an overview of the logic for circumventing the issue:
linkcheck
as we've properly configured our local structure to be what Sphinx expects.linkcheck
's success as we know we create ./doc
as a symlink in (1) (as opposed to it being a directory containing its own data possibly created at a later time without knowledge of this fix).In the Makefile containing the make functions for updating the site, there are several uses of rsync
(i.e., use 1 & use 2) which doesn't seem to be supported on Windows, WSL, nor GitBash making doing the steps for updating the website problematic for members of the group who do not have access to a Linux installation.
This issue is separately documented but would be taken care of by Issue #43
Related to Issue #30, the following links are also broken when rebuilding the documentation:
(products/diffpycmi/contents: line 65) broken http://www.reflectometry.org/danse/elements.html - 404 Client Error: Not Found for url: https://www.reflectometry.org/danse/elements.html
(products/diffpycmi/contents: line 66) broken http://www.reflectometry.org/danse/docs/elements/ - 404 Client Error: Not Found for url: https://www.reflectometry.org/danse/docs/elements/
These links, however, do not immediately seem to have an archived counterpart. @sbillinge, please let me know what should be done about this as well.
Complete overhaul needed. Talk to Simon for details.
The release steps were not entirely clear to a new dev (but have since been documented in README.md) and could be fully automated by moving the steps for publishing new releases into a GitHub action. Doing so would provide the following benefits:
uptodate docs are at https://diffpystructure.readthedocs.io
update license if necessay
update the installation instructions, based on lastest release
1. add instructions on compiling boost(?)
2. add instructions on updating srfit using update script in release
3. add more instructions on adding diffpy to python other than system python
adapt post on diffpy-users
Right now in the instructions, the URL is still point to diffpy, change them to github url (html in _static)
update the pdfgetx3 documents in _static/doc
add info about restoring old anaconda packages
The list of developers does not match that list(s) maintained within the DiffPy-CMI subprojects (not sure if this should be maintained as a separate list or not) but, probably more importantly, it lists former group members as part of the "active DiffPy development team" which should probably be updated.
remove Structure from User manuals section and move it to Diffpy-CMI page
General Info
OS: Windows 10
Python: 3.8
pdfgetx3: 2.2.1
The error occurse when:
Running tuneconfig() in IPython console
List of commands run:
Ran:
pdfgetx3 myfile.xy --plot=gr,fq,sq
Returns:
Installed qt5 event loop hook.
Shell is already running a gui event loop for qt5. Call with no arguments to disable the current loop.
Using matplotlib backend: QtAgg
Ran:
tuneconfig()
Returns:
This is where the error occurs. It opens up the tuneconfig window, but it remains blank/white.
Traceback:
File diffpy/pdfgetx/pdfgetxapplication.py:279, in tuneconfig(self, plotids, pdfgetter, axeslist)
File diffpy/pdfgetx/tuneconfig.py:518, in createTuneConfig(pdfgetter, **kwargs)
File diffpy/pdfgetx/tuneconfig.py:123, in init(self, pdfgetter, plotids, axeslist, reset_init)
File diffpy/pdfgetx/tuneconfig.py:211, in _makeGUIFigure(self)
AttributeError: 'FigureCanvasQTAgg' object has no attribute 'set_window_title'
So I'm guessing that the issue is the use of the QtAgg backend? I have found an issue while googling that looks like it might hold the explanation for this error:
matplotlib/matplotlib#17716
The solution in that case seems to be to just not include the 'set_window_title' command.
I do not know much about Qt, but it seems like the whole thing crashes simply because the tuneconfig window title is being set to the string "tuneconfig" and the Canvas Class doesn't recognize that method.
Was that method renamed in a different version of Qt? Does tuneconfig really need a title? Do I just need to change the version of one of my python libs?
package has been renamed to lowercase
*) Front page is clean, eye-catching, but obviously a stub. That's ok, minimal is good as long as it does it's job.
*) It should define the difference between diffpy and diffpy-cmi more clearly. It's two projects? Does the first paragraph describe diffpy first, then diffpy-cmi next? it's confusing. Should state what each project is, and what the goals are up front… or have one page each that does that.
update news when diffpy-CMI is released
update list of developers
update funding if we should acknowledge LDRD
The source file acknowledgements.rst has a section "Developers" which is not an accurate list of active developers.
@sbillinge, when you get a chance, take a look at the list of members listed as "The active DiffPy development team" and let me know who should be moved to the "Former members of the project" section.
Also, I assume I should add both myself and Zach as active developers, correct?
*) good that it states what the project is first. I'd say what the goal is and why you might use it in the first paragraph. Very short. Three to four sentences tops. The more reading you have to do, the more you will lose people. Tell people why the should be reading the rest of the page in the first paragraph and don't be shy about it.
Tell people why they want to be on this page, and what they are going to get if they read further and download some stuff. Often, a cool picture or so helps, as well as some simple code where people can say… "ooh cool, I want that"
*) License needs to be updated, I think.
*) The one page monolith html page is too long, and it repeats itself. You have a list of the modules, and no links to them… then at the bottom, you have links to the docs. Condense this into one place. Also why "Installation"… then link to "Linux,Unix" instead of just having it all in one place? This all might be better as more than one page… I'd at least have one page for modules developed by the team, then another page for "externally developed modules" that add additional functionality… or are dependencies. Maybe give a small blurb why you might want to use each of the CMI packages, not just what it is. Also, you could tell what using one of the "external" package adds to your abilities in the CMI context. That might easily lead into some examples in the near future. The page, as is, is boring… and it leaves me wanting to know why I am here -- again, I'd try to think about what the "best" feature of each package is, and state that instead of giving the dry description. You have most of this type of description in the README.rst files.
*) The long list of dependencies is off-putting because it's long. I almost stopped reading before I hit the "sudo apt-get install…" part and realized it's easy. I was thinking, "I'm not installing all of this". Maybe make it seem easy to install first, then
if you need to list dependencies, do that later. I'd put a "single-click" download link on the front page, and then have a separate page for all the rest of the installation jazz.
*) Note the PDFgui page is much much better, and is focused, and does much of what I suggested above. Maybe there's too much going on on the CMI page? It needs some thought. Maybe the best is to have a webpage for each of the CMI products (or at least srfit, srreal, structure, and maybe pyobjcryst). The CMI page could then be of a more singular focus -- community-building: CMI-exchange (of software) and 'CMI-exchange' of ideas/information/support (through the 'groups' and other contact mechanisms).
update the community link at the bottom (currently borken)
update the README.txt link (in Unix, Linux, Mac section)
I try to install xPDFsuite on Linux Ubuntu 22.04, and I get the following error message during the ./Install:
Python27/bin/python: symbol lookup error: /mydirectory/Python27/bin/../lib/libm.so.6: undefined symbol: __get_cpu_features, version GLIBC_PRIVATE
Any possible fix for that? Sorry if it is a trivial error...
For projects that not in our diffpy repo, we should provide links to their homepage and (or) reference
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.