* Re: [libre-riscv-dev] libre-riscv-dev Digest, Vol 23, Issue 16 [not found] <mailman.1.1594401220.8323.libre-riscv-dev@lists.libre-riscv.org> @ 2020-07-10 20:46 ` Samuel Falvo II 2020-07-10 20:56 ` Luke Kenneth Casson Leighton 0 siblings, 1 reply; 8+ messages in thread From: Samuel Falvo II @ 2020-07-10 20:46 UTC (permalink / raw) To: Libre-RISCV General Development On Fri, Jul 10, 2020 at 10:13 AM <libre-riscv-dev-request@lists.libre-riscv.org> wrote: > Message: 4 > Date: Fri, 10 Jul 2020 17:10:17 +0100 > From: Luke Kenneth Casson Leighton <lkcl@lkcl.net> > > this is why i sent you a (private) message containing the git > repositories to clone, and pointed you at the HDL_workflow. section > on nmigen: > > mkdir ~/src > cd !$ > git clone https://github.com/nmigen/nmigen.git > cd nmigen > sudo bash > python3 setup.py develop I don't know if you noticed, but the path name it was looking in was underneath the libre-soc directory hierarchy, clearly being installed contemporaneously with the other parts of the system. That was one of the first things I checked for. I've tried uninstalling nmigen, and re-installing it from scratch, and again it insisted on installing 0.1. Just for grins, I tried with "cd nmigen && pip uninstall nmigen && pip install -e .", and it gave me this result: ERROR: nmigen-soc 0.0 has requirement nmigen~=0.1.rc1, but you'll have nmigen 0.3.dev134+g30e2f91 which is incompatible. Looks to me like there's a transitive dependency mismatch, and that is what's causing the rollback to 0.1. > 3. no mention of "virtualenv" I've *ONLY* ever run nmigen in a virtualenv, and have never once had a problem with it until now. Something else must be the problem. I know it works, as my continued development of my Kestrel-3 and VDC-II projects depend on it. > 4. use of python3 setup.py >>>>DEVELOP<<<< *NOT* python3 setup.py >>INSTALL<< I did this. -- Samuel A. Falvo II _______________________________________________ libre-riscv-dev mailing list libre-riscv-dev@lists.libre-riscv.org http://lists.libre-riscv.org/mailman/listinfo/libre-riscv-dev ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [libre-riscv-dev] libre-riscv-dev Digest, Vol 23, Issue 16 2020-07-10 20:46 ` [libre-riscv-dev] libre-riscv-dev Digest, Vol 23, Issue 16 Samuel Falvo II @ 2020-07-10 20:56 ` Luke Kenneth Casson Leighton 2020-07-10 21:04 ` Samuel Falvo II 0 siblings, 1 reply; 8+ messages in thread From: Luke Kenneth Casson Leighton @ 2020-07-10 20:56 UTC (permalink / raw) To: Libre-RISCV General Development, Samuel Falvo II (cc'ing you direct, sam, as you're on "digest" mode. if you make sure to always cc yourself - and ask people at the top to cc you - it will help people be able to reply to you much quicker, and you also won't have to mess about cut/pasting the contents of the digest). On Fri, Jul 10, 2020 at 9:47 PM Samuel Falvo II <sam.falvo@gmail.com> wrote: > Just for grins, I tried with "cd nmigen && pip uninstall nmigen && pip > install -e .", and it gave me this result: > > ERROR: nmigen-soc 0.0 has requirement nmigen~=0.1.rc1, but you'll have > nmigen 0.3.dev134+g30e2f91 which is incompatible. *click*. that's it. note "nmigen-soc". you'll be able to see that in nmigen-soc's setup.py. (btw i cloned nmigen-soc in libre-soc.org and *removed* that hard dependency version number. don't use it though because it's a hard fork of nmigen-soc). you have a version of nmigen-soc installed (in the same virtualenv) that DEMANDS nmigen 0.1, and exactly and ONLY nmigen 0.1. you'll need to get rid of "nmigen-soc 0.0"... *BEFORE* you are "permitted" to install the latest git of nmigen. it sounds like setup.py has been modified to use pip3 by default. that is a very worrying development and an extremely bad idea on the part of the python developers. samuel if you do actually use virtualenv, then so as to not disrupt the kestrel and VDC development that you're doing, you might consider setting up an entirely new virtualenv with a completely different name. i mean, it's what virtualenv is supposed to be for: create separate completely isolated environments. you might as well use it for that :) l. _______________________________________________ libre-riscv-dev mailing list libre-riscv-dev@lists.libre-riscv.org http://lists.libre-riscv.org/mailman/listinfo/libre-riscv-dev ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [libre-riscv-dev] libre-riscv-dev Digest, Vol 23, Issue 16 2020-07-10 20:56 ` Luke Kenneth Casson Leighton @ 2020-07-10 21:04 ` Samuel Falvo II 2020-07-10 22:33 ` Luke Kenneth Casson Leighton 0 siblings, 1 reply; 8+ messages in thread From: Samuel Falvo II @ 2020-07-10 21:04 UTC (permalink / raw) To: Luke Kenneth Casson Leighton; +Cc: Libre-RISCV General Development On Fri, Jul 10, 2020 at 1:57 PM Luke Kenneth Casson Leighton <lkcl@lkcl.net> wrote: > On Fri, Jul 10, 2020 at 9:47 PM Samuel Falvo II <sam.falvo@gmail.com> wrote: > *click*. that's it. note "nmigen-soc". you'll be able to see that > in nmigen-soc's setup.py. (btw i cloned nmigen-soc in libre-soc.org > and *removed* that hard dependency version number. don't use it > though because it's a hard fork of nmigen-soc). > > you have a version of nmigen-soc installed (in the same virtualenv) > that DEMANDS nmigen 0.1, and exactly and ONLY nmigen 0.1. This is a completely unique virtualenv, so it shouldn't have happened. But, what I suspect happened is I must have accidentally installed nmigen-soc *first* before installing nmigen proper. I've noticed (at least for me) that invoking `python setup.py develop` will not cause an error if there's a dependency issue; `pip install -e .` will at least issue an easily seen warning. Running setup.py directly seems to just make assumptions about its environment. NOTE: I'm not suggesting one should just stop using python setup.py develop; rather, if things seem inexplicably askew, just try pip install -e . ; it seems to have better diagnostics output. I've uninstalled nmigen-soc and nmigen, then made sure to install nmigen first, *then* nmigen-soc (both by way of setup.py develop), and it now seems to work. Tests are reporting back OK so far (except for skipped tests). (Update: now I'm getting a ton of other errors, but it's at least made progress!) Looking at the setup.py files in each, they seem to rely on some serious black magic to auto-detect installed versions. I hate stuff like that. Configuration management is precisely where you do *NOT* want black magic to occur (IMHO). -- Samuel A. Falvo II _______________________________________________ libre-riscv-dev mailing list libre-riscv-dev@lists.libre-riscv.org http://lists.libre-riscv.org/mailman/listinfo/libre-riscv-dev ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [libre-riscv-dev] libre-riscv-dev Digest, Vol 23, Issue 16 2020-07-10 21:04 ` Samuel Falvo II @ 2020-07-10 22:33 ` Luke Kenneth Casson Leighton 2020-07-10 22:50 ` Jacob Lifshay 0 siblings, 1 reply; 8+ messages in thread From: Luke Kenneth Casson Leighton @ 2020-07-10 22:33 UTC (permalink / raw) To: Libre-RISCV General Development, Samuel Falvo II On Friday, July 10, 2020, Samuel Falvo II <sam.falvo@gmail.com> wrote: > > I've uninstalled nmigen-soc and nmigen, then made sure to install nmigen > first, *then* nmigen-soc (both by way of setup.py develop), and it now > seems to work. Tests are reporting back OK so far (except for skipped > tests). (Update: now I'm getting a ton of other errors, but it's at least > made progress!) hurrah. the main one you want is soc/fu/spr/test/test_pipe_caller.py oh remember to inspect the Makefile in soc. you want to run pywriter.py > Looking at the setup.py files in each, they seem to rely on some serious > black magic to auto-detect installed versions. I hate stuff like that. > Configuration management is precisely where you do *NOT* want black magic > to occur (IMHO). i know. basically they are trying to reinvent debian distro behaviour, without the same level of coordination and due care and attention... oh, and relying on HTTPS for "security". the old version of distutils is now deprecated. it used to not have this "intelligence". you had to make sure everything was installed by hand. no dependencies were installed or "randomly searched for off the internet". dependencies not met? error. sort it out yourself. l. -- --- crowd-funded eco-conscious hardware: https://www.crowdsupply.com/eoma68 _______________________________________________ libre-riscv-dev mailing list libre-riscv-dev@lists.libre-riscv.org http://lists.libre-riscv.org/mailman/listinfo/libre-riscv-dev ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [libre-riscv-dev] libre-riscv-dev Digest, Vol 23, Issue 16 2020-07-10 22:33 ` Luke Kenneth Casson Leighton @ 2020-07-10 22:50 ` Jacob Lifshay 2020-07-10 22:58 ` Luke Kenneth Casson Leighton 2020-07-10 23:07 ` Luke Kenneth Casson Leighton 0 siblings, 2 replies; 8+ messages in thread From: Jacob Lifshay @ 2020-07-10 22:50 UTC (permalink / raw) To: Libre-RISCV General Development; +Cc: Samuel Falvo II apparently whitequark fixed the dependency issues with nmigen_soc: https://github.com/nmigen/nmigen-soc/commit/5509bd2aad3012eed09c06f660cb9b60cd2cff95 So, if you install from https://github.com/nmigen/nmigen-soc instead of PyPI or m-labs it will probably work Jacob _______________________________________________ libre-riscv-dev mailing list libre-riscv-dev@lists.libre-riscv.org http://lists.libre-riscv.org/mailman/listinfo/libre-riscv-dev ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [libre-riscv-dev] libre-riscv-dev Digest, Vol 23, Issue 16 2020-07-10 22:50 ` Jacob Lifshay @ 2020-07-10 22:58 ` Luke Kenneth Casson Leighton 2020-07-10 23:07 ` Luke Kenneth Casson Leighton 1 sibling, 0 replies; 8+ messages in thread From: Luke Kenneth Casson Leighton @ 2020-07-10 22:58 UTC (permalink / raw) To: Libre-RISCV General Development; +Cc: Samuel Falvo II On Friday, July 10, 2020, Jacob Lifshay <programmerjake@gmail.com> wrote: > apparently whitequark fixed the dependency issues with nmigen_soc: > https://github.com/nmigen/nmigen-soc/commit/5509bd2aad3012eed09c06f660cb9b > 60cd2cff95 nice. -- --- crowd-funded eco-conscious hardware: https://www.crowdsupply.com/eoma68 _______________________________________________ libre-riscv-dev mailing list libre-riscv-dev@lists.libre-riscv.org http://lists.libre-riscv.org/mailman/listinfo/libre-riscv-dev ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [libre-riscv-dev] libre-riscv-dev Digest, Vol 23, Issue 16 2020-07-10 22:50 ` Jacob Lifshay 2020-07-10 22:58 ` Luke Kenneth Casson Leighton @ 2020-07-10 23:07 ` Luke Kenneth Casson Leighton 2020-07-11 0:35 ` Jacob Lifshay 1 sibling, 1 reply; 8+ messages in thread From: Luke Kenneth Casson Leighton @ 2020-07-10 23:07 UTC (permalink / raw) To: Libre-RISCV General Development; +Cc: Samuel Falvo II On Friday, July 10, 2020, Jacob Lifshay <programmerjake@gmail.com> wrote: > apparently whitequark fixed the dependency issues with nmigen_soc: > https://github.com/nmigen/nmigen-soc/commit/5509bd2aad3012eed09c06f660cb9b > 60cd2cff95 > > So, if you install from https://github.com/nmigen/nmigen-soc instead > of PyPI or m-labs it will probably work install_requires=["nmigen>=0.1,<0.5"], that will...sort-of do the trick. installation of nmigen-soc will pull in an arbitrary, unverified and untrusted version of nmigen off the internet then, you git clone the nmigen repo and install that. the pre-installed nmigen-soc dependencies will *match* the version of nmigen being installed manually, resulting in successful replacement. we are going to have to sort this out for the reproducible builds for coriolis2 we absolutely cannot have arbitrary dependencies randomly downloaded, not for any reason. any one of those arbitrary untrusted packages could result in major differences in the GDSII files i mean *all* dependencies of nmigen. pip3 is basically completely inappropriate, here, given that it could result in USD 10 to 20 million dollars in NREs wasted because some random software got installed. l. -- --- crowd-funded eco-conscious hardware: https://www.crowdsupply.com/eoma68 _______________________________________________ libre-riscv-dev mailing list libre-riscv-dev@lists.libre-riscv.org http://lists.libre-riscv.org/mailman/listinfo/libre-riscv-dev ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [libre-riscv-dev] libre-riscv-dev Digest, Vol 23, Issue 16 2020-07-10 23:07 ` Luke Kenneth Casson Leighton @ 2020-07-11 0:35 ` Jacob Lifshay 0 siblings, 0 replies; 8+ messages in thread From: Jacob Lifshay @ 2020-07-11 0:35 UTC (permalink / raw) To: Libre-RISCV General Development; +Cc: Samuel Falvo II On Fri, Jul 10, 2020 at 4:08 PM Luke Kenneth Casson Leighton <lkcl@lkcl.net> wrote: > > On Friday, July 10, 2020, Jacob Lifshay <programmerjake@gmail.com> wrote: > > > apparently whitequark fixed the dependency issues with nmigen_soc: > > https://github.com/nmigen/nmigen-soc/commit/5509bd2aad3012eed09c06f660cb9b > > 60cd2cff95 > > > > So, if you install from https://github.com/nmigen/nmigen-soc instead > > of PyPI or m-labs it will probably work > > > install_requires=["nmigen>=0.1,<0.5"], > > > that will...sort-of do the trick. just install nmigen first :) Jacob _______________________________________________ libre-riscv-dev mailing list libre-riscv-dev@lists.libre-riscv.org http://lists.libre-riscv.org/mailman/listinfo/libre-riscv-dev ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, back to index
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <mailman.1.1594401220.8323.libre-riscv-dev@lists.libre-riscv.org>
2020-07-10 20:46 ` [libre-riscv-dev] libre-riscv-dev Digest, Vol 23, Issue 16 Samuel Falvo II
2020-07-10 20:56 ` Luke Kenneth Casson Leighton
2020-07-10 21:04 ` Samuel Falvo II
2020-07-10 22:33 ` Luke Kenneth Casson Leighton
2020-07-10 22:50 ` Jacob Lifshay
2020-07-10 22:58 ` Luke Kenneth Casson Leighton
2020-07-10 23:07 ` Luke Kenneth Casson Leighton
2020-07-11 0:35 ` Jacob Lifshay
Libre RISC-V Mailing list Archives (accessible via public-inbox) Archives are clonable: git clone --mirror https://inbox.libre-soc.org/libre-riscv-dev Example config snippet for mirrors AGPL code for this site: git clone https://public-inbox.org/public-inbox.git